自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

赵虚左

传道授业解惑,愿更多人一同加入到机器人行业中

  • 博客(83)
  • 收藏
  • 关注

原创 6.3.4 URDF练习

ROS入门 6.3.4 URDF练习《ROS入门-理论与实践》视频教程镇楼需求描述:创建一个四轮圆柱状机器人模型,机器人参数如下,底盘为圆柱状,半径 10cm,高 8cm,四轮由两个驱动轮和两个万向支撑轮组成,两个驱动轮半径为 3.25cm,轮胎宽度1.5cm,两个万向轮为球状,半径 0.75cm,底盘离地间距为 1.5cm(与万向轮直径一致)结果演示:实现流程:创建机器人模型可以分步骤实现新建 urdf 文件,并与 launch 文件集成搭建底盘在底盘上添加两个驱动轮在底盘上添加

2021-03-31 21:55:49 578

原创 6.3.3 URDF语法详解03_joint

ROS入门 6.3.3 URDF语法详解03_joint《ROS入门-理论与实践》视频教程镇楼jointurdf 中的 joint 标签用于描述机器人关节的运动学和动力学属性,还可以指定关节运动的安全极限,机器人的两个部件(分别称之为 parent link 与 child link)以"关节"的形式相连接,不同的关节有不同的运动形式: 旋转、滑动、固定、旋转速度、旋转角度限制…,比如:安装在底座上的轮子可以360度旋转,而摄像头则可能是完全固定在底座上。joint标签对应的数据在模型中是不可

2021-03-31 21:54:54 1081 2

原创 6.3.2 URDF语法详解02_link

ROS入门 6.3.2 URDF语法详解02_link《ROS入门-理论与实践》视频教程镇楼linkurdf 中的 link 标签用于描述机器人某个部件(也即刚体部分)的外观和物理属性,比如: 机器人底座、轮子、激光雷达、摄像头…每一个部件都对应一个 link, 在 link 标签内,可以设计该部件的形状、尺寸、颜色、惯性矩阵、碰撞参数等一系列属性1.属性name —> 为连杆命名2.子标签visual —> 描述外观(对应的数据是可视的)geometry 设置连杆

2021-03-31 21:49:53 405 1

原创 6.3.1 URDF语法详解01_robot

ROS入门 6.3.1 URDF语法详解01_robot《ROS入门-理论与实践》视频教程镇楼roboturdf 中为了保证 xml 语法的完整性,使用了robot标签作为根标签,所有的 link 和 joint 以及其他标签都必须包含在 robot 标签内,在该标签内可以通过 name 属性设置机器人模型的名称1.属性name: 指定机器人模型的名称2.子标签其他标签都是子级标签...

2021-03-30 20:59:45 303

原创 6.3 URDF语法详解

ROS入门 6.3 URDF语法详解《ROS入门-理论与实践》视频教程镇楼URDF 文件是一个标准的 XML 文件,在 ROS 中预定义了一系列的标签用于描述机器人模型,机器人模型可能较为复杂,但是 ROS 的 URDF 中机器人的组成却是较为简单,可以主要简化为两部分:连杆(link标签) 与 关节(joint标签),接下来我们就通过案例了解一下 URDF 中的不同标签:robot 根标签,类似于 launch文件中的launch标签link 连杆标签joint 关节标签gazebo

2021-03-30 20:58:44 567

原创 6.2 URDF集成Rviz基本流程

ROS入门 6.2 URDF集成Rviz基本流程《ROS入门-理论与实践》视频教程镇楼前面介绍过,URDF 不能单独使用,需要结合 Rviz 或 Gazebo,URDF 只是一个文件,需要在 Rviz 或 Gazebo 中渲染成图形化的机器人模型,当前,首先演示URDF与Rviz的集成使用,因为URDF与Rviz的集成较之于URDF与Gazebo的集成更为简单,后期,基于Rviz的集成实现,我们再进一步介绍URDF语法。需求描述:在 Rviz 中显示一个盒状机器人结果演示:实现流程:准

2021-03-30 20:57:35 923

原创 6.1 概述

ROS入门 6.1 概述《ROS入门-理论与实践》视频教程镇楼机器人操作系统学习、开发与测试过程中,会遇到诸多问题,比如:场景1:机器人一般价格不菲,学习ROS要购买一台机器人吗?场景2:机器人与之交互的外界环境具有多样性,如何实现复杂的环境设计?场景3:测试时,直接将未经验证的程序部署到实体机器人运行,安全吗?…在诸如此类的场景中,ROS中的仿真就显得尤为重要了。1.概念机器人系统仿真:是通过计算机对实体机器人系统进行模拟的技术,在 ROS 中,仿真实现涉及的内容主要有三:对

2021-03-28 21:45:52 643

原创 第 6 章 机器人系统仿真

ROS入门 第 6 章 机器人系统仿真《ROS入门-理论与实践》视频教程镇楼对于ROS新手而言,可能会有疑问:学习机器人操作系统,实体机器人是必须的吗?答案是否定的,机器人一般价格不菲,为了降低机器人学习、调试成本,在ROS中提供了系统的机器人仿真实现,通过仿真,可以实现大部分需求,本章主要就是围绕“仿真”展开的,比如,本章会介绍:如何创建并显示机器人模型;如何搭建仿真环境;如何实现机器人模型与仿真环境的交互。本章预期的学习目标如下:能够独立使用URDF创建机器人模型,并在Rviz和

2021-03-28 21:44:06 720

原创 5.4 本章小结

ROS入门 5.4 本章小结《ROS入门-理论与实践》视频教程镇楼本章主要介绍了ROS中的常用组件,内容如下:TF坐标变换(重点)rosbag 用于ros话题的录制与回放rqt工具箱,图形化方式调用组件,提高操作效率以及易用性其中 TF坐标变换是重点,也是难点,需要大家熟练掌握坐标变换的应用场景以及代码实现。下一章开始将介绍机器人系统仿真,我们将在仿真环境下,创建机器人、控制机器人运动、搭建仿真环境,并以机器人的视角去感知世界。...

2021-03-28 21:43:11 108

原创 5.3.5 rqt常用插件rqt_bag

ROS入门 5.3.5 rqt常用插件:rqt_bag《ROS入门-理论与实践》视频教程镇楼简介:录制和重放 bag 文件的图形化插件准备:启动 turtlesim 乌龟节点与键盘控制节点启动:可以在 rqt 的 plugins 中添加,或者使用rqt_bag启动录制:重放:...

2021-03-27 21:50:05 1636

原创 5.3.4 rqt常用插件rqt_plot

ROS入门 5.3.4 rqt常用插件:rqt_plot《ROS入门-理论与实践》视频教程镇楼简介:图形绘制插件,可以以 2D 绘图的方式绘制发布在 topic 上的数据准备:启动 turtlesim 乌龟节点与键盘控制节点,通过 rqt_plot 获取乌龟位姿龟位姿启动:可以在 rqt 的 plugins 中添加,或者使用rqt_plot启动...

2021-03-27 21:48:55 664

原创 5.3.3 rqt常用插件rqt_console

ROS入门 5.3.3 rqt常用插件:rqt_console《ROS入门-理论与实践》视频教程镇楼简介:rqt_console 是 ROS 中用于显示和过滤日志的图形化插件准备:编写 Node 节点输出各个级别的日志信息/* ROS 节点:输出各种级别的日志信息*/#include "ros/ros.h"int main(int argc, char *argv[]){ ros::init(argc,argv,"log_demo"); ros::Nod

2021-03-27 21:47:59 352

原创 5.3.2 rqt常用插件rqt_graph

ROS入门 5.3.2 rqt常用插件:rqt_graph《ROS入门-理论与实践》视频教程镇楼简介:可视化显示计算图启动:可以在 rqt 的 plugins 中添加,或者使用rqt_graph启动

2021-03-25 21:44:44 2437 1

原创 5.3.1 rqt安装启动与基本使用

ROS入门 5.3.1 rqt安装启动与基本使用《ROS入门-理论与实践》视频教程镇楼1.安装一般只要你安装的是desktop-full版本就会自带工具箱如果需要安装可以以如下方式安装$ sudo apt-get install ros-noetic-rqt$ sudo apt-get install ros-noetic-rqt-common-plugins2.启动rqt的启动方式有两种:方式1:rqt方式2:rosrun rqt_gui rqt_gui3.基

2021-03-25 21:44:25 1689

原创 5.3 rqt工具箱

ROS入门 5.3 rqt工具箱《ROS入门-理论与实践》视频教程镇楼之前,在 ROS 中使用了一些实用的工具,比如: ros_bag 用于录制与回放、tf2_tools 可以生成 TF 树 … 这些工具大大提高了开发的便利性,但是也存在一些问题: 这些工具的启动和使用过程中涉及到一些命令操作,应用起来不够方便,在ROS中,提供了rqt工具箱,在调用工具时以图形化操作代替了命令操作,应用更便利,提高了操作效率,优化了用户体验。概念ROS基于 QT 框架,针对机器人开发提供了一系列可视化的工具

2021-03-25 21:41:54 324

原创 5.2.2 rosbag使用_编码

ROS入门 5.2.2 rosbag使用_编码《ROS入门-理论与实践》视频教程镇楼命令实现不够灵活,可以使用编码的方式,增强录制与回放的灵活性,本节将通过简单的读写实现演示rosbag的编码实现。方案A:C++实现1.写 bag#include "ros/ros.h"#include "rosbag/bag.h"#include "std_msgs/String.h"int main(int argc, char *argv[]){ ros::init(argc,ar

2021-03-24 21:46:19 728

原创 5.2.1 rosbag使用_命令行

ROS入门 5.2.1 rosbag使用_命令行《ROS入门-理论与实践》视频教程镇楼需求:ROS 内置的乌龟案例并操作,操作过程中使用 rosbag 录制,录制结束后,实现重放实现:1.准备创建目录保存录制的文件mkdir ./xxxcd xxx2.开始录制rosbag record -a -O 目标文件操作小乌龟一段时间,结束录制使用 ctrl + c,在创建的目录中会生成bag文件。3.查看文件rosbag info 文件名4.回放文件rosbag play

2021-03-24 21:45:58 213

原创 5.2 rosbag

ROS入门 5.2 rosbag《ROS入门-理论与实践》视频教程镇楼机器人传感器获取到的信息,有时我们可能需要时时处理,有时可能只是采集数据,事后分析,比如:机器人导航实现中,可能需要绘制导航所需的全局地图,地图绘制实现,有两种方式,方式1:可以控制机器人运动,将机器人传感器感知到的数据时时处理,生成地图信息。方式2:同样是控制机器人运动,将机器人传感器感知到的数据留存,事后,再重新读取数据,生成地图信息。两种方式比较,显然方式2使用上更为灵活方便。在ROS中关于数据的留存以及读取实现,

2021-03-24 21:45:35 374

原创 5.1.8 小结

ROS入门 5.1.8 小结《ROS入门-理论与实践》视频教程镇楼坐标变换在机器人系统中是一个极其重要的组成模块,在 ROS 中 TF2 组件是专门用于实现坐标变换的,TF2 实现具体内容又主要介绍了如下几部分:1.静态坐标变换广播器,可以编码方式或调用内置功能包来实现(建议后者),适用于相对固定的坐标系关系2.动态坐标变换广播器,以编码的方式广播坐标系之间的相对关系,适用于易变的坐标系关系3.坐标变换监听器,用于监听广播器广播的坐标系消息,可以实现不同坐标系之间或同一点在不同坐标系之间的

2021-03-23 21:47:09 115

原创 5.1.7 TF2与TF

ROS入门 5.1.7 TF2与TF《ROS入门-理论与实践》视频教程镇楼1.TF2与TF比较_简介TF2已经替换了TF,TF2是TF的超集,建议学习 TF2 而非 TFTF2 功能包的增强了内聚性,TF 与 TF2 所依赖的功能包是不同的,TF 对应的是tf包,TF2 对应的是tf2和tf2_ros包,在 TF2 中不同类型的 API 实现做了分包处理。TF2 实现效率更高,比如在:TF2 的静态坐标实现、TF2 坐标变换监听器中的 Buffer 实现等2.TF2与TF比较_静态坐标

2021-03-23 21:46:52 615

原创 5.1.6 TF坐标变换实操

ROS入门 5.1.6 TF坐标变换实操《ROS入门-理论与实践》视频教程镇楼需求描述:程序启动之初: 产生两只乌龟,中间的乌龟(A) 和 左下乌龟(B), B 会自动运行至A的位置,并且键盘控制时,只是控制 A 的运动,但是 B 可以跟随 A 运行结果演示:实现分析:乌龟跟随实现的核心,是乌龟A和B都要发布相对世界坐标系的坐标信息,然后,订阅到该信息需要转换获取A相对于B坐标系的信息,最后,再生成速度信息,并控制B运动。启动乌龟显示节点在乌龟显示窗体中生成一只新的乌龟(需要使用服

2021-03-23 21:46:31 796

原创 5.1.5 坐标系关系查看

ROS入门 5.1.5 坐标系关系查看《ROS入门-理论与实践》视频教程镇楼在机器人系统中,涉及的坐标系有多个,为了方便查看,ros 提供了专门的工具,可以用于生成显示坐标系关系的 pdf 文件,该文件包含树形结构的坐标系图谱。6.1准备首先调用rospack find tf2_tools查看是否包含该功能包,如果没有,请使用如下命令安装:sudo apt install ros-noetic-tf2-tools6.2使用6.2.1生成 pdf 文件启动坐标系广播程序之后,运行如下命

2021-03-22 21:45:11 367

原创 5.1.4 多坐标变换

ROS入门 5.1.4 多坐标变换《ROS入门-理论与实践》视频教程镇楼需求描述:现有坐标系统,父级坐标系统 world,下有两子级系统 son1,son2,son1 相对于 world,以及 son2 相对于 world 的关系是已知的,求 son1原点在 son2中的坐标,又已知在 son1中一点的坐标,要求求出该点在 son2 中的坐标实现分析:首先,需要发布 son1 相对于 world,以及 son2 相对于 world 的坐标消息然后,需要订阅坐标发布消息,并取出订阅的消息,

2021-03-22 21:42:42 275

原创 5.1.3 动态坐标变换

ROS入门 5.1.3 动态坐标变换《ROS入门-理论与实践》视频教程镇楼所谓动态坐标变换,是指两个坐标系之间的相对位置是变化的。需求描述:启动 turtlesim_node,该节点中窗体有一个世界坐标系(左下角为坐标系原点),乌龟是另一个坐标系,键盘控制乌龟运动,将两个坐标系的相对位置动态发布。结果演示:实现分析:乌龟本身不但可以看作坐标系,也是世界坐标系中的一个坐标点订阅 turtle1/pose,可以获取乌龟在世界坐标系的 x坐标、y坐标、偏移量以及线速度和角速度将 pos

2021-03-22 21:41:24 886

原创 5.1.2 静态坐标变换

ROS入门 5.1.2 静态坐标变换《ROS入门-理论与实践》视频教程镇楼所谓静态坐标变换,是指两个坐标系之间的相对位置是固定的。需求描述:现有一机器人模型,核心构成包含主体与雷达,各对应一坐标系,坐标系的原点分别位于主体与雷达的物理中心,已知雷达原点相对于主体原点位移关系如下: x 0.2 y0.0 z0.5。当前雷达检测到一障碍物,在雷达坐标系中障碍物的坐标为 (2.0 3.0 5.0),请问,该障碍物相对于主体的坐标是多少?结果演示:实现分析:坐标系相对关系,可以通过发布方发布

2021-03-21 21:57:10 1337 2

原创 5.1.1 坐标msg消息

ROS入门 5.1.1 坐标msg消息《ROS入门-理论与实践》视频教程镇楼订阅发布模型中数据载体 msg 是一个重要实现,首先需要了解一下,在坐标转换实现中常用的 msg:geometry_msgs/TransformStamped和geometry_msgs/PointStamped前者用于传输坐标系相关位置信息,后者用于传输某个坐标系内坐标点的信息。在坐标变换中,频繁的需要使用到坐标系的相对关系以及坐标点信息。1.geometry_msgs/TransformStamped命令行键入:

2021-03-21 21:55:51 348

原创 5.1 TF坐标变换

ROS入门 5.1 TF坐标变换《ROS入门-理论与实践》视频教程镇楼机器人系统上,有多个传感器,如激光雷达、摄像头等,有的传感器是可以感知机器人周边的物体方位(或者称之为:坐标,横向、纵向、高度的距离信息)的,以协助机器人定位障碍物,可以直接将物体相对该传感器的方位信息,等价于物体相对于机器人系统或机器人其它组件的方位信息吗?显示是不行的,这中间需要一个转换过程。更具体描述如下:场景1:雷达与小车现有一移动式机器人底盘,在底盘上安装了一雷达,雷达相对于底盘的偏移量已知,现雷达检测到一障碍物

2021-03-21 21:55:16 1161

原创 第 5 章 ROS常用组件

第 5 章 ROS常用组件《ROS入门-理论与实践》视频教程镇楼在ROS中内置一些比较实用的工具,通过这些工具可以方便快捷的实现某个功能或调试程序,从而提高开发效率,本章主要介绍ROS中内置的如下组件:TF坐标变换,实现不同类型的坐标系之间的转换;rosbag 用于录制ROS节点的执行过程并可以重放该过程;rqt 工具箱,集成了多款图形化的调试工具。本章预期达成的学习目标:了解 TF 坐标变换的概念以及应用场景;能够独立完成TF案例:小乌龟跟随;可以使用 rosbag 命令或编码

2021-03-21 21:53:39 330

原创 4.8 本章小结

ROS入门 4.8 本章小结《ROS入门-理论与实践》视频教程镇楼本章主要介绍了ROS的运行管理机制,内容如下:如何通过元功能包关联工作空间下的不同功能包使用 launch 文件来管理维护 ROS 中的节点在 ROS 中重名是经常出现的,重名时会导致什么情况?以及怎么避免重名?如何实现 ROS 分布式通信?本章的重点是"重名"相关的内容:包名重复,会导致覆盖。节点名称重复,会导致先启动的节点关闭话题名称重复,无语法异常,但是可能导致通信实现出现逻辑问题参数名称重复,会导致参

2021-03-19 21:42:48 194

原创 4.7 ROS分布式通信

ROS入门 4.7 ROS分布式通信《ROS入门-理论与实践》视频教程镇楼ROS是一个分布式计算环境。一个运行中的ROS系统可以包含分布在多台计算机上多个节点。根据系统的配置方式,任何节点可能随时需要与任何其他节点进行通信。因此,ROS对网络配置有某些要求:所有端口上的所有机器之间必须有完整的双向连接。每台计算机必须通过所有其他计算机都可以解析的名称来公告自己。实现1.准备先要保证不同计算机处于同一网络中,最好分别设置固定IP,如果为虚拟机,需要将网络适配器改为桥接模式;2.配置

2021-03-19 21:42:30 1175 1

原创 4.6.3 编码设置参数

ROS入门 4.6.3 编码设置参数《ROS入门-理论与实践》视频教程镇楼编码的方式可以更方便的设置:全局、相对与私有参数。1.C++实现在 C++ 中,可以使用 ros::param 或者 ros::NodeHandle 来设置参数。1.1ros::param设置参数设置参数调用API是ros::param::set,该函数中,参数1传入参数名称,参数2是传入参数值,参数1中参数名称设置时,如果以 / 开头,那么就是全局参数,如果以 ~ 开头,那么就是私有参数,既不以 / 也不以 ~

2021-03-18 21:48:32 422

原创 4.6.2 launch文件设置参数

ROS入门 4.6.2 launch文件设置参数《ROS入门-理论与实践》视频教程镇楼通过 launch 文件设置参数的方式前面已经介绍过了,可以在 node 标签外,或 node 标签中通过 param 或 rosparam 来设置参数。在 node 标签外设置的参数是全局性质的,参考的是 / ,在 node 标签中设置的参数是私有性质的,参考的是 /命名空间/节点名称。1.设置参数以 param 标签为例,设置参数<launch> <param name="p

2021-03-18 21:48:14 723

原创 4.6.1 rosrun设置参数

ROS入门 4.6.1 rosrun设置参数《ROS入门-理论与实践》视频教程镇楼rosrun 在启动节点时,也可以设置参数:语法: rosrun 包名 节点名称 _参数名:=参数值1.设置参数启动乌龟显示节点,并设置参数 A = 100rosrun turtlesim turtlesim_node _A:=1002.运行rosparam list查看节点信息,显示结果:/turtlesim/A/turtlesim/background_b/turtlesim/backgro

2021-03-18 21:47:27 2544

原创 4.6 ROS参数名称设置

ROS入门 4.6 ROS参数名称设置《ROS入门-理论与实践》视频教程镇楼在ROS中节点名称话题名称可能出现重名的情况,同理参数名称也可能重名。当参数名称重名时,那么就会产生覆盖,如何避免这种情况?关于参数重名的处理,没有重映射实现,为了尽量的避免参数重名,都是使用为参数名添加前缀的方式,实现类似于话题名称,有全局、相对、和私有三种类型之分。全局(参数名称直接参考ROS系统,与节点命名空间平级)相对(参数名称参考的是节点的命名空间,与节点名称平级)私有(参数名称参考节点名称,是

2021-03-18 21:46:38 227

原创 4.5.3 编码设置话题名称

ROS入门 4.5.3 编码设置话题名称《ROS入门-理论与实践》视频教程镇楼话题的名称与节点的命名空间、节点的名称是有一定关系的,话题名称大致可以分为三种类型:全局(话题参考ROS系统,与节点命名空间平级)相对(话题参考的是节点的命名空间,与节点名称平级)私有(话题参考节点名称,是节点名称的子级)结合编码演示具体关系。1.C++ 实现演示准备:1.初始化节点设置一个节点名称ros::init(argc,argv,"hello")2.设置不同类型的话题3.启动节点时,传

2021-03-17 20:58:42 143

原创 4.5.2 launch文件设置话题重映射

ROS入门 4.5.2 launch文件设置话题重映射《ROS入门-理论与实践》视频教程镇楼launch 文件设置话题重映射语法:<node pkg="xxx" type="xxx" name="xxx"> <remap from="原话题" to="新话题" /></node>实现teleop_twist_keyboard与乌龟显示节点通信方案由两种:1.方案1将 teleop_twist_keyboard 节点的话题设置为/turtle

2021-03-17 20:56:28 618

原创 4.5.1 rosrun设置话题重映射

ROS入门 4.5.1 rosrun设置话题重映射《ROS入门-理论与实践》视频教程镇楼rosrun名称重映射语法: rorun 包名 节点名 话题名:=新话题名称实现teleop_twist_keyboard与乌龟显示节点通信方案由两种:1.方案1将 teleop_twist_keyboard 节点的话题设置为/turtle1/cmd_vel启动键盘控制节点:rosrun teleop_twist_keyboard teleop_twist_keyboard.py /cmd_vel:=/

2021-03-17 20:55:42 519

原创 4.5 ROS话题名称设置

ROS入门 4.5 ROS话题名称设置《ROS入门-理论与实践》视频教程镇楼在ROS中节点名称可能出现重名的情况,同理话题名称也可能重名。在 ROS 中节点终端,不同的节点之间通信都依赖于话题,话题名称也可能出现重复的情况,这种情况下,系统虽然不会抛出异常,但是可能导致订阅的消息非预期的,从而导致节点运行异常。这种情况下需要将两个节点的话题名称由相同修改为不同。又或者,两个节点是可以通信的,两个节点之间使用了相同的消息类型,但是由于,话题名称不同,导致通信失败。这种情况下需要将两个节点的话题

2021-03-17 20:54:50 1147

原创 4.4.3 编码设置命名空间与重映射

ROS入门 4.4.3 编码设置命名空间与重映射《ROS入门-理论与实践》视频教程镇楼如果自定义节点实现,那么可以更灵活的设置命名空间与重映射实现。1.C++ 实现:重映射1.1名称别名设置核心代码:ros::init(argc,argv,"zhangsan",ros::init_options::AnonymousName);1.2执行会在名称后面添加时间戳。2.C++ 实现:命名空间2.1命名空间设置核心代码 std::map<std::string, std::st

2021-03-16 21:39:36 231

原创 4.4.2 launch文件设置命名空间与重映射

ROS入门 4.4.2 launch文件设置命名空间与重映射《ROS入门-理论与实践》视频教程镇楼介绍 launch 文件的使用语法时,在 node 标签中有两个属性: name 和 ns,二者分别是用于实现名称重映射与命名空间设置的。使用launch文件设置命名空间与名称重映射也比较简单。1.launch文件<launch> <node pkg="turtlesim" type="turtlesim_node" name="t1" /> <no

2021-03-16 21:38:50 511

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除