This shows you the differences between two versions of the page.
pm:prj2023:ndrogeanu:smart-home [2023/05/07 10:39] elena.afumatu [Descriere generală] |
pm:prj2023:ndrogeanu:smart-home [2023/05/29 22:04] (current) elena.afumatu [Rezultate Obţinute] |
||
---|---|---|---|
Line 20: | Line 20: | ||
- | Schema bloc poate fi regăsită în imaginea următoare: // | + | Schema bloc: // |
+ | |||
+ | {{ :pm:prj2023:ndrogeanu:schema_bloc_smarthome.png?600 |}} // | ||
- | {{ :pm:prj2023:ndrogeanu:schema_bloc_smarthome.png?650x320 | Schema bloc }} | ||
===== Hardware Design ===== | ===== Hardware Design ===== | ||
Line 36: | Line 37: | ||
* Led RGB | * Led RGB | ||
* Buzzer pasiv | * Buzzer pasiv | ||
+ | * Sensor Shield | ||
* Rezistențe | * Rezistențe | ||
* Fire | * Fire | ||
+ | **Schema electrica:** | ||
+ | |||
+ | {{ :pm:prj2023:ndrogeanu:circuit_smart_home.png?700 |}} | ||
+ | |||
+ | <note warning>Deoarece Tinkercad nu ofera suport pentru Sensor Shield, am folosit un breadboard pentru conectarea componentelor.</note> | ||
- | <note tip> | ||
- | Aici puneţi tot ce ţine de hardware design: | ||
- | * listă de piese | ||
- | * scheme electrice (se pot lua şi de pe Internet şi din datasheet-uri, e.g. http://www.captain.at/electronic-atmega16-mmc-schematic.png) | ||
- | * diagrame de semnal | ||
- | * rezultatele simulării | ||
- | </note> | ||
===== Software Design ===== | ===== Software Design ===== | ||
Line 53: | Line 53: | ||
<note tip> | <note tip> | ||
Descrierea codului aplicaţiei (firmware): | Descrierea codului aplicaţiei (firmware): | ||
- | * mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR) | + | * mediu de dezvoltare: Arduino IDE 2.1.0 |
- | * librării şi surse 3rd-party (e.g. Procyon AVRlib) | + | * biblioteci utilizate: |
- | * algoritmi şi structuri pe care plănuiţi să le implementaţi | + | * LiquidCrystal_I2C.h |
- | * (etapa 3) surse şi funcţii implementate | + | * dht.h |
+ | * IRremote.h | ||
+ | * SoftwareSerial.h | ||
</note> | </note> | ||
+ | **Descrierea implementarii:** | ||
+ | |||
+ | Pentru asigurarea functiei de monitorizare a sistemului am implementat functia printData(), care citeste date de la senzorul de temperatura si umiditate si le afiseaza pe LCD. Exista doua modalitati de afisare a temperaturii, in grade Celsius sau Fahrenheit, iar utilizatorul poate selecta modul dorit folosind telecomanda IR, schimbarea facandu-se la apasarea sagetii UP/DOWN. | ||
+ | |||
+ | Functia checkGasSensor() verifica valoarea primita de la senzorul detector de gaz si daca aceasta depaseste o valoare prestabilita, atunci alarma va fi declansata, adica un sunet este redat pe buzzer si ledul va fi rosu. Se mentine aceasta stare pana cand valorile scad sub pragul mentionat. | ||
+ | |||
+ | Functia checkCode() primeste de la telecomanda IR 4 cifre, apoi verifica daca acest cod corespunde cu cel de activare/dezactivare a alarmei. In caz afirmativ, aceasta activeaza alarma de securitate daca ea era oprita si viceversa. | ||
+ | |||
+ | Functia checkPirSensor() verifica inputul de la senzorul de prezenta. Daca acesta transmite doar valori HIGH timp de o secunda, atunci alarma este declansata si un sms este trimis utilizatorului, prin functia sendSMS(). Odata pornita, alarma poate fi oprita doar prin introducerea codului folosind telecomanda IR. | ||
+ | Pentru introducerea codului de la telecomanda trebuie sa fie mai intai apasat butonul OK. | ||
+ | |||
+ | Toate functiile mentionate ruleaza intr-o bucla infinita, asigurand astfel buna functionare a sistemului. | ||
===== Rezultate Obţinute ===== | ===== Rezultate Obţinute ===== | ||
- | <note tip> | + | {{ :pm:prj2023:ndrogeanu:rez1.jpeg?200 |}} |
- | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | + | |
- | </note> | + | |
+ | {{ :pm:prj2023:ndrogeanu:rez2.jpeg?200 |}} | ||
+ | |||
+ | <note warning>Demo: {{:pm:prj2023:ndrogeanu:demo.zip|}}</note> | ||
===== Concluzii ===== | ===== Concluzii ===== | ||
- | ===== Download ===== | + | Proiectul permite afisarea temperaturii si a umitidatii pe un lcd, este benefic in cazul situatiilor de urgenta precum scurgerile de gaze si contine o alarma de securitate, ce poate fi activata/dezactivata pe baza unui cod. |
+ | Desi pot fi adaugate multe imbunatariti si functionalitati, consider ca este un proiect care m-a ajutat sa consolidez informatiile de la laborator si sa inteleg mai bine proiectele ce au la baza un microcontroller ATMega328p. | ||
+ | {{:pm:prj2023:ndrogeanu:smart_home_system.zip|}}===== Download ===== | ||
<note warning> | <note warning> | ||
- | O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-). | + | Codul sursa poate fi gasit in arhiva de mai jos. |
- | + | \\ | |
- | Fişierele se încarcă pe wiki folosind facilitatea **Add Images or other files**. Namespace-ul în care se încarcă fişierele este de tipul **:pm:prj20??:c?** sau **:pm:prj20??:c?:nume_student** (dacă este cazul). **Exemplu:** Dumitru Alin, 331CC -> **:pm:prj2009:cc:dumitru_alin**. | + | {{:pm:prj2023:ndrogeanu:smart_home_system.zip|}} |
</note> | </note> | ||
Line 80: | Line 97: | ||
- 28.04.2023 - Comandarea pieselor necesare | - 28.04.2023 - Comandarea pieselor necesare | ||
- 06.05.2023 - Adăugare documentație inițială | - 06.05.2023 - Adăugare documentație inițială | ||
+ | - 13.05.2023 - Testarea individuala a componentelor | ||
+ | - 14.05.2023 - Implementare hardware | ||
+ | - 20.05.2023 - Realizare schema electrica | ||
+ | - 28.05.2023 - Adaugare cod sursa | ||
===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== | ||
Line 86: | Line 106: | ||
Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. | Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. | ||
</note> | </note> | ||
+ | |||
+ | - https://lastminuteengineers.com/sim800l-gsm-module-arduino-tutorial/?utm_content=cmp-true | ||
+ | - https://lastminuteengineers.com/dht11-dht22-arduino-tutorial/ | ||
<html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | <html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | ||