Tartalomjegyzék:

Arduino LCD tűzbiztonsági figyelmeztető rendszer: 9 lépés
Arduino LCD tűzbiztonsági figyelmeztető rendszer: 9 lépés

Videó: Arduino LCD tűzbiztonsági figyelmeztető rendszer: 9 lépés

Videó: Arduino LCD tűzbiztonsági figyelmeztető rendszer: 9 lépés
Videó: Текстовые LCD дисплей на контроллере HD44780, Уроки Arduino 2024, November
Anonim
Arduino LCD tűzbiztonsági figyelmeztető rendszer
Arduino LCD tűzbiztonsági figyelmeztető rendszer
Arduino LCD tűzbiztonsági figyelmeztető rendszer
Arduino LCD tűzbiztonsági figyelmeztető rendszer
Arduino LCD tűzbiztonsági figyelmeztető rendszer
Arduino LCD tűzbiztonsági figyelmeztető rendszer

Ez egy diák által készített projekt, amely ötvözi az LCD képernyő, a hangjelző, az RGB és a DHT hőmérséklet -érzékelő funkcióit.

Az aktuális környezeti hőmérséklet megjelenik és frissül az LCD képernyőn.

Az LCD képernyőre nyomtatott üzenet tájékoztatja a felhasználót a "tűzveszély" szintjéről.

A képernyő elsötétül és villog, hogy figyelmeztesse a felhasználót a veszélyre.

A zümmögő hangosabb és gyorsabb lesz, és figyelmezteti a felhasználót a veszélyre, az aktuális kockázat szintjétől függően.

Az RGB zöld, sárga, narancssárga és piros színben változik az aktuális kockázat szintjétől függően.

A professzionálisabb megjelenés érdekében 3D nyomtatott házba helyezhető.

Ez megoldja a valós világ problémáját, amikor az emberek nem tudják, mikor van tűzveszély, amíg nem késő

Lépés: Gyűjtse össze az anyagokat

Gyűjtsön anyagokat
Gyűjtsön anyagokat
Gyűjtsön anyagokat
Gyűjtsön anyagokat
Gyűjtsön anyagokat
Gyűjtsön anyagokat

A projektben felhasznált anyagok:

1x LCD kijelző

1x DHT_11 hőmérséklet érzékelő

1x RGB

1x Piezo passzív hangjelző 1.0v

2x kicsi kenyeretábla

3x szabványos ellenállások

1x normál méretű kenyeretábla

1x Arduino UNO

Bluetack a vezetékek rögzítéséhez.

Különféle végű vezetékek választéka, nyitott és egyvégű.

Eszköz a kód futtatásához

Hozzáférés egy 3D nyomtatóhoz, ha a külső burkolatra és a letisztultabb megjelenésre vágyik

2. lépés: A kenyértáblák beállítása

A kenyértáblák beállítása
A kenyértáblák beállítása
A kenyértáblák beállítása
A kenyértáblák beállítása

1. Csatlakoztassa a narancssárga vezetéket az Arduino táblán lévő "GND" feliratú csapról, és csatlakoztassa a kenyérlap negatív oldalához (kék). Innentől kezdve, ha GND -t kell használnunk bármilyen külső eszközhöz, egyszerűen beírjuk őket ugyanabba az oszlopba.

2. Csatlakoztassa a piros vezetéket az Arduino táblán lévő "5V" feliratú csapról, és csatlakoztassa a kenyérlap pozitív (piros) oldalához. Innentől kezdve, ha 5 V -ot kell használnunk bármilyen külső eszközhöz, egyszerűen ugyanazokba az oszlopokba tesszük őket, ezt a kenyértáblán.

3. lépés: Az LCD kijelző beállítása

Az LCD kijelző beállítása
Az LCD kijelző beállítása
Az LCD kijelző beállítása
Az LCD kijelző beállítása
Az LCD kijelző beállítása
Az LCD kijelző beállítása

1. Fordítsa meg a táblát úgy, hogy fejjel lefelé nézzen, a bal oldalon lévő összes csapdal.

2. Csatlakoztasson egy 5 -ös vezetéket a bal felső sarokból a csapok felső sorában, és csatlakoztassa az Arduino UNO 4 -es számú tűjéhez.

3. Csatlakoztasson egy 6 -os vezetéket a bal felső sarokból a csapok felső sorában, és csatlakoztassa az Arduino UNO 5 -ös számú tűjéhez.

4. Csatlakoztasson egy 7 -es vezetéket a bal felső sarokból a csapok felső sorában, és csatlakoztassa az Arduino UNO 6 -os számú tűjéhez.

5. Csatlakoztasson egy 8 -as vezetéket a bal felső sarokból a csapok felső sorában, és csatlakoztassa az Arduino UNO 7 -es számú tűjéhez.

6. Csatlakoztasson egy 9 -es vezetéket a bal felső sarokban lévő csapok felső sorába, és csatlakoztassa az Arduino UNO 8 -as számú tűjéhez.

7. Csatlakoztasson egy 10 -es vezetéket a bal felső sarokból a csapok felső sorában, és csatlakoztassa az Arduino UNO 9 -es számú tűjéhez.

8. Csatlakoztasson egy vezetéket 3 a jobb alsó sarokból, és csatlakoztassa a kenyértábla 5 V -os sorához

9. Csatlakoztasson egy vezetéket 4 a jobb alsó sarokból, és csatlakoztassa a GND sorhoz a kenyértáblán

A KÉPEKET LÁTJA, HOGY A KÖRÁRÁNAK DIAGRÁMJA MÁS KÜLÖNBÖZŐ LCD -t MUTAT

4. lépés: A Piezo Buzzer beállítása

A Piezo Buzzer beállítása
A Piezo Buzzer beállítása
A Piezo Buzzer beállítása
A Piezo Buzzer beállítása
A Piezo Buzzer beállítása
A Piezo Buzzer beállítása
A Piezo Buzzer beállítása
A Piezo Buzzer beállítása

1. Csatlakoztasson egy vezetéket a zümmeren lévő GND csapból a kenyérsütő GND oszlopába (kék).

2. Csatlakoztasson egy vezetéket a zümmögő VCC tűjéről a kenyérfalon lévő 5 V oszlophoz (piros)

3. Csatlakoztasson egy vezetéket a zümmögő SIG érintkezőjéről az "arduino UNO" táblán lévő "10" jelű tűhöz.

LÁSD A KÉPEKET FELÜL, HOGY A ÁRAMKÖRDIAGRAM MÁS KÜLÖNBÖZŐ BUZZERET MUTAT

5. lépés: A DHT hőmérséklet -érzékelő beállítása

A DHT hőmérséklet -érzékelő beállítása
A DHT hőmérséklet -érzékelő beállítása
A DHT hőmérséklet -érzékelő beállítása
A DHT hőmérséklet -érzékelő beállítása
A DHT hőmérséklet -érzékelő beállítása
A DHT hőmérséklet -érzékelő beállítása
A DHT hőmérséklet -érzékelő beállítása
A DHT hőmérséklet -érzékelő beállítása

1. Állítsa be a DHT érzékelőt a kenyértáblába, a fenti ábra szerint

2. Csatlakoztassa a DHT -érzékelő bal oldalán található első tűt (az alkatrészdiagramon VCC felirat) a kenyérsütő 5V -os oszlopához (piros).

3. Csatlakoztassa a második tűt a DHT érzékelő bal oldalán (az alkatrészdiagramon címkézett DATA) az Arduino UNO A0 portjához

4. Csatlakoztassa a DHT érzékelő jobb oldalán található első tűt (az alkatrészdiagramon GND feliratú) a GND oszlophoz (kék) a kenyértáblán

5. Nézzen meg egy oktatóanyagot, és adja hozzá az utasítás végén található dht.h könyvtárat az Arduino -hoz. (Ez kötelező)

6. lépés: Az RGB beállítása

Az RGB beállítása
Az RGB beállítása
Az RGB beállítása
Az RGB beállítása
Az RGB beállítása
Az RGB beállítása
Az RGB beállítása
Az RGB beállítása

1. Helyezze az RGB -t egy kicsi kenyérsütő asztalra, a fentiek szerint, hangsúlyozva, hogy az RGB bal oldali második lába egy nyílással közelebb van, mint a másik három

2. Helyezzen szabványos ellenállásokat az első, harmadik és negyedik csapra. Hagyjon helyet még legalább egy vezetéknek (ahogy fent látható).

3. Csatlakoztasson egy vezetéket az ellenállás mögül az RGB bal tüskéjén az Arduino UNO 2 -es címkéjéhez.

4. Csatlakoztasson egy vezetéket az RGB bal oldali érintkezője mögötti másodperc mögül a kenyértábla GND (kék) oszlopához.

5. Csatlakoztasson egy vezetéket az ellenállás mögül a második oldalon az RGB jobb oldali csapjától az Arduino UNO 1 -es címkéjéhez.

6. Csatlakoztasson egy vezetéket az RGB jobb oldalán lévő ellenállás mögül az Arduino UNO 3 -as címkéjéhez.

7. lépés: Opcionális 3D nyomtatási ház

Opcionális 3D nyomtatási ház
Opcionális 3D nyomtatási ház
Opcionális 3D nyomtatási ház
Opcionális 3D nyomtatási ház
Opcionális 3D nyomtatási ház
Opcionális 3D nyomtatási ház

1. Keressen egy oktatóanyagot a 3D nyomtatásról.

2. Nyomtassa ki az alábbi mellékletet, amely Autodesk Fusion 360 -on készült (.stl fájl)

3. Kaparja le a felesleges 3D -s anyagot, és simítsa át a felületet

4. A fenti képen útmutatást talál az Arduino alkatrészek elhelyezéséhez.

8. lépés: A kód és a fájlok

A kód és a fájlok
A kód és a fájlok

-A DHT.h könyvtár mellékelve. (UNZIP)

-A kódex a részletes megjegyzésekkel együtt csatolva van, de a következő lépésről is szól.

-A 3D házhoz tartozó.stl fájl csatolva van

-A kapcsolási rajz ismét csatolva van. Győződjön meg arról, hogy az LCD képernyő és a piezo -zümmögő tényleges lépéseit a különböző alkatrészek használata során használja.

9. lépés: Arduino kód

Arduino kód
Arduino kód
Arduino kód
Arduino kód

// LCD TŰZFIGYELMEZTETŐ RENDSZER // Beolvassa a bemenetet a DHT hőmérséklet csapból, és attól függően, hogy forró -e vagy sem, megváltoztat egy rgb -t és hangszórót, hogy jelezze a felhasználónak, ha tűzveszélyes. // A hőmérsékletet is megjeleníti az LCD képernyőn.

// DHT SETUP

#include // A DHT könyvtár felvétele

#define dht_dpin A0 // Értesíti a táblát, hogy a DHT pin 0 analóg bemenetben van

dht DHT; // dht = DHT

// FOLYADÉK KRISTÁLY BEÁLLÍTÁSA

#include // A folyékony kristály könyvtár beillesztése

LiquidCrystal LCD (8, 9, 4, 5, 6, 7); // Rövidítés LCD -re /megmondja az arduino -nak, hogy mely portokat foglalja el az LCD

// RGB + BUZZER MEGHATÁROZÁSA

#define redpin 1 // Az RGB redpin meghatározása az 1 -es portban

#define greenpin 2 // Az RGB zöldtűjét határozza meg a 2 -es portban

#define bluepin 3 // Meghatározza az RGB kék tűjét a 3 -as portban

#define buzzerpin 10 // Meghatározza a zümmögést a 10 -es portban

// VÁLTOZÓ/S

int temp = analogRead (DHT.temperature); // Létrehozza a "temp" egész számot, amely a DHT.temperature parancsból származó érték

void setup () {

// KIMENET BEMENET

analogWrite (redpin, OUTPUT); // Redpin deklarálása/meghatározása kimenetként

analogWrite (zöld tű, OUTPUT); // Greenpin deklarálása/meghatározása kimenetként

analogWrite (bluepin, OUTPUT); // A bluepin deklarálása/meghatározása kimenetként

pinMode (zümmögő, OUTPUT); // A buzzerpin deklarálása/meghatározása kimenetként

// LCD KÉPERNYŐ

lcd. kezdet (16, 2); // Az LCD képernyő meghatározása 16 oszlopként és 2 sorként}

void loop () {

// LCD KÓD VÁLTOZÁS NÉLKÜL

DHT.read11 (dht_dpin); // A bemenet olvasása a dht_dpin -ből is (A0)

lcd.setCursor (0, 0); // A kurzort a 0 oszlop 0 sorára állítja

lcd.print ("Ez"); // Az "Ez" feliratot írja az LCD -képernyőre

lcd.print (DHT.temperature); // Kinyomtatja a DHT.hőmérséklet értékét a DHT csapból a 0. oszlop 0. sorában

lcd.print (""); // Szóközt nyomtat a hőmérséklet után

lcd.print ((char) 223); // a hőmérséklet után kinyomtatja a fokjelzést

lcd.print ("C"); // A "fok" jel után "c" betűt nyomtat a celsius jelképezésére

// LCD VILLOG

lcd.setCursor (0, 1); // A kurzort a 0 oszlop 1. sorába állítja

lcd.noDisplay ();

lcd.print ("Nincs tűzveszély"); // "Tűzveszély" kiírása

lcd.noDisplay (); // Kikapcsolja az LCD kijelzőt (a vaku része)

késleltetés (1000); // 1 másodpercig kikapcsol

LCD kijelzö(); // Az LCD kijelző visszakapcsolása

késleltetés (1000); // 1 másodpercig bekapcsolva marad

// RGB + BUZZER KÓD

analogWrite (redpin, 0); // Nincs kimenet a piros tűből

analogWrite (zöldtű, 255); // 255 kimenet a zöldtűből (zöld színűvé teszi az RGB -t)

analogWrite (bluepin, 0); // Nincs kimenet a kék tűből

hang (zümmögő, 20, 20); // 20 Hz -es frekvenciát bocsát ki 0,02 másodpercig a zümmerektől

// HA TEMP 25-30

if ((int (DHT.temperature)> = 25.00) && (int (DHT.temperature) <= 30.00)) {

lcd.clear (); // Törli az LCD képernyőt

lcd.setCursor (0, 1); // A kurzort a 0 oszlop 1. sorába állítja

lcd.print ("Kis riasztás"); // "Kis riasztást" nyomtat a 0. oszlop 1. sorába

lcd.noDisplay (); // Kikapcsolja az LCD kijelzőt (a vaku része)

késleltetés (1000); // 1 másodpercig kikapcsol

LCD kijelzö(); // Az LCD kijelző visszakapcsolása

késleltetés (1000); // 1 másodpercig bekapcsolva marad

analogWrite (redpin, 255); // 255 kimenet a redpin -től (sárga lesz az RGB)

analogWrite (zöldtű, 255); // 255 kimenet a zöld tűből (sárga lesz az RGB)

analogWrite (bluepin, 0); // Nincs kimenet a kék tűből

hang (zümmögő, 200, 100); // 200 hertz frekvenciát bocsát ki 0,1 másodpercre a hangjelzőből

késleltetés (300); //.3 Második késleltetés

} // HA A HŐMÉRSÉKLET 31-37, ha if ((int (DHT.temperature) = 37.00)) {

lcd.clear (); // Törli az LCD képernyőt

lcd.setCursor (0, 1); // A kurzort a 0 oszlop 1. sorába állítja

lcd.print ("Közepes riasztás"); // "Közepes riasztást" nyomtat a 0. oszlop 1. sorába

lcd.noDisplay (); // Kikapcsolja az LCD kijelzőt (a vaku része)

késleltetés (500); // 0,5 másodpercig kikapcsol

LCD kijelzö(); // Az LCD kijelző visszakapcsolása

késleltetés (500); // 0,5 másodpercig bekapcsolva marad

analogWrite (redpin, 255); // 255 kimenet a redpin -től (narancssárga színűvé teszi az RGB -t)

analogWrite (zöldtű, 165); // 165 kimenet a zöldtűből (narancssárga színűvé teszi az RGB -t)

analogWrite (bluepin, 0); // Nincs kimenet a bluepin -ből

hang (zümmögő, 500, 900); // 500 hertz frekvenciát bocsát ki 0,9 másodpercre a zümmerektől

késleltetés (300); //.3 Második késleltetés

} // HA A TEMP 38-100

else if ((int (DHT.temperature) = 100.00)) {

lcd.clear (); // Törli az LCD képernyőt

lcd.setCursor (0, 1); // A kurzort a 0 oszlop 1. sorába állítja

lcd.print ("Hívás 000"); // "Hívás 000" -et nyomtat a 0. oszlop 1. sorába

lcd.noDisplay (); // Kikapcsolja az LCD kijelzőt (a vaku része)

késleltetés (250); // 0,25 másodpercig kikapcsol

LCD kijelzö(); // Az LCD kijelző visszakapcsolása

késleltetés (250); // 0,25 másodpercig marad bekapcsolva

analogWrite (redpin, 255); // 255 kimenet a redpin -ből (az RGB piros lesz)

analogWrite (zöldtű, 0); // Nincs kimenet a zöld tűből

analogWrite (bluepin, 0); // Nincs kimenet a bluepin -ből

hang (zümmögő, 1000, 900); // 1000 hertz frekvenciát bocsát ki 0,9 másodpercre a zümmerektől

késleltetés (300); //.3 Második késleltetés

}}

Ajánlott: