Mindannyian ismerjük az „Automatizálás” szót, ahol az emberi interakció minimális, és a dolgok automatikusan vagy távolról irányíthatók. Az otthoni automatizálás nagyon népszerű és igényes koncepció az elektronika területén, és mindent megteszünk annak érdekében is, hogy ez a koncepció elektronikai projektként könnyen érthető és kezelhető legyen. Korábban többféle otthoni automatizálási projektet dolgoztunk ki működő videóval és kóddal, ellenőrizze:
- DTMF alapú otthoni automatizálás
- GSM alapú otthoni automatizálás Arduino segítségével
- PC vezérlésű otthoni automatizálás Arduino használatával
- Bluetooth vezérlésű otthoni automatizálás a 8051 segítségével
- IR távirányítású otthoni automatizálás Arduino segítségével
És ebben a projektben a következő otthoni automatizálási projektünket fogjuk megépíteni a MATLAB és az Arduino segítségével, amely GUI alapú otthoni automatizálási rendszer az Arduino és a MATLAB használatával
Alkatrészek:
- Arduino UNO
- USB kábel
- ULN2003
- 5 voltos relé
- Izzó tartóval
- Csatlakozó vezetékek
- Laptop
- Tápegység
- PVT
Munka magyarázat:
Ebben a projektben a MATLAB-t használjuk az Arduinóval a háztartási gépek vezérléséhez a számítógép grafikus felhasználói felületén keresztül. Itt vezetékes kommunikációt használtunk adatok küldéséhez a számítógépről (MATLAB) az Arduino felé. Számítógépes oldalon a GUI-t használtuk a MATLAB-ban, hogy létrehozzunk néhány gombot a háztartási gépek vezérléséhez. Az Arduino és a MATLAB közötti kommunikációhoz először telepítenünk kell a „ MATLAB és Simulink Support for Arduino ” vagy „ Arduino IO csomagot ”. Ehhez kövesse az alábbi lépéseket, vagy ellenőrizze az alábbi videót:
- Töltse le innen az Arduino IO csomagot. A letöltés előtt regisztrálnia kell.
- Ezután írja be / töltse fel az adioe.pde fájlt az Arduino-ba az Arduino IDE használatával. Ez az adioe.pde fájl az Arduino IO csomagban található - ArduinoIO \ pde \ adioe \ adioe.pde
- Ezután nyissa meg a MATLAB szoftvert, lépjen végig az Arduino IO mappán, nyissa meg az install_arduino.m fájlt, és futtassa a Matlab-ban. A MATLAB parancsablakában megjelenik egy „Arduino mappák hozzáadva az útvonalhoz” üzenet, ami azt jelenti, hogy a MATLAB elérési útja frissül az Arduino mappákra.
Így készítjük el az Arduinót, kommunikálunk a MATLAB-szal. A fenti módszer alkalmas a „MATLAB R2013b vagy korábbi verziókhoz”, ha a MATLAB magasabb verzióját használja (például R2015b vagy R2016a), akkor közvetlenül a MATLAB-ban kattintson a Kiegészítők fülre, majd kattintson a „Hardvertámogatási csomagok letöltése” gombra, ahonnan Arduino csomagokat telepíthet a MATLAB-hoz.
A fájlok telepítése után most létrehozhat egy GUI-t a Home Automation Project számára. Alapvetően a grafikus felhasználói felületen hozunk létre nyomógombokat a háztartási gépek számítógéppel történő vezérléséhez. A gombokat a MATLAB „Új” menüjének „Grafikus felhasználói felület” menüjével lehet létrehozni. Továbbá beállíthatjuk ezeknek a gomboknak a nevét és színeit, létrehoztunk 8 gombot, amelyekben hat be- és kikapcsolt három háztartási készüléket és két gombot az összes készülék be- és kikapcsolására egyszerre.
A gombok létrehozása után, amikor rákattint a Futtatás gombra az adott GUI ablakban, a rendszer kéri, hogy mentse ezt a GUI fájlt (.fig kiterjesztéssel), más néven ' fig fájl'. Amint elmentette a fájlt, automatikusan létrehoz egy kódfájlt (.m kiterjesztéssel), más néven „ M fájlt” (lásd az alábbi képernyőképet), ahová be tudja helyezni a Kódot (amely az alábbi Kód szakaszban található). A projekt GUI fájlját és Code fájlját innen töltheti le: Home_Automation_system.fig és Home_Automation_system.m (kattintson jobb gombbal, és válassza a Hivatkozás mentése másként… lehetőséget), vagy saját maga is létrehozhatja őket, amint azt elmagyaráztuk.
A kódolás után végre végre futtathatja az.m fájlt a kódablakból, a parancsablakban megjelenik a „Csatlakozás megkísérlése..” felirat. Ezután megjelenik egy „Arduino sikeresen összekapcsolva” üzenet, ha minden jól megy. És végül meglátja a korábban létrehozott GUI-t (gombokat) a GUI ablakban, ahonnan a számítógépen található gombokra kattintva vezérelheti a háztartási készülékeket. Győződjön meg arról, hogy az Arduino USB-kábelen keresztül csatlakozik-e az Arduino-hoz. Ebben a projektben 3 izzót használtunk bemutatásra, ami a ventilátort, a fényt és a tévét jelzi.
A teljes videó működése, az Arduino MATLAB támogatási csomag telepítésétől a készülék be- vagy kikapcsolásáig érthető a végén található videóban.
Áramkör magyarázat:
A projekt áramköre nagyon egyszerű. Itt Arduino UNO táblát és ULN2003 relé meghajtót használtunk a relék vezetéséhez. Három 5 voltos SPDT relé csatlakozik az Arduino 3-as, 4-es és 5-ös tűhöz az ULN2003 relé meghajtón keresztül a LIGHT, a FAN és a TV vezérléséhez.
Programozási magyarázat:
Amikor megnyomunk bármelyik gombot a GUI ablakban, akkor néhány parancsot elküld az Arduino-nak, majd az Arduino elvégzi ezt a műveletet. Az Arduino MATLAB IO támogatási csomag telepítése után ugyanazokat az Arduino függvényeket használva érhetjük el az Arduino-t a MATLAB-ból, némi kis változtatással, például:
A HIGH tű készítéséhez Arduino-ban digitalWrite- ként írunk kódot (pin, HIGH)
A MATLAB-ban ezt a függvényt egy olyan objektum vagy változó segítségével fogjuk használni, mint
és hasonlóképpen.
Ezt megelőzően inicializálnunk kell a következő változót:
Ebben a projektben nincs Arduino kód, kivéve az Arduino MATLAB támogatási csomag kódját vagy fájlt. Amint azt korábban kifejtettük, a kódfájl (.m fájl) automatikusan generálódik a GUI fájl (.fig fájl) mentése közben. Már van valamilyen kód. Alapvetően ezek a nyomógombok visszahívási funkciói, vagyis azt tudjuk meghatározni, hogy mi történjen ezekre a nyomógombokra kattintva.
A MATLAB kódban először inicializáljuk a soros portot, és egy változó segítségével objektummá tesszük. És akkor elkezdhetjük a programozást, mint az Arduino, a változó használatával.
tiszta ar; globális ar; ar = arduino ('COM13'); ar.pinMode (3, 'OUTPUT'); ar.pinMode (4, 'OUTPUT'); ar.pinMode (5, 'OUTPUT'); ar.pinMode (13, 'OUTPUT');
Az egyes gombok visszahívási funkciójába írtuk a kapcsolódó kódot az adott háztartási készülék be- vagy kikapcsolásához, az Arduino-hoz a relén keresztül csatlakozva. Például a Light ON visszahívási funkciója az alábbi:
függvény light_on_Callback (hObject, eventdata, handles)% hObject kezelése light_on (lásd GCBO)% eventdata fenntartva - a MATLAB jövőbeli verziójában definiálandó% handles struktúra fogantyúkkal és felhasználói adatokkal (lásd GUIDATA) globális ar; ar.digitalWrite (3, 1); ar.digitalWrite (13, 1);
Hasonlóképpen beírhatjuk a kódot az összes gomb visszahívási funkcióiba, a többi csatlakoztatott háztartási készülék vezérléséhez ellenőrizzük az alábbi MATLAB kódot (.m fájl).