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

Я пытаюсь получить Velocity, чтобы контролировать подводный ROV. Я могу использовать ускорение и интегрирование по Эйлеру, но со временем ошибка будет накапливаться. Поскольку у нас есть рой (много маленьких роботов), я ограничен датчиками на борту. Поэтому, чтобы получить более точную оценку скорости, я подумал о слиянии датчиков IMU и одометрии. Так как датчиков одометрии нет, пришло какое-то нестандартное решение.

Так как у меня есть доступ к сигналам двигателя (подруливающего устройства), робот может двигаться с максимальной и постоянной скоростью. Означает, что вращение пропеллера имеет максимальный предел, и когда они достигают этого предела, они могут поддерживать этот максимум. Так что я думал о какой-то математической модели, которую можно было бы использовать для получения одометрии, а затем использовать некоторые пакеты ROS для сенсорного деления (

robot_lokalization

или

hector_pose_estimation

), чтобы получить точную скорость

Так что мне нужна помощь в этой математической модели, как получить одометрию от двигателей-подруливающих устройств. Любая помощь с этим и возможной реализацией узла ROS (C++)?

Спасибо

0 ответов

Другие вопросы по тегам