原链接: https://community.bwbot.org/topic/498 运行测试平台:小强ROS机器人
在开发中我们经常会遇到使用python代码启动launch文件这样的问题。一般的做法是使用subprocess调用roslaunch。但是这种方法使用起来并不方便。要涉及到自己去控制进程的状态。由于roslaunch实际上是用python实现的。使用python调用launch文件实际上有更简单的方法。
import roslaunch
uuid
= roslaunch
.rlutil
.get_or_generate_uuid
(None, False)
roslaunch
.configure_logging
(uuid
)
tracking_launch
= roslaunch
.parent
.ROSLaunchParent
(
uuid
, ["/home/xiaoqiang/Documents/ros/src/xiaoqiang_track/launch/track_body.launch"])
tracking_launch
.start
()
这样就成功启动了一个launch文件。把uuid后面的路径换成自己的launch文件路径就可以了。
而且我们可以通过roslaunch直接关闭launch文件启动的节点。
tracking_launch
.shutdown
()
这样使用起来就很方便了。