如何从ros .launch文件访问xml或yaml文件的参数?

问题描述 投票:1回答:1

我想使用rosxml文件作为参数来运行yaml启动文件。

如何正确设置.launch文件以访问作为参数传递的xml或yaml文件中的参数?

xml parameters yaml parameter-passing ros
1个回答
0
投票

如果我理解正确,让我展示一个可以完成此工作的跳跃示例。

假设您要控制机器人,并且要在操纵杆和键盘遥操作之间进行选择。

您创建一个man_ctrl.launch文件

<launch>
    <arg name="control_mode" default="joy"/>
    <include file="$(find ctrl)/launch/$(arg control_mode).launch"/>
</launch>

您可以像这样使用它:

roslaunch ctrl man_ctrl.launch control_mode:=<joy/key>

这意味着您已经设置了joy.launch和key.launch,例如:

<launch>
    <node name="joy_node" pkg="joy" type="joy_node"/>
    <node name="joy_teleop" pkg="teleop_twist_joy" type="teleop_node" respawn="true" output="screen">
        <param name="scale_linear" value="1.0"/>
        <param name="scale_angular" value="1.0"/>
    </node>
</launch>

<launch>
    <node name="keyboard_teleop" pkg="teleop_twist_keyboard" type="teleop_twist_keyboard.py" respawn="true"
          output="screen" launch-prefix="xterm -e" />/>
</launch>
© www.soinside.com 2019 - 2024. All rights reserved.