Wykonanie: Krakowian Konrad 140059 Rakowski Bartosz 140116 |
mgr inż. A. Sterna Poniedziałek, godz. 15.15 22.05.2006r. |
Sprawozdanie nr 11
AUTOMAT ASYNCHRONICZNY
Cel ćwiczenia
Celem ćwiczenia jest nabycie praktycznej umiejętności projektowania automatów asynchronicznych statycznych z uwzględnieniem metod eliminacji hazardu i wyścigów, realizacji technicznej tych układów oraz zbadanie wpływu hazardu i wyścigów na ich pracę.
Program ćwiczenia:
Zaprojektowanie automatu, który działałby według następujących reguł:
- po pierwszym wciśnięciu przycisku na wyjściu pozostaje stan niski
- po drugim wciśnięciu przycisku na wyjściu pojawia się stan wysoki
- po trzecim wciśnięciu przycisku na wyjściu pojawia się stan niski
Wykres czasowy tego automatu przedstawia się następująco:
|
1 |
2 |
3 |
4 |
5 |
6 |
1 |
x |
|
|
|
|
|
|
|
y |
|
|
|
|
|
|
|
Na podstawie powyższego wykresu generujemy pierwotną tablicę przejść automatu:
stan x |
0 |
1 |
Y |
1 |
1 |
2 |
0 |
2 |
3 |
2 |
0 |
3 |
3 |
4 |
0 |
4 |
5 |
4 |
1 |
5 |
5 |
6 |
1 |
6 |
1 |
6 |
0 |
W przypadku tego automatu niemożliwa jest minimalizacja tablicy przejść/wyjść (brak stanów pseudorównoważnych), zatem od razu przystępujemy do zakodowania stanów.
Q1Q2Q3 |
0 |
1 |
Y |
|
stan |
Q1Q2Q3 |
0 0 0 |
000 |
001 |
0 |
|
1 |
0 0 0 |
0 0 1 |
011 |
001 |
0 |
|
2 |
0 0 1 |
0 1 1 |
011 |
111 |
0 |
|
3 |
0 1 1 |
1 1 1 |
110 |
111 |
1 |
|
4 |
1 1 1 |
1 1 0 |
110 |
010 |
1 |
|
5 |
1 1 0 |
0 1 0 |
000 |
010 |
0 |
|
6 |
0 1 0 |
Użyte kodowanie eliminuje zjawisko wyścigów, ani razu nie zmienia się więcej niż jeden bit stanu.
Funkcja wyjść:
Q2 Q3 |
|
|
|
|
Q1 |
00 |
01 |
11 |
10 |
0 |
0 |
0 |
0 |
0 |
1 |
- |
- |
1 |
1 |
Y = Q1
Do zbudowania układu użyliśmy przerzutników RS.
Zakodowana tablica automatu:
z |
Q1 |
Q2 |
Q3 |
Q1 |
Q2 |
Q3 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
Minimalizacja siatkami Karnaugh'a:
Q2Q3 |
|
|
|
|
zQ1 |
00 |
01 |
11 |
10 |
00 |
0 |
0 |
0 |
0 |
01 |
- |
- |
- |
- |
11 |
- |
- |
- |
0 |
10 |
0 |
0 |
1 |
0 |
Q2Q3 |
|
|
|
|
zQ1 |
00 |
01 |
11 |
10 |
00 |
- |
- |
- |
- |
01 |
- |
- |
0 |
0 |
11 |
- |
- |
0 |
1 |
10 |
- |
- |
0 |
- |
R1 = z*Q3' S1 = z*Q2*Q3
Q2Q3 |
|
|
|
|
zQ1 |
00 |
01 |
11 |
10 |
00 |
0 |
1 |
- |
0 |
01 |
- |
- |
- |
- |
11 |
- |
- |
- |
- |
10 |
0 |
0 |
- |
- |
Q2Q3 |
|
|
|
|
zQ1 |
00 |
01 |
11 |
10 |
00 |
- |
0 |
0 |
1 |
01 |
- |
- |
0 |
0 |
11 |
- |
- |
0 |
0 |
10 |
- |
- |
0 |
0 |
R2 = z'*Q1' *Q3' S2 = z'*Q3
Q2Q3 |
|
|
|
|
zQ1 |
00 |
01 |
11 |
10 |
00 |
0 |
- |
- |
0 |
01 |
- |
- |
0 |
0 |
11 |
- |
- |
- |
0 |
10 |
1 |
- |
- |
0 |
Q2Q3 |
|
|
|
|
zQ1 |
00 |
01 |
11 |
10 |
00 |
- |
0 |
0 |
- |
01 |
- |
- |
1 |
- |
11 |
- |
- |
0 |
- |
10 |
0 |
0 |
0 |
- |
R3 = z'*Q1 S3 = z*Q2'
Jak widać, nigdzie nie występuje zjawisko hazardu, gdyż parametry wejściowe nie są połączone funkcją OR, która może sprawiać, że grupy kratek nie zazębiają się.
Schemat układu:
Uwagi i wnioski:
Zbudowany na zajęciach układ działał poprawnie. Po włączeniu układu we wszystkich trzech przerzutnikach był stan niski. Układ działał zgodnie z oczekiwaniami. Po pierwszym wciśnięciu przycisku na wyjściu pozostawał stan niski, po drugim wciśnięciu zapalała się dioda a po trzecim wciśnięciu gasła. Następnie cały cykl się powtarzał.
2