Включите модель времени ROS, продвигающуюся для развернутых узлов ROS

Можно позволить развернутому узлу ROS выполниться на основе времени, опубликованного на /clock тема в сети ROS. Развернуть узел ROS от Simulink®, смотрите Генерируют Автономный Узел ROS от Simulink®.

Когда вы включаете продвижение модели времени ROS, развернутый узел ROS выполняется, когда опубликованное время ROS является кратным базовой ставке модели. Включить модель, продвигающуюся на основе времени ROS:

  1. На вкладке Apps, под Control Systems, нажимают Robot Operating System (ROS).

  2. В диалоговом окне Robot Operating System (ROS), которое открывается, выберите Robot Operating System (ROS) от выпадающего ROS Network. Это открывает вкладку ROS в панели инструментов, которая показывает заданную Сеть ROS в разделе Connect.

  3. В разделе Prepare под вкладкой ROS нажмите Hardware Settings, чтобы открыть диалоговое окно параметров конфигурации модели. Под Target Hardware resources> ROS time, выберите Enable ROS time model stepping.

Чтобы задать тему, чтобы опубликовать уведомление, когда модель выполняется, проверяйте флажок Enable notification after step и используйте Notification topic (значением по умолчанию является /step_notify). Subscribe к теме, чтобы получить сообщение каждый раз время ROS публикуется. Узел ROS публикует std_msgs/String тип сообщения со строкой, содержащей '+' или '-' и имя модели (+rostime_test, например). '+' указывает, что модель была продвинута. A указывает опубликованное время ROS, не было кратное базовой ставке модели.

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

Можно также включить превышенное обнаружение, если выполнение модели все еще обрабатывает, когда следующий шаг инициирован временем ROS. Для получения дополнительной информации смотрите Обнаружение Переполнения с Развернутыми Узлами ROS.

Смотрите также

|

Похожие темы