人形机器人控制库安装配置完全指南
项目基础介绍与编程语言
项目名称: 人形双足行走控制库
本项目基于[N MPC(非线性模型预测控制)]和[W BC(整株优化控制)]实现了一个用于人形机器人的双足行走控制方案,并利用[Mujoco]进行仿真模拟。项目由Xuejl2001在GitHub上维护,采用MIT许可证发布。核心编程语言主要是[C++],配合使用Python进行一些接口或工具的开发。
关键技术和框架
- NMPC(Nonlinear Model Predictive Control): 动态规划方法的一种,能够在线解决最优控制问题,适合处理有约束的复杂系统。
- WBC(Whole Body Control): 整体身体控制策略,确保机器人能够协调地控制全身的运动,实现精细的任务控制。
- Mujoco: 一个物理引擎,专为生物力学和机器人动力学设计,用于高效的仿真实验。
- OCS2 (Open-loop Control System 2): 一个高级的控制合成平台,支持快速原型设计和实时控制应用。
安装与配置指南
准备工作
- 环境要求: 确保你的系统已安装Git、ROS(Robot Operating System)以及Python 3环境。
- 依赖项准备: 安装必要的Linux包,如
liburdfdom-dev
,liboctomap-dev
,libassimp-dev
。
详细安装步骤
第一步:克隆项目及依赖
-
克隆本项目到本地:
git clone https://github.com/pocketxjl/humanoid-control.git
-
同步所需的其他仓库(OCS2, Pinocchio, hpp-fcl, ocs2_robotic_assets):
git clone https://github.com/leggedrobotics/ocs2.git git clone --recurse-submodules https://github.com/leggedrobotics/pinocchio.git git clone --recurse-submodules https://github.com/leggedrobotics/hpp-fcl.git git clone https://github.com/leggedrobotics/ocs2_robotic_assets.git
第二步:安装依赖并编译
-
更新ROS的工作空间并添加新项目:
- 如果尚未设置ROS工作空间,请创建一个新的或使用现有的。
-
使用Catkin工具配置和编译项目,确保设置了正确的构建类型:
cd <your_ros_workspace>/src # 进入ROS工作空间的src目录 # 添加刚克隆的项目及其依赖到src中(如果不在同一目录下需手动移动) ln -s /path/to/humanoid-control . ln -s /path/to/ocs2 . ln -s /path/to/pinocchio . ln -s /path/to/hpp-fcl . ln -s /path/to/ocs2_robotic_assets . cd .. catkin config -DCMAKE_BUILD_TYPE=RelWithDebInfo
-
编译必要的包:
catkin build ocs2_legged_robot_ros ocs2_self_collision_visualization humanoid_controllers humanoid_legged_description mujoco_sim
第三步:安装Mujoco与Python接口
-
安装Mujoco Python包(可能需要注册获得授权码):
pip3 install mujoco-py pip3 install pynput # 用于遥控器输入
第四步:运行仿真
-
配置好环境后,你可以通过以下命令启动带cheat状态估计器的仿真:
roslaunch humanoid_controllers load_cheat_controller.launch
或者使用正常状态估计器:
roslaunch humanoid_controllers load_normal_controller.launch
若要仅运行NMPC模块,使用OCS2的dummy节点:
roslaunch humanoid_dummy legged_robot_sqp.launch
至此,您已完成人形机器人控制库的安装与配置,可以开始享受仿真和控制开发的乐趣了!
注意:实际操作时,确保遵循每个库的最新文档指示,因为依赖库的更新可能会需要不同的安装步骤。