1. 引用.launch文件(替换您选择的文件路径)并启动/关闭它。
import roslaunch
import rospy
rospy.init_node('en_Mapping', anonymous=True)
uuid = roslaunch.rlutil.get_or_generate_uuid(None, False)
roslaunch.configure_logging(uuid)
# launch = roslaunch.parent.ROSLaunchParent(uuid, ["/home/haier/catkin_ws/src/testapi/launch/test_node.launch"])
launch = roslaunch.parent.ROSLaunchParent(uuid, ["/opt/ros/kinetic/share/rosbridge_server/launch/rosbridge_websocket.launch"])
launch.start()
rospy.loginfo("started")
rospy.sleep(3)
# 3 seconds later
launch.shutdown()
原文链接: http://wiki.ros.org/roslaunch/API%20Usage
2. 在代码中直接用system启动,方便直接,相当于在命令行中启动
前提:导入os模块
代码: os.system('roslaunch rosbridge_server rosbridge_websocket.launch')
如果需要导入参数,需要在冒号之外加入 %(),在括号内依次填入参数,并使用 %s 替代原参数位置
同理可使用此方法在一个节点里面开启其他节点