基于gazebo的多无人车自主导航编队仿真学习
最近正在研究多车编队,多车协同自主导航,参考古月居 、githua
链接: https://www.guyuehome.com/8915.
链接: [https://github.com/SantoshBanisetty/master-slave.git](https://github.com/Santos
hBanisetty/master-slave.git).
以及相关gitee上面的代码进行了初步学习 multirobot_formation进行了相关实际验证和代码消化,发现原始代码和博客之间还是有些细节需要注意的
问题1:首先按照博主介绍,先进行gazebo环境加载多机器人,并可以采用按键进行机器人控制
roslaunch ares_gazebo ares_playground.launch
rosrun ares_teleop ares_teleop.py
运行上述两个指令后,发现采用按键不能实现对ares1/cmd_vel的控制,后来,发现rosrun ares_teleop ares_teleop.py 发布的话题为cmd_vel,故将此文件中发布的话题改成ares1订阅的话题ares1/cmd_vel
问题2:采用按键控制,实现master和slaver的编队仿真,
此时有时候程序不能正常跟随,后来经查发现是原代码相关abs函数的问题,将abs()函数修改成fabs
roslaunch stage_first OnYourMarkGetSetGo.launch
现象,当运行上述三条指令后,无人小车开始有速度的编队运行
问题3
在rviz中进行多机器人导航仿真中,需要运行
roslaunch ares_navigation navigation_demo.launch
发现小车程序启动后,领航车不按照导航路线进行行驶,而是采用固有速度和转角,一直撞墙,经分析,认定,与上述roslaunch stage_first OnYourMarkGetSetGo.launch启动的master节点有关,在自主导航模式下,领航者订阅move_base节点发布的话题ares1/cmd_vel,故而不需要再次启动master节点,将 roslaunch stage_first OnYourMarkGetSetGo.launch中的maser节点注释掉即可。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)