This shows you the differences between two versions of the page.
|
pm:prj2026:vlad.radulescu2901:rares.ciociea [2026/05/05 19:30] rares.ciociea [Software Design] |
pm:prj2026:vlad.radulescu2901:rares.ciociea [2026/05/13 10:18] (current) rares.ciociea [2. Scheme Electrice și Maparea Pinilor] |
||
|---|---|---|---|
| Line 7: | Line 7: | ||
| ====== Descriere generală ====== | ====== Descriere generală ====== | ||
| - | <note tip> | + | <note> |
| - | {{:pm:prj2026:vlad.radulescu2901:schema_bloc.png?200|}} | + | {{:pm:prj2026:vlad.radulescu2901:schema_bloc.png?700|}} |
| **Descrierea sumara a modulelor si a modului de interactiune** | **Descrierea sumara a modulelor si a modului de interactiune** | ||
| Line 59: | Line 59: | ||
| **Tabelul Conexiunilor Hardware (Pinout Map):** | **Tabelul Conexiunilor Hardware (Pinout Map):** | ||
| - | Pentru interfațarea senzorilor cu perifericele interne ale ATmega328P (Timere, ADC, USART, Întreruperi) s-a utilizat următoarea mapare: | + | Pentru interfațarea senzorilor cu perifericele interne ale ATmega328P s-a utilizat următoarea mapare: |
| ^ Modul Extern ^ Pin Modul ^ Conexiune ATmega328P ^ Rol / Periferic Utilizat ^ | ^ Modul Extern ^ Pin Modul ^ Conexiune ATmega328P ^ Rol / Periferic Utilizat ^ | ||
| | **Modul HC-05** | TX | PD0 (RXD) | Comunicație Serială (USART) | | | **Modul HC-05** | TX | PD0 (RXD) | Comunicație Serială (USART) | | ||
| | **Modul HC-05** | RX | PD1 (TXD) | 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)** | ENA | PD5 | Control Viteză Motor Stânga (PWM Hardware) | |
| - | | **L298N (Driver)** | ENB | PB2 (OC1B) | Control Viteză Motor Dreapta (PWM Hardware) | | + | | **L298N (Driver)** | ENB | PD6 | Control Viteză Motor Dreapta (PWM Hardware) | |
| - | | **L298N (Driver)** | IN1, IN2 | PD4, PD5 | Control Direcție Motor Stânga (GPIO) | | + | | **L298N (Driver)** | IN1, IN2 | PD4, PD7 | Control Direcție Motor Stânga (GPIO) | |
| - | | **L298N (Driver)** | IN3, IN4 | PD6, PD7 | Control Direcție Motor Dreapta (GPIO) | | + | | **L298N (Driver)** | IN3, IN4 | PB2, PB3 | Control Direcție Motor Dreapta (GPIO) | |
| - | | **Divizor Tensiune** | Vout (Intersecție) | PC0 (ADC0) | Monitorizare nivel baterie (ADC) | | + | | **Divizor Tensiune** | Vout (Intersecție) | PC0 (A0) | Monitorizare nivel baterie (ADC) | |
| - | | **TCRT5000** | A0 | PC1 (ADC1) | Detecție analogică margine (ADC) | | + | | **TCRT5000** | A0 | PC1 (A1) | Detecție analogică margine / podea (ADC) | |
| - | | **HC-SR04 (Senzori)** | Pinii Echo | PD2/PD3 (INT0/INT1) | Captură timp răspuns (Întreruperi Externe) | | + | | **HC-SR04 (Față)** | Trig, Echo | PD2, PD3 | Măsurare distanță față (GPIO) | |
| - | + | | **HC-SR04 (Stânga)** | Trig, Echo | PC2 (A2), PC3 (A3) | Măsurare distanță stânga (ADC folosit ca GPIO) | | |
| + | | **HC-SR04 (Dreapta)** | Trig, Echo | PC4 (A4), PC5 (A5) | Măsurare distanță dreapta (ADC folosit ca GPIO) | | ||
| ===== 3. Diagrame de Semnal ===== | ===== 3. Diagrame de Semnal ===== | ||
| Line 104: | Line 104: | ||
| * **Multitasking cooperativ:** Se va utiliza functia millis() pentru a implementa "software timere". Acest algoritm permite procesorului sa citeasca senzorii, sa raporteze date prin Bluetooth si sa ajusteze PWM-ul motoarelor (aproape) simultan. | * **Multitasking cooperativ:** Se va utiliza functia millis() pentru a implementa "software timere". Acest algoritm permite procesorului sa citeasca senzorii, sa raporteze date prin Bluetooth si sa ajusteze PWM-ul motoarelor (aproape) simultan. | ||
| * **Masina de Stari Finita (FSM):** Structura principala de control va fi un bloc switch-case ce defineste comportamentul robotului. Starile planificate includ: MERGE_FATA, DETECTARE_PERETE, INTOARCERE_90_GRADE_ST/DR, ALINIERE_ZIG_ZAG, OPRIRE_URGENTA_MARGINI si LOW_BATTERY. | * **Masina de Stari Finita (FSM):** Structura principala de control va fi un bloc switch-case ce defineste comportamentul robotului. Starile planificate includ: MERGE_FATA, DETECTARE_PERETE, INTOARCERE_90_GRADE_ST/DR, ALINIERE_ZIG_ZAG, OPRIRE_URGENTA_MARGINI si LOW_BATTERY. | ||
| - | * **Algoritm de acoperire:** Logica FSM va dicta un traseu de tip Boustrophedon (zig-zag). La detectarea unui obstacol frontal, robotul va verifica senzorii laterali pentru a alege directia corecta de viraj, alternand intoarcerile stanga-dreapta. | + | * **Algoritm de acoperire:** Logica FSM va dicta un traseu de tip zig-zag. La detectarea unui obstacol frontal, robotul va verifica senzorii laterali pentru a alege directia corecta de viraj, alternand intoarcerile stanga-dreapta. |
| ===== 4. Surse si functii implementate (Etapa 3) ===== | ===== 4. Surse si functii implementate (Etapa 3) ===== | ||
| Line 115: | Line 115: | ||
| <note tip> | <note tip> | ||
| - | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | + | To be determined. |
| </note> | </note> | ||
| Line 137: | Line 137: | ||
| <note> | <note> | ||
| - | Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. | + | ===== Resurse Hardware (Datasheet-uri) ===== |
| + | * **ATmega328P Xplained Mini** - User Guide-ul oficial Microchip (utilizat pentru maparea pinilor fizici ai placii si schemele de alimentare): [[https://ww1.microchip.com/downloads/en/DeviceDoc/ATmega328P-Xplained-Mini-User-Guide-DS50002659B.pdf|ATmega328P Xplained Mini User Guide (PDF)]] | ||
| + | * **Microcontroler ATmega328P** - Datasheet complet (utilizat pentru intelegerea arhitecturii, registrilor interni, Timere, ADC, USART si intreruperi): [[https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf|ATmega328P Datasheet (PDF)]] | ||
| + | * **Driver Motoare L298N** - STMicroelectronics Datasheet (consultat pentru limitele de curent, caderea de tensiune pe puntea H si logica de control): [[https://www.st.com/resource/en/datasheet/l298.pdf|L298N Datasheet (PDF)]] | ||
| + | * **Senzor Ultrasonic HC-SR04** - Specificatii tehnice (utilizat pentru extragerea diagramelor de semnal si a formulei de calcul a distantei bazate pe viteza sunetului): [[https://cdn.sparkfun.com/datasheets/Sensors/Proximity/HCSR04.pdf|HC-SR04 Datasheet (PDF)]] | ||
| + | * **Modul Bluetooth HC-05** - Manual de utilizare (consultat pentru tensiunile de operare si pinii de comunicatie RX/TX): [[https://components101.com/sites/default/files/component_datasheet/HC-05%20Datasheet.pdf|HC-05 Datasheet (PDF)]] | ||
| + | * **Senzor Infrarosu TCRT5000** - Vishay Datasheet (utilizat pentru curbele de reflectie si intelegerea circuitului emitator-receptor): [[https://www.vishay.com/docs/83760/tcrt5000.pdf|TCRT5000 Datasheet (PDF)]] | ||
| + | * **Motoare DC cu Reductor (TT Motors 1:48)** - Specificatii generice pentru motoarele galbene de sasiu (utilizate pentru a calcula curentul de stall necesar a fi suportat de L298N): [[https://cdn.sparkfun.com/datasheets/Robotics/DG01D.pdf|TT Motor Datasheet (PDF)]] | ||
| + | |||
| + | ===== Resurse Software ===== | ||
| + | * **OCW UPB - Proiectare cu Microprocesoare:** Suportul teoretic de laborator pentru configurarea perifericelor hardware si notiuni de electronica: [[https://ocw.cs.pub.ro/courses/pm|ocw.cs.pub.ro/courses/pm]] | ||
| + | * **Arduino Reference:** Documentatia oficiala pentru arhitectura de cod si functiile standard (millis, pini I/O) utilizate in sistemul non-blocant: [[https://www.arduino.cc/reference/en/|Arduino Language Reference]] | ||
| + | * **WaveDrom:** Unealta utilizata pentru generarea diagramelor de semnal (timing diagrams) din sectiunea de Hardware Design: [[https://wavedrom.com/|wavedrom.com]] | ||
| </note> | </note> | ||
| <html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | <html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | ||