Smart Pill Assistant este un dispozitiv inteligent destinat organizării și administrării medicamentelor, construit în jurul microcontrollerului ATmega328P. Sistemul îi ajută pe utilizatori să își gestioneze mai ușor tratamentul zilnic, prin eliberarea dozelor la ore prestabilite și prin notificări sonore și vizuale care semnalează momentul administrării.
Scopul proiectului constă în dezvoltarea unei soluții care să faciliteze respectarea schemei de tratament și să reducă riscul omiterii unei doze. Dispozitivul oferă o metodă practică și eficientă de organizare a medicamentelor, eliminând necesitatea monitorizării constante a orei sau a pregătirii manuale a pastilelor pentru fiecare administrare.
Ideea proiectului a apărut observând dificultățile pe care le întâmpinau persoane vârstnice din familia mea în organizarea tratamentului zilnic și în respectarea orelor de administrare a medicamentelor. Mi-am dat seama cât de complicat și obositor poate deveni acest proces zi de zi, iar de aici mi-a venit ideea unui mecanism care să îi ajute să își gestioneze mai ușor tratamentul și care ar putea fi util și altor persoane aflate în situații asemănătoare.
Consider că proiectul este util în special persoanelor în vârstă sau celor care trebuie să urmeze tratamente complexe deoarece oferă o modalitate mai simplă de administrare a medicamentelor. Spre deosebire de metodele clasice, bazate pe alarme și organizarea manuală a pastilelor, acest instrument combină notificarea utilizatorului cu distribuirea automată a dozelor la orele stabilite. În plus, proiectul reprezintă pentru mine o oportunitate de a aplica practic conceptele studiate în cadrul laboratoarelor și de a integra mai multe componente hardware și software într-un sistem funcțional, construit în jurul unei probleme reale.
Arhitectura proiectului este construită în jurul microcontrolerului ATmega328P-XMINI, care coordonează comunicarea dintre module și gestionează funcționarea întregului sistem de distribuire a medicamentelor.
Modulul Bluetooth (HC-05) este utilizat pentru configurarea dispozitivului prin intermediul unei aplicații mobile. Prin conexiunea UART, utilizatorul poate transmite orele de administrare și informațiile asociate schemei de tratament.
Ecranul LCD 1602 are rolul de a afișa informațiile importante pentru utilizator precum ora curentă și alertele sistemului. Comunicarea se realizează prin magistrala I2C.
Modulul RTC (DS3231) menține evidența timpului cu precizie ridicată și comunică tot prin interfața I2C. Datorită bateriei integrate, acesta păstrează data și ora chiar și în cazul întreruperii alimentării principale.
Motorul stepper (28BYJ48) împreună cu driverul ULN2003 reprezintă mecanismul responsabil pentru distribuirea medicamentelor. Microcontrollerul transmite semnale GPIO către driver, care controlează alimentarea motorului și permite rotirea caruselului pentru poziționarea compartimentului corespunzător fiecărei doze.
Modulul pentru buzzer pasiv este utilizat pentru generarea alertelor sonore în momentul administrării medicamentelor. Acesta este controlat prin semnale PWM generate de ATmega328P.
Butonul permite utilizatorului să confirme preluarea medicamentului și folosește întreruperi externe pentru a permite reacția imediată a sistemului la apăsare.
Stabilizatorul de tensiune (LM2596) are rolul de a reduce tensiunea furnizată de bateria de 9V, asigurând alimentarea cu 5V a tuturor componentelor din sistem.
Lista de piese
Mediul de dezvoltare:
Codul proiectului a fost realizat în Visual Studio Code (VSCode), folosind extensia PlatformIO și framework-ul Arduino.
Programarea microcontrollerului se realizează direct prin programatorul integrat al plăcii (mEDBG), fără utilizarea unui bootloader.
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.
Datasheets:
| Componentă | Datasheet |
|---|---|
| ATmega328P Xplained Mini | Link Datasheet |
| Bluetooth Module (HC-05) | Link Datasheet |
| Motor Driver (ULN2003) | Link Datasheet |
| Stepper Motor (28BYJ-48) | Link Datasheet |
| RTC Module (DS3231) | Link Datasheet |
| Display (LCD 1602) | Link Datasheet |
| Voltage Regulator Module (LM2596) | Link Datasheet |
| Passive Buzzer Module | Link Datasheet |