Неотъемлемой частью любой микропроцессорной системы является управляющая программа, которая обеспечивает выполнение системой заданных функций.
На рисунке 10.57 приведена схема алгоритма работы ЛМПСУ, структура которой показана на рисунке 10.1.
В начале производится начальная инициализация ведомой ОМЭВМ, включающая начальные установки, программирование таймеров, последовательного и параллельного портов, системы прерываний.
Затем обрабатывается первый (индекс 0) канал трехканальной системы сбора, обработки информации и управления. Это происходит в том случае, если отсутствует прерывание от установки флага RI=1 ведомой ОМЭВМ (входной буфер приемника последовательного канала полон). RI=0 отражает отсутствие необходимости удаленного управления, которое заключается в получении ведомой ОМЭВМ команды от микро ЭВМ более высокой ступени иерархии.
Значение контролируемого параметра 1-го канала (в нашем случае – расход газа) через аналоговый мультиплексор и устройство выборки-хранения, встроенные в микросхему MAX154, поступит на вход АЦП этой микросхемы.
Затем формируется сигнал запуска АЦП, ожидается окончание преобразования и после его завершения информация о текущем значении контролируемого параметра вводится в ОМЭВМ. Здесь это значение сравнивается с заданным, в результате чего вырабатывается сигнал рассогласования, который поступает на цифровой ПИД-регулятор, реализованный программно, и предназначенный для обеспечения требуемого качества процесса управления.
С выхода регулятора снимается управляющее воздействие, которое через параллельный порт ОМЭВМ выводится сигналом – запись в предварительно выбранный регистр – защелку четырехканального ЦАП MAX506.
Цифровое значение, сохраненное в регистре, непосредственно цифро-аналоговым преобразователем, выполненном на матрице R-2R и операционном усилителе, преобразуется в аналоговую величину – напряжение, которая выдается на соответствующий исполнительный элемент.
После завершения обработки первого канала формируется сигнал сброса для АЦП и аналогично обрабатываются второй канал – измерения давления, а затем третий – измерения температуры.
Если после этого работа системы не завершена, то управление вновь передается обработке 1-го канала и т.д.
Если перед очередным циклом обработки появляется сигнал необходимости удаленного управления, то основная программа прерывается и управление передается подпрограмме, осуществляющей взаимодействие с микро ЭВМ более высокого уровня.
Рабочая управляющая программа, реализующая данный алгоритм на языке Ассемблер ОМЭВМ МК51 приведена в таблице 10.7.
Рисунок 10.57
Таблица 10.7 – Рабочая управляющая программа
Блок |
Метка |
Команда |
Комментарий | ||
1 |
SETB P2.6 |
Подача высокого уровня на WR | |||
2 |
MAIN: |
JB P3.2, REMCONTROL |
Переход к подпрограмме удаленного управления при наличии сигнала УУ | ||
3 |
MOV R0, 0 |
Установка начального канала | |||
4 |
LOOP: |
MOV A, P2 AND A,#11111100b OR A, R0 MOV P2, A |
Чтение информации из порта P2 Маскировка битов номера канала АЦП Запись номера канала Вывод номера канала в порт P2 | ||
5 |
CLR P2.2 |
Подача низкого уровня на CS, RD | |||
6 |
NOP NOP |
Задержка для окончания преобразования АЦП | |||
7 |
MOV A, P1 |
Чтение данных из АЦП | |||
8 |
ACALL REG_PROC MOV R1, A |
Вызов подпрограммы ПИД – регуля-тора ПП возвращает результат в аккумуляторе | |||
9 |
MOV A, R0 MOV C, ACC.0 MOV P2.4, C MOV C, ACC.1 MOV P2.5, C SJMP CONTINUE: |
Загрузка номера канала в аккумулятор Побитовый вывод номера канала в ЦАП | |||
10 |
REMCONTROL: |
Выполнение команды удаленного управления | |||
11 |
CHECKEXIT: |
JNB P3.5, MAIN |
Переход к началу программы | ||
12 |
RET |
Выход из программы | |||
13 |
CONTINUE: |
MOV A, R1 MOV P0, A |
Загрузка сигнала управления в аккумулятор Вывод сигнала управления в ЦАП | ||
14 |
CLR P2.6 SETB P2.6 |
Подача перехода 0->1 на ЦАП (запуск) | |||
15 |
SETB P2.2 |
Подача высокого уровня на CS, RD | |||
16 |
INC R0 CJNE A, #3, LOOP SJMP CHECKEXIT |
Переход к следующему каналу Выполнить для 0 2 канала Переход к следующей итерации | |||
Коллинеарная антенная решетка с последовательным возбуждением
В данной
курсовой работе необходимо рассчитать коллинеарную антенную решетку с
последовательным возбуждением, для этого мы будем использовать модель антенной
решетки Маркони-Франклина. В качестве излучателей будем использоват ...
Моделирование работы узла коммутации сообщений
Данная курсовая работа по теме: «Моделирование процессов
обработки информации» имеет следующее задание.
В узел коммутации сообщений, состоящий из входного буфера,
процессора, двух выходных буферов и двух выходных линий, пос ...
Антенная решетка из рупорно-линзовых антенн с электрическим качанием луча
Антенно-фидерное устройство, обеспечивающее излучение и приём
радиоволн, - неотъемлемая часть любой радиотехнической системы. Требования к техническим
характеристикам антенн вытекают из назначения радиосистемы, условий размеще ...