Кавовий автомат
МІНІСТЕРСТВО
ОСВІТИ І НАУКИ УКРАЇНИ
Криворізький
технічний університет
Кафедра
комп’ютерні
системи та мережі
КУРСОВА
РОБОТА
з
курсу “Прикладна теорія цифрових автоматів”
на
тему: «Кавовий автомат»
Виконав: ст. гр. ЗКСМ-09
Діброва Г.В.
Прийняв: викл. каф. КСМ
Туравініна О.М.
Кривий
Ріг
Зміст
1. Вступ
. Постановка задачі
. Математична модель
.1 Граф функціонування автомата
.2 Створення таблиць переходів
.3 Кодування
.4 Елемент пам’яті автомата
.5 Створення рівнянь функції
збудження
.6 Створення рівнянь для
комбінаційної схеми вихідних сигналів
. Моделювання
. Використана література
1. Постановка задачі
Розробити схему логічного керування
роботою кофейного автомату. Після натискання відповідної кнопки автомат має
приготувати один з п’яти напоїв:
. чорну каву;
. каву з цукром;
. каву з цукром та вершками;
. какао з молоком та цукром;
. какао з молоком, цукром та
ваніллю.
На виходах пристрою мають
формуватися сигнали запуску механізмів, кожен з яких додає певний компонент до
напою, після чого надсилає базовій схемі сигнал про завершення операції. Після
приготування напою пристрій має повідомити замовника про готовність.
2. Математична модель
.1 Граф функціонування цифрового
автомата
Рис.1
На даному графі переходів зображено
принцип роботи кавового автомата. Де побудовано вісім станів: S0-початковий
стан, S1-вода, S2-кава, S3-цукор, S4-вершки, S5-какао, S6-молоко, S7-ваніль.
Також я побудувала сигнили нашого автомата: X1-чорна кава, X2-кава з цукром та
вершками, X3-кава з цукром, X4-какао з молоком, цукром та ваніллю, X5-какао з
молоком та цукром, Y1-чорна кава, Y2-кава з цукром, Y3-каву з цукром та
вершками, Y4-какао з молоком та цукром, Y5-какао з молоком, цукром та ваніллю.
2.2 Створення таблиць переходів та
виходів
Визначаємо мінімально необхідну
кількість входів кінцевого автомату, мінімальну кількість фізичних виходів і
мінімальну кількість елементарних автоматів:
−для S;
−для X;
−для Y.
Будуємо таблицю переходів та
таблицю виходів:
Табл.1
Таблиця переходів
стан
|
X1
|
X2
|
X3
|
X4
|
X5
|
S0
|
S1
|
S1
|
S1
|
S1
|
S1
|
S1
|
S2
|
S4
|
S2
|
S5
|
S5
|
S2
|
S2
|
S4
|
S3
|
*
|
*
|
S3
|
*
|
S4
|
S3
|
S7
|
S6
|
S4
|
*
|
S4
|
*
|
*
|
*
|
S5
|
*
|
*
|
*
|
S6
|
S6
|
S6
|
*
|
*
|
*
|
S7
|
S6
|
S7
|
*
|
*
|
*
|
S7
|
*
|
Табл.2
Таблиця виходів
станX1X2X3X4X5
|
|
|
|
|
|
S0
|
Y1
|
Y3
|
Y2
|
Y5
|
Y4
|
S1
|
Y1
|
Y3
|
Y2
|
Y5
|
Y4
|
S2
|
Y1
|
Y3
|
Y2
|
*
|
*
|
S3
|
*
|
Y3
|
Y2
|
Y5
|
Y4
|
S4
|
*
|
Y3
|
*
|
*
|
*
|
S5
|
*
|
*
|
*
|
Y5
|
Y4
|
S6
|
*
|
*
|
*
|
Y5
|
Y4
|
S7
|
*
|
*
|
*
|
Y5
|
*
|
2.3 Кодування
Використавши простий спосіб
кодування, визначаємо необхідну кількість бітів для кодування станів та
сигналів:
Табл.3
Стан
|
код
|
S0
|
000
|
S1
|
001
|
S2
|
010
|
S3
|
011
|
S4
|
100
|
S5
|
101
|
S6
|
110
|
S7
|
111
|
Табл.4
Сигн.
|
код
|
X1
|
000
|
X2
|
001
|
X3
|
010
|
X4
|
011
|
X5
|
100
|
Табл.5
Вих.сигн.
|
код
|
Y1
|
000
|
Y2
|
001
|
Y3
|
010
|
Y4
|
011
|
Y5
|
100
|
У відповідності до кодованих таблиць
входів, виходів і станів формуємо і заповнюємо кодовану таблицю функціонування
автомата.
Табл.6
Кодована таблиця переходів
стан
|
000
|
001
|
010
|
011
|
100
|
000
|
001
|
001
|
001
|
001
|
001
|
001
|
010
|
100
|
010
|
101
|
101
|
010
|
101
|
101
|
011
|
*
|
*
|
011
|
*
|
100
|
011
|
111
|
110
|
100
|
*
|
100
|
*
|
*
|
*
|
101
|
*
|
*
|
*
|
110
|
110
|
110
|
*
|
*
|
*
|
111
|
110
|
111
|
*
|
*
|
*
|
111
|
*
|
Табл.7
Кодована таблиця виходів
стан000001010011100
|
|
|
|
|
|
000
|
000
|
010
|
001
|
100
|
011
|
001
|
000
|
010
|
001
|
100
|
011
|
010
|
000
|
010
|
001
|
*
|
*
|
011
|
*
|
010
|
001
|
100
|
011
|
100
|
*
|
010
|
*
|
*
|
*
|
101
|
*
|
*
|
*
|
100
|
011
|
110
|
*
|
*
|
*
|
100
|
011
|
111
|
*
|
*
|
*
|
100
|
*
|
2.4 Елемент
пам’яті автомата
В якості елемента пам’яті
використовуємо JK-тригер.
Табл.8.1
Таблиця переходів JK-тригера
стан
|
00
|
01
|
10
|
11
|
0
|
0
|
0
|
1
|
1
|
1
|
1
|
0
|
1
|
0
|
тригер має наступну матрицю
переходів.
Табл.8.2
Матриця переходів JK-тригера
Стан
|
J
|
K
|
0→0
|
0
|
*
|
0→1
|
1
|
*
|
1→0
|
*
|
1
|
1→1
|
*
|
0
|
На базі таблиці виходів та матриці
переходів JK-тригера,
будуємо кодовану таблицю функції збудження елементів пам’яті.
Табл.9
Таблиця збудження елементів пам’яті
S1S2S3
|
000
|
001
|
010
|
011
|
100
|
J2K2
|
J3K3
|
J1K1
|
J2K2
|
J3K3
|
J1K1
|
J2K2
|
J3K3
|
J1K1
|
J2K2
|
J3K3
|
J1K1
|
J2K2
|
J3K3
|
000
|
0*
|
0*
|
1*
|
0*
|
0*
|
1*
|
0*
|
0*
|
1*
|
0*
|
0*
|
1*
|
0*
|
0*
|
1*
|
001
|
0*
|
1*
|
0*
|
1*
|
0*
|
*1
|
0*
|
1*
|
*1
|
1*
|
0*
|
0*
|
1*
|
0*
|
*0
|
010
|
0*
|
*0
|
0*
|
1*
|
*1
|
0*
|
0*
|
*0
|
1*
|
**
|
**
|
**
|
**
|
**
|
**
|
011
|
**
|
**
|
**
|
1*
|
*1
|
*1
|
0*
|
*0
|
*0
|
1*
|
*0
|
*0
|
1*
|
*0
|
*1
|
100
|
**
|
**
|
**
|
*0
|
0*
|
0*
|
**
|
**
|
**
|
**
|
**
|
**
|
**
|
**
|
**
|
101
|
**
|
**
|
**
|
**
|
**
|
**
|
**
|
**
|
**
|
*0
|
1*
|
*1
|
*0
|
1*
|
1*
|
110
|
**
|
**
|
**
|
**
|
**
|
**
|
**
|
**
|
**
|
*0
|
*0
|
1*
|
*0
|
*0
|
0*
|
111
|
**
|
**
|
**
|
**
|
**
|
**
|
**
|
**
|
**
|
*0
|
*0
|
*0
|
**
|
**
|
**
|
2.5 Створення
рівнянь функції збудження
кавовий автомат цифровий схема
Перепишемо таблицю функції збудження
елементів пам’яті окремо для кожної функції, відповідно до структури карт Карно
для виконання необхідної мінімізації.
Табл.10.1
a1a2a3
|
000
|
001
|
010
|
011
|
100
|
000
|
0
|
0
|
0
|
0
|
0
|
001
|
0
|
1
|
0
|
1
|
1
|
010
|
0
|
1
|
0
|
*
|
*
|
011
|
*
|
1
|
0
|
1
|
1
|
100
|
*
|
*
|
*
|
*
|
*
|
101
|
*
|
*
|
*
|
*
|
*
|
110
|
*
|
*
|
*
|
*
|
*
|
111
|
*
|
*
|
*
|
*
|
*
|
Табл.10.2
а1а2а3
|
000
|
001
|
010
|
011
|
100
|
000
|
*
|
*
|
*
|
*
|
*
|
001
|
*
|
*
|
*
|
*
|
*
|
010
|
*
|
*
|
*
|
*
|
*
|
011
|
*
|
*
|
*
|
*
|
*
|
100
|
*
|
0
|
*
|
*
|
*
|
101
|
*
|
*
|
*
|
0
|
0
|
110
|
*
|
*
|
*
|
0
|
0
|
111
|
*
|
*
|
*
|
0
|
*
|
Рівняння входу першого JK
тригера:
;
.
Табл.10.3
а1а2а3
|
000
|
001
|
010
|
011
|
100
|
000
|
0
|
0
|
0
|
0
|
0
|
001
|
1
|
0
|
1
|
0
|
0
|
010
|
*
|
*
|
*
|
*
|
*
|
011
|
*
|
*
|
*
|
*
|
*
|
100
|
*
|
0
|
*
|
*
|
*
|
101
|
*
|
*
|
*
|
1
|
1
|
110
|
*
|
*
|
*
|
*
|
*
|
111
|
*
|
*
|
*
|
*
|
*
|
Табл.10.4
а1а2а3
|
000
|
001
|
010
|
011
|
100
|
000
|
0
|
*
|
*
|
*
|
*
|
001
|
1
|
*
|
*
|
*
|
*
|
010
|
*
|
1
|
0
|
*
|
*
|
011
|
*
|
1
|
0
|
0
|
0
|
100
|
*
|
*
|
*
|
*
|
*
|
*
|
*
|
*
|
*
|
*
|
110
|
*
|
*
|
*
|
0
|
0
|
111
|
*
|
*
|
*
|
0
|
*
|
Рівняння входу другого JK
тригера:
;
Табл.10.5
а1а2а3
|
000
|
001
|
010
|
011
|
100
|
000
|
1
|
1
|
1
|
1
|
1
|
001
|
0
|
*
|
*
|
0
|
*
|
010
|
0
|
0
|
1
|
*
|
*
|
011
|
*
|
*
|
*
|
*
|
*
|
100
|
*
|
0
|
*
|
*
|
*
|
101
|
*
|
*
|
*
|
*
|
1
|
110
|
*
|
*
|
*
|
1
|
0
|
111
|
*
|
*
|
*
|
*
|
*
|
Табл.10.6
а1а2а3
|
000
|
001
|
010
|
011
|
100
|
000
|
*
|
*
|
*
|
*
|
*
|
001
|
*
|
1
|
1
|
*
|
0
|
010
|
*
|
*
|
*
|
*
|
*
|
011
|
*
|
1
|
0
|
0
|
1
|
100
|
*
|
*
|
*
|
*
|
*
|
101
|
*
|
*
|
*
|
1
|
*
|
110
|
*
|
*
|
*
|
*
|
*
|
111
|
*
|
*
|
*
|
0
|
*
|
Рівняння входу третього JK
тригера:
;
.
Рівняння входів на JK-тригери
побудовано.
2.6 Створення
рівнянь для побудови комбінаційної схеми вихідних сигналів
Складаємо рівняння побудови
комбінаційної схеми для виходів тригерів на основі таблиці 7.
Табл.11.1
а1а2а3000001010011100
|
|
|
|
|
|
000
|
0
|
0
|
0
|
1
|
0
|
001
|
0
|
0
|
0
|
1
|
0
|
010
|
0
|
0
|
0
|
*
|
*
|
011
|
*
|
0
|
0
|
1
|
0
|
100
|
*
|
0
|
*
|
*
|
*
|
101
|
*
|
*
|
*
|
1
|
0
|
111
|
*
|
*
|
*
|
1
|
*
|
110
|
*
|
*
|
*
|
1
|
0
|
Рівняння для першого виходу:
;
Табл.11.2
а1а2а3
|
000
|
001
|
010
|
011
|
100
|
000
|
0
|
1
|
0
|
0
|
1
|
001
|
0
|
1
|
0
|
0
|
1
|
010
|
0
|
1
|
0
|
*
|
*
|
011
|
*
|
1
|
0
|
0
|
1
|
100
|
*
|
1
|
*
|
*
|
*
|
101
|
*
|
*
|
*
|
0
|
1
|
111
|
*
|
*
|
*
|
0
|
1
|
110
|
*
|
*
|
*
|
0
|
*
|
Рівняння для другого виходу:
;
Табл.11.3
а1а2а3
|
000
|
001
|
010
|
011
|
100
|
000
|
0
|
0
|
1
|
0
|
1
|
001
|
0
|
0
|
1
|
0
|
1
|
010
|
0
|
0
|
1
|
*
|
*
|
011
|
*
|
0
|
1
|
0
|
1
|
100
|
*
|
0
|
*
|
*
|
*
|
101
|
*
|
*
|
*
|
0
|
1
|
111
|
*
|
*
|
*
|
0
|
*
|
110
|
*
|
*
|
*
|
0
|
0
|
Рівняння для третього виходу:
.
4. Моделювання
Побудуємо структурну схему
автомата.
Рис.2
Система логічних елементів має
великий вплив на структурну схему автомата. Зі схеми, зображеної на малюнку 3
бачимо, що автомат має два входи та два виходи. На функції збудження автомата
подається два сигнали. Далі сигнал проходить на пам’ять автомата, основану на
трьох JK-тригерах.
Після елементів пам’яті сигнали передаються на формування вихідних сигналів.
Принципово - логічна схема
моделювання
5. Використана література
1. Прикладная
теория цифровых автоматов/К. Г. Самофалов, А. М. Романкович, В.Н. Валуйский, Ю.
С. Каневский. - К.: Вищашк. Головное изд-во, 1987. - 375 с.
. ПРИКЛАДНАЯ
ТЕОРИЯ ЦИФРОВЫХ АВТОМАТОВ Часть 1 КОМПЬЮТЕРНАЯ АРИФМЕТИКА. /Сост.
А.Н.Щербаков.-Запорожье: ЗНТУ, 2004.- 59с.
. Савельев А. Я. Прикладнаятеория
цифровых автоматов: Учеб. Для вузов по спец. ЭВМ. -М.: Высш. шк., 1987. - 272
с.
. Цифровая обработка сигналов:
Учеб.пособие для вузов/Л. М. Гольденберг, Б. Д. Матюшкин, М. Н. Поляк. - М.:
Радио и связь, 1990. - 256 с.