9 Projekt --LCD vezérlés HC-05 Bluetooth modullal és Android okostelefonnal -- V1.0
by Roboworld Hobbielektronika
Rövid leírás:
Ebben a rövid projektben bemutatjuk neked, hogy egy HC-05 típusú Bluetooth modullal felszerelt Arduino, hogy kommunikál más Bluetooth eszközökkel, mint pl egy okostelefon. A projekt során egy Androidos telefonra fogunk írni egy kis applikációt, amely tud kommunikálni az Arduinoval. Az eredményeket pedig egy 1602-es kijelzőn fogjuk megjeleníteni. A 2. projekt alkalmával már szó esett erről a kijelzőről, így ennek kapcsolását most nem fogom bemutatni.
Hardware:
1 db Arduino Uno
1 db HC -05 Bluetooth modul
1 db 1602 Kijelző I2C kommunikációval
Jumper kábel
Kapcsolási rajz:
A kapcsolás megépítése után jöjjön a programozás, valamint az alkalmazás elkészítése, amelyet az okostelefonodra kell másolni és telepíteni.
Programozás, mintakód
FIGYELEM!! A program feltöltése nem lehetséges, ha a kijelzőt és a HC-05 Bluetooth modult is az Arduinon keresztül tápláljuk meg. Megoldásként csak annyi a teendő, hogy feltöltés előtt az 5V és a GND kábelt (amely a breadboardot táplálja) kihúzzuk és a feltöltés zavartalanul mehet végbe. Ezután a két kábelt vissza lehet helyezni.
#include <Wire.h>
#include <LiquidCrystal_I2C.h> // LiquidCrystal_I2C könyvtár használata
LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE); // LiquidCrystal_I2C könyvtárat használjuk
//Szükséges megadni a kommunikációs csatornát. //Esetünkben ez 0x3F azonban ez eltérhet.
//Ha nem működik a 0x3F akkor i2c_scanner.ino futtatása szükséges, amely kiírja a megfelelő értéket. 0x3F-et
//átírva pl: 0x27 -re megoldhatja a kommunikációs hibát.
String readString;
void setup() {
Serial.begin(9600);
lcd.begin(16, 2); // Megadjuk, hogy 16 karakterből és 2 sorból áll az LCD kijelzőnk.
// FONTOS!! lcd.begin(karakterszám, sor);
}
void loop() {
while(Serial.available()){
delay(50);
char c=Serial.read();
readString+=c;
}
if(readString.length()>0){
Serial.println(readString);
if (readString =="button_1"){ // Ha az 1-es gombot nyomjuk meg akkor kiírja hogy Roboworld.hu
lcd.clear();
lcd.print("Roboworld.hu");
}
if (readString =="button_2"){ //Ha az 2-es gombot nyomjuk meg akkor kiírja hogy Hobbielektronika
lcd.clear();
lcd.print("Hobbielektronika");
}
if (readString =="button_3"){ //Ha az 3-es gombot nyomjuk meg akkor kiírja hogy Hello World.
lcd.clear();
lcd.print("Hello World");
}
readString="";
}
}
Android alkalmazás létrehozása
Az alkalmazás elkészítéséhez az MIT App Inventor programot fogjuk használni, amely online felületen elérhető így nem igényel semmiféle előtelepítést. További információkat a itt találsz.
1.lépés Fejlesztőkörnyezet megnyitása
Nyisd meg a linket: MIT App Invertor, majd „Start new Project” gombra kattints a bal felső sarokban. Nevezd el a projected ahogy szeretnéd. Javaslom: „LCD connect” nevet. Ezután megjelenik a fejlesztői környezet középen egy telefon kijelzővel.
2. lépés Bluetooth Client List létrehozása, gombok beszúrása
Bluetooth Client List létrehozása és gombok elhelyezése a képernyőn. Baloldalon megtalálható egy „Connectivity” nevű fül, amelyre rákkatintva megtalálható a „BluetoothClient”. Fogd meg a „BluetoothClient”-et és húzd a főképernyőhöz. Ekkor megjelenik a képernyő alatt egy kis Bluetooth ikon. „BluetoothClient1” névvel.
Ezután következzen a gombok elhelyezése. Ugyancsak baloldalon a „User Interface” fül alatt található meg a „Button” funkció blokk. Húzd a „Button” a főképernyőre. Helyezz összesen 3db buttont a főképernyőre.
3. lépés Button gombok elnevezése
Miután a gombok a helyükön vannak azután tudjuk a tartalmukat szerkeszteni. Ha 1x rákattintunk a gombra akkor jobboldalon megjelenik egy sáv, amelyen a gombot tudjuk testreszabni. Itt tudjuk a nevét is változtatni. Ha a Text sort megtaláltad akkor a 3. gombra beírhatod például, hogy „Hello World”. A másik két gombot is ezen módszer alapján nevezd el.
4. Blocks és Listpicker kialakítás
A MIT App Inventor jobb felső sakrában találsz egy „Blocks” nevű gombot amelyre kattints rá. Ezután megjelenik egy új ablak. Itt tudod programozni, azokat a gombokat, funkciókat amelyeket korábban már beillesztettél. Ezeket a bal oldali oszlopban láthatod.
4.1 Bluetooth Client funkcióblokkjai
Kattins a ListPicker1 nevű funkcióra és helyezz el és a legördulő menüből helyezd el az alábbi kép alapján a megfelelő funkcióblokkokat.
Majd kapcsold hozzájuk a Bluetooth Client fül alól a következőket így: Még 1 funkcióblokk hiányzik. Ezt ugyancsak a ListPicker1-ben fogjuk megtalálni:
Ezt a funkcióblokkot kell hozzákapcsolni a lilla BluetoothClient1 blokkhoz.
Végeredmény:
Ezek a blokkok felelnek, hogy az okostelefon ki tudjuk választani listából a HC-05 Bluetooth modult.
4.2 Nyomógombok funkcióblokkjai
Továbbiakban a nyomógomb funkciókról lesz szó. Kattins a baloldalon megtalálható Button1-re és válaszd ki a megjelenő menüből a következő blokkot:
Majd egészítsd ki így a Bluetooth Client megjelenő menüjéből így:
Majd csatolj még hozzá egy „text” funkcióblokkot. Ezt baloldalt felül találod a „Built-in” fülben piros színnel.
Kattints a „Text”-re és választ a következő blokkot, majd írd bele hogy button_1 :
Eredmény:
Az összeillesztett funkcióblokk nem csinál mást, mint az első gomb megnyomásakor meghívja a BluetoothClient1 funkciót és rajta keresztül elküld egy szöveget amelynek a tartalma „button_1”.
A „button_1” szócska nagyon fontos mivel ez az az információ amit az okostelefonon lévő gomb megnyomásakor az okostelefon a HC-05 Bluetooth modulnak elküld. Ezt az információt fogja az Arduino feldolgozni és kiírni a „button_1”-hez tartozó szöveget.
Ismételd ezt meg még kétszer, hogy a másik két gomb is definiálva legyen.
Végeredmény:
Teljes programkód itt látható:
Ezzel az applikáció programozás véget ért. Nincs más hátra mint elnevezni az applikációd és apk kiterjesztésű fájlt generálni.
Ahhoz, hogy az applikációd eltudd nevezni vissza kell lépned a Designer ablakba (Jobb felül a Blocks mellett). Miután visszaléptél kattins a megjelenített telefonképernyőre és ekkor jobb oldalon megjelenik a „Properties”, ahol az „AppName”-nél betudod írni az appod nevét.
5. Applikáció generálás
Applikációdat úgy tudsz generálni, hogy a bal felső sarokban lévő „Build” fület lenyitod és az „App (save .apk to my computer)” választod. Ekkor startol el az appgenerálás. Körülbelül 1 percen belül el is készül a letölthető app amelyet másolj fel a telefondodra és telepítsd fel.
6. Használat, csatlakozás
A telepítés után kapcsold be a telefonodon a Bluetooth-t és párosítsd a HC-05 típusú modullal.A modulon van egy kis gomb amelyet meg kell nyomni a párosítás előt, mivel ezzel jelezzük a modul felé, hogy párosítást szeretnénk végrehajtani. A kód 1234 lesz. Miután ez megtörtént nyisd meg az applikációt majd Bluetooth Client gombot nyomd meg és válaszd ki a HC-05 modult.
A kapcsolat létrejött és az Arduinod illetve az okostelefonod már kommunikál is egymással. Abban az esetben ha nem működne elsőre, akkor nem kell más tenned mint újraindítani (USB-t kihúzni/ áramtalanítani) az Arduinot.
7. Megvalósítás
Letöltés
Megjegyzések
Megjegyzés küldése