ROS实操入门系列(九)Param和Launch的实际应用

param介绍

  1. 什么是Param
    Param是Parameters的简写,意为参数。在ROS种,起到的作用是节点间共享数据。实现的原理是将需要共享的数据存放到ROS Master中,这样所有的节点都可以访问。
    在这里插入图片描述

  2. 存储规范
    Param存储数据遵循的是YAML规范。如果去简单的理解,可以认为是一个key value的组合,key是string类型,value 的类型可以有多种。

    value的类型有:
    (1)integer: 整数类型
    (2)boolean: bool类型
    (3)double: 小数类型
    (4)list: 集合列表类型
    (5)map: 字典类型
    (6)binary: 二进制数据类型

  3. 命令行工具, ROS 提供了命令行工具,供我们对Param进行操作

    查询操作,通过list命令,可以查询出当前所有可共享的参数。
    rosparam list
    
    通过set命令可以修改参数的值
    rosparam set /heihei 123
    
    通过get命令可以获取要获取的值
    rosparam get /heihei
    
    可以删除对应的key
    rosparam delete /heihei
    
    dump命令可以把当前的param导出为一个文件(由内存转为磁盘)
    如果重启roscore,内存释放,刚才设置的param就会消失
    rosparam dump abc.yml
    
    load命令可以把yml文件导入到param中
    rosparam load abc.yml
    
  4. paramAPI访问
    在这里插入图片描述

launch文件

  1. 什么是roslaunch
    roslaunch 是一个工具,可以帮助我们同时启动多个Node节点,可以为我们设置默认的参数,可以帮助我们重启死掉的进程。launch文件是一个xml文件,用来描述节点启动的
    roslaunch使用流程:
    (1)在package下新建launch文件夹
    (2)在launch文件夹下编写,xxx.launch文件
    (3)在.launch文件中编写启动配置

  2. 节点配置
    Node标签属性:
    pkg:要启动的 package名称。
    type:可执行文件名称
    name:可执行文件启动后节点名称
    respawn:进程死掉后是否重启。取值为true或false。默认值为false
    respawn_delay: 重启的时间间隔。单位为秒,默认值为0
    output:将日志输入到什么位置。screen|log。默认值log。
    ns: 名称空间

    rosrun turtlesim turtlesim_node (rosrun  包名  可执行文件名称)
    
  3. 之前需要开启两个命令窗口,开启两个节点去操作小乌龟,现在只需要运行 roslaunch hello_driver demo1.launch就可以同时开启两个节点,并且不需要再去开启rosmaster了,之前运行一定要先运行roscore

  4. 可以更改默认的节点名称(默认的是通过init_node() 设置的)在这里插入图片描述
    在这里插入图片描述

    更改之后:
    在这里插入图片描述

  5. namespace
    没加之前 ,使用 rosnode list 打印
    在这里插入图片描述
    加了之后 再使用rosnode list打印
    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述
    注意加了ns后,使用rosnode info /kaitou/change_turtlesim命令,里面的节点信息除了 /rosout 都会加上ns的名称

    在这里插入图片描述

  6. remap子标签

    重新映射
    1.修改subscriber的topic
    from是原来的名称
    to修改后的名称 /hello/vel

    修改之前 ,运行:roslaunch hello_driver demo2.launch
    在这里插入图片描述
    修改之后 再次运行:roslaunch hello_driver demo2.launch
    在这里插入图片描述

    在这里插入图片描述

  7. 内部param子标签
    启动小乌龟节点,后可以通过rosparm list 可以查看到一些背景颜色的参数,修改这些参数查看效果
    在这里插入图片描述
    在这里插入图片描述

  8. ~的使用
    在这里插入图片描述
    在这里插入图片描述

  9. param全局和内部, 路径名称也不同
    在这里插入图片描述

    在这里插入图片描述

  10. 外部arg的使用
    在这里插入图片描述
    在这里插入图片描述

  11. 通过group可以启动两个小乌龟窗口
    在这里插入图片描述
    在这里插入图片描述

https://www.lanqiao.cn/courses/2947,提供准备好的云主机ros环境,进行实操,课程包括了 Topic 通讯, Service 通讯,ROS 自定义消息,URDF可视化,TF坐标转换等技术要点。每个技术点都会结合例子先把原理讲解清楚,为了达到学以致用的目的,我们会再进行知识拓展,针对每个技术点实现对应的生动有趣的需求,保证学完后会有很大的收获。

  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值