TX2使用shell脚本启动ros, roslaunch以及编译好的路径规划的可执行文件

1.启动ROS

文件为:aotuload.sh

#! /bin/bash   
source /opt/ros/kinetic/setup.bash  
roscore 

2.启动ZED相机的roslaunch文件

文件为:aotuload1.sh

#! /bin/bash 
sleep 15
source /home/nvidia/catkin_ws/devel/setup.bash
roslaunch zed_wrapper zed.launch

3.启动障碍物识别+路径规划的可执行文件

文件为:aotuload2.sh

#! /bin/bash 
sleep 30
cd /home/nvidia/cv_ws/devel/lib/robot_vision
./grayImage
exec /bin/bash

结果出现如下错误

TX2使用shell脚本启动ros, roslaunch以及编译好的路径规划的可执行文件_第1张图片

后经过网上查找原因是为进行source

最终 aotuload2.sh的文件为:

#! /bin/bash 
sleep 30
source /home/nvidia/catkin_ws/devel/setup.bash
cd /home/nvidia/cv_ws/devel/lib/robot_vision
./grayImage
exec /bin/bash

三个终端分别打开,实现既定功能。

总结:

如果用到ros的情况,最好在没一个终端中都进行source一次,这样可以确保ros可用。

你可能感兴趣的:(shell,ROS)