Технология OPC
Что такое OPC?

OPC (OLE for Process Control) – промышленный стандарт, созданный консорциумом производителей оборудования и программного обеспечения при участии Microsoft. Этот стандарт описывает интерфейс обмена данными между устройствами управления технологическими процессами. Главной целью его создания было предоставление разработчикам систем диспетчеризации некоторую независимость от конкретного типа контроллеров и устройств ввода-вывода. OPC основывается на технологии OLE/COM/DCOM компании Microsoft.

Основные причины создания OPC

Довольно много программ-клиентов может получать данные из различных источников и делать их доступными для драйверов независимых разработчиков. Но при этом возникают следующие проблемы:

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

OPC проводит четкую разграничительную линию между производителями оборудования и разработчиками драйверов. Данная технология предоставляет механизм сбора данных из различных источников и передачу этих данных любой клиентской программе независимо от типа используемого оборудования.

OPC был разработан для обеспечения доступа клиентской программы к нижнему уровню технологического процесса в наиболее удобной форме. Широкое распространение технологии OPC в промышленности имеет следующие преимущества:

Стандарт обмена данными OPC базируется на распространенной общепринятой схеме Клиент-Сервер. Эта архитектура позволяет подключить множество клиентов к одному серверу. И наоборот, данный стандарт позволяет использовать одному клиенту различные ОРС-серверы.

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

Типы спецификаций OPC

Стандарт OPC был создан на базе спецификаций OPC. В настоящее время получили наибольшее распространение следующие спецификации:

Сейчас в разработке находятся еще две специфиации: OPC Data Access 3.0 и OPC XML.

В спецификации OPC Data Access необходимо следить за использованием версии данной спецификации: сервер OPC Data Access 1.0 может общаться только с клиентом OPC Data Access 1.0 client. Поэтому удобней, если OPC-сервер поддерживает несколько версий OPC-спецификации.

VDBOPC-сервер является OPC-сервером, обеспечивающим доступ OPC-клиентов к данным согласно спецификаций OPC DA 1.0 и 2.0, OPC AE 1.1. При этом он также является OPC-клиентом, который имеет возможность получать данные из OPC-серверов устройств ввода-вывода согласно спецификаций OPC DA 1.0 и 2.0, OPC AE 1.1.

Разработка ОРС-модулей

С точки зрения программирования, существует несколько языков программирования для написания клиентской программы: C/C++, Visual Basic, Delphi и т.д. Чтобы соответствовать современным требованиям к средам разработки, спецификации OPC содержат два различных подхода к написанию OPC-клиента. Для внедрения его в программу, написанную на C/C++, используется Custom interface, а для программ на Visual Basic, используйте Automation Interface. В основном, OPC-серверы пишутся на C/C++.

Для установки надежного соединения между OPC-сервером и OPC-клиентом, написанными на разных языках, используется OPC Automation Wrapper. Он организует взаимосвязь между OPC-сервером, написанным на C/C++ и приложением на Visual Basic.

Операционные системы

Один из необходимых компонентов для работы OPC-коммуникаций – COM и его сетевая версия DCOM. DCOM – стандартный компонент для операционных систем Windows98, Windows NT 4.0, Windows 2000 и WindowsXP. Для работы в Windows95 DCOM нужно установить. Перечисленные операционные системы позволяют передавать данные в рамках одного компьютера или через локальную сеть.

В Windows CE сетевые возможности появились в версии 3.0. Сейчас стандарт OPC был разработан и для операционной системы Linux.

Связь OPC-сервера с процессом

Первый шаг в конфигурации OPC-клиента – установить на компьютер OPC-сервер (локальный или сетевой). При установлении связи OPC-клиента с OPC-сервером, технология COM предоставляет механизм сканирования доступных OPC-серверов на указанном компьютере, что позволяет быстро установить соединение с OPC-сервером. Это сканирование называется OPC server browsing.

Второй шаг – это связать данные из конфигурации OPC-сервера с конфигурацией OPC-клиента. Обеспечивается это с помощью загрузки данных (item browsing), которая поддерживается и OPC-сервером и OPC-клиентом. После этого необходимо связать переменные базы данных OPC-клиента с переменными OPC-сервера. Если OPC-сервер или OPC-клиент не поддерживают загрузку данных, конфигурирование OPC-клиента превращается в довольно длительную работу. В этом случае связывание данных обеспечивается вручную согласно документации на OPC-сервер по правилам именования и расположения данных внутри сервера.