Четвероногий робот под управлением Arduino - Своими руками
Своими руками

Четвероногий робот под управлением Arduino

Четвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoМастер-самодельщик увлекается робототехникой и у него уже есть проекты по созданию двуногих роботов. На этот раз он решил сделать робота четвероногого.

Основная цель при создании этого проекта заключалась в том, чтобы сделать систему как можно более надежной. На устройстве будут отрабатываться различные движения, и мастер хотел быть уверен, что механическая часть не поломается. Второстепенная цель заключалась в том, чтобы сделать четвероногого робота относительно недорогим, используя легкодоступные детали и 3D-печать.

Инструменты и материалы:
-Arduino Uno;
-Серводвигатель MG995 — 12 шт;-Плата расширения для Ардуино;-Перемычки;-Модуль MPU6050;-Ультразвуковой датчик;
-Подшипники шариковые 8х19х7мм — 12 шт.;
-Гайки и болты M4;
-3D-принтер;
-Акрил 4 мм;
-Лазерный резак; Четвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoШаг первый: проектирование
Робот был разработан с помощью программы Fusion 360. Проектирование он начал с того, что импортировал серводвигатели и построил вокруг них ноги и корпус. Разработал кронштейны для серводвигателя, которые обеспечивают вторую точку поворота, диаметрально противоположную валу серводвигателя. Наличие двух валов на обоих концах двигателя придает конструкции устойчивость и исключает перекос, который может возникнуть, если на них прикладывается большая нагрузка.
Другой целью при разработке устройства было сделать модель как можно более компактной, чтобы максимально использовать крутящий момент, обеспечиваемый серводвигателями.

Мастер разработал корпус робота, на который будет устанавливаться Arduino и другие электронные компоненты. Также были оставлены дополнительные точки крепления на верхней панели, чтобы сделать проект масштабируемым для дальнейших улучшений. В дальнейшем можно будет добавить различные датчики, такие как датчик расстояния, камеру и т.д.Четвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoШаг второй: 3D-печать
Большинство деталей напечатаны на 3D-принтере, за исключением нескольких, вырезанных лазером из 4-миллиметрового акрила. Печать была сделана с заполнением 40%, 2 периметра, сопло 0,4 мм и высота слоя 0,1 мм. Ниже можно найти полный список деталей и файлов для печати, а также файлы деталей для резки лазером.

В дальнейшем, дабы избежать путаницы, детали будут называться так, как их назвал мастер.
Детали, напечатанные на 3D-принтере:
кронштейн сервопривода бедра x 2
зеркало* с сервоприводом бедра x 2
кронштейн сервопривода колена x 2
Зеркало кронштейна сервопривода колена x 2
держатель подшипника x 2
зеркало держателя подшипника x 2
нога x 4
звено сервопривода x 4
несущее звено (деталь, крепящаяся к валу сервопривода) x 4
держатель arduino x 1
держатель датчика расстояния x 1
L-опора x 4
втулка подшипника x 4
проставка для сервопривода x 24
Детали, вырезанные лазером:
панель держателя сервопривода x 2
верхняя панель x 1
*Под «зеркало» подразумевается противоположная деталь.
Файлы можно скачать ниже.
stls.rarlaser cut parts.pdfЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoШаг третий: сборка
После того, как детали напечатаны можно приступать к сборке.
Сначала мастер устанавливает подшипники. Перед установкой подшипников посадочные места нужно отшлифовать. Затем прикручивает звенья сервопривода.Четвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoПодготавливает кронштейны. Устанавливает и фиксирует гайками болты М4. Устанавливает подшипники и прикручивает звенья.Четвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoТеперь нужно собрать ноги робота. Прикрепляет сервоприводы к кронштейнам с помощью 4 болтов и гаек M4. Обязательно нужно совместить ось сервопривода с выступающим болтом на другой стороне.

Затем соединяет сервопривод бедра с сервоприводом колена. На противоположной стороне устанавливает тягу с подшипниками.Четвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoТеперь нужно собрать корпус.
Закрепляет сервоприводы на панели держателя сервопривода. С помощью кронштейнов прикручивает панели к верхней панели.Четвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoДальше нужно ноги закрепить на корпусе.
Устанавливает ноги на сервоприводы корпуса. Устанавливает ось и фиксирует ее. Закрепляет держатели подшипников на верхней панели с помощью двух гаек и болтов M4.Четвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoШаг четвертый: электромонтаж
Мастер советует для подключения сервоприводов использовать плату расширения v5 поскольку он имеет встроенный порт внешнего источника питания.

Тот что был у мастера 4 версии. Он не имеет порта для питания и питание идет от Ардуино. Такого питание недостаточно для серводвигателей. Чтобы решить эту проблему мастер переделал плату, чтобы можно было подключить внешний источник.

Подключения сигнальных контактов 12 серводвигателей указаны в таблице ниже.
Hip1Servo — это сервопривод, закрепленный на корпусе. Hip2Servo — это сервопривод, закрепленный на ноге. KneeServo — это сервопривод, закрепленный на «колене» ноги.
Нога 1 (передняя левая):
Hip1Servo >> 2
Hip2Servo >> 3
KneeServo >> 4
Нога 2 (передняя правая):
Hip1Servo >> 5
Hip2Servo >> 6
KneeServo >> 7
Нога 3 (задняя левая):
Hip1Servo >> 8
Hip2Servo >> 9
KneeServo >> 10
Нога 4 (задняя правая):
Hip1Servo >> 11
Hip2Servo >> 12
KneeServo >> 13Четвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoШаг пятый: настройки
Перед программированием движений, нужно установить на «ноль» каждый сервопривод.
Чтобы избежать повреждений робота, нужно снять крепления (звенья) сервопривода. Затем загрузить код.
initialize.ino
С помощью этого кода, каждый из сервоприводов устанавливается под углом 90 градусов. После калибровки устанавливает звенья на место. При этом, ноги должны быть совершенно прямыми, а сервопривод, прикрепленный к корпусу, должен быть перпендикулярен верхней панели робота.

Из-за особенностей конструкции некоторые ноги могут не стать точно прямо. Решением проблемы является корректировка массива zeroPositions, находящегося в 4-й строке кода. Каждое число представляет собой нулевую позицию соответствующего сервопривода. Нужно немного изменить эти значения, пока ноги не станут идеально прямо.
Авторские настройки следующие: int zeroPositions [12] = {93, 102, 85, 83, 90, 85, 92, 82, 85, 90, 85, 90};Четвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoШаг шестой: программирование
Перед программированием мастер рассчитывает траектории движения подвижных частей.Четвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoПосле завершения подключения нужно запрограммировать робота. Перед установкой кода нужно изменит 4-ю строку прилагаемого кода на значения, которые были установлены на этапе настройки. После загрузки программы робот должен начать ходить. Если некоторые из суставов перевернуты, то нужно просто изменить соответствующее значение направления в массиве направлений в строке 5 (если оно равно 1, нужно прописать -1, а если оно -1, прописать 1).
Walking.inoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoВсе готово.Четвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  ArduinoЧетвероногий робот под управлением  Arduino

SitesReady

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

Follow us

Don't be shy, get in touch. We love meeting interesting people and making new friends.