首页
/ MIT Cheetah-Software 四足机器人控制入门指南

MIT Cheetah-Software 四足机器人控制入门指南

2026-02-04 05:07:20作者:瞿蔚英Wynne

项目概述

MIT Cheetah-Software 是一个用于控制四足机器人的开源软件系统,特别为MIT研发的Mini Cheetah和Cheetah 3机器人设计。该系统提供了完整的仿真环境和硬件控制接口,使研究人员能够快速开发和测试各种控制算法。

环境配置

系统依赖安装

在Ubuntu系统上,需要先安装以下基础依赖包:

sudo apt install mesa-common-dev freeglut3-dev coinor-libipopt-dev libblas-dev liblapack-dev gfortran liblapack-dev coinor-libipopt-dev cmake gcc build-essential libglib2.0-dev

对于较新版本的Ubuntu(18.10或19.04),Qt可以通过以下方式安装:

sudo apt install libqt5 libqt5gamepad5

第三方库要求

系统还需要以下三个关键库:

  1. LCM:轻量级通信库,版本1.3.1或更高
  2. Qt:图形界面框架,需要5.10.0或更高版本,且必须包含gamepad库
  3. Eigen:线性代数库

代码构建流程

  1. 获取代码仓库
  2. 进入项目目录
  3. 执行类型生成脚本
  4. 创建并进入build目录
  5. 使用CMake生成构建系统
  6. 使用make进行编译
cd scripts
./make_types.sh
cd ..
mkdir build
cd build
cmake ..
make -j

测试验证

编译完成后,可以通过运行common/test-common来执行基础测试。需要注意:

  • OSQP测试可能因求解器非确定性而偶尔失败,重新运行即可
  • CASADI测试可能因动态库加载问题失败,这不会影响基本功能

控制器硬件配置

系统推荐使用Logitech F310游戏手柄作为控制输入设备,使用时需注意:

  1. 手柄背面的开关应置于"X"位置
  2. 更改开关位置后需要重新连接设备
  3. 模式按钮附近的LED指示灯应保持熄灭状态

仿真环境使用指南

配置文件说明

仿真器有两个主要配置文件:

  1. simulator-defaults.yaml:仿真器默认参数
  2. default-terrain.yaml:地形配置,可添加障碍物和调整地面摩擦系数

启动流程

  1. 连接游戏手柄
  2. 运行sim/sim启动仿真器
  3. 选择"Mini Cheetah"和"Simulator"
  4. 点击"Start"按钮

控制模式切换

  1. 启动MIT控制器:user/MIT_Controller/mit_ctrl m s
  2. 在仿真器中将控制模式设为10(准备状态)
  3. 待机器人停止移动后,设为模式1
  4. 最后设为模式4,机器人将开始小跑步态

视图操作技巧

  • 点击拖动:调整视角
  • 滚轮:缩放视图
  • 按住t键:最大速度运行仿真
  • 空格键:切换自由相机模式
  • W/A/S/D/R/F键:移动相机位置

开发自定义控制器

项目结构

自定义控制器应放置在user目录下,并需要修改user/CMakeLists.txt添加编译配置。可以参考JPos_Controller示例项目。

控制器基类

自定义控制器需要继承RobotController基类,并实现以下关键方法:

  1. runController:主控制循环,默认1kHz频率
  2. getUserControlParameters:返回用户参数指针(如不使用返回nullptr)

可用资源

在控制器中可访问以下重要资源:

  1. _quadruped:机器人常量参数(连杆长度、齿轮比、惯量等)
  2. _model:机器人动力学模型
  3. _legController:腿部控制接口
  4. _stateEstimate:状态估计结果
  5. _driverCommand:游戏手柄输入
  6. _controlParameters:控制参数
  7. _visualizationData:调试可视化接口

腿部控制方式

_legController提供多种控制模式,所有控制器的输出将被叠加:

  1. 关节扭矩控制(tauFeedForward
  2. 足端力控制(forceFeedForward
  3. 关节位置PD控制(qDes + qdDes
  4. 笛卡尔空间PD控制(pDes + vDes

硬件部署注意事项

在实际机器人上运行时,与仿真环境的主要区别包括:

  1. 只能看到状态估计结果,无法使用"cheater模式"
  2. 调试可视化功能不可用
  3. 需要特别注意安全检查和故障处理

开发建议

  1. 先在仿真环境中充分测试算法
  2. 逐步增加控制复杂度,从简单的位置控制开始
  3. 充分利用LCM工具进行调试和数据记录
  4. 注意控制频率和实时性要求
  5. 开发过程中定期检查机器人状态估计的准确性

通过本指南,开发者可以快速上手MIT Cheetah-Software系统,并基于此开发自己的四足机器人控制算法。系统提供了从仿真到硬件部署的完整工具链,大大降低了四足机器人控制算法的开发门槛。

登录后查看全文
热门项目推荐
相关项目推荐