0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

简述小海龟仿真器基础使用

jf_78858299 来源:古月居 作者:古月 2023-05-25 15:18 次阅读

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

安装海龟仿真器

Linux

sudo apt update
sudo apt install ros-foxy-turtlesim

Windows:

默认已经安装好

图片

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

ros2 pkg executables turtlesim

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

图片

启动海龟仿真器

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

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

图片

安装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啦,不信在该终端中点击键盘试一下。

图片

参考链接:

https://index.ros.org/doc/ros2/Tutorials/Turtlesim/Introducing-Turtlesim/

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 仿真器
    +关注

    关注

    14

    文章

    988

    浏览量

    83002
  • ROS
    ROS
    +关注

    关注

    1

    文章

    272

    浏览量

    16698
收藏 人收藏

    评论

    相关推荐

    MATLAB+ROS小海龟

    S1mple丶hua
    发布于 :2022年01月13日 19:01:30

    为什么需要仿真器

    为什么需要仿真器  软件模拟和目标 Monitor提供了一种经济的调试手段,对于很多设计来说已经足够。但是也有很多场合,需要利用仿真器来找到程序错误。 无论在哪一种场合,仿真器都能够
    发表于 08-11 14:18

    32仿真器问题

    做32仿真器仿真器连接电脑和32单片机后,仿真器上的ams1117 3,3和单片机上的ams1117 3,3芯片都异常发热,仿真器工作正常,能烧程序。就是发热异常,求高人指导,到底是
    发表于 08-10 12:04

    dsp仿真器

    ccs软件中的单步执行,是仿真器模拟的单步执行,还是通过仿真器能让dsp单步执行,然后再看各个寄存的值,仿真器有这个能力吗,我看到的各个值是dsp中的真实值吗
    发表于 11-24 19:53

    仿真器是实时的吗

    您好,怎么知道仿真器是不是实时的呢,比如510的仿真器,和100的仿真器,它们的仿真时有什么区别呢,
    发表于 06-18 10:30

    仿真器如何使用

    `请问这一套是仿真器吗,自己的板子如何接到这个仿真器上面。我用的是CSU32P20`
    发表于 07-30 11:43

    什么是ROS?ROS产生、发展和壮大的原因和意义

    机器人操作系统(ROS)入门(嵌入式系统应用开发)一、ROS 基本问题1. 什么是 ROS2. ROS 产生、发展和壮大的原因和意义二、安装 ROS 及体验小海龟例子1. 安装 ROS一、ROS
    发表于 12-17 06:08

    怎样通过ROSSerial去控制现实世界的小海龟

    ROSSerial的功能有哪些呢?怎样通过ROSSerial去控制现实世界的小海龟呢?
    发表于 02-10 07:59

    【昉·星光 2 高性能RISC-V单板计算机体验】五:在 VisionFive2 上体验 ROS2 humble

    demo_nodes_cpp add_two_ints_server 和 ros2 run demo_nodes_cpp add_two_ints_client,输出如图 四、跑个小海龟 跑了一下小海龟
    发表于 09-04 04:59

    什么是单片机仿真器_单片机仿真器有什么用_单片机仿真器怎么用

    本文首先介绍了单片机仿真器的原理及作用,其次介绍了单片机仿真器到底有什么用及功能特性,最后阐述了单片机仿真器的使用方法。
    发表于 04-16 09:49 1.6w次阅读

    小海龟科技·圣极基因高端检测仪器、芯片及试剂项目正式投产

    小海龟科技是国内第一家同时从事数字PCR和高通量测序两大前沿基因检测技术与系统研发的公司,实现了基因检测与分子诊断前沿技术领域的重大原始科技创新和产业化突破。2017年9月,圣极基因在徐州经开区发布了国内首款数字PCR产品样机,并命名为“比迪格涛·华”。
    的头像 发表于 09-19 14:39 7395次阅读

    STM32-DAP仿真器的使用(1)

    目录1 仿真器简介2 硬件连接3 仿真器配置4 下载程序1 仿真器简介 TIPS:JTAG包含SW2 硬件连接3 仿真器配置1 选择DAP仿真器
    发表于 11-18 09:36 71次下载
    STM32-DAP<b class='flag-5'>仿真器</b>的使用(1)

    科技赋能生态 | 探秘好望如何助力绿海龟保护的故事

    这些海洋来客不喜欢被人类打扰,常在深夜选择人迹罕至的沙滩产卵。一旦发现栖息地出现异常,就会立即另寻他处。产卵后,覆盖海龟蛋的沙子过厚,体弱的稚龟难以破壳而出;沙滩附近众多的天敌捕食都有可能导致小海龟的夭折。 据调查统计,
    的头像 发表于 07-28 08:10 485次阅读
    科技赋能生态 | 探秘好望如何助力绿<b class='flag-5'>海龟</b>保护的故事

    ROS中的TF该如何使用

    TF命令行操作 ROS中的TF该如何使用呢?我们先通过两只小海龟的示例,了解下基于坐标系的一种机器人跟随算法。 小海龟跟随例程 这个示例需要我们先安装相应的功能包,然后就可以通过一个launch文件
    的头像 发表于 11-22 17:24 371次阅读
    ROS中的TF该如何使用

    机器人坐标系Launch文件解析

    Launch文件解析 先来看下刚才运行的launch文件,里边启动了四个节点,分别是: 小海龟仿真器 海龟1的坐标系广播 海龟2的坐标系广播 海龟
    的头像 发表于 11-22 17:44 308次阅读