Turinys:

„Arduino“tanko automobilio 6 pamoka-„Bluetooth“ir „Wifi“karšto taško valdymas: 4 žingsniai
„Arduino“tanko automobilio 6 pamoka-„Bluetooth“ir „Wifi“karšto taško valdymas: 4 žingsniai

Video: „Arduino“tanko automobilio 6 pamoka-„Bluetooth“ir „Wifi“karšto taško valdymas: 4 žingsniai

Video: „Arduino“tanko automobilio 6 pamoka-„Bluetooth“ir „Wifi“karšto taško valdymas: 4 žingsniai
Video: DWIN Плавные стрелки - приборной панели АВТО 2024, Lapkritis
Anonim
„Arduino“tanko automobilio 6 pamoka-„Bluetooth“ir „Wifi“karšto taško valdymas
„Arduino“tanko automobilio 6 pamoka-„Bluetooth“ir „Wifi“karšto taško valdymas

Šioje pamokoje mes mokomės valdyti „Robot“automobilio mobiliąją programėlę per „WiFi“ir „Bluetooth“., mes tiesiog naudojame esp8266 „Wi -Fi“espacijos plokštę kaip išplėtimo plokštę ir valdome cisterną per IR imtuvą ankstesnėse pamokose. Šioje pamokoje mes išmoksime naudotis telefonu, norint prijungti karštą tašką iš ekspozicijos lentos ir valdyti automobilio judėjimą per telefono programą. Tuo pačiu metu taip pat galite įdėti „Bluetooth“į išplėtimo plokštę ir valdyti automobilio judėjimą per „Bluetooth“telefoną.

Išsamios pamokos:

Pirkite JAV: Amazon.com

1 žingsnis: kaip tai veikia

Kaip tai veikia
Kaip tai veikia

Iš ESP8266 plokštės yra karštoji vieta, vadinama „DoitWIFI_Config“

darbo laiko ir galėtumėte prisijungti prie karšto taško per telefono „Wi -Fi“be slaptažodžio. Kai ESP8266 plokštės jungiklį perjungiate į „ON“, pranešimą iš arduino ir esp8266 galima keistis nuosekliais prievadais. Valdymo komanda gali būti siunčiama į ESP8266 per telefono programą, o paskui siunčiama į arduino per serijinius prievadus tarp arduino ir ESP8266 plokštės.

Pasukdami ESP8266 plokštės jungiklį į padėtį „1“ir „2“, atjunkite nuoseklius prievadus tarp arduino ir ESP8266 plokštės. Jei įdėsite „Bluetooth“modulį į esp8266 plokštę ir prijungsite jį per telefono „Bluetooth“, pranešimą iš arduino ir esp8266 galima keistis nuosekliais prievadais per „Bluetooth“modulį.

Sužinokite daugiau apie „ESP8266 Wifi“skydą, apsilankykite čia:

2 veiksmas: programinės įrangos diegimas

1 veiksmas: įdiekite naujausią „Arduino IDE“(jei turite „Arduino IDE“versiją po 1.1.16, praleiskite šį veiksmą)

Atsisiųskite „Arduino IDE“iš https://www.arduino.cc/en/Main/Software?setlang=e…, tada įdiekite programinę įrangą.

2 veiksmas: atsisiųskite 7 pamokos pavyzdinį kodą iš https://www.kookye.com/download/car/tank_robot_les…. Išpakuokite atsisiuntimo ZIP failą tank_robot_lesson7.zip, pamatysite aplanką pavadinimu tank_robot_lesson7.

3 veiksmas: prijunkite UNO R3 plokštę prie kompiuterio USB kabeliu, atidarykite „Arduino IDE“-> spustelėkite failą -> spustelėkite „Atidaryti“-> pasirinkite kodą „tank_robot_lesson7.ino“aplanke tank_robot_lesson7, įkelkite kodą į arduino.

4 žingsnis: Pasirinkite savo projektui tinkamą plokštę ir prievadą, įkelkite eskizą į lentą.

5 veiksmas: atsisiųskite programą ir įdiekite ją savo telefone: https://kookye.com/download/car/car.apkPastaba: Ši programa gali tik palaikyti „Android“ir mes siūlome programos šaltinio kodą (https://kookye.com /download/car/BTcar-master.zip). Galite peržiūrėti ir suasmeninti kodą pagal savo poreikius.

3 žingsnis: supraskite kodą

Ši programa naudojama valdymo komandai gauti iš telefono programos.

// „WiFi“/„Bluetooth“per nuoseklųjį valdiklį

void do_Uart_Tick ()

{

char Uart_Date = 0;

jei (Serial.available ())

{size_t len = Serial.available ();

uint8_t sbuf [len + 1];

sbuf [len] = 0x00;

Serial.readBytes (sbuf, len);

// parseUartPackage ((char*) sbuf);

memcpy (buffUART + buffUARTIndex, sbuf, len);

// užtikrinti, kad nuoseklusis prievadas galėtų nuskaityti visą duomenų rėmelį

buffUARTIndex += len;

preUARTTick = milis ();

jei (buffUARTIndex> = MAX_PACKETSIZE - 1)

{buffUARTIndex = MAX_PACKETSIZE - 2;

preUARTTick = preUARTTick - 200; }

}

if (buffUARTIndex> 0 && (milis () - preUARTTick> = 100))

// APP siuntimo vėliava keisti kliūčių vengimo parametrus

{// duomenys paruošti buffUART [buffUARTIndex] = 0x00;

jei (buffUART [0] == 'C')

{Serial.println (buffUART);

Serial.println ("Jūs pakeitėte parametrus!");

// rodo, kad kliūčių vengimo atstumo parametras buvo pakeistas sscanf (buffUART, "CMD %d, %d, %d", & distancelimit, & sidedistancelimit & turntime);}

else Uart_Date = buffUART [0];

buffUARTIndex = 0;

}

jungiklis (Uart_Date) // nuoseklaus valdymo instrukcijos

{atvejis '2': Drive_Status = MANUAL_DRIVE; Drive_Num = GO_ADVANCE; Serial.println ("pirmyn"); pertrauka;

atvejis '4': Drive_Status = MANUAL_DRIVE; „Drive_Num“= „GO_LEFT“; Serial.println ("pasukti į kairę"); pertrauka;

atvejis '6': Drive_Status = MANUAL_DRIVE; Drive_Num = GO_RIGHT; Serial.println ("pasukti į dešinę"); pertrauka;

atvejis '8': Drive_Status = MANUAL_DRIVE; „Drive_Num“= „GO_BACK“; Serial.println ("grįžti atgal"); pertrauka;

atvejis '5': Drive_Status = MANUAL_DRIVE; Drive_Num = STOP_STOP; buzz_off (); Serial.println ("stop"); pertrauka;

atvejis '3': Drive_Status = AUTO_DRIVE_UO; Serial.println ("venkite kliūčių …"); pertrauka;

atvejis '1': Drive_Status = AUTO_DRIVE_LF; Serial.println ("line follow …"); break;

numatytasis: pertrauka;

}

}

4 žingsnis: Aparatūros diegimas

Techninės įrangos montavimas
Techninės įrangos montavimas
Techninės įrangos montavimas
Techninės įrangos montavimas
Techninės įrangos montavimas
Techninės įrangos montavimas

1 žingsnis: Įdiekite ESP8266 išplėtimo plokštę į UNO R3 plokštę.

2 žingsnis: Jei norite valdyti automobilį per „Bluetooth“, įdiekite „Bluetooth“modulį į ESP8266 taip ir padėkite jungiklį į „1, 2“padėtį. Jei norite valdyti automobilį per „Wi -Fi“, laikykite esp8266 plokštę be „Bluetooth“modulio ir pasukite esp8266 jungiklį į „įjungtą“padėtį.

Pastaba: „Bluetooth“modulis ir „Arduino“plokštė bendrauja tarpusavyje per UART nuoseklųjį prievadą. Prieš įkeldami eskizą į „Arduino“plokštę, pašalinkite „Bluetooth“modulį, kitaip eskizas bus įkeltas nesėkmingai.

3 žingsnis: Įdėkite dvi 12865 baterijas į baterijų dėžę ir pasukite dėžutės jungiklį į „ON“. (Jei baigėte pirmus pamokos veiksmus, pamoką praleiskite)

4 veiksmas: atidarykite telefono programą ir „wifi“, raskite karštą vietą pavadinimu „DoitWIFI_Config“ir prijunkite ją.

5 veiksmas: atidarykite programą >> pasirinkite „WiFi“režimą >>, tada galėsite valdyti roboto automobilį per „Wi -Fi“

6 veiksmas: Jei norite valdyti robotinį automobilį per „Bluetooth“, įjunkite „Android“telefono, kuriame įdiegėte APP, „Bluetooth“ir nuskaitykite „Bluetooth“(skirtingas „Bluetooth“modulis nuskaitys skirtingą „Bluetooth“pavadinimą), spustelėkite „Prisijungti“ir įveskite slaptažodį „1234“arba „0000“, jei nesikeičia („Android“telefone galite pakeisti „Wi -Fi“ar „Bluetooth“nustatymus, kad galėtumėte perjungti automobilio valdymą per „Wi -Fi“arba „Bluetooth“):

7 veiksmas: atidarykite programą >> pasirinkite „Bluetooth“režimą >>, tada galite valdyti roboto automobilį per „Bluetooth“:

Yra trys darbo režimai: rankinis valdymas, kliūčių vengimas ir sekimas. Vartotojai gali laisvai persijungti tarp trijų darbo režimų. Tuo tarpu APP gali stebėti automobilio judėjimą realiuoju laiku.

2) Norėdami perjungti dabartinį režimą į stebėjimo režimą, spustelėkite programos „stebėjimo“mygtuką. Automobilis „Robot“judės į priekį palei juodą liniją baltame fone. Tuo tarpu APP gali stebėti automobilio judėjimą realiuoju laiku. Paspauskite „||“mygtuką, kad sustabdytumėte judėjimą, ir spustelėkite kitą mygtuką, kad pakeistumėte roboto automobilio darbo režimą. Norėdami sužinoti daugiau apie šį režimą, peržiūrėkite 4 pamoką.

3) Norėdami pakeisti esamą režimą į kliūčių vengimo režimą, spustelėkite mygtuką „Kliūtis“. Automobilį „Robot“galima nuolat važiuoti į priekį, sustabdyti ir nuvažiuoti, kai tik pasitaiko kliūčių. Paspauskite „||“mygtuką, kad sustabdytumėte judėjimą, tada spustelėkite kitą mygtuką, kad pakeistumėte roboto automobilio darbo režimą. Norėdami sužinoti daugiau apie šį režimą, peržiūrėkite mūsų 5 pamoką.

Rekomenduojamas: