目标: 安装并使用 turtlesim 包以及 rqt,为接下来的教程做准备。本篇博客依然是跟着官方文档来的,有兴趣直接阅读官方文档的可以看这个。

背景

Turtlesim是一个学习ROS 2的轻量级模拟器。它从最基本的层面上解释ROS 2是干什么的,让你知道未来应该怎么操作一个真实的或者仿真的机器人。

rqt是ROS 2的一个GUI工具。所有rqt可以做的事情,都可以使用命令行来完成,但是它提供了一个更容易,更有好的操作ROS 2的组件的方式。

这个教材会让你接触到ROS 2的核心概念,比如节点的分离,话题以及服务。所有这些概念会在后面的教程中详细地介绍;目前,你只需要简单的对工具进行设置,感受一下。

前提

在开始这个教程之前,设置你的ROS 2环境会教你如何设置你的系统环境。如果你还没按照ROS 2,可以参考这个安装教程。

任务

1. 安装turtlesim

打开一个新的终端,需要记得,首先根据如何设置你的ROS 2环境中所说的那样,source你的设置文件。然后可以为你的ROS 2安装对应版本的turtlesim,假如你使用的是Foxy,那么:

sudo apt updatesudo apt install ros-foxy-turtlesim

检查一下,你是否已经成功安装:

ros2 pkg executables turtlesim

上面那条指令应该返回一些turtlesim的可执行文件:

turtlesim draw_square
turtlesim mimic
turtlesim turtle_teleop_key
turtlesim turtlesim_node

2 启动turtlesim

在你开启的终端上输入下面的命令来启动turtlesim:

ros2 run turtlesim turtlesim_node

模拟器的窗口应该会出现,有一个小海龟出现在中间,这个小海龟的样子是随机的。

在终端上,你大概会看到这个节点输出类似下面的消息:

[INFO] [turtlesim]: Starting turtlesim with node name /turtlesim[INFO] [turtlesim]: Spawning turtle [turtle1] at x=[5.544445], y=[5.544445], theta=[0.000000]

从这个信息可以看得出,你启动的默认小海龟的名字是turtle1,并且在默认的坐标上出现。

3 使用turtlesim

打开一个新的终端并且再次source ROS 2. 现在打开一个新的节点来控制第一个节点上出现的小海龟:

ros2 run turtlesim turtle_teleop_key

此时,你应该会有三个窗口,分别是:一个运行turtlesim_node的终端,一个运行turtle_teleop_key的终端,还有一个turtlesim的窗口。重新排列三个窗口,以便你可以看到turtlesim的窗口,但同时让运行turtle_teleop_key的终端处于激活状态,这样你就可以控制turtlesim里面的小海龟。

使用你的键盘上的箭头按钮来控制小海龟。它会在屏幕上移动。目前,它会使用它的一个“pen”的属性来画出它走过的路径。

备注

按下箭头按键一次,小海龟会移动一小段距离就会停止。这是因为实际上,你不会想让一个机器人朝着一个方向一直运动,如果操作者与机器人失去连接的话。

另外,你可以通过list关键字的命令,查看当前的节点、服务、话题以及动作等:

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

你会在接下来的教程中学习到关于这些概念的东西。因为这个教程的目标是利用turtlesim让你有一个整体的感觉,所以我们接下来会使用rqt进一步了解一下服务(services)。
接下来的内容请看ROS 2 中的小海龟以及rqt的使用(2).

你可以在接下来的教程里面,学习到更多关于ROS 2相关的内容。可以关注我或者订阅我的专栏:ROS 2专栏

ROS2教程(入门级):ROS 2 中的小海龟以及rqt的使用(1)相关推荐

  1. ROS入门:运行小海龟

    安装配置ROS可参考:https://www.ros.org/ 要注意安装的版本:Ubuntu16.04对应Kinetic版本,Ubuntu18.04对应Melodic版本 ROS学习资料: ROS官 ...

  2. ROS运行程序让小海龟实现圆周运动

    ROS运行程序让小海龟实现圆周运动 文章目录 ROS运行程序让小海龟实现圆周运动 一.运行ROS,以键盘控制小海龟移动. 二.了解ROS话题与消息的发布与获取的方式.终端命令发布话题控制海龟圆周运动. ...

  3. 【ROS玩转Turtlesim小海龟】

    ROS玩转Turtlesim小海龟 一_键盘控制小海龟移动 二 _命令行控制小海龟移动 三 _按照记忆路线控制小海龟移动 Turtlesim 是一个用于学习 ROS的轻量级模拟器,因为其有个乌龟,所以 ...

  4. ROS2教程(入门级):记录和回播数据

    目标: 记录从话题发布出来的数据,以便我们可以随时回放和检查它. 背景知识 ros2 bag是一个用来记录你的系统中的话题所发布的数据的命令行工具.它可以收集任意多个话题所发布的数据,并且将数据保存在 ...

  5. ROS安装和 控制小海龟画圆

    1.ROS软件安装 (1)添加ROS软件源 sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -s ...

  6. Python中使用小海龟画图

    一.画笔 在画布上,默认画布中心为坐标原点,且隐藏着一个直角坐标系,小海龟的初始正方向规定为X轴的正方向.使用小海龟绘图时,确定方向与距离进行绘制图像. 1.画笔自身属性 命令 说明 turtle.p ...

  7. python简单的爬虫教程中召唤小海龟_Python练习,网络小爬虫(初级)

    标签: 最近还在看Python版的rcnn代码,附带练习Python编程写一个小的网络爬虫程序. 抓取网页的过程其实和读者平时使用IE浏览器浏览网页的道理是一样的.比如说你在浏览器的地址栏中输入   ...

  8. python简单的爬虫教程中召唤小海龟_Python爬虫入门小练习之简单的50行(一)

    HI 最近得空,小看了一下python爬虫方面的资料,于是就打算把笔记和代码练习整理成文章分享给大家. 一.先来认识一下啥玩意叫爬虫吧 爬虫的目的:数据 1.企业内部数据 由企业内部服务器产生的数据 ...

  9. 用python海龟画图_Python中使用小海龟画图

    importturtleimporttimedefhead():#配置画笔属性 turtle.fillcolor("black") turtle.color("black ...

最新文章

  1. 图论:关于二分图的总结(转载)
  2. const与#define的异同
  3. 2019春季学期第四周作业
  4. 常用的Linux操作系统
  5. android基础开发 书,Android 开发基础
  6. pythonm 用法-------list实现购物车
  7. 五款在线思维导图工具的比较
  8. scratch小游戏2048
  9. 计算机酷炫桌面,电脑桌面还能这么酷炫?!打破次元壁的桌面管理软件
  10. python计算加权平均分_python – 使用pandas数据帧计算加权平均值
  11. 贪婪的大脑:为何人类会无止境地寻求意义 目录
  12. 【DX12】DirectX Math库 Vector和Matrix类型 XMVECTOR、XMMATRIX
  13. 二叉树 | 二叉树的镜像(翻转)
  14. DOS基本命令和批处理
  15. js 树形结构数据 已知某一子节点 一次向上获取所有父节点
  16. Linux 开机Started Update UTMP卡死处理
  17. 中兴技面+综面+面试技巧
  18. 骇客帝国弹幕2.0--移动鼠标触发弹幕
  19. FRED案例:矩形微透镜阵列
  20. 将123倒转 c语言,中国航信杯C语言程序设计答案解析版.doc

热门文章

  1. 2020上半年已过,疫情下互联网迎来红利期,Android技术下半场在哪?
  2. Makefile中的条件编译:ifeq、ifneq、ifdef和ifndef
  3. Anaconada安装
  4. mysql insert 源码_MySQL insert源码走读
  5. java基本数据类型长度详解
  6. Jpa之OneToMany
  7. 【ESP32 WiFi篇(三)】ESP32 TCP服务端、客户端
  8. kafka创建Topic出现的问题
  9. 校园网又抽风了,没有电影看?
  10. 蓝桥杯 数字三角形