[ros2学习]-CLI Tools - 创建启动文件(launch)

① 背景

这个launch 是.py 文件,和ros1 差别很大
到目前为止,在教程中,您一直在为运行的每个新节点打开新终端。当您创建越来越多的节点同时运行的更复杂的系统时,打开终端并重新输入配置详细信息将变得乏味。

启动文件允许您同时启动和配置许多包含ROS 2节点的可执行文件。

使用ros2 launch命令运行一个启动文件将立即启动整个系统-所有节点及其配置。

② 前提

  • rqt_graph 和turtlesim 包
  • 文本编辑器
  • 环境

③ 任务

Ⅰ 准备

创建 文件夹

mkdir launch

创建 urtlesim_mimic_launch.py 启动文件

touch launch/turtlesim_mimic_launch.py

Ⅱ 写py文件

from  launch import LaunchDescription
from launch_ros.actions import Node

def generate_launch_description():
    return LaunchDescription([
        Node(
            package='turtlesim',
            node_namespace='turtlesim1',
            node_executable='turtlesim_node',
            node_name='sim'
        ),
        Node(
            package='turtlesim',
            node_namespace='turtlesim2',
            node_executable='turtlesim_node',
            node_name='sim'
        ),
        Node(
            package='turtlesim',
            node_executable='mimic',
            node_name='mimic',
            remappings=[
                ('/input/pose', '/turtlesim1/turtle1/pose'),
                ('/output/cmd_vel', '/turtlesim2/turtle1/cmd_vel'),
            ]
        )
    ])

mimic的/input/pose主题已重新映射到/turtlesim1/turtle1/pose,主题也已映射/output/cmd_vel到/turtlesim2/turtle1/cmd_vel。这意味着mimic将订阅/turtlesim1/sim的姿势主题,并将其重新发布以供/turtlesim2/sim速度指令主题订阅。换句话说,turtlesim2将模仿turtlesim1的动作。

代码以后在讲

Ⅲ 启动

正常来说 通过找包里的 文件来启动,

ros2 launch <package_name> <launch_file_name>

我们也可以通过绝对路径启动

cd launch
ros2 launch turtlesim_mimic_launch.py

在这里插入图片描述

rqt_graph 看系统

和之前多终端启动的差别
在这里插入图片描述

④ 总结

启动文件简化了具有许多节点和特定配置详细信息的复杂系统的运行。您可以使用Python创建启动文件,然后使用命令运行它们。ros2 launch

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

越来越胖了_mengleijin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值