< >
Home » ROS2与Matlab入门教程 » ROS2与Matlab入门教程-开始使用ROS2

ROS2与Matlab入门教程-开始使用ROS2

说明:

  • 介绍如何在Matlab设置ROS2

  • 介绍如何获取有关ROS2网络中的功能的信息

  • 介绍如何获取有关ROS2消息的信息

步骤:

  • 初始化ROS2网络,与ROS不同,ROS2不需要在MATLAB中进行初始化

  • ROS2网络自动从创建节点开始

  • ros2node创建节点

test1 = ros2node( "/test1" )

test1 = 
  ros2node with properties:

    Name: '/test1'
      ID: 0
  • ros2 node list查看ROS2网络中的所有节点
ros2 node list

/test1
  • clear 关闭 ROS 2 网络中的节点
clear test1
  • 使用exampleHelperROS2CreateSampleNetwork示例发布者和订阅者使用三个附加节点填充ROS网络
exampleHelperROS2CreateSampleNetwork
  • 再次使用ros2 node list,并观察到有三个新节点node_1、node_2和node_3
ros2 node list

/node_1
/node_2
/node_3
  • ROS2网络当前状态的可视化表示如下所示

请输入图片描述

  • ros2 topic list查看ROS2网络中的可用主题

  • 观察有三个的主题/pose:/parameter_events和/scan。主题/parameter_events是一个全局主题,始终存在于ROS2网络中。节点使用它来监视或更改网络中的参数。其他两个主题 /scan和 /pose是作为示例网络的一部分创建的

ros2 topic list

/parameter_events
/pose
/rosout
/scan
  • 每个主题都与一个消息类型相关联。用于ros2 topic list -t 查看主题的消息类型
ros2 topic list -t

           Topic                       MessageType           
_____________________    _________________________________

{'/parameter_events'}    {'rcl_interfaces/ParameterEvent'}
{'/pose'            }    {'geometry_msgs/Twist'          }
{'/rosout'          }    {'rcl_interfaces/Log'           }
{'/scan'            }    {'sensor_msgs/LaserScan'        }
  • ros2 msg show查看消息类型的属性。geometry_msgs/Twist消息类型有两个属性,Linear和Angular。每个属性都是一个类型的消息,geometry_msgs/Vector3它又具有三个类型的属性double。
ros2 msg show geometry_msgs/Twist

# This expresses velocity in free space broken into its linear and angular parts.

Vector3  linear
Vector3  angular



ros2 msg show geometry_msgs/Vector3

# This represents a vector in free space.

# This is semantically different than a point.
# A vector is always anchored at the origin.
# When a transform is applied to a vector, only the rotational component is applied.

float64 x
float64 y
float64 z
  • ros2 msg list查 MATLAB中可用的消息类型的完整列表

  • 断开与ROS2网络的连接,exampleHelperROS2ShutDownSampleNetwork从ROS2网络中删除示例节点、发布者和订阅者。要删除您自己的节点,请clear与节点、发布者或订阅者对象一起使用

exampleHelperROS2ShutDownSampleNetwork

纠错,疑问,交流: 请进入讨论区点击加入Q群

获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号


标签: ros2与matlab入门教程