Linux系统+ROS设置launch文件开机自启动

Ubuntu使用GNOME桌面系统。它使用启动应用程序来设置启动项,可以在终端输入如下命令启动图形化设置界面。
启动图形化界面命令:

gnome-session-properties

接下来设置开机自启动:

ubuntu系统:melodic

假设启动的launch文件为:start_run 功能包内的start_run.launch。

**

第一步

**在start_runs功能包下创建启动脚本start.sh
之后打开start.sh将以下内容复制进去。注意将文件路径改为自己的路径。

正确代码:

#!/bin/bash
source /opt/ros/melodic/setup.bash
source /home/sun/dev/catkin_ws/devel/setup.sh
roslaunch start_run start_run.launch

exit 0

代码解释
将系统的环境变量加入:

source /opt/ros/melodic/setup.bash

将自己的工作环境变量加入:

source /home/sun/dev/catkin_ws/devel/setup.sh

错误代码:
网上有很多教程,刚开始我将start.sh中写了以下代码,发现开机无法启动,系统环境变量应该是setup.bash,自己的工作环境变量应该是setup.sh。

source /opt/ros/melodic/setup.sh
source /home/sun/dev/catkin_ws/devel/setup.bash
roslaunch start_run start_run.launch

第二步

sh文件的权限必须是可行的,必须进行以下设置。

sudo chmod +x  /home/sun/dev/catkin_ws/src/start_run/start.sh

如果权限不可行,在运行时会出现以下错误:

创建此终端的子进程时出错(权限不够)
在这里插入图片描述

第三步

启动图形化界面,添加启动项,并设置​。

1.启动命令:

gnome-session-properties

在这里插入图片描述
在这里插入图片描述

2.命令中写:bash sh地址

如果后台运行,不弹出命令窗口:

bash  /home/sun/dev/catkin_ws/src/start_run/start.sh

如果想要弹出命令窗口:(正确代码)

gnome-terminal -- /home/sun/dev/catkin_ws/src/start_run/start.sh

我按照网上写的命令代码输入后,提示无效,以下是错误代码,正确代码是上面的。

gnome-terminal -x /home/sun/dev/catkin_ws/src/start_run/start.sh

3.保存

最后

上述操作完成后,系统在每次启动后,会开启一个终端窗口,并执行脚本中的launch文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值