--- name: sdf-xacro-model description: 人形机器人 SDF/XACRO 模型开发技能 - 双足机器人模型、全身关节配置、平衡控制、环境交互 argument-hint: 创建人形机器人 OR 双足机器人 OR 人形 OR 仿人机器人 user-invocable: true --- # Humanoid Robot SDF/XACRO Model Skill > 用于创建人形机器人的 SDF 和 XACRO 模型 --- ## 何时使用 当需要以下帮助时使用此技能: - 创建双足人形机器人 - 配置全身关节 - 添加平衡传感器 - 设置步态规划 - 配置环境交互 --- ## 快速参考 ``` 人形机器人关键组件: - 躯干 (Torso) - 头部 (Head) - 手臂 x2 (Arm) - 腿部 x2 (Leg) - 手部 x2 (Hand) ``` --- ## 人形机器人 - 完整示例 ### SDF 模型 ```xml false false true 0 0 0.9 0 0 0 10.0 0.0500 0.080 0.05 0.25 0.15 0.1 0.25 0.15 0.1 0.3 0.3 0.3 1 0 0 0.15 0 0 0 8.0 0.0400 0.060 0.04 0.25 0.2 0.25 0.25 0.2 0.25 0.4 0.4 0.4 1 pelvis torso 1 0 0 -0.5 0.5 0 0 0.2 0 0 0 0.5 0.00100 0.0010 0.001 torso neck 0 0 1 -1.57 1.57 0 0.05 0 0 0 0 2.0 0.0100 0.010 0.01 0.15 0.12 0.15 0.15 0.12 0.15 0.5 0.5 0.5 1 0.04 0.04 -0.02 0 0.3 0 0.8 0.8 0 1 0.04 -0.04 -0.02 0 -0.3 0 0.8 0.8 0 1 neck head 0.15 0 0.15 0 0 0 0.3 0.000500 0.00050 0.0005 0.3 0.3 0.3 1 torso shoulder_l 0 0 1 -3.14 3.14 0.1 0 0 0 1.57 0 1.0 0.00200 0.0020 0.001 0.4 0.4 0.4 1 shoulder_l upper_arm_l 0 1 0 -2.09 2.09 0.2 0 0 0 0 0 0.5 0.00100 0.0010 0.0005 0.35 0.35 0.35 1 upper_arm_l forearm_l 0 1 0 -2.35 0 0.2 0 0 0 0 0 0.2 0.3 0.3 0.3 1 forearm_l hand_l 0 1 0 -1.57 0 -0.15 0 0.15 0 0 0 0.3 0.3 0.3 0.3 1 torso shoulder_r 0 0 1 -3.14 3.14 -0.1 0 0 0 1.57 0 1.0 0.4 0.4 0.4 1 shoulder_r upper_arm_r 0 1 0 -2.09 2.09 -0.2 0 0 0 0 0 0.5 0.35 0.35 0.35 1 upper_arm_r forearm_r 0 1 0 -2.35 0 -0.2 0 0 0 0 0 0.2 0.3 0.3 0.3 1 forearm_r hand_r 0 1 0 -1.57 0 0 0.1 -0.1 0 0 0 0.5 0.3 0.3 0.3 1 pelvis hip_l 1 0 0 -1.57 1.57 0 0 -0.25 0 0 0 2.0 0.0100 0.010 0.005 0.4 0.4 0.4 1 hip_l thigh_l 0 1 0 -1.57 1.57 0 0 -0.25 0 0 0 1.5 0.00500 0.0050 0.002 0.35 0.35 0.35 1 100 shin_l_collision thigh_l shin_l 0 1 0 -0.2 2.6 0 0 -0.15 0 0 0 0.5 0.00100 0.0020 0.001 1.0 1.0 0.3 0.3 0.3 1 shin_l foot_l 1 0 0 -0.5 0.5 0 -0.1 -0.1 0 0 0 0.5 0.3 0.3 0.3 1 pelvis hip_r 1 0 0 -1.57 1.57 0 0 -0.25 0 0 0 2.0 0.4 0.4 0.4 1 hip_r thigh_r 0 1 0 -1.57 1.57 0 0 -0.25 0 0 0 1.5 0.35 0.35 0.35 1 100 shin_r_collision thigh_r shin_r 0 1 0 -0.2 2.6 0 0 -0.15 0 0 0 0.5 1.0 1.0 0.3 0.3 0.3 1 shin_r foot_r 1 0 0 -0.5 0.5 0 0 0.05 0 0 0 200 /humanoid pelvis imu_link 0.01 ``` --- ## 步态与平衡配置 ### 零力矩点 (ZMP) 控制 ```xml humanoid 0 0 0.03 10.0 5.0 0.1 ``` ### 步态参数 ```xml 0.05 0.3 0.6 0.2 bezier 0.05 ``` --- ## 传感器配置 ### 足部力传感器 ```xml 0 0.5 0 0.1 ``` ### 电子皮肤 (可选) ```xml hand_l_collision ``` --- ## 环境交互 ### 不平整地面行走 ```xml 1.2 1.0 0 0 1.5 1.2 ``` --- ## 常见问题 ### 问题 1: 机器人跌倒 **解决方案**: - 检查重心位置 - 调整 ZMP 目标位置 - 验证平衡控制器参数 ### 问题 2: 行走不稳定 **解决方案**: - 调整步态参数 - 增加双足支撑时间 - 检查足部摩擦 ### 问题 3: 关节限位冲突 **解决方案**: - 验证关节运动范围 - 检查自碰撞设置 - 调整关节优先级 --- ## 相关资源 - [Gazebo Humanoid](https://gazebosim.org/docs/harmonic/humanoid) - [DARPA Robotics Challenge](https://www.darpa.mil/program/darpa-robotics-challenge) - [Atlas Robot](https://www.bostondynamics.com/atlas) --- ## 另见 - [navigation/](../navigation/) - 导航配置 - [skill-planning/](../skill-planning/) - 技能规划