Главная Случайная страница


Полезное:

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


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Методы организации доступа к линиям связи 3 page





а

% I или Q X, W или D x y i
Символ IEC I – вход Q – выход X – бит W – слово D – двой-ное слово Номер корзины Номер модуля Номер канала

Рис. 3.4. Формат адресации вводимой или выводимой из ПЛК величины (а) и внутренней переменной ПЛК (б)

б

% M, K или S X, B, W, D или F i
Символ IEC M – внутренний (бит) K – константа S – системный (бит) X – бит B – байт W – слово D – двойное слово F – число с плавающей точкой Адрес (номер ячейки памяти)

 

Рис. 3.4. Продолжение

 

Язык релейных диаграмм (LD)

 

Язык LD представляет собой графическую интерпретацию процесса разработки релейно-контактных схем управления. Первоначально на языке LD программировались контроллеры производства компании Allen Bradley. Ввиду его удобства и значительного количества пользователей, обладающих навыками проектирования логических систем на базе реле и контакторов, язык LD был введен в стандарт IEC 61131-3 и в настоящее время является одним из наиболее распространенных язы­ков программирования ПЛК. Этот язык наиболее удобен для программирования небольших задач дискретной логики, поэтому многие контроллеры младших классов имеют язык LD в качестве основного для разработки программ управления.

Программы, написанные на языке LD, состоят из последовательности ступеней, которые выполняются ПЛК последовательно, слева направо (рис. 3.5).

Ступень состоит из набора графических элементов, ограниченных слева и справа условными шинами питания.

Набор графических элементов языка LD включает:

· Входы/выходы ПЛК (кнопки, датчики, реле, индикаторные лампы и т.д.);

· Стандартные управляющие системные функции (таймеры, счетчики и т.д.);

· Арифметические, логические и специальные операции;

· Внутренние переменные ПЛК.

 

Рис. 3.5. Пример программы на языке LD

 

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

Графические элементы языка LD можно условно разделить на базовые элемен­ты, функциональные и операционные блоки. Каждый базовый элемент занимает одну ячейку (одну строку по высоте и одну колонку по ширине). Блоки могут зани­мать несколько ячеек. Базовые элементы и блоки языка LD приведены
в табл. 3.1.

Таблица 3.1

Базовые элементы и блоки языка LD

 

Наименование Элемент/Блок Символ Функция
Элементы условий Нормально откры­тый контакт –| |– Контакт замкнут, когда битовая переменная, которая управляет им, равна 1
Нормально закры­тый контакт –|/|–   Контакт замкнут, когда битовая переменная, которая управляет им, равна 0
  Контакты, срабаты­вающие по перепаду –|P|– Возрастающий перепад: контакт замкнут, когда битовая перемен­ная, которая управляет им, изме­няется с 0 до 1
–|N|– Убывающий перепад: контакт замкнут, когда битовая переменная, которая управляет им, изменяет­ся с 1 до 0

 

Продолжение табл. 3.1

Наименование Элемент/Блок Символ Функция
Элементы связи Горизонтальные связи ______ Используются для соединения элементов условий и элементов действия, расположенных последовательно между двумя шинами питания
Вертикальные свя­зи | Используются для параллельного соединения элементов действия и условий
Коротко-круговые соединения _ˉˉˉ|__ Используются для соединения двух объектов, использующих разные связи
Элементы действия Прямая обмотка –()– Устанавливает соответствующий битовый объект в значение, рав­ное результату, полученному в проверочной зоне
Обратная обмотка –(/)– Устанавливает соответствующий битовый объект в значение, рав­ное инверсии от результата, полу­ченного в проверочной

 

 

Продолжение табл. 3.1

Наименование Элемент/Блок Символ Функция
  Устанавливающая обмотка –(S)– Устанавливает соответствующий битовый объект в 1, когда резуль­тат, полученный в проверочной зоне, равен 0
Сбрасывающая обмотка –(R)– Сбрасывает соответствующий би­товый объект в 0, если результат, полученный в проверочной зоне, равен 1
Условный переход к другой ступени >> % Li Обеспечивает соединение с поме­ченной строкой, причем послед­няя может быть расположена до или после текущей ступени
Обмотка вызова подпрограммы –(C)– Позволяет подсоединиться к под­программе, если результат, полу­ченный в проверочной зоне, ра­вен 1

 

 

Продолжение табл. 3.1

Наименование Элемент/Блок Символ Функция
  Возврат из подпрограммы < RETURN > Зарезервировано для подпро­грамм, позволяет возвращаться в вызывающий модуль, когда результат, полученный в прове­рочной зоне, равен 1
Останов программы < HALT > Останов выполнения программы, когда результат, полученный в проверочной зоне, равен 1
Проверочные элементы Блоки: Таймер Счетчик Одновибратор Регистр Контроллер барабана Каждый из блоков стандарт­ной функции использует вхо­ды/выходы, через которые обеспечиваются связи с другими графическими элементами
Вертикальный блок сравнения Позволяет сравнивать два опе­ранда. В зависимости от результа­та соответствующий вход прини­мает значение, равное 1. Размер: 2 колонки/4 строки

Окончание табл. 3.1

Наименование Элемент/Блок Символ Функция
  Горизонтальный блок сравнения «Compare» Позволяет сравнивать два операнда. Выход принимает значение, рав­ное 1, если при сравнении получен истинный результат. (Блок может содержать до 4096 символов). Раз­мер: 2 колонки/1 строка
Элемент дей­ствия Операционный блок «Operate» Выполняет арифметические, логические и другие операции и ис­пользует синтаксис языка структурированного текста. (Блок мо­жет содержать до 4096 символов). Размер: 4 колонки/1строка

 

Ступень содержит до 7-ми строк и до 11-ти колонок, разделенных на две зоны – проверочную и зону действий. Каждая ступень может быть снабжена меткой и озаглавлена комментарием. Метки могут быть использованы для идентификации ступени внутри программного объекта (головной программы, подпрограммы и т.д.), но не являются обязательными. Метки имеют синтаксис % Li (где i от 0 до 999) и располагаются в левом верхнем углу перед шиной питания. Каждая метка может присваиваться только одной ступени в пределах данного программного объекта. Система сканирует ступени в том порядке, как они были введены, независимо от порядка нумерации меток.

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

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

– по горизонтальным связям – слева направо;

– по вертикальным связям – в обоих направлениях.

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

Зона действий содержит: прямые, инверсные, фиксирующие и инверсно-фикси­рующие обмотки, которые могут быть помечены любым битовым объектом; запи­санные пользователем операционные блоки; другие элементы действия (Call, Jump, Halt, Return).

На одной линии возможно до 10-ти контактов. В одной колонке максимально может параллельно проверяться до 7-ми контактов. До 7-ми обмоток могут быть включены параллельно. Ступень может быть разделена на несколько независимых линий контактов, причем каждая линия управляет независимой обмоткой.

Операционные блоки всегда расположены в зоне действий. Внутри блока запи­сывается фраза на языке ST. Операционный блок должен быть присоединен непо­средственно к правой «шине» питания.

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

В соответствии с указанным порядком исполнения система:

– Оценивает логическое состояние каждого контакта, соответствующее текущему значению внутренних переменных объекта управления, или состояние входов модулей ввода/вывода ПЛК, считываемых в начале сканирования;

– Выполняет рабочие действия, соответствующие функциям, функциональным блокам и подпрограммам;

– Обеспечивает битовые объекты, соответствующие обмоткам (выходы модулей ввода/вывода обновляются в конце сканирования);

– Переходит к другой помеченной ступени в данном программном модуле (перехо­ды к другой ступени >>% Li), возвращается в вызывающий модуль < RETURN > или останавливает программу < HALT >.

 

Язык функциональных блоковых диаграмм (FBD)

 

Язык функциональных блоков (Function Block Diagrams) позволяет создать программу прак­тически любой сложности на основе стандартных функциональных блоков (арифметические, тригонометричес­кие, логические блоки, РID -регуляторы, блоки, описывающие некоторые законы управления, мультиплексоры
и т.д.). Все программирова­ние сводится к «склеиванию» готовых компонентов (блоков). Каждый функциональный блок представляет собой прямоугольник, внутри которого имеется обозначение функции, выполняемой блоком.

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

· Функциональные блоки могут располагаться произвольно
в поле программы;

· Не может быть несоединенных входов и выходов функционального блока;

· Соединение блоков может выполняться также при помощи ссылок с определен­ными именами;

· Функциональные блоки выполняются слева направо, сверху вниз;

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

· На выходе блока может быть любая внутренняя или выходная переменная ПЛК.

В табл. 3.2 представлены основные функциональные блоки языка FBD.

 

Таблица 3.2

Некоторые функциональные блоки языка FBD

 

Наименование Обозначение Описание
1. Функции двоичного типа NOT Логическое отрицание
AND Логическая конъюнкция
OR Логическая дизъюнкция
XOR Исключающее ИЛИ
SET Присвоение переменной
RESET Обнуление переменной
2. Функции управления RETURN Возврат из подпрограммы
GOTO Безусловный переход
CALL Вызов подпрограммы
TSTART  
TSTOP  
GSTART  
GSTOP  
3. Арифметические функции ADD Сложение
SUB Вычитание
DIV Деление
MUL Умножение

Окончание табл. 3.2

Наименование Обозначение Описание
4. Функции сравнения = Равно
<> Не равно
> Больше
< Меньше
= > Больше или равно
< = Меньше или равно
5. Математические функции ABS Модуль
EXPT Экспонента
LOG Логарифм
SQRT Корень
6. Тригонометрические ACOS Арккосинус
ASIN Арксинус
ATAN Арктангенс
COS Косинус
SIN Синус
TAN Тангенс

 

В табл. 3.3 приведены примеры реализации некоторых операций на языке FBD.

 

Таблица 3.3

Примеры программирования на языке FBD

 

Выполняемая операция Изображение Описание
Обнаружение перепада сигнала In Двоичная переменная Out примет зна­чение TRUE тогда и только тогда, ко­гда переменная In изменит свое состо­яние
П-регулятор Рассогласование между текущим зна­чением величины Val и заданием Ref домножается на коэффициент Km и используется в качестве управляюще­го воздействия

 

Окончание табл. 3.3

Выполняемая операция Изображение Описание
Ограничение нижнего предела делителя In   Программа обеспечивает деление переменной Sampl на значение переменной Val. Переменная делителя Val снизу ограничена значением V min. Переменная Error принимает значение TRUE, если Val < V min

3.3.2. Краткая характеристика инструментальной системы ISaGRAF

Инструментальная система ISaGRAF относится к классу систем CASE -типа (Computer Aided Software Engineering) и предназначена для разработки прикладного программного обеспечения интеллектуальных контроллеров. Система ISaGRAF включает:

· Систему разработки (ISaGRAF WorkBench);

· Систему исполнения (ISaGRAF Target).

Система разработки предназначена для создания прикладных задач, исполняемых затем под управлением ядра ISaGRAF на системах исполнения, и устанавливается на компьютере IBM PC (или совместимом) под управлением MS Windows. Специальных требований к компьютеру не предъявляется.

Система исполнения либо загружается, либо прожигается в ПЗУ системы исполнения (TARGET SYSTEM). Она включает
в себя ядро ISaGRAF и набор модулей связи. В качестве целевой системы могут выступать контроллеры (или компьютеры), построенные на основе микропроцессоров INTEL и MOTOROLA
и работающие как под управлением операционных систем (OS -9, VxWorks, Dos, Windows NT, QNX и т.д.), так и без них.

Основные достоинства ISaGRAF:

· Использование стандартных языков программирования (IEC 61131-3);

· Графический интерфейс системы разработки;

· Легкость в освоении и удобство использования;

· Обеспечение качественных разработок пользовательских приложений;

· Встроенные средства программирования промышленных сетей;

· Удобные и эффективные отладочные средства.

В ISaGRAF заложена методология структурного программирования, которая дает возможность пользователю описать автоматизируемый процесс в наиболее легкой и понятной форме. Интерфейс с пользователем системы разработки ISaGRAF соответствует международному стандарту GUI (Graphical User Interface), включающему многооконный режим работы, полнографические редакторы, работу с мышью и т.д. Функции ISaGRAF можно разделить на два класса: функции общего назначения и функции программирования логики. Функции общего назначения позволяют решать следующие задачи:

· Управление разработкой проекта (создание программной конфигурации, разработка отдельных программных и функциональных единиц);

· Создание пользовательских библиотек функций и блоков на основе стандартных языков;

· Создание пользовательских библиотек СИ-функций и СИ-блоков, а также драйверов модулей УСО;

· Архивация проектов и функций;

· Отладка разработанных программных единиц;

· «Горячая» замена исходного кода.

ISaGRAF предоставляет возможность разрабатывать процедуры с использованием языка «C». Эти процедуры можно вызывать из любого, описанного выше языка. Тестирование любого программного продукта составляет существенную часть всей разработки, и наличие хороших отладочных средств является необходимым условием для создания сложных программных комплексов. ISaGRAF обладает таким средством. Графический отладчик интегрирован в систему разработки и дает возможность:

· Запуска приложения в реальном режиме и в режиме эмулятора;

· Трассировки программ и процедур;

· Мониторинга переменных проекта;

· Интерактивного изменения содержимого переменных;

· Изменения цикла выполнения.

В зависимости от реализации системы исполнения ISaGRAF под определенный тип контроллеров существует поддержка раз-личных протоколов промышленных сетей непосредственно из ISaGRAF. Например, для контроллеров компании Kontron Modular Computers реализована поддержка протоколов MODBUS, PROFIBUS - FMS / FDL / DP. Это дает возможность использования одного инструментального средства и для программирования логики контроллеров и для конфигурирования многоузловых сетей с включением систем визуализации на базе РС (FactoryLink, InTouch, TraceMode и т.д.). База данных ISaGRAF -приложения открыта для доступа со стороны других задач и этой возможностью можно пользоваться, если на целевой системе стоит многозадачная операционная система.

3.3.3. Последовательность разработки программного
обеспечения контроллера

Программирование контроллера начинается с создания словаря переменных, определения их типов. Состав переменных соответствует конкретному набору сигналов, формируемых или используемых в данном контроллере, из общего объема сигналов, функционирующих в системе. Именами переменных являются KKS -коды соответствующих сигналов. KKS -коды – это двоичные коды сигналов, сформированные по определенным алгоритмам, при создании информационного обеспечения АСУ ТП.

Затем осуществляется выбор специализированных программных устройств ввода/вывода (из библиотеки устройств ввода/вывода) и распределение переменных по каналам.

Затем выбором набора программных блоков задается последовательность обработки и формирования сигналов. Устанавливаются связи между модулями.

Загрузка приложения в целевую систему осуществляется
с помощью графического Отладчика Системы разработки «Isa Graf» или другого инструментального средства.

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

3.4. Программное обеспечение верхнего (диспетчерского) уровня в системе управления

3.4.1. Состав программного обеспечения верхнего уровня

Программное обеспечение АСУ ТП можно разделить на две части – общее и специализированное прикладное (ОПО, СППО). Общее программное обеспечение включает комплекс программ, обеспечивающих эффективную работу используемого в АСУ ТП программно-технического комплекса (ПТК) и разработку прикладных программ контроля и управления технологическим объектом. Специализированное прикладное программное обеспечение – это комплекс программ, разработанных для решения задач управления конкретным технологическим объектом. ОПО включает в себя операционные системы вычислительных узлов (рабочих станций, серверов), тестовые, диагностические программы, программное обеспечение коммуникационных сетей, языки программирования, специальные пакеты для разработки СППО и т.д. Доминирующей операционной системой для АСУ ТП верхнего уров­ня является Windows NT. Стандартным механизмом взаимодействия про­граммного обеспечения АСУ ТП признан стандарт ОРС (OLE for Process Control), который основан на объектной модели СОМ / DСОМ фирмы Microsoft. ОРС – это стандарт взаимодействия между программными компонентами сбора данных
и управления. Он приходит на смену DDE -обмена (динамического обмена данными). Его взаимодействие основано на клиент-серверной архитектуре. В качестве ОРС -клиента выступает, например, SCADA -система, а в качестве ОРС -сервера – контроллеры, УСО и т.д. ОРС -серверы разрабатываются производителями контроллеров или SCADA -систем. Стандарт ОРС включает три основные спецификации:

1) доступ к данным реального времени;

2) обработка тревог и событий;

3) доступ к историческим данным.

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

· Программирование с использованием «традиционных» средств (традиционные языки программирования, стандартные средства отладки и пр.);

· Использование существующих, готовых инструментальных проблемно-ориентированных средств создания программного обеспечения диспетчерского уровня АСУ ТП (SCADA -систем).

Для большинства разработчиков ПО выбор в настоящее время очевиден. Процесс разработки СППО важно упростить, сократить временные и прямые финансовые затраты на его разработку, минимизировать затраты труда высококлассных программистов, по возможности привлекая к разработке специалистов по автоматизации технологических процессов. Для сложных распределенных систем управления процесс разработки СППО с использованием «традиционных» средств может стать недопустимо длительным, а затраты на его разработку неоправданно высокими. Вариант с непосредственным программированием относительно привлекателен лишь для простых систем или небольших фрагментов большой системы, для которых нет стандартных решений (не написан, например, подходящий драйвер) или они не устраивают по тем или иным причинам заказчика. При этом программирование выполняется с помощью встроенных языков (Visual Basic и др.). Исходя из этого, в настоящее время разработка СППО АСУ ТП в подавляющем большинстве осуществляется на базе SCADA -систем.

 

 

3.4.2. Общая характеристика SCADA -систем

SCADA -система (Supervisory Control And Date Acquisition – система сбора данных и оперативно­го диспетчерского управления) разрабатывалась как универсальное многофункци­ональное программное обеспечение систем верхнего уровня, позволяющее опера­тивному персоналу наиболее эффективно управлять технологическим процессом. По мере развития программных и аппаратных средств наблюдается применение SCADA -систем на нижнем, контроллерном, уровне.

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

Диспетчерское управление и сбор данных является наиболее перспективным методом автомати­зированного управления сложными динамическими системами (процесса­ми) в жизненно важных и критичных с точки зрения безопасности и на­дежности областях. Интерес к пробле­мам построения высокоэффективных
и высоконадежных систем диспет­черского управления и сбора данных резко возрос за последние 10–20 лет. С одной стороны, это связано со значительным прогрессом в области вычислительной техники, программ­ного обеспечения и телекоммуникаций, что увеличивает возможности и расширяет сферу применения автоматизированных систем. С другой сто­роны, развитие информационных технологий, повышение степени автома­тизации и перераспределение функций между человеком и аппаратурой обострило проблему взаимодействия человека-оператора с системой управления. Анализ большинства аварий и происшествий в авиации, наземном и водном транспорте, промышленности и энергетике показал, что если в 60-х гг. прошлого столетия ошибка человека являлась первоначальной причиной лишь 20 % инцидентов (80 % – за технологическими неис­правностями и отказами), то
в 90-х гг. доля «человеческого фактора» воз­росла до 80 %. Это послужило толчком к разработке SCADA -систем.

Система SCADA – процесс сбора информации в режиме «реального времени» с удаленных точек контроля технологического объекта для анализа и управле­ния этим объектом. Требование обработки в режиме «реального времени» обу­словлено необходимостью быстрой доставки (выдачи) всех необходимых событий (сообщений) и данных на рабочую станцию оператора (диспетчера).

Можно выделить пять функций человека-оператора в системе диспетчер­ского управления, в которых оператор:

· Планирует, какие следующие действия необходимо выполнить;

· Обучает (программирует) компьютерную систему на после-дующие действия;

· Отслеживает результаты работы системы;

· Вмешивается в процесс, в случае критических событий, когда ав­томатика не может справиться, либо при необходимости подстройки (ре­гулировки) параметров процесса;

Date: 2016-05-15; view: 656; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию