A Relé vezérlés HC-06 Bluetooth modullal – A telefonunkra telepített bluetooth soros monitoron keresztül vezérelhetjük a két csatornás relénket. Két üzemmód között kapcsolgatva használhatjuk. Az egyik üzemmód, amikor a mozgásérzékelő akív, a másik pedig amikor kézi vezérléssel egyesével kapcsolgatjuk a reléket. Az alapértelmezett állapot a passzív üzemmód, amikor a reléket bluetooth soros kapcsolaton keresztül az ‘1’ és a ‘2’ és a ‘0’ számok beírásával kapcsoljuk. Az ‘1’-esre az első relé kapcsol be, a ‘2’-esre a második relé kapcsol be, a ‘0’ küldésénél mind a két bekapcsolt relé kikapcsol. Értelemszerűen ha csak az egyik relé van csak bekapcsolva, akkor csak az kapcsol ki a másik relét nem billenti át az ellenkező állapotba. Aktív üzemmódba az ‘a’ betű küldésével kapcsolhatunk át. Ebben az üzemmódban az egyik relé mindig meghúzott állapotban van a másik relé pedig mindig elengedett állapotban. Ha mozgás van ez az állapot a negáltjára billen át. Ebből az üzemmódból a ‘p’ betű küldésével válthatunk vissza a passzív üzemmódba.
Ezt a kapcsolást, akkor érdemes használni, ha van egy aktív fényforrásunk és egy hangulatfény. Így mozgásérzékelővel is tudjuk kapcsolni vagy kézi vezérléssel.
A teszteléshez én a Bluetooth SPP nevű programot használtam. Amit a linkre kattintva a Google PLAY-ből le lehet tölteni. Ha megnyitjuk a google play linkjét, és átlapozzuk a programról készült képeket, akkor láthatjuk, hogy azon felül hogy a terminál monitor ablakban beírjuk és elküldjük a számokat és betűket, még akár saját nyomógombokat is konfigurálhatunk a „keyboard mode” menüponton belül. Itt megadhatjuk a gomb nevét és azt, hogy milyen karaktert küldjünk át a gomb lenyomására, a gomb nyomva tartására, és a felengedésére. Ezek a nyomógomb konfigurációk kilépéskor mentésre kerülnek.
Amikor megnyitjuk a programot, akkor első lépésben az aktív eszközöket keresi és listázza ki. Ha megjelenik a „HC-06” az eszközök között, akkor csatlakozzunk hozzá, és a párosításnál használjuk az „1234”-es vagy a „0000”-ás jelszót. Amennyiben megtörtént a párosítás válasszuk ki a számunkra ideális monitor módot és voila máris használhatjuk a kapcsolást arra amire akarjuk.
Relé vezérlés HC-06 Forráskód:
#include // Könyvtár beolvasása SoftwareSerial HC_06(10, 11); // RX, TX int relaypin=13; // A relé csatorna int relaypin2=12; // int motionpin=9; int motion_status; int motion_read; int active; int BluetoothData; // az adat ami érkezik void setup() { // Bluetooth serial beállítás HC_06.begin(9600); HC_06.println("Bluetooth Bekapcsolva"); // Relé pinek kimenetként való deklarálása pinMode(relaypin,OUTPUT); pinMode(relaypin2,OUTPUT); pinMode(motionpin,INPUT); digitalWrite(relaypin,0); digitalWrite(relaypin2,0); motion_status=LOW; motion_read=0; active=0; } void loop() { // Ha a bluetooth modul aktív if (HC_06.available()) { // Bluetooth serial adat beolvasás BluetoothData=HC_06.read(); if(BluetoothData == 'a') { active = 1; HC_06.println("Mozgásérzékelő aktív"); } if (BluetoothData=='p') { active = 0; HC_06.println("Mozgásérzékelő passzív"); digitalWrite(relaypin,0); digitalWrite(relaypin2,0); } while (active == 1) { BluetoothData=HC_06.read(); motion_read=digitalRead(motionpin); if (motion_read == HIGH) { digitalWrite(relaypin2,0); digitalWrite(relaypin,1); if (motion_status == LOW) { HC_06.println("Mozgás érzékelve"); motion_status = HIGH; } } else { digitalWrite(relaypin,0); digitalWrite(relaypin2,1); if (motion_status == HIGH) { HC_06.println("Mozgás vége"); motion_status = LOW; } } if (BluetoothData=='p') { active = 0; HC_06.println("Mozgásérzékelő passzív"); } } while (active == 0) { BluetoothData=HC_06.read(); if(BluetoothData=='1') { digitalWrite(relaypin,1); HC_06.println("1-es Relé bekapcsolva"); } if(BluetoothData=='2') { digitalWrite(relaypin2,1); HC_06.println("2-es Relé bekapcsolva"); } if (BluetoothData=='0') { digitalWrite(relaypin,0); digitalWrite(relaypin2,0); HC_06.println("1-es és 2-es Relé kikapcsolva"); } if (BluetoothData=='a') { active = 1; HC_06.println("Mozgásérzékelő aktív"); } } } delay(100); }
Termékek megvásárolható a webshopban: