使用启动文件动态设置 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>

...并将其添加到您的启动文件中。