使用启动文件动态设置 ROS2 参数?
Dynamically setting a ROS2 parameter using launch file?
有大量资源描述了使用启动文件在节点启动时设置参数。()
然而,这不会触发动态重新配置回调:set_on_parameters_set_callback
。有没有办法在触发此回调的节点上的启动文件中指定操作?
相当于运行一个ros2 param set ...
命令(会触发回调)
您需要调用ROS 2服务/<node name>/set_parameters
来触发这个回调。例如。 /talker/set_parameters
用于 demo_nodes_cpp
包中的 talker 节点。
创建一个 shell 脚本,其中包含:
#!/bin/sh
ros2 service call /<node name>/set_parameters <service type> <your parameters>
...并将其添加到您的启动文件中。
有大量资源描述了使用启动文件在节点启动时设置参数。(
然而,这不会触发动态重新配置回调:set_on_parameters_set_callback
。有没有办法在触发此回调的节点上的启动文件中指定操作?
相当于运行一个ros2 param set ...
命令(会触发回调)
您需要调用ROS 2服务/<node name>/set_parameters
来触发这个回调。例如。 /talker/set_parameters
用于 demo_nodes_cpp
包中的 talker 节点。
创建一个 shell 脚本,其中包含:
#!/bin/sh
ros2 service call /<node name>/set_parameters <service type> <your parameters>
...并将其添加到您的启动文件中。