Wireless Bluetooth Controlled Robot using Arduino
in this project we will learn how to make Wireless Bluetooth Controlled Robot using Arduino and control it via Android App.
yleiskatsaus
tässä projektissa opetellaan tekemään langaton Bluetooth-ohjattu robottiauto Arduinon avulla. Robottiautoa voi ohjata langattomasti älypuhelimen kautta. Älypuhelimessa on Android-sovellus, jonka kautta käyttäjä voi lähettää komentoja suoraan robotille. Robotti voi liikkua eteenpäin, taaksepäin, vasemmalle ja oikealle, ja sen voi myös pysäyttää.
Arduinon Bluetooth-ohjattavassa robottiautossa on Bluetooth-moduuli HC-05 tai HC-06. Robotille voi antaa tiettyjä äänikomentoja puhelimeen asennetun Android-sovelluksen kautta. Vastaanottavalla puolella Bluetooth-lähetinmoduuli vastaanottaa komennot ja välittää ne eteenpäin Arduinolle,jolloin robottiautoa ohjataan.
aiemmin teimme jonkin muun robottiprojektin. Voit katsoa niistä muutaman alta:
1. Langaton Eleohjattu Robotti, Joka Käyttää Kiihtyvyysmittaria & Arduino
2. Langaton Puheohjattu Robottiauto Käyttäen Arduino
3. WiFi ohjattu robotti käyttäen ESP8266
Bill of Materials
tässä projektissa tarvittavat komponentit on esitetty alla. Kaikki nämä koponentit voi ostaa Amazoon linkistä.
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 | akku | 9V ladattava akku | 1 | https://amzn.to/2L2dusP |
6 | Robottikahakka & Pyörät & ruuvit | – | 1 | https://amzn.to/2WGk4eg |
7 | liitosjohdot | hyppyjohdot | 10 | https://amzn.to/2L8Xc1p |
8 | leipälauta | – | 1 | https://amzn.to/2YM6YyS |
lohkokaavio
Arduinon langattoman äänen lohkokaavio Ohjattu robotti on esitetty alla.
Arduinon langaton Puheohjattu robotti koostuu lähettimestä ja vastaanottimesta. Lähettimen päässä on älypuhelin Bluetooth ja siihen asennettu Android-sovellus. Vastaavasti vastaanottimen osassa on Arduino-lauta prosessorina, HC-05 Bluetooth-moduuli langattomana viestintämoduulina, l293d moottorien ajamiseen ja pari tasavirtaa osana liikkuvaa robottia.
piirikaavio & liitännät
piiri koostuu Arduino UNO-laudasta, HC-05/HC-06 Bluetooth-moduulista, L293d-moottorinohjain IC: stä, parista TASAVIRTAVAIHDEMOOTTOREITA, joiden kierrosnopeus on 200 kierrosta minuutissa ja 9 V: n akusta.
Arduinon Tx, Rx nastat on kytketty Bluetooth-moduulin RX, TX nastat. Bluetooth-moduuli toimitetaan 5V: n kanssa.vastaavasti vasen tasavirtamoottori on kytketty l293d: n tappiin nro 3 & 6 ja oikea tasavirtamoottori l293d: n tappiin nro 14 & 11. Arduino digital nastat 2,3,4,5 on kytketty L293D 2, 7, 10, 15 vastaavasti.
L293D IC Nastat 2, 5, 12, 13 on GND nastat ja 9, 1, 16 toimitetaan 5V. mutta pin 8 l293d toimitetaan suoraan 9V.
Android-sovellus
tämän projektin sovellus on esitetty alla. Se on suunniteltu MIT App Inventor-sovelluksen avulla. Käyttöliittymä näyttää tältä.
myös sisäinen arkkitehtuuri ja ohjelmointi on toteutettu niin, että Android-sovellus voi ohjata robottia langattomasti Bluetoothin avulla.
lopullisen suunnittelun jälkeen Android-sovellus näyttää tältä. Voit ladata APK-tiedoston alta ja asentaa suoraan älypuhelimeen.
projektin työskentely
kuten edellä mainittiin, sovelluksen Logiikkakomento käsitellään puhelimitse. Komento lähetetään vastaanottimen puolelle Bluetoothin kautta. Bluetoothin kautta vastaanotettu komento välitetään Arduino Uno Boardille UART serial communication protocol-protokollan avulla. Arduino-koodi tarkistaa vastaanotetut komennot. Aina kun komento on vastaava merkkijono, Arduino ohjaa robotin liikkeitä vastaavasti eteenpäin, taaksepäin, oikealle kääntyen, vasemmalle kääntyen & Stop.
signaalilogiikkatasot piirien eri vaiheissa robottiauton asianmukaista ohjausta varten on esitetty alla.
lähdekoodi / ohjelma
langattoman Bluetooth-robotin Arduinon lähdekoodi on annettu alla. Voit kopioida koodin ja ladata sen suoraan Arduino Board.
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
|
String readvoice;
int k=0;
void setup () {
Serial.begin (9600);
pinMode (2, OUTPUT);
pinMode (3, OUTPUT);
pinMode (4, OUTPUT);
pinMode(5, OUTPUT));
}
void loop () {
while (Serial.käytettävissä())
{
viive(3);
char c = sarja.read ();
readvoice += c;
}
jos (readvoice.pituus() > 0)
{
sarjamurhaaja.println (readvoice);
if (readvoice == ”eteenpäin”)
{
digitalWrite(2, korkea);
digitalWrite (3, Matala);
digitalWrite (4, Korkea);
digitalWrite (5, matala);
k=1;
}
if (readvoice == ”taaksepäin”)
{
digitalWrite (2, LOW);
digitalWrite (3, HIGH);
digitalWrite (4, LOW);
digitalWrite (5, HIGH);
k=2;
}
if (readvoice == ”right”)
{
jos (k==2)
{
digitalWrite (2, HIGH);
digitalWrite (3, LOW);
digitalWrite (4, LOW);
digitalWrite(5, LOW);
viive(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);
}
}
if (readvoice == ”left”)
{
jos (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, LOW);
delay(1000);
digitalWrite (2, HIGH);
digitalWrite (3, LOW);
digitalWrite (4, HIGH);
digitalWrite(5, LOW);
}
}
if (readvoice = = ”stop”)
{
digitalWrite (2, LOW);
digitalWrite (3, LOW);
digitalWrite (4, LOW);
digitalWrite(5, LOW);
}
}
readvoice=””;
}
|