Universitatea Politehnicã Bucuresti
Facultatea de Automaticã si Calculatoare
proiect
Analiza si Sinteza Dispozitivelor Numerice
Automat Coca Cola
Realizat de: student Cristian Cucuteanu
grupa 321AA
TEMA PROIECTULUI:
Sa se proiecteze un automat pentru umplere si eliberare pahare cu Coca-Cola.
Se iau in considerare operatiile: introducere monede, eliberare rest, coborare pahar si umplere pahar.
O posibila arhitectura a automatului e urmatoarea in care s-au specificat anumite caracteristici ale acestuia:
Unde pe langa
elementele explicate mai exista:
X reprezinta un senzor intern care determina natura monedei introduse considerata 0 daca e de 1000 respectiv 1 daca e de 500 (unitati monetare);
M reprezinta un senzor intern care notifica asupra existentei unei monede introduse;
Y reprezinta un senzor intern care notifica asupra existentei sucului in aparat;
Z reprezinta un senzor intern care notifica asupra existentei monedei de 500 necesare in cazul in care automatul este nevoit sa dea rest.
Un senzor intern care verifica existenta paharelor in automat
Algoritmul de succesiune a starilor automatului se poate exprima folosind o organigrama. O posibila astfel de masina algoritmica de stare poate arata in acest mod:
unde cu cercuri au fost reprezentate starile, cu dreptunghiuri comenzile care se dau, iar cu romburi blocurile conditionale.
Aceasta organigrama corespunde urmatoarei functionari a automatului:
In starea initiala S1 se verifica existenta sucului in automat. Daca acesta nu exista se verifica prezenta monedei introduse. Automatul va in stare nefunctionabila indiferent de prezenta monedei in el, iar in cazul in care aceasta exista se va returna, automatul intorcandu-se in starea initiala S1.
In starea S2 automatul are suc si ramane in aceasta stare atata timp cat nu este introdusa moneda.
In starea S3 automatul are o moneda introdusa. In cazul in care utilizatorul apasa butonul "restituire moneda" aceasta i se va inapoia. In caz contrar se presupune ca utilizatorul apasa butonul "eliberare pahar" si automatul verifica daca mai are pahare. Daca acesta conditie e indeplinita el va trece in starea S4 de unde va verifica natura monedei. Daca aceasta e de 500 , va elibera paharul cu suc si va reveni in starea initiala S1. In cazul in care moneda introdusa e de 1000, verifica prezenta unei monede de 500 necesare pentru a da restul. Daca aceasta exista, automatul o va elibera impreuna cu paharul cu suc si va reveni in S1. Daca nu are cum sa dea restul, automatul este nevoit sa returneze moneda de 1000 si sa se intoarca in stare S2 pentru o posibila introducere a unei monede de 500. Evident , in cazul in care automatul nu are pahare, fiind nefunctionabil, returneaza moneda introdusa si revine in starea S2.
Codificare celor patru stari se poate face pe doi biti, combinatiile fiind evidentiate in urmatorul tabel:
in timp ce calculele
pentru iesiri sunt:
care se reprezinta astfel:
Dintre variantele posibile pentru implementare am ales-o pe cea cu multiplexoare de tipul MUX 4:1si porti logice NOT, AND, OR si NOR:
|