ROS(2)编写第一个ROS launch文件—下半部分(代码和实操)

在工作空间中新建一个软件包

cd ~/catkin_ws/src

使用下述指令,创建一个ROS程序包,名称为:beginner_tutorials

catkin_create_pkg beginner_tutorials std_msgs rospy roscpp

如下两图所示

在catkin_ws工作空间中添加环境变量,如图

rospack 这个命令不但可以查找软件包的所在目录,还可以查看一个软件包的依赖包都有哪些:如上图

罗列出来的这 3 个软件包中,比如 roscpp 这个软件包的依赖包又有哪些: 

对有 beginner_tutorials 包来说,它的依赖包(roscpp、rospy、std_msgs)的依赖包,就是 beginner_tutorials 包的间接依赖包: 

在上面我们讲解了工作空间和功能包的定义、构成、依赖、创建和编译。下面进入正题,launch文件的创立(简单版)

roscd  beginner_tutorials

mkdir launch

cd launch

gedit turtlemimic.launch

添加下面的代码:

<launch> 
<group ns="turtlesim1"> 
<node pkg="turtlesim" name="sim" type="turtlesim_node"/> 
</group> 
<group ns="turtlesim2"> 
<node pkg="turtlesim" name="sim" type="turtlesim_node"/> 
</group> 
</launch>

实际效果如图:

解释程序:

上面的代码,创建了2个 ros 节点, 并以不同命名空间标签区分,所以两个节点的名字都是一样的也没关系。

    <launch> : 这个标签是其他标签的根标签,简单的说,它就是其他标签的容器。
    <group> : 它可以做成一个组, 简单的比喻, 就像是 C++里面的namespace一样,并且这个标签里的”ns” 指的就是:namespace(命名空间)。
    <node> : 这个标签的效果:就是在终端中使用 rosrun 命令来启动一个节点。 “pkg”参数:软件(或程序)包名;

如何运行这个 launch 文件: (运行脚本文件,不像运行rosrun命令,不需要提前在一个终端中运行 roscore 命令。如果你没有启动roscore命令,这个roslaunch 会自动启动 /rosout 节点;如果你先前启动了roscore,这个roslaunch就不会再启动/rosout节点了。)

然后输入以下指令,运行启动文件:

roslaunch beginner_tutorials turtlemimic.launch

效果如下,启动两个海龟节点,PS两个窗口是重叠在一起的,需要拉开

好啦,我们就完成了一简单的launch文件的编写!~~ 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值