Turinys:

„Arduino“LCD įspėjimo apie priešgaisrinę saugą sistema: 9 žingsniai
„Arduino“LCD įspėjimo apie priešgaisrinę saugą sistema: 9 žingsniai

Video: „Arduino“LCD įspėjimo apie priešgaisrinę saugą sistema: 9 žingsniai

Video: „Arduino“LCD įspėjimo apie priešgaisrinę saugą sistema: 9 žingsniai
Video: Текстовые LCD дисплей на контроллере HD44780, Уроки Arduino 2024, Lapkritis
Anonim
„Arduino“LCD įspėjimo apie priešgaisrinę saugą sistema
„Arduino“LCD įspėjimo apie priešgaisrinę saugą sistema
„Arduino“LCD įspėjimo apie priešgaisrinę saugą sistema
„Arduino“LCD įspėjimo apie priešgaisrinę saugą sistema
„Arduino“LCD įspėjimo apie priešgaisrinę saugą sistema
„Arduino“LCD įspėjimo apie priešgaisrinę saugą sistema

Tai studentų sukurtas projektas, apimantis LCD ekrano, garso signalo, RGB ir DHT temperatūros jutiklio funkcijas.

Esama aplinkos temperatūra rodoma ir atnaujinama LCD ekrane.

LCD ekrane išspausdintas pranešimas informuoja vartotoją apie „gaisro pavojaus“lygį.

Ekranas pritemsta ir mirksi, kad įspėtų vartotoją apie pavojų.

Garsinis signalas tampa garsesnis ir greitesnis, kad įspėtų vartotoją apie pavojų, atsižvelgiant į esamos rizikos lygį.

RGB keičiasi žalia, geltona, oranžinė ir raudona spalva, priklausomai nuo esamos rizikos lygio.

Galima įdėti į 3D spausdintą korpusą, kad atrodytų profesionaliau.

Tai išsprendžia realaus pasaulio problemą, kai žmonės nežino, kada kyla gaisro pavojus, kol nevėlu

1 žingsnis: Surinkite medžiagas

Surinkite medžiagas
Surinkite medžiagas
Surinkite medžiagas
Surinkite medžiagas
Surinkite medžiagas
Surinkite medžiagas

Šiame projekte naudojamos medžiagos:

1x LCD ekranas

1x DHT_11 temperatūros jutiklis

1x RGB

1x „Piezo Passive Buzzer 1.0v“

2x mažos duonos lentos

3x standartiniai rezistoriai

1x įprasto dydžio duonos lenta

1x „Arduino UNO“

„Bluetack“laidams užfiksuoti.

Įvairių galų laidų asortimentas, tiek atviras, tiek vienpusis.

Prietaisas, skirtas paleisti kodą

Prieiga prie 3D spausdintuvo, jei norite išorinio apvalkalo ir įmantresnės išvaizdos

2 veiksmas: nustatykite duonos lentas

Duonos lentų nustatymas
Duonos lentų nustatymas
Duonos lentų nustatymas
Duonos lentų nustatymas

1. Prijunkite oranžinę vielą nuo kaiščio, pažymėto „GND“ant „Arduino“plokštės, ir prijunkite prie neigiamos duonos plokštės pusės (mėlyna). Nuo šio momento, jei mums reikės naudoti GND bet kokiems išoriniams įrenginiams, mes tiesiog įdėsime juos į tą patį stulpelį kaip ir ant lentos.

2. Prijunkite raudoną laidą nuo kaiščio, pažymėto „5V“ant „Arduino“plokštės, ir prijunkite jį prie teigiamos (raudonos) duonos lentos pusės. Nuo šio momento, jei mums reikės naudoti 5 V bet kokiems išoriniams įrenginiams, mes tiesiog įdėsime juos į tuos pačius stulpelius, esančius ant duonos lentos.

3 žingsnis: LCD ekrano nustatymas

LCD ekrano nustatymas
LCD ekrano nustatymas
LCD ekrano nustatymas
LCD ekrano nustatymas
LCD ekrano nustatymas
LCD ekrano nustatymas

1. Apverskite lentą taip, kad ji būtų apversta aukštyn kojomis, o visi smeigtukai būtų kairėje pusėje.

2. Prijunkite laidą 5 iš viršutinės kairės viršutinės kaiščių eilės ir prijunkite jį prie 4 kaiščio „Arduino UNO“.

3. Prijunkite laidą 6 iš viršutinės kairės viršutinės kaiščių eilės ir prijunkite jį prie 5 kaiščio „Arduino UNO“.

4. Prijunkite laidą 7 iš viršutinės kairės viršutinės kaiščių eilės ir prijunkite jį prie 6 kaiščio „Arduino UNO“.

5. Prijunkite laidą 8 iš viršutinės kairės viršutinės kaiščių eilės ir prijunkite jį prie 7 kaiščio „Arduino UNO“.

6. Prijunkite laidą 9 iš viršutinės kairės viršutinės kaiščių eilės ir prijunkite jį prie 8 kaiščio „Arduino UNO“.

7. Prijunkite laidą 10 iš viršutinės kairės viršutinės kaiščių eilės ir prijunkite jį prie 9 kaiščio „Arduino UNO“.

8. Prijunkite laidą 3 iš apačios dešinės ir prijunkite jį prie 5V eilutės, esančios ant duonos lentos

9. Prijunkite laidą 4 iš apatinio dešiniojo krašto ir prijunkite jį prie GND Eilutės, esančios ant lentos

VAIZDUS ŽIŪRĖKITE, KAIP GRANDINĖS DIAGRAMOS RODYTI SKIRTINGUS LCD

4 žingsnis: „Piezo Buzzer“nustatymas

„Piezo Buzzer“nustatymas
„Piezo Buzzer“nustatymas
„Piezo Buzzer“nustatymas
„Piezo Buzzer“nustatymas
„Piezo Buzzer“nustatymas
„Piezo Buzzer“nustatymas
„Piezo Buzzer“nustatymas
„Piezo Buzzer“nustatymas

1. Prijunkite laidą iš garsinio signalo GND kaiščio prie duonos lentos GND stulpelio (mėlyna)

2. Prijunkite laidą nuo garsinio signalo VCC kaiščio prie 5V stulpelio (raudona) ant duonos lentos

3. Prijunkite laidą nuo garso signalo SIG kaiščio prie kaiščio, pažymėto „10“ant arduino UNO plokštės

ŽIŪRĖTI VAIZDUS, KURIŲ SKYRIŲ DIAGRAMA RODO SKIRTINGĄ BUZZERĮ

5 žingsnis: DHT temperatūros jutiklio nustatymas

DHT temperatūros jutiklio nustatymas
DHT temperatūros jutiklio nustatymas
DHT temperatūros jutiklio nustatymas
DHT temperatūros jutiklio nustatymas
DHT temperatūros jutiklio nustatymas
DHT temperatūros jutiklio nustatymas
DHT temperatūros jutiklio nustatymas
DHT temperatūros jutiklio nustatymas

1. Nustatykite DHT jutiklį duonos lentelėje, kaip parodyta aukščiau

2. Prijunkite pirmąjį kaištį kairėje DHT jutiklio dalyje (dalių schemoje pažymėtas VCC) prie 5V stulpelio (raudonas) ant lentos.

3. Prijunkite antrąjį kaištį kairėje DHT jutiklio (dalių diagramoje pažymėtas DATA) prie „Arduino UNO“A0 prievado

4. Prijunkite pirmąjį kaištį DHT jutiklio dešinėje (dalių diagramoje pažymėtas GND) prie duonos lentos GND stulpelio (mėlyna)

5. Žiūrėkite mokymo programą ir pridėkite dht.h biblioteką, kurią rasite instrukcijos pabaigoje, prie „Arduino“. (Tai yra privaloma)

6 veiksmas: RGB nustatymas

RGB nustatymas
RGB nustatymas
RGB nustatymas
RGB nustatymas
RGB nustatymas
RGB nustatymas
RGB nustatymas
RGB nustatymas

1. Įdėkite RGB į mažą duonos lentą, kaip parodyta aukščiau, pabrėždami, kad antroji koja iš kairės RGB yra viena anga arčiau nei kitos trys

2. Ant pirmojo, trečiojo ir ketvirtojo kaiščių uždėkite standartinius rezistorius. Palikite vietos dar bent vienam laidui (kaip parodyta aukščiau).

3. Prijunkite laidą iš už rezistoriaus, esančio kairiajame RGB kaištyje, prie kaiščio, pažymėto 2 ant „Arduino UNO“

4. Prijunkite laidą, esantį už užpakalinės sekundės nuo kairiojo RGB kaiščio, prie duonos lentos GND (mėlyna) stulpelio.

5. Prijunkite laidą iš už rezistoriaus antrojo iš dešiniojo RGB kaiščio prie kaiščio, pažymėto 1 ant „Arduino UNO“

6. Prijunkite laidą iš už rezistoriaus, esančio dešinėje RGB kaiščio pusėje, prie kaiščio, pažymėto 3 ant „Arduino UNO“

7 žingsnis: pasirenkamas 3D spausdinimo korpusas

Neprivalomas 3D spausdinimo korpusas
Neprivalomas 3D spausdinimo korpusas
Neprivalomas 3D spausdinimo korpusas
Neprivalomas 3D spausdinimo korpusas
Pasirenkamas 3D spausdinimo korpusas
Pasirenkamas 3D spausdinimo korpusas

1. Raskite 3D spausdinimo pamoką.

2. Atspausdinkite žemiau pateiktą dizainą, pagamintą naudojant „Autodesk Fusion 360“(.stl failą)

3. Nubraukite 3D medžiagos perteklių ir išlyginkite paviršių

4. Žiūrėkite aukščiau pateiktą paveikslėlį, kur rasite nurodymus, kur dėti „Arduino“dalis.

8 žingsnis: kodas ir failai

Kodas ir failai
Kodas ir failai

-DHT.h biblioteka pridedama. (UNZIP)

-Kodeksas su išsamiais komentarais pridedamas, bet taip pat yra kitame žingsnyje.

-Pridedamas 3D korpuso.stl failas

-Grandinės schema vėl pridedama. Būtinai atsižvelkite į faktinius LCD ekrano ir pjezo garsinio signalo veiksmus, nes buvo naudojami skirtingi komponentai.

9 veiksmas: „Arduino“kodas

Arduino kodas
Arduino kodas
Arduino kodas
Arduino kodas

// LCD GAISRO ĮSPĖJIMO SISTEMA // Skaito įvestį iš DHT temperatūros kaiščio ir priklausomai nuo to, ar ji karšta, ar ne, pakeičia rgb ir garsiakalbį, kad vartotojas nurodytų, ar jiems kyla gaisro pavojus. // Taip pat rodo temperatūrą LCD ekrane.

// DHT SETUP

#include // Įtraukti DHT biblioteką

#define dht_dpin A0 // Praneša lentai, kad DHT kaištis yra analoginėje įvestyje 0

dht DHT; // dht = DHT

// SKYSTŲ KRISTALŲ NUSTATYMAS

#include // Įtraukti skystųjų kristalų biblioteką

„LiquidCrystal lcd“(8, 9, 4, 5, 6, 7); // Sutrumpinkite iki LCD /nurodo arduino, kokius prievadus užima LCD

// RGB + BUZZER APIBRĖŽIMAS

#define redpin 1 // Apibrėžia RGB redpin 1 prievade

#define greenpin 2 // Apibrėžia RGB žaliosios smeigtuko prievadą 2

#define bluepin 3 // Apibrėžia RGB mėlynąją smeigtuką 3 prievade

#define buzzerpin 10 // Apibūdina „buzzerpin“10 prievade

// KINTAMAS/S

int temp = analogRead (DHT.temperatūra); // Nustato sveikąjį skaičių „temp“, kuris yra vertė iš komandos DHT.temperature

void setup () {

// OUTPUT/INPUT

analogWrite (redpin, OUTPUT); // Deklaruoti/apibrėžti „redpin“kaip išvestį

analogWrite (žalias smeigtukas, OUTPUT); // Deklaruoti/apibrėžti žalią kaištį kaip išvestį

analogWrite (mėlynasis smeigtukas, OUTPUT); // Deklaruoti/apibrėžti „bluepin“kaip išvestį

pinMode (garsinis signalas, OUTPUT); // Deklaruoti/apibrėžti „buzzerpin“kaip išvestį

// LCD EKRANAS

LCD. pradžia (16, 2); // Nustatykite LCD ekraną kaip 16 stulpelių ir 2 eilutes}

void loop () {

// LCD KODAS BE KINTAMUMO

DHT.read11 (dht_dpin); // Taip pat skaityti įvestį iš dht_dpin (A0)

lcd.setCursor (0, 0); // Nustato žymeklį į 0 stulpelį, 0 eilutę

lcd.print („Tai“); // LCD ekrane rašo „Tai“

lcd.print (DHT.temperatūra); // Spausdina DHT.temperatūros vertę iš DHT kaiščio 0 stulpelyje, 0 eilutėje

lcd.print (""); // Spausdina tarpą po temperatūros

lcd.print ((char) 223); // spausdina laipsnio ženklą po temperatūros

lcd.print ("C"); // Po laipsnių ženklo atspausdinama „c“, simbolizuojanti Celsijų

// LCD Blykstantis

lcd.setCursor (0, 1); // Nustato žymeklį į 0 stulpelį, 1 eilutę

lcd.noDisplay ();

lcd.print („Nėra gaisro pavojaus“); // Spausdina „Nėra ugnies galimybės“

lcd.noDisplay (); // Išjungia LCD ekraną (blykstės dalis)

uždelsimas (1000); // lieka 1 sekundę

lcd.display (); // Vėl įjungia LCD ekraną

uždelsimas (1000); // lieka 1 sekundę

// RGB + BUZZER KODAS

analogWrite (redpin, 0); // Nėra išvesties iš raudono kaiščio

analogWrite (žalias smeigtukas, 255); // 255 išvestis iš žalios smeigtuko (padaro RGB žalią)

analogWrite (mėlynas smeigtukas, 0); // Nėra išvesties iš mėlyno kaiščio

tonas („buzzerpin“, 20, 20); Skambučio signalas skleidžia 20 hercų dažnį 0,02 sekundės

// JEI TEMP 25-30

if ((int (DHT.temperatūra)> = 25.00) && (int (DHT.temperatūra) <= 30.00)) {

lcd.clear (); // Išvalo LCD ekraną

lcd.setCursor (0, 1); // Nustato žymeklį į 0 stulpelį, 1 eilutę

lcd.print („Mažas įspėjimas“); // Spausdina „Mažas įspėjimas“0 stulpelio 1 eilutėje

lcd.noDisplay (); // Išjungia LCD ekraną (blykstės dalis)

uždelsimas (1000); // lieka 1 sekundę

lcd.display (); // Vėl įjungia LCD ekraną

uždelsimas (1000); // lieka 1 sekundę

analogWrite (redpin, 255); // 255 išvestis iš „Redpin“(padaro RGB geltoną)

analogWrite (žalias smeigtukas, 255); // 255 išvestis iš žalios smeigtuko (padaro RGB geltoną)

analogWrite (mėlynas smeigtukas, 0); // Nėra išvesties iš mėlyno kaiščio

tonas („buzzerpin“, 200, 100); // Iš garsinio signalo skleidžia 200 hercų dažnį 0,1 sekundės

vėlavimas (300); //.3 Antrasis delsimas

} // IF TEMP IS 31-37 else if ((int (DHT.temperature) = 37.00)) {

lcd.clear (); // Išvalo LCD ekraną

lcd.setCursor (0, 1); // Nustato žymeklį į 0 stulpelį, 1 eilutę

lcd.print („Vidutinis įspėjimas“); // Spausdina „Vidutinis įspėjimas“0 stulpelio 1 eilutėje

lcd.noDisplay (); // Išjungia LCD ekraną (blykstės dalis)

uždelsimas (500); // lieka 0,5 sekundės

lcd.display (); // Vėl įjungia LCD ekraną

uždelsimas (500); // lieka 0,5 sekundės

analogWrite (redpin, 255); // 255 išvestis iš „Redpin“(daro RGB oranžinę)

analogWrite (žalias smeigtukas, 165); // 165 išvestis iš žalios smeigtuko (daro RGB oranžinę)

analogWrite (mėlynas smeigtukas, 0); // „Bluepin“išvesties nėra

tonas („buzzerpin“, 500, 900); // Skamba 500 hercų dažnis 0,9 sekundės nuo garsinio signalo

vėlavimas (300); //.3 Antrasis delsimas

} // JEI TEMP yra 38–100

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

lcd.clear (); // Išvalo LCD ekraną

lcd.setCursor (0, 1); // Nustato žymeklį į 0 stulpelį, 1 eilutę

lcd.print („Skambinti 000“); // Spausdina „Skambinti 000“0 stulpelio 1 eilutėje

lcd.noDisplay (); // Išjungia LCD ekraną (blykstės dalis)

uždelsimas (250); // lieka 0,25 sekundės

lcd.display (); // Vėl įjungia LCD ekraną

uždelsimas (250); // lieka 0,25 sekundės

analogWrite (redpin, 255); // 255 išvestis iš „Redpin“(daro RGB raudoną)

analogWrite (žalias smeigtukas, 0); // „Greenpin“išvesties nėra

analogWrite (mėlynas smeigtukas, 0); // Nėra išvesties iš „bluepin“

tonas („buzzerpin“, 1000, 900); // Iš garsinio signalo skleidžia 1000 hercų dažnį 0,9 sekundės

vėlavimas (300); //.3 Antrasis delsimas

}}

Rekomenduojamas: