基于gazebo搭建自己的仿真机器人环境

本文参考:http://www.autolabor.com.cn/book/ROSTutorials/

特别棒的ROS 、SLAM入门学习教程。值得推荐~

一、本文写作目的:
1、简洁的记录搭建自己的仿真机器人环境操作步骤;
2、可以随情况搭配传感器设备;
3、可以根据自己的喜好,更改机器人属性;
4、搭建这样一套机器人仿真环境,方便仿真练习SLAM、Navigation算法。

二、具体流程:
视频演示:https://www.bilibili.com/video/BV1H44y1C7vM

  1. 创建功能包
mkdir -p catkin_ws/src
cd src
catkin_create_pkg urdf xacro gazebo_ros gazebo_ros_control gazebo_plugins
cd ..
catkin_make
  1. 下载功能包
    链接: https://pan.baidu.com/s/1BSCEe-sbst_Lrly4IKuIpQ 密码: vhgq

  2. 测试机器人环境

# 终端1
roslaunch zk_robot zk_robot.launch
# 终端2
roslaunch zk_robot zk_robot_rviz.launch
# 终端 3
rostopic pub -r 10 /cmd_vel geometry_msgs/Twist "linear:
  x: 0.0
  y: 0.0
  z: 0.0
angular:
  x: 0.0
  y: 0.0
  z: 0.5" 

启动Rviz和Gazebo:
基于gazebo搭建自己的仿真机器人环境_第1张图片
三、特别说明:
基于gazebo搭建自己的仿真机器人环境_第2张图片
launch:加载机器人模型、启动gazebo和Rviz
rviz:rviz的配置文件
urdf:机器人描述文件(结构、部件、安装位置、颜色等等),主要是以xacro文件
urdf/gazebo:传感器自身属性(控制器、雷达频率、测距范围、相机分辨率、帧率、视场角等等)
worlds:gazebo的地图环境,在gazebo中搭建的

其中urdf中的机器人描述文件xacro,可以根据自己的喜好,搭建一款完全属于自己的机器人模型。

四、注意事项
可能会遇到一些问题,例如:UnicodeEncodeError: ‘ascii‘ codec can‘t encode characters in position


2021.09.03更新

基于以上搭建的机器人模型,测试gmapping、amcl、move_base等功能。

源码包:链接: https://pan.baidu.com/s/1aLgA_Krh64i_PM3vgnqsjg 密码: fud7

特别说明:
基于gazebo搭建自己的仿真机器人环境_第3张图片
launch文件说明:
1、nav01_slam.launch:是gmapping建图,仅仅是建图,不保存地图。
2、nav02_map_save:是地图保存
3、nav03_map_server:是调用地图服务
4、nav04_amcl:amcl配置文件,不能单独使用
5、nav05_path.launch:move_base配置文件,不能单独使用
6、nav06_test.launch:集成导航相关的launch文件,包括读地图、启动amcl、move_base和rviz等。
7、test_amcl:与nav04_amcl.launch文件配置使用,仅测试amcl功能。

联合使用示例:
1、启动机器人仿真系统

roslaunch zk_robot zk_robot.launch

2、启动建图导航系统

roslaunch zk_navigation nav06_test.launch

其他功能使用时,可能需要修改部分launch文件。根据自己的实际情况修改即可。

基于gazebo搭建自己的仿真机器人环境_第4张图片

你可能感兴趣的:(室内机器人专栏,自动驾驶,机器学习)