Efter att ha utvecklat några populära robotprojekt som linjeföljande robot, kantundvikande robot, DTMF-robot, geststyrd robot etc. i detta projekt ska vi utveckla en Bluetooth-styrd robobil. Här använde vi en Bluetooth-modul för att styra bilen, och det är också en Android-baserad applikation.
Komponenter
- Arduino UNO
- DC-motorer
- Bluetooth-modul HC-05
- Motordrivrutin L293D
- 9 volt batteri och 6 volt batteri
- Batterikontakt
- Leksaksbil
Bluetooth-kontrollerad bil styrs med Android-mobiltelefon istället för någon annan metod som knappar, gest etc. Här behöver du bara trycka på knappen i Android-telefonen för att styra bilen framåt, bakåt, vänster och höger. Så här används Android-telefonen som sändande enhet och Bluetooth-modul placerad i bilen används som mottagare. Android-telefonen kommer att sända kommando med sin inbyggda Bluetooth till bilen så att den kan röra sig i önskad riktning som att gå framåt, bakåt, sväng vänster, sväng höger och stoppa.
Bluetooth-modul
HC Bluetooth-modulen består av två saker, en är den seriella Bluetooth-gränssnittsmodulen och en Bluetooth-adapter. Bluetooth-seriemodul används för att konvertera seriell port till Bluetooth.
Hur man använder Bluetooth-modulen?
Du kan använda Bluetooth-modulen direkt efter köp från marknaden, eftersom det inte finns något behov av att ändra någon inställning för Bluetooth-modulen. Standard baudhastighet för den nya Bluetooth-modulen är 9600 bps. Du behöver bara ansluta rx och tx till styrenheten eller seriell omvandlare och ge 5 volt likströmsreglerad strömförsörjning till modulen.
Bluetooth-modulen har två lägen, ett är huvudläge och det andra är slavläge. Användaren kan ställa in något av lägena med hjälp av vissa AT-kommandon. Även användare kan ställa in modulens inställning med AT-kommandot. Här är några kommandon som användningen ges:
Först och främst måste användaren gå in i AT-läge med 38400 bps baudhastighet genom att trycka på EN-knappen på Bluetooth-modulen eller genom att ge HÖG nivå vid EN-stift. Obs! Alla kommandon ska sluta med \ r \ n (0x0d och 0x0a) eller ENTER KEY från tangentbordet.
Efter det om du skickar AT till modulen kommer modulen att svara med OK
AT → Testkommando
AT + ROLE = 0 → Välj slavläge
AT + ROLE = 1 → Val av huvudläge
AT + NAME = xyz → Ställ in Bluetooth-namn
AT + PSWD = xyz → Ställ in lösenord
AT + UART =
T.ex. AT + UART = 9600,0,0
Stift Beskrivning av accelerometer
- STAT → Öppna
- Rx → Seriell mottagningsstift
- Tx → Seriell sändstift
- GND → mark
- Vcc → + 5 volt likström
- EN → för att gå in i AT-läge
Arbetsförklaring
I detta projekt har vi använt en leksaksbil för demonstration. Här har vi valt en RF-leksaksbil med styrning åt vänster till höger. Efter att ha köpt den här bilen har vi bytt ut RF-kretsen mot vår Arduino-krets. Denna bil har två likströmsmotorer på fram- och baksidan. Motorn på framsidan används för att ge riktning till bilen betyder att du svänger åt vänster eller höger sida (som en verklig bilstyrningsfunktion). Och baksidemotorn används för att köra bilen framåt och bakåt. En Bluetooth-modul används för att ta emot kommandon från Android-telefonen och Arduino UNO används för att styra hela systemet.
Bluetooth-kontrollerad bil rör sig enligt knappen som berörs i Android Bluetooth-mobilappen. För att kunna köra detta projekt måste vi ladda ner Bluetooth-appen från Google Play Store. Vi kan använda vilken Bluetooth-app som helst som stöder eller kan skicka data. Här är några apps namn som kan fungera korrekt.
- Bluetooth Spp pro
- Bluetooth-kontroller
När du har installerat appen måste du öppna den och sedan söka efter Bluetooth-enhet och välja önskad Bluetooth-enhet. Och sedan konfigurera nycklar. Här i det här projektet har vi använt Bluetooth-controller-appen.
- Ladda ner och installera Bluetooth Controller.
- Aktiverad mobil Bluetooth.
- Öppna nu Bluetooth-kontrollappen
- Tryck på scan
- Välj önskad Bluetooth-enhet
- Ställ nu in knapparna genom att trycka på set-knapparna på skärmen. För att ställa in tangenter måste vi trycka på "Set-knappen" och ställa in tangenten enligt bilden nedan:
Tryck på ok efter att du har ställt in knapparna.
När vi trycker på framåtknappen i Bluetooth-controller-appen börjar bilen röra sig framåt och fortsätter framåt tills nästa kommando kommer.
När vi trycker på bakåtknappen i Bluetooth-controller-appen börjar bilen röra sig i omvänd riktning och fortsätter bakåt tills nästa kommando kommer.
När vi trycker på vänster knapp i Bluetooth-controller-appen börjar bilen röra sig i vänster riktning och fortsätter till vänster tills nästa kommando kommer. I detta tillstånd vrider framsidemotorn framsidahjulen i vänster riktning och den bakre motorn går framåt.
När vi trycker på högerknappen i Bluetooth-controller-appen börjar bilen röra sig i rätt riktning och fortsätter till höger tills nästa kommando kommer. I detta tillstånd vrider frontmotorn framhjulen i rätt riktning och bakmotorn går framåt.
Och genom att trycka på stoppknappen kan vi stoppa bilen.
Kretsschema och förklaring
Kretsschema för Bluetooth-styrd bil visas i figuren ovan. En motorförare är ansluten till arduino för att köra bilen. Motorförarens ingångsstift 2, 7, 10 och 15 är anslutna till arduinos digitala stift nummer 12, 11, 10 respektive 9. Här har vi använt två likströmsmotorer för att driva bil där en motor är ansluten vid utgångsstiftet på motorförare 3 och 6 och en annan motor är ansluten vid 11 och 14. Ett 6 volts batteri används också för att driva motorföraren för att köra motorer. Bluetooth-modulens rx- och tx-stift är direktanslutna på tx och rx i Arduino. Och vcc och jordstift på Bluetooth-modulen är ansluten till +5 volt och Arndino. Och ett 9 volts batteri används för att driva kretsen vid Arduinos Vin-stift
Programförklaring
I programmet har vi först och främst definierade utgångsstift för motorer.
#define m11 11 // rear engine #define m12 12 #define m21 10 // front motor #define m22 9
Och sedan i installationen gav vi anvisningar om att fästa.
ogiltig installation () {Serial.begin (9600); pinMode (m11, OUTPUT); pinMode (m12, OUTPUT); pinMode (m21, OUTPUT); pinMode (m22, OUTPUT); }
Efter detta läser vi inmatning med hjälp av seriell kommunikation från Bluetooth-modulen och utför operationen därefter.
void loop () {while (Serial.available ()) {char ch = Serial.read (); str = ch; if (str == '1') {Serial.println ("Vidarebefordra"); fram(); i = 0; } annars om (str == '2') {Serial.println ("Vänster"); rätt(); i = 0; } annars om (str == '3') {Serial.println ("Right"); vänster(); i = 0; }
Sedan har vi skapat funktioner för olika riktningar av bilen. Det finns fem villkor för den här Bluetooth-kontrollerade bilen som används för att ge anvisningarna:
Pekad knapp i Bluetooth-controller-appen |
Utgång för frontmotor för att ge riktning |
Utgång för baksidemotor för att gå framåt eller bakåt |
|||
Knapp |
M11 |
M12 |
M21 |
M22 |
Riktning |
Sluta |
0 |
0 |
0 |
0 |
Sluta |
Fram |
0 |
0 |
0 |
1 |
Fram |
Bakåt |
0 |
0 |
1 |
0 |
Bakåt |
Rätt |
1 |
0 |
0 |
1 |
Rätt |
vänster |
0 |
1 |
0 |
1 |
Vänster |