使用LeRobot项目组装与配置SO-101机器人全指南

使用LeRobot项目组装与配置SO-101机器人全指南

lerobot 🤗 LeRobot: State-of-the-art Machine Learning for Real-World Robotics in Pytorch lerobot 项目地址: https://gitcode.com/gh_mirrors/le/lerobot

前言

LeRobot项目为机器人学习与控制提供了一个强大的开源框架,其中SO-101是其旗舰机器人平台。本文将详细介绍如何从零开始组装、配置和使用这款双机械臂系统,帮助开发者快速上手机器人学习与控制。

一、准备工作

1.1 硬件准备

SO-101机器人由两个机械臂组成:

  • 领导者机械臂(Leader Arm):用于人工示教
  • 跟随者机械臂(Follower Arm):用于自主执行

每个机械臂需要:

  • 6个STS3215型号伺服电机
  • 1个电机控制总线适配器
  • 3D打印结构件(约20个部件)
  • 各类螺丝(M2x6mm和M3x6mm)

1.2 软件环境搭建

推荐使用Python 3.10环境:

conda create -y -n lerobot python=3.10
conda activate lerobot
conda install ffmpeg -c conda-forge

安装LeRobot核心库:

pip install -e ".[feetech]"

注:若遇到编译错误,可能需要安装额外依赖:

sudo apt-get install cmake build-essential python3-dev pkg-config \
libavformat-dev libavcodec-dev libavdevice-dev libavutil-dev \
libswscale-dev libswresample-dev libavfilter-dev

二、电机配置

2.1 识别电机总线端口

首先需要确定两个机械臂对应的USB端口:

python lerobot/scripts/find_motors_bus_port.py

脚本会引导你断开连接来确定每个机械臂对应的端口,典型输出如下:

  • Linux系统:/dev/ttyACM0/dev/ttyACM1
  • Mac系统:/dev/tty.usbmodemXXXXX

2.2 更新配置文件

找到配置文件lerobot/common/robot_devices/robots/configs.py中的SO101RobotConfig类,更新端口信息:

leader_arms: dict[str, MotorsBusConfig] = field(
    default_factory=lambda: {
        "main": FeetechMotorsBusConfig(
            port="/dev/tty.usbmodem58760431091",  # 替换为实际端口
            # ...其他配置保持不变
        )
    }
)

2.3 设置电机ID

为每个电机分配唯一ID(1-6):

python lerobot/scripts/configure_motor.py \
  --port /dev/tty.usbmodem58760432961 \
  --brand feetech \
  --model sts3215 \
  --baudrate 1000000 \
  --ID 1

重复此过程为所有12个电机(6个领导者+6个跟随者)设置ID。

三、机械臂组装

3.1 领导者机械臂特殊配置

领导者机械臂使用不同减速比的电机组合:

| 关节 | 电机编号 | 减速比 | |------|----------|--------| | 基座/肩部偏航 | 1 | 1:191 | | 肩部俯仰 | 2 | 1:345 | | 肘部 | 3 | 1:191 | | 腕部旋转 | 4 | 1:147 | | 腕部俯仰 | 5 | 1:147 | | 夹持器 | 6 | 1:147 |

3.2 分步组装指南

  1. 关节1组装

    • 安装基座电机,使用4个M2x6mm螺丝固定
    • 安装电机支架和联轴器
    • 连接肩部部件,使用8个M3x6mm螺丝
  2. 关节2组装

    • 从顶部插入肩部电机
    • 固定电机并安装联轴器
    • 连接上臂部件
  3. 关节3-5组装

    • 类似方法依次组装肘部、腕部旋转和腕部俯仰关节
    • 注意各关节电机的固定方向和螺丝数量
  4. 末端执行器

    • 跟随者机械臂安装夹持器
    • 领导者机械臂安装示教手柄
    • 确保所有线缆通过线槽整齐布线

四、系统校准

4.1 跟随者机械臂校准

运行校准脚本:

python lerobot/scripts/control_robot.py \
  --robot.type=so101 \
  --control.type=calibrate \
  --control.arms='["main_follower"]'

按照提示将机械臂移动到四个关键位置:

  1. 中间位置
  2. 零位位置
  3. 旋转位置
  4. 休息位置

4.2 领导者机械臂校准

同样方法校准领导者机械臂:

python lerobot/scripts/control_robot.py \
  --robot.type=so101 \
  --control.type=calibrate \
  --control.arms='["main_leader"]'

五、机器人控制与学习

完成上述步骤后,SO-101机器人已准备好进行任务学习:

  1. 数据采集

    • 使用领导者机械臂示教任务
    • 记录机械臂运动轨迹和环境状态
  2. 策略训练

    • 基于采集的数据训练神经网络策略
    • 优化策略以提高任务成功率
  3. 策略评估

    • 将训练好的策略部署到跟随者机械臂
    • 观察自主执行效果并迭代优化

结语

通过本指南,您已成功搭建了一套完整的SO-101机器人学习平台。这套系统特别适合研究模仿学习、强化学习等机器人学习算法。下一步可以尝试实现具体的任务学习,如物体抓取、装配等操作,探索机器人自主学习的无限可能。

lerobot 🤗 LeRobot: State-of-the-art Machine Learning for Real-World Robotics in Pytorch lerobot 项目地址: https://gitcode.com/gh_mirrors/le/lerobot

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

基于MATLAB的建筑能耗建模系统含源码+设计报告(高分毕设项目).zip 主要功能 建立建筑物能源系统的数学模型,包括锅炉、管道、散热器、混合器、空调机组等多种元件 使用隐式求解方法解决系统的能量平衡方程 支持多个求解器并行计算不同水循环系统 提供了连接不同求解器的Bridge类 项目目标**:建立一个可配置的建筑能耗模型,模拟住宅或商用建筑在不同气候条件下的热能耗用电动态,支持节能控制策略模拟。 应用背景 随着建筑能耗在全球总能耗中的占比不断提高,利用数学建模和计算机仿真技术对建筑热环境进行预测优化显得尤为重要。该项目通过 MATLAB 平台构建简洁、可扩展的建筑能耗仿真环境,可用于研究: * 建筑围护结构对能耗的影响 * 加热、通风和空调系统(HVAC)策略优化 * 被动/主动节能控制策略 * 外部天气数据的交互仿真(如 TMY3) 核心模型类(.m 文件): AirHeatExchanger.m, Boiler.m, Chiller.m, Pipe.m, Radiator.m, FanCoil.m, HeatExchanger.m, Mixer.m, Same.m 这些文件定义了热交换器、锅炉、冷水机组、管道、散热器、风机盘管、混合器等建筑能源系统组件的数学模型及热平衡方程。 控制求解相关: SetpointController.m:HVAC 设置点控制器。 Solver.m:核心数值求解器,用于建立并求解系统线性方程组。 系统集成桥接: Bridge.m:用于连接多个 solver 或不同流体系统之间的耦合关系。 Constant.m:定义恒定温度源或引用变量。 环境区域: Zone.m:建筑空间(房间)模块,模拟热容、传热等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

虞怀灏Larina

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值