前言
上一节教程地址:室外光电仿真教程一 参考教程地址:https://www.guyuehome.com/6463 参考项目地址:点个star呗,都是免费教程关于运动控制器
官方车模关节名字不同,你其实只需要把我的racecar包里面的racecar_control文件夹拷到你新建的工程下即可,然后修改一下画框内容适配官方车模:gedit ~/smartcar_ws/src/racecar_control/config/racecar_control.yaml

gedit ~/smartcar_ws/src/racecar_gazebo/scripts/gazebo_odometry.py

关于建图
建图的画我尝试了gmapping好像会有点地图建立重叠的问题,推荐两种解决方法可以自己尝试:- 1建图的时候修改提高官方车模激光雷达,陀螺仪的发布频率,建图完再改回来,这样也没啥违规的吧.
- 2尝试使用hector包建图,我试了效果好点.
效果:

关于move_base配置
这个应该没啥难度直接抄我那个项目里的代码就行了,根据racecar_runway_navigation.launch文件里面用到的配置文件去修改对应的yaml文件: <rosparam file="$(find racecar_gazebo)/config/costmap_common_params.yaml" command="load" ns="global_costmap" />
<rosparam file="$(find racecar_gazebo)/config/costmap_common_params.yaml" command="load" ns="local_costmap" />
<rosparam file="$(find racecar_gazebo)/config/local_costmap_params.yaml" command="load" />
<rosparam file="$(find racecar_gazebo)/config/global_costmap_params.yaml" command="load" />
<rosparam file="$(find racecar_gazebo)/config/teb_local_planner_params.yaml" command="load" />
改下这几个文件里的base_link应该就行了.
关于导航
之前公开的代码里面用的是纯路径追踪算法,算法只是追踪全局路径规划的轨迹,所以是没有壁障功能的,要实现壁障也很简单,提供两种思路:- 1teb局部路径规划器是配置好的,它发布的速度和方向的话题是默认的/cmd_vel话题,所以你要做的不就是将这个话题转换成阿克曼消息么?
- 2修改path_pursuit.py脚本,加一个成员变量订阅局部路径规划的消息,优化纯路径追踪算法.
关于定位
定位可以用amcl,但是发布的频率最高10hz有点点慢,amcl的配置网上也有很多教程,我的工程里面是没有配置可用的amcl的,这里推荐大家先去网上搜搜ros机器人中关于这几个常用名字link的含义,最好有个了解:base_link base_footprint map odom,文末也有简单介绍,这里可以看看我的tf树做一个参考吧: 执行命令:rosrun rqt_tf_tree rqt_tf_tree


关于.rviz文件
这种格式的文件是不用手写的,都是rviz软件的配置文件,生成过程写个教程吧: 首先打开空的rviz(默认你已经打开了一个机器人场景):rosrun rviz rviz
点击左下角的add:





全部评论(15)
静以致远
9xbv6_1671
布剪刀石头
Blue_Sky
布剪刀石头
布剪刀石头
雨辰
布剪刀石头
手可摘星辰不敢高声语
布剪刀石头
布剪刀石头
佛系男孩、
手可摘星辰不敢高声语
7djip_6698
布剪刀石头