This is an old revision of the document!
Swiffer Autonom
Introducere
Proiectul consta in crearea unui robot “autonom” care urmareste un algoritm de tip zig-zag. Acesta poate fi oprit, pornit sau resetat prin intermediul modulului Bluetooth. Pe viitor se poate adapta la a se conecta la un server ML pentru a invata camera autonom, iar Swiffer-ul poate fi schimbat cu un modul de aspirator.
Descriere generală
Descrierea sumara a modulelor si a modului de interactiune
1. Descrierea modulelor hardware:
Unitatea de procesare (ATmega328P): Reprezinta “creierul” sistemului, fiind responsabil cu rularea algoritmului principal si coordonarea tuturor perifericelor.
Modulul de alimentare si putere (L298N & Divizor): Gestioneaza energia. Regulatorul integrat asigura 5V stabili pentru logica sistemului, puntea H controleaza curentii mari pentru locomotie, iar divizorul de tensiune permite citirea nivelului bateriei in conditii de siguranta.
Modulul de perceptie (Senzori HC-SR04 si TCRT5000): Culeg date din mediul fizic, masurand distanta pana la pereti/obstacole si detectand prezenta suprafetei de rulare.
Sistemul de locomotie (Motoare DC): Executa miscarea fizica (directie si viteza) a sasiului.
Modulul de comunicatie (Bluetooth HC-05): Asigura o legatura seriala wireless bidirectionala cu un terminal extern pentru monitorizare si debugging.
2. Modul de interactiune (Fluxul de functionare):
Sistemul interactioneaza printr-o bucla continua de tip Achizitie date → Procesare → Actiune.
Pachetul de baterii alimenteaza intregul ansamblu. In timpul rularii, senzorii colecteaza date din mediu si le transmit catre microcontroler sub forma de impulsuri sau niveluri de tensiune. ATmega328P analizeaza aceste intrari si, pe baza algoritmului de decizie, trimite semnale de control (PWM si directie logica) catre driverul L298N. Driverul actioneaza ca un amplificator, cupland motoarele la curentul bateriei pentru a executa deplasarea. In paralel, microcontrolerul raporteaza constant starea sistemului (baterie, distante, decizii de viraj) prin intermediul modulului Bluetooth.
Hardware Design
1. Listă de piese (BOM - Bill of Materials)
Pentru realizarea acestui proiect, a fost utilizată următoarea configurație hardware, axată pe un echilibru între eficiența energetică și acuratețea senzorilor:
Unitate de Control: 1x Placă de dezvoltare ATmega328P Xplained Mini.
Sistem de Locomoție:
1x Șasiu robot 2WD (din plexiglas).
2x Motoreductoare de curent continuu (Motoare TT, raport 1:48).
2x Roți cauciucate + 1x Roată pivotantă (Caster wheel).
1x Modul Driver Motoare L298N (cu regulator de tensiune LM7805 integrat).
Sistem de Percepție (Senzori):
3x Module ultrasonice HC-SR04 (amplasate frontal, stânga, dreapta).
1x Senzor optic reflexiv infraroșu TCRT5000 (pentru detecția marginilor / “Swiffer”).
Sistem de Comunicație: 1x Modul Bluetooth HC-05.
Sistem de Alimentare:
Componente Pasive & Conectică:
1x Rezistor 4.7kΩ (Albastru-precizie: Galben-Violet-Negru-Maro).
1x Rezistor 2.2kΩ (Albastru-precizie: Roșu-Roșu-Negru-Maro).
1x Breadboard mini (170 puncte).
Set fire conexiune Dupont (Tată-Tată, Mamă-Tată).
2. Scheme Electrice și Maparea Pinilor
Pentru a vizualiza interconectarea componentelor, se va consulta schema electrică de ansamblu de mai jos.
*(Notă tehnică: Alimentarea logicii de 5V a microcontrolerului se face prin pinul de +5V al modulului L298N, acesta coborând tensiunea de 6V a bateriei printr-un regulator integrat).*
(Schema eletrica)
Tabelul Conexiunilor Hardware (Pinout Map):
Pentru interfațarea senzorilor cu perifericele interne ale ATmega328P (Timere, ADC, USART, Întreruperi) s-a utilizat următoarea mapare:
| Modul Extern | Pin Modul | Conexiune ATmega328P | Rol / Periferic Utilizat |
| Modul HC-05 | TX | PD0 (RXD) | Comunicație Serială (USART) |
| Modul HC-05 | RX | PD1 (TXD) | Comunicație Serială (USART) |
| L298N (Driver) | ENA | PB1 (OC1A) | Control Viteză Motor Stânga (PWM Hardware) |
| L298N (Driver) | ENB | PB2 (OC1B) | Control Viteză Motor Dreapta (PWM Hardware) |
| L298N (Driver) | IN1, IN2 | PD4, PD5 | Control Direcție Motor Stânga (GPIO) |
| L298N (Driver) | IN3, IN4 | PD6, PD7 | Control Direcție Motor Dreapta (GPIO) |
| Divizor Tensiune | Vout (Intersecție) | PC0 (ADC0) | Monitorizare nivel baterie (ADC) |
| TCRT5000 | A0 | PC1 (ADC1) | Detecție analogică margine (ADC) |
| HC-SR04 (Senzori) | Pinii Echo | PD2/PD3 (INT0/INT1) | Captură timp răspuns (Întreruperi Externe) |
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
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.
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