Ничего не найдено :(
    В гостях у Самоделкина! » Электроника » Arduino » Сочлененная самоходная восьмиколесная платформа с дистанционным управлением

    Сочлененная самоходная восьмиколесная платформа с дистанционным управлением


    Здоровья и удачи вам, решившим потратить время на прочтение этого текста!

     

    Делал я тут недавно восьмиколесный вездехода а-ля «Луноход», вот такой:

     

     

    И в процессе творения шедевра появилось желание реализовать на этой базе модель с ломающейся или сочлененной рамой. Ну, что ж, «сказано, сделано, брошено в бой» и вот результат:

      

    Общий вид справа

    Общий вид слева.

     

    Общий вид сзади.

     

    Поворот влево.

     

    Поворот вправо.

      

    Конструкция движущего узла.

    Конструкция движущего узла представляет собой качающуюся тележку с двумя колесами, вращающий момент на которые передается от мотор-редуктора ТТ посредством зубчатой передачи. Таких узлов соответственно четыре – по два на каждую сторону модели. 



      

    Вид со снятым колесом и приводной звездочкой.               Вид со снятым мотор-редуктором и оптопарой.

     

    То же, уже в натуре:

     

    На фото видно – для предотвращения проскальзывания на каждое колесо натянуты резиновые покрышки из велосипедной камеры

    Для каждого двигателя предусмотрена обратная связь посредством оптопары и перфорированного диска. Перфорированные диски установлены на валах мотор-редукторов.

     

    Общая конструкция ходовой части.

    Рама модели состоит из двух подвижных относительно друг друга частей, соединенных шарниром. Этот шарнир так же является главным элементом рулевого механизма.

     

    Общий вид сверху.

     

    Общий вид снизу.


     

     Вид на поворотный механизм (снята пластина с батарейным отсеком, рулевой сервопривод оставлен).     Схема крепления шестерни на валу рулевого сервопривода.

    Поворот полурам осуществляется посредством сервопривода SG-90M (на рисунке обведен красным) через зубчатую передачу. Сервопривод установлен снизу на задней полураме, на съемной пластине главного шарнира. Эта пластина также является единым целым с батарейным отсеком. Способ крепления шестерни на валу сервопривода понятен из представленного рисунка. В качестве промежуточного элемента был использована стандартная качалка №3 из комплекта поставки привода SG-90M, с которой были срезаны лишние выступающие части.

    Вид снизу спереди                                                                                    Вид снизу сзади

     Вид на поворотный механизм (снята пластина с батарейным отсеком).

     

    Система управления.

    Управление моделью осуществляется посредством пульта от PS2. Так как в конструкции ходовой части у нас появился поворотный элемент, управление машинкой осуществляется несколько необычно.

    В свободном состоянии джойстики пульта находятся в среднем положении, двигатели выключены, угол поворота рамы 0°(прямо). Для управления задействованы координаты «Y» джойстиков.

    Координаты преобразуются следующим образом:

    1. если джойстики отклонены разнонаправлено относительно среднего положения (один вверх, другой вниз) – для джойстика, находящегося в положении «ниже среднего», значение координаты устанавливается как для среднего положения (т.е. установлен приоритет для верхнего положения),
    2. если джойстики отклонены одинаково (оба вверх или оба вниз) - координаты джойстиков передаются «как есть». 

    Сделано это для того, чтобы исключить работу двигателей «в раздрай» и упростить вычисление угла поворота рамы.

    Угол поворота рамы определяется разностью положений ручек джойстиков пульта. Поворот осуществляется в сторону от джойстика, чье положение ближе к крайнему. Угол поворота рамы тем больше, чем больше разница положений джойстиков и максимален (≈36°), когда один джойстик находится в крайнем положении, а другой в среднем.

    При отклонении джойстика вверх, двигатели соответствующей стороны включаются на передний, а при отклонении вниз - на задний ход. Частота вращения определяется положением джойстика: при крайнем положении обороты максимальны, при положении близком к среднему – минимальны (естественно, с учетом выше упомянутого приоритета верхнего положения). Таким образом облегчается поворот модели (имитируется работа дифференциала).

     

    Подразумеваются два режима управления моделью: ручной и автоматический.

    При ручном режиме управление осуществляется посредством пульта.

    Автоматический режим подразумевает, что машинка едет прямолинейно до обнаружения препятствия, при обнаружении препятствия порядок действий такой:

    1. машинка фиксированное время откатывается прямо назад,
    2. по случайному закону выбирается направление и время последующего движения,
    3. машинка откатывается назад с поворотом в выбранном направлении и в течение выбранного времени,
    4. возобновляется движение вперед.

    Для обнаружения препятствий, в передней части корпуса находится сервопривод, на оси которого закреплен кронштейн с УЗ-дальномером HC-04, который во время движения в автоматическом режиме поворачивается туда-сюда в пределах угла ≈120°.

     

    Принципиальная схема:

     

    Питание модели осуществляется двумя аккумуляторами 18650.

    В двигателях применена обратная связь через оптопары U4, U6,U13,U14 и перфорированные диски на валах. Понятное усложнение с лихвой окупается более стабильным управлением движками. Управление моторчиками осуществляется посредством ШИМ, для чего применены модули U5 и U12 с микросхемами 2х-канальных Н-ключей L298N и отдельный контроллер U2 “Arduino Mini”. Выделить отдельный контроллер для управления движками пришлось из-за того, что для обратной связи были задействованы аппаратные прерывания, что конфликтовало с библиотекой управления сервоприводами.

    Основное управление реализовано на контроллере U3 “Arduino Nano”. Этот контроллер осуществляет связь с приемником от PS2 U1, управляет сервоприводами U8 – U10, реализует логику автоматического режима движения и через канал I2C управляет контроллером двигателей.

    Сервопривод U15 - привод рулевого механизма, который через зубчатую передачу поворачивает полурамы модели.

    Сервоприводы U9 и U10 предназначены для управления положением камеры. Т.к. камера не устанавливалась эти сервоприводы также можно не устанавливать.

    Резисторы R1 и R3 – подтяжка сигнальных линий I2C.

    Резистивные делители R2, R6 и R4, R5 обязательны, если у вас приемник PS2 с питанием 3,3В, Если приемник с питанием 5В, делители не нужны, и все выводы приемника можно соединять с контроллером напрямую.

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

     

    Вид модели со снятыми кабинами слева (установлены все элементы системы управления).

     

    Вид модели со снятыми кабинами справа (установлены все элементы системы управления).

     

    Вид на батарейный отсек (крышка снята):

     

    Видео ручной режим:


    Видео автоматический режим:

     

    Файлы моделей для 3D-печати, прошивки, схемы здесь


    Все детали модели распечатаны на принтере “Tronxy-D01” из ПЛА-пластика.

     

    Ну, вот на этом, собственно говоря, и все. Удачи!

    Становитесь автором сайта, публикуйте собственные статьи, описания самоделок с оплатой за текст. Подробнее здесь.

    Тяжелый погрузчик из Lego Technik и Arduino с Bluetooth

    0
    Идея
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    0
    Описание
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    0
    Исполнение
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    Итоговая оценка: 0.0 из 10 (голосов: 0 / История оценок)

    Добавить комментарий

    3 комментария
    deryaba #92997 Автор
    sergeyp,


    Всем привет!

    Когда я делал свой предыдущий а-ля "Луноход" (вот почему восемь, а не четыре yes ), появилась настойчивая мысль сделать на этой базе агрегат с поворотной рамой, - вот я эту мысль и реализовал. Впендюрить туда поворотный шарнир с управлением от сервопривода и так было не просто, а если бы я еще задурился шарниром перекоса, то наверное машинка делалась бы еще полгода, а это уже риск незавершенки. Короче я свой результат получил, и он приятно греет душу - думал будет хуже.

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

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

    Вот собственно говоря и все. 

    sergeyp #92993

    У ломающейся рамы должен быть и механизм перекоса. Только по плоской поверхности, зачем тогда восемь? Достаточно и четырёх. Сзади должен быть датчик, включаемый при движении задним ходом. Виден неточный алгоритм управления ходовыми двигателями, из-за чего колесные пары "задираются" вверх...  smile 

    Jerry #92992

    Интересная конструкция. Интересно было почитать. 

    В автоматическом режиме походу не успевает отследить препятствие, ещё и задом бьётся, там нет датчика smile 

    Привет, Гость!


    Зарегистрируйтесь

    Или войдите на сайт, если уже зарегистрированы...

    Войти

    Добавьте самоделку

    Добавьте тему

    Онлайн чат

    Последние комментарии

    Все комментарии