首页 > 其他 > 详细

ROS launch文件的使用(同时打开多个终端运行)

时间:2021-07-11 17:39:14      阅读:21      评论:0      收藏:0      [点我收藏+]

 

1.需求

一个程序中可能需要启动多个节点,比如:ROS 内置的小乌龟案例,如果要控制乌龟运动,要启动多个窗口,分别启动 roscore、乌龟界面节点、键盘控制节点。如果每次都调用 rosrun 逐一启动,显然效率低下,如何优化?

官方给出的优化策略是使用 launch 文件,可以一次性启动多个 ROS 节点。

2.实现

  1. 选定功能包右击 ---> 添加 launch 文件夹

  2. 选定 launch 文件夹右击 ---> 添加 launch 文件

  3. 编辑 launch 文件内容

    <launch>
        <node pkg="helloworld" type="demo_hello" name="hello" output="screen" />
        <node pkg="turtlesim" type="turtlesim_node" name="t1"/>
        <node pkg="turtlesim" type="turtle_teleop_key" name="key1" />
    </launch>
    • node ---> 包含的某个节点

    • pkg -----> 功能包

    • type ----> 被运行的节点文件

    • name --> 为节点命名

    • output-> 设置日志的输出目标

  4. 运行 launch 文件

    roslaunch 包名 launch文件名
  5. 运行结果: 一次性启动了多个节点

<!--rosrun turtlesim-->
<launch>
    <!--添加被执行的节点-->
    <!--乌龟GUI-->
    <node pkg="turtlesim" type="turtlesim_node" name="turtle_GUI"/>
    <node pkg="turtlesim" type="turtle_teleop_key" name="turtle_key"/>
   

</launch>

运行:ctrl+~(esc下的键)

roslaunch hello_vscode start_turtle.launch

 技术分享图片

<!--rosrun turtlesim-->
<launch>
    <!--添加被执行的节点-->
    <!--乌龟GUI-->
    <node pkg="turtlesim" type="turtlesim_node" name="turtle_GUI"/>
    <node pkg="turtlesim" type="turtle_teleop_key" name="turtle_key"/>
    <node pkg="hello_vscode" type="hello_vscode_c" name="hello" output="screen"/> 

</launch>

技术分享图片

 

ROS launch文件的使用(同时打开多个终端运行)

原文:https://www.cnblogs.com/caiyishuai/p/14998815.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!