Процедура-функция является ядром, на основе
которого могут быть реализованы следующие типы ПП СУ:
I. |
Программа просмотра измеренных физических и технологических параметров;
|
II. |
Головная программа пакета ПП:
|
|
|
следит за сообщениями Диалоговой Программы и транслирует их всем ПП пакета;
|
|
|
анализирует сообщения всех ПП пакета
и устанавливает суммарный результат
работы пакета для Диалоговой Программы;
|
III. |
Управляющая ПП:
|
|
|
простейшая управляющая ПП, которая
выполняет редактирование управляющих
физических параметров,
контролируемое лишь Диалоговой Программой.
|
ПП, реализующая свойства всех указанных типов ПП, является
единственной в СУ и называется Программой-Мастером.
Эта ПП используется во всех задачах СУ (кроме
специальных) и покрывает более 50%
потребности СУ в прикладном программном обеспечении.
Процедура-функция является также ядром
полнофункциональной управляющей ПП,
работающей самостоятельно, т.е. без пакета ПП.
Алгоритм конкретной задачи управления реализуется в нескольких процедурах,
передаваемых ядру в качестве параметров.
|
narg, sarg - параметры функции main ;
|
|
App_Ini - процедура-функция для
инициализации работы ПП;
|
|
App_Edit - процедура редактирования
физических параметров (команда пользователя
"новые данные");
|
|
App_Put -
процедура, выполняющая определенный
задачей алгоритм (команда пользователя
"execute"); обычно, эта
процедура выполняет преобразование физических
управляющих параметров в
технологические и записывает
последние в таблицу БД, расположенную
одновременно на диске Рабочей Станции
и в памяти Контроллера Оборудования;
|
|
App_Checkup - процедура чтения каких-либо
параметров из других задач СУ;
|
|
App_End - процедура, завершающая
работу ПП;
|
|
fl_alarm
- установка семафора записи в файл-комментарий:
|
|
|
fl_alarm=0 - открыть файл, если указан параметр при вызове программы,
|
|
|
fl_alarm=1 - открыть файл без условий.
|
Процедура-функция PrgKern_Master содержит среди первых операторов вызовы
процедур PrgIni_SigIgnSet ,
PrgIni_Start и PrgConnectRegime_Get .
Процедура-функция принимает обязательный параметр
"PL=", передаваемый ПП при вызове,
который указывает номер плоскости в
таблице описания задач "U70_APPLICATIONS".
Из таблицы описания задачи определяются MAIN-таблицы
и тип задачи, а из MAIN-таблиц
определяются списки управляемых и
измеряемых физических и технологических
параметров. Если среди в командной строке
вызова ПП присутствует параметр "+AP",
это означает наличие пакета ПП.
Алгоритм работы ядра
циклический - чтение команды
пользователя семафора
MAIN-таблицы через каждые CMD_WAIT_SEC
секунд. Если команда обнаружена, то она
записывается в семафоры
управления всех управляемых физических
параметров задачи и производится вызов
процедур App_Edit и App_Put, если они
определены. Если команды пользователя не
было, то производится проверка семафоров
результата всех управляемых и измеряемых
параметров данной задачи и генерируется
суммарный результат, который записывается
в семафоры MAIN-таблицы.
Команда пользователя,
передаваемая Диалоговой Программой,
маскируется специальным битом CMD_MASTER .
Наличие маски обеспечивает корректность
контроля Головной программой пакета за
выполнением slave-программами пакета именно
данной команды.
|