主要内容

开始使用ROS 2

机器人操作系统(ROS 2)是ROS的第二个版本,这是一个机器人系统的通信接口,使不同地区发现,发送和接收数据。MATLAB®支金宝app持ROS 2是一个函数库,允许您启用了ROS 2交换数据物理机器人或机器人仿真器如露台®。ROS 2是建立在数据分布标准(DDS)这是一个端到端的中间件提供的特性如发现呢,序列化和运输。这些特性结合ROS 2的设计原则等分布式的发现和控制不同“服务质量”选择交通工具。DDS使用实时发布-订阅(rtp)协议提供的通信不可靠UDP等网络协议。有关更多信息,请参见rtp

这个例子展示了如何:

  • 在MATLAB建立ROS 2

  • ROS 2网络获取信息的能力

  • 得到信息ROS 2消息

了解ROS,看到开始使用ROS

ROS 2术语

  • 一个ROS 2网络包括机器人系统的不同部分(如规划师或相机接口)/ ROS 2通信网络。网络可以分布在多个机器。

  • 一个ROS 2节点是一个实体,它包含一组相关的ROS 2功能(如出版商和用户)。网络可以有许多活性氧ROS 2 2节点。

  • 出版商用户不同种类的ROS 2实体,处理数据。他们交换数据使用消息

  • 一个出版商发送消息到一个特定的主题(如“测程法”),该主题的订阅者,接收这些消息。可以有多个出版商和用户关联到一个单一的主题。

  • 一个是网络的物理分割。它是由一个唯一的整数值称为域ID。默认情况下,域ID0

  • ROS 2中每个节点创建网络广告出现在相同的其他节点域ID只有

  • ROS 2网络是建立在数据分布标准(DDS)可以连接多个节点分布式网络。

  • rtp(实时publisher-subscriber)协议提供ROS 2网络功能发送消息在不可靠的网络条件。

  • ROS 2提供了各种各样的服务质量(QoS)政策,允许您优化您的节点之间的通信。有关更多信息,请参见ROS 2中管理的服务质量策略

有关更多信息,请参见机器人操作系统2 (ROS 2)概念ROS 2网站上部分。

初始化ROS 2网络

与活性氧,活性氧在MATLAB 2不需要初始化。ROS 2网络自动开始创建节点。

使用ros2node创建一个节点。

test1 = ros2node (“/ test1”)
test1 = ros2node属性:名称:test1 ' / ' ID: 0

使用ros2节点列表ROS 2网络中的所有节点。

ros2节点列表
/ test1

使用清晰的关闭ROS 2中的节点网络。

清晰的test1

使用exampleHelperROS2CreateSampleNetwork填充ROS网络与另外三个节点示例发布者和订阅者。

exampleHelperROS2CreateSampleNetwork

使用ros2节点列表再次,观察到有三个新的节点,node_1,node_2,node_3)。

ros2节点列表
/ node_1 node_2 / node_3

的当前状态的可视化表示ROS 2网络如下所示。用它作为参考,当你探索这个示例网络的其余部分的例子。

主题

使用ros2主题列表ROS 2网络中可用的主题。观察到有三个活动主题:/构成,/ parameter_events/扫描。这个话题/ parameter_events是一个全球性的话题也总是出现在ROS 2网络。它使用节点监控网络中或改变参数。另外两个主题/扫描和/构成作为示例的一部分创建网络。

ros2主题列表
/ parameter_events /姿势/扫描

每个主题与message类型。使用ros2主题列表- t看到消息类型的话题。

ros2主题列表- t
主题MessageType _____________________ _________________________________ {' / parameter_events '} {' rcl_interfaces / ParameterEvent '}{/构成的}{geometry_msgs /“扭转操作”}{/扫描的}{' sensor_msgs /提升'}

消息

发布者和订阅者使用ROS 2消息交换信息。每个ROS 2消息都有一个关联的消息类型,定义了数据类型和布局信息的消息。有关更多信息,请参见处理基本的ROS 2消息

使用ros2味精显示查看消息的属性类型。的geometry_msgs /扭消息类型有两个属性,线性。每个属性的消息类型geometry_msgs / Vector3,进而有三个类型的属性

ros2味精显示geometry_msgs /扭
#这表达速度在自由空间分为线性和角度部分。Vector3线性Vector3角
ros2味精显示geometry_msgs / Vector3
#这是一个向量在自由空间。float64 x float64 y float64 z

使用ros2味精列表看到消息类型的完整列表可以在MATLAB。

ROS 2网络断开

使用exampleHelperROS2ShutDownSampleNetwork删除示例节点,从ROS 2网络出版商和用户。删除自己的节点,使用清晰的与节点、出版商或用户对象。

exampleHelperROS2ShutDownSampleNetwork

下一个步骤