Proiectul consta in realizarea unui bancomat care faciliteaza utilizatorului retragerea unei sume de bani in numerar, verificarea soldului disponibil si afisarea ultimei tranzactii.
Scopul proiectului este acela de a permite utilizatorilor identificarea posesorului cardului si operarea securizata asupra conturilor bancare.
Ideea proiectului provine de la bancomatul cel mai apropiat de casa mea, care nu functioneaza aproape niciodata :).
Utilizatorul va apropia cardul de cititorul wireless si va introduce cu ajutorul tastaturii codul pin asociat. Datele vor fi transmise catre placa Arduino care va accesa baza de date din memorie pentru a valida corectitudinea codului.
Odata validata identitatea utilizatorului, acesta poate opta pentru una din urmatoarele optiuni:
In cazul in care utilizatorul isi doreste sa retraga o suma de bani, va introduce suma dorita, iar in urma confirmarii corectitudinii operatiei (soldul utilizatorului este mai mare sau egal cu suma introdusa), placa Arduino va actiona motorul servo pentru a elibera bancnotele.
In cazul unei operatii de afisare (consultare sold sau istoric), se vor afisa catre utilizator datele solicitate la Serial monitor.
Librarii utilizate:
Logica programului consta in: - scanarea unui card valid - introducerea pinului corect - selectarea actiunii dorite de utilizator - in cazul retragerii de numerar, introducerea si validarea sumei dorite - eliberarea banilor sau, respectiv, afisarea informstiilor cerute
In primul rand, utilizatorul trebuie sa prezinte un card deja inregistrat in sistem. In caz contrar, va fi afisat un mesaj de eroare “This card is not with our bank”. In urma scanarii unui card valid, utilizatorul trebuie sa introduca pinul corespunzator cardului.
In urma validarii identitatii utilizatorului, bancomatul asteapta una din urmatoarele actiuni:
In cazul retragerii de numerar, bancomatul asteapta introducerea sumei de catre utilizator cu ajutorul tastaturii. Pentru a inregistra suma dorita, trebuie apasata tasta D. In cazul in care suma este mai mare decat soldul disponibil, va fi afisat un mesaj de eroare. Daca suma este valida, va fi actionat servo motorul care va deschide cutia ce contine banii.
In cazul celorlalte 2 actiuni, datele cerute de utilizator vor fi afisate la Serial monitor.
Implementarea proiectului s-a indepartat considerabil de ideea initiala din cauza unui numar dificultati tehnice, de aceea varianta finala este una foarte simplificata.
Consider ca implementarea este usor de extins si acest proiect poate fi dus la un nivel mult mai inalt cu mai mult timp si mai multe resurse.