Sommario:

Wi-Servo: servomotori controllati da browser Wi-Fi (con Arduino + ESP8266): 5 passaggi
Wi-Servo: servomotori controllati da browser Wi-Fi (con Arduino + ESP8266): 5 passaggi

Video: Wi-Servo: servomotori controllati da browser Wi-Fi (con Arduino + ESP8266): 5 passaggi

Video: Wi-Servo: servomotori controllati da browser Wi-Fi (con Arduino + ESP8266): 5 passaggi
Video: Control 32 Servo over Wi-Fi using ESP32 and PCA9685 via desktop or mobile phone V5 2024, Novembre
Anonim
Image
Image
Elettronica
Elettronica

Questa istruzione mostra come controllare alcuni servomotori da remoto in una rete wi-fi, utilizzando un normale browser Internet (ad esempio Firefox). Questo può essere utilizzato in diverse applicazioni: giocattoli, robot, droni, panoramica/inclinazione della telecamera, ecc.

I motori sono stati collegati a un Arduino Uno, che collega la rete wi-fi tramite un modulo ESP-8266. L'interfaccia di controllo è stata progettata con HTML e jQuery.

Il tutorial di Miguel (https://allaboutee.com/2015/01/02/esp8266-arduino-led-control-from-webpage/), che mostra come accendere/spegnere i LED utilizzando ESP-8266, è servito come ispirazione per questo inviare.

La tecnica mostrata qui è utilizzata in uno dei miei progetti: "Robô da Alegria":

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

Potresti trovare di più su questo in uno dei seguenti link:

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

www.facebook.com/robodaalegria/

github.com/ferauche/RoboAlegria

Passaggio 1: elettronica

Elettronica
Elettronica
Elettronica
Elettronica

Per questo progetto avrai bisogno dei seguenti componenti:

  • Arduino Uno (acquista)
  • ESP8266 (acquista)
  • Protoshield (per una versione più compatta) o una normale breadboard (acquista)
  • Resistenza da 10 kohm (x3)
  • Alcuni ponticelli
  • Servomotore SG90 (x2) (acquista)
  • Un computer (per compilare e caricare il codice Arduino)

Non avrai bisogno di strumenti specifici per l'assemblaggio di questo progetto. Tutti i componenti li trovi online sul tuo e-commerce preferito. Il circuito è alimentato dalla porta USB (collegata a un computer o a un normale caricatore del telefono), ma puoi anche aggiungere un alimentatore CC esterno o una batteria collegata al jack di alimentazione di Arduino.

Passaggio 2: assemblaggio

Assemblea
Assemblea
Assemblea
Assemblea

Collegare tutti i componenti secondo lo schema. Avrai bisogno di alcuni ponticelli per collegare il modulo ESP-8266 e i servomotori. Potresti usare un protoshield (per un circuito più compatto), una normale breadboard o progettare il tuo scudo Arduino.

Collega il cavo USB alla scheda Arduino Uno e procedi al passaggio successivo.

Passaggio 3: codice Arduino

Installa l'ultimo IDE Arduino. In questo progetto è stata utilizzata la libreria servo.h per il controllo dei servo. Al fine di evitare conflitti tra il modulo wi-fi e la porta USB del computer durante il caricamento del codice, è stata utilizzata la libreria softserial. Non era necessaria alcuna libreria aggiuntiva per la comunicazione con il modulo ESP-8266. Controlla il baudrate del tuo ESP8266 e impostalo correttamente nel codice.

Alcuni servomotori iniziano a vibrare e producono strani rumori quando la loro posizione è vicina ai limiti (0 e 180 gradi). Per evitare ciò, l'angolo è stato limitato tra 10 e 170 gradi sia nel codice Arduino che nell'interfaccia di controllo (in seguito).

Sfortunatamente, la libreria servo.h e la libreria softserial.h usano lo stesso timer del microcontrollore. Ciò potrebbe causare jitter nei servi ogni volta che Arduino comunica con ESP-8266. Per evitare ciò, i servi vengono staccati dall'Arduino dopo ogni comando. Potresti anche collegare il modulo ai pin seriali standard. In questo caso, ricordati di scollegare il modulo prima di ogni caricamento.

Scarica il codice Arduino (wi-servo.ino) e sostituisci XXXXX con il SSID del router wifi e YYYYY con la password del router. Collega la scheda Arduino alla porta USB del tuo computer e carica il codice.

Passaggio 4: interfaccia

Interfaccia
Interfaccia

È stata progettata un'interfaccia html per il controllo dei servomotori. In questo esempio sono stati utilizzati due servi, ma è possibile aggiungerne altri all'Arduino Uno (ho testato fino a quattro motori).

Un modulo casella di testo viene utilizzato per inserire l'indirizzo IP del modulo ESP.

Scarica i file Wi-servo.html e jquere.js e salvali entrambi nella stessa cartella.

Passaggio 5: utilizzo

Image
Image
utilizzo
utilizzo
utilizzo
utilizzo

Quando Arduino verrà riavviato, proverà a connettere automaticamente la tua rete Wi-Fi. Usa il monitor seriale per verificare se la connessione ha avuto successo e per ottenere quale IP è stato assegnato al tuo ESP-8266 dal tuo router.

Aprire il file html in un browser Internet (Firefox).

Informa l'indirizzo IP del tuo ESP-8266 nella casella di testo e sarai pronto per partire. Selezionare l'angolo desiderato per ogni servo utilizzando i cursori. Il browser invierà automaticamente una richiesta all'Arduino quando rilasci il pulsante del mouse e muovi ogni servo.

Consigliato: