28.01.2015, 22:29 | #11 |
Junior Member
Регистрация: 16.07.2014
Адрес: Сланцы. Лен. область.
Возраст: 50
Сообщений: 14
Вес репутации: 0 |
Re: Синхронизация вращения колес у робота
Пошел другим способом для достижения прямолинейного движения.
Добавил к своему мини-боту - Добавил сзади кусок платы от старой мышки PS/2. В результате имею данные по перемещению "X" - движение вперёд, и "Y" - угол поворота в попугаях. Получается из-за того, что сенсор смещен относительно оси вращения при поворотах (ось лежит где-то на прямой между колёсами) (гайка для груза, а то клюёт носом при торможении) .... Отсюда алгоритм прост - опрашиваем датчик мыши с частотой в килогерц, на один двигатель подаём сразу скорость хода, а на другой - интеграл с датчика вращения (ось Y от сенсора мыши). Интеграл сразу набирает значение равное скорости первого колеса, и колеблется на минимальной разнице с ним. На первое колесо можно подавать любое значение (положительное. Мы говорим про движение вперёд по прямой), и второе колесо через долю секунды догонит первое. Единственное замечание - датчик должен быть сориентирован точно по осям робота. Но даже если нет - не страшно, компенсируется подобранными коэффициентами смещения. ........................................ . P.S. 1. Для "ведомого" привода можно изначально задавать скорость вращения процентов в 70-80 от номинальной, что бы сократить время стабилизации. 2. В качестве датчика могут выступать как данные с гироскопа, так и разница в количестве импульсов за единицу времени с энкодеров каждого колеса. Последний раз редактировалось Stiger; 29.01.2015 в 09:21. Причина: Дополнение. |
Здесь присутствуют: 12 (пользователей: 0 , гостей: 12) | |
|
|