Мазмуну:

Smart-Stat: 7 кадам
Smart-Stat: 7 кадам

Video: Smart-Stat: 7 кадам

Video: Smart-Stat: 7 кадам
Video: ВСЕ ЧИТ-КОДЫ в СИМУЛЯТОР КРУТОГО ЧУВАКА! - Dude Theft Wars: Open World 2024, Июль
Anonim
Smart-Stat
Smart-Stat
Smart-Stat
Smart-Stat
Smart-Stat
Smart-Stat
Smart-Stat
Smart-Stat

Биздин продукт жеке адамдарга кирүүчү жана чыккан фреондун температурасын жөнөкөй жана реалдуу процесс менен өлчөө менен үйлөрүндөгү жылытуу жана кондиционер системаларынын эффективдүүлүгүн текшерүүгө мүмкүндүк берет. Бул акылдуу түзмөк адамдарды жылытуу жана муздатуу системалары менен энергияны үнөмдүү чечим чыгарууга үндөйт.

1 -кадам: Тетиктер талап кылынат

Бөлүктөр талап кылынат
Бөлүктөр талап кылынат
Бөлүктөр талап кылынат
Бөлүктөр талап кылынат
Бөлүктөр талап кылынат
Бөлүктөр талап кылынат

- Ардуино Уно

- Breadboard (4)

- Термистор (2)

- 10K каршылыгы (2)

- Баскыч бас

- Piezo Buzzer

- LCD дисплей

- Потенциометр

- Зымдар (25)

- Микро USB же USB туташтыргычы

2 -кадам: Температура сенсору үчүн Wire Breadboard

Температура сенсоруна арналган Wire Breadboard
Температура сенсоруна арналган Wire Breadboard

TMP термистору - чөйрөнүн температурасы өзгөргөндө сенсордогу чыңалууну өлчөөчү температура сенсорунун бир түрү. Бул сенсордун үч казыгы бар - оң, жерге жана сигнал. Бул сенсор сызыктуу сенсор жана бир градус Цельсий температурасынын өзгөрүшү сенсордун чыгуусунда 10 милливольттун өзгөрүшүнө барабар.

Тартиби:

1) Жогорудагы сүрөттө көрсөтүлгөндөй температура сенсорун туташтырыңыз. Орто зым A0 менен туташат.

2) Экинчи температура сенсорун биринчисине окшош кылып туташтыргыла, ал эми орто зым A1ге туташат.

3 -кадам: Piezo Buzzer

Piezo Buzzer
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 -кадам: Диаграмма

Диаграмма
Диаграмма

Бул ар бир сызыктын температурасын жана алардын ортосундагы дифференциалды көзөмөлдөө үчүн температура сенсорлору разряд жана буу линияларына жайгаштырыла турган жердин негизги өкүлү.

Сунушталууда: