roboforum.ru

Технический форум по робототехнике.

Управление двигателем поворота

Управление двигателем поворота

o_serg » 25 май 2006, 11:26

Собрал трехколесную платформу, на задние колеса по одному движку на каждое, по идее должен был поворачивать включением только одного из движков. Но переднее колесо поворачивалось плохо(видимо не расчитал размер платформы) и я решил поставить на него движок поворота.
Вопрос в следующем: нужно разработать схему для автоматического поворота вправо влево и возвращения колеса в прямое положение. Наверное нужно использовать датчик от мышки для отсчета угла поворота. Чтобы не загружть МК нужна схема например с двумя входами: поворот налево, поворот направо, если на обоих низкий уровень колесо автоматом возвращается в начальное положение. Помогите плиз со схемкой (ну хотя бы идею), я так с нуля не соображу... Есть драйвер от использованного двигателя KA8301, наверное лучше его и использовать.

Kanoka » 25 май 2006, 11:52

Тут серва нужна, тот же принцип что и в радиоуправляемых машинках, только впереди не два колеса а одно.

Но система получится довольно сложная, колесо и ведущее и управляющие, проще довести до ума ту схему которая уже есть.

libricon » 25 май 2006, 12:56

поставь колесо переднее, на ка тележках делают, видел когданибуть тележки в магазинах, там колево крутит ся относительно оси, каторая немного сдвинута от оси колеса. так что колесо само поворачивает куда надо

o_serg » 25 май 2006, 14:13

поставь колесо переднее, на ка тележках делают, видел когданибуть тележки в магазинах,
, дак я так и пробовал, плохо оно крутиться, видимо платформу не рассчитал. А с движком все равно лучше будет.
Тут серва нужна, тот же принцип что и в радиоуправляемых машинках, только впереди не два колеса а одно.

Но система получится довольно сложная, колесо и ведущее и управляющие, проще довести до ума ту схему которая уже есть.

Дак у меня уже все стоит как надо, даже типа редуктора с движком, все работает прекрасно, нужно только схему разработать чтоб правильно им управлять.
Я думаю если поставить датчик как в мышке(без контроллера) на шестеренку для подсчета импульсов. То нужно только разработать схему, которая при подаче 1 на один вход включала движок в одну сторону, и подсчитывала импулься с датчика, как только счетчик достигает определенного значения которое можно высчитать из количества зубъев шестерни, двигатель останавливается, при подаче единицы на другой вход, все тоже самое только движок крутится в другую сторону. Здесь единственная проблема в возврате движка в "среднее" положение(т.е. движение робота вперед), т.к. нужно учитывать куда он повернут вправо или влево.
Я не хочу загружать МК всей этой работой, ему другой работы хватит.

Тоха » 25 май 2006, 14:34

А зачем считать угол ? поставь 3 датчика (левый, правый повороты и центральное положение).
Устройство будет работать так:
1 Колесо стоит прямо
2 Пришол сигнал на поворот влево
3 Подано наряжение полярности поворота влево
4 Сработал датчик левого положения
5 Напряжение снято
6 Колесо повёрнуто влево
И.Т.Д.
А если система будет следующей: два ведущих двигателя, и один на поворот для компенсации, то есть такая штука как компаратор (на диференциальном усилителе), и если на оба его входа подаётся напряжение с ведущих двигателей, т.е. когда оно одинаковое, на выходе 0 (разность напряжений), если правй движок крутит быстрее, то с компаратора выйдет напряжение (его полярность будет значить направление поворота), и в зависимости от схемы будет + или -, это напряжение идёт на АЦП, подключённое ко второму компаратору, который сравниваетнынешнее положение колеса с нужным и подаёт напряжение на рулевой движок нужной полярности (т.е. обеспечит обратную связь).
Кароче вариантов много: как на чистой электроники, так и на цифровой или с использованием МК...

o_serg » 25 май 2006, 18:30

А зачем считать угол ? поставь 3 датчика (левый, правый повороты и центральное положение).

три датчика я не уверен что смогу поставить, один фотодиод+светодиод всетаки проще поставить сверху и снизу шестеренки. И по количеству импульсов от него можно достаточно точно определить положение колеса. Наверное остановлюсь на этом варианте. Количество импульсов подсчитать тоже просто любым счетчиком.
Теперь уже кое что прояснилось и есть более конкретные вопросы:
1. начну издалека - ТТЛ или КМОП можно использоать при работе с МК Atmel
Думаю нужно использовать реверсивный счетчик(наверное десятичный), который в зависимости от направления поворота будет прибавлять или вычитать импульсы от датчика. И назначить значениям счетчика определенные состояния, т.е. если 1 - колесо уже повернуто налево, 4 - середина, 8 - вправо. Может понадобиться делитель частоты поставить перед счетчиком. При приходе импульса поворота направление двигателя выбирается в соответствии со значением счетчика. Теперь осталось реализовать идею, у кого какие мысли?

Vovan » 25 май 2006, 18:58

Дык это трёхмоторная и трёхколёсая платфома? По-моему Kanoka всё же ясно объяснил: или серву на рулевое (причём ведущий только один двигатель) или довести до ума стандартный вариант трёхколёсого шасси (два ведущих с моторами и одно пассивное, поворотное). Зачем сложности себе создавать?  
два ведущих двигателя, и один на поворот для компенсации
 :shock: крайне не рационально! Достаточно двух - ведущий и управляющий! Смысл в третьем???
___________
С уважением
Vovan

o_serg » 25 май 2006, 19:42

Дык это трёхмоторная и трёхколёсая платфома?

да
 крайне не рационально! Достаточно двух - ведущий и управляющий! Смысл в третьем???

Смысл в том что один движок не потянет и конструкция проще для меня по крайней мере получилась.
А рулевое поставил т.к. не хочет оно само поворачиваться, да и не нравиться мне это. Проблема только в схеме управления все движки уже на месте.
И деньги тратить на серву я не буду, т.к. у меня еще два движка в запасе лежат

Vovan » 25 май 2006, 20:18

движок не потянет
конструкция проще
не хочет оно само поворачиваться
что ж это за конструкция если автор сам, хваля её, три грубейших недостатка перечислил?
Проблема только в схеме управления все движки уже на месте
вот отсюда и проблема (см. выше), а если б не изобретался "велосипед" и проблемы бы не было... Кроме того! Вся выше-выше (Вами) перечисленная логика займёт (навскидку) 1\100 ресурсов даже самого простого МК (имеется ввиду возврат в среднее положение) если управление рационально. Если же нужно согласовывать работу всех трёх двигателей во время поворота, да ещё и учитывать (датчиками) и вводить коррективы связанные с углом поворота дифференцированно по времени на скорость каждого из ведущих колёс, то тут не только логики тут и МК не хватит. Здесь надо понять простую вещь: в зависимости от угла поворота, ведущие двигателя должны дифференцированно изменить свою скорость вращения (вспомните назначение дифференциала в его класическом применении на автомобиле). Если Вы всё же будете строить платформу с такими явными нарушениями и бессмысленным усложнением конструкции (а следовательно и всей схемы), то в этом (ИМХО) Вам вряд ли найдутся тут помощники...
ЗЫ: тут ужЕ неоднократно звучало, но повторюсь: зачем делать просто, если можно сложно! :D
___________
С уважением
Vovan

o_serg » 25 май 2006, 20:41

Если Вы всё же будете строить платформу с такими явными нарушениями и бессмысленным усложнением конструкции (а следовательно и всей схемы), то в этом (ИМХО) Вам вряд ли найдутся тут помощники...
ЗЫ: тут ужЕ неоднократно звучало, но повторюсь: зачем делать просто, если можно сложно!

Да причем тут нарушения, были два движка, я сделал платформу, т.к. ничего готового не нашел. Прицепил оба джигателя и третье колесо. Возможно платформа длинная получилась, но мне понравилось как это все выглядит и вместимость хорошая. Т.к. идея сделать не просто копию робота, который двигается случайным образом или на свет, а сделать реально стоящую вещь с различными датчиками, связью с ПК и прочее. Вообщем чтобы места для экспериментов хватило.
Ну посмотрите хотя бы на проект Diana (roboclub) там ведь тоже три колеса и три двигателя...
Если же нужно согласовывать работу всех трёх двигателей во время поворота, да ещё и учитывать (датчиками) и вводить коррективы связанные с углом поворота дифференцированно по времени на скорость каждого из ведущих колёс, то тут не только логики тут и МК не хватит. Здесь надо понять простую вещь: в зависимости от угла поворота, ведущие двигателя должны дифференцированно изменить свою скорость вращения (вспомните назначение дифференциала в его класическом применении на автомобиле)

Нет мне этого не нужно, необходимо только установить двигатель в три положения (лево, середина, право) по двум сигнальным проводам от МК.

Kanoka » 25 май 2006, 20:47

Нет мне этого не нужно, необходимо только установить двигатель в три положения (лево, середина, право) по двум сигнальным проводам от МК.

А серва чем не подходит? Все так и будет, лево-середина-право.
Только без дифференциала на ведущих колесах такая система будет очень криво работать.

o_serg » 25 май 2006, 20:50

А серва чем не подходит? Все так и будет, лево-середина-право.

Дак я бы с удовольствием, но у меня нет ни средств ни возможности приобрести серву, я и говорю собрал из того что было
Или Вы предлагаете самому её собрать?

lebaon » 26 май 2006, 17:32

конечно :!: переменник на ацп и все дела :!:

o_serg » 26 май 2006, 17:35

конечно Exclamation переменник на ацп и все дела Exclamation

а подробнее можно пожалуйста

lebaon » 26 май 2006, 17:38

устройство серв знаешь :?:
соединяешь вал переменного резистора с выходным,
сигнал с переменника на ацп мк, движок шимом,
даже 8мега этим почти не загрузится :twisted:  :!:


cron
Rambler\'s Top100 Mail.ru counter