This shows you the differences between two versions of the page.
|
pm:prj2026:vlad.radulescu2901:cristina.iordache04 [2026/05/18 14:42] 127.0.0.1 external edit |
pm:prj2026:vlad.radulescu2901:cristina.iordache04 [2026/05/23 22:49] (current) cristina.iordache04 |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Smart Desk Companion ====== | ====== Smart Desk Companion ====== | ||
| + | |||
| ===== Introducere ===== | ===== Introducere ===== | ||
| - | <note tip> | ||
| - | **📌 Ce face proiectul:** | ||
| - | Dispozitivul monitorizează condițiile ambientale ale spațiului de lucru al utilizatorului, măsurând: | + | **Ce face proiectul:** |
| + | |||
| + | Dispozitivul monitorizeaza conditiile ambientale ale spatiului de lucru al utilizatorului, masurand: | ||
| - | * calitatea aerului (CO2 / COV) – prin senzorul MQ-135 | + | * calitatea aerului (CO2 / COV) - prin senzorul MQ-135 |
| - | * temperatura și umiditatea aerului – prin senzorul DHT11 | + | * temperatura si umiditatea aerului - prin senzorul DHT11 |
| - | * nivelul de iluminare ambientală – prin LDR (fotorezistor) | + | * nivelul de iluminare ambienta - prin LDR (fotorezistor) |
| - | Atunci când un parametru depășește un prag prestabilit: | + | Atunci cand un parametru depaseste un prag prestabilit: |
| - | * se activează buzzer-ul (alertă sonoră) | + | * se activeaza buzzer-ul (alerta sonora) |
| - | * se aprinde LED-ul roșu de avertizare | + | * se aprinde LED-ul rosu de avertizare |
| - | * LCD-ul afișează un mesaj de alertă prioritar | + | * LCD-ul afiseaza un mesaj de alerta prioritar |
| Timer-ul Pomodoro integrat: | Timer-ul Pomodoro integrat: | ||
| - | * se pornește/resetează printr-un buton fizic | + | * se porneste/reseteaza printr-un buton fizic |
| - | * LED-ul verde indică sesiunea activă (25 minute) | + | * LED-ul verde indica sesiunea activa (25 minute) |
| * la finalul sesiunii, buzzer-ul emite un semnal distinctiv | * la finalul sesiunii, buzzer-ul emite un semnal distinctiv | ||
| - | **🎯 Scopul și ideea de la care am pornit:** | + | **Scopul si ideea de la care am pornit:** |
| - | Mi-am propus să construiesc un dispozitiv accesibil care să ajute utilizatorii să mențină un mediu de lucru sănătos și productiv, printr-un sistem care: | + | Mi-am propus sa construiesc un dispozitiv accesibil care sa ajute utilizatorii sa mentina un mediu de lucru sanatos si productiv, printr-un sistem care: |
| - | * avertizează discret asupra condițiilor ambientale necorespunzătoare | + | * avertizeaza discret asupra conditiilor ambientale necorespunzatoare |
| - | * colectează și afișează date climatice în timp real | + | * colecteaza si afiseaza date climatice in timp real |
| - | * integrează o metodă dovedită de gestionare a timpului (tehnica Pomodoro) | + | * integreaza o metoda dovedita de gestionare a timpului (tehnica Pomodoro) |
| - | * funcționează complet autonom, fără conexiune internet sau aplicații externe | + | * functioneaza complet autonom, fara conexiune internet sau aplicatii externe |
| - | **🤝 De ce cred că este util:** | + | **De ce cred ca este util:** |
| - | * **Pentru utilizatori individuali** – ajută la menținerea unui mediu de lucru sănătos și la structurarea sesiunilor de lucru. | + | * Pentru utilizatori individuali - ajuta la mentinerea unui mediu de lucru sanatos si la structurarea sesiunilor de lucru. |
| - | * **Pentru studenți și freelanceri** – soluție all-in-one pentru monitorizare și productivitate fără costuri mari. | + | * Pentru studenti si freelanceri - solutie all-in-one pentru monitorizare si productivitate fara costuri mari. |
| - | * **Pentru sănătate pe termen lung** – semnalarea calității slabe a aerului sau a luminii insuficiente previne oboseala oculară și problemele respiratorii. | + | * Pentru sanatate pe termen lung - semnalarea calitatii slabe a aerului sau a luminii insuficiente previne oboseala oculara si problemele respiratorii. |
| - | </note> | + | |
| - | ===== Descriere generală ===== | + | ===== Descriere generala ===== |
| - | <note tip> | ||
| **Diagrama Bloc** | **Diagrama Bloc** | ||
| {{:pm:prj2026:vlad.radulescu2901:schema_cristina.iordache04.png?700|}} | {{:pm:prj2026:vlad.radulescu2901:schema_cristina.iordache04.png?700|}} | ||
| - | Dispozitivul este format din următoarele componente: | + | Dispozitivul este format din urmatoarele componente: |
| - | * 🌫️ Senzor MQ-135 (analogic) – detectează calitatea aerului (CO2, COV, amoniac) | + | * Senzor MQ-135 (analogic) - detecteaza calitatea aerului (CO2, COV, amoniac) |
| - | * 🌡️ Senzor DHT11 – măsoară temperatura și umiditatea relativă | + | * Senzor DHT11 - masoara temperatura si umiditatea relativa |
| - | * 💡 LDR (Fotorezistor) – detectează nivelul de iluminare ambientală | + | * LDR (Fotorezistor) - detecteaza nivelul de iluminare ambienta |
| - | * 🖥️ LCD 16x2 cu interfață I2C – afișează datele în timp real | + | * LCD 16x2 cu interfata I2C - afiseaza datele in timp real |
| - | * 🔔 Buzzer pasiv 5V – emite alerte sonore la depășirea pragurilor | + | * Buzzer pasiv 5V - emite alerte sonore la depasirea pragurilor |
| - | * 🔘 Buton tactil – declanșează/resetează timer-ul Pomodoro | + | * Buton normal - declansaza/reseteaza timer-ul Pomodoro |
| - | * 🟢 LED Verde – indicator vizual sesiune Pomodoro activă | + | * LED Verde - indicator vizual sesiune Pomodoro activa |
| - | * 🔴 LED Roșu – indicator vizual alertă ambientală | + | * LED Rosu - indicator vizual alerta ambienta |
| - | * 🧠 ATmega328P – citește toți senzorii, decide acțiunile și controlează output-urile | + | * ATmega328P - citeste toti senzorii, decide actiunile si controleaza output-urile |
| - | * 🔋 Alimentare 5V (USB) – pentru toate modulele | + | * Alimentare 5V (USB) - pentru toate modulele |
| - | **Interacțiuni între module** | + | **Interactiuni intre module** |
| - | Senzorul MQ-135 trimite un semnal analogic continuu pe pinul A0 al microcontrollerului. ATmega328P citește valoarea prin ADC și o compară cu un prag prestabilit. Dacă valoarea depășește pragul, se activează alertele (buzzer + LED roșu) și se afișează un mesaj de avertizare pe LCD. | + | Senzorul MQ-135 trimite un semnal analogic continuu pe pinul A0 al microcontrollerului. ATmega328P citeste valoarea prin ADC si o compara cu un prag prestabilit. Daca valoarea depaseste pragul, se activeaza alertele (buzzer + LED rosu) si se afiseaza un mesaj de avertizare pe LCD. |
| ATmega328P: | ATmega328P: | ||
| - | * compară valoarea de la MQ-135 cu un prag de calitate a aerului | + | * compara valoarea de la MQ-135 cu un prag de calitate a aerului |
| - | * compară nivelul de lumină de la LDR (A1) cu un prag minim de iluminare | + | * compara nivelul de lumina de la LDR (A1) cu un prag minim de iluminare |
| - | * citește temperatura și umiditatea prin protocol digital de la DHT11 (pinul D7) | + | * citeste temperatura si umiditatea prin protocol digital de la DHT11 (pinul D7) |
| - | * actualizează periodic LCD-ul cu datele curente (rotație ciclică) | + | * actualizeaza periodic LCD-ul cu datele curente (rotatie ciclica) |
| - | * gestionează starea timer-ului Pomodoro pe baza întreruperii butonului (D2) | + | * gestioneaza starea timer-ului Pomodoro pe baza intreruperii butonului (D2) |
| DHT11: | DHT11: | ||
| - | * măsoară temperatura și umiditatea aerului | + | * masoara temperatura si umiditatea aerului |
| - | * trimite datele microcontrollerului o dată la 2 secunde, în format digital | + | * trimite datele microcontrollerului o data la 2 secunde, in format digital |
| LCD-ul: | LCD-ul: | ||
| - | * primește comenzi prin I2C (pinii A4-SDA și A5-SCL) | + | * primeste comenzi prin I2C (pinii A4-SDA si A5-SCL) |
| - | * afișează ciclic: calitate aer, temperatură, umiditate, stare Pomodoro | + | * afiseaza ciclic: calitate aer, temperatura, umiditate, stare Pomodoro |
| - | * mesajele de alertă au prioritate față de afișarea normală | + | * mesajele de alerta au prioritate fata de afisarea normala |
| Buzzer-ul: | Buzzer-ul: | ||
| - | * se activează la depășirea pragului de calitate a aerului sau lumină insuficientă | + | * se activeaza la depasirea pragului de calitate a aerului sau lumina insuficienta |
| * emite un semnal distinct (mai lung) la expirarea intervalului Pomodoro | * emite un semnal distinct (mai lung) la expirarea intervalului Pomodoro | ||
| - | Butonul tactil: | + | Butonul normal: |
| - | * conectat pe D2 cu rezistor pull-up extern de 10kΩ | + | * conectat pe D2 cu rezistor pull-up extern de 10kOhm |
| - | * la apăsare, pornește sau resetează sesiunea Pomodoro de 25 minute | + | * la apasare, porneste sau reseteaza sesiunea Pomodoro de 25 minute |
| - | </note> | + | |
| ===== Hardware Design ===== | ===== Hardware Design ===== | ||
| - | <note tip> | ||
| **Bill of Materials (Lista Pieselor)** | **Bill of Materials (Lista Pieselor)** | ||
| - | ^ **Nr.** ^ **Componentă** ^ **Descriere** ^ **Cantitate** ^ | + | ^ Nr. ^ Componenta ^ Descriere ^ Cantitate ^ |
| - | | 1 | ATmega328P (Arduino Uno) | Microcontroller 8-bit AVR – unitatea centrală | 1 | | + | | 1 | ATmega328P (Arduino Uno) | Microcontroller 8-bit AVR - unitatea centrala | 1 | |
| | 2 | Senzor MQ-135 | Senzor calitate aer (CO2, VOC, NH3) | 1 | | | 2 | Senzor MQ-135 | Senzor calitate aer (CO2, VOC, NH3) | 1 | | ||
| - | | 3 | Senzor DHT11 | Senzor temperatură și umiditate | 1 | | + | | 3 | Senzor DHT11 | Senzor temperatura si umiditate | 1 | |
| | 4 | LDR (Fotorezistor) | Detectare nivel luminos ambiental | 1 | | | 4 | LDR (Fotorezistor) | Detectare nivel luminos ambiental | 1 | | ||
| - | | 5 | LCD 16x2 cu modul I2C | Afișare date în timp real | 1 | | + | | 5 | LCD 16x2 cu modul I2C | Afisare date in timp real | 1 | |
| - | | 6 | Buzzer pasiv 5V | Alerte sonore (prag depășit, timer) | 1 | | + | | 6 | Buzzer pasiv 5V | Alerte sonore (prag depasit, timer) | 1 | |
| - | | 7 | Buton tactil | Declanșare/resetare timer Pomodoro | 1 | | + | | 7 | Buton normal | Declansare/resetare timer Pomodoro | 1 | |
| - | | 8 | LED Verde | Indicator sesiune Pomodoro activă | 1 | | + | | 8 | LED Verde | Indicator sesiune Pomodoro activa | 1 | |
| - | | 9 | LED Roșu | Indicator alertă ambientală | 1 | | + | | 9 | LED Rosu | Indicator alerta ambienta | 1 | |
| - | | 10 | Rezistori 10kΩ | Pull-up LDR și buton | 2 | | + | | 10 | Rezistori 10kOhm | Pull-up LDR si buton | 2 | |
| - | | 11 | Rezistori 220Ω | Protecție LED-uri | 2 | | + | | 11 | Rezistori 220Ohm | Protectie LED-uri | 2 | |
| - | | 12 | Breadboard 400 puncte | Placă de prototipare | 1 | | + | | 12 | Breadboard 400 puncte | Placa de prototipare | 1 | |
| - | | 13 | Cabluri tată-tată | Conectare componente | ~30 | | + | | 13 | Cabluri tata-tata | Conectare componente | ~30 | |
| | 14 | Alimentare USB 5V | Alimentare sistem | 1 | | | 14 | Alimentare USB 5V | Alimentare sistem | 1 | | ||
| - | **Schema Electrică** | + | **Schema Electrica** |
| - | Schema electrică prezintă conexiunile dintre toate modulele și microcontrollerul ATmega328P. Alimentarea de 5V este comună tuturor componentelor, asigurată prin portul USB al plăcii Arduino Uno. | + | Schema electrica prezinta conexiunile dintre toate modulele si microcontrollerul ATmega328P. Alimentarea de 5V este comuna tuturor componentelor, asigurata prin portul USB al placii Arduino Uno. |
| - | **Tabel Legături Componente** | + | **Tabel Legaturi Componente** |
| - | ^ **Componentă** ^ **Pin Modul** ^ **Pin Arduino** ^ **Funcție** ^ | + | ^ Componenta ^ Pin Modul ^ Pin Arduino ^ Functie ^ |
| - | | **Senzor MQ-135A** | AOUT | A0 (PC0/ADC0) | Semnal analogic calitate aer | | + | | Senzor MQ-135A | AOUT | A0 (PC0/ADC0) | Semnal analogic calitate aer | |
| - | | ::: | VCC (pin 5) | +5V | Alimentare încălzitor | | + | | ::: | VCC | +5V | Alimentare incalzitor | |
| - | | ::: | GND (pin 2) | GND | Masă încălzitor | | + | | ::: | GND | GND | Masa incalzitor | |
| - | | **RL 10kΩ** | AOUT — GND | A0 → GND | Rezistor sarcină divizor tensiune | | + | | RL 10kOhm | AOUT - GND | A0 -> GND | Rezistor sarcina divizor tensiune | |
| - | | **Senzor DHT11** | DATA (I/O) | D7 (PD7) | Date temperatură & umiditate | | + | | Senzor DHT11 | DATA (I/O) | D7 (PD7) | Date temperatura & umiditate | |
| | ::: | VCC | +5V | Alimentare | | | ::: | VCC | +5V | Alimentare | | ||
| - | | ::: | GND | GND | Masă | | + | | ::: | GND | GND | Masa | |
| - | | **R5 1kΩ pull-up** | DATA — VCC | D7 → +5V | Pull-up linie date DHT11 | | + | | R5 1kOhm pull-up | DATA - VCC | D7 -> +5V | Pull-up linie date DHT11 | |
| - | | **LDR + R4 10kΩ** | Anod LDR | +5V | Alimentare divizor luminos | | + | | LDR + R4 10kOhm | Anod LDR | +5V | Alimentare divizor luminos | |
| - | | ::: | Joncțiune LDR-R4 | A1 (PC1/ADC1) | Semnal analogic nivel luminos | | + | | ::: | Jonctiune LDR-R4 | A1 (PC1/ADC1) | Semnal analogic nivel luminos | |
| - | | ::: | Catod R4 | GND | Masă divizor | | + | | ::: | Catod R4 | GND | Masa divizor | |
| - | | **LCD 16x2 I2C** | SDA | A4 (PC4/SDA) | Date I2C | | + | | LCD 16x2 I2C | SDA | A4 (PC4/SDA) | Date I2C | |
| | ::: | SCL | A5 (PC5/SCL) | Ceas I2C | | | ::: | SCL | A5 (PC5/SCL) | Ceas I2C | | ||
| | ::: | VCC / GND | +5V / GND | Alimentare | | | ::: | VCC / GND | +5V / GND | Alimentare | | ||
| - | | **Buzzer pasiv** | PIN | D6 (PD6/OC0A) | Alertă sonoră PWM | | + | | Buzzer pasiv | PIN | D6 (PD6/OC0A) | Alerta sonora PWM | |
| - | | ::: | GND | GND | Masă | | + | | ::: | GND | GND | Masa | |
| - | | **Buton tactil** | PIN | D2 (PD2/INT0) | Declanșare Pomodoro (întrerupere INT0) | | + | | Buton normal | PIN | D2 (PD2/INT0) | Declansare Pomodoro (intrerupere INT0) | |
| - | | ::: | GND | GND | Masă | | + | | ::: | GND | GND | Masa | |
| - | | **R3 10kΩ pull-up** | D2 — VCC | D2 → +5V | Pull-up linie buton | | + | | R3 10kOhm pull-up | D2 - VCC | D2 -> +5V | Pull-up linie buton | |
| - | | **LED Verde (LED2)** | Anod | D4 (PD4) | Indicator sesiune Pomodoro activă | | + | | LED Verde (LED2) | Anod | D4 (PD4) | Indicator sesiune Pomodoro activa | |
| - | | ::: | R2 220Ω — GND | D4 → GND | Protecție LED verde | | + | | ::: | R2 220Ohm - GND | D4 -> GND | Protectie LED verde | |
| - | | **LED Roșu (LED1)** | Anod | D5 (PD5/OC0B) | Indicator alertă ambientală | | + | | LED Rosu (LED1) | Anod | D5 (PD5/OC0B) | Indicator alerta ambienta | |
| - | | ::: | R1 220Ω — GND | D5 → GND | Protecție LED roșu | | + | | ::: | R1 220Ohm - GND | D5 -> GND | Protectie LED rosu | |
| - | </note> | + | |
| - | {{:pm:prj2026:vlad.radulescu2901:schematic_smart-desk-companion_2026-05-17.png?700|Schema electrica Smart Desk Companion}} | + | |
| + | **Poza montaj fizic:** | ||
| + | {{:pm:prj2026:vlad.radulescu2901:whatsapp_image_2026-05-23_at_22.17.43_1_.jpeg?200|}} | ||
| + | **Video demonstrativ:** | ||
| + | |||
| + | [[https://youtu.be/-bkMuSFO8lg?feature=shared]] | ||
| ===== Software Design ===== | ===== Software Design ===== | ||
| - | <note tip> | + | **Mediu de dezvoltare:** |
| - | Descrierea codului aplicaţiei (firmware): | + | |
| - | * mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR) | + | Proiectul a fost dezvoltat folosind PlatformIO cu VSCode, fara framework Arduino, folosind doar avr-libc (bare-metal). Compilatorul folosit este avr-gcc cu target ATmega328P la 16MHz. |
| - | * librării şi surse 3rd-party (e.g. Procyon AVRlib) | + | |
| - | * algoritmi şi structuri pe care plănuiţi să le implementaţi | + | **Structura codului:** |
| - | * (etapa 3) surse şi funcţii implementate | + | |
| - | </note> | + | Codul este organizat modular, fiecare fisier sursa avand o responsabilitate clara: |
| + | |||
| + | * main.c - loop principal, initializare periferice, coordonare module | ||
| + | * adc.c - driver ADC bare-metal, citire MQ-135 si LDR prin registre ADMUX/ADCSRA | ||
| + | * dht11.c - protocol single-wire bit-banging pentru citirea temperaturii si umiditatii | ||
| + | * i2c.c - driver TWI hardware la 100kHz prin registre TWBR/TWCR/TWDR | ||
| + | * lcd.c - driver LCD 16x2 prin expander I2C PCF8574, mod 4-bit | ||
| + | * buzzer.c - generare ton PWM prin Timer0 in mod CTC pe pinul OC0A (D6) | ||
| + | * timer.c - Timer1 CTC pentru tick de 1 secunda (Pomodoro), Timer2 CTC pentru millis() | ||
| + | * sensors.c - agregare date senzori si verificare praguri de alerta | ||
| + | * display.c - logica afisare LCD cu rotatie pagini si prioritate alerte | ||
| + | * pomodoro.c - timer Pomodoro 25 minute, ISR INT0 pentru buton, LED verde | ||
| + | |||
| + | **Algoritmi implementati:** | ||
| + | |||
| + | * Citire ADC in mod Single Conversion cu prescaler 128 (125kHz) | ||
| + | * Protocol DHT11 bit-banging: semnal START 20ms LOW, citire 40 biti cu masurare durata HIGH | ||
| + | * Driver I2C hardware TWI: conditii START/STOP, transfer byte cu verificare ACK | ||
| + | * Driver LCD in mod 4-bit: initializare HD44780, trimitere nibble cu puls Enable | ||
| + | * Generare ton buzzer: Timer0 CTC cu toggle OC0A, frecventa variabila prin OCR0A | ||
| + | * Timer Pomodoro: Timer1 CTC la 1Hz, decrement secunde in ISR, flag _second_tick | ||
| + | * millis(): Timer2 CTC la 1000Hz, contor global incrementat in ISR | ||
| + | * Debounce buton: verificare interval minim 200ms intre apasari consecutive | ||
| + | * Rotatie pagini LCD: schimbare pagina la fiecare 3 secunde prin millis() | ||
| + | * Prioritate alerte: mesajele de alerta suprascriu paginile normale pe LCD | ||
| + | |||
| + | **Registre AVR folosite:** | ||
| + | |||
| + | * ADMUX, ADCSRA - configurare si pornire conversie ADC | ||
| + | * TWBR, TWSR, TWCR, TWDR - comunicatie I2C hardware | ||
| + | * TCCR0A, TCCR0B, OCR0A - Timer0 pentru buzzer PWM | ||
| + | * TCCR1A, TCCR1B, OCR1A, TIMSK1 - Timer1 pentru Pomodoro tick | ||
| + | * TCCR2A, TCCR2B, OCR2A, TIMSK2 - Timer2 pentru millis() | ||
| + | * EICRA, EIMSK - configurare intrerupere externa INT0 pentru buton | ||
| + | * DDRD, PORTD, PIND - configurare pini digitali LED-uri si buton | ||
| + | * UBRR0H, UBRR0L, UCSR0B, UCSR0C, UDR0 - UART pentru debug serial | ||
| + | |||
| + | ===== Rezultate Obtinute ===== | ||
| + | |||
| + | Proiectul Smart Desk Companion functioneaza conform specificatiilor propuse. In urma testarii au fost validate urmatoarele functionalitati: | ||
| - | ===== Rezultate Obţinute ===== | + | * Senzorul MQ-135 detecteaza corect calitatea aerului si activeaza alerta sonora si vizuala atunci cand valoarea ADC depaseste pragul prestabilit. |
| + | * Senzorul DHT11 transmite corect temperatura si umiditatea la fiecare 2 secunde, valorile fiind afisate pe LCD si monitorizate pentru depasirea pragurilor. | ||
| + | * Fotorezistorul LDR detecteaza nivelul de lumina ambienta si activeaza alerta atunci cand iluminarea scade sub pragul minim, util in special pentru sesiunile de lucru in conditii de lumina slaba. | ||
| + | * LCD-ul 16x2 afiseaza ciclic datele de la toti senzorii si prioritizeaza mesajele de alerta atunci cand este cazul. | ||
| + | * Buzzer-ul emite alerte sonore clare la depasirea oricarui prag si un semnal distinctiv la finalul sesiunii Pomodoro. | ||
| + | * Timer-ul Pomodoro functioneaza corect: sesiunea de 25 de minute porneste la apasarea butonului, LED-ul verde ramane aprins pe toata durata, iar la final buzzer-ul emite semnalul de incheiere. | ||
| + | * Sistemul functioneaza complet autonom, fara conexiune la internet sau aplicatii externe. | ||
| - | <note tip> | + | Dispozitivul s-a dovedit util in practica, oferind feedback in timp real asupra conditiilor de lucru si ajutand la structurarea timpului prin tehnica Pomodoro. Utilizarea acestuia in timpul sesiunilor de studiu contribuie la constientizarea factorilor de mediu care pot afecta concentrarea si sanatatea pe termen lung. |
| - | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | + | |
| - | </note> | + | |
| ===== Concluzii ===== | ===== Concluzii ===== | ||
| - | ===== Download ===== | + | Proiectul Smart Desk Companion reprezinta o solutie practica si accesibila pentru monitorizarea mediului de lucru si gestionarea timpului. Implementarea bare-metal pe ATmega328P a permis intelegerea aprofundata a registrelor AVR si a perifericelor hardware: ADC, timere, PWM, I2C, intreruperi externe si UART. |
| - | <note warning> | + | Principalele provocari intampinate au fost calibrarea fotorezistorului LDR (valorile ADC variind in functie de rezistorul din divizorul de tensiune si de conditiile de lumina) si implementarea corecta a protocolului DHT11 prin bit-banging. |
| - | 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ă ;-). | + | |
| - | 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**. | + | Proiectul poate fi extins in viitor cu: |
| - | </note> | + | * conectivitate Wi-Fi pentru logarea datelor in cloud |
| + | * afisaj grafic color in locul LCD-ului text | ||
| + | * notificari mobile la depasirea pragurilor | ||
| + | |||
| + | ===== Download ===== | ||
| + | |||
| + | [[https://github.com/cristinardk/Proiect_PM]] | ||
| - | ===== Jurnal ===== | ||
| - | <note tip> | ||
| - | Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. | ||
| - | </note> | ||
| ===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== | ||
| - | <note> | + | **Resurse Hardware:** |
| - | Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. | + | |
| - | </note> | + | * Datasheet ATmega328P - https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf |
| + | * Datasheet MQ-135 - https://www.olimex.com/Products/Components/Sensors/SNS-MQ135/resources/SNS-MQ135.pdf | ||
| + | * Datasheet DHT11 - https://www.mouser.com/datasheet/2/758/DHT11-Technical-Data-Sheet-Translated-Version-1143054.pdf | ||
| + | * Datasheet HD44780 LCD Controller - https://www.sparkfun.com/datasheets/LCD/HD44780.pdf | ||
| + | |||
| + | **Resurse Software:** | ||
| - | <html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | + | * AVR Libc Reference Manual - https://www.nongnu.org/avr-libc/user-manual/ |
| + | * PlatformIO Documentation - https://docs.platformio.org | ||
| + | * Laboratoarele PM - https://ocw.cs.pub.ro/courses/pm/lab | ||