Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja izmjena: 2025-01-13 06:57
Ovo uputstvo pokazuje kako daljinski upravljati nekim servo motorima u wi-fi mreži, koristeći običan internetski preglednik (Firefox, na primjer). Ovo se može koristiti u nekoliko aplikacija: igračke, roboti, bespilotne letjelice, okretanje/naginjanje kamere itd.
Motori su bili spojeni na Arduino Uno, koji povezuje wi-fi mrežu putem ESP-8266 modula. Kontrolno sučelje je dizajnirano s HTML i jQuery.
Miguelov vodič (https://allaboutee.com/2015/01/02/esp8266-arduino-led-control-from-webpage/), koji pokazuje kako uključiti/isključiti LED diode pomoću ESP-8266, poslužio je kao inspiracija za ovo pošta.
Ovdje prikazana tehnika koristi se u jednom od mojih projekata: "Robô da Alegria":
www.instructables.com/id/Joy-Robot-Rob%C3%B4-Da-Alegria-Open-Source-3D-Printed-A/
Više o ovome mogli biste pronaći na jednom od sljedećih linkova:
hackaday.io/project/12873-rob-da-alegria-joy-robot
www.facebook.com/robodaalegria/
github.com/ferauche/RoboAlegria
Korak 1: Elektronika
Za ovaj projekt trebat će vam sljedeće komponente:
- Arduino Uno (kupiti)
- ESP8266 (kupiti)
- Protoshield (za kompaktniju verziju) ili obična ploča (kupite)
- 10 komski otpornik (x3)
- Neke kratkospojne žice
- SG90 servo motor (x2) (kupiti)
- Računalo (za sastavljanje i postavljanje Arduino koda)
Za sastavljanje ovog projekta nećete trebati posebne alate. Sve komponente možete pronaći na mreži u vašoj omiljenoj trgovini e-trgovine. Krug se napaja putem USB priključka (spojenog na računalo ili obični punjač za telefon), ali možete dodati i vanjsko istosmjerno napajanje ili bateriju povezanu na Arduino utičnicu za napajanje.
Korak 2: Montaža
Spojite sve komponente prema shemi. Za povezivanje ESP-8266 modula i servomotora trebat će vam neke kratkospojne žice. Možete koristiti proto štit (za kompaktnije krugove), običnu ploču ili dizajnirati Arduino štit.
Priključite USB kabel na Arduino Uno ploču i prijeđite na sljedeći korak.
Korak 3: Arduino kod
Instalirajte najnoviji Arduino IDE. U ovom projektu servo.h biblioteka je korištena za kontrolu servo pogona. Kako bi se izbjegao sukob između wi-fi modula i USB porta računara tokom učitavanja koda, korištena je softserial biblioteka. Za komunikaciju s modulom ESP-8266 nije bila potrebna dodatna biblioteka. Molimo provjerite brzinu prijenosa vašeg ESP8266 i ispravno je postavite u kôd.
Neki servo motori počinju drhtati i stvarati čudne zvukove kada je njihov položaj blizu granica (0 i 180 stepeni). Da bi se to izbjeglo, kut je bio ograničen između 10 i 170 stupnjeva i u Arduino kodu i u upravljačkom sučelju (kasnije).
Nažalost, biblioteka servo.h i softserial.h koriste isti tajmer mikrokontrolera. To može uzrokovati podrhtavanje servo servera svaki put kada Arduino komunicira s ESP-8266. Da bi se to izbjeglo, servomotori se odvajaju od Arduina nakon svake naredbe. Modul možete povezati i sa standardnim serijskim pinovima. U tom slučaju ne zaboravite isključiti modul prije svakog učitavanja.
Preuzmite Arduino kôd (wi-servo.ino) i zamijenite XXXXX svojim SSID-om WiFi rutera, a GGGGG lozinkom usmjerivača. Spojite Arduino ploču na USB priključak računara i prenesite kôd.
Korak 4: Interfejs
Za upravljanje servo motorima dizajnirano je html sučelje. U ovom primjeru korištena su dva serva, ali se više može dodati Arduino Uno (testirao sam do četiri motora).
Obrazac za tekstualno polje koristi se za unos IP adrese ESP modula.
Preuzmite datoteke Wi-servo.html i jquere.js i spremite oboje u istu mapu.
Korak 5: Upotreba
Kada se Arduino ponovo pokrene, pokušat će automatski povezati vašu wi-fi mrežu. Pomoću serijskog monitora provjerite je li veza bila uspješna i kako biste saznali koji IP je vaš usmjerivač dodijelio vašem ESP-8266.
Otvorite html datoteku u internetskom pregledniku (Firefox).
U okvir za tekst unesite IP adresu svog ESP-8266 i bit ćete spremni za rad. Odaberite kut za svaki servo pomoću klizača. Preglednik će automatski poslati zahtjev Arduinu kada otpustite tipku miša i pomakne svaki servo.