Pi-puck入门教程-xx.ROS2通信测试

通过简单地显示主题发布的消息来从计算机测试与机器人的通信是否确实正常工作,例如:

ros2 topic echo /tof

运行ROS2节点 tof.png

您可以通过发出以下指令控制机器人: 

机器人向前移动

ros2 topic pub -1 /cmd_vel geometry_msgs/Twist "{linear:{x: 2.0, y: 0.0, z: 0.0}, angular:{x: 0.0, y: 0.0, z: 0.0}}"

运行ROS2节点qianjin.png 停止运动

ros2 topic pub -1 /cmd_vel geometry_msgs/Twist "{linear:{x: 0.0, y: 0.0, z: 0.0}, angular:{x: 0.0, y: 0.0, z: 0.0}}"

运行ROS2节点stop.png 您可以通过发出以下命令来更改LED状态

ros2 topic pub -1 /led0 std_msgs/msg/Bool "{data: true}"

LED的主题有/led0, /led2, /led4, /led6

运行ROS2节点 led0246.png 

其他几个LED灯

ros2 topic pub -1 /led2 std_msgs/msg/Bool "{data: true}"

ros2 topic pub -1 /led4 std_msgs/msg/Bool "{data: true}"

ros2 topic pub -1 /led6 std_msgs/msg/Bool "{data: true}"

您可以通过发出(白光为例)来更改RGB LED状态

ros2 topic pub -1 /led1 std_msgs/msg/Int32 "{data: 0x00FFFFFF}"

RGB LED的主题有/led1、/led3、/led5、/led7

运行ROS2节点 led1357.png 

RGB LED3红灯

ros2 topic pub -1 /led3 std_msgs/msg/Int32 "{data: 0x00FF0000}"

RGB LED5绿灯

ros2 topic pub -1 /led5 std_msgs/msg/Int32 "{data: 0x0000FF00}"

RGB LED7蓝灯

ros2 topic pub -1 /led7 std_msgs/msg/Int32 "{data: 0x000000FF}"

存储库中还提供了Python中的简单示例节点

https://github.com/gctronic/epuck_ros2_pub.git

获取源代码

e-puck2 ROS2节点的最新版本可以从git下载:

git clone https://github.com/gctronic/epuck_ros2