Vous êtes sur la page 1sur 8

Cap.

5 Sinteza automatelor sincrone

Schema bloc general este dat n fig.5.1., unde:


x z
CLC circuit logic combinaional; CLC
CL circuit logic;
La automatele sincrone comutarea variabilelor de y
reacie (variabilelor de stare sau secundare) se face CL Tact
sincron cu un tact extern.

Fig.5.1. Automat sincron

n funcie de tipul circuitului logic de pe calea de reacie, automatele sincrone


se clasific dup cum urmeaz:
- cu CBB de tip J-K pe calea de reacie;
- cu CBB de tip D (registru de deplasare distribuit) pe calea de reacie;
- cu numrtoare i registre pe calea de reacie;
- cu structuri complexe (ROM, RAM) pe reacie.

5.1. Sinteza automatelor sincrone cu CBB de tip J-K pe calea de reacie


Mai nti se stabilesc nite reguli privind utilizarea diagramelor K-V.
Se d diagrama K-V din fig.5.2.a.

AB
CD 00 01 11 10
00 1 0 1 0 AB
01 0 1 1 0 C 00 01 11 10
11 0 1 0 1 0 D D 1 0
10 1 1 0 0 1 D 1 0 D

Fig.5.2.a) Diagrama K-V b) Contracia diagramei K-V

Prin contracie diagrama K-V se reduce prin introducerea unei variabile n


locaiile diagramei eliminndu-se 2 linii ale diagramei. Se obine astfel o diagram
K-V cu variabile incluse.

1
Din tabelul din fig.5.3. se dau cteva reguli de contracie:

Variabile Expresie A V V V V x A B V
contractate ce se x I II III IV 0 0 0 0
00 0 0 1 0 0 0 1 0
introduce
01 0 1 1 1 0 1 0 1
n tabel V
10 0 0 0 1 0 1 1 1
x=0 x=1 1 0 0 0
m 0 0 0 11 1 0 1 1
1 0 1 1
n 0 1 x XA XA X+A X+A
1 1 0 0
p 1 0 x 1 1 1 1
q 1 1 1 Se construiete tabelul astfel:
I 0 A xA Pentru VI n tabelul din fig. a AB
II A 0 xA
se consider locaiile unde x 00 01 11 10
III 1 A avem O|A, adic combinaiile 0 0 0 1 1
x +A
IV A 1 m i n. 1 0 1 1 0
x+A
V A B x A+xB
a) b)
Fig.5.3.a) Tabelul cu reguli de contracie; b) Deducerea regulilor pentru
introducerea funciilor n diagrama K-V

Prin introducerea funciilor de una sau mai multe variabile n diagramele K-


V se obin reprezentri mai compacte, ns regulile de obinere a formei minimale
sunt complexe i greu de aplicat.
O metod simplificat a regulii de minimizare cuprinde etapele:
1) n locaiile cu 1 logic se consider a fi valori indiferente i se
minimizeaz formnd suprafee cu locaii ce conin aceeai funcie
(variabil);
2) n locaiile unde sunt incluse funcii de una sau mai multe variabile se
consider ca fiind 0 logic i se creeaz suprafee cu locaii de 1 logic.
3) Se sumeaz logic produsele rezultate din cele dou etape.

Exemplu: Se d diagrama din fig.5.4.a.

AB AB
C 00 01 11 10 C 00 01 11 10 ACD+ACD
0 D+E D 0 E 0 D D 0
1 E 1 1 D+E 1 X X D
a) Exemplu de diagram b) Diagrama corespunztoare variabilei D

AB AB
C 00 01 11 10 C 00 01 11 10
0 E E BE 0 BC
1 E X X E 1 1 1
c) Diagrama corespunzatoare d) Diagrama corespunzatoare
variabilei E locatiilor cu 1 logic
2
Fig.5.4.
Rezult c dup minimizare, prin sumarea termenilor obinui din diagramele
din fig.5.4.b, c, d se obine expresia:
ABD ACD BE BC
Sinteza unui automat sincron cu CBB de tip J-K pe reacie
presupune urmtoarele etape:
1) Din protocolul de funcionare propus pentru sinteza automatului se
identific mrimile de intrare i ieire ce apar n fiecare secven de
funcionare a automatului.
2) Se construiete graful de stri asociat evoluiei secveniale a automatului.
Fiecrei secvene funcionale i se asociaz cte o stare. Se noteaz ieirile
ce trebuie generate n fiecare stare, precum i deciziile ce determin
evoluia dintr-o stare n alta.
3) Se determin numrul variabilelor secundare necesar pentru codificarea
strilor, din condiia 2s>=p>2s-1 unde:
s numrul variabilelor secundare
p numrul strilor din graf
n funcie de numrul de variabile secundare necesar se codific strile
grafului.
Numrul CBB de tip J-K va fi egal cu numrul variabilelor secundare
necesare pentru codificarea strilor. Codificarea strilor nu va pune probleme, ca la
sinteza Huffman pentru automatele asincrone referitoare la apariia ciclurilor.
4) Se construiete tabelul de codificare al strilor (dup codificarea binar i
alfanumeric a strilor din graful de stri). Acest tabel este de fapt o
diagram K-V, la care se reprezint pe linii i coloane variabilele
secundare iar ntr-o locaie se trece codul alfanumeric al strii ataat
constuciei variabilelor secundare pentru locaia respectiv.
5) Se construiesc tabelele de evoluie al strilor yi(t+1), unde t+1 este
momentul urmtor determinat de durata impulsului de tact, fa de
momentul actual t.
6) Se construiesc tabelele de excitaie pentru fiecare CBB de tip J-K ce va
genera fiecare cte o variabil secundar yi. n acest scop se folosesc
tabelele de funcionare ale CBB de tip J-K din fig.5.4, asociind valorile
variabilelor secundare yi(t) ieirilor Qt ale CBB J-K, i valorile yi(t+1)
ieirilor Q(t+1) ale CBB J-K. Se tiu evoluiile Qt Qt+1 i se determin
valorile intrrilor J i K obinndu-se cte dou tabele pentru fiecare CBB.

3
J K Qt Qt+1 Qt Qt+1 J K
0 0 0 0 0 0 0 0 Qt Qt+1 J K
0 0 1 1 1 1 0 0 0 0 0 x
0 1 0 0 0 0 0 1 0 1 1 x
0 1 1 0 1 0 0 1 1 0 x 1
1 0 0 1 0 1 1 0 1 1 x 0
1 0 1 1 1 1 1 0 0 x
1 1 0 1 0 1 1 1 1 x
1 1 1 0 1 0 1 1

Fig 5.5.

7) Se determin (sintetizeaz) funciile de excitaie din tabelele de excitaie


(funciile logice asociate intrrilor J i K ale fiecrui CBB). Expresiile
acestor funcii nu este obligatoriu s fie minime, astfel nct se pot folosi
i multiplexoare pentru implementarea acestor funcii.
8) Se determin funciile logice ale ieirilor generate. De obicei ieirile
primesc direct codul strii respective n care se generaez. De exemplu,
dac n starea codificat prin variabilele de stare y1y2 = 01 se genereaz
ieirea z1 atunci funcia logic a ieirii z1 va fi: z1 y1 y2 .
9) Se realizeaz circuitele funciilor de excitaie i al funciilor de ieire (se
construiete CLC-ul (circuitul logic combinaional) folosiind expresiile
funciilor de execuie i al funciilor de ieire). Se conecteaz dup aceea
structura obinut la CBB J-K.
Obs. Dac n locaiile tabelelor de excitaie apar funcii logice complexe ce
depind de variabilele de intrare este recomandat s se foloseasc
multiplexoare (eliminndu-se punctul 7, sinteza funciilor de excitaie, din
actualul algoritm de sintez) pentru obinerea funciilor de excitaie.

Aplicaie

Se cere realizarea unui automat pentru controlul unei instalaii de umplere a


unui bazin cu ap de la 2 surse. Se consider c cele 2 surse de ap sunt
inepuizabile.
Sursa notat cu S1 se afl la o distan mic de bazin, apa fiind pompat cu
ajutorul pompei P1 de debit mic.
Sursa notat cu S2 se afl la o distan mare, folosindu-se pompa P2 de debit
mare pentru aducerea apei n bazin.
Instalaia este prezentat schematic n figura 5.6 a.

4
y1y2
00
(1)

1 Nm 0
P1 P2 a
S1 S2 01
(2)

1 D 0
m
NM
Bazin 10 11
(3) P1 P2 (4)
Nm

1 0 N 1
NM 0 a M
TD
a) Fig. 5.6. b)
Pentru vizualizarea nivelului de ap n bazin se folosesc dou traductoare de
nivel Nm (nivel minim) i NM (nivel maxim). Nm=1 dac nivelul apei scade sub Nm,
iar NM =1 dac nivelul apei crete peste NM.
Umplerea bazinului cu ap se face cu ajutorul pompei P1, dac este consum
de ap mic, cnd Dm=1, (testndu-se traductorul de debit TD) sau cu ajutorul
pompei P2 dac este consum de ap mare, cnd Dm=0.
Se dorete sinteza unui automat sincron cu CBB J-K pe reacie ce va
funciona conform grafului de stri din figura 5.6 b i care va avea schema bloc din
figura 5.7.
Nm
P1
NM
Dm A
P 2

Fig. 5.7.

Pentru sintez s-a parcurs prima etap identificndu-se mrimile de intrare i


ieire. Urmtoarele 3 etape sunt obinute folosind graful de stri din figura 5.5 b,
unde s-au introdus 2 stri suplimentare (ce nu genereaz nici o ieire) pentru
uurarea procesului de sintez ca s nu apar dou blocuri de decizie unul dup
altul fr bloc de stare ntre ele. Fiind 4 stri stabile, pentru codificarea lor sunt
necesare 2 variabile de stare, de unde rezult c se vor folosi 2 CBB J-K.
Se construiete tabelul de evolutie al strilor, figura 5.7.

5
y1 y1 y1
y2 0 1 y2 0 1 y2 0 1
(1) (3) 0 0 Nm NM
0 0 0
1 (2) (4) 1 1 NM 1 Dm NM

Fig. 5.7

Tabelele de evoluie a strilor sunt construite n fig. 5.7. Liniile i coloanele


sunt codificate cu ajutorul variabilelor de stare y1 i y2 la momentul t. n locaii se
trec, pentru fiecare stare n parte, valorile la momentul urmtor t+1 ale variabilelor
y1 i y2. (adic valorile variabilelor de stare ce codific strile unde evolueaz
automatul).
Astfel, pentru locaia y1y2=00, corespunztoare strii stabile (1), conform
grafului de stri, automatul evolueaz n starea (2) dac Nm=1 i atunci y1y2=01
(adic y1(t+1)=0 i y2(t+1)=1 sau revine n starea (1) dac Nm=0 i y1y2=00 (adic
y1(t+1)=0 i y2(t+1)=0). n locaia corespunztoare lui y1(t+1) se va trece 0 iar n
locaia corespunztoare lui y2(t+1) se va trece Nm .
n locaiile corespunztoare strii (2) se trece y1(t+1)=1 i y2(t+1)= D m ,
deoarece automatul evolueaz daca Dm=1 n starea (3) pentru care y1y2=10 (adic
y1(t+1)=1 i y2(t+1)=0), sau evolueaz n starea (4), pentru care y1y2=11 (adic
y1(t+1)=1 i y2(t+1)=1). Se observ c indiferent de valoarea variabilei de intrare
Dm , atunci y1(t+1)=1. Dac Dm=1 atunci y2(t+1)=0, iar dac Dm=0 atunci
y2(t+1)=1 i n acest caz y2(t+1) are valori complementare fa de Dm (adic
y2(t+1)= D m). Celelalte locaii ale tabelelor de evoluie a strilor se
complementeaz asemntor.
La construcia tabelelor de excitaie (fig. x3), pentru fiecare circuit basculant
se folosesc tabelele de funcionare din fig. 5.4. i tabelele de evoluie a strilor.
Astfel, n tabelul de evoluie a strilor, corespunztor lui y1(t+1), n fig. X4, se
asociaz y1(t)=Q1(t) i y1(t+1)=Q1(t+1), unde Q1(t) i Q1(t+1) sunt ieirile primului
bistabil la momentul actual, respectiv la momentul urmtor.
Pentru locaia corespunztoare strii (1), y1(t)=0 iar y1(t+1)=0, ieirea
evolund din Q1(t)=0 n Q1(t+1)=0 i conform primei linii din tabelul de
funcionare (fig. 5) intrrile bistabilului vor trebui s ia valorile j1=0 , k1=x .
Pentru locaia corespunztoare strii (2), y1(t)=0 iar y1(t+1)=1, ieirea
evolund din Q1(t)=0 n Q1(t)=1 i conform celei de-a doua linii din tabelul de
funcionare (fig. 5) intrrile bistabilului vor trebui s ia valorile j1=1 , k1=x .a.m.d.
Sintetiznd se obin funciile:

6
J1 y2

K1 N M y1 y2
__
J 2 N m y1 N M y1
__
K 2 Dm y 1 N M y1
Funcia K2 are o expresie complex pentru c exist variabile incluse n
fiecare locaie i pentru reprezentare se folosete un MUX; la fel i pentru J2 i K1 .
Structura automatului este prezentat n fig. X6 unde P1 y1 y 2 i
P2 y1 y 2 .

y y y y
y2 1 0 1 y2 1 0 1 y2 1 0 1 y2 1 0 1
0 0 x 0 x 1 0 Nm NM 0 x x
1 1 x 1 x NM 1 x x 1 Dm NM

(J1) (K1) (J2) (K2)


Fig.5.8

Pentru J2 i K se folosesc multiplexoare.


Sinteza :
P1 y1 y 2
P2 y1 y 2
0
Dm 1 MUX K2
2
3 y2 y1
NM

0
Nm 1 MUX J2
2
NM 3 y2 y1

0
1 MUX K1
2
NM 3 y2 y1

P2 y1 Q1
J1
T
Q1 K1

y2 Q J2
2

P1 T
Q2 K2

7
Tact (Clk)
Fig. 5.9

Bibliografie:
1. Dorin Popescu Automate programabile, Editura Sitech, Craiova, 2003.
2. Emil Pop, Monica Leba, Microcontrollere i automate programabile, Editura didactic
i pedagogic, Bucureti, 2003.
3. Mircea Ivnescu, Sisteme avansate de conducere n robotic, Editura Scrisul Romnesc,
Craiova, 2003.
4. Mircea Ivnescu, Roboi industriali, Editura Universitaria, Craiova, 1994.
5. Mircea Ivnescu, Ion Cauil, Automate industriale, Editura Scrisul Romnesc, Craiova,
1984.
6. Ilie Borcoi, Automate secveniale i programabile- note de curs