Bank ATM

GitLab repository

Demo product
Korte video waarin de meeste functionaliteit van de bank wordt getoond.

Overzicht componenten
  • Bank
    • MySQL server
    • Native applicatie
  • Arduino Nano
    • RFID-RC522
    • Matrix membrane 4x4 keypad
  • USB kabel voor seriële communicatie
Overzicht systeem
De applicatie bestaat uit 3 threads, welke allemaal een unieke functie hebben. De main thread bevat de GUI. De database thread voert alle queries uit en slaat deze data op. En als laatst de serial thread, deze thread bevat een listener die alle seriële data ontvangt. Afhankelijk van wat de serial thread aan user input ontvangt zal de SerialCommand class "commando's" uitvoeren die de GUI en database thread gebruiken.

Database ERD
Hieronder is de ER (Entity-relationship) diagram te vinden.
Database ontwerp
  • MySQL server
  • Lokaal opgeslagen
Hieronder is de EER (Enhanced entity-relationship) diagram te vinden.

Arduino - fritzing
  • Arduino Nano
  • RFID-RC522
  • Matrix membrane 4x4 keypad

GUI
  • Native applicatie
  • Geschreven in C++ en Qt
  • Cross platform (build tool: qmake)
  • Multithreaded

Ten alle tijden kan de sessie worden afgebroken door de pas uit de pinautomaat te verwijderen, de interface wordt daarna naar de inlogpagina doorgestuurd. Alle velden waar de gebruiker gegevens kan invoeren, hebben de mogelijkheid voor het weergeven van foutmeldingen.

Hieronder zijn schermvoorbeelden te vinden.

© 2024 Rick van Vonderen