【ROS2】核心概念8——参数设置(Parameters)
主要参考:古月讲解——参数
ROS2官方文档:Understanding parameters — ROS 2 Documentation: Humble documentation
一、ROS2的简介及相关文章
ROS的安装:【ROS2】机器人操作系统安装到Ubuntu22.04简介(手动
【ROS2】虚拟机使用fishros脚本一键安装humble_fish.ros-CSDN博客
二、参数简介与使用
常用命令
ros2 param list
ros2 param get <node_name> <parameter_name>
ros2 param set <node_name> <parameter_name> <value>
ros2 param dump <node_name>
ros2 param dump <node_name> > turtlesim.yaml
ros2 param load <node_name> <parameter_file>
三、案例1:修改小乌龟节点的参数
ros2 run turtlesim turtlesim_node
原始界面和参数
查询示例节点的参数信息
zeng@zeng-vmware:/mnt/hgfs/vmshare/dev_ws$ ros2 node list
/turtlesim
ros2 run turtlesim turtlesim_node
结果
background_b
/ background_g
/ background_r
- 作用:控制
turtlesim
仿真器的背景颜色(RGB颜色模型)
qos_overrides
- 作用:调整ROS2通信的服务质量(Quality of Service),控制消息传输策略。
- 子参数说明:
-
/parameter_events
:针对参数变更事件的通信配置。 -
publisher
:消息发布者的配置:depth
:消息队列长度(1000
条,存储未处理消息)durability
:volatile
(不保留离线消息)history
:keep_last
(仅保留最新消息)reliability
:reliable
(确保消息可靠送达)
-
修改一个参数
使用设set参数只会在您当前的会话中而不是永久更改它们。
ros2 param set /turtlesim background_r 255
导出参数
# ros2 param dump <node_name>
ros2 param dump /turtlesim > turtlesim.yaml
统一修改 .yaml
然后加载生效
ros2 param dump load turtlesim.yaml
自由设置全部的值
运行ros代码时,直接导入参数文件
--ros-args --params-file <file_name>
ros2 run <package_name> <executable_name> --ros-args --params-file <file_name># 案例
ros2 run turtlesim turtlesim_node --ros-args --params-file turtlesim.yaml