Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Заочники_ЦБП / Пример_К.Раб.doc
Скачиваний:
38
Добавлен:
12.03.2016
Размер:
278.02 Кб
Скачать

1.5. Управление технологическим параметром в заданных пределах

Необходимо обеспечить поддержание значения параметра, например, температуры окружающей среды в заданных пределах Тmin - Тmax. Значения Tmin и Tmax при моделировании хранятся в контроллере, в регистрах ЦПУ и их значения мы определяем при моделировании самостоятельно, как и значения текущих значений температуры с датчиков (загружаются параметры температур при моделировании в симулятор контроллера с клавиатуры персонального компьютера).

Обработка данных заключается в следующем. Введенные с датчиков m значений параметров (m выбирается также самостоятельно) запоминаются в виде массива в ячейках области ввода памяти данных контроллера. Затем необходимо переслать данные параметры в область обработки памяти данных. Далее требуется вычислить среднее значение температуры: Tср.=∑Ti/m , где m - количество параметров температур Ti. После определения Tср необходимо ее сравнить с Tmin и Tmax и сформировать на линиях выбранного выходного порта контроллера соответствующие УС, например Y4 или Y5, поступающие в ИМ «Охладитель среды» или «Нагреватель среды» соответственно, подключенные к данным линиям выходного порта. Также требуется в индикатор, подключенный к выходному порту, вывести среднее значение Тср текущей температуры, минимальное- для нечетных вариантов задания и максимальное - для четных вариантов.

Рис.9. Структурная схема МКС управления технологическим параметром

Схема алгоритма управления параметром в заданных пределах имеет следующий вид:

Рис.10. Схема алгоритма управления технологическим параметром

Текст программы:

$Mod812

MOV R0,#40H ;начальная установка регистров

MOV R2,#06H

MOV R4,#0AH

MOV R5,#04H

MOV B,#06

CLR A

CLR P1.6 ;подключен нагреватель

CLR P1.7 ;подключен охладитель

;формирование суммы параметров

M1: ADD A,@R0

INC R0

DJNZ R2,M1

Div AB ;нахождение Тср

MOV R6,A

MOV P2,A ;вывод на индикатор Тср

SUBB A,R5 ;сравнение Тср и Тмин

JC M2

MOV A,R6

SUBB A,R4 ;сравнение Тср и Тмакс

JNC M4

JMP M3

M2: SETB P1.6 ; имитация включения нагревателя

JMP M3

M4: SETB P1.7 ;имитация включения охладителя

M3: MOV R0,#40H ;установка регистров

MOV R2,#06H

MOV A,@R0 ;нахождение максимума температур

M11: INC R0

MOV R6,A

SUBB A,@R0

JC M10

MOV A,R6

JMP M12

M10: MOV A,@R0

M12: DJNZ R2,M11

MOV P3,A ;вывод на индикатор максимального значения температуры

M5: JMP M5

END

Время выполнения: 28 мкс;

Размер: 46 байт.

Карта распределения адресного пространства памяти контроллера:

40H–45Н значения входных температур.

1.6. Обработка запроса прерывания

В качестве сигналов прерывания, поступающих в контроллер прерывания, могут быть сигналы, формируемые модулями, входящими в контроллер (модуль таймера, последовательные и параллельные порты, АЦП и др.) и могут быть внешние сигналы, поступающие в контроллер из устройств, подключенных к нему. Первая группа сигналов называется – внутренними прерываниями, а вторая – внешними. Структурная схема обработки запросов IR1 IRn-1 приведена на рис.11:

Рис.11. Схема обработки прерываний

IR0 – имеет высший приоритет;

IRR – регистр запросов прерываний. В этом регистре фиксируются поступившие запросы.

После поступления в КП одного или более запросов IR, КП выделяет самый приоритетный из них. Для назначения приоритетных запросов в КП имеется регистр приоритетов (IP).

IE – регистр разрешения запросов прерывания. Он позволяет временно запрещать поступление одного или более запросов IR. В некоторых контроллерах такие регистры обозначаются MR – маскирование.

После определения запроса с максимальным приоритетом контроллер прерывания формирует в ЦПУ сигнал прерывания INT. После получения сигнала прерывания INT ЦПУ завершает выполнение текущей команды, прерываемой программы и формирует сигнал подтверждения INTA. После получения INTA КП формирует команду вызова подпрограммы Call ADRi (i = 0… (n-1)). После этого она обрабатывается как обычно. Выполнение команды Call ADRi в ЦПУ обеспечит обращение соответствующему адресу памяти программ для вызова подпрограммы обработки запроса прерывания (ППОЗПР).

МКС обрабатывает запросы прерывания приоритетных уровней.

В курсовой работе требуется организовать обработку прерывания от аварийного датчика, подключенного к входу обработки внешнего запроса прерывания контроллера INT0 (одна из линий порта P3). Прерывание от сигнала аварийного датчика должно обеспечить включение на пульте управления аварийной сигнализации. Это обеспечивается выдачей на одну из линий порта сигнала запуска аварийной сигнализации и выводом на индикацию текущего значения Tср. После выполнения указанных действий остановить работу контроллера, что реализуется переводом его в состояние ожидания , моделируется путем перевода контроллера в «бесконечный цикл».

Текст программы:

$MOD812

JMP START

;подпрограмма обработки прерывания

ORG 03H ; начало подпрограммы обработки прерывания

SETB P1.0 ; установка сигнала аварии

RETI ; выход из подпрограммы обработки прерывания

START: ORG 30H

;настройка контроллера прерываний

MOV IE,#81H ; разрешает прерывание INT0

MOV IP,01H ;приоритет прерывания для INT0

MOV TCON, #01H ; настраивает прерывание по фрон-

;ту(переход из 1 в 0)

; выполнение основной программы управления двигателем

M1: CLR P2.5

JNB P1.0 , M1 ; проверка датчика напряжения

JB P1.1 , M1 ; проверка кнопки останов

JNB P1.2 , M1 ; проверка кнопки пуск

SETB P2.5 ; пуск двигателя

JMP M1

END

Время выполнения: 24 мкс

Размер: 22 байт

23

Соседние файлы в папке Заочники_ЦБП