«Исследование методов программно-аппаратной реализации
алгоритмов управления »
Задание:
- Проанализировать исходный алгоритм функционирования устройства логического управления (УЛУ).
- Построить блок-схему исходного алгоритма функционирования УЛУ.
- Построить ЛСА по полученной блок-схеме работы УЛУ.
- Построить отмеченную ГСА по полученной блок-схеме работы УЛУ.
- Построить граф автомата Мура или Мили по отмеченной ГСА, полученной в предыдущем пункте.
- Минимизировать логические функции формирования входных сигналов УЛУ.
- Построить схему формирования входных сигналов для аппаратной реализации УЛУ по минимизированным логическим функциям.
- Разработать аппаратную реализацию управляющего автомата УЛУ (используя канонический метод структурного синтеза).
- Разработать программную модель УЛУ на любом языке программирования.
Примечание: после выполнения каждого пункта задания и перед выполнением следующих пунктов задания необходимо показывать преподавателю полученные результаты для проверки и контроля.
Общие соглашения:
- Устройство логического управления получает на своих входах данные с 4-х датчиков X1..X4 и выдает в объект управления управляющие воздействия через выходы Y1..Y5, что необходимо иметь в виду при разработке программной модели УЛУ.
- При разработке программной модели необходимо предусмотреть визуализацию переходов автомата из состояния в состояние (вывод номера текущего состояния, его кода, значений входных (Fi) и выходных (yj) сигналов, номер и код состояние, в которое будет осуществлен переход).
Содержание отчета:
- Титульный лист с указанием номера варианта итоговой практической работы.
- Текст задания.
- Описание исходного алгоритма функционирования УЛУ.
- Описание всего процесса разработки аппаратной и программной реализаций исходного УЛУ согласно всем пунктам задания.
- Тестовые примеры работы программной модели, демонстрирующие все возможные варианты движения по графу.
- Вывод по проделанной работе.
- Текст разработанной программы.
Варианты заданий:
Вариант 1: Мили.
1. Начало
2. Если F1 = 0, идти к 2
3. Y1, Y4, Y5
4. Y2, Y3
5. Если F2 = 1, идти к 9
6. Если F3 = 1, идти к 10
7. Если F4 = 1, идти к 11
8. Идти к 10
9. Y2, Y4
10. Y3,Y5
11. Y2,Y3,Y4
12. Если F1 = 1, идти к 5
13. Конец
F1 = X1X2X3 V X2^X3X4 V ^X1^X2 V X1^X2X3^X4 V X3X4
F2 = X1^X2 V X1^X2X3 V X2X3 V ^X1X2^X3
F3 = X2X4 V X1^X3 V ^X1X3^X4 V X3X4 V ^X1^X2X3
F4 = X1^X2X3 V X1^X3^X4 V ^X1^X2^X3X4 V ^X2X3X4 V X1^X2^X4
Вариант 2: Мили.
1. Начало
2. Если F1 = 0, идти к 2
3. Если F2 = 0, идти к 2
4. Y1, Y2, Y3
5. Если F3 = 1, идти к 9
6. Y1,Y3
7. Y5,Y6
8. Идти к 13
9. Y2,Y4
10. Если F2 = 0, идти к 7
11. Y2, Y5
12. Идти к 9
13. Конец
F1 = X1X2 V ^X2^X3 V X1^X2X3 V ^X1^X3 V ^X1X2X3
F2 = ^X1^X2X3 V X1X3 V X2^X3 V X2X4 V X1^X3^X4
F3 = ^X2^X3 V X1X2X3 V X1^X3 V ^X1^X2X3 V ^X1X2
Вариант 3: Мура.
1. Начало
2. Если F1 = 1, идти к 9
3. Если F2 = 0, идти к 2
4. Y1, Y2
5. Если F2 = 0, идти к 11
6. Если F3 = 0, идти к 13
7. Y4,Y5
8. Идти к 5
9. Y1,Y2,Y3
10. Идти к 5
11. Y2,Y3
12. Идти к 14
13. Y1, Y4
14. Конец
F1 = X1X2 V X3X4 V ^X1^X2X3 V X2^X3^X4 V X2X3
F2 = X1X2 V X2X3 V ^X1^X4 V X1^X2X3
F3 = X1^X2^X4 V ^X1X2 V X1X3 V X2X3X4 V X1X4
Вариант 4: Мили.
1. Начало
2. Если F1 = 1, идти к 9
3. Y1, Y2
4. Если F2 = 0, идти к 2
5. Если F3 = 0, идти к 11
6. Y3,Y4
7. Y6
8. Идти к 13
9. Y2,Y3
10. Идти к 4
11. Y3, Y5
12. Если F2 = 0, идти к 5
13. Конец
F1 = X1^X2X3 V X2^X3X4 V X3^X4 V X1X4 V ^X2^X3
F2 = X1X3X4 V X1^X2 V ^X3^X4 V X2X4 V ^X1X2^X4
F3 = X1X3 V X2^X4 V ^X1^X2X4 V ^X1^X3X4 V ^X1^X4
Вариант 5: Мура.
1. Начало
2. Если F2 = 1, идти к 2
3. Y1, Y3, Y5
4. Y2, Y4
5. Если F2 = 0, идти к 9
6. Если F3 = 1, идти к 10
7. Если F1 = 0, идти к 11
8. Идти к 10
9. Y1, Y4
10. Y1,Y5
11. Y2,Y3,Y5
12. Если F1 = 0, идти к 5
13. Конец
F1 = X1X2X4 V X1X3 V X2^X4 V ^X1^X3X4 V ^X1^X2
F2 = X1X2^X3 V ^X2X3 V ^X1^X2 V ^X2^X3
F3 = X1X3 V X2X3 V ^X1^X3 V ^X1^X2X3 V X1X2^X3
Вариант 6: Мили.
1. Начало
2. Если F1 = 1, идти к 2
3. Если F2 = 1, идти к 5
4. Y1, Y2, Y5
5. Если F3 = 0, идти к 9
6. Y1,Y3
7. Y5,Y6
8. Идти к 13
9. Y2,Y4
10. Если F2 = 0, идти к 7
11. Y2, Y4
12. Идти к 9
13. Конец
F1 = X1X2 V ^X1^X3 V ^X1^X2^X4 V ^X1^X2X3X4 V X1X4
F2 = X1^X2X4 V ^X3^X1X4 V ^X1X2X3^X4 V X1^X3X4 V ^X1^X2
F3 = ^X1^X2X3 V X1X2X3 V ^X1X2X3 V X1^X2X3
Вариант 7: Мура.
1. Начало
2. Если F2 = 0, идти к 9
3. Если F1 = 1, идти к 2
4. Y1, Y2
5. Если F2 = 0, идти к 11
6. Если F3 = 0, идти к 13
7. Y4,Y5
8. Если F2 = 1, идти к 5
9. Y1,Y2,Y3
10. Идти к 5
11. Y2,Y3
12. Идти к 14
13. Y1, Y4
14. Конец
F1 = X1^X2X3X4 V ^X1X2^X3X4 V X1X2X3^X4
F2 = X1X2X3 V ^X1X2X3X4 V X1^X2^X3^X4
F3 = ^X1^X2X3^X4 V X1X2X3 V X1X2X3X4 V ^X1X2X3^X4
Вариант 8: Мили.
1. Начало
2. Если F1 = 0, идти к 9
3. Y1, Y3
4. Если F1 = 1, идти к 2
5. Если F3 = 0, идти к 11
6. Y3,Y5
7. Y6
8. Если F1 = 0, идти к 13
9. Y2,Y3
10. Идти к 4
11. Y3, Y5
12. Если F2 = 0, идти к 5
13. Конец
F1 = ^X1X2X3X4 V X1X2X3X4 V X1^X2^X3
F2 = X1X2X3X4 V X1X2X3X4^X4 V X1^X2^X3X4 V X1X2^X3
F3 = X1^X2^X3X4 V X1X2X3X4 V X1X2^X3X4 V X1X2X3^X4
Вариант 9: Мили.
1. Начало
2. Если F1 = 1, идти к 2
3. Y1, Y3, Y5
4. Y2, Y3
5. Если F2 = 1, идти к 9
6. Если F3 = 0, идти к 10
7. Если F4 = 1, идти к 11
8. Идти к 10
9. Y2, Y4
10. Y3,Y5
11. Y2,Y3,Y4
12. Если F1 = 0, идти к 5
13. Конец
F1 = ^X1X3 V ^X1X2 V X1X3X4 V ^X1X2X3 V ^X1^X2
F2 = ^X1^X2X3X4 V X1X2X3X4 V X1^X2^X3X4 V X1X2^X3
F3 = ^X1^X2^X3X4 V ^X1X2X3X4 V X1X2X3X4 V X1^X2X3^X4
F4 = ^X1^X3 V ^X1^X2 V X1X3X4 V ^X3X2X1 V ^X1X2X4
Вариант 10: Мура.
1. Начало
2. Если F3 = 0, идти к 2
3. Если F2 = 0, идти к 11
4. Y1, Y2, Y4
5. Если F3 = 1, идти к 9
6. Y1,Y3
7. Y5,Y6
8. Идти к 13
9. Y2,Y4
10. Если F2 = 0, идти к 7
11. Y2, Y5
12. Идти к 9
13. Конец
F2 = X1X2X3 V ^X1X2X3X4 V X1^X2^X3^X4
F3 = X2X4 V X1^X3 V ^X1X3^X4 V X3X4 V ^X1^X2X3
Вариант 11: Мура.
1. Начало
2. Если F1 = 0, идти к 2
3. Если F2 = 0, идти к 2
4. Y1, Y2, Y3
5. Если F3 = 1, идти к 9
6. Y1,Y3
7. Y5,Y6
8. Идти к 13
9. Y2,Y4
10. Если F2 = 0, идти к 7
11. Y2, Y5
12. Идти к 9
13. Конец
F1 = X1X2 V ^X2^X3 V X1^X2X3 V ^X1^X3 V ^X1X2X3
F2 = ^X1^X2X3 V X1X3 V X2^X3 V X2X4 V X1^X3^X4
F3 = ^X2^X3 V X1X2X3 V X1^X3 V ^X1^X2X3 V ^X1X2
Вариант 12: Мили.
1. Начало
2. Если F1 = 1, идти к 9
3. Если F2 = 0, идти к 2
4. Y1, Y2
5. Если F2 = 0, идти к 11
6. Если F3 = 0, идти к 13
7. Y4,Y5
8. Идти к 5
9. Y1,Y2,Y3
10. Идти к 5
11. Y2,Y3
12. Идти к 14
13. Y1, Y4
14. Конец
F1 = X1X2 V X3X4 V ^X1^X2X3 V X2^X3^X4 V X2X3
F2 = X1X2 V X2X3 V ^X1^X4 V X1^X2X3
F3 = X1^X2^X4 V ^X1X2 V X1X3 V X2X3X4 V X1X4
Вариант 13: Мура.
1. Начало
2. Если F1 = 1, идти к 9
3. Y1, Y2
4. Если F2 = 0, идти к 2
5. Если F3 = 0, идти к 11
6. Y3,Y4
7. Y6
8. Идти к 13
9. Y2,Y3
10. Идти к 4
11. Y3, Y5
12. Если F2 = 0, идти к 5
13. Конец
F1 = X1^X2X3 V X2^X3X4 V X3^X4 V X1X4 V ^X2^X3
F2 = X1X3X4 V X1^X2 V ^X3^X4 V X2X4 V ^X1X2^X4
F3 = X1X3 V X2^X4 V ^X1^X2X4 V ^X1^X3X4 V ^X1^X4
Вариант 14: Мили.
1. Начало
2. Если F2 = 1, идти к 2
3. Y1, Y3, Y5
4. Y2, Y4
5. Если F2 = 0, идти к 9
6. Если F3 = 1, идти к 10
7. Если F1 = 0, идти к 11
8. Идти к 10
9. Y1, Y4
10. Y1,Y5
11. Y2,Y3,Y5
12. Если F1 = 0, идти к 5
13. Конец
F1 = X1X2X4 V X1X3 V X2^X4 V ^X1^X3X4 V ^X1^X2
F2 = X1X2^X3 V ^X2X3 V ^X1^X2 V ^X2^X3
F3 = X1X3 V X2X3 V ^X1^X3 V ^X1^X2X3 V X1X2^X3
Вариант 15: Мура.
1. Начало
2. Если F1 = 1, идти к 2
3. Если F2 = 1, идти к 5
4. Y1, Y2, Y5
5. Если F3 = 0, идти к 9
6. Y1,Y3
7. Y5,Y6
8. Идти к 13
9. Y2,Y4
10. Если F2 = 0, идти к 7
11. Y2, Y4
12. Идти к 9
13. Конец
F1 = X1X2 V ^X1^X3 V ^X1^X2^X4 V ^X1^X2X3X4 V X1X4
F2 = X1^X2X4 V ^X3^X1X4 V ^X1X2X3^X4 V X1^X3X4 V ^X1^X2
F3 = ^X1^X2X3 V X1X2X3 V ^X1X2X3 V X1^X2X3
Вариант 16: Мили.
1. Начало
2. Если F2 = 0, идти к 9
3. Если F1 = 1, идти к 2
4. Y1, Y2
5. Если F2 = 0, идти к 11
6. Если F3 = 0, идти к 13
7. Y4,Y5
8. Если F2 = 1, идти к 5
9. Y1,Y2,Y3
10. Идти к 5
11. Y2,Y3
12. Идти к 14
13. Y1, Y4
14. Конец
F1 = X1^X2X3X4 V ^X1X2^X3X4 V X1X2X3^X4
F2 = X1X2X3 V ^X1X2X3X4 V X1^X2^X3^X4
F3 = ^X1^X2X3^X4 V X1X2X3 V X1X2X3X4 V ^X1X2X3^X4
Вариант 17: Мура.
1. Начало
2. Если F1 = 0, идти к 9
3. Y1, Y3
4. Если F1 = 1, идти к 2
5. Если F3 = 0, идти к 11
6. Y3,Y5
7. Y6
8. Если F1 = 0, идти к 13
9. Y2,Y3
10. Идти к 4
11. Y3, Y5
12. Если F2 = 0, идти к 5
13. Конец
F1 = ^X1X2X3X4 V X1X2X3X4 V X1^X2^X3
F2 = X1X2X3X4 V X1X2X3X4^X4 V X1^X2^X3X4 V X1X2^X3
F3 = X1^X2^X3X4 V X1X2X3X4 V X1X2^X3X4 V X1X2X3^X4
Вариант 18: Мура.
1. Начало
2. Если F1 = 1, идти к 2
3. Y1, Y3, Y5
4. Y2, Y3
5. Если F2 = 1, идти к 9
6. Если F3 = 0, идти к 10
7. Если F4 = 1, идти к 11
8. Идти к 10
9. Y2, Y4
10. Y3,Y5
11. Y2,Y3,Y4
12. Если F1 = 0, идти к 5
13. Конец
F1 = ^X1X3 V ^X1X2 V X1X3X4 V ^X1X2X3 V ^X1^X2
F2 = ^X1^X2X3X4 V X1X2X3X4 V X1^X2^X3X4 V X1X2^X3
F3 = ^X1^X2^X3X4 V ^X1X2X3X4 V X1X2X3X4 V X1^X2X3^X4
F4 = ^X1^X3 V ^X1^X2 V X1X3X4 V ^X3X2X1 V ^X1X2X4
Вариант 19: Мили.
1. Начало
2. Если F3 = 0, идти к 2
3. Если F2 = 0, идти к 11
4. Y1, Y2, Y4
5. Если F3 = 1, идти к 9
6. Y1,Y3
7. Y5,Y6
8. Идти к 13
9. Y2,Y4
10. Если F2 = 0, идти к 7
11. Y2, Y5
12. Идти к 9
13. Конец
F2 = X1X2X3 V ^X1X2X3X4 V X1^X2^X3^X4
F3 = X2X4 V X1^X3 V ^X1X3^X4 V X3X4 V ^X1^X2X3