This shows you the differences between two versions of the page.
|
pm:prj2026:ciprian.popescu0411:smart-guard [2026/05/22 19:07] rares_florian.oprea [Jurnal] |
pm:prj2026:ciprian.popescu0411:smart-guard [2026/05/22 20:29] (current) rares_florian.oprea [Hardware Design] |
||
|---|---|---|---|
| Line 69: | Line 69: | ||
| - | {{:pm:prj2026:ciprian.popescu0411:milestone_hardware_smartguard.jpeg?600|}} | + | {{:pm:prj2026:ciprian.popescu0411:img_5888.jpeg?600|}} |
| ===== Software Design ===== | ===== Software Design ===== | ||
| - | * Demo proiect: - | + | * Demo proiect: https://youtu.be/0NK5whnqt9E |
| - | * github: - | + | * Github: https://github.com/RaresOprea04/SMART-GUARD |
| Proiectul a fost dezvoltat în mediul Arduino IDE / PlatformIO, folosind framework-ul Arduino pentru microcontroller-ul ATmega328P (placa Arduino Uno). Codul este scris în C++ și este structurat pe o arhitectură robustă de tip **Mașină de Stări (Finite State Machine)**. | Proiectul a fost dezvoltat în mediul Arduino IDE / PlatformIO, folosind framework-ul Arduino pentru microcontroller-ul ATmega328P (placa Arduino Uno). Codul este scris în C++ și este structurat pe o arhitectură robustă de tip **Mașină de Stări (Finite State Machine)**. | ||
| Line 103: | Line 103: | ||
| | MFRC522.h | Gestionează inițializarea cipului RC522, emisia undelor radio de 13.56MHz și citirea/decriptarea ID-ului (UID) de pe tag-urile și cartelele de securitate scanate. | | | MFRC522.h | Gestionează inițializarea cipului RC522, emisia undelor radio de 13.56MHz și citirea/decriptarea ID-ului (UID) de pe tag-urile și cartelele de securitate scanate. | | ||
| | TM1638.h | Gestionează multiplexarea prin 3 fire (STB, CLK, DIO) necesară pentru a controla simultan cele 8 afișaje cu 7 segmente, cele 8 LED-uri roșii și pentru a citi starea celor 8 butoane integrate. | | | TM1638.h | Gestionează multiplexarea prin 3 fire (STB, CLK, DIO) necesară pentru a controla simultan cele 8 afișaje cu 7 segmente, cele 8 LED-uri roșii și pentru a citi starea celor 8 butoane integrate. | | ||
| - | ===== Rezultate Obţinute ===== | ||
| - | |||
| - | <note tip> | ||
| - | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | ||
| - | </note> | ||
| ===== Concluzii ===== | ===== Concluzii ===== | ||
| + | Dezvoltarea sistemului **SMART GUARD** a reprezentat o oportunitate excelentă de a aprofunda concepte complexe de hardware și software embedded. Proiectul a evoluat spectaculos de la o simplă alarmă de proximitate la un sistem hibrid de control acces, capabil să gestioneze memorii dinamice și comenzi de la distanță. | ||
| - | ===== Download ===== | + | Principala provocare a proiectului a fost gestionarea corectă a resurselor limitate ale microcontroller-ului ATmega328P. Implementarea terminalului UART bogat în mesaje de log a dus inițial la depășirea memoriei SRAM (Stack Crash) și la resetarea plăcii în buclă. Problema a fost rezolvată optimizând arhitectura software și folosind macro-ul ''F()'' pentru a forța compilatorul să citească string-urile direct din memoria Flash (ajungând la un consum stabil de sub 50% RAM). |
| - | <note warning> | + | Din punct de vedere arhitectural, trecerea la o Mașină de Stări (Finite State Machine) complet non-blocantă, bazată pe Timere hardware (''millis()'') în detrimentul funcțiilor de tip ''delay()'', a fost un succes. Aceasta i-a permis sistemului să ruleze în paralel: să filtreze zgomotul senzorului ultrasonic, să afișeze fluid interfața pe modulul TM1638, să asculte magistrala SPI pentru carduri RFID și să mențină portul UART deschis pentru consolă. |
| - | 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**. | + | Rezultatul este un produs robust, interactiv și foarte apropiat de standardele comerciale de securitate. |
| - | </note> | + | ===== Download ===== |
| + | Arhiva completă a proiectului **SMART GUARD**, pregătită pentru descărcare. Aceasta conține codul sursă (PlatformIO / Arduino), diagramele hardware, fișierul README cu documentația și istoricul versiunilor (ChangeLog). | ||
| + | {{:pm:prj2026:ciprian.popescu0411:smart_guard_v2.zip|}} | ||
| ===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== | ||