В этой модели показано, как публиковать и подписываться на раздел ROS с помощью Simulink ®.
open_system('rosPubSubExample.slx')
Используйте блоки «Пустое сообщение» и «Назначение шины» для указания X и Y значения 'geometry_msgs/Point' тип сообщения. Откройте маску блока «Пустое сообщение», чтобы указать тип сообщения. Откройте маску блока назначения шины для выбора сигналов, которые требуется назначить. Удалить все значения с помощью '???' из правого столбца. Поставьте блок назначения шины с соответствующими значениями для X и Y.
Подача Bus вывод в блок «Публикация». Откройте маску блока и выберите Specify your own в качестве источника темы. Укажите тему, '/location'и тип сообщения, 'geoemetry_msgs/Point'.
Добавьте блок подписки и укажите тему и тип сообщения. Подача выходного сигнала Msg к селектору шины и укажите выбранные сигналы в маске блока. Отображение X и Y значения.
Перед запуском модели вызовите rosinit для подключения к сети ROS.
rosinit
Launching ROS Core... Done in 0.66339 seconds. Initializing ROS master on http://192.168.0.10:49460. Initializing global node /matlab_global_node_87509 with NodeURI http://bat6315glnxa64:33735/
Запустите модель. Вы должны увидеть xPosition Out и yPosition Out отображает соответствующие значения, опубликованные в сети ROS.
sim('rosPubSubExample')Завершите работу сети ROS.
rosshutdown
Shutting down global node /matlab_global_node_87509 with NodeURI http://bat6315glnxa64:33735/ Shutting down ROS master on http://192.168.0.10:49460.