Считайте сообщение ROS изображений в Simulink®

Этот пример требует Computer Vision System Toolbox® и Robotics System Toolbox®.

Запустите сеть ROS.

rosinit
Initializing ROS master on http://bat5238win64:53398/.
Initializing global node /matlab_global_node_87040 with NodeURI http://bat5238win64:53402/

Загрузите демонстрационные сообщения, чтобы отправить включая демонстрационное сообщение изображений, img. Создайте издателя, чтобы отправить сообщение Image ROS по теме '/image_test'. Задайте тип сообщения как '/sensor_msgs/Image'. Отправьте сообщение изображений.

exampleHelperROSLoadMessages
pub = rospublisher('/image_test','sensor_msgs/Image');
send(pub,img)

Откройте модель Simulink® для подписки на сообщение ROS и чтения в изображении от ROS.

Гарантируйте, что блок Subscribe подписывается на тему '/image_test'. В меню под Инструментами> Операционная система Робота> Управляет Длинами массива, проверяет, что массив Data имеет максимальную длину, больше, чем демонстрационное изображение (921 600 пикселей).

open_system('read_image_example_model.slx')

Запустите модель. Video Viewer показывает демонстрационное изображение.

Остановите симуляцию и закройте сеть ROS.

rosshutdown
Shutting down global node /matlab_global_node_87040 with NodeURI http://bat5238win64:53402/
Shutting down ROS master on http://bat5238win64:53398/.