Inhoudsopgave:

Arduino Tank Car Les 6 - Bluetooth- en wifi-hotspotbesturing - Ajarnpa
Arduino Tank Car Les 6 - Bluetooth- en wifi-hotspotbesturing - Ajarnpa

Video: Arduino Tank Car Les 6 - Bluetooth- en wifi-hotspotbesturing - Ajarnpa

Video: Arduino Tank Car Les 6 - Bluetooth- en wifi-hotspotbesturing - Ajarnpa
Video: How to make DIY Bluetooth controlled car |Bluetooth controlled Robot | Rocker bogie |Arduino project 2024, November
Anonim
Arduino Tank Car Les 6 - Bluetooth en Wifi Hot Spot Control
Arduino Tank Car Les 6 - Bluetooth en Wifi Hot Spot Control

In deze les leren we hoe we de Robot Car mobiele APP kunnen bedienen via WiFi en Bluetooth., we gebruiken gewoon de esp8266 wifi espasion board als uitbreidingskaart en besturen de ketelwagen via IR ontvanger in voorgaande lessen. In deze les leren we hoe we de telefoon kunnen gebruiken om de hotspot vanaf het uitbreidingsbord te verbinden en de autobeweging via de telefoon-app te besturen. Tegelijkertijd kunt u ook de Bluetooth in het uitbreidingsbord plaatsen en de autobeweging via Bluetooth via de telefoon regelen.

Gedetailleerde tutorials:

Koop het voor de VS: Amazon.com

Stap 1: Hoe het werkt

Hoe het werkt
Hoe het werkt

Er is een hotspot genaamd DoitWIFI_Config van ESP8266 board in

werktijd en je zou de hotspot kunnen verbinden via telefoon wifi zonder wachtwoord. Wanneer de schakelaar van het ESP8266-bord op "AAN" staat, kan het bericht van de arduino en esp8266 worden uitgewisseld door seriële poorten..

Draai de schakelaar van de ESP8266-kaart naar de positie "1" en "2" om de seriële poorten tussen de arduino en de ESP8266-kaart los te koppelen. Als je de bluetooth-module op het esp8266-bord plaatst en deze via bluetooth op de telefoon aansluit, kan het bericht van de arduino en esp8266 worden uitgewisseld via seriële poorten via de bluetooth-module.

Vind meer informatie over het ESP8266 Wifi shiled-bord, bezoek hier:

Stap 2: Software-installatie

Stap 1: Installeer de nieuwste Arduino IDE (als je een Arduino IDE-versie hebt na 1.1.16, sla deze stap dan over)

Download Arduino IDE van https://www.arduino.cc/en/Main/Software?setlang=e… en installeer vervolgens de software.

Stap 2: Download de voorbeeldcode van les 7 van https://www.kookye.com/download/car/tank_robot_les… pak het downloadzipbestand tank_robot_lesson7.zip uit, u ziet een map met de naam tank_robot_lesson7.

Stap 3: Verbind het UNO R3-bord met de pc met een USB-kabel, Open Arduino IDE -> klik op bestand -> klik op Openen -> kies code "tank_robot_lesson7.ino" in de map tank_robot_lesson7, laad de code in Arduino.

Stap 4: Kies het overeenkomstige bord en de poort voor uw project, upload de schets naar het bord.

Stap 5: Download de APP en installeer deze op je telefoon: https://kookye.com/download/car/car.apkOpmerking: deze app kan alleen Android ondersteunen en we bieden de app-broncode aan (https://kookye.com /download/car/BTcar-master.zip). U kunt de code volgens uw behoeften herzien en personaliseren.

Stap 3: Begrijp de code

Dit programma wordt gebruikt om het besturingscommando van de telefoon-app te ontvangen.

//WiFi / Bluetooth via de seriële bediening

ongeldig do_Uart_Tick()

{

char Uart_Datum=0;

if(Seriële.beschikbare())

{ size_t len = Serieel.beschikbaar();

uint8_t sbuf[len + 1];

sbuf[len] = 0x00;

Serial.readBytes(sbuf, len);

//parseUartPackage((char*)sbuf);

memcpy(buffUART + buffUARTIndex, sbuf, len);

// zorg ervoor dat de seriële poort het volledige gegevensframe kan lezen

buffUARTIndex += len;

preUARTTick = millis();

if (buffUARTIndex >= MAX_PACKETSIZE - 1)

{ buffUARTIndex = MAX_PACKETSIZE - 2;

preUARTTick = preUARTTick - 200; }

}

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

// APP verzendvlag om de parameters voor het vermijden van obstakels te wijzigen

{// data klaar buffUART [buffUARTIndex] = 0x00;

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

{Serial.println(buffUART);

Serial.println("Je hebt de parameters gewijzigd!");

// geeft aan dat de parameter voor het vermijden van obstakels is gewijzigd sscanf(buffUART, "CMD%d, %d, %d", &distancelimit, &sidedistancelimit, &turntime);}

anders Uart_Date=buffUART[0];

buffUARTIndex = 0;

}

schakelaar (Uart_Date) // instructies voor seriële controle

{ geval '2': Drive_Status=MANUAL_DRIVE; Drive_Num=GO_ADVANCE;Serial.println("vooruit"); pauze;

geval '4': Drive_Status=MANUAL_DRIVE; Drive_Num=GO_LEFT; Serial.println("linksaf");break;

geval '6': Drive_Status=MANUAL_DRIVE; Drive_Num=GO_RIGHT; Serial.println("rechtsaf");break;

geval '8': Drive_Status=MANUAL_DRIVE; Drive_Num=GO_BACK; Serial.println("ga terug");break;

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

geval '3': Drive_Status=AUTO_DRIVE_UO; Serial.println("vermijd obstakels…");break;

geval '1': Drive_Status=AUTO_DRIVE_LF; Serial.println("regel volgen…");break;

standaard: pauze;

}

}

Stap 4: Hardware-installatie

Hardware installatie
Hardware installatie
Hardware installatie
Hardware installatie
Hardware installatie
Hardware installatie

Stap 1: Installeer de ESP8266-uitbreidingskaart op de UNO R3-kaart.

Stap 2: Als u de auto via Bluetooth wilt bedienen, installeer dan de Bluetooth-module als volgt op de ESP8266 en zet de schakelaar in de stand "1, 2". Als je de auto via wifi wilt bedienen, houd dan het esp8266-bord zonder bluetooth-module en draai de schakelaar van esp8266 naar de "aan" -positie.

Opmerking: Bluetooth-module en Arduino-bord communiceren met elkaar via de seriële UART-poort. Verwijder de Bluetooth-module voordat u de schets op het Arduino-bord uploadt, anders wordt de schets niet succesvol geüpload.

Stap 3: Plaats twee 12865-batterijen in de batterijdoos en zet de schakelaar van de doos op "AAN". (Als u de bovenstaande stappen in les één hebt voltooid, kunt u deze stap overslaan)

Stap 4: Open de telefoon-app en wifi, zoek de hotspot genaamd "DoitWIFI_Config" en verbind deze.

Stap 5: Open app>> selecteer wifi-modus>> dan kun je de robotauto besturen via wifi

Stap 6: Als je de robotauto via Bluetooth wilt besturen, schakel dan bluetooth in van je Android-telefoon waarop je APP hebt geïnstalleerd en scan bluetooth (verschillende bluetooth-modules scannen verschillende bluetooth-namen), klik op verbinden en voer wachtwoord "1234" in of "0000" als er geen verandering is (u kunt de wifi- of bluetooth-instellingen in de Android-telefoon wijzigen om over te schakelen naar de besturing van de auto via wifi of bluetooth):

Stap7: Open app>> selecteer bluetooth-modus>> dan kun je de robotauto besturen via bluetooth:

Er zijn drie werkmodi: handmatige bediening, obstakel vermijden en volgen. Gebruikers kunnen vrij schakelen tussen drie werkmodi.1) In de handmatige bedieningsmodus kunt u op de knoppen (^) (V) () klikken om de robotauto te besturen om vooruit en achteruit te gaan, naar rechts en links te draaien. Ondertussen kan de APP de beweging van de auto in realtime observeren.

2) Klik op de "tracking"-knop van de app om de huidige modus over te schakelen naar de volgmodus. De robotauto rijdt vooruit langs de zwarte lijn op een witte achtergrond. Ondertussen kan de APP de beweging van de auto in realtime observeren. Druk op "||" knop om te stoppen met bewegen en klik op een andere knop om de werkmodus van de robotauto te wijzigen. Lees onze les 4 voor meer informatie over deze modus.

3) Klik op de knop "Obstacle" om de huidige modus over te schakelen naar de modus voor het vermijden van obstakels. De robotauto kan continu vooruit worden gereden en kan worden gestopt en weggestuurd zodra een obstakel op zijn weg komt. Druk op "||" knop om te stoppen met bewegen en klik vervolgens op een andere knop om de werkmodus van de robotauto te wijzigen. Lees onze les 5 voor meer informatie over deze modus.

Aanbevolen: