Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lekcii_po_TSAiU.doc
Скачиваний:
95
Добавлен:
19.09.2019
Размер:
6.47 Mб
Скачать

Технологическое программирование Ломиконтов.

Для задания логики, в соответствии с которой Ломиконт должен вести управление объектом, служит технологическое программирование. В Ломиконтах оно осуществляется с помощью специального языка, называемого МИКРОЛ - микро- язык для логического управления. МИКРОЛ построен на технологических понятиях. Это удобный и наглядный язык, простой для изучения, с широкими функциональными возможностями.

Логика управления конкретным технологическим процессом, записанная на МИКРОЛе и введенная в Ломиконт с пульта, называется технологической программой пользователя (ПрП), вводится пользователем с пульта контроллера и запоминается в оперативной памяти, а после отладки и проверки переписывается (при необходимости) в постоянную память с ультрафиолетовым стиранием.

Структура ПрП двухуровневая, содержит до В программных блоков, где каждый содержит 32 программные секции. Логика управления объектом - логические условия и действия - "пишется" на МИКРОЛе по секциям. В МИКРОЛе предусмотрены специальные средства для управления работой блоков и секций.

Константы и переменные.

В процессе исполнения ПрП производятся различные действия с константами и переменными. В МИКРОЛе используются константы трех типов: дискретные, целочисленные (аналоговые) и временные. Целочисленная константа - целое число в диапазоне от - 1000 и до +1000. Дискретная константа может иметь одно из двух значений: ВКЛ или ОТКЛ.

Временная константа может иметь один из двух форматов. Временная константа секундного формата тлеет дискретность 1 секунду и принимает значения в диапазоне от 00.00.00 до 2З.59.59 (до суток: первая пара цифр - часы, втора - минуты, третья - секунды) . Временная константа 100 - миллисекундного формата имеет дискретность 100 мс и принимает значения в диапазоне от 00.00.0 до 59.59.9 (ДО I часа: первая паря цифр - минуты, вторая - секунды, последняя цифра - десятые доли секунды)-.

В МИКРОЛе имеется восемь типов переменных. Максимальное количество переменных каждого типа указало в скобках:

Вд - вход дискретный (512); ВА - вход аналоговый (128); ДВ — дискретный выход, (512); АВ - аналоговый выход (128); KB -ключ блока (8); КС - ключ секции (256); ТМ - таймер (64); ИМП - импульсный выход (В).

Дискретные переменные ВД, ДВ, КБ и КС принимают одно из двух значений: ВКЛ или ОТКЛ.. Для входов дискретных ВД значения ВКЛ и ОТКЛ соответствуют наличию или отсутствию сигналов на соответствующих дискретных входах Ломиконта. Значения ВКЛ или ОТКЛ дискретных выходов ДВ означает, что соответствующие транзисторные ключи (дискретные выходы Ломиконта) будут замкнуты или разомкнуты, управляя тем самым исполнительными механизмами системы управления.

С помощью значений ВКЛ и ОТКЛ дискретных переменных КБ и КС организуется логика управления отдельными частями ПрП: в процессе выполнения ПрП выполнение или обход программы, размещенной в данном блоке или секции, определяется значением соответствующего ключа блока КБ или секции КС; ВКЛ соответствует выполнение, ОТКЛ - обход.

Аналоговые (целочисленные) переменные ВА и АВ принимают целочисленные значения в диапазоне от -1000 до -1000. Для аналоговых входов ВА и выходов АВ - этот диапазон соответствует полному диапазону изменения аналоговых входных и выходных сигналов Ломиконта.

Переменные ИМП принимают значения от -100 до +100 (%).

Основное назначение импульсных выходов - формировать сигналы управления исполнительными механизмами постоянной скорости в системах регулирования.

Таймеры ТМ работают по принципу обычных часов и характеризуются как дискретным значением ВКЛ (часы идут) или ОТКЛ (часы стоят), так и величиной времени. Из 64 таймеров Заказываются секундными, остальные

- 100 - миллисекундными.

При ручном управлении или от ЭВМ команды, идущие от Ломиконта, блокируются.

Основные конструкции технологического языка Ломиконта.

Принцип перевода технологической задачи на язык Ломиконта поясним на следующем примере.

Допустим, что имеется условие: если величина сигнала с датчика температуры не достигла 63% от максимального уровня за время 3 мин 15 с или если, сработало защитное реле, тогда включить в работу аварийный регулятор, вывести на дисплей и печать сообщение "ТЕМПЕРАТУРА НИЖЕ НОРМЫ" и замкнуть контакт в цепи аварийной сигнализации.

Программа на МИКРОЛе имеет вид (справа приведено

пояснение):

ЕСЛИ TM03 > 00.03.15 ТМОЗ - таймер; сигнал с датчика

подан

ЕСЛИ ВА004 <+0630 на вход аналоговый ВА004;

константа

ИЛИ задает 63% от 1000 - макс. значения ВА;

ЕСЛИ ЗИЛ ВД026 ВД026 - сигнал от защитного

реле;

ТОГДА АЛГ34 АЛГ34 - алгоритм ПИ-регулятора; ТОГДА TС0.1.1 ТС0.1.1 - текстовое сообщение для

ТЕМПЕРАТУРА НИЖЕ логических каналов 1 и 2

дисплея и печати;

НОРМЫ цепь аварийной сигнализации замыкается

ТОГДА ВКЛ ДВ133 через дискретный выход ДВ1ЗЗ.

В дальнейшем для сокращения записи приняты сокращения: Е- ЕСЛИ, Т - ТОГДА, И - ИНАЧЕ, В - ВКЛ,О - ОТКЛ.

Программа на МИКРОЛе состоит из операторов - условных и безусловных. Приведем несколько примеров операторов, записав справа от оператора комментарий к нему. Пример 1 (условный оператор):

17 Е В ВД034 Если включен вход дискретный ВД034

20 Е ВА000 и если значение входа аналогового

>+0590 ВА000 больше константы 59О,

21 Т 0 ДВ010Ш тогда отключить дискретный выход ДВ010,

22 Т АЛ706 тогда исполнить алгоритм номер 06,

23 И В КБ6 иначе включить ключ блока КБ6.

Пример 2 (безусловный оператор):

25 В TМ06 Включить таймер ТМ06.

Операторы записываются с помощью отдельных фраз, называемых фрагментами. Безусловный оператор записывается одним фрагментом, условный - несколькими. Фрагменты нумеруются, номер фрагмента пишется слева от него. Этот номер ВОСЬМЕРИЧНЫЙ и изменяется от 00 до 77, т.е. в секции может быть до 64 фрагментов. Фрагменты нумеруются подряд без пропусков, т.е. секция либо пустая (нет

ни одного фрагмента), либо имеющиеся в секции фрагменты занимают без пропусков какое-то количество номеров, начиная с 00.

Условные операторы состоят из двух частей: условной, где проверяется некоторая совокупность условий, и исполнительной. Исполнительная часть состоит из фрагментов, начинающихся с ТОГДА, или ИНАЧЕ. Действия, указанные во фрагментах ТОГДА, выполняются если выполнена совокупность условия условной части оператора. В противном случае выполняются действия фрагментов ИНАЧЕ. Условная часть может содержать несколько условий. Число их не ограничено. Сложное условие может содержать логические связки по И, (И - обычно опускается), ИЛИ и скобки. В исполнительной части фрагменты ТОГДА и ИНАЧЕ могут чередоваться в произвольном порядке или вовсе отсутствовать. Единственное ограничение - в исполнительной части должен быть хоть один

фрагмент.

Безусловные операторы состоят только из исполнительной части. Выполнение безусловного оператора не связано с проверкой какого-либо условия.

Например, при связке И:

05 Е условие А

06 Е условие В

при связке ИЛИ;

17 Е условие А

20 ИЛИ

21 Е условие В

Порядок проверки нескольких условий, связанных логическими И и ИЛИ определяется "старшинством" логического И над ИЛИ. Например, конструкция вида

57 Е условие А

60 ИЛИ

61 Е условие В

62 условие С

проверяется аналогично тому, как при вычислении выражения А+ВхС - вначале производятся умножение.

Для построения сложных конструкций условной части можно использовать специальные фрагменты: открывающие и закрывающие скобки. Глубина вложения скобок не ограничена. При наличии скобок вначале проверяется истинность условия, заключенного в скобки.

В исполнительной части, начиная фрагмент с ТОГДА или

ИНАЧЕ, можно:

- включить или отключить переменную ВД, ДВ, КБ, КС.

Например,

22 Т В ТМ32

тогда включить таймер ТМ 32;

23 И О

ДВ330

иначе отключить дискретный выход

ДВ330;

- присвоить переменной АВ значение арифметического выражения.

Например,

11 Т AB007 тогда аналоговому выходу АВ007;

=+ВА073 присвоить значение входа аналогового ВА073;

-BAI06 минус значение входа аналогового BA106.

- присвоить величине времени в таймере ТМ значение величины времени другого таймера такого же формата или значение временной

константы такого же формата. Например,

30 И TM0I иначе величине времени таймера ТМ01

=01.12.30 присвоить значение 1 час 12 минут 30 секунд;

- выйти из секции, не выполняя оставшуюся часть программы секции, используя специальный фрагмент ВСК (выход из секции).

Например,

14. Т ВСК тогда выйти из секции.

- вызвать и исполнить алгоритм из библиотеки алгоритмов, имеющейся в составе математического обеспечения Ломиконта.

Например,

14 Т АЛГ31 тогда выполнить алгоритм номер 31.

- вывести технологическое сообщение (ТС) по любому из логических каналов связи КЛО-КЛ2 или одновременно по любым двум из

них или по всем трем. Например,

33 И ТС0.0.1 иначе вывести технологическое сообщение

"КЛАПАН 2 ЗАКРЫТ" "КЛАПАН 2 ЗАКРЫТ".

Типы фрагментов безусловного оператора полностью повторяют типы фрагментов исполнительной части условного оператора с единственной разницей: отсутствуют ТОГДА и ИНАЧЕ.

Например,

01 В KC012 Включить ключ секции KC012.

Помимо действий, описанных выше и позволяющих строить сложную к разветвленную логику управления объектом из маленьких "кирпичиков", в Ломиконте имеется библиотека алгоритмов, каждый . из которых выполняет определенную относительно сложную функцию, например, алгоритмы умножения, деления, извлечения корня, линейной интерполяции по времени, линейной интерполяции по параметру, фильтрации, интегрирования, ПИ - алгоритм регулирования аналоговый, ПИ -алгоритм регулирования импульсный и ряд других. Таким образом, некоторые сложные стандартные комплексы действий можно не набирать из "кирпичиков", а воспользоваться соответствующими алгоритмами.

Имеется возможность вывода на экран пульта контроллера, на дисплей и на печать сведений о процессе управления и текущих к значений переменных.

Технологическое сообщение, задаваемое в ПрП, может содержать произвольный текст, состоящий из прописных русских и латинских букв, цифр, знаков препинания, знаков арифметических действий и других.

Ломиконт содержит встроенную непрерывно функционирующую, программно-аппаратную систему контроля, которая обнаруживает большинство возможных неисправностей Ломиконта. Контроль ведется на двух уровнях: аппаратном и программном. Аппаратный контроль проверяет исправность источника питания и резервной батареи, а также следит за тем, работает ли Ломиконт с нормальной цикличностью. Программный контроль проверяет правильность хранения информации в оперативной и постоянной памяти.

Резервирование в Ломиконте осуществляется на трех уровнях. Информация, полностью характеризующая текущее состояние оперативной памяти (значения переменных, блокировки, служебная информация), хранится в оперативной памяти в двух экземплярах, в виде оригинала и копии. В каждом цикле после выполнения ПрП проверяется правильность сохранения информации в оригинале. Если сбоя не было, информация переписывается в копию, т.е. копия "освежается". Пользователь имеет возможность резервировать модуль оперативной памяти 03У4, где содержится оперативная информация.

В Ломиконте имеется семь режимов работы: "останов", "пуск", "настройка", "программирование", "копирование", "тестирование", "ошибка".

Каждому режиму на клавиатуре пульта соответствует "своя" клавиша. Переход из любого режима в другой - через режим "останов".

Режим "программирование" прежде всего, используется для ввода, коррекции и просмотра на экране программы пользователя. В режиме "копирование" можно вывести ПрП на печать, переписать ПрП из модуля ОЗУ4 в модуль МВД и обратно, генерировать постоянную Память модуля МПП. В режиме "тестирование" пользователи предлагается "меню" тестов для глубокого контроля аппаратуры Ломиконта. В режиме "ошибка"

пользователь может увидеть перечень неисправностей, если таковые обнаружены системой контроля.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]