Mundarija:

Arduino LCD yong'in xavfsizligi haqida ogohlantirish tizimi: 9 qadam
Arduino LCD yong'in xavfsizligi haqida ogohlantirish tizimi: 9 qadam

Video: Arduino LCD yong'in xavfsizligi haqida ogohlantirish tizimi: 9 qadam

Video: Arduino LCD yong'in xavfsizligi haqida ogohlantirish tizimi: 9 qadam
Video: Arduino LCD I2C - Tutorial with Arduino Uno 2024, Iyul
Anonim
Arduino LCD yong'in xavfsizligi haqida ogohlantirish tizimi
Arduino LCD yong'in xavfsizligi haqida ogohlantirish tizimi
Arduino LCD yong'in xavfsizligi haqida ogohlantirish tizimi
Arduino LCD yong'in xavfsizligi haqida ogohlantirish tizimi
Arduino LCD yong'in xavfsizligi haqida ogohlantirish tizimi
Arduino LCD yong'in xavfsizligi haqida ogohlantirish tizimi

Bu LCD displey, ovozli signal, RGB va DHT harorat sensori funktsiyalarini birlashtirgan talabalar tomonidan tayyorlangan loyiha.

Hozirgi atrof -muhit harorati LCD displeyda aks ettiriladi va yangilanadi.

LCD displeyda bosilgan xabar foydalanuvchiga "yong'in xavfi" darajasi haqida ma'lumot beradi.

Foydalanuvchi xavf haqida ogohlantirish uchun ekran xira va miltillaydi.

Hozirgi xavf darajasiga qarab foydalanuvchini xavf haqida ogohlantirish uchun ovozli signal balandroq va tezroq bo'ladi.

RGB hozirgi xavf darajasiga qarab yashil, sariq, to'q sariq va qizil ranglarni o'zgartiradi.

Professional ko'rinishga ega bo'lish uchun 3D bosma muhafazaga qo'yish mumkin.

Bu odamlarning haqiqiy yong'in muammosini hal qiladi, qachonki yong'in xavfi borligini, kech bo'lguncha

1 -qadam: materiallarni yig'ish

Materiallarni yig'ish
Materiallarni yig'ish
Materiallarni yig'ish
Materiallarni yig'ish
Materiallarni yig'ish
Materiallarni yig'ish

Loyihada ishlatiladigan materiallar:

1x LCD displey

1x DHT_11 harorat sensori

1x RGB

1x Piezo passiv buzzer 1.0v

2x kichik non paneli

3x standart rezistorlar

1x Oddiy o'lchamli non paneli

1 ta Arduino UNO

Simlarni joyiga qulflash uchun Bluetack.

Turli uchli simlarning assortimenti, ham ochiq, ham yakka.

Kodni ishga tushiradigan qurilma

Agar siz tashqi qobiq va jilo ko'rinishini xohlasangiz, 3D printerga kiring

2 -qadam: elektron jadvallarni sozlash

Elektron jadvallarni sozlash
Elektron jadvallarni sozlash
Elektron jadvallarni sozlash
Elektron jadvallarni sozlash

1. Arduino kartasida "GND" deb yozilgan pimdan to'q sariq simni ulang va uni non paneli salbiy tomoniga (ko'k) ulang. Shu vaqtdan boshlab, agar biz GND -ni har qanday tashqi qurilmalar uchun ishlatishimiz kerak bo'lsa, biz ularni xuddi shu taxtadagi ustunga qo'yamiz.

2. Qizil simni Arduino kartasida "5V" deb belgilangan pimdan ulang va uni taxtaning musbat (qizil) tomoniga ulang. Shu vaqtdan boshlab, agar biz har qanday tashqi qurilmalar uchun 5Vdan foydalanishimiz kerak bo'lsa, biz ularni xuddi shu ustunga joylashtiramiz.

3 -qadam: LCD displeyni sozlash

LCD displeyni sozlash
LCD displeyni sozlash
LCD displeyni sozlash
LCD displeyni sozlash
LCD displeyni sozlash
LCD displeyni sozlash

1. Taxtani teskari o'girib, chap tomonidagi barcha pimlarni aylantiring.

2. Yuqori pinli qatorning yuqori chap burchagidan 5 -simni ulang va uni Arduino UNO 4 -sonli piniga ulang.

3. Yuqori pinli qatorning yuqori chap burchagidan 6 -simni ulang va uni Arduino UNO -dagi 5 -pinli pin bilan ulang.

4. Yuqori pinli qatorning yuqori chap burchagidan 7 -simni ulang va uni Arduino UNO -dagi 6 -pinli pin bilan ulang.

5. Yuqori pinli qatorning yuqori chap burchagidan 8 -simni ulang va uni Arduino UNO 7 -sonli piniga ulang.

6. Yuqori pinli qatorning yuqori chap burchagidan 9 -simni ulang va uni Arduino UNO 8 -raqamli piniga ulang.

7. Yuqori pim qatorining yuqori chap burchagidan 10 -simni ulang va uni Arduino UNO 9 -sonli piniga ulang.

8. Pastki o'ngdan 3 -simni ulang va uni non panelidagi 5V -qatorga ulang

9. Pastki o'ngdan 4 -simni ulang va uni non panelidagi GND qatoriga ulang

RASMLARNI DAVLAT DIAGRAMI har xil LCD displeyni ko'rsatadi

4 -qadam: Piezo Buzzer -ni sozlash

Piezo Buzzer -ni sozlash
Piezo Buzzer -ni sozlash
Piezo Buzzer -ni sozlash
Piezo Buzzer -ni sozlash
Piezo Buzzer -ni sozlash
Piezo Buzzer -ni sozlash
Piezo Buzzer -ni sozlash
Piezo Buzzer -ni sozlash

1. Buzzerdagi GND pinidan simni non panelidagi GND ustuniga (Moviy) ulang

2. Zimordagi VCC pinidan simni non panelidagi 5V ustuniga (Qizil) ulang

3. Ziguldagi SIG pinidan simni arduino UNO kartasidagi "10" raqamli pinga ulang.

DAVLAT DIAGRAMI BUZZERNI BOSHQA KO'RSATADIGAN, yuqoridagi rasmlarni ko'ring.

5 -qadam: DHT harorat sensori o'rnatish

DHT harorat sensori o'rnatish
DHT harorat sensori o'rnatish
DHT harorat sensori o'rnatish
DHT harorat sensori o'rnatish
DHT harorat sensori o'rnatish
DHT harorat sensori o'rnatish
DHT harorat sensori o'rnatish
DHT harorat sensori o'rnatish

1. DHT sensorini non panelida yuqorida ko'rsatilgan tarzda o'rnating

2. DHT datchigining chap tomonidagi birinchi pinni (qism diagrammasida VCC bilan belgilangan) non panelidagi 5V ustuniga (Qizil) ulang.

3. DHT datchigining chap tomonidagi ikkinchi pimni (qism diagrammasida etiketli DATA) Arduino UNO -ning A0 portiga ulang.

4. DHT sensori o'ng qismidagi birinchi pinni (qism diagrammasida GND yorlig'i) non panelidagi GND ustuniga (Moviy) ulang.

5. Qo'llanmani tomosha qiling va ko'rsatma oxirida topilgan dht.h kutubxonasini Arduino -ga qo'shing. (Bu majburiy)

6 -qadam: RGB -ni sozlash

RGB -ni sozlash
RGB -ni sozlash
RGB -ni sozlash
RGB -ni sozlash
RGB -ni sozlash
RGB -ni sozlash
RGB -ni sozlash
RGB -ni sozlash

1. RGB -ni yuqorida ko'rsatilgandek kichik taxtaga joylashtiring, RGB -ning chap tomonidagi ikkinchi oyog'iga boshqa uchiga qaraganda bir uyaga yaqinroq joylashtiring.

2. Standart rezistorlarni birinchi, uchinchi va to'rtinchi pinlarga joylashtiring. Yana kamida bitta sim uchun joy qoldiring (yuqorida ko'rsatilganidek).

3. RGB ning chap pinidagi rezistorning orqasidan simni Arduino UNO -dagi Labeled 2 piniga ulang.

4. RGB ning chap pinidan tashqi sekundning orqasidan, non paneli GND (ko'k) ustuniga simni ulang.

5. RGB o'ng pinidan ikkinchisidagi rezistorning orqasidan simni Arduino UNO -dagi 1 -etiketli pinga ulang.

6. RGB o'ng pinidagi rezistor orqasidagi simni Arduino UNO -dagi 3 -yorliqli pinga ulang.

7 -qadam: ixtiyoriy 3D bosma korpus

Majburiy bo'lmagan 3D bosma korpus
Majburiy bo'lmagan 3D bosma korpus
Majburiy bo'lmagan 3D bosma korpus
Majburiy bo'lmagan 3D bosma korpus
Majburiy bo'lmagan 3D bosma korpus
Majburiy bo'lmagan 3D bosma korpus

1. 3D bosib chiqarish bo'yicha qo'llanmani toping.

2. Autodesk Fusion 360 (.stl fayli) da quyida biriktirilgan dizaynni chop eting.

3. Haddan tashqari 3D materialni qirib tashlang va sirtini tekislang

4. Arduino qismlarini qaerga joylashtirish bo'yicha ko'rsatma olish uchun yuqoridagi rasmga qarang.

8 -qadam: Kod va fayllar

Kod va fayllar
Kod va fayllar

-DHT.h kutubxonasi biriktirilgan. (UNZIP)

-To'liq sharhlar bilan kod ilova qilingan, lekin keyingi bosqichda.

-3D korpus uchun.stl fayli biriktirilgan

-O'chirish sxemasi yana biriktirilgan. LCD displey va piezo signalining haqiqiy qadamlariga murojaat qilganingizga ishonch hosil qiling, chunki har xil komponentlar ishlatilgan.

9 -qadam: Arduino kodi

Arduino kodi
Arduino kodi
Arduino kodi
Arduino kodi

// LCD YO'NG'INI OGOHLANTIRISH TIZIMI // DHT harorat pinidan kirishni o'qiydi va uning issiq yoki issiq emasligiga qarab, foydalanuvchi yong'in xavfi borligini ko'rsatish uchun rgb va karnayni o'zgartiradi. // Shuningdek, LCD displeyda haroratni ko'rsatadi.

// DHT -ni sozlash

#include // DHT kutubxonasini qo'shing

#define dht_dpin A0 // Kengashga DHT pinining analog analog 0da ekanligini bildiradi

DHT bilan; // dht = DHT

// suyuq kristall o'rnatish

#include // Suyuq kristal kutubxonasini qo'shing

LiquidCrystal lcd (8, 9, 4, 5, 6, 7); // LCD -ga qisqartirish /LCD -ni qaysi port egallashini arduino -ga bildiradi

// RGB + BUZZERni ta'riflash

#define redpin 1 // 1 -portdagi RGB redpinini belgilaydi

#define greenpin 2 // 2 -portdagi RGB ning yashil nuqtasini belgilaydi

#delein bluepin 3 // 3 -portdagi RGB sxemasini aniqlaydi

#define buzzerpin 10 // 10 -portdagi signal signalini belgilaydi

// O'zgaruvchan/S.

int temp = analogRead (DHT.temperature); // DHT.temperatur buyrug'ining qiymati bo'lgan butun sonli "temp" ni o'rnatadi

bo'sh o'rnatish () {

// Chiqish/Kirish

analogWrite (redpin, OUTPUT); // Redpinni Chiqish sifatida e'lon qilish/aniqlash

analogWrite (greenpin, OUTPUT); // greenpinni Chiqish deb e'lon qilish/aniqlash

analogWrite (bluepin, OUTPUT); // Bluepinni Chiqish sifatida e'lon qilish/aniqlash

pinMode (buzzerpin, OUTPUT); // Buzzerpinni Chiqish sifatida e'lon qilish/aniqlash

// LCD ekran

lcd.begin (16, 2); // LCD displeyni 16 ustun va 2 qator sifatida belgilang}

void loop () {

// O'zgaruvchanliksiz LCD kod

DHT.read11 (dht_dpin); // dht_dpin kirishini ham o'qing (A0)

lcd.setCursor (0, 0); // Kursorni 0 -ustunga, 0 -qatorga o'rnatadi

lcd.print ("Bu"); // LCD displeyda "Bu" deb yozadi

lcd.print (DHT harorati); // DHT.temperatura qiymatini DHT pinidan 0 -ustunda, 0 -qatorda chop etadi

lcd.print (""); // Haroratdan keyin bo'sh joyni bosib chiqaradi

lcd.print ((char) 223); // haroratdan keyin daraja belgisini bosib chiqaradi

lcd.print ("C"); // Selsiyni anglatuvchi daraja belgisidan keyin "c" ni bosadi

// LCD displey

lcd.setCursor (0, 1); // Kursorni 0 -ustunga, 1 -qatorga o'rnatadi

lcd.noDisplay ();

lcd.print ("Yong'in xavfi yo'q"); // "Yong'in ehtimoli yo'q" yozuvi

lcd.noDisplay (); // LCD displeyni o'chiradi (chirog'ning bir qismi)

kechikish (1000); // 1 soniya o'chadi

lcd.display (); // LCD displeyni qayta yoqadi

kechikish (1000); // 1 soniya yonadi

// RGB + BUZZER kodi

analogWrite (redpin, 0); // Qizil pimdan chiqish yo'q

analogWrite (greenpin, 255); // greenpin -dan 255 chiqish (RGB -ni yashil qiladi)

analogWrite (bluepin, 0); // Moviy pimdan chiqish yo'q

ohang (buzzerpin, 20, 20); // // Buzzerdan 0,02 soniya davomida 20 gerts chastotasini chiqaradi

// TEMP 25-30 bo'lsa

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

lcd.clear (); // LCD displeyni tozalaydi

lcd.setCursor (0, 1); // Kursorni 0 -ustunga, 1 -qatorga o'rnatadi

lcd.print ("Kichik ogohlantirish"); // "Kichik ogohlantirish" 0 -ustunda, 1 -qatorda chop etiladi

lcd.noDisplay (); // LCD displeyni o'chiradi (chirog'ning bir qismi)

kechikish (1000); // 1 soniya o'chadi

lcd.display (); // LCD displeyni qayta yoqadi

kechikish (1000); // 1 soniya yonadi

analogWrite (redpin, 255); // redpindan 255 chiqish (RGBni sariq qiladi)

analogWrite (greenpin, 255); // greenpindan 255 chiqish (RGB sariq rangga aylanadi)

analogWrite (bluepin, 0); // Moviy pimdan chiqish yo'q

ohang (buzzerpin, 200, 100); // 200 gers chastotasi signal signalidan 0,1 soniya davomida chiqadi

kechikish (300); //.3 Ikkinchi kechikish

} // IF TEMP 31-37 bo'lsa, if ((int (DHT.temperature) = 37.00)) {

lcd.clear (); // LCD displeyni tozalaydi

lcd.setCursor (0, 1); // Kursorni 0 -ustunga, 1 -qatorga o'rnatadi

lcd.print ("O'rta ogohlantirish"); // 0 -ustunning 1 -qatorida "O'rta ogohlantirish" ni chop etadi

lcd.noDisplay (); // LCD displeyni o'chiradi (chirog'ning bir qismi)

kechikish (500); // 0,5 soniya o'chadi

lcd.display (); // LCD displeyni qayta yoqadi

kechikish (500); // 0,5 soniya yonadi

analogWrite (redpin, 255); // redpindan 255 chiqish (RGB to'q sariq rangda)

analogWrite (greenpin, 165); // greenpindan 165 chiqish (RGB to'q sariq rangga aylanadi)

analogWrite (bluepin, 0); // Bluepindan chiqish yo'q

ohang (buzzerpin, 500, 900); // Buzzerdan 0,9 soniya davomida 500 gerts chastotasi

kechikish (300); //.3 Ikkinchi kechikish

} // TEMP 38-100 BO'LSA

aks holda ((int (DHT.temperature) = 100.00)) {

lcd.clear (); // LCD displeyni tozalaydi

lcd.setCursor (0, 1); // Kursorni 0 -ustunga, 1 -qatorga o'rnatadi

lcd.print ("000 ga qo'ng'iroq qiling"); // 0 -ustun, 1 -qatorda "000 raqamiga qo'ng'iroq qiling" yozuvi

lcd.noDisplay (); // LCD displeyni o'chiradi (chirog'ning bir qismi)

kechikish (250); // 0,25 soniya davomida o'chadi

lcd.display (); // LCD displeyni qayta yoqadi

kechikish (250); // 0,25 soniya yonadi

analogWrite (redpin, 255); // redpindan 255 chiqish (RGBni qizil qiladi)

analogWrite (greenpin, 0); // greenpin -dan chiqish yo'q

analogWrite (bluepin, 0); // Bluepindan chiqish yo'q

ohang (buzzerpin, 1000, 900); // Zil signalidan 0,9 soniya davomida 1000 gerts chastotasi

kechikish (300); //.3 Ikkinchi kechikish

}}

Tavsiya: