Вы можете поделиться статьёй в социальных сетях и мессенджерах:

Программирование SCADA системы – это сложный и трудоемкий процесс со множеством подводных камней. В нашей прошлой статье мы рассказали в целом о разработке таких систем. Теперь уделим более пристальное внимание их программированию под нужды конкретного заказчика.

Что такое SCADA система? SCADA (от англ. Supervisory Control And Data Acquisition) – это система диспетчерского управления и сбора данных.

Стоит учитывать, что если в 80-х годах под этим термином еще понимались программно-аппаратные комплексы, то сегодня речь идет именно о программном обеспечении.

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

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

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

Программирование архитектуры SCADA системы

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

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

Программирование SCADA системы

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

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

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

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

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

Модули

В SCADA имеется два взаимозависимых модуля: среда разработки проекта и среда исполнения. Часто для удешевления проекта на одном компьютере имеется только один из этих модулей. В качестве примера можно привести станцию оператора – она как правило оснащается узлами среды исполнения с развитым ЧМУ (человеко-машинным интерфейсом). При этом в сети должен иметься хотя бы один ПК с установленным узлом среды разработки проекта.

Человеко-машинный интерфейс

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

Одним из наиболее важных элементов является структура базы данных реального времени.

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

Приведем несколько вариантов в качестве примера.

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

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

Какие функции необходимо учесть при программировании SCADA систем

При программировании SCADA систем всегда выделяется этап формирования человеко-машинного интерфейса и его функционала.

Какие функции обычно используются при создании SCADA?

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

Мнемосхема

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

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

Трэнды

Впрочем, иногда удобнее просматривать данные не на графике, а в таблицах. Такие таблицы предполагают простой импорт данных в другие системы.

Еще одним видом визуализации являются диаграммы, хотя они менее популярны, чем вышеописанные способы.

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

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

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

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

Удобным дополнением будет функция создания емких информативных отчетов.

Заказать программирование SCADA системы

Заказать программирование SCADA системы для предприятий и заводов в Санкт-Петербурге, Москве, а также Белоруссии, Казахстане и Таджикистане можно у наших специалистов, сделав заказ на сайте или позвонив в наш офис по телефону 8 (812) 454-0-666.

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

На нашем сайте также доступно для заказа оборудование для автоматизации предприятий по разумным ценам.


Вы можете поделиться статьёй в социальных сетях и мессенджерах:
Появились вопросы?
Спросите опытного эксперта сейчас и получите варианты решения!
О блоге