机器人操作系统(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 2节点。
出版商和用户不同种类的ROS 2实体,处理数据。他们交换数据使用消息。
一个出版商发送消息到一个特定的主题(如“测程法”),该主题的订阅者,接收这些消息。可以有多个出版商和用户关联到一个单一的主题。
一个域是网络的物理分割。它是由一个唯一的整数值称为域ID。默认情况下,域ID是0
。
ROS 2中每个节点创建网络广告出现在相同的其他节点域ID只有。
ROS 2网络是建立在数据分布标准(DDS)可以连接多个节点分布式网络。
rtp(实时publisher-subscriber)协议提供ROS 2网络功能发送消息在不可靠的网络条件。
ROS 2提供了各种各样的服务质量(QoS)政策,允许您优化您的节点之间的通信。有关更多信息,请参见ROS 2中管理的服务质量策略。
有关更多信息,请参见机器人操作系统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。
使用exampleHelperROS2ShutDownSampleNetwork
删除示例节点,从ROS 2网络出版商和用户。删除自己的节点,使用清晰的
与节点、出版商或用户对象。
exampleHelperROS2ShutDownSampleNetwork