模擬多小車控制運動任務規划
開源包: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