Выполните цикл на фиксированной частоте
The 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 объект |