大家好,我是小鱼。告诉大家一个好消息,小鱼把吃灰多年的板子卖掉了,一共卖了70块钱,然后又入手一个逻辑分析仪,准备做一个ROS2的小车,所以今天我们来使用gazebo来探索下小车。

卖出70元开发板

买入27元逻辑分析仪

gazebo其实是独立于ROS2的,不过gazebo目前最新的版本是gazebo11。

可以使用下面的指令检查版本,gazebo的生命也快要到头了,下一代名字叫ignition,小鱼后面来尝尝鲜介绍下。

$: gazebo  --version
Gazebo multi-robot simulator, version 11.5.1
Copyright (C) 2012 Open Source Robotics Foundation.
Released under the Apache 2 License.
http://gazebosim.org

一、安装gazebo

因为安装ROS2不会默认安装gazebo,所以我们要手动安装,一行命令很简单,如果提示找不到先去更新下ROS2的源。

sudo apt install gazebo11

二、跑跑小demo

2.1 安装ROS2的两轮差速功能包

一行代码全给装了,不差这点空间

sudo apt install ros-foxy-gazebo-*

2.2 运行两轮差速demo

一行代码搞定

gazebo /opt/ros/foxy/share/gazebo_plugins/worlds/gazebo_ros_diff_drive_demo.world 

然后你就可以看到一个死丑死丑的小车

2.3 查看话题

通过下面的指令可看到话题和话题的类型,把目光放到这个话题/demo/cmd_demo,下面我们就通过这个话题来控制小车动起来。

ros2@ros2-TM1613R:~$ ros2 topic list -t
/clock [rosgraph_msgs/msg/Clock]
/demo/cmd_demo [geometry_msgs/msg/Twist]
/demo/odom_demo [nav_msgs/msg/Odometry]
/parameter_events [rcl_interfaces/msg/ParameterEvent]
/rosout [rcl_interfaces/msg/Log]
/tf [tf2_msgs/msg/TFMessage]

2.4 让小车前进

ros2 topic pub /demo/cmd_demo geometry_msgs/msg/Twist "
{linear: {x: 0.2,y: 0,z: 0},angular: {x: 0,y: 0,z: 0}}"

然后就可以看到小车动了起来。

总结

简单尝试一下,后面在ROS2的课程里,小鱼会详细的讲讲关于仿真的知识。

原文链接:

https://mp.weixin.qq.com/s/e6nXOWuEOf3iDKMcpBN_Qw