测试了几个开源工程花了很多时间没有让小车在ubuntu20.04 ros2 foxy环境下gazebo中跑起来,因此写下这篇文章来闭坑。
1.使用foxy安装包自带的小车模型测试
运行demo显示小车模型
bash
gazebo /opt/ros/foxy/share/gazebo_plugins/worlds/gazebo_ros_diff_drive_demo.world
新开一个终端运行下面的命令,可以看到小车在往前开:
bash
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}}"
注意:这个工程不能用键盘控制工具控制运动,因为gazebo订阅的是/demo/cmd_demo话题
其他依赖库安装
bash
sudo apt install ros-foxy-xacro
# 安装 twist_mux(ROS2 版本)
sudo apt install ros-foxy-twist-mux
# 安装 rqt_robot_monitor
sudo apt install ros-foxy-rqt-robot-monitor
# 安装其他可能缺失的依赖
sudo apt install ros-foxy-joint-state-publisher
sudo apt install ros-foxy-robot-state-publisher
sudo apt install ros-foxy-gazebo-ros-pkgs
sudo apt install ros-foxy-ros2-control
sudo apt install ros-foxy-ros2-controllers
sudo apt-get install -y ros-foxy-robot-localization
参考: