- Pași pentru configurarea aplicației Blynk:
- Componente necesare:
- Explicația circuitului:
- Explicație de lucru:
- Explicație de programare:
Există multe tipuri de roboți, de la cele simple, cum ar fi o mașină de jucărie, la cele avansate, cum ar fi roboții industriali. Am acoperit deja multe tipuri de roboți folosind diferite tehnologii, aruncați o privire asupra lor:
- Line Follower Robot folosind microcontrolerul 8051
- Line Follower Robot folosind Arduino
- Robot controlat DTMF folosind Arduino
- Robot controlat de telefonul mobil folosind microcontrolerul 8051
- Robot controlat de computer folosind Arduino
- Robot controlat RF
- Edge Evitarea Robotului Utilizarea 8051
- Robot controlat prin gesturi de mână bazat pe accelerometru folosind Arduino
- Mașină de jucărie controlată prin Bluetooth folosind Arduino
Și acum adăugăm încă un robot în secțiunea „Proiecte de robotică”, de data aceasta vom face un robot controlat prin Wi-Fi folosind aplicația Arduino și Blynk. Acest robot bazat pe Arduino poate fi controlat fără fir folosind orice telefon inteligent Android cu Wi-Fi.
Pentru demonstrarea robotului controlat Wi-Fi, am folosit o aplicație mobilă Android numită „ Blynk ”. Blynk este o aplicație foarte compatibilă cu Arduino, pentru a crea un proiect bazat pe IoT. Această aplicație poate fi descărcată din Magazinul Google Play și poate fi configurată cu ușurință.
Pași pentru configurarea aplicației Blynk:
1. Mai întâi descărcați-l din Google Play Store și instalați-l pe telefonul mobil Android.
2. După aceasta, este necesar să creați un cont. Puteți utiliza contul dvs. Gmail curent.
3. Acum selectați Arduino Board și dați un nume proiectului dumneavoastră.
4. Notați codul token de autentificare sau pur și simplu trimiteți-l prin e-mail la contul dvs. de e-mail și apoi copiați și lipiți în schița Arduino (codul programului).
5. Introduceți acest cod de autentificare în schița Arduino.
// Ar trebui să obțineți Auth Token în aplicația Blynk. // Accesați Setările proiectului (pictograma piuliță). char auth = "caa17a11c0124d4083d0eaa995f45917";
6. Apoi faceți clic pe butonul Creare din aplicația Blynk.
7. Acum selectați widgetul Joystick, faceți clic pe Joystick, configurați joystick-ul (consultați videoclipul de la final) și apăsați butonul Înapoi.
8. După ce apăsați butonul Redare din partea dreaptă sus a ecranului.
Tot acest proces, de utilizare a aplicației Blynk, a fost clar explicat în Video, oferit în cele din urmă.
Componente necesare:
- Arduino UNO
- Modul Wi-Fi ESP8266
- Cablu USB
- Conectarea firelor
- L293D
- DC Motors
- Baterii
- 10K POT (opțional)
- Șasiu robot plus roată
- Rola cu role
- Telefon mobil Android
- Aplicația Blynk
Explicația circuitului:
Diagrama circuitului robotului controlat prin Wi-Fi este prezentată mai jos. Avem nevoie în principal de un modul Wi-Fi Arduino și ESP8266. Pinii Vcc și GND ai ESP8266 sunt conectați direct la 3.3V și GND din Arduino, iar CH_PD este conectat și cu 3.3V. Pinii Rx și Tx ai ESP8266 sunt conectați direct la pinii 2 și 3 din Arduino. Software Serial Library este utilizat pentru a permite comunicarea serială pe pinii 2 și 3 din Arduino. Am acoperit deja în detaliu interfațarea modulului Wi-Fi ESP8266 către Arduino.
Un IC driver driver L293D este utilizat pentru acționarea motoarelor de curent continuu. Pinii de intrare ai driverului de motor IC sunt conectați direct la pinii 8, 9, 10 și 11 din Arduino. Și motoarele de curent continuu sunt conectate la pinii de ieșire. Aici am folosit baterie de 9 volți pentru acționarea motoarelor de circuit și de curent continuu.
Explicație de lucru:
Lucrul robotului controlat prin Wi-Fi este foarte ușor, trebuie doar să tragem sau să glisăm joystick-ul în direcția în care dorim să mutăm robotul. Ca și cum dorim să mutăm robotul în direcția înainte, atunci trebuie să tragem „cercul” joystick-ului în direcția înainte. De asemenea, putem deplasa robotul în direcția stânga, dreapta și înapoi, glisând joystick-ul în direcția respectivă. Acum, de îndată ce lansăm joystick-ul, acesta va reveni în centru și Robotul se oprește.
Aplicația Blynk trimite valori de la joystick-ul cu două axe către Arduino, prin intermediul mediului Wi-Fi. Arduino primește valorile, le compară cu valorile predefinite și mută robotul în consecință în acea direcție.
Explicație de programare:
Programul este aproape gata disponibil în Arduino IDE. Trebuie doar să descărcăm Biblioteca Blynk pentru Arduino. Și după ce a făcut unele modificări, utilizatorul își poate crea propriul robot controlat prin Wi-Fi.
Mai întâi am inclus toate bibliotecile necesare pentru a rula acest cod în Arduino IDE și apoi am introdus Auth Token, din aplicația Blynk, în șirul de autentificare . Aici conectăm pinul serial Wi-Fi cu software-ul serial Arduino. Pinul selectat 2 ca RX și 3 ca TX.
#define BLYNK_PRINT Serial // Comentează acest lucru pentru a dezactiva tipăririle și a economisi spațiu #include
Apoi am definit pinii de ieșire (8,9,10,11) pentru motoare și am scris câteva funcții de direcție pentru a muta robotul în direcția specială: gol înainte (), gol înapoi (), gol dreapta () și gol stânga ()
După aceasta, în funcția de configurare inițializăm toate dispozitivele necesare, cum ar fi indicarea direcției pinilor motorului, începem comunicarea în serie, oferind numele de utilizator și parola Wi-Fi.
void setup () {// Setați rata de transmisie a consolei Serial.begin (9600); întârziere (10); // Setați rata baud ESP8266 // 9600 este recomandat pentru Software Serial EspSerial.begin (9600); întârziere (10); Blynk.begin (autentificare, wifi, „nume de utilizator”, „parolă”); // nume utilizator și parolă wifi pinMode (m11, OUTPUT); pinMode (m12, OUTPUT); pinMode (m21, OUTPUT); pinMode (m22, OUTPUT); }
Acum am verificat câteva condiții pentru controlul robotului. Aici am selectat pinul virtual 1 (V1) pentru preluarea intrării din aplicația Blynk pentru a controla robotul. Deoarece am folosit opțiunea marge în aplicație, vom obține valorile axelor x și y la același pin.
BLYNK_WRITE (V1) {int x = param.asInt (); int y = param.asInt (); dacă (y> 220) înainte (); altfel if (y <35) backward (); else if (x> 220) right (); altfel dacă (x <35) left (); altfel Stop (); }
În cele din urmă trebuie să rulăm funcția blynk în buclă, pentru a rula sistemul.
bucla void () {Blynk.run (); }