7.11 机器人运控状态接口
7.11.1 获取运控状态接口
| 订阅话题名 | 数据类型 | 策略(QoS) | 备注 |
|---|---|---|---|
| /mc/leg/walking_phase | std_msgs::msg::Float64 | 摆臂相位;通过fk计算两脚x距离差 | |
| /mc/leg/walking_odom | nav_msgs::msg::Odometry | 里程计信息,提供机器人x,y, yaw位置,x,y轴速度。position.x,position.y为x,y轴位置。orientation.x, y, z, w为 yaw角度转为的四元数。linear.x, linear.y为x,y轴速度 | |
| /mc/leg/waist_measured/joint_states | sensor_msgs::msg::JointState | 测量的腰部位姿:x,y,z,roll,pitch,yaw。注意:1. (walker_learning_control版)不同于s1,该位姿均基于两脚的中心 2. (walker_leg_controller版),初始measure都是0. | |
| /mc/leg/waist_desired/joint_states | sensor_msgs::msg::JointState | 期望的腰部位姿:x,y,z,roll,pitch,yaw | |
| /mc/leg/leg_status | std_msgs::msg::String | 腿部状态:standInit(伺服回零后的状态),standing(学习站立状态),positionCtrl(位控站立状态),damping(阻尼模式),dynamic(运动模式,行走或奔跑),timeoutstanding(超时站立状态) | |
| /mc/leg/task_status | std_msgs::msg::String | 腿部任务状态:idle(空闲状态),navigating(导航控制状态),armCtrl(手臂控制状态),keyboardCtrl(键盘控制状态),remoterCtrl(航模控制状态) |
7.11.2 切换运控状态接口
| 服务名 | 数据类型 | 备注 |
|---|---|---|
| /mc/leg/motion_ctrl | mc_task_msgs::srv::GaitModeSwitch | 控制机器人启动,停止止步 |
GaitModeSwitch 类型定义
# 发布启停模式切换:dynamic(踏步) /stand(静止站立) /stop(停止,暂时不使用)
int32 STOP=1
int32 STAND=2
int32 DYNAMIC=3
int32 POSITION_CTRL=4
int32 DAMPING=6
int32 mode
---
rosa_msgs/NodeState state
注意箭头的单双方向:
