Subscribe

Получите сообщения от сети ROS

  • Библиотека:
  • ROS Toolbox / ROS

Описание

Блок Subscribe создает Simulink® невиртуальная шина, которая соответствует заданному типу сообщения ROS. Блок использует вершину модели Simulink, чтобы создать подписчика ROS для определенной темы. Этот узел создается, когда модель запускается и удалена, когда модель завершает работу. Если модель не имеет узла, блок создает тот.

На каждом шаге симуляции, проверки блока, если новое сообщение доступно по определенной теме. Если новое сообщение доступно, блок получает сообщение и преобразует его в сигнал шины Simulink. Выходы порта Msg это новое сообщение. Если новое сообщение не доступно, Msg выходные параметры последнее полученное сообщение ROS. Если сообщение не было получено начиная с запуска симуляции, Msg выходные параметры пустое сообщение.

Порты

Вывод

развернуть все

Новый индикатор сообщения, возвращенный как логическое. Если выходом является 1, затем новое сообщение было получено начиная с последнего демонстрационного хита. Этот выход может использоваться, чтобы инициировать подсистемы для обработки новых сообщений, полученных в сети ROS.

Сообщение ROS, возвращенное как невиртуальная шина. Тип сообщения ROS задан в параметре Message type. Выходные параметры блока Subscribe очищают сообщения, пока это не получает сообщение на названии темы, которое вы задаете. Эти пустые сообщения позволяют вам создавать и тестировать полные модели, прежде чем остальная часть сети была настройкой.

Типы данных: bus

Параметры

развернуть все

Источник для определения названия темы, заданного как одно из следующего:

  • Select from ROS network — Используйте Select, чтобы выбрать название темы. Topic и параметры Message type установлены автоматически. Вы должны быть соединены с сетью ROS.

  • Specify your own — Введите название темы в Topic и задайте его тип сообщения в Message type. Необходимо совпадать с названием темы точно.

Название темы, чтобы подписаться на, заданный как строка. Когда Topic source установлен в Select from ROS network, используйте Select, чтобы выбрать тему из сети ROS. Вы должны быть соединены с сетью ROS, чтобы получить список тем. В противном случае установите Topic source на Specify your own и задайте тему, которую вы хотите.

Тип сообщения ROS, заданный как строка. Используйте Select, чтобы выбрать из полного списка поддерживаемых сообщений ROS. Сервисные типы сообщений не поддержаны и не включены в список.

Интервал между выходными параметрами, заданными как скаляр. В симуляции шаг расчета следует за временем симуляции и не фактическое время часов.

Это значение по умолчанию указывает, что шаг расчета блока наследован.

Для получения дополнительной информации о наследованном типе шага расчета, см. Настройку времени выборки (Simulink).

Длина очереди сообщений в генерации кода, заданной как целое число. В симуляции очередь сообщений всегда равняется 1 и не может быть настроена. Гарантировать каждое сообщение отловлено, используйте меньший шаг модели или только выполните модель если IsNew возвращает 1.

Примеры модели

Советы

Можно также установить адреса для ведущего устройства ROS и хоста узла путем щелчка по ссылке Configure network addresses в блоке.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Введенный в R2019b