Выполните цикл в фиксированной частоте
rosrate возразите использует rateControl (Robotics System Toolbox) суперкласс, чтобы наследовать большинство его свойств и методов. Основным различием является тот rateControl использует узел ROS в качестве источника для получения информации времени. Поэтому это может использовать симуляцию ROS, или стенка показывают время (см. IsSimulationTime свойство.
Если rosinit создает ведущее устройство ROS в MATLAB®, глобальная стенка использования узла показывают время.
Эффективность rosrate возразите и способность обеспечить DesiredRate значение зависит от публикации информации о часах в ROS.
Совет
Разрешение планирования вашей операционной системы и уровень другого системного действия могут влиять на точность выполнения уровня. В результате точная синхронизация уровня ограничивается 100 Гц для подписания кода MATLAB. Чтобы улучшать скорости производительности и выполнения, используйте генерацию кода.
создает rate = rosrate(desiredRate)Rate объект, который позволяет вам выполнить цикл в фиксированной частоте, DesiredRate. Источник времени соединяется с источником времени глобального узла ROS, который требует, чтобы вы соединили MATLAB с использованием сети ROS rosinit.
создает rate = ros.Rate(node,desiredRate)Rate объект, который работает циклами с фиксированной процентной ставкой на основе источника времени, соединенного с заданным узлом ROS, node.
waitfor | Приостановите выполнение кода, чтобы достигнуть желаемого уровня выполнения |
statistics | Статистика прошлых периодов выполнения |
reset | Сбросьте Rate объект |
waitfor | rateControl (Robotics System Toolbox)