ros2之turtlesim命令

如何在ros2熟悉和使用各种指令呢,ros1的经典小乌龟是最快捷的途径之一。

ros2_tutorials(turtlesim): https://github.com/zhangrelay/ros2_tutorials

通过turtlesim,对比一下ros1和ros2吧:

文件组织:

ros1:

.
├── CHANGELOG.rst
├── CMakeLists.txt
├── images
│   ├── box-turtle.png
│   ├── diamondback.png
│   ├── electric.png
│   ├── fuerte.png
│   ├── groovy.png
│   ├── hydro.png
│   ├── hydro.svg
│   ├── indigo.png
│   ├── indigo.svg
│   ├── jade.png
│   ├── kinetic.png
│   ├── kinetic.svg
│   ├── lunar.png
│   ├── lunar.svg
│   ├── melodic.png
│   ├── palette.png
│   ├── robot-face.png
│   ├── robot-turtle.png
│   ├── sea-turtle.png
│   ├── turtle.png
│   └── turtle.xar
├── include
│   └── turtlesim
│       ├── turtle_frame.h
│       └── turtle.h
├── launch
│   └── multisim.launch
├── msg
│   ├── Color.msg
│   └── Pose.msg
├── package.xml
├── src
│   ├── turtle.cpp
│   ├── turtle_frame.cpp
│   ├── turtlesim
│   │   └── __init__.py
│   └── turtlesim.cpp
├── srv
│   ├── Kill.srv
│   ├── SetPen.srv
│   ├── Spawn.srv
│   ├── TeleportAbsolute.srv
│   └── TeleportRelative.srv
└── tutorials
    ├── draw_square.cpp
    ├── mimic.cpp
    └── teleop_turtle_key.cpp

9 directories, 41 files

ros2:

.
├── CHANGELOG.rst
├── CMakeLists.txt
├── images
│   ├── box-turtle.png
│   ├── diamondback.png
│   ├── electric.png
│   ├── fuerte.png
│   ├── groovy.png
│   ├── hydro.png
│   ├── hydro.svg
│   ├── indigo.png
│   ├── indigo.svg
│   ├── jade.png
│   ├── kinetic.png
│   ├── kinetic.svg
│   ├── lunar.png
│   ├── lunar.svg
│   ├── melodic.png
│   ├── palette.png
│   ├── robot-turtle.png
│   ├── sea-turtle.png
│   ├── turtle.png
│   └── turtle.xar
├── include
│   └── turtlesim
│       ├── turtle_frame.h
│       └── turtle.h
├── launch
│   ├── draw_square.launch.py
│   ├── multisim.launch.py
│   └── __pycache__
│       └── draw_square.launch.cpython-36.pyc
├── msg
│   ├── Color.msg
│   └── Pose.msg
├── package.xml
├── src
│   ├── turtle.cpp
│   ├── turtle_frame.cpp
│   ├── turtlesim
│   │   └── __init__.py
│   └── turtlesim.cpp
├── srv
│   ├── Kill.srv
│   ├── SetPen.srv
│   ├── Spawn.srv
│   ├── TeleportAbsolute.srv
│   └── TeleportRelative.srv
└── tutorials
    ├── draw_square.cpp
    ├── mimic.cpp
    └── teleop_turtle_key.cpp

10 directories, 42 files
这里并未在ros2中添加对应2代版本小乌龟的图片。

编译环节:

ros1:catkin build

ros2:colcon build

命令使用:

ros1:

rosrun, rostopic ……

ros2:

ros2 run, ros2 topic ……

具体介绍如下:

ros2 is an extensible command-line tool for ROS 2.

optional arguments:
  -h, --help            show this help message and exit

Commands:
  action     Various action related sub-commands
  component  Various component related sub-commands
  daemon     Various daemon related sub-commands
  launch     Run a launch file
  lifecycle  Various lifecycle related sub-commands
  msg        Various msg related sub-commands
  multicast  Various multicast related sub-commands
  node       Various node related sub-commands
  param      Various param related sub-commands
  pkg        Various package related sub-commands
  run        Run a package specific executable
  security   Various security related sub-commands
  service    Various service related sub-commands
  srv        Various srv related sub-commands
  topic      Various topic related sub-commands

  Call `ros2 <command> -h` for more detailed usage.
 

对于ros1而言,启动小乌龟并键盘遥控,需要如下步骤:

roscore
rosrun turtlesim turtlesim_node
rosrun turtlesim turtle_teleop_key

类比与ros2,我们可以使用如下命令:

roscore注意ros2无需core
ros2 run turtlesim turtlesim_node
ros2 run turtlesim turtle_teleop_key

非常容易理解。

比如畫一個大圓:

ros2 topic pub /turtle1/cmd_vel ometry_msgs/msg/Twist "{linear: {x: 0.8, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 0.2}}"

ros2 topic pub /turtle1/cmd_vel ometry_msgs/msg/Twist "{linear: {x: 0.8, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 0.2}}"

 


 

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

zhangrelay

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

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

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

打赏作者

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

抵扣说明:

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

余额充值