Wi-Servo:серводвигатели, управляемые через браузер Wi-Fi
Компоненты и расходные материалы
![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
![]() |
| × | 1 |
Приложения и онлайн-сервисы
![]() |
|
Об этом проекте
В этом проекте показано, как удаленно управлять некоторыми серводвигателями в сети Wi-Fi с помощью обычного интернет-браузера (например, Firefox). Это может быть использовано в нескольких приложениях:игрушки, роботы, дроны, панорамирование / наклон камеры и т. Д.
Двигатели были подключены к Arduino Uno, который соединяет сеть Wi-Fi через модуль ESP-8266. Интерфейс управления был разработан с использованием HTML и jQuery.
Вдохновением для этого послужил учебник Мигеля (http://allaboutee.com/2015/01/02/esp8266-arduino-led-control-from-webpage/), в котором показано, как включать / выключать светодиоды с помощью ESP-8266. сообщение.
Показанная здесь техника используется в одном из моих проектов:«Робо да Алегрия». Вы можете найти больше об этом по одной из следующих ссылок:
https://hackaday.io/project/12873-rob-da-alegria-joy-robot
https://www.facebook.com/robodaalegria/
https://github.com/ferauche/RoboAlegria
Шаг 1. Электроника



Для этого проекта вам потребуются следующие компоненты:
- Arduino Uno (купить)
- ESP8266 (купить)
- Protoshield (для более компактной версии) или обычный макет (купить)
- резистор 10 кОм (x3)
- Несколько перемычек
- Серводвигатель SG90 (2 шт.) (купить)
- Компьютер (для компиляции и загрузки кода Arduino)
Для сборки этого проекта вам не потребуются специальные инструменты. Все компоненты можно найти в Интернете в вашем любимом интернет-магазине. Схема питается от порта USB (подключенного к компьютеру или обычному зарядному устройству для телефона), но вы также можете добавить внешний источник постоянного тока или аккумулятор, подключенный к разъему питания Arduino.
Шаг 2. Сборка


Подключите все компоненты согласно схеме. Вам понадобятся перемычки для соединения модуля ESP-8266 и серводвигателей. Вы можете использовать прото-экран (для более компактной схемы), обычную макетную плату или разработать собственный щит Arduino.
Подключите USB-кабель к плате Arduino Uno и переходите к следующему шагу.
Шаг 3. Код Arduino
Установите последнюю версию Arduino IDE. В этом проекте для управления сервоприводами использовалась библиотека servo.h. Чтобы избежать конфликта между модулем Wi-Fi и USB-портом компьютера во время загрузки кода, softserial
библиотека использовалась. Никакой дополнительной библиотеки для связи с модулем ESP-8266 не потребовалось. Пожалуйста, проверьте скорость передачи вашего ESP8266 и правильно установите ее в коде.
Некоторые серводвигатели начинают дрожать и издают странные звуки, когда его положение близко к пределу (0 и 180 градусов). Чтобы избежать этого, угол был ограничен от 10 до 170 градусов как в коде Arduino, так и в интерфейсе управления (позже).
К сожалению, servo.h
библиотека и softserial.h
библиотеки используют тот же таймер микроконтроллера. Это может вызвать дрожание в сервоприводах всякий раз, когда Arduino обменивается данными с ESP-8266. Чтобы этого избежать, сервоприводы отключаются от Arduino после каждой команды. Вы также можете подключить модуль к стандартным последовательным контактам. В этом случае не забывайте отключать модуль перед каждой загрузкой.
Загрузите код Arduino ( wi-servo.ino
) и замените XXXXX на SSID вашего Wi-Fi роутера, а YYYYY на пароль роутера. Подключите плату Arduino к USB-порту компьютера и загрузите код.
Шаг 4. Интерфейс

Интерфейс HTML был разработан для управления серводвигателями. В этом примере использовались два сервопривода, но к Arduino Uno можно добавить больше (я тестировал до четырех двигателей).
Форма текстового поля используется для ввода IP-адреса модуля ESP. Загрузите Wi-servo.html
и jquery.js
файлы и сохраните их в одной папке.
Шаг 5. Использование



После перезапуска Arduino попытается автоматически подключиться к вашей сети Wi-Fi. Используйте Serial Monitor, чтобы проверить, было ли соединение успешным, и узнать, какой IP-адрес был назначен вашему ESP-8266 вашим маршрутизатором.
Откройте HTML-файл в интернет-браузере (Firefox).
Сообщите IP-адрес вашего ESP-8266 в текстовом поле, и вы будете готовы к работе. Выберите желаемый угол для каждого сервопривода с помощью ползунков. Браузер автоматически отправит запрос в Arduino, когда вы отпустите кнопку мыши и переместите каждый сервопривод.
Код
Github
https://github.com/ferauche/RoboAlegriahttps://github.com/ferauche/RoboAlegriaСхема

Производственный процесс
- Робот Raspberry Pi, управляемый через Bluetooth
- WebServerBlink с использованием Arduino Uno WiFi
- Радиоуправляемая машина с джойстиком
- Простой калькулятор UNO
- Роботизированная рука, управляемая нунчук (с Arduino)
- Робот, управляемый речью
- Постоянство видения
- Робот-пианино, управляемый Arduino:PiBot
- Свет с сенсорным управлением с использованием Arduino
- USB-трекпад, управляемый Arduino