Robot Wireless controlat prin Bluetooth folosind Arduino

în acest proiect vom învăța cum să facem Robot Wireless controlat prin Bluetooth folosind Arduino și să îl controlăm prin aplicația Android.

Prezentare generală

în acest proiect, vom învăța cum să facem o mașină Robot controlată fără fir Bluetooth folosind Arduino. Mașina robotizată poate fi controlată fără fir prin intermediul unui Smartphone. Smartphone-ul are o aplicație Android prin care utilizatorul poate trimite comenzi direct la Robot. Robotul se poate deplasa înainte, înapoi, stânga și dreapta și poate fi, de asemenea, oprit.

mașina robotului controlată prin Bluetooth Arduino este interfațată cu un modul Bluetooth HC-05 sau HC-06. Putem da comenzi vocale specifice robotului printr-o aplicație Android instalată pe telefon. La partea de recepție, un modul de emisie-recepție Bluetooth primește comenzile și le transmite către Arduino și, astfel, mașina robotizată este controlată.

anterior am făcut un alt proiect robotizat. Puteți verifica câteva dintre ele mai jos:
1. Wireless Gest Controlat Robot Folosind Accelerometru & Arduino
2. Mașină Robot Controlată Prin Voce Fără Fir Folosind Arduino
3. Robot controlat WiFi folosind ESP8266

Bill of Materials

componentele necesare pentru aceste proiecte sunt prezentate mai jos. Toate aceste coponente pot fi achiziționate de pe link-ul Amazoon.

S. N. Components Description Quantity
1 Arduino UNO Arduino UNO R3 Development Board 1 https://amzn.to/388eC7D
2 Bluetooth Module HC-05/HC-06 Bluetooth Module 1 https://amzn.to/2MjYbi4
3 Motor Driver IC L293D H-Bridge Motor Driver IC 1 https://amzn.to/2Z6WsyG
4 Motors 12V DC Geared Motors, 300 RPM 2 https://amzn.to/2L2dusP
5 baterie baterie reîncărcabilă 9V 1 https://amzn.to/2L2dusP
6 Robot Chasis & roți & șuruburi 1 https://amzn.to/2WGk4eg
7 Cabluri de conectare cabluri Jumper 10 https://amzn.to/2L8Xc1p
8 Breadboard 1 https://amzn.to/2YM6YyS

Diagrama bloc

Diagrama bloc a vocii fără fir Arduino Robotul controlat este prezentat mai jos.

Diagrama bloc Robot vocal controlat

robotul vocal Wireless Arduino este format dintr-un transmițător și o secțiune receptor. Capătul emițătorului este format din smartphone Bluetooth și aplicația Android instalată pe acesta. În mod similar, secțiunea receptorului are placa Arduino ca procesor, modulul Bluetooth HC-05 ca modul de comunicare fără fir, L293D pentru motoarele de acționare și perechea de DC orientată ca parte pentru robotul în mișcare.

diagrama circuitului& conexiuni

diagrama circuitului Arduino robot controlat vocal

circuitul constă din placa Arduino UNO, modulul Bluetooth HC-05/HC-06, driverul motorului L293D IC, o pereche de motoare cu angrenaj DC de 200 RPM și o baterie de 9V.

pinii Tx, Rx ai Arduino sunt conectați la pinii Rx, Tx ai modulului Bluetooth. Modulul Bluetooth este livrat cu 5V.în mod similar, motorul DC stâng este conectat la pinul nr. 3 & 6 al L293D și motorul DC drept la pinul nr. 14 & 11 al L293D. Arduino digital pins 2,3,4,5 este conectat la L293D 2, 7, 10, respectiv 15.

pinii IC L293D 2, 5, 12, 13 este GND pini și 9, 1, 16 este livrat cu 5V. dar pin 8 de L293D este furnizat direct cu 9V.

robot controlat Android

aplicația Android

aplicația pentru acest proiect este prezentată mai jos. Acesta este proiectat folosind MIT App Inventor. UI arata ceva de genul asta.

arhitectura și programarea internă au fost, de asemenea, implementate, astfel încât aplicația Android să poată controla fără fir robotul cu Bluetooth.

după designul final, aplicația Android arată cam așa. Puteți descărca fișierul APK de mai jos și instalați direct pe telefonul smartphone.

descărcați: fișier APK controlat prin Bluetooth

de lucru a proiectului

după cum sa menționat mai sus App comandă logică sunt procesate prin telefon. Comanda este apoi trimisă către partea receptorului prin Bluetooth. Comanda primită prin Bluetooth este redirecționată către placa Arduino Uno folosind protocolul de comunicare serial UART. Codul Arduino verifică comenzile primite. Ori de câte ori COMANDA este un șir de potrivire, Arduino controlează mișcările robotului în mod corespunzător înainte, înapoi, virând la dreapta, virând la stânga & Stop.

nivelurile logice ale semnalului în diferitele etape ale circuitelor pentru controlul corect al mașinii robotizate sunt prezentate mai jos.

lucrul robotului controlat prin voce

cod sursă / Program

codul sursă pentru robotul Bluetooth Wireless Arduino este prezentat mai jos. Puteți copia codul și încărcați-l direct la bord Arduino.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106

șir readvoice;
int k=0;
void setup() {
Serial.incepe (9600);
pinMode (2, ieșire);
pinMode (3, ieșire);
pinMode (4, ieșire);
pinMode (5, ieșire);
}
buclă void () {
în timp ce (Serial.disponibil())
{
întârziere(3);
char c = Serial.read();
readvoice + = c;
}
dacă (readvoice.lungime() > 0)
{
Serial.println (readvoice);
dacă (readvoice = = „înainte”)
{
digitalWrite (2, ridicat);
digitalWrite(3, scăzut);
scriere digitala (4, inalta);
scriere digitala (5, scazuta);
k=1;
}
dacă (readvoice = = „înapoi”)
{
digitalWrite (2, LOW);
digitalWrite (3, HIGH);
digitalWrite (4, LOW);
digitalWrite (5, HIGH);
k=2;
}
dacă (readvoice = = „dreapta”)
{
dacă (k==2)
{
digitalWrite (2, HIGH);
digitalWrite (3, LOW);
digitalWrite (4, LOW);
digitalWrite (5, LOW);
întârziere(1000);
digitalWrite (2, LOW);
digitalWrite (3, HIGH);
digitalWrite (4, LOW);
digitalWrite (5, HIGH);
}
else
{
digitalWrite (2, HIGH);
digitalWrite (3, LOW);
digitalWrite(4, LOW);
digitalWrite (5, LOW);
delay(1000);
digitalWrite (2, HIGH);
digitalWrite (3, LOW);
digitalWrite (4, HIGH);
digitalWrite (5, LOW);
}
}
dacă (readvoice = = „stânga”)
{
dacă (k==2)
{
digitalWrite (2, LOW);
digitalWrite (3, LOW);
digitalWrite(4, HIGH);
digitalWrite (5, LOW);
delay(1000);
digitalWrite (2, LOW);
digitalWrite (3, HIGH);
digitalWrite (4, LOW);
digitalWrite (5, HIGH);
}
else
{
digitalWrite (2, LOW);
digitalWrite (3, LOW);
digitalWrite (4, HIGH);
digitalWrite (5, scăzut);
întârziere(1000);
digitalWrite (2, HIGH);
digitalWrite (3, LOW);
digitalWrite (4, HIGH);
digitalWrite (5, LOW);
}
}
dacă (readvoice = = „stop”)
{
digitalWrite (2, LOW);
digitalWrite (3, LOW);
digitalWrite (4, LOW);
digitalWrite (5, LOW);
}
}
cititvoce=””;
}

Leave a Reply

Adresa ta de email nu va fi publicată.