ROS2—小海龟仿真器基础使用

小海龟(Turtlesim)是ROS2中一个非常重要的入门级例程,通过海龟仿真,我们可以了解到很多ROS2的底层原理,涉及节点、话题、服务等核心概念。  

1.安装海龟仿真器

Linux:

sudo apt update
sudo apt install ros-foxy-turtlesim

Windows:

默认已经安装好  

  如果你不确定是否安装成功,可以使用该命令检查:

ros2 pkg executables turtlesim

  看到如下内容说明安装成功:

 

2. 启动海龟仿真器

  终端中输入如下命令启动海龟仿真器:

ros2 run turtlesim turtlesim_node

  很快可以看到一个打开的仿真器界面,里边会随机使用一个ROS2的logo作为显示海龟的位置:

 

  终端中可以看到海龟的名字和在仿真器坐标系下的位置:  

  接下来让海龟动起来,打开一个新的终端,输入如下命令:

ros2 run turtlesim turtle_teleop_key

  然后根据终端中的提示点击键盘按键,即可控制小海龟运动啦,注意一定要让键盘控制节点在激活状态:  

  我们可以使用如下命令看看小海龟后台到底运行了哪些功能:

ros2 node list
ros2 topic list
ros2 service list
ros2 action list

 

3、安装rqt工具

Linux:

sudo apt update
sudo apt install ~nros-foxy-rqt*

 

Windows:

默认已经安装   安装完成后使用如下命令运行:

rqt

  第一次打开的界面是空的,选择Plugins > Services > Service Caller   这个插件是用来发布服务请求的,点击刷新按键之后,可以看到系统当前的所有服务。  

  选择/spawn服务,双击下边的数据项,填写新产生海龟的名字和位置,然后点击“Call”,即可发送服务请求。注意名字一定不能和已有的海龟名字一样,不然会有报错。  

  很快就可以在海龟仿真器当中看到另外一只海龟啦!  

  产生的不仅是一只新的海龟,还会有“turtle2”对应的话题、服务,可以说和turtle1是功能完全一样的两只海龟。   还可以尝试另外一个服务/set_pen,通过设置画笔,调整海龟轨迹的颜色。如下图所示,设置画笔的rgb值和宽度,点击“Call”之后,再运动海龟就可以看到全新的轨迹效果啦。  

  大家一定会有一个问题,第二只海龟如何运动呢?仿真器默认的键盘控制节点只能发布turtle1的话题,但是通过ROS的重映射(remapping)机制,可以实现对话题的重新命名。   在一个新的终端中输入如下指令:

ros2 run turtlesim turtle_teleop_key --ros-args --remap turtle1/cmd_vel:=turtle2/cmd_vel

  这里就把turtle1/cmd_vel这个话题名更改为了turtle2/cmd_vel,现在该节点就可以控制turtle2啦,不信在该终端中点击键盘试一下。  

  • 3
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

红星星

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值