- •Глава 1. Основные понятия интегрированной системы 14
- •Глава 2. Функции и структуры интегрированных систем 20
- •Глава 3. Взаимосвязь процессов проектирования, подготовки производства и управления производством 45
- •Глава 4. Математическое, методическое и организационное обеспечение, программно-технические средства для построения интегрированных систем проектирования и управления 73
- •Глава 5. Scada-системы, их функции и использование для проектирования автоматизированных систем управления, документирования, контроля и управления сложными производствами отрасли 217
- •Глава 6. Примеры применяемых в отрасли scada-систем 335
- •Глава 7. Пример проекта системы управления в trace mode 6 346
- •Список сокращений
- •Введение
- •Глава 5. Scada-системы, их функции и использование для проектирования автоматизированных систем управления, документирования, контроля и управления сложными производствами отрасли
- •Глава 6. Примеры применяемых в отрасли scada-систем
- •Глава 1. Основные понятия интегрированной системы
- •1.1 Управление производством на основе интегрированных систем проектирования и управления
- •1.1.1 Определение интегрированной системы проектирования и управления
- •1.1.2 Принципы построения современных интегрированных систем
- •Удобство использования
- •Наличие и качество технической поддержки
- •Оценка стоимости инструментальных систем
- •Открытость систем
- •Технологии орс
- •Аппаратная реализация связи с устройствами ввода-вывода
- •Технологии ActiveX
- •2.1.2 Жесткое реальное время для Windows nt
- •2.1.3 Интеграция многоуровневых систем автоматизации
- •2.1.4 Сравнительный анализ и тестирование scada-систем
- •2.1.5 Выводы
- •2.2 Этапы создания и функциональные характеристики систем управления
- •2.2.1 Этапы создания системы диспетчерского контроля и управления
- •2.2.2 Функциональные характеристики scada-систем
- •2.2.3 Функциональные возможности
- •2.2.4 Программно-аппаратные платформы scada-систем
- •2.2.5 Средства сетевой поддержки
- •2.2.6 Встроенные командные языки
- •2.2.7 Поддерживаемые базы данных
- •2.2.8 Графические возможности
- •2.2.9 Тренды и архивы в scada-системах
- •2.2.10 Алармы и события в scada-системах
- •Глава 3. Взаимосвязь процессов проектирования, подготовки производства и управления производством
- •3.1 Стандарты управления предприятием: mrp, mrp II, erp, csrp
- •3.2 Семейство стандартов на системы качества
- •3.2.2 Тезисное выражение требований iso-9000
- •3.2.3 Общие положения
- •3.2.4 Проблемы внедрения и развития систем качества
- •Разработка процедур
- •3.3 Модули для автоматизации финансово-экономических процессов производства: mes, eam, hrm
- •Необходимость внедрения mes
- •Обзор функций t-factory mes – модуля для управления производством в реальном времени
- •Обзор функций t-factory eam – модуля для управления основными фондами, техническим обслуживанием и ремонтами в реальном времени
- •Глава 4. Математическое, методическое и организационное обеспечение, программно-технические средства для построения интегрированных систем проектирования и управления
- •4.1 Нижний уровень интегрированных систем управления
- •4.1.1 Классификация устройств нижнего уровня
- •4.1.2 Концевой выключатель Концевой выключатель двухпозиционный квд-600
- •Автоматический концевой выключатель vb,vba
- •Концевой выключатель ку-701 у1
- •4.1.3 Интеллектуальный датчик
- •Коммуникационный протокол hart
- •Датчики давления серии «Метран-100»
- •4.1.4 Устройства hart-коммуникации
- •Hart-коммуникатор «Метран-650»
- •Hart-модем «Метран-681»
- •Конфигурационная программа h-master
- •Многопараметрический датчик 3095mv
- •4.1.5 Бесконтактный датчик
- •Датчики измерения уровня
- •Оптические датчики
- •Датчик контроля скорости
- •4.1.6 Исполнительные устройства Привода постоянного тока
- •Клапаны электромагнитные для автоматики подогревателей
- •Реле защиты трансформаторов
- •4.2 Основные технические характеристики контроллеров и программно-технических комплексов
- •4.2.1 Характеристика процессора
- •4.2.2 Характеристика каналов ввода-вывода контроллеров
- •4.2.3 Коммуникационные возможности контроллеров
- •4.2.4 Эксплуатационные характеристики
- •4.2.5 Программное обеспечение
- •4.3 Стандартные языки программирования контроллеров
- •4.3.1 Общие сведения по языкам программирования контроллеров
- •4.3.2 Инструментальные системы программирования контроллеров
- •4.3.3 Этапы программирования плк в среде Unity Pro xl V.4.0
- •4.3.4 Примеры программы на языках fbd, ld, sfc, st, il Описание условия задачи
- •Создание программы на языке fbd
- •4.4 Контроллер modicon m340
- •4.4.1 Общие сведения
- •4.4.2 Процессорные модули
- •Структура памяти
- •4.4.3 Модули питания
- •4.4.4 Модули дискретного ввода/вывода
- •4.4.5 Модули аналогового ввода/вывода
- •4.4.6 Счетные модули
- •4.4.7 Модули управления перемещением
- •4.4.8 Сеть Ethernet Modbus/tcp
- •4.4.9 Сетевые модули Ethernet Modbus/tcp
- •4.5 Частотный преобразователь altivar 31h
- •4.6 Протоколы, сети и шины
- •Описание
- •4.7 Общее описание операционных систем реального времени
- •4.7.1 Основные понятия
- •4.7.2 Требования, предъявляемые к операционным системам реального времени при проектировании
- •4.7.3 Особенности операционных систем реального времени Процессы, потоки, задачи
- •Планирование, приоритеты
- •4.7.4 Прерывания
- •4.7.5 Часы и таймеры
- •4.7.6 Стандарты осрв
- •Стандарты безопасности
- •4.7.7 Настраиваемость операционных систем
- •4.8 Характеристики наиболее распространенных операционных систем реального времени
- •4.8.6 Расширения реального времени для Windows nt
- •4.9 Базы данных реального времени
- •4.9.1 Введение
- •4.9.2 Поддержка целостности в классических субд
- •Пессимистический подход
- •Оптимистический подход
- •Сравнение подходов
- •4.9.3 Протоколы управления транзакциями в субд реального времени
- •Пессимистический подход
- •Оптимистический подход
- •Сравнение подходов
- •4.9.4 Системы с устаревшими данными
- •4.9.5 Корректность транзакций
- •4.9.6 Выбор периода для сенсорных транзакций
- •4.9.7 Выбор версии непрерывного объекта
- •4.9.8 Как бороться с перегрузкой системы из-за обилия сенсорных транзакций?
- •4.9.9 Когда обновлять выводимые объекты?
- •4.9.10 Как понизить количество анормальных завершений?
- •4.9.11 Диспетчеризация транзакций
- •4.9.12 Оптимизация под конкретную систему
- •Классификация пользовательских транзакций
- •Субд реального времени в оперативной памяти
- •4.9.13 Использование сложных моделей транзакций
- •Активные базы данных
- •Активные базы данных реального времени
- •4.9.14 Атрибуты транзакции
- •4.9.15 Приоритет «непосредственной» транзакции
- •4.9.16 Приоритет «отложенной» транзакции
- •4.9.17 Заключение
- •4.10 Серверы Введение
- •4.10.1 Виды серверов
- •Серверы приложений
- •Серверы баз данных
- •Файл-серверы
- •«Беспроводной» сервер
- •Прокси-серверы
- •Брандмауэры
- •Почтовые серверы
- •Серверы dhcp
- •Серверы ftp
- •Принт-серверы
- •Серверы удаленного доступа
- •Факс-серверы
- •Серверные приставки
- •4.10.2 Особенности современных серверов
- •Основные требования
- •Масштабируемость
- •Готовность
- •Надежность
- •4.10.3 Особенности архитектуры
- •Оценка производительности
- •4.10.4 Серверы ведущих мировых производителей
- •Серверы ibm
- •4.10.5 Серверы российского производства
- •4.10.6 Проекты с участием серверов Структуры власти
- •Энергетика
- •Энергоснабжение
- •Образование
- •Промышленность
- •Деловые услуги
- •Глава 5. Scada-системы, их функции и использование для проектирования автоматизированных систем управления, документирования, контроля и управления сложными производствами отрасли
- •5.1 Функции интегрированных систем проектирования и управления
- •5.1.1 Trace mode 6: Интегрированная среда разработки
- •Scada-система
- •Softlogic: программирование контроллеров
- •Eam: средства разработки eam-приложений
- •Mes: средства разработки mes-приложений
- •Hrm: средства разработки hrm-приложений
- •5.1.3 Исполнительные модули ис trace mode® 6 Монитор реального времени
- •Горячее резервирование
- •Сервером документирования
- •Сервер архива Регистраторы: серверы субд реального времени siad/sql 6
- •Серверы документирования trace mode и t-Factory
- •Графическая консоль NetLink Light
- •Micro trace mode 6: исполнительный модуль для промышленных контроллеров
- •Для mes/eam/hrm-приложений
- •5.2 Математическое обеспечение в программном комплексе Trace Mode 6
- •5.2.1 Принцип работы монитора. Канал trace mode 6
- •5.2.2 Обеспечение работы распределенных асу
- •5.2.3 Резервирование
- •5.2.4 Автопостроение
- •5.2.5 Математическая обработка данных
- •5.2.6 Архивирование каналов узла
- •5.2.7 Архивирование каналов проекта
- •5.2.8 Отчет тревог и генерация сообщений
- •5.2.9 Файл восстановления
- •5.2.10 Графический интерфейс оператора
- •5.2.11 Генерация документов (отчетов)
- •5.2.12 Защита проекта, его конвертирование из предыдущих версий trace mode
- •5.3.1 Технология разработки проекта в ис
- •5.3.2 Пример создания проекта
- •Создание нового проекта в ис
- •Создание структуры проекта в навигаторе
- •Конфигурирование и разработка структурных составляющих
- •Конфигурирование информационных потоков
- •Выбор аппаратных средств асу
- •Создание и конфигурирование узлов в слое «Система»
- •Распределение каналов по узлам
- •Автопостроение каналов
- •Сохранение проекта в файл
- •Экспорт узлов
- •Запуск проекта
- •5.4 Организационное обеспечение: Классификация объектов структуры проекта в Trace Mode 6
- •5.4.1 Классификация компонентов
- •Шаблоны
- •Источники/Приемники
- •Наборы ресурсов и графические объекты
- •Последовательные порты
- •Словари сообщений
- •5.4.2 Классификация слоев
- •5.4.3 Классификация узлов
- •5.4.4 Назначение групп источников (приемников)
- •Группа «pc-based контроллеры»
- •Группа «Распределенные усо»
- •Группа «Платы ввода-вывода»
- •Платы ввода-вывода
- •Группа «Терминалы»
- •Группа «plc»
- •Группа «Диагностика и сервис»
- •Группа «Генераторы»
- •Группа «Модели»
- •5.4.5 Назначение группы «com-порты»
- •5.4.6 Назначение группы «Словари сообщений»
- •5.4.7 Назначение групп слоя «Библиотеки компонентов»
- •5.4.8 Назначение групп клемм
- •5.4.9 Назначение прочих групп
- •Группы ресурсов
- •Группы шаблонов
- •Группы каналов
- •Дополнительные группы структурирования
- •5.5 Структура проекта Trace Mode 6
- •5.5.1 Редактирование структуры проекта
- •Меню и главная панель инструментов навигатора проекта
- •Управление внешним видом навигатора проекта
- •Создание объектов структуры
- •Имена и идентификаторы объектов структуры
- •Изменение класса канала после его создания
- •Выделение объекта структуры
- •Удаление объекта структуры
- •Копирование и вставка объекта структуры
- •Перепривязка каналов и аргументов при копировании, вставке и перемещении объекта базы каналов
- •Взаимодействие с технологической бд
- •Примеры синхронизации с бд
- •Отображение свойств объектов структуры
- •5.5.2 Окно свойств объекта структуры проекта
- •Вкладка «Информация»
- •Вкладка «Флаги»
- •Вкладка «Аргументы»
- •Вкладка «Атрибуты»
- •5.6 Описание редакторов trace mode 6
- •5.6.1 Редакторы объектов структуры проекта
- •Редакторы каналов
- •Редактор словарей сообщений
- •Редактор клемм
- •5.6.2 Редакторы источников (приемников)
- •Редактор системных переменных trace mode
- •Редактор переменной opc
- •Редактор переменной opc hda
- •Редактор переменной dde
- •5.6.3 Редактор группы шаблонов экранов
- •Базовый редактор группы компонентов
- •Групповое редактирование строковых атрибутов с инкрементированием
- •Групповое редактирование числовых атрибутов с инкрементированием
- •Редактор группы «opc-сервер»
- •Редактор группы «opc hda сервер»
- •Редактор группы каналов слоев «Технология» и «Топология»
- •5.6.4 Вкладки редактора узла
- •Задание параметров узла:
- •Вкладка «Основные» редактора узла
- •Вкладка «Архивы» редактора узла
- •Вкладка «Отчет тревог/Дамп/Параметры» редактора узла
- •Вкладка «Таймауты» редактора узла
- •Вкладка «Дополнительно» редактора узла
- •Глава 6. Примеры применяемых в отрасли scada-систем
- •6.1 Vijeo look – система класса «человеко-машинный интерфейс» (hmi)
- •6.1.1 Представление hmi
- •6.1.2 Совместимость приложений Vijeo Look
- •6.1.3 Установка продукта Vijeo Look Установка Vijeo Look и его различных компонентов
- •6.1.4 Основные инструменты Vijeo Look
- •6.1.5 Панели инструментов в Vijeo Look
- •6.1.6 Описание основных функций меню «Вставка»
- •6.1.8 Настройки ofs Конфигуратора
- •Глава 7. Пример проекта системы управления в trace mode 6
- •7.1 Проект «автоматизированный участок получения пара с применением электропарогенератора»
- •7.1.1 Описание технологического процесса
- •7.1.2 Создание проекта
- •7.1.2.1 Описание параметров
- •7.1.2.2 Описание графических экранов и программ
- •7.1.2.3 Заполнение базы данных
- •7.1.2.4 Составление схемы переходов
- •Список литературы
- •450062, Республика Башкортостан, г. Уфа, ул. Космонавтов, 1
- •453, Республика Башкортостан, г. Стерлитамак,
4.2.5 Программное обеспечение
Удобство программирования контроллеров (в более широком смысле – конфигурирования) является очень важной характеристикой. С появлением контроллеров каждый производитель начал предлагать свои решения по их программированию. В результате к началу 90-х годов сложилась ситуация, когда на рынке программного обеспечения для программирования контроллеров существовало большое количество языков программирования, а стандарты, их объединяющие и регламентирующие, отсутствовали. Все это негативным образом отражалось на стоимостных характеристиках разрабатываемых систем управления (повышенные затраты на подготовку программистов, на создание программ и т. п.) [12, 24].
В 1992 году Международная Электротехническая Комиссия (МЭК, IEC – International Electrotechnical Commission) взяла под контроль процессы, связанные с развитием этого типа прикладного ПО [37].
Стандартом МЭК 61131-3 определяется пять языков программирования контроллеров: три графических (LD, FBD, SFC) и два текстовых (ST, IL).
Сейчас уже можно сказать, что подавляющее большинство контроллеров и систем управления обслуживается программными продуктами, реализующими стандарт МЭК 61131-3.
Широкое применение в России нашел пакет ISaGRAF французской компании CJ International.
Вместе с тем ведущие фирмы-производители контроллеров и систем управления предлагают свои специализированные пакеты программирования контроллеров.
4.3 Стандартные языки программирования контроллеров
4.3.1 Общие сведения по языкам программирования контроллеров
Языки программирования ПЛК во многом определяются конкретными приложениями, а также требованиями современных сложных распределенных систем управления [11, 12].
Историческое развитие ПЛК привело к возникновению разных решений, связанных с конкретным производителем и в той или иной степени удовлетворяющих общим стандартам (DIN 19239, 19237, 40719 Part 6 и VDI 2880). Однако элементы языков, несмотря на похожесть, у разных производителей отличались, существовали машинно-зависимые особенности языков, которые приходилось учитывать.
Для решения этой проблемы в феврале 1993 года международная организация по стандартизации IEC приняла и выпустила стандарт IEC-61131-3 (МЭК-61131-3), описывающий синтаксис и семантику пяти языков программирования ПЛК [37]. Использование стандартных языков и компьютерных средств программирования позволяет существенно снизить затраты на разработку прикладного программного обеспечения контроллеров и обеспечить его переносимость с одного контроллера на другой. В соответствии с указанным стандартом такими стандартными языками являются три графических языка и два текстовых (в соответствии с рисунком 4.3.1).
Рисунок 4.3.1 – Стандартные языки программирования контроллеров
LD (Ladder Diagram) – вариант класса языков релейно-контактных схем;
FBD (Functional Block Diagram) – аналогичен функциональной схеме электронного устройства с использованием логических элементов;
SFC (Sequential Function Chart) – язык диаграммного типа, аналогичный блок-схемам алгоритмов;
ST (Structured Text) – текстовый высокоуровневый язык общего назначения, по синтаксису напоминает Паскаль;
IL (Instruction List) – текстовый язык низкого уровня, по синтаксису напоминает Ассемблер.
Языки LD и FBD являются данью традициям (т. е. аппаратным аналогам этих языков – релейным схемам и функциональным схемам электронных устройств на базе логических элементов типа И, ИЛИ, НЕ и т. д.).
Язык LD – графический язык, основанный на принципах релейно-контактных схем (элементами релейно-контактной логики являются: контакты, обмотки реле, вертикальные и горизонтальные перемычки и др.) с возможностью использования большого количества различных функциональных блоков.
Язык релейных схем существует со времен Т. Эдисона и адаптирован к ПЛК в начале 70-х годов прошлого века. Впервые появился в пакетах программирования ПЛК компаний Allen-Bradly и Modicon. Символика этого языка была заимствована из проектирования в области электротехники.
Достоинствами языка LD являются: представление программы в виде электрического потока (близок специалистам по электротехнике), наличие простых правил, использование только булевых выражений. Язык LD имеет большой круг пользователей, рационален для ручной оптимизации специфических критических мест кода.
Язык FBD – это полностью графический язык высокого уровня, обеспечивающий управление потоками данных, включающих все типы. Позволяет использовать очень мощные алгоритмы простым вызовом функций и функциональных блоков, имеет большую библиотеку блоков, удовлетворяет непрерывным динамическим процессам, хорош для сложных вещей подобно ПИД-регуляторам (ПИД – пропорционально-интегрально-дифференциальный регулятор, PID-регулятор), массивам и т. д.
FBD заимствует символику булевой алгебры и, так как булевы символы имеют входы и выходы, которые могут быть соединены между собой, FBD более эффективен для представления структурной информации, чем язык релейно-контактных схем.
FBD замечателен для небольших приложений.
Язык IL является языком низкого (машинного) уровня, что существенно облегчает, например, условный или безусловный вызов функциональных блоков и функций, выполнение назначений и условных или безусловных переходов внутри секции, похож на Ассемблер. Язык IL позволяет создавать высокоэффективные и оптимизированные функции. Его можно рекомендовать для написания наиболее критических мест в программе.
Ассемблероподобные языки использовались для программирования компьютеров в 50-е годы XX века и все еще предлагаются некоторыми изготовителями ПЛК, особенно программистами, поддерживающими микроРС. Корни языка IL лежат в языке STEPS компании Siemens. IL можно программировать с помощью любого текстового редактора.
Язык ST является языком высокого уровня (типа Паскаля). Был популярен в середине 70-х годов XX века для сложных компьютерных приложений. Служит для создания процедур со сложной логикой. Может использоваться как в главных программах, так и в теле функции или FBD, а также для описания действий внутри элементов редакторов SFC или Flow Chart. Обладает высокой читабельностью исходного кода: ключевые слова, такие как AND, OR, NOT, IF, THEN, ELSE, WHILE (и т. д.) легко понимаемы; прост в сопровождении, если имена переменных понятны, имеются комментарии, код хорошо структурирован.
Язык SFC предложен в 1979 году (его прототипом является язык Grafcet компании Telemecanique, стандарт IEC 848) как графический язык, предназначенный для описания функций последовательных операций и позволяющий ясно и однозначно определить желаемое поведение системы управления. Отличается строгим математическим определением (каждое операционное состояние может быть декодировано с достаточно малым анализом). Удобен для описания как последовательных процессов, так и пакетных или параллельных процессов, легко комбинируется с другими языками (язык спецификаций). Обеспечивает улучшение понимания оборудования при формировании модели приложения. Обладает развитыми механизмами синхронизации. Использует простые динамические правила.
Диагностика языка SFC позволяет обнаружить ошибки проекта до того, как приложение тестируется в режиме “online”. Интерактивно анимируемый язык SFC также служит для облегчения диагностики оборудования и ошибок системы управления и после ввода в действие. Использование языка SFC как диагностического инструмента может уменьшать среднее время устранения таких неполадок. SFC широко принят как стандарт в Европе.
Языки SFC и ST, в паре составляющие полную и завершенную среду для программирования ПЛК, не всегда удовлетворяют пользователей, например, из-за быстродействия или невозможности доступа к системным ресурсам, что заставляет прибегать к использованию языков типа С, который не входит в стандарт IEC 61131-3 (далее – стандарт).
Стандарт определяет языки программирования, синтаксис, вид объектов, структуру ПО, объявление переменных.
Стандарт описывает детально синтаксис языков программирования, поэтому пользователь найдет один и тот же синтаксис во всех пакетах, поддерживающих стандарт, будь то пакет ISaGRAF компании CJ International или пакет Concept компании Schneider Electric. Графическое представление прикладных программ – это типичная особенность программирования ПЛК. Текстовые языки широко используются при программировании компьютеров.
Программирование логики ведется с применением языков SFC, LD, FBD, IL, ST, а также дополнительных интерактивных редакторов для описания переменных, определений и конфигурации ввода/вывода.
Все языки программирования контроллеров взаимоувязаны – для них стандарт определяет единые модели ПО, связных функциональных блоков и модель собственно программирования. Стандартизированы общие элементы этих языков и, прежде всего, используемые символы, типы данных и переменные. Определены функции и функциональные блоки, их декларации, наборы стандартных функций и функциональных блоков, понятия программ на этих языках. Стандарт определяет и такие общие элементы, как конфигурации, ресурсы, пути доступа, задачи. Все это дает возможность программирования на любом из этих языков с обеспечением генерации кодов единой программы. Языки программирования определены в стандарте таким образом, что допускают разработку приложений на их смеси, которая впоследствии собирается в единую исполняемую программу. Кроме того, стандарт открыт для использования других языков программирования. И, наконец, в стандарте рассмотрена специфика каждого из языков.
Требования к языкам программирования для ПЛК:
наглядное описание автоматизируемых технологических процессов (ТП) и дальнейшая отладка в терминах исходного описания;
мобильность – способность к переносу на различные аппаратные и операционные платформы;
эффективное исполнение программы в реальном времени (РВ).
Наглядность описания определяется характером объекта и следующими задачами по управлению объектом [12]:
1 Задачи параллельной обработки большого числа логических контуров (сотен и тысяч) с обработкой исполнительных действий при наступлении тех или иных событий. В основе логического контура лежит проверка истинности логической функции от нескольких переменных, а событие равнозначно истинности этой функции. Задачи такого рода характерны, например, для таких технологических объектов, как электростанции, химические производства и производства по переработке нефти. Задача адекватно и наглядно описывается системой булевых уравнений. Все языки стандарта, за исключением SFC, хорошо подходят для описания подобных задач, поскольку они или содержат в себе средство представления булевых функций (языки IL, ST), или являются графической формой их отображения (языки LD, FBD).
2 Задачи управления процессом, проходящим в своем развитии через ряд состояний (шагов, стадий). Переход от одного состояния к другому происходит по событиям, формируемым по сигналам датчиков процесса. Такие задачи управления возникают, например, при управлении транспортно-складскими системами, агрегатными станками, робототехническими комплексами, характерны они и для объектов, перечисленных в п. 1, в частности при пуске и останове турбины и др. Задачи данного типа наиболее наглядно представляются автоматными моделями. В стандарте такая модель строится с использованием языка SFC (разметка состояний, логика управления) и любого другого языка (описание действий, связанных с состоянием, и событий, предписывающих смену состояний). Заметим, что подобные задачи могут быть полностью представлены с помощью других языков стандарта, например языка FBD с использованием элементов памяти – триггеров, но в этом случае автоматная модель будет выражена неявно.
3 Задачи автоматического регулирования (ПИД-законы, нечеткое управление и т. д.) встречаются практически везде. Здесь, как правило, используются библиотеки заранее разработанных компонентов – графических блоков для языков LD и FBD и подпрограмм для языков ST и IL.
4 Задачи управления распределенными технологическими объектами, оптимизационные, а также задачи, связанные с интеллектуальным анализом данных. Задачи такого типа решаются в сложных технологических объектах типа химических производств. Здесь в качестве средств адекватного описания могут использоваться языки ST, универсальные типа С, С++, Паскаль, сценарные типа Visual Basic, объектно-ориентированные типа Java.
Мобильность языков, т. е. способность к переносу на различные аппаратные и операционные платформы, может поддерживаться для языков стандарта в случае использования пакета от одного разработчика. Это связано с невозможностью сосуществования в одной разработке программ на одинаковых языках от разных поставщиков, так как требования стандарта IEC 61131-3 носят рекомендательный характер, а значит, приводят к различиям в реализации языков у разных производителей.
Эффективное исполнение в РВ дает ответ, насколько быстро сможет отреагировать система управления (ПЛК) на происшедшее событие. Обычно используется понятие «временной цикл», т. е. заранее задаваемый интервал времени, например, в диапазоне 10-300 мс, в течение которого ПЛК сможет гарантированно отреагировать на входное воздействие. Для обеспечения более быстрой реакции служат так называемые инициативные сигналы, которые обрабатываются по прерыванию (от десятков до сотен микросекунд).
Для широкого круга приложений задача обеспечения требуемого временного цикла решается достаточно легко благодаря высокому быстродействию процессоров, используемых в ПЛК. Например, в контроллерах Modicon применяются процессоры компании Intel от Intel 286 до Pentium. Тем не менее, здесь есть одна проблема: неэффективное использование процессора при управлении объектами, в которых осуществляется в основном обработка логической информации, при которой используется только один разряд из 32. Если найти решение этой проблемы, то, по крайней мере, можно будет понизить класс применяемого процессора, что выгодно по экономическим соображениям.
Согласно требованиям стандарта, непредопределенные объекты должны иметь имя и тип, объявленные программистом, предопределенные объекты распределяются на три зоны: зону памяти (%М), зону входов (%I) и зону выходов (%O). Объектами могут быть: биты (X), байты (В), слова (W), двойные слова (D), «длинные» слова (L) – 64 бита.
Ограничения стандарта: не фиксируется имя задач; размер графического редактора оставляется на выбор пользователя; нет минимального количества функций, готовых к реализации, но если используется имя по стандарту (функциональный блок и т. п.), то оно должно соответствовать стандарту; сервисные утилиты и средства разработки и отладки приложения (редакторы, языки, документирование и т. п.) не определены; нет точных правил выполнения программы (например для функциональных блоков); не описана конвертируемость языков. Сертификат IEC 61131-3 на сегодня не существует, нет определенного «класса соответствия». Каждый разработчик, объявивший свое соответствие норме, должен представить документацию таблиц соответствия, а также список дополнительных расширений.
Преимущества стандарта для конечных пользователей состоят в том, что уменьшается стоимость обучения, пользовательские приложения однородны, структура программ идентична, используются предопределенные объекты и т.п. Разнообразие стандартных языков позволяет каждую функцию приложения запрограммировать наиболее подходящим для данной задачи языком.
Следование стандарту позволяет разработчикам ПЛК обеспечить соответствие разработки техническим требованиям, предъявляемым потребителями, и даже ввести дополнительные функции, что не могут сделать мелкие поставщики ПО.
Изучение методологии проектирования систем автоматического и автоматизированного управления на основе современных информационных технологий, составной частью которых являются языки программирования ПЛК, – необходимый элемент в подготовке специалистов по интегрированным системам управления.
В данном курсе описывается синтаксис языков программирования ПЛК на примере пакета Concept [35, 36, 38].
Типы контроллеров, поддерживающих стандарт: ABB, Allen Bradley, Honeywell, Omron, Moore Products, PEP Modular Computers, Schneider Electric и многих других производителей.
По разным оценкам до 80% PLC-рынка обслуживается программными продуктами, реализующими в той или иной мере этот стандарт.