Model of an Automatic Teller Machine
This package includes the implementation of an ATM system
(Automatic Teller Machine). A complete description of the system
and its implementation using the CD++ environment can be found
here
Basically, the system is composed by three subsystems:
- CardReader, that receives the inserted card and starts the
authorization process.
- Authorization, that validates the card, the PIN and the amount
of cash to be withdrawn.
- CashDispenser, that gives the cash to the user.
The CardReader and the CashDispenser are modeled as atomic
models, and the Authorization as a coupled model.
The Authorization subsystem is composed by the BalanceVerifier, the
PINVerifier and the UserInterface.
Simulation
The ATM system is implemented in the testATM model, that can be
simulated.
Three variables have been included to facilitate the observation of
the results.
- cardIn shows the insertions of cards into the ATM.
- cash shows the returned cash to the customer.
- cardOut shows the ejection of the inserted card.
Contents
Generated at 2026-04-15T18:18:36Z by OpenModelicaOpenModelica 1.26.3 using
GenerateDoc.mos