ROS的launch文件
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
用ubuntu默认的编辑器gedit创建一个launch文件。
然后在打开的的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>
<node pkg="turtlesim" name="mimic" type="mimic">
<remap from="input" to="turtlesim1/turtle1"/>
<remap from="output" to="turtlesim2/turtle1"/>
</node>
</launch>
保存退出就可以了。
现在使用如下命令载入刚才创建的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。如图:
下面来解析一下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也做出了反应。
ROS的launch文件的更多相关文章
- python ros 使用launch文件启动脚本
目录结构 在包里面新建scripts文件夹,里面放运行的脚本文件,记得设置执行权限 然后新建launch文件夹,新建launch文件按照如下格式写: <node pkg="initia ...
- Ros学习——launch文件解析
launch文件的重点是:节点(node)元素的集合. roslaunch 则是让所有的节点共享同一个终端. 1.标签(元素)说明 1. group标签 2. node标签 <group ns= ...
- 第三课3、ROS的launch文件
1.launch 参数说明: pkg为节点的功能包,type为需要运行的那个节点,name为节点的名字,后面的参数可选 举个例子: 在工作空间中新建一个包: 然后再回到工作空间中去编译: 再在包目录下 ...
- ROS * 通过launch文件添加多个模型
我添加的是dae模型,urdf文件过两天贴 方法一 : <launch> <!-- these are the arguments you can pass this launch ...
- ros 启动launch文件,附带参数
roslaunch cartographer_ros cartographer_ref.launch resolution:=0.07 #下面是cartographer_ref.launch的内容 & ...
- ROS中.launch文件的remap标签详解
https://www.cnblogs.com/LiuQiang921202/p/7679943.html
- ROS Learning-010 beginner_Tutorials 编写简单的启动脚本文件(.launch 文件)
ROS Indigo beginner_Tutorials-09 编写简单的启动脚本文件 我使用的虚拟机软件:VMware Workstation 11 使用的Ubuntu系统:Ubuntu 14.0 ...
- ROS启动多launch文件
在ROS工程中经常需要启动好几个launch文件,比较不方便,有下面两种方法可以更高效些: 重写一个大型的launch文件,将所有的节点的启动配置信息都包含进去. 通过bash写一个xxx.sh文件, ...
- ros 编译包含脚本文件以及launch文件
目录结构如下: 修改CMakeLists.txt文件 install(PROGRAMS scripts/initial_pos.py DESTINATION ${CATKIN_PACKAGE_BIN_ ...
随机推荐
- Codeforces442A
A. Borya and Hanabi time limit per test:2 seconds memory limit per test: 256 megabytes input:standar ...
- CSS3 画基本图形,圆形、椭圆形、三角形等
CSS3圆角#css3-circle{ width: 150px; height: 150px; border-radius: 50%; }CSS3 椭圆形css3 radius#css3-elips ...
- vue批量验证提交表单的数据是否合规
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- URL 与 URI 介绍
URL: 统一资源定位符 ( Uniform Resource Locator ) URI: 统一资源标识符 ( Uniform Resource Identifier ) URL 地址:https: ...
- iphone怎么投屏到电脑屏幕上
随着苹果手机的更显换代,苹果手机的功能越来越强大,其中iphone手机更新了airplay镜像功能,所以想要手机投屏电脑的小伙伴就更加方便了,但是iphone怎么投屏到电脑呢?大家不用着急,下面即将为 ...
- 服务器端使用jstat定位GC问题的有关命令
jstat命令可以查看堆内存各部分的使用量,以及加载类的数量. 命令的格式如下: jstat [-命令选项] [vmid] [间隔时间/毫秒] [查询次数] 注意!!! ...
- MySql数据库实现分布式的主从结构
最近学习了关于使用MySql数据的实现主动结构的原理,在以前的并发访问低的场景一下,一般一台性能高的服务器作为一个MySql数据,就可以满足业务的增删改查场景,但是随着网络用户的增加 当出现高并发,高 ...
- Last Day in Autodesk
今天是我的最后一天在Autodesk上海了,以后将不再折腾那么大的软件了,还是回到CG开发中捣鼓短小精悍的东西——我还将继续整理开源CG生产工具. Today is my last day in Au ...
- Centos 中无法上网的问题
我是 Centos 最小化安装的,安装网后 Centos 竟然无法上网...有点奇葩, 应该是网卡没有激活的问题了,下面是解决的过程 查看网卡 ip addr 其中 lo 是 Loop back ad ...
- 用户 'XXX\SERVERNAME$' 登录失败。 原因: 找不到与提供的名称匹配的登录名。 [客户端: ]
一工厂的中控服务器遇到了下面Alert提示,'XXX\SERVERNAME$' XXX表示对应的域名, SERVERNAME$(脱敏处理,SERVERNAME为具体的服务器名称+$),而且如下所示, ...