exponenta event banner

получить

Ожидание нового сообщения ROS

Описание

пример

msg = receive(sub) ожидает получения MATLAB ® тематического сообщения от указанного абонента ,subи возвращает его как msg.

msg = receive(sub,timeout) указывает в timeout количество секунд ожидания сообщения. Если сообщение не получено в рамках ограничения по тайм-ауту, программа выдает ошибку.

Примеры

свернуть все

Подключение к сети ROS. Настройте пример сети ROS. '/scan' тема публикуется в сети.

rosinit
Launching ROS Core...
Done in 0.95002 seconds.
Initializing ROS master on http://192.168.0.10:50060.
Initializing global node /matlab_global_node_87093 with NodeURI http://bat6315glnxa64:45715/
exampleHelperROSCreateSampleNetwork

Создание абонента для '/scan' с использованием структур сообщений. Дождитесь регистрации абонента на ведущем сервере.

sub = rossubscriber('/scan','DataFormat','struct');
pause(1);

Прием данных от абонента в виде структуры сообщений ROS. Укажите 10-секундный тайм-аут.

msg2 = receive(sub,10)
msg2 = struct with fields:
       MessageType: 'sensor_msgs/LaserScan'
            Header: [1x1 struct]
          AngleMin: -0.5216
          AngleMax: 0.5243
    AngleIncrement: 0.0016
     TimeIncrement: 0
          ScanTime: 0.0330
          RangeMin: 0.4500
          RangeMax: 10
            Ranges: [640x1 single]
       Intensities: []

Завершите работу таймеров, используемых выборочной сетью.

exampleHelperROSShutDownSampleNetwork

Завершение работы сети ROS.

rosshutdown
Shutting down global node /matlab_global_node_87093 with NodeURI http://bat6315glnxa64:45715/
Shutting down ROS master on http://192.168.0.10:50060.

Входные аргументы

свернуть все

Абонент АФК, указанный как Subscriber дескриптор объекта. Создать абонента можно с помощью rossubscriber.

Тайм-аут для получения сообщения, заданного как скаляр в секундах.

Выходные аргументы

свернуть все

Сообщение ROS, возвращенное как Message дескриптор объекта или структура.

Примечание

В следующем выпуске Панель инструментов ROS будет использовать структуры сообщений вместо объектов для сообщений ROS.

Чтобы использовать структуры сообщений сейчас, установите "DataFormat" аргумент «имя-значение» для "struct". Для получения дополнительной информации см. Структуры сообщений ROS.

Вопросы совместимости

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

Изменение поведения в будущем выпуске

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

.
Представлен в R2019b