ROS:launch启动文件的使用方法

目录

  • 一、launch文件结构
  • 二、launch文件语法
    • 2.1根元素
    • 2.2参数设置
    • 2.3重映射、嵌套
  • 三、示例
    • 3.1示例一
    • 3.2示例二
    • 3.3示例三
    • 3.4示例四

一、launch文件结构

由XML语言写的,可实现多个节点的配置和启动。
不再需要打开多个终端用多个rosrun命令来启动不同的节点了
可自动启动ROS Master
在这里插入图片描述

二、launch文件语法

2.1根元素

name为节点名称,会取代程序中初始化节点 init 时赋予的名字。
在这里插入图片描述
其他:
output:控制某个节点node把日志信息打印到终端。
respawn:节点奔溃后是否重启
required:节点是否为必须节点,即改节点奔溃后须终止其他节点
ns:自定义的命名空间,在自定义的命名空间中运行节点
args:输入参数用

2.2参数设置

param:【在ROS参数服务器中】处理一个参数
rosparam:【在ROS参数服务器中】处理多个参数
arg:【不存在于ROS的参数服务器中】仅在launch文件中出现,可作为node运行时传的参数,如之前在终端输入指令时传的参数。
在这里插入图片描述

2.3重映射、嵌套

注意嵌套include之后,调用另一个launch文件,便会启动该文件内的所有内容。
在这里插入图片描述

三、示例

创建个新的功能包 learning_launch,包本身不需要添加别的依赖。

cd ~/catkin_ws/src
catkin_create_pkg learning_launch

在这里插入图片描述

3.1示例一

可以在learning_launch下新建一个launch文件夹,来存放launch文件。创建simple.launch文件

<launch><node pkg="learning_topic" type="person_subscriber" name="talker" output="screen" /><node pkg="learning_topic" type="person_publisher" name="listener" output="screen" /> 
</launch>

先编译一下然后输入roslaunch 包名 文件名启动:

cd ~/catkin_ws
catkin_make
roslaunch learning_launch simple.launch

在这里插入图片描述
可以看到启动launch后,发布和订阅的日志同时打印到了终端。
在这里插入图片描述

3.2示例二

创建turtlesim_parameter_config.launch文件

<launch><param name="/turtle_number"   value="2"/><node pkg="turtlesim" type="turtlesim_node" name="turtlesim_node"><param name="turtle_name1"   value="Tom"/><param name="turtle_name2"   value="Jerry"/><rosparam file="$(find learning_launch)/config/param.yaml" command="load"/></node><node pkg="turtlesim" type="turtle_teleop_key" name="turtle_teleop_key" output="screen"/></launch>

在learning_launch下新建一个config文件夹,来存放launch文件。创建param.yaml文件

A: 123
B: "hello"group:C: 456D: "hello"

启动

roslaunch learning_launch turtlesim_parameter_config.launch

在这里插入图片描述
打开新终端,我们访问一下新设置的参数:
在这里插入图片描述
可以看到 /turtle_name1 参数是写在node节点 turtlesim_node 下的,因此该参数有 turtlesim_node的命名空间,参数全名叫: /turtlesim_node/turtle_name1。
同理load的参数也带有当前节点名的命名空间,并且这个yaml文件自身建了个group命名空间。
而 /turtle_number 参数是写在外面的,因此参数就叫: /turtle_number 。
在这里插入图片描述

3.3示例三

创建start_tf_demo_c++.launch文件

 <launch><!-- Turtlesim Node--><node pkg="turtlesim" type="turtlesim_node" name="sim"/><node pkg="turtlesim" type="turtle_teleop_key" name="teleop" output="screen"/><node pkg="learning_tf" type="turtle_tf_broadcaster" args="/turtle1" name="turtle1_tf_broadcaster" /><node pkg="learning_tf" type="turtle_tf_broadcaster" args="/turtle2" name="turtle2_tf_broadcaster" /><node pkg="learning_tf" type="turtle_tf_listener" name="listener" /></launch>

这个例子把tf坐标广播与监听的一系列命令行整合在了一起。也不用在命令行中传参数了。
启动

roslaunch learning_launch start_tf_demo_c++.launch

在这里插入图片描述

3.4示例四

创建turtlesim_remap.launch文件

使用include,调用另一个launch文件simple.launch,可启动该文件内的所有内容。
并将topic名改动。

<launch><include file="$(find learning_launch)/launch/simple.launch" /><node pkg="turtlesim" type="turtlesim_node" name="turtlesim_node"><remap from="/turtle1/cmd_vel" to="/cmd_vel"/></node></launch>

启动

roslaunch learning_launch turtlesim_remap.launch

在这里插入图片描述
输入rostopic list可以看到话题名已经改成了/cmd_vel
在这里插入图片描述
可以向新话题名/cmd_vel发布一个新的速度指令,海龟应该就会动起来

rostopic pub /cmd_vel geometry_msgs/Twist "linear:x: 1.0y: 0.0z: 0.0
angular:x: 0.0y: 0.0z: 0.0"

在这里插入图片描述
参考视屏:古月居ROS入门21讲
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/352173.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

Unity3D学习笔记(二十三)导入WOW角色

今天看到新闻&#xff0c;魔兽世界最新的资料片《潘达利亚的迷雾》就要在十月二日上线了。这次中国大陆服务器总算是有机会版本与全球同步&#xff0c;和世界上其他地区的玩家在Raid进度上一决高下。 作为一名几乎没有存在感的业余玩家&#xff0c;好像跟我也没有什么关系。 倒…

威固的MOM,你的WOW 「 WOW 手武之道」威固巅峰技术交流赛圆满收官

近日&#xff0c;由全球特种材料公司伊士曼旗下汽车膜品牌威固&#xff08;V-KOOL&#xff09;举办的2022威固WOW手武之道技术交流会&PK赛&#xff0c;顺利收官。来自各地服务商的多位技师光芒尽显&#xff0c;展示贴装艺术&#xff0c;分别赢得广州站、南京站、郑州站及成…

WOW!Illustrator CS6完全自学宝典pdf

下载地址&#xff1a;网盘下载 编辑推荐 由一线设计师联合打造的最详细、最权威的Illustrator自学宝典。内容完整、详细&#xff0c;实例时尚&#xff0c;视觉感超强。 内容简介 《WOW!Illustrator CS6完全自学宝典&#xff08;全彩&#xff09;》以这一系列过程为主线&#xf…

CSS3 会跳舞的三角形

会跳舞的三角形&#xff0c;这个动效使用了两个动画变换来实现&#xff0c;一个是水平方向的运动&#xff0c;一个是径向的旋转。 在两个方向的运动速度上加以一定的控制&#xff0c;就可以出来不同的舞蹈节奏感。 把这两个三角形换成CSS3卡通图片&#xff0c;可以进一步加工…

WOW制作小地图

。。。。。。。。。。。。。。。。。 原本只是想用unity自带的GUI功能实现魔兽世界的小地图效果&#xff0c;结果折腾了一个晚上。 原来的思路如下&#xff1a; 根据玩家坐标&#xff0c;计算出应显示的地图缩略图部分&#xff08;128128&#xff09;&#xff1b;用GUI遮罩将非…

wow

写博客就有积分&#xff1f; 欢迎使用Markdown编辑器 你好&#xff01; 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章&#xff0c;了解一下Markdown的基本语法知识。 新的改变 我们对Markdown编辑器进行了一…

wow怎么修改服务器地址,wow如何修改登录服务器地址

wow如何修改登录服务器地址 内容精选 换一换 由裸金属服务器自动分配的网络是禁止修改的,在只有SSH登录的情况下修改,有可能会导致裸金属服务器无法连接。如果裸金属服务器存在自定义vlan网络网卡,您可以配置或修改该网卡的网络。 容器镜像服务是一种支持容器镜像全生命周期…

Depcheck 检查前端项目中未使用的依赖包

前言 随着前端项目的迭代&#xff0c;项目中一部分的依赖包可能没被项目所使用的&#xff0c;手动查找这些依赖包耗时又繁琐&#xff0c;有没有根据能够快速的帮助我们识别和清理项目中未使用的依赖包呢&#xff1f; Depcheck 简介 Depcheck 是一款用于分析项目中依赖关系的…

斩获阿里offer,这份258页面试宝典也太顶了....

测试三年有余&#xff0c;很多新学到的技术不能再项目中得到实践&#xff0c;同时薪资的涨幅很低&#xff0c;于是萌生了跳槽大厂的想法 但大厂不是那么容易进的&#xff0c;前面惨败字节&#xff0c;为此我辛苦准备了两个月&#xff0c;又从小公司开始面试了半个月有余&#…

深入理解API网关Kong:动态负载均衡配置

深入理解API网关Kong&#xff1a;动态负载均衡配置 背景 在 NGINX 中&#xff0c;负载均衡的配置主要在 upstream 指令中进行。upstream 指令用于定义一个服务器群组和负载均衡方法。客户端请求在这个服务器群组中进行分发。 NGINX 提供了以下几种负载均衡方法&#xff1a; …

图论与算法(4)图的深度优先遍历应用

1. 无向图的联通分量个数 1.1 联通分量个数 无向图的联通分量个数是指图中无法通过边连接到其他分量的顶点集合的个数。可以通过深度优先搜索或广度优先搜索来计算无向图的联通分量个数。 1.2 记录联通分量 &#xff08;1&#xff09;多个联通量的数&#xff1a; 7 6 0 1 0…

linux 应用程序 键盘,在Linux下安装Noted:适用于Linux的键盘驱动的笔记应用程序...

得益于Pop!_OS 20.04和Regolith Linux之类的发行版&#xff0c;键盘驱动的台式机环境逐渐风行一时。Noted是一个新的笔记应用程序&#xff0c;可在Linux和macOS上免费使用&#xff0c;该应用程序是受Notational Velocity(流行的macOS开源笔记记录应用程序)启发的&#xff0c;其…

xheditor可视化富文本编辑器

简洁易用的基于jQuery的富文本编辑器xheditor从CSDN上已经改版退出了&#xff0c;新版的Markdown编辑器将原版的编辑文章相关SEO的设置也设为自动获取了&#xff0c;总的感觉现在的编辑器没有原来那么方便了。本文来自http://xheditor.com/&#xff0c;纪念在CSDN上用过感觉最好…

Guitar Pro中文版免费激活注册机码V2021.20.7下载地址问题疑难解答

很多玩音乐的小伙伴都有一个共同的难题&#xff0c;目前很多编曲软件都是由国外引进来的&#xff0c;自然是以英文版为主&#xff0c;那作为国人的我们使用起来自然就不是那么容易&#xff0c;当然技术在更新&#xff0c;这个问题自然也是要有解决的方案的&#xff0c;今天小编…

好用的Mac窗口管理器:Rectangle for Mac

Rectangle Mac中文版是一个基于Spectacle应用程序的开源窗口管理器&#xff0c;用Swift编写&#xff0c;能够使用键盘快捷键移动窗口并调整其大小。Rectangle mac中文免费版适用于绝大数应用,并拥有维护良好的开源库,持续更新.欢迎大家下载体验Rectangle mac窗口管理器 Spectac…

Affinity Photo for Mac中文破解版永久激活方法

Affinity Photo for Mac中文破解版是一款可以和PS媲美的专业修图软件&#xff0c;专为Mac用户设计&#xff0c;affinity photo中文版采用最佳 PSD支持技术&#xff0c;支持您需要的所有图片处理调整和修改的功能&#xff0c;是一款非常不错的专业图像编辑软件。小编现为大家带来…

toad 连接mysql8.0_toad for mysql免费版

MySQL是一种关系型数据库, 想对其进行专业的管理就来下载toad for mysql免费版吧! 它是一款非常好用MySQL数据库管理工具, 它能够帮助我们更加有效的编写SQL语句. 拥有自动执行数据库对象、版本控制集成、宏记录和回放等超多功能, 需要就来下载toad for mysql免费版吧! toad fo…

iStat Menus 6 for Mac中文破解版激活方法无需激活码

iStat Menus 6 Mac 中文破解版是Mac OS平台上十分优秀的一款系统与硬件监控软件&#xff0c;通过istat menus for mac 我们可以实时掌握自己的Mac电脑情况&#xff0c;可以查看硬件温度、查看即时网速、显示CPU使用率等等&#xff0c;非常实用。小编现为大家带来istat menus ma…

3dsmax记录

title: 3dsmax记录 categories: 3dsmax tags: [max, ta, 记录] date: 2018-06-02 14:16:18 comments: false 3dsmax记录&#xff0c;我的通神之路 前篇 3D MAX 2016从入门到精通视频教程 - https://www.bilibili.com/video/av39501981/?p82Autodesk 3dsMax 2018中文汉化破解版…

Audition CC 2019 for Mac中文破解版永久激活方法附破解补丁

Adobe Audition CC 2019 for Mac中文破解版全新上线&#xff0c;这是Adobe公司出品的一款专业数字音频编辑软件&#xff0c;提供先进的音频混音、编辑和效果处理功能&#xff0c;专为音频和视频专业人员设计。新版audition cc 2019 增加降噪和减少混响效果&#xff0c;多轨剪辑…