ROS2命令在TogetherROS中的执行

在ubuntu中,ros2 lifecycle set 命令可以设置节点状态,但是在Linux中无法执行该命令,应该如何操作?

手册中有类似的例子,可以在Linux中启动节点并且设置参数,实现ros2 run的功能,但是没有ros2 lifecycle set的替代手段。

linux系统上不支持这种用法。

原因是ros2 lifecycle set和ros2 run,ros2 topic这类工具一样,都是基于python实现的,linux系统裁剪了python所以不能直接用这种命令。

ros2 run比较特殊,本质还是把参数传给可执行程序去处理,所以可以直接在可执行程序后面加上参数。其他的工具其实是python脚本所以是没有办法运行的。

可以绕过去的方法是,ros2 lifecycle set运行在pc端或者X3 ubuntu系统上,通过跨设备通信对linux系统进行设置。