roboforum.ru

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

Простейший лайнтрейсер "Муравей"

Простейший лайнтрейсер "Муравей"

Сообщение Radist » 29 окт 2010, 22:24

В журнале "Радио" за сентябрь этого года мое внимание привлекла статья "Робот Муравей". Там было описано как сделать лайнтрейсера на одном датчике, и как сделать механику для него. Идея мне понравилась, но из статьи я взял только идею. Схему робота можно посмотреть в журнале, а вообще он есть и в инете: http://www.servodroid.ru/publ/blog_droi ... /20-1-0-21. Далее опишу что было у прототипа и что у меня.

Первое различие - это механика. Рекомендованных моторов на 9 В у меня нет. Взял движки от сидирома. Колеса прототипа - магнитофонные ролики, вал прижимается к ним. Вы видели движки от сидиромов - их к роликам не прижмешь, поэтому я сделал два простейших редуктора: на колесе шестерня 64 зуба, на валу мотора шестерня 8 зубов. В качестве подруливающего колеса у прототипа две скобки из скрепок, у меня приклеен один светодиод - на скольжении. Далее датчик. У прототипа это светодиод и фототранзистор, у меня - отражательный оптрон ktir0711s, нравятся мне они. Питание: у прототипа крона 9В + линейный стабилизатор на 3,3В для питания управляющей логики, у меня литийполимерный, одна банка + повышающий стабилизатор до 5В. Управляющий автомат: у прототипа RS - триггер на 4 инверторах, есть регулятор яркости светодиода, сигнал фототранзистора идет на инвертор, у меня - компаратор с подстройкой порога и два инвертора на моторы, чтобы работали в противофазе. Регулятор скорости: у прототипа генератор с подстраиваемой скважностью, у меня - последовательно с моторами резистор. Еще у меня на втором компараторе собрана схема контроля разряда аккумулятора.

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

Датчик один, робот едет по краю линии. Если он пересечет линию - он будет крутиться на колесе. И хотя при этом он будет пересекать линию - он на нее не вернется, поскольку время пересечение крайне мало и второй мотор не может успеть разогнаться для этого. Когда робот едет по прямой - он постоянно переключает моторы, поэтому они не могут разогнаться. Но когда он доезжает до поворота - одно колесо крутится длительное время, набирает инерцию и пересекает линию, что приводит к потери линии. Способ решения проблемы простой - снижать скорость, на трассе радиус поворотов должен быть большим. Может зря я отказался от шим регулятора скорости? Мне не трудно переделать роботу основную плату, я сделал редукторы со встроенными драйверами, открутить пару винтов и отстыковать разъем - и половина механики от робота отключена. Есть ли смысл? Или моя механика заведомо не позволит роботу ездить лучше? Жду предложений и советов.

ЗЫ. Именно из-за этого робота я несколько отложил свои наработки по микролайнтрейсеру - надеялся успеть с этим роботом на оффлайн соревнования, они до 31 ноября. Теперь то я опоздал на поезд, ну да не корову проиграл :)
Последний раз редактировалось Radist 17 ноя 2010, 09:28, всего редактировалось 1 раз.
Аватара пользователя
Radist
 
Сообщения: 2254
Зарегистрирован: 01 июл 2009, 08:59
Откуда: Екатеринбург
прог. языки: асемблер AVR

Re: Простейший лайнтрейсер "Муравей"

Сообщение Radist » 30 окт 2010, 15:29

Просмотров много, а советов нет :( . Задам конкретный вопрос. Есть ли разница между постоянным низким напряжением и пропущенным через фильтр более высоковольтным шимом, если интеграл шима равен этому постоянному напряжению? Как то сложно получилось спросить, поясню на примере. Есть постоянное напряжение 5 В, идет на мотор, есть шим с амплитудой 10 В, скважность два, он идет на другой мотор (частота несколько десятков кГц). Для моторов эти воздействия идентичны? Моторы естественно одинаковы. Будет ли ездить робот лучше? Является ли мотор фильтром, только выделяющим постоянную составляющую, или шим может привести к дополнительным, приятным для меня эффектам?
Аватара пользователя
Radist
 
Сообщения: 2254
Зарегистрирован: 01 июл 2009, 08:59
Откуда: Екатеринбург
прог. языки: асемблер AVR

Re: Простейший лайнтрейсер "Муравей"

Сообщение =DeaD= » 30 окт 2010, 15:31

Разница думаю есть, но для ваших целей скорее всего не очень существенна.
PS: Мотор фильтром не является, скорее индуктивностью :pardon:
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Простейший лайнтрейсер "Муравей"

Сообщение Radist » 30 окт 2010, 15:34

С электрической точки зрения да, но с точки зрения его скорости вращения от приложенного средневыпрямленного напряжения?
Аватара пользователя
Radist
 
Сообщения: 2254
Зарегистрирован: 01 июл 2009, 08:59
Откуда: Екатеринбург
прог. языки: асемблер AVR

Re: Простейший лайнтрейсер "Муравей"

Сообщение =DeaD= » 30 окт 2010, 15:37

С ходу не могу сказать, возможно будет иметь значение сопротивление на валу двигателя. То есть теоретически там, где постоянное не потянет, ШИМ за счет импульсности сможет провернуть вал.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Простейший лайнтрейсер "Муравей"

Сообщение Radist » 30 окт 2010, 16:01

Но импульс шима очень короткий - дает ли это эффект? Мне бы такой ответ: делайте шим регулятор и напряжение побольше на него - излишек шимом уберете. Или такой: пустая трата времени и сил. Аргументом для меня будет ваш опыт.
Аватара пользователя
Radist
 
Сообщения: 2254
Зарегистрирован: 01 июл 2009, 08:59
Откуда: Екатеринбург
прог. языки: асемблер AVR

Re: Простейший лайнтрейсер "Муравей"

Сообщение =DeaD= » 30 окт 2010, 17:11

Прикольно, условий задачи нету, а вам ответ подавай :)
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Простейший лайнтрейсер "Муравей"

Сообщение Michael_K » 30 окт 2010, 17:40

Radist писал(а):Является ли мотор фильтром, только выделяющим постоянную составляющую, или шим может привести к дополнительным, приятным для меня эффектам?


Является, да. Приятных эффектов не ждите :)

Вообще, ШИМ - он бывает разный - тут где-то в теме про мост давали ссылку на статью, где расписаны основные режимы работы моста - они разные (там картинки кое-где спорные, но суть верная).

wiki/H-%D0%BC%D0%BE%D1%81%D1%82 - вот она.
Аватара пользователя
Michael_K
 
Сообщения: 6028
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: Простейший лайнтрейсер "Муравей"

Сообщение Radist » 30 окт 2010, 20:05

Спасибо за статью, интересная, раньше я ее не читал. В ней есть много такого, чего я не знал. Но у меня драйверы не мосты, на одном транзисторе, резисторе и диоде, поэтому для меня нет различных шимов. Немного формализую задачу, которую хочу решить в уме, до проверки в железе, хотя я считал что уже описал ее.

Мой мотор-редуктор обладает сильной инерцией. Если его включать на короткое время - он едет медленно засчет того, что моторчики очень часто переключаются (когда робот едет по прямой). Он не успевает разогнаться, поэтому край линии не теряет. При повороте один моторчик работает большее время, чем при езде по прямой, поэтому успевает разогнаться и по инерции перелетает через линию. Вернуться назад уже нет сил у второго моторчика, поскольку за время перехода через линию он только лишь успевает включиться и чуток повернуться. Робот начинает вращаться на месте, чуток смещаясь вперед. Есть 3 способа не допустить этого:
1 - уменьшить сильно скорость
2 - увеличить радиус поворотов
3 - увеличить ширину линии.

Я же ищу четвертый способ, чтобы сделать редукторы менее инерционными. Как вариант - использование шим. У меня есть предположение, что может быть применение шима поможет. Поясню на примере, почему я так думаю. Пусть период и скважность шима постоянны (а мне именно так и надо, потому что особенностью робота является отсутствие мозга). Пусть за время импульса колесо проезжает пару миллиметров, а за время паузы полностью останавливается. Такой робот никогда не потеряет линию - мы убили инерцию. Или я не прав? Но такой шим - очень медленный. Над таким тихоходом все будут смеяться, придется его переименовывать из муравья в улитку, а на соревнования с ним не соваться. Поэтому то я и спросил - можно ли уменьшить инерционность моторчика от сидирома, нагруженного на понижающий в 8 раз редуктор шимом?
Аватара пользователя
Radist
 
Сообщения: 2254
Зарегистрирован: 01 июл 2009, 08:59
Откуда: Екатеринбург
прог. языки: асемблер AVR

Re: Простейший лайнтрейсер "Муравей"

Сообщение =DeaD= » 30 окт 2010, 20:07

Можно еще попробовать вынести датчики вперед или как-то по другому их переместить относительно моторов.
Еще можно попробовать разнести колёса чуть шире, тогда поворачивать он будет медленней, а по линии гнать также быстро.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Простейший лайнтрейсер "Муравей"

Сообщение Radist » 30 окт 2010, 20:22

Согласен по обоим пунктам. Но если вы смотрели на страничку прототипа - там он маленький, и линию не теряет. Мой вариант уже больше прототипа по длине и ширине (но думаю что мой легче). Да и с точки зрения эстетики - мне нравится делать минималистические поделки, чтобы на них смотреть было приятно. И мне кажется что увеличение габаритов робота (вперед и вбок) - эквивалентно уменьшению диаметра колеса (относительное уменьшение). У прототипа колеса как раз маленькие. А у меня шестерня диаметром 36 мм, поэтому колесо 44 мм диаметром. А делать редуктор из трех шестеренок - так я слаб в механике. Да и мне не очень нравится механика, больше электроника и программирование.
Аватара пользователя
Radist
 
Сообщения: 2254
Зарегистрирован: 01 июл 2009, 08:59
Откуда: Екатеринбург
прог. языки: асемблер AVR

Re: Простейший лайнтрейсер "Муравей"

Сообщение =DeaD= » 30 окт 2010, 20:29

Так сделайте редукторы как у оригинала?
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Простейший лайнтрейсер "Муравей"

Сообщение Radist » 30 окт 2010, 20:57

Ролики и кнопки я достал, а моторчики - нет. Слепил из чего было. Моторчики от сидирома имеют больший диаметр, чем у прототипа, поэтому до роликов не достают.
Аватара пользователя
Radist
 
Сообщения: 2254
Зарегистрирован: 01 июл 2009, 08:59
Откуда: Екатеринбург
прог. языки: асемблер AVR

Re: Простейший лайнтрейсер "Муравей"

Сообщение Radist » 31 окт 2010, 19:51

Эксперименты с подбором резистора ни к чему хорошему не привели. У меня есть 3 трассы: одна - урезанная 1-34, вторая - для оффлайн соревнований, третья испытательная, нарисованная от руки. Сперва испытывал на ней. Оказалось, что на неровной трассе робот едет хорошо, приходится снижать скорость. Но как только я перешел на ровную трассу - робот встал. Частота переключений стала большой, поэтому робот гудит моторчиками, а сдвинуться не может. В общем придется делать шим регулятор. Колеса также расставлю шире. Вопросы у меня такие:
1 - какую лучше сделать частоту шима?
2 - каким напряжением можно питать моторчики от сидирома?
3 - есть ли смысл делать напряжение питания для шима выше 5 В?
Аватара пользователя
Radist
 
Сообщения: 2254
Зарегистрирован: 01 июл 2009, 08:59
Откуда: Екатеринбург
прог. языки: асемблер AVR

Re: Простейший лайнтрейсер "Муравей"

Сообщение crystalbit » 31 окт 2010, 20:29

Radist писал(а):2 - каким напряжением можно питать моторчики от сидирома?

у меня есть два моторчика от cd-рома. один номинально 5,9В, другой (от движения лазера) на 11,9В
Аватара пользователя
crystalbit
 
Сообщения: 48
Зарегистрирован: 23 окт 2010, 00:07
Откуда: СПб
прог. языки: delphi, php, C
ФИО: Дмитрий

След.

Вернуться в Line Tracer

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7