Mündəricat:

Smart-Stat: 7 addım
Smart-Stat: 7 addım

Video: Smart-Stat: 7 addım

Video: Smart-Stat: 7 addım
Video: İlham Əliyev Şamaxıda belə futbol oynadı #shorts 2024, Noyabr
Anonim
Ağıllı Stat
Ağıllı Stat
Ağıllı Stat
Ağıllı Stat
Ağıllı Stat
Ağıllı Stat
Ağıllı Stat
Ağıllı Stat

Məhsulumuz, fərdlərin daxil olan və gedən freonun istiliyini sadə və real bir proseslə ölçərək evlərində istilik və kondisioner sistemlərinin səmərəliliyini yoxlamağa imkan verir. Bu ağıllı cihaz, insanları istilik və soyutma sistemləri ilə daha enerjiyə qənaət edən qərarlar verməyə təşviq edəcək.

Addım 1: Lazım olan hissələr

Ehtiyac duyulan hissələr
Ehtiyac duyulan hissələr
Ehtiyac duyulan hissələr
Ehtiyac duyulan hissələr
Ehtiyac duyulan hissələr
Ehtiyac duyulan hissələr

- Arduino Uno

- Çörək paneli (4)

- Termistor (2)

- 10K Rezistorlar (2)

- Düyməni basın

- Piezo Buzzer

- LCD Ekran

- Potansiyometr

- Tellər (25)

- Mikro USB və ya USB Konnektoru

Addım 2: Temperatur Sensoru üçün Tel Breadboard

Temperatur Sensoru üçün Tel Breadboard
Temperatur Sensoru üçün Tel Breadboard

TMP termistoru, ətraf mühitin temperaturu dəyişdikcə sensordakı gərginliyi ölçən bir temperatur sensoru növüdür. Bu xüsusi sensorun üç sancağı var - müsbət, torpaq və siqnal. Bu sensor xətti bir sensordur və bir dərəcə Celcius temperaturunun dəyişməsi sensor çıxışında 10 millivolt dəyişikliyinə bərabərdir.

Prosedur:

1) İstilik sensörünüzü yuxarıdakı şəkildə göstərildiyi kimi bağlayın. Orta tel A0 -a bağlanacaq.

2) İkinci temperatur sensörünüzü birincisinə bənzər şəkildə bağlayın və orta tel A1 -ə qoşulacaq.

Addım 3: Piezo Buzzer

Piezo Buzzer
Piezo Buzzer

Piezo səs siqnalı, isitmə havalandırma və kondisioner sistemi səmərəli işləmədikdə istifadəçini xəbərdar etmək üçün istifadə olunan bir cihazdır. Səsli siqnal istifadəçiyə problem olduğunu bildirir.

Prosedur:

1) Səs siqnalını yuxarıdakı şəkildə göstərildiyi kimi lövhəyə qoşun.

Addım 4: Düymələr əlavə edin

Düymələr əlavə edin
Düymələr əlavə edin

- Düymə, düyməni basdığınız zaman bir dövrədə iki nöqtəni birləşdirən bir komponentdir.

- Məhsulumuzda düymə, temperatur sensörlərinin topladığı məlumatlardan temperaturun və səmərəliliyin göstərilməsi arasında dövr edir.

Prosedur

1) Düyməni yuxarıdakı şəkildə göstərildiyi kimi bağlayın.

Addım 5: LCD -ni Ayrı Breadboard -a və Gücə qoşun

LCD -ni Ayrı Breadboard -a və Gücə qoşun
LCD -ni Ayrı Breadboard -a və Gücə qoşun

LCD, maye kristal ekran, istifadəçiyə evinin isitmə, havalandırma və kondisioner sistemlərində bir şeyin səhv olduğunu bildirə bilən sadə bir ekrandır. Məsələn səmərəli işləmir, sistem nasazlığı

Verilən diaqram, ekranı lövhəyə düzgün bağlamanıza kömək edəcək.

Addım 6: Kod

a = arduino ('com3', 'uno', 'kitabxanalar', 'ExampleLCD/LCDAddon'); %, ExampleLCD/LCDAddon kitabxanasını ifadə edən bir arduino obyekti yaradır.

lcd = addon (a, 'ExampleLCD/LCDAddon', {'D7', 'D6', 'D5', 'D4', 'D3', 'D2'}); % LCD obyekti yaradır və Arduino cihazında konfiqurasiya edilmiş sancaqları göstərir.

initializeLCD (lcd, 'Satırlar', 2, 'Sütunlar', 16); % lcd ekranını işə salır

setpref ('İnternet', 'SMTP_Server', 'smtp.gmail.com');

setpref ('İnternet', 'E_mail', '[email protected]'); göndərmək üçün % poçt hesabı

setpref ('İnternet', 'SMTP_Username', 'bwnanney'); % göndərən istifadəçi adı

setpref ('İnternet', 'SMTP_Password', 'Morill1204'); % göndərən parol

rekvizit = java.lang. System.getProperties;

props.setProperty ('mail.smtp.auth', 'doğru');

props.setProperty ('mail.smtp.socketFactory.class', 'javax.net.ssl. SSLSocketFactory');

props.setProperty ('mail.smtp.socketFactory.port', '465');

b = readDigitalPin (a, 'D9'); rəqəmsal pin oxuyur (rəqəmsal sensor)

oxu = readVoltage (a, 'A0'); A0 pininə qoşulan analoq termistordakı gərginliyi oxuyun

oxu2 = readVoltage (a, 'A2'); A2 pininə qoşulan analoq termistordakı gərginliyi oxuyun

doğru %, doğru olduğu müddətcə mövcud ifadəni döndərir

b = readDigitalPin (a, 'D9'); rəqəmsal pin oxuyur (rəqəmsal sensor)

oxu = readVoltage (a, 'A0'); A0 pininə qoşulan analoq termistordakı gərginliyi oxuyun

oxumaq> = 0.6 və & oxu <0.68 % şərti olaraq bir ifadələr dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Temp 64 F'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri yerinə yetirməzdən əvvəl durur

elseif oxu> = 0.68 && oxumaq <0.69 % şərti olaraq bir ifadələr dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Temp 66 F'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri yerinə yetirməzdən əvvəl durur

elseif oxu> = 0.69 && oxumaq <0.7 % şərti olaraq bir ifadələr dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Temp 68 F'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri yerinə yetirməzdən əvvəl durur

elseif oxu> = 0.7 && oxumaq <0.71 % şərti olaraq bir bəyanat dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Temp 70 F'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri icra etməzdən əvvəl durur

elseif oxu> = 0.71 && oxumaq <0.72 % şərti olaraq bir ifadələr dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Temp 72 F'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri icra etməzdən əvvəl durur

elseif oxu> = 0.72 && oxumaq <0.73 % şərti olaraq bir ifadələr dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Temp 74 F'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri icra etməzdən əvvəl durur

elseif oxu> = 0.73 && oxumaq <0.74 % şərti olaraq bir ifadələr dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Temp 76 F'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri yerinə yetirməzdən əvvəl durur

elseif oxu> = 0.74 && oxumaq <0.75 % şərti olaraq bir bəyanat dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Temp 78 F'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri icra etməzdən əvvəl durur

elseif oxu> = 0.75 && oxumaq <0.76 % şərti olaraq tək bir ifadə dəstini (bir blok) icra edir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Temp 80 F'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri icra etməzdən əvvəl durur

elseif oxu> = 0.76 && oxumaq <0.77 % şərti olaraq bir ifadələr dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Temp 82 F'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri yerinə yetirməzdən əvvəl durur

elseif oxu> = 0.77 && oxumaq <0.8 % şərti olaraq bir ifadələr dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Temp 84 F'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri icra etməzdən əvvəl durur

playTone (a, 'D10', 880, 0.25) % bir not oynayır (a, pin, tezlik, müddət)

fasilə (0.3) % müəyyən müddət üçün qeyddən sonra fasilə verir

playTone (a, 'D10', 880, 0.25) % bir not oynayır (a, pin, tezlik, müddət)

fasilə (0.3) % müəyyən müddət üçün qeyddən sonra durur

playTone (a, 'D10', 880, 0.25) % bir not oynayır (a, pin, tezlik, müddət)

fasilə (0.3) % müəyyən müddət üçün qeyddən sonra durur

playTone (a, 'D10', 880, 0.25) % bir not oynayır (a, pin, tezlik, müddət)

fasilə (0.3) % müəyyən müddət üçün qeyddən sonra durur

playTone (a, 'D10', 987, 0.25) % bir not oynayır (a, pin, tezlik, müddət)

fasilə (0.3) % müəyyən müddət üçün qeyddən sonra durur

playTone (a, 'D10', 987, 0.25) % bir not oynayır (a, pin, tezlik, müddət)

fasilə (0.3) % müəyyən müddət üçün qeyddən sonra durur

playTone (a, 'D10', 880, 0.12) % bir not oynayır (a, pin, tezlik, müddət)

fasilə (0.1) % müəyyən müddət üçün qeyddən sonra durur

playTone (a, 'D10', 740, 0.12) % bir not oynayır (a, pin, tezlik, müddət)

fasilə (0.1) % müəyyən müddət üçün qeyddən sonra durur

playTone (a, 'D10', 587, 0.25) % bir not oynayır (a, pin, tezlik, müddət)

fasilə (0.3)

sendmail ('[email protected]', 'Xidmətə Ehtiyac Olan İstilik və Soyutma Birimi !!!',…

'İstilik və soyutma sistemi səmərəsiz işləyir. Zəhmət olmasa ən qısa müddətdə bir texnikə xidmət göstərin. ') % Göstərilən e -poçt hesabına bir e -poçt göndərir

elseif oxu> = 0.8 && oxumaq <0.85 % şərti olaraq tək bir ifadə dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Temp 86 F'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri icra etməzdən əvvəl durur

elseif oxu> = 0.85 && oxumaq <2 % şərti olaraq bir bəyanat dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'SICAK BABY !!!'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri icra etməzdən əvvəl durur

end % ifadəsi bitər

b == 0 % yalan olduğu müddətcə mövcud ifadəni döndərir

b = readDigitalPin (a, 'D9'); rəqəmsal pin oxuyur (rəqəmsal sensor)

oxu2 = readVoltage (a, 'A2'); A2 pininə qoşulan analoq termistordakı gərginliyi oxuyun

əgər oxu2> = 0.6 && oxuma2 <0.68 % şərti olaraq bir bəyanat dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Effektivlik 80%'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri yerinə yetirməzdən əvvəl durur

elseif oxu2> = 0.68 && oxu2 <0.69 % şərti olaraq bir bəyanat dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Effektivlik 90%'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri yerinə yetirməzdən əvvəl durur

elseif oxu2> = 0.69 && oxu2 <0.7 % şərti olaraq bir bəyanat dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Effektivlik 95%'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri yerinə yetirməzdən əvvəl durur

elseif oxu2> = 0.7 && oxu2 <0.71 % şərti olaraq tək bir ifadə dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Effektivlik 97%'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri icra etməzdən əvvəl durur

elseif oxu2> = 0.71 && oxu2 <0.72 % şərti olaraq bir bəyanat dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Effektivlik 100%'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri icra etməzdən əvvəl durur

elseif oxu2> = 0.72 && oxu2 <0.73 % şərti olaraq bir bəyanat dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Effektivlik 95%'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri icra etməzdən əvvəl durur

elseif oxu2> = 0.73 && oxuma2 <0.74 % şərti olaraq tək bir ifadə dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Effektivlik 90%'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri icra etməzdən əvvəl durur

elseif oxu2> = 0.74 && oxu2 <0.75 % şərti olaraq bir bəyanat dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Effektivlik 85%'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri icra etməzdən əvvəl durur

elseif oxu2> = 0.75 && oxuma2 <0.76 % şərti olaraq tək bir ifadə dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Effektivlik 80%'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri icra etməzdən əvvəl durur

elseif reading2> = 0.76 && reading2 <0.77 % şərti olaraq tək bir ifadə dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Effektivlik 75%'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri icra etməzdən əvvəl durur

elseif oxu2> = 0.77 && oxu2 <0.8 % şərti olaraq tək bir ifadə dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Effektivlik 70%'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri yerinə yetirməzdən əvvəl fasilə verir

elseif oxu2> = 0.8 && oxu2 <0.85 % şərti olaraq bir bəyanat dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'Effektivlik 65%'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri icra etməzdən əvvəl durur

elseif reading2> = 0.85 && reading2 <2 % şərti olaraq tək bir ifadə dəstini (blok) yerinə yetirir.

clearLCD (lcd) % lcd ekranını təmizləyir

printLCD (lcd, 'YANGINDA !!!'); LCD -yə bir simli yazdırın.

pause (0.5) % növbəti əmri icra etməzdən əvvəl durur

end % end if ifadəsi

son % loop isə loop

son % loop isə loop

Addım 7: Diaqram

Diaqram
Diaqram

Bu, hər bir xəttin temperaturunu və aralarındakı fərqi izləmək üçün temperatur sensörlərinin axıdılması və buxar xətlərinə yerləşdiriləcəyi yerin əsas nümayəndəsidir.

Tövsiyə: