roslaunch多文件及顺序控制启动
方法一:编写shell文件控制启动顺序
-
说明
在catkin workspace中,比如src文件夹下有三个pkg,分别为rb_gazebo,rb_describtion,rb_control -
编写脚本文件multi_launch.sh
#!/bin/bash
roslaunch rb_gazebo rb_world.launch &
sleep 1
echo "launch rb_gazebo successfully"
roslaunch rb_description rb_rviz.launch &
sleep 1
echo "launch rb_rviz successfully"
roslaunch rb_control rb_control.launch &
echo "launch rb_control successfully"
roslaunch rb_control rb_rqt.launch &
echo "launch rb_rqt successfully"
wait
exit 0
- 执行
catkin_make
source devel/setup.bash // 不要忘记
chmod a+x multi_launch.sh
./multi_launch.sh
方法二:借助Qt Creator
- QT Creator设计ui
- 绑定按钮槽
void MainWindow::on_pushButton_clicked()
{
system("gnome-terminal -x bash -c 'source /catkin_ws_path/devel/setup.bash; /catkin_ws/multi_launch.sh'&");
// exit(0); // 使得当前qt窗口退出
}
- 一键启动
编译
运行
点击Go按钮
参考链接:
ros launch文件编写和节点启动顺序控制
https://blog.csdn.net/hookie1990/article/details/53909013
如何利用QT在terminal终端执行ROS系统中的roslaunch命令
https://blog.csdn.net/zhuoyueljl/article/details/71699098