- „Blynk App“ konfigūravimo veiksmai:
- Reikalingi komponentai:
- Grandinės paaiškinimas:
- Darbinis paaiškinimas:
- Programavimo paaiškinimas:
Yra daugybė robotų tipų, pradedant paprastais, tokiais kaip žaislinis automobilis, ir pažengusiais, pavyzdžiui, pramoniniais robotais. Mes jau apėmėme daugelio tipų robotus, naudojančius skirtingas technologijas, pažvelkite į juos:
- Linijos sekėjo robotas, naudojant 8051 mikrovaldiklį
- Linijos sekėjo robotas, naudojant „Arduino“
- DTMF valdomas robotas naudojant „Arduino“
- Mobilusis telefonas valdomas robotas, naudojant 8051 mikrovaldiklį
- Kompiuteriu valdomas robotas naudojant „Arduino“
- RF valdomas robotas
- Krašto išvengimas roboto naudojant 8051
- Akselerometro pagrindu valdomas robotas, valdomas rankomis, naudojant „Arduino“
- „Bluetooth“ valdomas žaislinis automobilis, naudojant „Arduino“
Dabar savo „Robotikos projektų“ skyriuje pridedame dar vieną robotą. Šį kartą mes padarysime „ Wi-Fi“ valdomą robotą naudodami „Arduino“ ir „Blynk App“. Šį „Arduino“ pagrįstą robotą galima valdyti belaidžiu būdu, naudojant bet kurį „Wi-Fi“ įgalintą „Android“ išmanųjį telefoną.
„ Wi-Fi“ valdomo roboto demonstravimui naudojome „Android Mobile App“ pavadinimu „ Blynk “. „Blynk“ yra labai suderinama programa su „Arduino“, skirta IOT projektui sukurti. Šią programą galima atsisiųsti iš „Google Play“ parduotuvės ir lengvai sukonfigūruoti.
„Blynk App“ konfigūravimo veiksmai:
1. Pirmiausia atsisiųskite jį iš „Google Play“ parduotuvės ir įdiekite į „Android“ mobilųjį telefoną.
2. Po to reikia susikurti sąskaitą. Galite naudoti dabartinę „Gmail“ paskyrą.
3. Dabar pasirinkite „Arduino Board“ ir nurodykite savo projekto pavadinimą.
4. Užrašykite Auth Token kodą arba tiesiog nusiųskite jį į savo el. Pašto abonementą, tada nukopijuokite ir įklijuokite „Arduino“ eskizą (Programos kodas).
5. Įveskite šį autentiško žetono kodą „Arduino“ eskize.
// „Blynk“ programoje turėtumėte gauti „Auth Token“. // Eikite į projekto nustatymus (veržlės piktograma). char auth = "caa17a11c0124d4083d0eaa995f45917";
6. Tada spustelėkite „Blynk“ programos mygtuką sukurti.
7. Dabar pasirinkite vairasvirtės valdiklį, spustelėkite vairasvirtę, sukonfigūruokite vairasvirtę (žiūrėkite vaizdo įrašą pabaigoje) ir paspauskite mygtuką Atgal.
8. Po to paspauskite mygtuką Leisti dešinėje ekrano viršuje.
Visas šis „Blynk“ programos naudojimo procesas buvo aiškiai paaiškintas vaizdo įraše, pateiktame pabaigoje.
Reikalingi komponentai:
- „Arduino UNO“
- ESP8266 „Wi-Fi“ modulis
- USB kabelis
- Jungiamieji laidai
- L293D
- Nuolatinės srovės varikliai
- Baterijos
- 10K POT (neprivaloma)
- Roboto važiuoklė plius ratas
- Riedučių ratukas
- „Android“ mobilusis telefonas
- „Blynk“ programa
Grandinės paaiškinimas:
„ Wi-Fi“ valdomo roboto grandinės schema pateikta žemiau. Mums labiausiai reikia „ Arduino“ ir ESP8266 „Wi-Fi“ modulio. ESP8266 „Vcc“ ir „GND“ kaiščiai yra tiesiogiai prijungti prie 3,3 V, „Arduino“ ir „CH_PD“ GND taip pat yra prijungti prie 3,3 V. ESP8266 Tx ir Rx kaiščiai yra tiesiogiai prijungti prie „Arduino“ 2 ir 3 kaiščių. Programinės įrangos nuoseklioji biblioteka naudojama nuosekliam ryšiui palaikyti „Arduino“ 2 ir 3 kontaktuose. Mes jau išsamiai aptarėme „Wi-Fi“ modulio ESP8266 sąsają su „Arduino“.
L293D Variklio vairuotojas IC naudojamas vairavimo nuolatinės srovės varikliai. Variklio vairuotojo IC įvesties kaiščiai yra tiesiogiai prijungti prie „Arduino“ 8, 9, 10 ir 11 kontaktų. Ir nuolatinės srovės varikliai yra prijungti prie jo išėjimo kaiščių. Čia grandinės ir nuolatinės srovės varikliams vairuoti naudojome 9 voltų bateriją.
Darbinis paaiškinimas:
Darbas su „Wi-Fi“ valdomu robotu yra labai lengvas, mums tereikia vilkti arba pastumti vairasvirtę ta kryptimi, kur norime perkelti robotą. Jei norėtume perkelti robotą į priekį, turime vilkti vairasvirtės „ratą“ pirmyn. Taip pat galime perkelti robotą kairėn, dešinėn ir atgal, vilkdami vairasvirtę atitinkama kryptimi. Kai tik atleisime vairasvirtę, ji grįš į centrą ir robotas sustos.
„Blynk App“ per „Wi-Fi“ terpę siunčia vertes iš dviejų ašių vairasvirties į „Arduino“. „Arduino“ gauna reikšmes, palygina jas su iš anksto nustatytomis reikšmėmis ir atitinkamai pajudina robotą ta kryptimi.
Programavimo paaiškinimas:
Programą beveik galima parengti „Arduino IDE“. Mums tiesiog reikia atsisiųsti „Blynk“ biblioteką, skirtą „Arduino“. Atlikęs keletą pakeitimų, vartotojas gali sukurti savo „Wi-Fi“ valdomą robotą.
Pirmiausia mes Įtraukėme visus reikalingus bibliotekas paleisti šį kodą į Arduino IDE, tada įvesti prieigos teisės raktą, iš Blynk app, į autorizacijos eilutę. Čia mes sujungiame „Wi-Fi“ nuoseklųjį kaištį su „Arduino“ programine įranga. Pasirinktas 2 kaištis kaip RX ir 3 kaip TX.
#define BLYNK_PRINT Serial // Komentuokite tai, kad išjungtumėte spaudinius ir sutaupytumėte vietos #include
Tada mes apibrėžėme variklių išvesties kaiščius (8,9,10,11) ir parašėme keletą krypties funkcijų, kad robotas judėtų tam tikra kryptimi: tuštuma pirmyn (), tuštuma atgal (), tuštuma dešinė () ir tuštuma kairė ()
Po to, sąrankos funkcijoje, mes inicijuojame visus reikalingus įrenginius, pvz., Nurodydami variklio kaiščių kryptį, pradedame nuoseklų ryšį, pateikdami „Wi-Fi“ vartotojo vardą ir slaptažodį.
void setup () {// Nustatykite konsolės perdavimo greitį Serial.begin (9600); vėlavimas (10); // Nustatykite ESP8266 perdavimo spartą // 9600 rekomenduojama programinei įrangai „Serial EspSerial.begin“ (9600); vėlavimas (10); Blynk.begin (auth, „wifi“, „vartotojo vardas“, „slaptažodis“); // „wifi“ vartotojo vardas ir slaptažodis pinMode (m11, OUTPUT); pinMode (m12, OUTPUT); pinMode (m21, OUTPUT); pinMode (m22, OUTPUT); }
Dabar mes patikrinome kai kurias roboto valdymo sąlygas. Čia mes pasirinkome virtualų 1 smeigtuką (V1), kad gautume įvestį iš „Blynk App“, kad galėtume valdyti robotą. Kadangi programoje naudojome „marge“ parinktį, tuo pačiu kaiščiu gausime x ir y ašių vertes.
BLYNK_WRITE (V1) {int x = param.asInt (); int y = param.asInt (); jei (y> 220) į priekį (); else if (y <35) atgal (); else if (x> 220) right (); else if (x <35) kairėje (); else Stop (); }
Pagaliau turime paleisti „ blynk“ funkciją cikle, paleisti sistemą.
tuštuma kilpa () {Blynk.run (); }