MIT四足机器人开源框架快速入门指南
【免费下载链接】Cheetah-Software项目地址: https://gitcode.com/gh_mirrors/ch/Cheetah-Software
Cheetah-Software是由麻省理工学院生物仿生学实验室开发的开源机器人控制框架,专门为四足机器人研发设计。该项目基于C++编写,提供了完整的硬件接口、运动控制和仿真功能,特别适合Mini Cheetah这类小型四足机器人的开发需求。
环境配置与安装
必备依赖安装
在开始之前需要安装以下依赖包:
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 libqt5 libqt5gamepad5其他依赖包括:
- LCM 1.3.1或更新版本
- Qt 5.10.0或更新版本
- Eigen线性代数库
源码获取与编译
使用以下命令获取源码并进行编译:
git clone https://gitcode.com/gh_mirrors/ch/Cheetah-Software cd Cheetah-Software cd scripts ./make_types.sh cd .. mkdir build cd build cmake .. make -j4核心功能应用
运动控制开发
Cheetah-Software支持开发复杂的步态模式和动态平衡算法。框架提供了丰富的API接口,包括:
- 腿部控制器:支持力矩前馈、力前馈、笛卡尔PD控制和关节PD控制
- 状态估计器:提供机器人的位置、方向和速度估计
- 动力学模型:用于计算正向运动学、雅可比矩阵等
硬件在环测试
在实际机器人硬件上验证控制策略的稳定性,框架支持与真实Mini Cheetah机器人的连接和测试。
实验场景构建
通过配置文件设计测试环境,记录和分析机器人行为数据。主要配置文件包括:
- config/simulator-defaults.yaml:仿真器默认设置
- config/default-terrain.yaml:地形配置
- 用户自定义参数文件
仿真示例程序
启动仿真器的方法:
./build/sim/sim在仿真器界面中选择"Mini Cheetah"和"Simulator",然后点击"Start"。仿真器包含三个主要面板:
- 左侧面板:调整仿真器设置,最常用的是simulation_speed参数
- 中间面板:调整机器人设置,包括cheater_mode和controller_dt参数
- 右侧面板:调整控制器特定的用户参数
编写自定义机器人控制器
要添加自己的机器人控制器,需要在user目录下创建新文件夹,并在user/CMakeLists.txt中添加该文件夹。可以参考JPos_Controller作为简单控制器的示例。
控制器的runController方法会自动以1kHz频率调用,可以访问以下组件:
- _quadruped:包含机器人的常量参数
- _model:机器人的动力学模型
- _legController:机器人腿部接口
- _stateEstimate:状态估计结果
- _driverCommand:游戏手柄输入
- _controlParameters:控制参数值
在真实机器人上运行
在Mini Cheetah上运行代码与仿真器类似,但需要注意以下差异:
- 开机过程:先打开计算机电源,等待约2分钟系统启动
- SSH连接:使用ssh user@10.0.0.34连接到机器人
- LCM配置:运行scripts/config_network_lcm.sh配置网络
- 构建代码时使用特殊标志:cmake -DMINI_CHEETAH_BUILD=TRUE ..
- 通过scripts/send_to_mini_cheetah.sh将代码复制到机器人
生态工具整合
Cheetah-Software与多个专业工具协同工作:
- LCM通信管理器:实现多进程实时数据交换
- GigE视觉相机:提供高清视觉感知输入
- E-DIO24扩展板:增强数字IO控制能力
测试与验证
项目包含丰富的测试用例,可以通过运行common/test-common进行测试。需要注意的是,OSQP求解器有时会出现非确定性结果,如果测试失败可以重新运行。
通过掌握这个强大的开源框架,开发者可以快速构建和测试四足机器人控制算法,无论是学术研究还是工业应用,都能获得专业的技术支持。
【免费下载链接】Cheetah-Software项目地址: https://gitcode.com/gh_mirrors/ch/Cheetah-Software
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考