模拟多小车控制运动任务规划
开源包:tuw_multi_robot
Wiki:http://wiki.ros.org/tuw_multi_robot
Git:https://github.com/tuw-robotics/tuw_multi_robot
运行环境:ros-kinetic
说明:
开源包预想架构:
安装:
1、 在工作空间从git上拉取响应的源码,包含以下几个包:
如,我本机:cd ~/cw/src
将以上四个包全部拉取到本地:
git clone https://github.com/tuw-robotics/tuw_geometry
git clone https://github.com/tuw-robotics/tuw_msgs
git clone https://github.com/tuw-robotics/tuw_multi_robot
git clone https://github.com/tuw-robotics/tuw_rviz_plugins
2、 cd .. catkin_make
运行示例:
1、 启动3个机器人
启动命令:roslaunch tuw_multi_robot_demo demo.launch room:=cave nr_of_robots:=3
也可以通过rviz中的Goal Selector 选择3个目标点,控制机器人移动。
移动状态如下图:
运行命令:rosrun tuw_multi_robot_goal_generator goals_random _nr_of_robots:=3 _distance_boundary:=0.6 _distance_to_map_border:=0.2 _nr_of_avaliable_robots:=3
随机生成3个目标点,控制机器人移动(当生成目标点不可到达时,机器人不会移动),如下图:
rqt_graph如下:
查看rqt_tf_tree如下:
2、 启动32个机器人地图,并指定14个机器人可用
启动命令:roslaunch tuw_multi_robot_demo demo.launch room:=warehouse032 nr_of_robots:=14
启动后,可在新窗口运行以下语句:
rosrun tuw_multi_robot_goal_generator goals_random _nr_of_robots:=14 _distance_boundary:=0.6 _distance_to_map_border:=0.2 _nr_of_avaliable_robots:=14
给14个机器人随机生成目标点,观察机器人移动:
在rviz中可看到14个机器人分别移动到自己的目标点。
也可以通过rviz中的Goal Selector 选择14个目标点,控制机器人移动。
也可以在开源软件自带的模拟器中查看机器人移动(模拟器中加载的是32个机器人地图文件,所以有32个机器人,但启动launch时是指定的14个可用机器人,故只看到14个机器人移动):
查看rqt_grah,如下:
查看rqt_tf_tree,如下:
3、 启动200个机器人地图,并指定50个可用
启动命令:roslaunch tuw_multi_robot_demo demo.launch room:=warehouse200 nr_of_robots:=50
运行命令随机生成50个目标点,控制50个机器人移动:
rosrun tuw_multi_robot_goal_generator goals_random _nr_of_robots:=50 _distance_boundary:=0.6 _distance_to_map_border:=0.2 _nr_of_avaliable_robots:=50