机器人操作系统(ROS)教程13:ROS的launch文件-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 22331|回复: 3

机器人操作系统(ROS)教程13:ROS的launch文件

[复制链接]
发表于 2015-2-18 10:50 | 显示全部楼层 |阅读模式
本帖最后由 对折之内 于 2015-2-18 10:54 编辑

ROS中可以把很多的命令以描述的形式写成launch文件,然后用roslaunch命令执行launch文件。它的使用方法如下:
roslaunch [package] [filename.launch]

比如:我们切换到
beginner_tutorials文件下:
roscd beginner_tutorials  

注:如果提示找不到文件或文件夹,就参照前面把环境变量设置一下。执行:
cd ~/catkin_ws/devel/


source setup.bash

在beginner_tutorials文件夹下,创建launch文件夹,切换到该文件夹下:
mkdir launch


cd launch

输入:
gedit turtlemimic.launch  

用ubuntu默认的编辑器gedit创建一个launch文件。

然后在打开的的launch文件中复制入下面的内容:
[mw_shl_code=c,true]<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>

  <node pkg="turtlesim" name="mimic" type="mimic">
    <remap from="input" to="turtlesim1/turtle1"/>
    <remap from="output" to="turtlesim2/turtle1"/>
  </node>

</launch>[/mw_shl_code]

保存退出就可以了。

     现在使用如下命令载入刚才创建的launch文件:


roslaunch beginner_tutorials turtlemimic.launch  


就可以看到新打开两个乌龟节点。

新打开一个终端,输入命令

rostopic pub /turtlesim1/turtle1/cmd_vel geometry_msgs/Twist -r 1 -- '[2.0, 0.0, 0.0]' '[0.0, 0.0, -1.8]'


使乌龟运动起来。就可以看到两只乌龟都在运动。

输入命令:
rosnode list

就可以看到启动了两个节点
/turtlesim1/sim和/turtlesim2/sim。如图:
图像 1.png


下面来解析一下launch文件的标签的意思:
<lanuch>

<lanuch>标签用来识别这是一个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>  

上面的内容表示我们启动了两只乌龟。分别名为turtlesim1和turtlesim2.


<node pkg="turtlesim" name="mimic" type="mimic">  
  <remap from="input" to="turtlesim1/turtle1"/>  
  <remap from="output" to="turtlesim2/turtle1"/>  
</node>  

上面的内容使turtlesim2模仿turtlesim1。所以虽然我们只向turtlesim1发布了话题,turtlesim2也做出了反应。



发表于 2015-10-30 15:55 | 显示全部楼层
顶楼主,快要看完了,期待楼主继续更新。一起加油~
发表于 2018-10-26 14:28 | 显示全部楼层
楼主你好,请教你一个问题,我想用launch启动arduino程序节点,那么我的launch文件要建立在哪里??
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-12-1 05:35 , Processed in 0.081552 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表