发布机器人当前状态(Topic)
发布机器人状态信息,到 /gbt_driver/feedback_states Topic。包括机械臂的连接状态、机器人状态、控制器状态、伺服状态、机械臂软模式状态、机械臂的关节状态、末端执行器的位姿、机器人报警码和速度百分比。订阅这个话题,您可以获取机械臂的实时状态信息。Topic 消息结构如下:
消息结构
gbt_interface/msg/FeedbackState.msg
以下是机械臂状态信息的消息结构:
yaml
std_msgs/Header header
# Connection Status
bool is_connected # Whether connected to the robot
# Robot Status
string robot_type # Robot type
RobotStatus robot_status # Robot Status
ControllerStatus controller_status # Controller Status
ServoStatus servo_status # Servo Status
ArmSoftModeStatus arm_soft_mode_status # Arm Soft Mode Status
# Robot joint
sensor_msgs/JointState joint_states # Robot joint states
geometry_msgs/PoseStamped flange_pose # Robot flange pose
geometry_msgs/PoseStamped tool_pose # Robot tool pose
# alarm code
AlarmCode[] alarm_code_list # Robot alarm code
float32 overall_speed # Overall speed (%)
# IO
IOType[] io # TODO: IO status
bool is_error # TODO: implement error detection
uint8 error_code # TODO: assign proper error codes on failures
# coordinate system
int32 actived_uf_id # Activated user coordinate system ID
int32 actived_tf_id # Activated tool coordinate system ID使用指南
设置机械臂 IP 地址
在 gbt_driver/config/robot_config.yaml 配置文件中,修改机械臂的 IP 地址。
yaml
robot_ip_address: "10.27.1.254" # 请根据实际情况填写机械臂的 IP 地址启动 ROS2 驱动节点
在终端启动 gbt_driver 节点:
bash
source install/setup.bash
ros2 launch gbt_driver gbt_feedback.launch.py获取机械臂状态信息
启动 gbt_driver 节点后,驱动会自动连接到机械臂,并开始发布机械臂的状态信息到以下 Topic:
/gbt_driver/feedback_states
通过订阅该话题,您可以获取以下信息:
- 机械臂连接状态
- 机器人状态
- 控制器状态
- 伺服状态
- 机械臂软模式状态
- 机械臂的关节状态
- 末端执行器的位姿
- 机器人报警码
- 速度百分比
- UF 和 TF 坐标系 ID
例如,您可以使用以下命令来查看机械臂的状态信息:
bash
source install/setup.bash
ros2 topic echo /gbt_driver/feedback_states