Агуулгын хүснэгт:
- Алхам 1: эд анги
- Алхам 2: Өөр өөр хэсгүүдийг Arduino UNO -той холбох
- Алхам 3: Arduino кодууд
- Алхам 4: Хөтөлбөрийг нарийвчлан ойлгох
- Алхам 5: Зааварчилгааны жагсаалт
Видео: Гэрийн автоматжуулалт: Температур нь босго утгаас дээгүүр байх үед дохиолол, дэлгэцийг LCD дэлгэц дээр харуулна: 5 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:05
Энэхүү блог нь гэрийн автоматжуулалтын системийг хэрхэн яаж хийхийг харуулах бөгөөд температур нь програмчлагдсан босго утгаас хэтэрсэн үед дохиолол өгч эхэлдэг. Энэ нь өрөөний одоогийн температурыг LCD дээр харуулах бөгөөд температур нь босго утгаас хэтэрсэн үед шаардлагатай арга хэмжээг (жишээлбэл: Температурыг бууруулах) харуулна. Энэхүү гарын авлагад би Analog Devices болон AG-1005G Buzzer-ийн үйлдвэрлэсэн AD22100 температур мэдрэгчийг ашиглаж байна. AD22100 бол дохио тохируулагчтай хүчдэлийн гаралтын температур мэдрэгч юм
Алхам 1: эд анги
Энэхүү үл эвдэх ажлыг эхлүүлэхийн өмнө танд эдгээр хэсгүүд хэрэгтэй болно
1. Arduino UNO -ийн удирдах зөвлөл
2. LCD дэлгэц (16x2)
3. Дуугар - 2 зүү (AC -1005G)
4. Температур мэдрэгч - 3 зүү (AD22100)
Алхам 2: Өөр өөр хэсгүүдийг Arduino UNO -той холбох
Arduino UNO самбар бүхий LCD холболт
LCD RS Pin (Pin 4) нь Arduino хавтангийн 7 -р зүүтэй
LCD нь Pin (6 -р зүү) -ийг Arduino хавтангийн 8 -р зүүгээр идэвхжүүлнэ
LCD D4 зүү (Pin 11) нь Arduino хавтангийн 9 -р зүүтэй
LCD D5 зүү (12 -р зүү) нь Arduino хавтангийн 10 -р зүүтэй
LCD D6 зүү (Pin 13) нь Arduino хавтангийн 11 -р зүүтэй
LCD D7 зүү (14 -р зүү) нь Arduino хавтангийн 12 -р зүүтэй
10 KΩ савыг +5v (Pot Pin 1) ба GND (Pot Pin 3) дээр нэмж, Дундаж зүү (Pot Pin 2) -ийг LCD V0 Pin (Pin 3) руу холбоно уу.
LCD VDD Pin (Pin 2) ба LCD A Pin (Pin 15) нь Arduino самбар дээрх +5v.
LCD VSS зүү (Pin 1) ба LCD K зүү (Pin 16) нь Arduino самбар дээр GND -тэй.
AD22100 Температур мэдрэгчийн холболт Arduino UNO зөвлөлтэй
AD22100 -ийн 1 -р зүү (V +) нь Arduino самбар дээрх +5 v -тэй холбогдсон байх ёстой.
AD22100 -ийн 2 -р зүү (Vo) нь Arduino самбар дээрх A1 зүүтэй холбогдсон байх ёстой.
AD22100 -ийн 3 -р зүү (GND) нь Arduino самбар дээрх GND -тэй холбогдсон байх ёстой
Buzzer (AC-1005G) Arduino UNO зөвлөлтэй холбох
Arduino хавтангийн 6 -р ХОУХ -ны гаралтыг Buzzer -ийн +ve оролтод холбох ёстой.
Arduino Board -ийн GND нь Buzzer -ve оролттой холбогдсон байх ёстой
Алхам 3: Arduino кодууд
Үүнийг эмхэтгээд Arduino Board дээр байршуулаад гэрийн автоматжуулалтын системийн демог үзээрэй
// Хөтөлбөр эндээс эхэлнэ
int val;
int tempPin = A1;
int buzzer = 6;
#LiquidCrystal lcd (7, 8, 9, 10, 11, 12) оруулах;
хүчингүй тохиргоо () {
// нэг удаа ажиллуулахын тулд тохиргооны кодоо энд оруулна уу.
lcd.begin (16, 2);
lcd.clear ();
Цуваа эхлэх (9600);
pinMode (дуугаралт, гаралт);
}
void loop () {// давтан ажиллуулахын тулд үндсэн кодоо энд оруулна уу.
val = analogRead (tempPin); // AD22100 нь A1 Pin дээр холбогдсон байна
/*
*25С -ийн хувьд val нь 900 гэсэн утгатай ирдэг
* 900 нь 1.9375 v -тэй тохирч байна
* Дамжуулах функц нь (V +/5) * (1.375 + 22.5 mv/degC * 25 degC), * AD22100 мэдээллийн хуудсыг уншина уу
*/
float cel = (((((1.9375/900) * val) - 1.375) /22.5) * 1000;
float farh = (cel*9)/5 + 32;
Цуваа.хэвлэх (үнэ);
Serial.println ();
Serial.print ("TEMPRATURE =");
Serial.print (cel); Serial.print (“*C”);
Serial.println ();
хэрэв (cel> 26) {
ая (дуугаралт, 1000);
lcd.clear ();
lcd.print ("Босго давсан температур");
lcd.setCursor (0, 1);
lcd.print ("Температурыг бууруулах");
}
өөр
{noTone (дуугаралт);
lcd.clear ();
lcd.print ("Температур хяналтанд байна");
lcd.setCursor (0, 1);
lcd.print ("Temp =");
lcd.хэвлэх (cel);
lcd.print ("degC");
}
саатал (500);
}
// Хөтөлбөр энд дуусна
Алхам 4: Хөтөлбөрийг нарийвчлан ойлгох
Би кодын цөөн хэсгийг тайлбарлахыг хичээх болно.
If/else мэдэгдэлтэй холбоотой функцууд
Хэрэв температур нь босго утгаас их байвал би дохиолол өгч дохиолол өгч, кодын доорх хэсэгт температурыг бууруулахын тулд LCD дэлгэц дээр харуулна.
хэрэв (cel> 26)
{ая (дуугаралт, 1000);
lcd.clear ();
lcd.print ("Босго давсан температур");
lcd.setCursor (0, 1);
lcd.print ("Температурыг бууруулах");
}
Хэрэв тийм биш бол температурын одоогийн утгыг LCD дэлгэц рүү илгээж, температурыг харуулах болно.
өөр
{noTone (дуугаралт);
lcd.clear ();
lcd.print ("Температур хяналтанд байна");
lcd.setCursor (0, 1);
lcd.print ("Temp =");
lcd.хэвлэх (cel);
lcd.print ("degC");
}
Buzzer -тэй холбоотой функцууд
ая (дуугаралт, 1000) - энэ функц нь 1 кГц дохиог Pin 6 гэж тодорхойлсон дуут дохио руу илгээдэг бөгөөд 6 дугаар зүү дээр соронзон дохио холбогдсон байдаг. Тиймээс дуугаралт зогсох болно
Температур мэдрэгчтэй холбоотой функцууд
Температурын уншилтын аналог утгыг градус C болгон хөрвүүлэх ажлыг AD22100 мэдээллийн хүснэгтээс доор бичсэнийг олж мэдэх боломжтой дамжуулах функцийг ашиглан гүйцэтгэнэ.
Vout = (V +/5 V) × (1.375 V + 22.5 mV/° C × TA) ба ижил утгыг LCD дэлгэц дээр хэвлэнэ.
Алхам 5: Зааварчилгааны жагсаалт
Хөтөлбөрийг нэгтгэн Arduino UNO -ийн самбар дээр байршуулсны дараа
AD22100 температур мэдрэгчийн мэдрэх температурыг нэмэгдүүлэхийг оролдож, гэрийн автоматжуулалтын системийг эдлээрэй.
Мэдрэгчийн температурыг нэмэгдүүлэхийн тулд би лабораторид байгаа гагнуурын төмрөөр хүрч байна.
Та эндээс демо үзэх боломжтой.
Гэрийн автоматжуулалтын системийн демо
Зөвлөмж болгож буй:
Makita BL1813G батерей нь Makita сайтын радиогоор тохирохгүй байх үед: 6 алхам
Makita BL1813G батерей нь Makita сайтын радиод тохирохгүй байх үед: Makita Cordless 18V Li-Ion Combi Drill HP457D-ийн батерей нь сайтын радио холболтод тохирохгүй байгаа нь энэхүү өрмийн машиныг DIY дэлгүүрүүдэд зардагтай холбоотой юм. болон Amazon -ийг DIY ашиглахад зориулав. Би мэдээгүй болохоор энэ нь маш их ядаргаатай юм
DIY нь температурыг LCD дэлгэц дээр Arduino ашиглан харуулна: 10 алхам
DIY нь Arduino ашиглан температурыг LCD дэлгэц дээр харуулах: Энэ төсөлд бид Arduino, температур мэдрэгч гэх мэт зарим бүрэлдэхүүн хэсгүүдийг ашиглан хэлхээ хийх гэж байна. Энэ хэлхээнд зэрэглэлийг LCD дэлгэц дээр тасралтгүй харах болно, 100 миллисекундын хоцрогдолтой байна. дээрх шинэ зэрэглэлийн үзэл бодлын хооронд
Жижиг галын дохиолол илрүүлэгч Esp8266 MQTT IFTTT гэрийн автоматжуулалт: 4 алхам
Жижиг галын дохиолол илрүүлэгч Esp8266 MQTT IFTTT гэрийн автоматжуулалт: Би гэрийн утаа мэдрэгч систем түгшүүрт байгаа эсэхийг олж мэдэхийг хүссэн юм. Би гэртээ найман утаа илрүүлэгчтэй бөгөөд тэдгээр нь хоорондоо холбоотой. Хэрэв нэг утааны мэдрэгч түгшүүрт байгаа бол нөгөө нь хоорондоо холбогдсон дохионы утсаар дохио хүлээн авдаг. Миний мэдрэгч уншиж байна
I2C / IIC LCD дэлгэц - SPI LCD дэлгэцийг I2C LCD дэлгэц болгон хөрвүүлэх: 5 алхам
I2C / IIC LCD дэлгэц | SPI LCD дэлгэцийг I2C LCD дэлгэц болгон хөрвүүлэх: spi lcd дэлгэцийг ашиглахад хэт олон холболт шаардлагатай бөгөөд үүнийг хийх нь үнэхээр хэцүү тул i2c lcd -ийг spi lcd болгон хөрвүүлэх модулийг оллоо
ТВ асахгүй байх үед яаж засах вэ: 23 алхам
Асахгүй байгаа ТВ -ийг хэрхэн яаж засах вэ: Орчин үеийн хавтгай дэлгэцтэй телевизоруудад конденсатор муудсантай холбоотой асуудал гардаг. Хэрэв таны LCD эсвэл LED ТВ асахгүй, эсвэл дахин дахин товших чимээ гарвал энэ энгийн засварыг хийснээр хэдэн зуун доллар хэмнэх маш сайн боломж байна