воскресенье, 2 сентября 2018 г.

Робот манипулятор гусеничный на ардуино

На основе Ардуино и модулей для Ардуино можно сделать множество интересных вещей и конечно одними из самых интересных являются роботы. Как правило роботов делают копируя какие либо уже существующие в природе вещи например руки. Создать полноценную копию человека способную выполнять всё тоже самое что и человек очень трудно но передвижная рука на гусенечной платформе - это уже что то способное приносить пользу и сделать такую штуку стоит попытаться. На основе Ардуино сделать это будет не трудно. Ардуино можно использовать почти любое. Для изготовления руки понадобятся 4 сервомотора, две деревянные палочки от мороженного (или любые другие палочки для изготовления руки) + жестяная бвика и скрепка для изготовления захвата (или любые другие материалы для изготовления захвата). Простейшую гусеничную платформу можно сделать из двух моторредукторов, четырех шкивов и двух резинок. Можно также купить готовую платформу но это будет дороже. Для управления моторредукторами понадобиться драйвер двигателей например L293D. Для питания робота понадобятся батарейки или аккумуляторы. Для возможности управления этим роботом дистанционно и записи в него команд, понадобятся радиомодули. Для того чтобы радиоуправление нормально работало понадобяться два стабилизатора напряжения, один для радиомодуля на 3.3В, другой для силовой части робота т.е. для сервомоторов и драйвера моторредукторов. Теперь давайте рассмотрим схему электрическую:
Рисунок 1 - Схема робота манипулятора гусеничного 

Радиомодуль подключается к Ардуино по SPI, к выводам питания радиомодуля надо припаять конденсатор для нормальной работы. Стабилизатор напряжения силовой части лучше использоать импульсный т.к. линейный будет быстрее разряжать батарейки и при этом сильнее нагреваться. О том как сделать импульсный стабилизатор в статье Импульсный стабилизатор постоянного напряжения на MAX738 -такой стабилизатор хорошо подойдет для данного робота. Для радиомодуля можно использовать обычный линейный стабилизатор, например на LM317. Питание на Ардуино идет с батареек напрямую т.к. они подключены к выводу который идет на вход встроенного в Ардуино линейного стабилизатора (а точнее припаянного на Ардуино). Для управления роботом понадобиться пульт, давайте рассмотрим его схему:
Рисунок 2 - Схема пульта управления роботом манипулятором

4 потенциометра нужны для управления сервомоторами робота, сопротивления их желательно чтобы были побольше для экономии батареек. Большие сопротивления будут приводить к низкой помехоустойчивости но в данной схеме это не так важно если конечно пульт не будет эксплуатироваться в условиях с большими электромагнитными помехами. 100 килоОм должно быть достаточно для таких потенциометров, при этом потреблять они будут 5/(100000/4) = 0.0002 А = 0.2мА что очень экономно! Кнопки подойдут почти любые с нормальными контактами. Радиомодуль также надо запитать через стабилизатор и припаять конденсатор на выводы питания. Управлять платформой можно тремя кнопками, при желании можно добавить ещё одну. Две кнопки будут для записи положений руки робота и запуска выполнения последовательности действий.Теперь давайте рассмотрим скетч робота:
 В начале, как всегда, подключаются заголовочные файлы необходимых библиотек, потом инициализируются необходимые переменные и массивы. Имеется 4 массива в которые будут записываться состояния сервомоторов. Также есть массив с данными приходящими от пульта. В функции "setup" инициализируется радиомодуль, сервомоторы и порты ввода вывода. В основном цикле принимаются данные с пульта и запускается управление платформой, рукой, выполняется запись положений сервомоторов. Скетчь пульта:

В скетче пульта тоже подключаются заголовочные файлы необходимых библиотек, потом инициализируются необходимые переменные и массивы. В функции "setup" инициализируется радиомодуль и порты ввода вывода. В основном цикле считываются данные с кнопок и потенциометров и отправляются на приемник.
Скачать скетчи можно по ссылкам:
робот: https://yadi.sk/d/odRSho-z3amn8K
пульт: https://yadi.sk/d/yGmsHt3f3amnAq
Про данного робота можно посмотреть видео:

КАРТА БЛОГА (содержание)