ROS2轻松学1-系统篇6-Turtlesim演示讲义(含视频)
ROS2轻松学1-系统篇6-Turtlesim演示讲义
说明:
- 本文主要介绍Turtlesim基本使用,并再后面的教程,结合Turtlesim理解ROS2的相关概念
- 适合ROS-EASY-OS20.04/ROS-EASY-OS22.04镜像安装的虚拟机或实体机系统
参考:
控制小乌龟移动
- 启动仿真
ros2 run turtlesim turtlesim_node
- 启动键盘控制
ros2 run turtlesim turtle_teleop_key
查看话题,节点,服务,动作列表
ros2 node list
ros2 topic list
ros2 service list
ros2 action list
画方形
ros2 run turtlesim turtlesim_node
ros2 run turtlesim draw_square #启动仿真画方形
通过spawn服务来生成小乌龟turtle2
- 通过节点名来区别不同小乌龟
- 方法1: 通过rqt的Service Caller调用spawn实现增加
#启动一个小乌龟
ros2 run turtlesim turtlesim_node
#利用rqt调用`Plugins > Services > Service Caller`然后指定名称turtle2生成新的小乌龟
rqt
#启动键盘指定小乌龟
ros2 run turtlesim turtle_teleop_key --ros-args --remap turtle1/cmd_vel:=turtle2/cmd_vel
#用键盘控制turtle2乌龟移动,turtle1乌龟会跟随同样的路径
- 方法2: 通过service命令调用spawn实现增加
#启动一个小乌龟
ros2 run turtlesim turtlesim_node
#启动第二小乌龟
ros2 service call /spawn turtlesim/srv/Spawn "{x: 1.0, y: 1.0, theta: 0.2, name: 'turtle2'}"
#启动键盘指定小乌龟
ros2 run turtlesim turtle_teleop_key --ros-args --remap turtle1/cmd_vel:=turtle2/cmd_vel
#用键盘控制turtle2乌龟移动,turtle1乌龟会跟随同样的路径
让turtle2模仿turtle1
- 在上面的例子,继续执行
#启动跟随
ros2 run turtlesim mimic --ros-args --remap input/pose:=turtle1/pose --remap output/cmd_vel:=turtle2/cmd_vel
#控制turtle1
ros2 run turtlesim turtle_teleop_key
通过launch同时启动多个小乌龟
- 使用命名空间来区分不同小乌龟,命名空间分别为turtlesim1,turtlesim2
ros2 launch turtlesim multisim.launch.py
- 查看话题列表
ros2 topic list
- 控制移动
ros2 run turtlesim turtle_teleop_key --ros-args --remap turtle1/cmd_vel:=/turtlesim1/turtle1/cmd_vel
ros命令管理器启动乌龟
- 启动commands
commands
演示视频
- 在线版本
获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号