自定义消息是用户定义的消息,您可以使用扩展集目前在ROS 2.如果您发送和接收支持的消息类型支持的消息类型,你不需要使用自定义消息。金宝app要查看支持的消息类型的列表,通话金宝appros2消息列表
在MATLAB®命令窗口。有关支持ROS 2消息的详细信息,请参阅金宝app与基本ROS 2信息工作。
如果,如果你的第一次与ROS 2自定义消息工作,请检查ROS系统要求。
ROS 2自定义消息用在含有一个ROS 2包文件夹指定味精
目录。这味精
文件夹包含所有的自定义消息类型定义。例如,包示例_b_msgs
,在风俗
文件夹中,有以下文件夹和文件结构。
所述包中包含一个自定义消息的类型,Standalone.msg
。MATLAB使用这些文件来生成所必需的文件使用包含在包中的自定义消息。有关消息命名约定的更多信息,请参阅ROS 2接口定义。
在本例中,您将完成在MATLAB®中创建ROS 2自定义消息的过程。您必须拥有包含所需消息的ROS 2包味精
文件
确保自定义邮件包正确后,记下文件夹路径位置,然后调用ros2genmsg
在指定的路径。下面的例子提供三个消息example_package_a,
example_package_b
和example_package_c
有依赖性。这个例子也说明,您可以使用包含多封邮件的文件夹,并生成他们都在同一时间。
在Matlab中,在一个新的会话开放的MATLAB设置自定义消息。请将您的自定义消息文件夹中的位置,并记下文件夹路径。在该示例中,接口文件夹中的自定义消息是存在于当前目录。如果你是在一个单独的位置创建自定义消息包,提供了包含自定义消息包的文件夹适当的路径。
FOLDERPATH =完整文件(PWD,“风俗”);拷贝文件(“例如_ * _封邮件”,FOLDERPATH);
指定自定义邮件文件的文件夹路径并调用ros2genmsg
创建MATLAB自定义消息。
ros2genmsg(FOLDERPATH)
确定消息文件夹中的“U:/Documents/MATLAB/Examples/ros-ex44405863/custom'.Done。验证邮件文件夹中的“U:/Documents/MATLAB/Examples/ros-ex44405863/custom'.Done。[3/3]生成MATLAB接口,用于自定义消息包...完成。在文件夹中运行colcon构建 'U:/文档/ MATLAB /例子/ ROS-ex44405863 /自定义/ matlab_msg_gen / Win64平台'。建设正在进行中。这可能需要几分钟时间...构建succeeded.build日志
称呼ros2消息列表
验证新的自定义消息的创建。
您现在可以使用上面创建的自定义消息为标准的消息。有关发送和接收消息的更多信息,请参见与ROS 2发布服务器和订阅Exchange数据。
创建发布使用example_package_b /单机
信息。
节点= ros2node(“/node_1”);酒馆= ros2publisher(节点,“/ example_topic”那“example_b_msgs /独立”);
创建关于同一主题的订户。
子= ros2subscriber(节点,“/ example_topic”);
创建邮件并发送邮件。
custom_msg = ros2message(“example_b_msgs /独立”);custom_msg.int_property = UINT32(12);custom_msg.string_property =“这是ROS 2自定义消息例如”;发送(酒吧,custom_msg);暂停(3)%允许几秒钟的消息的到达
用LatestMessage
域得知由用户最近接收的消息。
最新消息
ans =.同场的结构:int_属性:12字符串_属性:“这是ROS 2自定义消息示例”
删除创建的ROS对象。
清楚的节点酒吧亚