Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2026:atoader:adrian_cosmin.amzar [2026/05/16 20:24]
adrian_cosmin.amzar [Hardware Design]
pm:prj2026:atoader:adrian_cosmin.amzar [2026/05/16 21:03] (current)
adrian_cosmin.amzar [Hardware Design]
Line 44: Line 44:
  
 ===== Hardware Design ===== ===== Hardware Design =====
 +
 +=== Lista Componente ===
  
 ^ Componenta ^ Model / Specificatii ^ Cantitate ^ ^ Componenta ^ Model / Specificatii ^ Cantitate ^
Line 58: Line 60:
 | Display LCD + modul I2C | LCD 1602, interfata I2C | 1 | | Display LCD + modul I2C | LCD 1602, interfata I2C | 1 |
  
 +=== Componente folosite si Rolul lor ===
 +
 +^ Componenta ^ Rol in proiect ^
 +| Microcontroller ATmega328P-XMINI | Creierul sistemului. Ruleaza codul in C pur, citeste senzorul prin pooling si controleaza actuatorii (timere, registre). |
 +| Senzor ultrasonic HC-SR04P | Modulul de input. Masoara distanta pana la mana utilizatorului prin emiterea si receptia de unde sonore. |
 +| Servo motor SG90 | Actuatorul principal. Actioneaza mecanic tija (push-rod) pentru a ridica si cobori capacul cosului. |
 +| Display LCD 1602 + modul I2C | Interfata vizuala. Afiseaza mesaje de stare ("​Apropie mana", "Capac Deschis!"​) si contorul de utilizari. |
 +| Buzzer activ | Feedback sonor. Emite un semnal acustic scurt (un "​beep"​) in momentul in care capacul se deschide. |
 +
 +=== Pinii folositi ===
 +
 +^ Pin ATmega328P ^ Eticheta ^ Componenta ^ Rol ^
 +| PD2 | BUZZER | Buzzer Activ | Iesire digitala - Controlul on/off al semnalului sonor |
 +| PD3 | LED_ROSU | LED-uri Rosii | Iesire digitala - Activarea indicatorului de capac deschis |
 +| PD4 | LED_VERDE | LED-uri Verzi | Iesire digitala - Activarea indicatorului de stare de veghe |
 +| PD5 | US_ECHO | Senzor HC-SR04 | Intrare digitala - Masurarea duratei pulsului de ecou reflectat |
 +| PD6 | US_TRIG | Senzor HC-SR04 | Iesire digitala - Generarea pulsului de declansare de 10us |
 +| PB1 | SERVO_PWM | Servo SG90 | Iesire PWM - Generat de Timer 1 (OC1A) la 50Hz pentru unghi |
 +| PC4 | SDA | Modul LCD I2C | Linie de date bidirectionala (interfata hardware TWI) |
 +| PC5 | SCL | Modul LCD I2C | Linie de ceas/​sincronizare (interfata hardware TWI) |
 +| VCC / +5V | VCC | Toate | Magistrala pozitiva de alimentare (5V din USB-ul placii) |
 +| GND | GND | Toate | Masa comuna a circuitului (intoarcerea curentului la sursa) |
 +
 +=== Schema electrica ===
 +
 +{{:​pm:​prj2026:​atoader:​schemaCosSmart.png?​800|}}
 +
 +Nu am gasit in KiCad placa ATmega328P Xplained Mini si am folosit echivalentul ATmega328P-P
 +
 +Schema prezinta:
 +  * ATmega328P Xplained Mini in centru, ca unitate de control
 +  * HC-SR04 conectat pe pinii TRIG (PD6) si ECHO (PD5) - reprezinta senzorul ultrasonic pentru masurarea distantei
 +  * Servo motor SG90 conectat pe pinul PWM (PB1) - reprezinta actuatorul folosit pentru ridicarea capacului
 +  * LCD I2C conectat pe magistrala I2C (SDA=PC4, SCL=PC5) cu alimentare de 5V - afiseaza starea si numarul de utilizari
 +  * Buzzer conectat pe PD2 pentru activare si semnalizare sonora scurta la deschidere
 +  * LED-uri verzi conectate in paralel pe pinul PD4 prin rezistente de 220 Ohm - indicator pentru starea de repaus
 +  * LED-uri rosii conectate in paralel pe pinul PD3 prin rezistente de 220 Ohm - indicator pentru starea activa (capac deschis)
 +
 +=== Principiu de functionare ===
 +
 +Sistemul functioneaza pe baza unei bucle infinite de citire si reactie, impartita in trei stadii:
 +  * Starea de Veghe (Repaus): Senzorul ultrasonic emite unde in permanenta. Cat timp distanta masurata este mai mare de 8 cm, capacul ramane inchis, LED-urile verzi sunt aprinse (indicand starea de veghe), iar ecranul LCD afiseaza textul stabil "​Apropie mana" alaturi de numarul curent de utilizari.
 +  * Starea Activa (Detectie): Cand o mana se apropie la sub 8 cm, microcontrollerul comuta starea: LED-urile verzi se sting, cele rosii se aprind, buzzerul emite un semnal sonor scurt (150ms) ca feedback, iar ecranul isi schimba textul in "Capac Deschis!"​. In acelasi timp, contorul de utilizari creste cu +1, iar Timerul 1 modifica factorul de umplere (Duty Cycle) pe pinul PB1, determinand servomotorul sa roteasca axul rapid la 90 de grade, ridicand capacul prin intermediul tijei mecanice.
 +  * Temporizare si Revenire: Sistemul mentine capacul deschis timp de 4 secunde pentru a permite aruncarea deseurilor. Dupa expirarea timpului, motorul revine lin la 0 grade, LED-urile rosii se sting, cele verzi se reaprind, iar ecranul revine la mesajul de veghe, actualizat cu noul numar de utilizari.
 +
 +== Imagini Hardware ==
 +
 +{{:​pm:​prj2026:​atoader:​p1CosSmart.jpeg?​400|}}
 +{{:​pm:​prj2026:​atoader:​p2CosSmart.jpeg?​400|}}
 +{{:​pm:​prj2026:​atoader:​p3CosSmart.jpeg?​400|}}
 +{{:​pm:​prj2026:​atoader:​p4CosSmart.jpeg?​400|}}
 +{{:​pm:​prj2026:​atoader:​p5CosSmart.jpeg?​400|}}
 +{{:​pm:​prj2026:​atoader:​dovadacamergeCosSmart.jpeg?​400|}}
  
 +In imaginea de mai sus se poate observa cum senzorul a detectat ca m-am apropiat sub threshold-ul de 8cm si trimite semnal la SG90 sa deschida cosul, ca sa aruncam gunoiul in el.
  
 <note tip> <note tip>
pm/prj2026/atoader/adrian_cosmin.amzar.1778952281.txt.gz · Last modified: 2026/05/16 20:24 by adrian_cosmin.amzar
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0