机器人与具身智能实战
机器人系统把感知、状态估计、规划、控制和执行器连接成闭环。具身智能进一步研究智能体如何通过身体与环境交互学习和完成任务。
1. 系统知识地图
flowchart TD S[传感器: Camera/LiDAR/IMU/Encoder] --> P[感知与目标识别] P --> E[状态估计与定位] E --> M[地图与环境模型] M --> PL[任务/运动规划] PL --> C[运动控制] C --> A[执行器与机器人本体] A --> S D[仿真与数据采集] --> T[模仿学习/RL/策略训练] T --> PL
2. 核心知识
- 坐标系与刚体变换:旋转矩阵、四元数、齐次变换矩阵。
- 传感器:相机、LiDAR、IMU、编码器、力/扭矩传感器。
- 状态估计:卡尔曼滤波、扩展卡尔曼滤波、因子图。
- 定位与建图:里程计、SLAM、回环检测、地图表示。
- 规划:A*、Dijkstra、RRT/RRT*、轨迹优化。
- 控制:PID、LQR、MPC、轨迹跟踪。
- 学习方法:模仿学习、行为克隆、离线 RL、在线 RL。
- 具身多模态:视觉-语言-动作(VLA)、任务规划和动作生成。
3. 关键公式
离散线性系统:
其中状态 由系统模型预测,传感器观测 用于校正估计。实际机器人通常存在非线性、异步、多频率传感器和不确定噪声,需要使用 EKF、UKF 或图优化等方法。
PID 控制:
调参时要检查饱和、积分 windup、采样周期、噪声和执行器动态,而不只是让曲线看起来平滑。
4. 软件与仿真生态
- ROS 2:机器人中间件、节点、Topic、Service、Action。
- Nav2:移动机器人导航。
- MoveIt 2:机械臂运动规划。
- Gazebo:机器人仿真。
- MuJoCo:物理仿真与控制研究。
- Isaac Lab:机器人学习仿真框架。
- LeRobot:机器人学习数据、模型和实践工具。
- OpenVLA:开源视觉-语言-动作研究项目。
5. 数据与基准
- KITTI:自动驾驶视觉、里程计和 3D 数据。
- nuScenes:多传感器自动驾驶数据集。
- Waymo Open Dataset:自动驾驶感知和运动数据。
- RoboMimic:机器人模仿学习基准。
- RLBench:机器人操作任务基准。
- DROID:机器人操作数据集。
务必检查数据集访问条件、研究用途限制、隐私和许可;仿真数据与真实机器人数据的分布可能明显不同。
6. 项目阶梯
- ROS 2 发布/订阅:让传感器节点发布数据,另一个节点订阅并记录。
- 仿真小车:完成里程计、地图构建和路径导航。
- 机械臂:完成运动学计算、轨迹规划和安全限位。
- 传感器融合:融合 IMU 与轮速/视觉里程计,分析漂移。
- 模仿学习:采集少量示教轨迹,训练行为克隆策略并评估失败状态。
- Sim-to-Real:先在仿真验证,再逐步迁移到真实设备,设置急停、速度/力限制和安全操作区。
7. 经典论文阅读
- Probabilistic Robotics:概率机器人基础教材。
- Playing Atari with Deep Reinforcement Learning:深度 RL。
- QT-Opt:机器人抓取与强化学习。
- RT-1:机器人 Transformer。
- RT-2:视觉语言模型与机器人动作。
8. 安全与工程要求
机器人会与真实物理世界交互。任何实机实验都应先定义急停、工作空间、速度/力矩限制、碰撞检测、通信失效策略和人工接管机制。仿真通过不代表实机安全。
推荐阅读
- Reinforcement Learning: An Introduction:理解智能体通过环境交互学习策略的基础。
- Practical Deep Learning for Cloud, Mobile, and Edge:补充端侧推理与部署思路。
- 完整书单见 AI书籍与课程。