Файл: Лекция 11. Выводы.doc

Добавлен: 19.11.2018

Просмотров: 358

Скачиваний: 6

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Системы SCADA, применяемые в отрасли

Преимущества SCADA пакета программ Citect и особенности его применения при создании интегрированных систем управления предприятием.


Методические указания

На смену SCADA пакетам первой волны, получившим достаточное распространение в СНГ, приходят другие, более совершенные решения, хорошо известные за рубежом, но пока практически неизвестные на нашем рынке. Примером такого программного обеспечения является SCADA пакет Citect компании Ci Technologies.

Имеющая почти 20-летнюю историю разработки программного обеспечения для автоматизации производственных процессов, Ci Technologies сумела создать пакет, свободный от большинства недостатков, благодаря четкой и изначально продуманной концепции. Работающий на более 20000 предприятий во всем мире, Citect часто с легкостью решает трудно достижимые или просто невыполнимые задачи. Что выделяет Citect на фоне SCADA пакетов аналогичного назначения?

Не секрет, что во многих SCADA пакетах обновление данных организовано на основе опроса параметров в рамках одной основной задачи и соответствующего обновления экрана по заданным промежуткам времени. Этот алгоритм очень напоминает кооперативную многозадачность, реализованную в Windows 3.X. При этом последствия для работы всего приложения практически идентичны - если по каким либо причинам работа любой функции основной задачи нарушается, то нарушается работа всего пакета. Так, например, задержка получении данных, необходимых для обновления результатов на одном(!) из графиков часто приводит в таких системах к полной остановке работы всего приложения, до тех пор пока запрос не будет обработан. Хотя здесь нечему удивляться. Многие SCADA пакеты появились в эпоху Windows 3.Х и их ядро не изменялось с тех далеких пор.

Ядро Citect было изначально задумано и реализовано с учетом принципов построения систем реального времени. Анимация объектов на экране, обмен данными, функции, созданные пользователем и встроенные в систему, обрабатываются своими независимыми потоками с четким распределением приоритетов. При этом многопоточность реализована по схеме с вытеснением, когда задача с большим приоритетом вытесняет задачу с меньшим, а внутри класса задач с одним приоритетом вытеснение производится по круговой схеме (round robin) путем выделения квантов процессорного времени.

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

Несмотря на то, что большинство SCADA пакетов так или иначе стремятся воплотить концепцию клиент-сервер, Citect позволяет это сделать наиболее элегантно. Масштабируется не только система целиком - то есть по схеме один сервер - несколько клиентов, но и по отдельным задачам. Так на отдельные компьютеры можно распределить задачи сигнализации (alarms), графиков реального времени (trends) и отчетов (reports).


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

Обладая возможностью не только отображать что-то на экране, но и генерировать управляющие воздействия большинство SCADA–пакетов под Windows так и остаются лишь красивыми картинками. Основная причина этого – низкая надежность, вследствие отсутствия средств встроенной поддержки резервирования. Если компьютер, на котором функционирует SCADA выходит из строя, если обрывается связь с аппаратурой или сетью - выходит из строя вся цепь управления. В Citect можно резервировать все: весь сервер, его отдельные задачи (alarms, trends, reports, files), сетевые соединения и связь с аппаратурой.

Соедините это с возможностями масштабирования и становится понятно, почему Citect может применяться в любой отрасли промышленности и не только для отображения красивых картинок. Настройка резервирования встроена в продукт и вступает в действие автоматически после ответа на вопросы мастера (Wizard) настройки конфигурации. Алгоритм, используемый при реализации резервирования, является достаточно интеллектуальным, для того, чтобы не создавать удвоенную нагрузку на сеть. Основной сервер взаимодействует с аппаратурой и периодически посылает сообщения резервному серверу для того, чтобы последний мог сохранять в памяти текущий статус системы. Если основной сервер выходит из строя, резервный берет управление на себя и работает до тех пор, пока основной не приступит к работе. Сразу после этого происходит обновление базы данных основного сервера данными резервного, и управление переходит обратно к основному серверу. Конечно, связь между серверами можно сделать как по той же, так и другой (выделенной) сети.

Citect работает с разрешением по времени 1 миллисекунда. Это относится как работе с данными, так и обновлению графиков реального времени (trends) и других объектов.

Конечно, эффективная организация ядра системы очень важна, но не менее ответственным элементом любого SCADA пакета является реализация подсистемы ввода-вывода, то есть обмена данными с аппаратурой. Несмотря на увеличивающееся число промышленных контроллеров с высокоскоростными интерфейсами (Ethernet, промышленные сети), число контроллеров, обменивающихся с компьютером по низкоскоростным интерфейсам типа RS-232 (422, 485), еще очень велико, и неэффективная обмен данными в этом случае драматически сказывается на скорости работы всей системы.


Наряду с оптимизацией протоколов обмена как таковых, Citect применяет различные методы кэширования данных для устранения перегрузки низкоскоростных сетей. То есть, если 2 различных клиента в течение установленного промежутка времени (cache threshold) запрашивают у сервера одни и те же данные, он не посылает два запроса к контроллеру, как делают многие SCADA пакеты, а лишь один, возвращая второму клиенту данные из кэш-памяти.

Для эффективной оптимизации обмена величина cache threshold является настраиваемой, хотя в большинстве случаев параметры по умолчанию являются оптимальными. Кроме этого, ядро Citect автоматически пополняет кэш-память свежими данными (read-ahead) считывая их в фоновом режиме, пропорционально загрузке системы. Здесь уместно упомянуть, что в Citect есть более 130 драйверов к различным контроллерам плюс полная поддержка OPC?

Подавляющее большинство SCADA пакетов, несмотря на их реализацию, на стандартной платформе Windows, являются закрытыми, если речь идет о структуре данных, с которыми они работают. Конечно, большинство из них имеют стандартные интерфейсы типа DDE, OLE, ODBC и прочие, сохраняя при этом специализированные, нестандартные форматы файлов для архивов, графиков и сигнализаторов. Для того, чтобы получить доступ к данным в этих системах, необходимо воспользоваться специализированными пакетами разработчика, а часто это вообще невозможно. Citect не делает секрета из формата своих данных - все параметры и данные приложения хранятся в формате dBase, понимаемом любым пакетом. Кроме этого данные могут сохраняться и в более современных SQL базах данных, используя стандартные интерфейсы Citect.

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

Кроме этого, Citect дает возможность вызывать стандартные библиотеки DLL Windows, обеспечивая дополнительный метод доступа к данным, так как эти библиотеки могут также быть написаны разработчиком на С++ или другом языке, используя специализированный интерфейс CTAPI.

Тем, кто нуждается в действительно современных технологиях, Ci Technologies дает такую возможность, поскольку система разработки Citect практически бесплатна. Это, прежде всего, позволяет полностью реализовать проект и проверить на практике работу выбранной SCADA системы, не затратив ни копейки. Нетрудно понять, насколько важным, является это обстоятельство, поскольку, как упоминалось выше, проблемы возникают на стадии реализации проекта. Время работает на потребителя, предоставляя новые возможности в старой обертке. SCADA пакеты не являются исключением.


4