Пучачева скрипников (539901), страница 2
Текст из файла (страница 2)
-
Метод последовательного просмотра переходов.
Граф-схема алгоритма, реализующая систему секвенций
Преимущества метода:
-
Удовлетворяет требованиям локальности преобразований.
-
Гарантирует правильность проекта управляющей программы
-
Гарантирует стабильность программного цикла.
-
Контроль за выполнением программы.
-
Ориентирован на пользователя-непрограммиста.
Программы, основанные на методе ППП:
-
Секвенциальные – бинарные программы СБП
-
Секвенциальные – счетчиковые программы ССП
-
Интерпретаторы секвенций ИС
Эти программы ориентированы на различные способы кодирования ПГО и предназначены для работы в микро ЭВМ и логических микроконтроллеров различного класса.
Примем схему подключения портов:
Сигналы с датчиков Х установить от порта Е0:
Х1=E01 Х2=E03 Х3=E03 Х4=E04 Х5=E04 Х6=E06 Х7=E07 Х8=E08 Х9=E09 Х10=E0А Х11=E0В
Сигналы Y установить от порта Z0:
Y1=Z01 Y2=Z02 Y3=Z03 Y4=Z04 Y5=Z05 Y6=Z06
Программа управления РТК
Адрес | Команда | Описание команды | Действия робота | Поз. |
000 | 2601 | Активация счетчика 1 | P0 | |
001 | 0603 | Выключение нагрузки Y3 | Исходное состояние. Рука задвинута. | |
002 | 0606 | Выключение нагрузки Y6 | Система выключена. | |
003 | 0403 | Проверка датчика Х3 по адресу Е03 на наличие сигнала | ||
004 | 0В07 | Если БУ=0, то переход на адрес 007 | ||
005 | 030А | Проверка датчика Х10 по адресу Е0А на отсутствие сигнала | ||
006 | 0В07 | Если БУ=0, то переход на адрес 007 | ||
007 | 2602 | Активация счетчика 2 | Р1 | |
008 | 0506 | Включение нагрузки Y6 | Включение системы. | |
009 | 0503 | Включение нагрузки Y3 | Выдвижение руки. | |
00А | 0404 | Проверка датчика Х4 по адресу Е04 на наличие сигнала | ||
00В | 0В0E | Если БУ=0, то переход на адрес 00Е | ||
00С | 040А | Проверка датчика Х10 по адресу Е0А на наличие сигнала | ||
00D | 0В0E | Если БУ=0, то переход на адрес 00Е | ||
00E | 2603 | Активация счетчика 3 | Р2 | |
00F | 0504 | Включение нагрузки Y4 | Зажим детали. | |
010 | 0407 | Проверка датчика Х7 по адресу Е07 на наличие сигнала | ||
011 | 0В12 | Если БУ=0, то переход на адрес 012 | ||
012 | 2604 | Активация счетчика 4 | Р3 | |
013 | 0603 | Выключение нагрузки Y3 | Задвижение руки. | |
014 | 0403 | Проверка датчика Х3 по адресу Е03 на наличие сигнала | ||
015 | 0В19 | Если БУ=0, то переход на адрес 019 | ||
016 | 2800 | Обнуление счетчика 4 | Программа выдержки времени | |
017 | 2704 | Инкремент счетчика 4 | ||
018 | 2906 | Сравнение счетчика с числом 06 | ||
019 | 2605 | Активация счетчика 5 | Р4 | |
01А | 0505 | Включение нагрузки Y5 | Поворот кассеты. | |
01B | 0408 | Проверка датчика Х8 по адресу Е08 на наличие сигнала | ||
01C | 0В20 | Если БУ=0, то переход на адрес 020 | ||
01D | 2800 | Обнуление счетчика 5 | Программа выдержки времени | |
01E | 2705 | Инкремент счетчика 5 | ||
01F | 2906 | Сравнение счетчика 5 с числом 06 | ||
020 | 2606 | Активация счетчика 6 | P6 | |
021 | 0605 | Выключение нагрузки Y5 | ||
022 | 0308 | Проверка датчика Х8 по адресу Е08 на отсутствие сигнала | ||
023 | 0В24 | Если БУ=0, то переход на адрес 024 | ||
024 | 2607 | Активация счетчика 7 | P5 | |
025 | 0502 | Включение нагрузки Y2 | Поворот робота к бункерам. | |
026 | 0405 | Проверка датчика Х5 по адресу Е05 на наличие сигнала | ||
027 | 0В2A | Если БУ=0, то переход на адрес 02A | ||
028 | 040В | Проверка датчика Х11 по адресу Е0В на наличие сигнала | ||
029 | 0В2A | Переход на адрес 02A, если БУ=0 | ||
02A | 2608 | Активация счетчика 8 | P7 | |
02B | 0503 | Включение нагрузки Y3 | Выдвижение руки. | |
02C | 0404 | Проверка датчика Х4 по адресу Е04 на наличие сигнала | ||
02D | 0В2E | Если БУ=0, то переход на адрес 02E | ||
02E | 2609 | Активация счетчика 9 | Р8 | |
02F | 0604 | Выключение нагрузки Y4 | Разжим схвата робота. | |
030 | 0307 | Проверка датчика Х7 по адресу Е07 на отсутствие сигнала | ||
031 | 0В32 | Если БУ=0, то переход на адрес 032 | ||
032 | 260A | Активация счетчика A | P9 | |
033 | 0603 | Выключение нагрузки Y3 | Задвижение руки. | |
034 | 0403 | Проверка датчика X3 по адресу Е03 на наличие сигнала | ||
035 | 0В36 | Если БУ=0, то переход на адрес 036 | ||
036 | 260B | Активация счетчика B | Р10 | |
037 | 0504 | Выключение нагрузки Y2 | Поворот к кассетному накопителю. | |
038 | 0406 | Проверка датчика Х6 по адресу Е06 на наличие сигнала | ||
039 | 0В00 | Если БУ=0, то переход на адрес 000 | ||
03A | 0409 | Проверка датчика Х9 по адресу Е09 на наличие сигнала | ||
03B | 0В00 | Если БУ=0, то переход на адрес 000 | Полуавтомат | P0 |
03C | 0900 | Безусловный переход на адрес 007 | Цикловой пуск (автомат) | Р1 |
-
Оценка эффективности программ по памяти V
и быстродействию T.
число переходов соответственно: общее, возбужденных, выполненных в данный момент времени, имеющих более одной входной или выходной позиции. М =13, М1 =1, М2 = 2( переход t12, t13), М3 = 1(переход t4).
Т0 – время выполнения одной команды микропроцессорного устройства
Т0=0,003 секунды;
φ,ζ – максимальный ранг коньюнкций соответственно от входных или выходных переменных, помечающих переходы или позиции.
ζ = 2 (переход t4).
φ = 6(переход t4).
Каждая команда в памяти микроконтроллера занимает 2 байта. У нас 61 команды.
Следовательно, данная программа занимает в памяти микроконтроллера 61*2=122 байт.