Мазмуну:
- 1 -кадам: Тетиктер талап кылынат
- 2 -кадам: Температура сенсору үчүн Wire Breadboard
- 3 -кадам: Piezo Buzzer
- 4 -кадам: Баскычтарды кошуу
- 5 -кадам: ЖКны өзүнчө нан тактасына жана кубатка туташтырыңыз
- 6 -кадам: Код
- 7 -кадам: Диаграмма
Video: Smart-Stat: 7 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:41
Биздин продукт жеке адамдарга кирүүчү жана чыккан фреондун температурасын жөнөкөй жана реалдуу процесс менен өлчөө менен үйлөрүндөгү жылытуу жана кондиционер системаларынын эффективдүүлүгүн текшерүүгө мүмкүндүк берет. Бул акылдуу түзмөк адамдарды жылытуу жана муздатуу системалары менен энергияны үнөмдүү чечим чыгарууга үндөйт.
1 -кадам: Тетиктер талап кылынат
- Ардуино Уно
- Breadboard (4)
- Термистор (2)
- 10K каршылыгы (2)
- Баскыч бас
- Piezo Buzzer
- LCD дисплей
- Потенциометр
- Зымдар (25)
- Микро USB же USB туташтыргычы
2 -кадам: Температура сенсору үчүн Wire Breadboard
TMP термистору - чөйрөнүн температурасы өзгөргөндө сенсордогу чыңалууну өлчөөчү температура сенсорунун бир түрү. Бул сенсордун үч казыгы бар - оң, жерге жана сигнал. Бул сенсор сызыктуу сенсор жана бир градус Цельсий температурасынын өзгөрүшү сенсордун чыгуусунда 10 милливольттун өзгөрүшүнө барабар.
Тартиби:
1) Жогорудагы сүрөттө көрсөтүлгөндөй температура сенсорун туташтырыңыз. Орто зым A0 менен туташат.
2) Экинчи температура сенсорун биринчисине окшош кылып туташтыргыла, ал эми орто зым A1ге туташат.
3 -кадам: Piezo Buzzer
Piezo ызгыры - бул колдонуучуга жылытуучу желдетүү жана кондиционерлөө системасы эң жогорку деңгээлде иштебей турганда эскертүү үчүн колдонулган түзмөк. Үн сигнализациясы колдонуучуга көйгөй экенин билдирет.
Тартиби:
1) Жогорудагы сүрөттө көрсөтүлгөндөй дабылды тактага туташтырыңыз.
4 -кадам: Баскычтарды кошуу
- Баскыч - баскычты басканда, чынжырдын эки чекитин бириктирүүчү компонент.
- Биздин продуктта, баскыч температура сенсорлору чогулткан маалыматтан температураны жана эффективдүүлүктү көрсөтүү ортосунда өтөт.
Процедура
1) Баскычты жогорудагы сүрөттө көрсөтүлгөндөй туташтырыңыз.
5 -кадам: ЖКны өзүнчө нан тактасына жана кубатка туташтырыңыз
ЖК, суюк кристаллдуу дисплей - бул колдонуучуга үйүнүн жылытуу, желдетүү жана кондиционерлөө системасында бир нерсе туура эмес болгондо айта турган жөнөкөй экран. Мис. натыйжалуу иштебей, системанын иштебей калышы
Берилген диаграмма экранды тактага туура туташтырууга жардам берет.
6 -кадам: Код
a = arduino ('com3', 'uno', 'китепканалар', 'ExampleLCD/LCDAddon'); % ExampleLCD/LCDAddon китепканасын көрсөтүүчү arduino объектисин түзөт.
lcd = addon (a, 'ExampleLCD/LCDAddon', {'D7', 'D6', 'D5', 'D4', 'D3', 'D2'}); % LCD объектисин түзөт жана Arduino түзмөгүндө конфигурацияланган казыктарды көрсөтөт.
initializeLCD (lcd, 'Rows', 2, 'Columns', 16); % lcd экранын баштайт
setpref ('Интернет', 'SMTP_Server', 'smtp.gmail.com');
setpref ('Интернет', 'E_mail', '[email protected]'); жөнөтүү үчүн % почта эсеби
setpref ('Интернет', 'SMTP_Username', 'bwnanney'); % жөнөтүүчүлөрдүн колдонуучу аты
setpref ('Интернет', 'SMTP_Password', 'Morill1204'); % жөнөтүүчүлөрдүн сырсөзү
реквизиттер = java.lang. System.getProperties;
props.setProperty ('mail.smtp.auth', 'true');
props.setProperty ('mail.smtp.socketFactory.class', 'javax.net.ssl. SSLSocketFactory');
props.setProperty ('mail.smtp.socketFactory.port', '465');
b = readDigitalPin (a, 'D9'); % санарип пин (санарип сенсор) окуу
окуу = readVoltage (a, 'A0'); % A0 пинге туташкан аналогдук термистердеги чыңалууну окуңуз
read2 = readVoltage (a, 'A2'); % A2 пинге туташкан аналогдук термистердеги чыңалууну окуңуз
чыныгы % чын болгончо чейин болгон билдирүүнү айлантат
b = readDigitalPin (a, 'D9'); % санарип пин (санарип сенсор) окуу
окуу = readVoltage (a, 'A0'); % A0 пинге туташкан аналогдук термистердеги чыңалууну окуңуз
эгер окуу> = 0.6 && окуу <0.68 % шарттуу түрдө бир топтомдорду аткарса (блок).
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Temp 64 F'); % ЖКга сап басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткарардан мурун тыныгат
elseif reading> = 0.68 && reading <0.69 % шарттуу түрдө бир топтомдорду аткарат (блок).
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Temp 66 F'); % ЖКны сапка басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткарардан мурун тыныгат
elseif окуп> = 0.69 && окуу <0.7 % шарттуу түрдө бир топтомдорду аткарат (блок).
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Temp 68 F'); % ЖКга сап басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткаруудан мурун тыныгат
elseif reading> = 0.7 && reading <0.71 % шарттуу түрдө бир топтомдорду аткарат (блок).
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Temp 70 F'); % ЖКны сапка басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткарардан мурун тыныгат
elseif reading> = 0.71 && read <0.72 % бир шарттуу билдирүүлөрдү (блок) аткарат.
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Temp 72 F'); % ЖКга сап басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткарардан мурун тыныгат
elseif reading> = 0.72 && reading <0.73 % бир шарттуу билдирүүлөрдү аткарат (блок).
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Temp 74 F'); % ЖКга сап басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткарардан мурун тыныгат
elseif reading> = 0.73 && reading <0.74 % шарттуу түрдө бир топтомдорду аткарат (блок).
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Temp 76 F'); % ЖКга сап басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткарардан мурун тыныгат
elseif reading> = 0.74 && read <0.75 % шарттуу түрдө бир топтомдорду аткарат (блок).
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Temp 78 F'); % ЖКга сап басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткарардан мурун тыныгат
elseif reading> = 0.75 && read <0.76 % шарттуу түрдө бир топтомдорду аткарат (блок).
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Temp 80 F'); % ЖКны сапка басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткарардан мурун тыныгат
elseif reading> = 0.76 && read <0.77 % шарттуу түрдө бир топтомдорду аткарат (блок).
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Temp 82 F'); % ЖКга сап басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткаруудан мурун тыныгат
elseif reading> = 0.77 && reading <0.8 % шарттуу түрдө бир топтомдорду аткарат (блок).
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Temp 84 F'); % ЖКга сап басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткаруудан мурун тыныгат
playTone (a, 'D10', 880, 0,25) % нотаны ойнойт (а, пин, жыштыгы, узактыгы)
тыныгуу (0,3) % белгиленген мөөнөт үчүн эскертүүдөн кийин тыныгат
playTone (a, 'D10', 880, 0,25) % нотаны ойнойт (а, пин, жыштык, узактык)
тыныгуу (0.3) % белгиленген убакыттан кийин эскертүүдөн кийин тыныгат
playTone (a, 'D10', 880, 0,25) % нотаны ойнойт (а, пин, жыштык, узактык)
тыныгуу (0.3) % белгиленген убакыттан кийин эскертүүдөн кийин тыныгат
playTone (a, 'D10', 880, 0,25) % нотаны ойнойт (а, пин, жыштык, узактык)
тыныгуу (0,3) % белгиленген мөөнөт үчүн эскертүүдөн кийин тыныгат
playTone (a, 'D10', 987, 0,25) % нотаны ойнойт (а, пин, жыштык, узактык)
тыныгуу (0,3) % белгиленген мөөнөт үчүн эскертүүдөн кийин тыныгат
playTone (a, 'D10', 987, 0,25) % нотаны ойнойт (а, пин, жыштыгы, узактыгы)
тыныгуу (0.3) % белгиленген убакыттан кийин эскертүүдөн кийин тыныгат
playTone (a, 'D10', 880, 0.12) % нотаны ойнойт (а, пин, жыштыгы, узактыгы)
тыныгуу (0.1) % белгиленген мөөнөткө эскертүүдөн кийин тыныгат
playTone (a, 'D10', 740, 0.12) % нотаны ойнойт (а, пин, жыштыгы, узактыгы)
тыныгуу (0.1) % белгиленген мөөнөткө эскертүүдөн кийин тыныгат
playTone (a, 'D10', 587, 0,25) % нотаны ойнойт (а, пин, жыштык, узактык)
тындыруу (0.3)
sendmail ('[email protected] ',' Жылытуу жана муздатуу бөлүмү кызматка муктаж !!! ',…
'Жылытуу жана муздатуу системасы натыйжасыз иштеп жатат. Сураныч, мүмкүн болушунча тезирээк техникке кызмат көрсөтүңүз. ') % Көрсөтүлгөн электрондук почта эсебине электрондук кат жөнөтөт
elseif окуп> = 0,8 && окуу <0,85 % бир шарттуу билдирүүлөрдү аткарат (блок).
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Temp 86 F'); % ЖКны сапка басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткаруудан мурун тыныгат
elseif reading> = 0.85 && read <2 % шарттуу түрдө бир топтомдорду аткарат (блок).
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'HOT HOT BABY !!!'); % ЖКны сапка басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткарардан мурун тыныгат
end % билдирүү менен бүтөт
ал эми b == 0 % жалган болгонго чейин учурдагы билдирүү аркылуу өтөт
b = readDigitalPin (a, 'D9'); % санарип пин (санарип сенсор) окуу
read2 = readVoltage (a, 'A2'); % A2 пинге туташкан аналогдук термистердеги чыңалууну окуңуз
Эгерде read2> = 0.6 && reading2 <0.68 % бир шарттуу билдирүүлөрдү аткарса (блок).
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Эффективдүүлүк 80%'); % ЖКны сапка басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткарардан мурун тыныгат
elseif reading2> = 0.68 && reading2 <0.69 % шарттуу түрдө бир гана топтомду аткарат (блок).
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Натыйжалуулук 90%'); % ЖКга сап басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткарардан мурун тыныгат
elseif reading2> = 0.69 && reading2 <0.7 % бир шарттуу билдирүүлөрдү (блок) аткарат.
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Натыйжалуулук 95%'); % ЖКга сап басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткарардан мурун тыныгат
elseif reading2> = 0.7 && reading2 <0.71 % бир шарттуу билдирүүлөрдү аткарат (блок).
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Efficiency 97%'); % ЖКга сап басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткарардан мурун тыныгат
elseif reading2> = 0.71 && reading2 <0.72 % бир шарттуу билдирүүлөрдү аткарат (блок).
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Эффективдүүлүк 100%'); % ЖКга сап басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткарардан мурун тыныгат
elseif reading2> = 0,72 && reading2 <0,73 % бир шарттуу билдирүүлөрдү аткарат (блок).
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Натыйжалуулук 95%'); % ЖКны сапка басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткарардан мурун тыныгат
elseif reading2> = 0.73 && reading2 <0.74 % бир шарттуу билдирүүлөрдү (блок) аткарат.
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Натыйжалуулук 90%'); % ЖКга сап басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткаруудан мурун тыныгат
elseif reading2> = 0.74 && reading2 <0.75 % шарттуу түрдө бир топтомдорду аткарат (блок).
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Efficiency 85%'); % ЖКга сап басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткаруудан мурун тыныгат
elseif reading2> = 0.75 && reading2 <0.76 % шарттуу түрдө бир гана топтомду аткарат (блок).
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Эффективдүүлүк 80%'); % ЖКны сапка басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткарардан мурун тыныгат
elseif reading2> = 0.76 && reading2 <0.77 % бир шарттуу билдирүүлөрдү (блок) аткарат.
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Efficiency 75%'); % ЖКга сап басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткаруудан мурун тыныгат
elseif reading2> = 0.77 && reading2 <0.8 % бир шарттуу билдирүүлөрдү (блок) аткарат.
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Натыйжалуулук 70%'); % ЖКны сапка басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткарардан мурун тыныгат
elseif reading2> = 0.8 && reading2 <0.85 % бир шарттуу билдирүүлөрдү (блок) аткарат.
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'Efficiency 65%'); % ЖКны сапка басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткаруудан мурун тыныгат
elseif reading2> = 0.85 && reading2 <2 % шарттуу түрдө бир топтомдорду аткарат (блок).
clearLCD (lcd) % lcd экранын тазалайт
printLCD (lcd, 'ON FIRE !!!'); % ЖКны сапка басып чыгаруу.
пауза (0.5) % кийинки буйрукту аткаруудан мурун тыныгат
end % end if оператору
end % end while loop
end % end while loop
7 -кадам: Диаграмма
Бул ар бир сызыктын температурасын жана алардын ортосундагы дифференциалды көзөмөлдөө үчүн температура сенсорлору разряд жана буу линияларына жайгаштырыла турган жердин негизги өкүлү.
Сунушталууда:
Raspberry Pi тарабынан Smart Home: 5 кадам (Сүрөттөр менен)
Raspberry Pi тарабынан Smart Home: Ал жерде сиздин квартираңызды акылдуураак кылган бир нече продукт бар, бирок алардын көбү менчик чечимдер. Бирок эмне үчүн смартфонуңуз менен жарыкты алмаштыруу үчүн интернет байланышы керек? Бул менин жеке Smar курууга бир себеп болду
Smart Desk LED Жарык - Smart Lighting W/ Arduino - Neopixels иш мейкиндиги: 10 кадам (сүрөттөр менен)
Smart Desk LED Жарык | Smart Lighting W/ Arduino | Neopixels Workpace: Азыр биз үйдө көп убактыбызды өткөрүп, виртуалдык жактан окуп, иштеп жатабыз, андыктан эмне үчүн биздин иш мейкиндигибизди Arduino жана Ws2812b LED жарыгы жана акылдуу жарыктандыруу системасы менен чоңойтпошубуз керек. Үстөлдүн LED жарыгы
Аппараттык жана программалык камсыздоо Hack Smart Devices, Tuya and Broadlink LEDbulb, Sonoff, BSD33 Smart Plug: 7 Steps
Аппараттык жана программалык камсыздоо Hack Smart Devices, Tuya and Broadlink LEDbulb, Sonoff, BSD33 Smart Plug: Бул Нускамада мен өзүмдүн программам менен бир нече акылдуу түзмөктөрдү кантип жаркыратканымды көрсөтөм, ошондуктан мен аларды Openhab орнотуум аркылуу MQTT аркылуу башкара алам. Мен аларды бузуп жатканда жаңы түзмөктөр
Акустикалык левитация Arduino Uno менен кадам-кадам (8-кадам): 8 кадам
Акустикалык левитация менен Arduino Uno Step-by-Step (8-кадам): ультрадыбыштуу үн өткөргүчтөр L298N Dc аял адаптеринин электр энергиясы менен камсыздоосу эркек токту Arduino UNOBreadboard Бул кантип иштейт: Биринчиден, сиз Arduino Uno кодун жүктөп бересиз (бул санарип менен жабдылган микроконтроллер) жана аналогдук порттор кодду айландыруу үчүн (C ++)
Smart Dial - Auto -Correcting Smart салттуу телефону: 8 кадам
Smart Dial-Авто-Түзөтүүчү Акылдуу Салттуу Телефон: Smart Dial-бул өзгөчө муктаждыктары бар улуулар үчүн түзүлгөн акылдуу авто-туура телефон жана ал улгайган адамдарга кадимки телефондордон түз чалууга мүмкүнчүлүк берет. Мен жергиликтүү карылар борборунда ыктыярдуу иштөө аркылуу гана