Разработка SCADA-систем
Покупка
Новинка
Основная коллекция
Тематика:
Программирование в среде Delphi
Издательство:
Инфра-Инженерия
Год издания: 2024
Кол-во страниц: 564
Дополнительно
Вид издания:
Учебное пособие
Уровень образования:
Профессиональное образование
ISBN: 978-5-9729-1658-0
Артикул: 842405.01.99
Даны рекомендации по проектированию SCADA-системы с использованием среды визуального программирования Delphi. Приведен обзор существующих SCADA-систем с анализом принципов их работы. Рассмотрены возможности SCADA-системы как инструмента для просмотра тегов. Освещены вопросы организации распределенных систем управления с развитым диспетчерским уровнем. Для программистов, системных интеграторов, специалистов, занимающихся разработкой распределенных систем управления, научных работников, аспирантов и студентов вузов соответствующих специальностей.
Тематика:
ББК:
УДК:
ОКСО:
- ВО - Бакалавриат
- 09.03.01: Информатика и вычислительная техника
- ВО - Магистратура
- 09.04.01: Информатика и вычислительная техника
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
В. В. Кангин, М. В. Кангин, Д. Н. Ямолдинов РАЗРАБОТКА SCADA-СИСТЕМ Учебное пособие 2-е издание Москва Вологда «Инфра-Инженерия» 2024
УДК 004.438 ББК32.973.3 К19 Кангин, В. В. К19 Разработка SCADA-систем : учебное пособие / В. В. Кангин, М. В. Кангин, Д. Н. Ямолдинов. -2-еизд. -Москва; Вологда: ИнфраИнженерия, 2024. - 564 с. : ил., табл. ISBN 978-5-9729-1658-0 Даны рекомендации по проектированию SCADA-системы с использованием среды визуального программирования Delphi. Приведен обзор существующих SCADA-систем с анализом принципов их работы. Рассмотрены возможности SCADA-системы как инструмента для просмотра тегов. Освещены вопросы организации распределенных систем управления с развитым диспетчерским уровнем. Для программистов, системных интеграторов, специалистов, занимающихся разработкой распределенных систем управления, научных работников, аспирантов и студентов вузов соответствующих специальностей. УДК 004.438 ББК32.973.3 ISBN 978-5-9729-1658-0 © Кангин В. В., Кангин М. В., Ямолдинов Д. Н., 2024 © Издательство «Инфра-Инженерия», 2024 © Оформление. Издательство «Инфра-Инженерия», 2024
ОГЛАВЛЕНИЕ ВВЕДЕНИЕ.................................................5 ГЛАВА 1. SCADA-системы в компьютерныхраспределенных системахуправления.......................................9 1.1. Обзор существующих SCADA-систем..................9 1.2. ОРС-стандарт обмена информацией SCADA-систем и ПЛК.31 1.3. Функции, выполняемые SCADA-системами............36 1.4. Структура стандарта OPC.........................43 1.5. Структура компьютерной распределенной системы управления и организация программного обеспечения диспетчерского уровня................................51 1.6. Fastwel PlcNet OPC Server — OPC-сервер для сетей PLCNET.....................................57 1.7. Работа с ОРС-сервером Fastwel PlcNet OPC Server.74 ГЛАВА 2. Организация взаимодействия программного обеспечения диспетчерского и контроллерногоуровней в компьютерных распределенных системахуправления.......................81 2.1. Структуракомпьютерной распределеннойсистемыуправления с одним узлом на диспетчерском уровне................81 2.2. Простейший просмотрщик тегов для промышленной сети PLCNET..........................................83 2.3. Просмотрщик тегов в виде столбчатой диаграммы...97 2.4. Просмотрщик тегов в виде круговой диаграммы со стрелкой.........................................131 2.5. Просмотрщик тегов в виде круговой диаграммы....158 2.6. Использование мультипликации в системах визуализации информации.............................187 2.7. Сетевой лазерный тир...........................230 2.8. SCADA-система для робота IRON BURATINO.........296 ГЛАВА 3. Организация взаимодействия программного обеспечения компьютеров диспетчерского уровня распределенной системы управления......................347 3.1. Структура компьютерной распределенной системы управления с многоузловым диспетчерским уровнем......347 3
РАЗРАБОТКА SCADA-СИСТЕМ 3.2. Назначение и организация объекта автоматизации.352 3.2.1. Модуль AddUnit............................352 3.2.2. Модуль MainUnit...........................375 3.2.3. Практическаяработа с объектом автоматизации.398 3.2.4. Модуль NDgrServer_TLB.....................402 3.3. Назначение и организация ОРС-клиента...........405 3.3.1. Функции, выполняемые ОРС-клиентом.........405 3.3.2. Хранение данных в ОРС-клиенте.............406 3.3.3. Обработка данных в ОРС-клиенте............412 3.3.4. Работа с ОРС-клиентом.....................532 3.3.5. Взаимодействие ОРС-сервера, объекта автоматизации и ОРС-клиента....................................545 ЗАКЛЮЧЕНИЕ.............................................550 БИБЛИОГРАФИЯ...........................................551 ПРИЛОЖЕНИЯ.............................................552 Приложение 1. Список сокращений........................552 Приложение 2. Глоссарий................................554 4
ВВЕДЕНИЕ В настоящее время наблюдается качественный скачок в развитии систем управления технологическим оборудованием и технологическими процессами. Системы управления стали децентрализованными, распределенными. Таким образом, в настоящее время можно говорить о распределенных системах управления (РСУ). Промышленные и локальные сети представляют собой физическую среду, на базе которой реализуются РСУ. РСУ в классическом виде представляет двухуровневую структуру. На нижнем уровне этой структуры находятся контроллеры — устройства, осуществляющие непосредственное управление технологическими процессами в реальном времени. Контроллер должен решать задачу управления быстро, в темпе протекания технологического процесса. Производством контроллеров занимается большое количество фирм как в России, так и за рубежом. Контроллеры подразделяются на моноблочные (компактные), модульные и PC-base контроллеры. Значительное развитие получили PC-base контроллеры, представляющие, по сути, IBM PC, но выполненные в миниатюрном промышленном исполнении. По своим техническим характеристикам они приспособлены для работы в условиях улицы, цеха, склада. Именно один из этих контроллеров, а именно ADAM-5510 фирмы Advantech (Тайвань), будет рассматриваться в данной работе. На верхнем уровне РСУ расположены удаленные компьютеры (рабочие станции), позволяющие выполнять следующие задачи: - сбор данных о параметрах технологического процесса, их обработка и архивирование принятой информации; - визуализация информации о ходе технологического процесса, сигнализация о предаварийных и аварийных ситуациях; - формирование сводок, журналов, отчетов ит.д.; - формирование команд оператора, направленных на изменение параметров настройки и режимов работы контроллеров; - автоматическое управление ходом технологического процесса (только в ряде случаев и для решения задач невысокого быстродействия). 5
РАЗРАБОТКА SCADA-СИСТЕМ Рабочие станции верхнего уровня представляют собой автоматизированные рабочие места (АРМ) производственного персонала, обслуживающего технологический процесс: операторы, технологи, наладчики, диспетчеры и т. д. Верхний уровень РСУ называют диспетчерским или операторским уровнем. Диспетчерский уровень представлен персональными компьютерами (ПК), рабочими станциями, промышленными компьютерами ит. д. Контроллеры, решая задачу непосредственного управления технологическим оборудованием, принимают сигналы с датчиков и выдают управляющие сигналы на исполнительные механизмы. Одновременно с этим они решают еще одну важную задачу — передают информацию о состоянии технологического процесса на компьютеры верхнего диспетчерского уровня. В ряде случаев контроллеры могут обмениваться данными и между собой. Промышленная сеть и есть та физическая среда, по которой происходит обмен информацией между активными компонентами (узлами) РСУ Таким образом, узлом в промышленной сети является контроллер. Каждый технологический параметр представлен в сети в виде некоторой переменной — тега, и характеризуется величиной, качеством передачи (приема) по сети, типом и т. д. Выделение в РСУ двух уровней позволяет говорить о программном обеспечении (ПО) для верхнего и для нижнего уровня. Естественно, что ПО для верхнего и нижнего уровней РСУ в значительной степени различаются. ПО для нижнего (контроллерного) уровня представляет собой программы, загруженные во флеш-память каждого контроллера, и выполняющиеся циклически. Для программирования контроллеров можно использовать языки высокого уровня, например C++, но в настоящее время широко используются специализированные языки программирования по стандарту IEC 61131-3. К таким языкам, принадлежащим к группе языков Functional Block Diagrams (FBD) — функциональных блоковых диаграмм, относится язык UltraLogik, использующийся для программирования контроллеров ADAM-5510. Этот язык позволяет легко выполнить проектирование управляющих программ высокой степени сложности. 6
ВВЕДЕНИЕ Какие бы алгоритмы не реализовала управляющая программа контроллера, важно, чтобы она еще передавала определенную нужную информацию в сеть. В UltraLogik это делается довольно просто. Достаточно той или иной переменной (параметру технологического процесса, состоянию того или иного датчика, управляющему сигналу и т. д.) присвоить статус «сетевая», как она гарантированно будет периодически передаваться контроллером в сеть. ПО верхнего уровня реализуется в виде SCADA-системы (Supervisory Control and Data Acquisition — система сбора данных и оперативного диспетчерского управления). Задачи, которые выполняют SCADA-системы, были обозначены выше, но центральной является задача по приему тегов из сети. Для этих целей используются специальные приложения (программы), называемые OPC-серверами. OPC-сервер считывает значения тегов из сети и передает их приложению (программе) — клиенту. SCADA-системы являются клиентами OPC-серверов. Разработкой SCADA-систем занимается ряд фирм (см. главу 1). Каждая SCADA-система имеет две составляющие: - инструментальная система (SCADA-пакет), с помощью которой можно разработать SCADA-систему нужного назначения; - исполнительная часть — приложение, полученное в результате работы инструментальной системы, устанавливаемое на рабочей станции диспетчерского уровня РСУ. Фирмы — разработчики SCADA-систем поставляют именно инструментальную систему. Анализ существующих SCADA-систем показывает, что каждая из них представляет собой специализированный пакет программ, объединенный специфическим интерфейсом, особенностями использования, идеологией организации и т. д. Все это затрудняет переход от одной SCADA-системы к другой. Высокая стоимость существующих SCADA-систем, отсутствие качественной технической документации, избыточность, за которою приходится платить пользователю, делают процесс внедрения SCADA-систем в производство весьма непростым мероприятием, которое под силу лишь «богатым» предприятиям, как правило, из сферы добычи прочих полезных ископаемых. Рядовым предприятиям машиностроительного профиля такие «игрушки» не по карману. 7
РАЗРАБОТКА SCADA-СИСТЕМ Да и нет подготовленных кадров для решения задач проектирования SCADA-систем с помощью SCADA-пакетов. Эти задачи выполняют, как правило, специализированные фирмы — системные интеграторы, услуги которых тоже очень недешевы. Однако пессимизм в данном вопросе можно развеять, если понять, что SCADA-систему любого уровня сложности и назначения можно спроектировать и без дорогостоящих услуг фирм — разработчиков SCADA-систем. Проектирование легко выполнить с помощью таких программных средств, как Delphi, Visual C++, VBA. Они имеют в своем составе все необходимые средства для работы с OPC-серверами, графикой, мультипликацией, базами данных и т. д. Именно тому, как спроектировать свою собственную простую, но достаточно эффективную SCADA-систему, используя среду визуального программирования Delphi, посвящена эта книга. В первой главе выполнен обзор существующих SCADA-систем, дан их анализ. Приводятся сведения о принципе работы OPC-серверов, их взаимодействии с другими приложениями-клиентами. Рассмотрены правила работы с OPC-сервером фирмы Fastwel (Fastwel PLCNet OPC Server). Вторая глава посвящена проектированию просмотрщиков тегов, представляющих информацию в виде таблицы, столбчатых и круговых диаграмм, круговых диаграмм со стрелкой. Рассмотренные здесь SCADA-системы названы просмотрщиками тегов, поскольку при их разработке ставилась лишь задача приема тегов из сети и визуализации их значений в табличной или графической форме. В третьей главе рассматриваются вопросы организации РСУ с развитым диспетчерским уровнем. Здесь особое внимание уделено вопросу передачи информации с мастера сети на удаленные компьютеры и рабочие станции сети Ethernet. Приложения содержат список сокращений, глоссарий. Книга предназначена для программистов, системных интеграторов, специалистов, занимающихся разработкой РСУ, научных работников, аспирантов и студентов вузов соответствующих специальностей. 8
ГЛАВА 1. SCADA-системы в компьютерных распределенных системах управления 1.1. Обзор существующих SCADA-систем Современные распределенные системы управления (РСУ) имеют территориальное и функциональное распределение систем сбора данных и управления. Контроль за ходом технологического процесса, состоянием агрегатов и машин осуществляется оператором с автоматизированного рабочего места оператора (АРМ оператора) или операторской станции, установленной в операторском помещении. При необходимости установки АРМ оператора в цеху используются промышленные рабочие станции со встроенной клавиатурой, выполненные в пыле-, влагозащищенном исполнении. Представление данных о ходе технологического процесса в реальном масштабе времени, визуализация процессов в виде мнемосхем, составление отчетов и графиков, сигнализация отклонений параметров и другие функции осуществляются с помощью специального программного обеспечения, которое называется SCADA-системой. SCADA-система (Supervisory Control And Date Acquisition — система сбора данных и оперативного диспетчерского управления) представляет собой универсальное многофункциональное программное обеспечение (ПО) систем верхнего уровня автоматизированных систем управления технолгическими процессами (АСУ ТП). Это ПО позволяет оперативному персоналу наиболее эффективно управлять технологическим процессом и контролировать его протекание. По мере развития программных и аппаратных средств наблюдается применение SCADA-систем и на нижнем, контроллерном уровне. Основные функции, выполняемые большинством SCADA-систем: 1. Сбор данных о параметрах процесса, поступающих от контроллеров или непосредственно от датчиков и исполнительных устройств: значения температуры, давления, положение клапана или вала исполнительного механизма и т. д. 9
РАЗРАБОТКА SCADA-СИСТЕМ 2. Обработка и хранение (архивирование) полученной информации. Под обработкой информации понимается выполнение функций фильтрации, нормализации, масштабирования, линеаризации и других для приведения данных к нужному формату. 3. Графическое представление информации о ходе технологического процесса в цифровой, символьной или иной форме. Это может быть динамизация значений переменных, представление значений переменных в виде графиков в функции времени (трендов), гистограмм и другое. 4. Сигнализация в предаварийных и аварийных ситуациях об изменениях хода технологического процесса в виде системы алармов. При этом может осуществляться регистрация действий обслуживающего персонала в аварийных ситуациях. 5. Формирование сводок, журналов и других отчетных документов о ходе технологического процесса на основе информации, собранной в архивах. 6. Формирование команд оператора по изменению параметров настройки и режима работы контроллеров, исполнительных устройств: пуск-останов, открытие-закрытие и другие функции. 7. Автоматическое управление ходом технологического процесса в соответствии с имеющимися в SCADA-системах алгоритмами управления: ПИ-, ПИД-регулирование, позиционное, нечеткое регулирование и т. д. Данные функции рекомендуется использовать для решения задач невысокого быстродействия. Таким образом, SCADA-пакеты являются мощным инструментом для разработки ПО верхнего уровня АСУ ТП — SCADA-систем. При этом от разработчика не требуется обширных знаний в области программирования на языках высокого уровня. Наиболее распространенные на сегодняшний день SCADA-системы для РСУ представлены в табл. 1.1. Рассмотрим характеристики SCADA-систем, используемых вРСУ 10