Главная »  Микропроцессорное управление 

1 ... 19 20 21 22 23 24 25 ... 27

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

5.4 ЯЗЫКИ ПРОГРАММИРОВАНИЯ ПОЛЬЗОВАТЕЛЯ

На начальных этапах создания и внедрения МПСУ специальным технологическим оборудованием разработка прикладного программного обеспечения производилась либо в машинных кодах, либо на языке ассемблера. Программирование такого рода требует не только свободного владения логико-математическими приемами мультипрограммирования, обработки прерываний, описания связи с нестандартными внешними устройствами, но и глубокого знания архитектуры и систем команд используемой микроэвм и технических средств управления.

В условиях массовой автоматизации промышленных установок далеко не всегда представляется возможным обеспечить участие программистов в разработке каждой новой установки. И в то же время, привлечение программистов, не знакомых с особенностями конкретной технологии, оборудования, средств управления, затрудняет эффективное использование новых управляюгцих средств. Кроме того, пользователь вынужден оперативно корректировать или модифицировать свою программу, что всегда необходимо при разработке и отладке новой технологии.

Таким образом, широкое применение микропроцессорных технических средств управления требует, чтобы большинство специалистов, как разработчиков, так и технологов, овладело приемами программирования задач управления СТО, а для этого необходимы доступные и относительно простые средства (языки) описания программ управления. При создании языков, ориентированных на описание задач управления, разработчик сталкивается с многообразными и зачастую противоречивыми и неадекватными требованиями пользователей. Одним из первых шагов при разработке языков управления является выбор степени проблемной ориентации языка.

Проблемно-ориентированный язык пользователя должен позволять описать алгоритм функционирования оборудования (язык описания), запрограммировать этот алгоритм на конкретных микропроцессорных технических средствах (базовый язык) и реализовать алгоритм на языке микроЭВМ (машинный язык).

Система управления технологическим оборудованием должна обеспечивать выполнение двух основных функций: управление циклом и параметрами. Остальные функции, рассмотренные в гл. 1, являются в определенной степени или производными от этих двух, или подготавливаюгцими их выполнение.

В отечественной и мировой практике разработаны и продолжа-Фт разрабатываться языки пользователей. Среди языков описаний



Таблица 5.3. Компоненты релейных схем

Обозначение

Значения

Логические компоненты:

реле с замыкающим контактом реле с размыкающим контактом

начало ветвления параллельной цепи

конец ветвления параллельной цепи

Таймеры и счетчики

ХилаУ

Символ присвоения

Присвоение результата промежуточной переменной или выходы

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

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

Язык релейно-контактных символов. Опыт работы с релейно-контактными схемами управления привел к созданию соответствующего языка. Релейные схемы состоят в основном из шести компонентов (табл. 5.3); логических, таймеров и счетчиков, символов присвоения результатов.

Цепь - это соединение элементов, в том числе хотя бы одного символа присвоения релейных схем, представляюших собой последовательность команд, выполняемых программируемыми контроллерами (ПК). Таким образом, цепь-это элемент программирования релейных языков и, как это будет показано ниже, элемент булевых языков. Формат цепи может быть фиксированным или переменным. В первом случае цепь должна состоять из определенного числа компонентов. Символ присваивания позволяет идентифицировать строку программы и назначать промежуточную переменную или соответствующий выход. Логические компоненты придаются входам, промежуточным переменным или выходам.



\Х1 \ХЗ \К1

W0D1 wool

4 1-

WOOJ CDOOl

н I----он

Рис. 5.8. Релейная схема:

а э.1екр|1ческан iipniiuiimiLi.ibiiaM схема; 6 изображение релейной схемы на экране дисплея

При использовании языка релейно-контактных схем программа вычерчивае1 на экране дисплея в определенном масштабе легко читаемые схемы. Выполнение программы производится по цепям. Каждая цепь отрабатывается слева направо. Это дает возможность программисту сделать какой-то определенный сигнал приоритетным по сравнению с другими, например для обеспечения безопасности. Формат цепи программируемых контроллеров содержит разное число логических компонентов. Для компенсации ограниченного числа компонентов в цепи предусматривается возможность слияния цепей.

На рис. 5.8 приведен пример релейной схемы управления и ее эквивалентное изображение. Входные сигналы обозначаются через X, а выходные-Y.

В ПК фирмы Модикон приняты следующие обозначения:

0 ХХХХ-выходы или символ присвоения;

1 ХХХХ- входы;

3 ХХХХ-входные регистры;

4 ХХХХ-запоминающие и выходные регистры.

Формат цепи ПК Модикон предполагает наличие пяти компонентов: четыре первые позиции отводятся для логических компонентов, а последняя-для символа присвоения, указывающего с помощью номера цепь, промежуточную (рабочую память) и выходную переменную в соответствии с логикой управления. В примере, приведенном на рис. 5.8, промежуточная переменная У1 (00001) обусловливает состояние 1 выхода Y2 (00002). Комплексная программа, состоящая из сети цепей, может быть распечатана на алфавитно-цифровом печатающем устройстве. В конце распечатки после релейно-контактных цепей распечатывается список поперечных ссылок всех входов и выходов по цепям, где они запрограммированы.

Большинство ПК имеют функции выдержки времени и счета. Различают два вида реле времени (таймеров). Они содержат



Таблица 5.4. Основные булевые операторы

Булевый оператор

и

(КОНЪЮПК1М1Я)

или

(ЛПЗЪЮПК1П1Я)

(ппверсия)

Математическая символика

п л

и V +

а, /а

Релейная символика

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

Таймеры первого вида начинают счет при подаче управляющего воздействия и обнуляются при его снятии. Накапливающие таймеры при снятии управляющего воздействия останавливают счет и продолжают его при новом воздействии. Счетчики, применяемые в ПК, работают в двух режимах - суммирования и вычитания. В режиме суммирования при переходе управляющего воздействия из состояния О в 1 в аккумулятор добавляется 1, в другом режиме 1 отнимается. Установка значений аккумуляторов в исходное осуществляется отдельным воздействием.

Язык булевых уравнений. Алгоритм управления циклом оборудования может быть представлен в виде системы булевых уравнений. В табл. 5.4 представлены основные булевые операторы.

Уравнения, описывающие схему, приведенную' на рис. 5.8,й, имеют вид: {Х\ Х2 + ХЪ)XA=Y\; {Х6 Х1+Х5) Y\ = Y1. В данном случае имеем дело с цепью, состоящей из булевых операторов. Символ присвоения эквивалентен знаку равенства.

Для того чтобы запрограммировать контроллер под конкретную задачу управления, одного лищь языка релейно-контактных символов или булевых уравнений недостаточно. Необходимо выполнить целый ряд функций программирования, таких как идентификация, инициализация, управление циклом, реализация вычислений, отображение информации ИТ. п. Эти функции выполняются с помощью базового языка, т. е. словарного запаса и грамматики , которые позволяют на определенных технических средствах реализовать программу управления. Идентификаторы предназначены для обозначения элементов, к которым обращается программа для обеспечения соответствия логическим и физическим элементам. Команды инициализации можно интерпретировать как команды присваивания начальных значении.

В табл. 5.5 приведен состав базового программного обеспечения одного из отечественных программируемых контроллеров.

Современные ПК помимо функций циклового управления могут реализовать и функции регулирования по ПИД-закону. Если обозначить 8 (г) мгновенное значение разности между уставкой



Таблица 5.5. Состав базового программного обеспечения

Функциональное назиачепне

Область использования

9 10

Интерпретатор управляющих директив Блок топологического контроля релейной схемы Блок перевода релейной схемы в булевое вычисление Блок генерации машинных кодов Блок формирования диагностических запросов Блок синтаксического контроля булевого выражения Блок 1енера.1ии булевого выражения из машинного эквивалента релейной цепи

Блок формирования признаков состояния элементов релейной цепи

Блок перевода булевого выражения в релейную схему Блок формирования динамического состояния релейной цепи

Интерпретатор диагностических запросов Блок вывода на печать технической документации и диагностических сообщений

Примечание: 1 HCHoj[b3uBaHHe модуля на этапе созда[П]я специального программного обеспечения: 2 использование моду.1я в эксплуатационном режиме

регулируемого параметра и его действительным значением, то выдаваемый ПИД-регулятором сигнал U[t) можно описать уравнением

U{t) = kMt)+k2\4¥t+k/+U,

где t/ ,-управляющий сигнал в условных режимах без воздействия возмущающих факторов; - коэффищ1ент усиления пропорционального воздействия; kz - величина, обратная постоянной времени интегрирования; к^ - постоянная времени дифференцирования.

Простым и доступным для разработчиков и работников служб эксплуатации языком является язык программаторов время - команда и время-параметр . Несмотря на некоторую ограниченность функций, этот язык позволяет запрограммировать функционирование достаточно сложного оборудования типа диффузионного, вакуумно-напылительного, плазмохимического. На основе временных интервалов применительно к техническим средствам Орион-3 для управления технологическим оборудованием была разработана пррграмма управления.

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

программирование (ввод технологической программы, контроль введенных данных); 218



собственно управление;

индикацию хода выполнения технологических процессов.

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

Программа управления обладает следующими возможностями:

число временных интервалов равно 100;

время интервала может меняться от 1 с до 9 ч 59 мин 59 с с дискретом 1 с;

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

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

На каждом временном интервале программа управления может выполнять следующие действия:

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

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

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

вести регулирование по ПИД-закону заданного числа контуров регулирования;

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



Программирование уравнения, решаемого на протяжении Всего техлроиесса и программирование перехода ма заданный интервал в случае отрииатемного решения

Проераммирование команд, которые неод-ходимо включать ала выключать по каждому инициативному Входу

Программирование

1.0Вш,ее уравнение

2.Инициа/пиВнье Влади 3. ТаВлицы уровней ft Допуски

5. ПИД-коэффициенты

Указатель раВот

?. Программирование -

2. Управление

3. Индикация

/.Диагностика

Таблицы ровней

1 Регуляторы

2.АналогоВые Выходы -i

З.Задания для допусков контроля

Программирование до 16 уровней-заданий для допускоВого контроля по каждому аналоговому Входу

Программирование до 7В уровней-заданий по каждому аналоговому выходу

Программирование до 16 уровней-заданий по каждому контуру регулирования

Программирование: I Программирование параметров, меняющих значение напротяже-нии техпрчцессд

2. Программирование временных интервалов

Программирование до 16уровней допуска (в процентах)

Программирование до 16 наборов козд>-фициентов ПИД-рвгуляторов

Программирование

7. Контуры регулирования

г./Аналоговые выходы

З.Допусковый контроль

Ч.Дискретные Выходы

5.Лшкретные выходы с контролем

б.ПрограммироВсние цимоВ

гУслоЫ интервала -i

Нонолехсиая индикация

для индикации

ХАнйПпгоВые входы

I. Аналоговые выходы

.Дискретные Входы /(.Дискретные Выходы

Выбор дискретных

* о. aiu

Выбор дискрег

Выбор аналоговых Выходов

Выбор аналоговых Входов

Программирование: номер урёвня-заданиЯ' признак шаВио/скачкоп номер набора коэффициентов РИД

Программиоование: номер урооня аналогового выхода; признак скачком! плавно

Программирование: иомеруродия сигнала-, номер допуска: Время Вкрючения допуска-

Программирование

Программирование: заданных выходов; Времени контроля

Программирование: установка счетчиков цикмВ;

установка интервалов, определяющих конец цикла

Программирование: интервального уравнения и перехода на отрицательное решение-, безуслодноео перехода-, конца программы



заданный интервал, если значение аналогового сигнала на входе не попадает в значение допуска. Включение допускового контроля возможно через заранее запрограммированную задержку времени;

решать интегральное логическое уравнение, аргументами которого являются состояния дискретных входов. При нулевом решении уравнения производить заранее запрограммированный останов или переход на заданный интервал, накапливая при этом диагностическую информацию;

организовывать повторение любой интервальной последовательности необходимое чис;ю раз;

производить в конце интервала переход на любой временной интервал.

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

Система иерархически вложенных указателей ( меню ) дает возможность путем последовательного выбора указателей выйти на нужный режим работы (рис. 5.9).

Для описания режимов управления технологическими процессами низкой и средней сложности, управляющим устройством которых является комплекс УТК-5, был создан проблемно-ориентированный язык КАУТ-80 (Контроль, Анализ, Управление Технологией, год реализации-1980).

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

КАУТ-80 имеет модульную структуру. Каждой технологической операции, проводимой на объекте управления в реальном времени, ставится в соответствие программный модуль- работа КАУТ-программы;

работы описываются и отлаживаются относительно независимо, связь между ними осуществляется через массив глобальных переменных. Специальных операторов эквалентирования параметров в языке нет, общие для нескольких работ переменные должны иметь одинаковые имена;

описание конфигурации объекта управления сведено к простому поименованию каналов связи технологического объекта с управляющим комплексом (УК). Тип аппаратуры и номера каналов перебираются и предлагаются пользователю автоматически за счет встраивания в компилятор архитектуры УК;

Рис. 5.9. Циклограмма режима Программирование



в языке существуют три типа переменных, необходимых и достаточных для управления вакуумно-технологическими процессами: целые , волБты , время ;

нет средств описания аппаратуры. Встраивание типовых для конкретного УК интерфейсных программ (драйверов) в операционную систему позволяет пользователю осуществлять взаимодействие УК с объектом специализированными операторами системного обмена;

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

Ориентация на характеристики вакуумно-технологических процессов, оборудования и средства управления позволили создать простые и однозначные термины языка, число которых не превышает 20.

Полный технологический процесс описывается КАУТ-програм-мой, которая состоит из заголовка и тела . В заголовке идентифицируются и распределяются каналы связи между технологическим объектом и управляющей микроЭВМ, а также описываются параметры технологического процесса. Назначаются каналы КОНТРОЛИРУЕМЫЕ, ВКЛЮЧАЕМЫЕ, РЕГУЛИРУЕМЫЕ; им присваиваются номера и наименования; проводится описание параметров с присвоением номера, имени, единицы измерения.

Заголовок КАУТ-программы -* < распределение каналов > < описание параметров >

Стрелка заменяет слова есть по определению или состоит из . Распределение каналов -у [<контролируемые каналы>]

<каналы дискретного управления> <каналы аналогового управления> Квадратные скобки обозначают объединение множества, а вертикальная черта заменяет слово либо .

Контролируемые каналы КОНТРО.ЛИРУЕМЫЕ: {< номер канала > <имя контролируемого датчика > , } - Фигурные скобки обозначают объединение множеств

Каналы дискретного управления ВКЛЮЧАЕМЫЕ: {< номер канала > :

<имя включаемого элемента > , } - Каналы аналогового управления -> РЕГУ.ЛИРУЕМЫЕ: {< номера канала > :

<имя регулируемого канала > , } - Подчеркнутые элементы являются частью языка.

Описание параметров - < номер параметра > : <имя>,

< единица измерения >, < знак >,

< положение запятой >. Номер параметра -> Н < целое >.

Имя П < идентификатор >.



Таблица 5.6. Операторы и ограничители языка КАУТ-80

Ограничители

Операторы

АППАРАТНОЕ

ПУД

БЛОКИРОВАТЬ

СТАРТ

ВКЛ

УПР

ФИНАЛ

ЖДАТЬ

ХОД ЦИФРА

>

§

ИЗМ

<

КОНЕЦ НА

ЧИТ

ЭКРАН

Единица измерения Знак +

► < буква > [< буква >]

Положение запятой О 1 2 3

Цифра О говорит о том, что в значении параметра, вызванного на экран комплекса УТК-5, запятая будет стоять после третьей цифры; 1 -запятая после второй цифры; 2-после первой, 3- перед первой. В заголовок КАУТ-программы выносятся только те параметры, которые требуется менять или контролировать в ходе управления технологическим процессом.

Тело КАУТ-программы состоит из описаний работ.

Тело КАУТ-программы < работа > { < работа > }.

При описании работ используются специальные операторы и ограничители - специальные символы, пары символов или зарезервированные слова, которые приведены в табл. 5.6.

Зарезервированные слова, обозначающие операторы, начинаются с апострофа, чтобы отличить их от идентификатора. Группа символов называется оператором присвоения и произносится присвоить . После выполнения присвоения переменная принимает значение, полученное в результате вычисления (или присвоения).

Работа состоит из заголовка и тела работы. В заголовке указывается номер работы. Завершает тело работы разделительный оператор КОНЕЦ.

РАБОТА -у < ЗАГОЛОВОК РАБОТЫ > <ТЕЛО РАБОТЫ >

ЗАГОЛОВОК РАБОТЫ -* <РАБОТА > <НОМЕР РАБОТЫ > .

НОМЕР РАБОТЫ < ЦЕЛОЕ > ~

ТЕЛО РАБОТЫ <НУМЕРОВАННЫЙ ОПЕРАТОР> {<НУМЕРОВАННЫЙ ОПЕРАТОР>;} КОНЕЦ;

В ГЛ. 6 Приведен пример КАУТ-программ технологического процесса.

Разнообразие функций управления, создание и развитие различных языков пользователей затрудняет выбор типа языка. Нужно принимать во внимание не только технические факторы (жесткость или гибкость управления, возможность расширения и модернизации), но и социальные моменты, такие как наличие квалифицированных кадров программистов, эксплуатационников, сложность внедрения новой техники и др.




1 ... 19 20 21 22 23 24 25 ... 27



Как выбрать диван



История мебели



Стили кухонной мебели



Публикации



Инверторы



Приемники