ROS - launch文件

 launch文件是个XML格式的文件,而XML格式文件是由各种标签标识组成的。

<launch>

    <node pkg="prometheus_demo" type="circular_trajectory_control" name="circular_trajectory_control" output="screen">
        <param name="uav_id" value="1"/>
    </node>

</launch>

<launch>标签中,描述了使用roslaunch命令运行节点所需的标签。

<node>描述了roslaunch运行的节点,选项包括pkg、type和name。

<node>中pkg、type、name字段含义如下:

pkg        功能包名称

type       实际运行的节点的名称(节点名), 必须有一个具有相同名称的相应可执行文件

name    节点type启动后的名字,将覆盖ros::init设置的节点名称,不可重复,除非不在同一命名空间下。一般情况下使用与type相同的名称,但可以根据需要,在运行时更改名称。

output可以设为‘screen’、‘log’ 以及‘both’

默认情况下,launch 启动 node 的信息会存在/.ros/log/run_id/node_name-number-stdout.log中,通过此处参数设置,可令信息显示在屏幕上

screen   令信息显示在屏幕上

log 输出到日志

both 就是screen和log两个都要。就结果而言,控制台中get_logger()和std::cout的内容都输出了  

<param>      设置参数名称、类型、值等。

<arg>描述了系统运行中所需要的参数。

<arg>中的name表示参数的名称,default表示参数默认的值。如果需要设置别的值,可以在roslaunch命令中加入节点名。

<arg name="sim_mode" default="true"/>


# $(find prometheus_gazebo)定位到功能包prometheus_gazebo

   <arg name="world" default="$(find prometheus_gazebo)/gazebo_worlds/prometheus_empty.world"/>


   
# include 将另一个的launch文件导入到当前文件(实现代代码复用)
# 格式:file="$(find 功能包名)/xxx/xxx.launch"

        <include file="$(find gazebo_ros)/launch/empty_world.launch">
            <arg name="world_name" value="$(arg world)"/>
        </include>


# if=value (optional) 如果value值为真,包含标签及其内容
# unless=value (optional)  除非value为假,包含标签及其内容

    <group if="$(arg gazebo_enable)">
          ... ...
    </group>

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值