Оглавление:

Четвероногий робот ESP8266 WIFI, управляемый точкой доступа: 15 шагов (с изображениями)
Четвероногий робот ESP8266 WIFI, управляемый точкой доступа: 15 шагов (с изображениями)

Видео: Четвероногий робот ESP8266 WIFI, управляемый точкой доступа: 15 шагов (с изображениями)

Видео: Четвероногий робот ESP8266 WIFI, управляемый точкой доступа: 15 шагов (с изображениями)
Видео: КИТАЙЦЫ СНОВА УДИВЛЯЮТ 100 ТОВАРОВ С ALIEXPRESS 2024, Июль
Anonim
Image
Image

Это руководство по созданию робота с 12 степенями свободы или четырехногого (четвероногого) робота с использованием сервопривода SG90 с сервоприводом, которым можно управлять с помощью веб-сервера WIFI через браузер смартфона.

Общая стоимость этого проекта составляет около 55 долларов США (для электронной части и пластиковой рамы робота).

Шаг 1: подготовьте каркас

Электронные компоненты (Wemos D1 Mini)
Электронные компоненты (Wemos D1 Mini)

Все 3D-объекты можно бесплатно скачать с сайтов www.myminifactory.com или www.thingiverse.com.

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

Список печатной части:

1x базовый корпус

1x крышка

1x держатель батареи

4x бедра (тип A и B)

4x Thight (тип A и B)

4x лапка (тип A и B)

4x Щит

12x втулка + 12x 2 мм винт

Шаг 2: Сборка рамы робота

следуйте пошаговым видео выше, чтобы собрать раму, винт предназначен для отверстия размером 2 мм.

Шаг 3. Электронные компоненты (Wemos D1 Mini)

Image
Image

На рынке существует множество вариантов NodeMCU, которые в основном имеют ту же функциональность, для этого проекта я выбрал Wemos D1 Mini.

Эта часть будет служить веб-серверами для нашего четвероногого в качестве точки доступа.

Что вам нужно, так это просто подключиться к AP Quadruped и контролировать все движения вашего робота, и, возможно, для будущего проекта он будет отображать все необходимые вам датчики …

D1 mini - это мини-плата WIFI на базе ESP-8266EX. и он имеет 11 цифровых входных / выходных контактов, все контакты имеют поддержку прерывания / pwm / I2C / однопроводного подключения (кроме D0) 1 аналоговый вход (максимальный вход 3,3 В) подключение Micro USB

Как начать:

  1. Установите для Arduino 1.6.7 с веб-сайта для Arduino.
  2. Запустите для Arduino и откройте окно настроек.
  3. в поле Additional Boards Manager URLs. Вы можете добавить несколько URL-адресов, разделяя их запятыми.
  4. Откройте Инструменты → Плата: xxx → Диспетчер плат и установите esp8266 от сообщества ESP8266 (и не забудьте выбрать свою плату ESP8266 в меню Инструменты> Плата после установки).

Для более подробной информации вы можете посмотреть видео выше.

Нажмите здесь для поиска в Алиэкспресс

Для этого проекта все, что вам нужно, это подключить этот пин:

  1. Вывод NodeMCU RX подключается к выводу Arduino Nano TX
  2. Вывод NodeMCU TX подключается к выводу Arduino Nano RX
  3. Вывод NodeMCU G подключается к DC-DC mini 5v Stepdown (-) Выходной вывод
  4. Вывод NodeMCU5V подключается к выходу DC-DC mini 5v Stepdown (+).

PS: Для программирования этой платы вы должны отсоединить все контакты, подключенные к Arduino, и понижать DC-DC, иначе вы получите сообщение об ошибке …

Шаг 4: электронные детали (Arduino Nano)

Электронные компоненты (Arduino Nano)
Электронные компоненты (Arduino Nano)

То же самое с NodeMCU, для платы arduino вы можете использовать любую плату, которая подходит для вас, например, Arduino Pro Mini, Arduino Nano или что-то еще.

Но для этого проекта я выбрал Arduino Nano, потому что мне не нужно много контактов, которые я использовал, он маленький и не требует FTDI для его программирования.

нажмите здесь для поиска в Aliexpress

Для этого проекта я просто использую:

  1. Вывод Arduino nano RX подключается к выводу NodeMCU TX
  2. Контакт Arduino nano TX подключается к контакту NodeMCU RX
  3. Контакт Ardiono nano A4 подключается к контакту SDA PCA9685
  4. Контакт Arduino nano A5 подключается к контакту SCL PCA9685
  5. Контакт Arduino nano GND подключается к выходу DC-DC mini 5v Stepdown (-) Выходной контакт
  6. Вывод Arduino nano 5V подключается к выходу DC-DC mini 5v Stepdown (+).

см. схему выше для более подробной информации

PS: Для программирования этой платы вы должны отсоединить все контакты, подключенные к NodeMCU, и понижать DC-DC, иначе вы получите сообщение об ошибке …

Шаг 5: Электронные детали (Micro Servo Tower Pro 9g)

Электронные компоненты (Tower Pro 9g Micro Servo)
Электронные компоненты (Tower Pro 9g Micro Servo)

Это самый популярный мини сервопривод. Весит всего 9 грамм, а крутящий момент составляет 1,5 кг / см. Довольно сильный относительно своего размера. Подходит для роботов балочного типа.

PS: этот сервопривод может вращаться только на 180 градусов

Ключевая особенность:

• Полупрозрачный корпус.

• Легкий

• Меньше шума Технические характеристики:

• Размеры: 22,6 x 21,8 x 11,4 мм

• Длина соединительного провода: 150 мм.

• Рабочая скорость (4,8 В без нагрузки): 0,12 с / 60 градусов

• Крутящий момент (4,8 В): 1,98 кг / см

• Диапазон температур: от 30 до 60 ° C (от -22 до 140 ℉)

• Ширина зоны нечувствительности: 4 мкс

• Рабочее напряжение: 3,5 - 8,4 Вольт

Нажмите здесь, чтобы найти сервопривод SG90 на Aliexpress

Шаг 6: Электронные компоненты (16-канальный 12-разрядный драйвер ШИМ / сервопривода - интерфейс I2C - PCA9685 для Arduino)

Электронные компоненты (16-канальный 12-битный драйвер ШИМ / сервопривода - интерфейс I2C - PCA9685 для Arduino)
Электронные компоненты (16-канальный 12-битный драйвер ШИМ / сервопривода - интерфейс I2C - PCA9685 для Arduino)

Хотите сделать шагающего робота? но использование только микроконтроллера имеет ограниченное количество выходов PWM, и вы обнаружите, что у вас их заканчиваются! Только не с 16-канальным 12-битным драйвером PWM / Servo от Adafruit - интерфейс I2C. Благодаря этому разъему драйвера ШИМ и сервопривода вы можете управлять 16 автономными выходами ШИМ с помощью всего двух контактов! Необходимо использовать более 16 выходов PWM? Без проблем. Соедините вместе до 62 этих красавцев, чтобы получить до 992 выходов PWM.

Эта плата / микросхема использует 7-битный адрес I2C в диапазоне 0x60-0x80, выбираемый с помощью перемычек Клеммная колодка для входа питания (или вы можете использовать 0,1-дюймовые переходы сбоку) Защита от обратной полярности на входе клеммной колодки Зеленый светодиод исправного питания 3 штыревые разъемы группами по 4, так что вы можете подключить 16 сервоприводов одновременно (разъемы сервоприводов немного шире 0,1 дюйма, поэтому вы можете ставить только 4 рядом друг с другом на 0,1-дюймовом заголовке. конденсатор на линии V + (на случай, если он вам нужен), резисторы серии 220 Ом на всех выходных линиях для их защиты и упрощения управления светодиодами. Перемычки припоя для 6 контактов выбора адреса. Управляемый i2c драйвер ШИМ со встроенными часами. В отличие от семейства TLC5940, вам не нужно постоянно посылать ему сигнал, связывающий ваш микроконтроллер, он полностью автономен! Он совместим с 5 В, что означает, что вы можете управлять им с микроконтроллера 3,3 В и при этом безопасно управлять выходами до 6 В (это подходит, когда вы хотите контролировать белый или синий L ED с 3,4+ прямым напряжением) 6 контактов выбора адреса, чтобы вы могли подключить до 62 из них на одной шине i2c, всего 992 выхода - это много сервоприводов или светодиодов Регулируемая частота ШИМ примерно до 1,6 кГц 12-бит разрешение для каждого выхода - для сервоприводов это означает разрешение около 4 мксек при частоте обновления 60 Гц. Настраиваемый двухтактный выход или выход с открытым стоком. Вывод включения выхода для быстрого отключения всех выходов.

нажмите здесь для поиска в Aliexpress

В этом проекте нам просто нужно 12 каналов для всех ножек (по 3 канала на ножку), подключите этот вывод PCA9685 к Arduino Nano:

  1. PCA9685 VCC к DC-DC mini 5v Stepdown (+) Выходной вывод
  2. PCA9685 GND к DC-DC mini 5v Stepdown (-) Выходной контакт
  3. PCA9685 Servo (PWM) power V + to UBEC (+) Выходной контакт
  4. PCA9685 Питание сервопривода (ШИМ) GND к UBEC (-) Выходной контакт
  5. Вывод PCA9685 SDA на вывод Arduino nano A4
  6. Вывод SCL PCA9685 на вывод Arduino nano A5
  7. PCA9685 CH0 к передней правой бедре, пожалуйста, сопоставьте цвет кабеля с цветом разъема PCA9685 (желтый, красный, коричневый / черный)
  8. PCA9685 CH1 к передней правой ноге, пожалуйста, сопоставьте цвет кабеля с цветом разъема PCA9685 (желтый, красный, коричневый / черный)
  9. PCA9685 CH2 к переднему правому бедру, пожалуйста, сопоставьте цвет кабеля с цветом разъема PCA9685 (желтый, красный, коричневый / черный)
  10. PCA9685 CH4 к задней правой бедре, пожалуйста, сопоставьте цвет кабеля с цветом разъема PCA9685 (желтый, красный, коричневый / черный)
  11. PCA9685 CH5 к задней правой ноге, пожалуйста, сопоставьте цвет кабеля с цветом разъема PCA9685 (желтый, красный, коричневый / черный)
  12. PCA9685 CH6 к заднему правому бедру, пожалуйста, сопоставьте цвет кабеля с цветом разъема PCA9685 (желтый, красный, коричневый / черный)
  13. PCA9685 CH8 к передней левой бедре, пожалуйста, сопоставьте цвет кабеля с цветом разъема PCA9685 (желтый, красный, коричневый / черный)
  14. PCA9685 CH9 к передней левой ножке, пожалуйста, сопоставьте цвет кабеля с цветом разъема PCA9685 (желтый, красный, коричневый / черный)
  15. PCA9685 CH10 к переднему левому бедру, пожалуйста, сопоставьте цвет кабеля с цветом разъема PCA9685 (желтый, красный, коричневый / черный)
  16. PCA9685 CH12 к задней левой бедре, пожалуйста, сопоставьте цвет кабеля с цветом разъема PCA9685 (желтый, красный, коричневый / черный)
  17. PCA9685 CH13 к задней левой ноге, пожалуйста, сопоставьте цвет кабеля с цветом разъема PCA9685 (желтый, красный, коричневый / черный)
  18. PCA9685 CH14 к заднему левому бедру, пожалуйста, сопоставьте цвет кабеля с цветом разъема PCA9685 (желтый, красный, коричневый / черный)

PS: Некоторые PCA9685 не имеют разъема с цветовым кодом, поэтому убедитесь, что желтый кабель от сервопривода SG90 идет к контакту данных PWM, красный кабель идет к контакту V +, а черный / коричневый идет к контакту GND

Шаг 7: Подключение ШИМ к серво выводу

Подключение ШИМ к серво выводу
Подключение ШИМ к серво выводу
Подключение ШИМ к серво выводу
Подключение ШИМ к серво выводу

Щелкните и увеличьте изображение выше, чтобы увидеть отображение контактов между PCA9685 и сервоприводами.

PS: Вы используете только 12 каналов из 16 каналов для этого проекта, так что у вас все еще осталось 4 канала для расширения, например, установка сервопривода радара или установка на него какого-нибудь бластерного оружия Nerf… Просто введите дополнительный код в arduino и NodeMCU

Шаг 8: электронные детали (UBEC)

Электронные компоненты (UBEC)
Электронные компоненты (UBEC)

3A-UBEC - это импульсный регулятор постоянного и переменного тока, который поставляется с литиевым аккумулятором на 2-6 ячеек (или NiMh / NiCd аккумулятором на 5-18 ячеек) и выдает стабильное безопасное напряжение для вашего приемника, гироскопа и сервоприводов. Он очень подходит для вертолета RC. По сравнению с линейным режимом UBEC, общий КПД импульсного UBEC выше.

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

нажмите здесь для поиска в Aliexpress

Контактное соединение:

  1. UBEC (+) RED Выходной вывод для питания сервопривода (PWM) PCA9685 V +
  2. UBEC (-) ЧЕРНЫЙ Выходной вывод к заземлению питания сервопривода (PWM) PCA9685
  3. UBEC (+) КРАСНЫЙ Вход к контакту аккумулятора (+)
  4. UBEC (-) ЧЕРНЫЙ вход на контакт переключателя

Шаг 9: Электронные компоненты (DC-DC Mini Stepdown)

Электронные компоненты (DC-DC Mini Stepdown)
Электронные компоненты (DC-DC Mini Stepdown)
Электронные компоненты (DC-DC Mini Stepdown)
Электронные компоненты (DC-DC Mini Stepdown)

Он почти выполняет ту же функцию с UBEC, но это всего лишь простой понижающий модуль DC-DC. У него есть потенциометр, с помощью которого мы можем регулировать выход V (+) от 1 В до 17 В, и он не имеет фильтрации.

нажмите здесь, чтобы найти его на Aliexpress

PS: так что помните, перед использованием отрегулируйте выход V (+) на выход 5 В с помощью вольтметра постоянного тока

Контактное соединение:

  1. Мини понижающий (+) IN к (+) АКБ
  2. Мини-шаг вниз (-) IN к контакту переключателя
  3. Мини-понижающий (+) выход параллельно выводам NodeMCU (5 В), Arduino nano (5 В) и PCA9685 (VCC)
  4. Mini stepdown (-) OUT параллельно выводам NodeMCU (G), Arduino nano (GND) и PCA9685 (GND)

Шаг 10: Другая электронная часть

Другая электронная часть
Другая электронная часть
Другая электронная часть
Другая электронная часть
Другая электронная часть
Другая электронная часть

Что вам нужно, это около (20 кабелей или меньше) перемычка между гнездом и гнездом (поиск по перемычкам на Aliexpress)

Самоблокирующийся нажимной переключатель или вы можете использовать другой тип переключателя (поиск самоблокирующегося переключателя Aliexpress)

и пара разъема JST от аккумулятора к коммутатору и понижающему UBEC / DC-DC (поиск JST Connector на Aliexpress)

Шаг 11: Источник питания

Источник питания
Источник питания
Источник питания
Источник питания

Есть много источников питания, которые можно использовать, я предпочитаю перезаряжаемый липо 3S аккумулятор. Он имеет ток 11, 1 вольт и емкость 500 мАч или более (не слишком много, чтобы он мог быть легче).

Но для использования 3S липо требуется зарядное устройство, и это недешево, поэтому… вы можете использовать другой источник питания, например батарею AAA, вы можете использовать батарею AAA серийного 6, чтобы она могла производить источник питания около 9 В, и я думаю, что этого достаточно для этого робота.

Нажмите здесь, чтобы найти аккумулятор Lipo 3S на Aliexpress

Нажмите здесь для поиска Lipo Charger

Нажмите здесь, чтобы найти держатель батареи 6xAAA на Aliexpress

Шаг 12: Схема проводки

Схема проводов
Схема проводов

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

PS: вам нужна пайка в какой-то части и поместите резиновую термоусадочную головку, чтобы запечатать ее для соединения между выключателем питания, UBEC и понижающим DC-DC.

Шаг 13: кодирование и начальная поза

Кодирование и начальная поза
Кодирование и начальная поза

Подключите arduino nano с помощью кабеля mini-USB к USB-порту (но не забудьте отключить все контакты от wemos D1 mini и DC-DC stepdown), откройте «spider_driver_open_v3_ESP8266_Rev280918.ino» и прошейте его на Arduino nano, но не делайте этого. Не забудьте выбрать плату Arduino для Arduino nano и выбрать правильный порт.

Затем подключите Wemos D1 mini к компьютеру с помощью micro USB на USB (также не забудьте отключить все контакты от понижающего DC-DC и Arduino nano). Затем откройте «QuadrupetV2_310319_fix_connection_issue.ino» и прошейте его на плату, но перед этим выберите правильную плату в предпочтении и выберите правильный порт (подробнее, вернитесь к шагу 3)

После того, как все закончится, вы можете повторно прикрепить все контакты между arduino nano, wemos D1 mini и DC-DC stepdown и включить робота, чтобы отрегулировать правильную начальную позу.

НАЧАЛЬНОЕ ПОЛОЖЕНИЕ (см. Рисунок выше) отрегулируйте все ноги как можно ближе к рисунку выше.

После включения робота, если положение ног не совпадает с изображением выше, все, что вам нужно, это:

  1. Отвинтите сервопривод и отсоедините сервопривод от сервопривода.
  2. поверните ногу достаточно близко в исходной позе
  3. снова прикрепите рог сервопривода и снова запустите его
  4. сделай это для всех пропущенных матчей

PS:

  1. QuadrupetV2_310419_fix_connection_issue.ino уже исправил некоторые проблемы, такие как затруднение подключения (Wi-Fi) и сбой рендеринга веб-страницы, для тех, кто запускает старую программу до 31-3-2019, загрузите ее снова выше
  2. необходимо установить дополнительную библиотеку (скопируйте ее в папку библиотеки)

    • github.com/wimleers/flexitimer2
    • github.com/adafruit/Adafruit-PWM-Servo-Dri…
    • github.com/kroimon/Arduino-SerialCommand

Шаг 14: Управление роботом

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

Поскольку этот робот стал точкой доступа WIFI, все, что вам нужно, это:

  1. Включение робота
  2. Откройте настройку Wi-Fi на вашем смартфоне
  3. Подключитесь к точке доступа SpiderRobo с паролем «12345678».
  4. Откройте веб-браузер на своем смартфоне и введите

Теперь ваш робот готов принять вашу команду …

Шаг 15: Для тех, у кого проблемы с открытием веб-страницы или подключением к точке доступа

У МЕНЯ ИСПРАВИТЬ ЭТУ ПРОБЛЕМУ, ПОЖАЛУЙСТА, ЗАГРУЗИТЕ ЕЕ СНОВА, С ШАГА 13 ВЫШЕ (исправление @ 31-4-2019)

некоторые из мини-клонов Wemos D1 имеют плохой или неисправный ESP, что вызывает: - Трудно подключиться к точке доступа.

- Не удалось открыть страницу

- Загрузка не завершена

Для более подробной информации посмотрите мое видео выше…

Рекомендуемые: