订阅

接收来自ROS网络消息

  • 库:
  • ROS工具箱/ ROS

描述

订阅块创建一个Simulink的万博1manbetx®非虚拟总线对应于指定的ROS消息类型。该块使用Simulink模型的节点创建特定主题一ROS用户。万博1manbetx当模型运行和模型终止时被删除创建此节点。如果模型没有一个节点,该块创建一个。

在每个模拟步骤中,该块检查特定主题上是否有新消息可用。如果有新消息可用,则块检索该消息并将其转换为Simulink总线信号。万博1manbetx的味精端口输出该新的消息。如果有新的消息不可用,味精输出最后收到的ROS消息。如果自模拟开始以来没有收到消息,味精输出空白消息。

港口

输出

全部展开

新消息指示符,返回作为逻辑。如果输出1,然后收到一条自上次示例命中以来的新消息。此输出可用于触发子系统,以便处理ROS网络中接收到的新消息。

ROS消息,作为非虚拟总线返回。属性中指定了ROS消息的类型消息类型参数。的订阅块输出空白消息,直到它收到关于您指定的主题名称的消息为止。这些空白消息允许您在设置网络的其余部分之前创建和测试完整的模型。

数据类型:公共汽车

参数

全部展开

用于指定主题名称的源,指定为以下类型之一:

  • 从ROS网络中选择——使用选择选择主题名称。的话题消息类型参数被自动设置。您必须连接到网络ROS。

  • 指定您自己的-输入主题名称话题并指定在其消息类型消息类型。您必须完全匹配主题名称。

要订阅的主题名称,指定为字符串。当课题来源设定为从ROS网络中选择, 用选择从ROS网络中选择一个主题。您必须连接到一个ROS网络才能获得主题列表。否则,设置课题来源指定您自己的并指定你想要的话题。

ROS消息类型,指定为字符串。使用选择从支持的ROS消息的完整列表中进行选择。万博1manbetx服务消息类型不受支持,也不包括在列表中。万博1manbetx

输出之间的时间间隔,指定为一个标量。在模拟中,采样时间如下仿真时间,而不是实际的时钟时间。

此默认值表示块采样时间为遗传

有关继承的采样时间类型的详细信息,请参阅指定样品时间(万博1manbetx模型)。

代码生成中的消息队列长度,指定为整数。在模拟中,消息队列始终为1,无法进行调整。要确保捕获每个消息,请使用较小的模型步骤,或者仅在以下情况下执行模型是新的返回1

提示

您也可以通过点击设置为ROS主机和主机节点的地址配置网络地址链接在块中。

扩展功能

C / c++代码生成
使用Simulink®Coder™生成C和c++代码。万博1manbetx

介绍了R2019b