Spisu treści:

Wi-Servo: Serwomotory sterowane przez przeglądarkę Wi-Fi (z Arduino + ESP8266): 5 kroków
Wi-Servo: Serwomotory sterowane przez przeglądarkę Wi-Fi (z Arduino + ESP8266): 5 kroków

Wideo: Wi-Servo: Serwomotory sterowane przez przeglądarkę Wi-Fi (z Arduino + ESP8266): 5 kroków

Wideo: Wi-Servo: Serwomotory sterowane przez przeglądarkę Wi-Fi (z Arduino + ESP8266): 5 kroków
Wideo: Control 32 Servo over Wi-Fi using ESP32 and PCA9685 via desktop or mobile phone V5 2024, Lipiec
Anonim
Image
Image
Elektronika
Elektronika

Ta instrukcja pokazuje, jak zdalnie sterować niektórymi serwomotorami w sieci Wi-Fi za pomocą zwykłej przeglądarki internetowej (na przykład Firefox). Może to być używane w kilku zastosowaniach: zabawkach, robotach, dronach, obracaniu/pochylaniu kamery itp.

Silniki zostały podłączone do Arduino Uno, które łączy sieć WiFi poprzez moduł ESP-8266. Interfejs sterowania został zaprojektowany z wykorzystaniem HTML i jQuery.

Inspiracją do tego był samouczek Miguela (https://allaboutee.com/2015/01/02/esp8266-arduino-led-control-from-webpage/), który pokazuje, jak włączać/wyłączać diody LED za pomocą ESP-8266 Poczta.

Pokazana tutaj technika została wykorzystana w jednym z moich projektów: „Robô da Alegria”:

www.instructables.com/id/Joy-Robot-Rob%C3%B4-Da-Alegria-Open-Source-3D-Printed-A/

Więcej na ten temat możesz znaleźć w jednym z poniższych linków:

hackaday.io/project/12873-rob-da-alegria-joy-robot

www.facebook.com/robodaalegria/

github.com/ferauche/RoboAlegria

Krok 1: Elektronika

Elektronika
Elektronika
Elektronika
Elektronika

Do tego projektu potrzebne będą następujące komponenty:

  • Arduino Uno (kup)
  • ESP8266 (kup)
  • Protoshield (dla bardziej kompaktowej wersji) lub zwykła płytka stykowa (kup)
  • Rezystor 10 kΩ (x3)
  • Niektóre przewody połączeniowe
  • Serwomotor SG90 (x2) (kup)
  • Komputer (do kompilacji i wgrywania kodu Arduino)

Do montażu tego projektu nie będziesz potrzebować specjalnych narzędzi. Wszystkie komponenty znajdziesz online w swoim ulubionym sklepie e-commerce. Układ zasilany jest przez port USB (podłączony do komputera lub zwykłej ładowarki telefonu), ale można też dodać zewnętrzny zasilacz DC lub baterię podłączoną do gniazda zasilania Arduino.

Krok 2: Montaż

montaż
montaż
montaż
montaż

Połącz wszystkie komponenty zgodnie ze schematem. Do połączenia modułu ESP-8266 i serwomotorów potrzebne będą zworki. Możesz użyć protoshield (dla bardziej kompaktowego obwodu), zwykłej płytki stykowej lub zaprojektować własny ekran Arduino.

Podłącz kabel USB do płytki Arduino Uno i przejdź do następnego kroku.

Krok 3: Kod Arduino

Zainstaluj najnowsze środowisko Arduino IDE. W tym projekcie do sterowania serwomechanizmami wykorzystano bibliotekę servo.h. W celu uniknięcia konfliktu pomiędzy modułem WiFi a portem USB komputera podczas wgrywania kodu zastosowano bibliotekę softserial. Do komunikacji z modułem ESP-8266 nie była potrzebna dodatkowa biblioteka. Sprawdź szybkość transmisji swojego ESP8266 i ustaw ją poprawnie w kodzie.

Niektóre serwomotory zaczynają drgać i wydawać dziwne dźwięki, gdy ich pozycja zbliża się do limitów (0 i 180 stopni). Aby tego uniknąć, kąt został ograniczony między 10 a 170 stopni zarówno w kodzie Arduino, jak i w interfejsie sterowania (później).

Niestety biblioteki servo.h i softserial.h używają tego samego timera mikrokontrolera. Może to powodować jitter w serwach za każdym razem, gdy Arduino komunikuje się z ESP-8266. Aby tego uniknąć, serwa są odłączane od Arduino po każdym poleceniu. Możesz również podłączyć moduł do standardowych pinów szeregowych. W takim przypadku pamiętaj o odłączeniu modułu przed każdym wgraniem.

Pobierz kod Arduino (wi-servo.ino) i zastąp XXXXX identyfikatorem SSID routera Wi-Fi i YYYYY hasłem routera. Podłącz płytkę Arduino do portu USB komputera i prześlij kod.

Krok 4: Interfejs

Berło
Berło

Do sterowania serwomotorami zaprojektowano interfejs html. W tym przykładzie zastosowano dwa serwa, ale do Arduino Uno można dodać więcej (testowałem do czterech silników).

Do wprowadzenia adresu IP modułu ESP służy formularz pola tekstowego.

Pobierz pliki Wi-servo.html i jquere.js i zapisz je w tym samym folderze.

Krok 5: Użycie

Image
Image
Stosowanie
Stosowanie
Stosowanie
Stosowanie

Po ponownym uruchomieniu Arduino spróbuje automatycznie połączyć się z siecią Wi-Fi. Użyj monitora szeregowego, aby sprawdzić, czy połączenie powiodło się i uzyskać, który adres IP został przypisany do Twojego ESP-8266 przez router.

Otwórz plik html w przeglądarce internetowej (Firefox).

Podaj adres IP swojego ESP-8266 w polu tekstowym, a będziesz gotowy do pracy. Wybierz żądany kąt dla każdego serwomechanizmu za pomocą suwaków. Przeglądarka automatycznie wyśle żądanie do Arduino po zwolnieniu przycisku myszy i przesunięciu każdego serwa.

Zalecana: