Un dispozitiv ce arata starea vremii in timp real. Acesta masoara temperatura, umiditatea aerului, intensitatea luminoasa, dar si daca ploua sau nu. Prin actionarea butonului se trece prin modurile aparatului, afisandu-se pe rand pe ecran informatii despre: temperatura, umiditatea aerului, etc.
Aparatul are 4 moduri de functionare in functie de tipul de senzor monitorizat:
Trecerea prin modurile dispozitivului se realizeaza cu ajutorul butonului care in momentul in care se actioneaza, trece in mod ciclic la urmatorul mod.
Piese utilizate:
In functia setup():
Se initializeaza LCD-ul, senzorul de picaturi de ploaie si butonul.
In functia loop():
Se citesc datele din fiecare senzor si se stocheaza in variabilele globale declarate anterior. Pentru buton: se stocheaza in variabila menu_no numarul meniului curent, care se incrementeaza la fiecare apasare de buton. In cazul in care butonul a fost apasat de mai mult de 2 ori, menu_no se reseteaza, ajungandu-se iar la primul meniu.
In functia lcdPrint():
Se afiseaza datele citite de senzori in functie de numarul meniului: - Meniul 1 - temperatura si intensitatea luminii; - Meniul 2 - umiditatea aerului si daca ploua sau nu ("Clear", respectiv "Rainy").
Am implementat toate functionalitatile propuse initial. Dificultatea proiectului a venit din implementarea LCD-ului, intrucat am avut probleme cu biblotecile acestuia.
ATmega328P - https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf
FC-37 Rain Sensor - https://www.youtube.com/watch?v=wF_51ANJnuc
DHT11 Temperature and Humidty Sensor - https://www.youtube.com/watch?v=DAveoebAFVw&t=7s
LCD LCD1602 and I2C module - https://www.youtube.com/watch?v=q9YC_GVHy5A&t=557s