ubuntu环境下通过launch文件和shell脚本启动ROS小海龟项目 一键启动多个终端和节点

1、roslaunch文件启动小海龟

我们在学习ROS时都启动过自带的小海龟范例,安装ROS环境后也会通过启动小海龟来验证环境是否安装成功。尝试使用roslaunch文件启动小海龟项目时,在根目录下新建turtlesim.launch文件,内容如下

<launch>
  <node pkg="turtlesim" name="turtlesim" type="turtlesim_node" </node>
  <node pkg="turtlesim" name="turtle_teleop_key" type="turtle_teleop_key" </node>
</launch>

新建终端,进入该目录下,运行

roslaunch turtlesim.launch

如果此时roscore还没有启动,launch文件会默认启动。同时桌面出现小海龟的界面。但此时没有节点单独启动时的终端界面,无法利用键盘控制海龟的移动。

2、shell文件启动小海龟

当需要和节点进行交互或者有其他配置项的时候,可以尝试通过shell脚本来启动。同样在根目录下新建turtlesim.sh文件,内容如下:

#!/bin/bash
gnome-terminal -t "roscore" -- bash -c "roscore" #新建终端,执行-c后面的命令
sleep 1 #执行下一个命令前,最好能等待上一个命令执行完成,否则容易造成启动失败,当节点启动比较慢时,最好将等待的时间变长
gnome-terminal -t "turtlesim_node" -- bash -c "rosrun turtlesim turtlesim_node"
sleep 1
gnome-terminal -t "turtle_teleop_key" -- bash -c "rosrun turtlesim turtle_teleop_key"

在终端中运行turtlesim.sh

sh turtlesim.sh 

出现
请添加图片描述
鼠标移动到turtle_teleop_key终端上点击一次后,即可通过键盘上的方向键控制小海龟移动。
在节点少,程序小的情况下可以一个一个节点来启动,测试运行效果;但是当工程规模大,需要的节点多时就显得比较费劲,通过launch文件或者shell脚本可以将需要的节点同时启动,省去了繁琐的启动过程。

  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

NeilSwift

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值