This is an old revision of the document!
Ceas inteligent cu alarmă și senzori de mediu
Introducere
Proiectul meu constă în realizarea unui ceas electronic multifuncțional care îmi va oferi informații despre ora curentă, data calendaristică, temperatura mediului înconjurător și funcționalitate de alarmă.
Ce face: Afișează ora, data, temperatura, permite setarea orei/datei, a formatului de afișare 12/24 ore și a unei alarme programabile, care alege random dintr-o serie de melodii cum sa sune.
Scop: Crearea unui dispozitiv funcțional, independent, care combină elemente hardware și software pentru a oferi funcționalitățile unui ceas digital modern, demonstrând în același timp capacitatea de integrare a diferitelor tehnologii și protocoale de comunicație.
Ideea de pornire: Totul a început din nevoia de a avea un ceas digital în cameră, dar cu funcționalități extinse.
Utilitate: Acest proiect rezolvă problema dependenței de telefon pentru verificarea orei și a temperaturii. Mulți dintre noi ne uităm la telefon înainte de culcare și dimineața, ceea ce poate afecta somnul și concentrarea. Ceasul meu oferă aceste informații esențiale fără distragerea atenției și tentația de a verifica notificările sau social media. În plus, funcția de alarmă personalizabilă îmbunătățește rutina zilnică, fiind adaptată nevoilor specifice ale utilizatorului, spre deosebire de soluțiile comerciale care oferă opțiuni limitate.
Descriere generală
Funcționalități:
Afișarea și setarea orei
Ora curentă este obținută de la modulul RTC și afișată pe ecranul LCD.
Formatul orei poate fi setat în mod 12 ore (AM/PM) sau 24 ore prin intermediul butoanelor.
Setarea orei se face prin intermediul celor trei butoane.
Afișarea datei și a temperaturii
Data calendaristică este obținută de la modulul RTC și afișată pe ecranul LCD.
Temperatura este citită de la senzorul DHT22 și afișată pe ecranul LCD.
Actualizarea informațiilor se face automat la intervale regulate de timp.
Sistem de alarmă programabil
Setarea alarmei se face prin interfața cu butoane, permițând configurarea orei exacte.
Semnalul sonor este generat de buzzer atunci când ora curentă coincide cu ora alarmei.
Interfață cu utilizatorul
Navigare prin meniuri folosind butoanele pentru setarea diverselor parametri.
Feedback vizual prin intermediul LED-urilor pentru confirmarea acțiunilor.
Laboratoare folosite:
Laboratorul 0 (GPIO) - utilizat pentru configurarea butoanelor și LED-urilor, formând interfața fizică prin care utilizatorul interacționează cu ceasul pentru setarea orei și alarmei.
Laboratorul 2 (Întreruperi) - implementate pentru detectarea apăsărilor butoanelor cu funcționalitate de debounce, asigurând o citire precisă a comenzilor utilizatorului și pentru declanșarea alarmei la momentul programat.
Laboratorul 4 (ADC) - folosit pentru citirea valorilor de la senzorul de temperatură și convertirea lor în valori de temperatură afișabile pe ecran.
Laboratorul 6 (I2C) - utilizat pentru comunicarea cu modulul RTC și cu ecranul LCD I2C, permițând transferul eficient al datelor.
Module Hardware:
Unitate de procesare - Arduino UNO bazat pe microcontrollerul ATmega328p
Afișare - Display LCD cu interfață I2C pentru afișarea informațiilor
Cronometrare precisă - Modul RTC (Real-Time Clock) DS1307 pentru menținerea timpului
Senzori - Senzor de temperatură DHT22 pentru măsurarea parametrilor de mediu
Interfață utilizator - Trei butoane pentru setarea orei, datei și controlul alarmei
Feedback - Buzzer pentru alarmă și LED-uri pentru indicatori vizuali
Alimentare - Baterie/acumulator pentru funcționare independentă
Module Software:
Control display - Gestionarea afișării informațiilor pe LCD
Procesare timp - Citirea și procesarea datelor de la modulul RTC
Interfață utilizator - Interpretarea intrărilor de la butoane și actualizarea stării sistemului
Managementul temperaturii - Citirea și procesarea datelor de la senzorul de temperatură
Sistem alarmă - Gestionarea alarmei programabile
Management energetic - Optimizarea consumului de energie
Interacțiunea între module se realizează astfel:
Microcontrollerul comunică cu RTC și LCD-ul prin protocolul I2C
Senzorii și butoanele sunt interfațate prin pini
Modulul de procesare timp actualizează periodic informațiile afișate pe display
Interfața utilizator interpretează apăsările butoanelor și modifică setările
Sistemul de alarmă verifică continuu ora curentă și declanșează alarma la momentul programat
Schema bloc:
Hardware Design
Listă de componente:
Arduino UNO - Unitatea centrală de procesare
Display LCD I2C (16×2 caractere) - Afișarea informațiilor
Modul RTC - Menținerea timpului precis
Senzor de temperatură - Măsurarea temperaturii ambientale
Buzzer Activ - Sonerie pentru alarmă
Butoane tactile - Interfața utilizator pentru setări
Breadboard
Fire de conexiune - Realizarea conexiunilor
Rezistențe 330Ω - Limitare curent pentru LED-uri
Rezistențe 4.7kΩ - Pull-up pentru butoane
LED-uri cu catod comun (verde, roșu) - Indicatori vizuali
Schema electrica realizata in fusion
Componentele hardware conectate
!!! In cadrul schemei am folosit o baterie pentru alimentare, iar proiectul momentan este alimentat prin intermediul laptopului.
Software Design
Descrierea codului aplicaţiei (firmware):
mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR)
librării şi surse 3rd-party (e.g. Procyon AVRlib)
algoritmi şi structuri pe care plănuiţi să le implementaţi
(etapa 3) surse şi funcţii implementate
Rezultate Obţinute
Care au fost rezultatele obţinute în urma realizării proiectului vostru.
Concluzii
Download
Jurnal
Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.
Bibliografie/Resurse
Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.
Export to PDF