Отправка и получение сообщений по cyphal
Last updated
Last updated
В примере ниже, мы собираемся отправлять в соответствующие топики угол положения мотора и угловую скорость мотора.
В спецификации сказано, что нода также должна отправлять сообщение типа Heartbeat:
В сообщении Heartbeat есть поля Health и Mode, подробнее можно почитать в спецификации. Нам также нужны сообщения типа угловая скорость и угол. Идем в репозиторий со стандартными типами сообщений и выбираем то, что подходит под наши задачи. В нашем примере это: uavcan/si/unit/angle/Scalar.1.0.dsdl и uavcan/si/unit/angular_velocity/Scalar.1.0.dsdl
Подключаем их как библиотеки вместе со стандартными библиотеками для работы с модулем и can-ом:
Чтобы не использовать длинные названия типов, переименуем их:
В основном цикле будет вызываться функция, которая в качестве аргумента принимает