Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
АИУС / АИУС / Лекция 9.doc
Скачиваний:
105
Добавлен:
18.05.2015
Размер:
144.38 Кб
Скачать

9.4. Орс-серверная технология

OPC (OLE for Process Control)–это стандарт взаимодействия между программными компонентами системы сбора данных и управления (SCA-DA), основанный на объектной модели COM/DCOM фирмы Microsoft [16].

ОРС– это интерфейсная программная среда, с помощью которой одни при-ложения могут читать или записывать данные в другие приложения, обме-ниваться событиями, оповещать друг друга о нештатных ситуациях (тре-вогах), осуществлять доступ к данным, зарегистрированным в архивах (так называемые «исторические» данные). Эти приложения могут распо-лагаться как на одном компьютере, так и могут быть распределенными по сети, при этом независимо от фирмы поставщика стандарт OPС, признан-ный и поддерживаемый всеми ведущими фирмами производителями SCA-DA систем и оборудования, обеспечит их совместное функционирование.

В технологии ОРС различают ОРС - сервер и ОРС - клиент. ОРС – се-рвер поставляет данные, ОРС- клиент потребляет данные.

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

9.4.1. OPC-технология предназначена для использования там, где ус-тановлен Microsoft DCOM (Windows NT/2000). Это могут быть АРМ диc-петчера, операторов или УСО на базе индустриальных компьютеров. Для таких устройств промышленные шины представляются в виде OPC-серве-ров.

Реализация OPC основана на объектной модели COM/DCOM фирмы Microsoft:

COM – это Component Object Model, – модель многокомпонентных объектов, позволяющая приложению вызывать те или иные функции этих объектов так, как будто объекты находятся «рядом» (в адресном прост-ранстве).

DCOM – Distributed (распределенная) COM. Это тогда, когда объект находится в другой программе на том же РС или на другом РС одной локальной вычислительной сети. В DCOM вызов любой функции объекта перехватывается специальным агентом посредником, так называемой pro-xy/stub DLL, которая выполняет роль представителя объекта у обратив-шегося к нему клиента. Proxy/stub DLL «упаковывает» параметры функ-ции и передает вызов операционной системе, которая доставляет его по назначению и заставляет реальный объект выполнить заданную функ-цию. Затем результат возвращается приложению клиенту. Удобство испо-льзования DCOM состоит в том, что приложение клиент совершенно не обязано знать, где реально находится объект. О степени удаленности объекта оно может судить только по увеличению расхода времени на вызов функции.

9.4.2. OPC технология основана на клиент-серверной схеме. OPC клиент (например, - SCADA), вызывает определенные функции объекта

OPC – сервера, подписывается на получение определенных данных с зада-нной периодичностью. В свою очередь OPC-сервер, опросив физическое устройство, вызывает известные функции клиента, уведомляя его о полу-чении данных и вручая сами данные. Таким образом, при OPC взаимодей-ствии используются как прямые COM вызовы (от клиента к серверу), так и обратные (callback, от сервера к клиенту) в соответствии с рис. 9.6.

Вызов функциОРС-сервера, подписка на данные

Вызов функций ОРС-клиента, передача данных

Рис. 9.6 Клиент - серверное взаимодействие

1) В соответствии со стандартом ОРС состоит из трех основных спецификаций:

– доступа к данным реального времени (Data Access);

– обработки тревог и событий (Alarms&Events);

– доступа к историческим данным (Historical Data Access).

Эти три вида ОРС серверов могут быть самостоятельными, но могут быть совмещены и в одном ОРС. OPC серверы физических устройств обычно являются только серверами данных - ОРС-Data Access (DА). Сер-веры тревог и доступа к историческим данным используют ОРС-DA.

Сервер доступа к данным ОРС-DA отвечает за обеспечение к дос-тупу данных реального времени и по этой причине он занимает централь-ное место среди спецификаций OPC. Настолько центральное, что часто под термином ОРС понимается ОРС-DA.

Сервер тревог формирует определенные логические переменные, называемые состояниями (conditions), имея в качестве исходной информа-ции некую переменную (тег), полученную от ОРС- DA. Состояния изменя-ют свое значение, если переменная, например, вышла за допустимые гра-ницы. Об изменении состояния сервер тревог оповещает клиентов, посы-лая им событие (тревогу), а клиент возвращает серверу подтверждение, что он тревогу воспринял.

Сервер исторических данных получает от ОРС-DA параметры в реальном времени и архивирует их, а затем предоставляют эти данные другим приложениям (например, для построения графиков трендов).

2) Основной структурные единицей данных в ОРС является перемен-ная (Item)- элемент данных.

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

Значение переменной Item может быть любого типа, допустимого в OLE: различные целые и вещественные числа, логические данные, строка, массив и т.п. Время последнего обновления данных фиксируется и пред-ставляется с точностью до 0.1 мкс. Данные сопровождаются признаком ка-чества - это код, содержащий в себе грубую оценку достоверности: не оп-ределено/хорошо/плохо, а на случай плохой оценки — еще и расшифров-ку, например, – неисправность датчика.

Следующий уровень понятия - группы элементов (OPC Group). Груп-па элементов создается OPC- сервером по требованию клиента, который затем может добавить в группу новые элементы элементы (Items). Клиент для OPC Group задает частоту обновления данных, сервер обновляет и передает клиенту данные OPC Group с заданной частотой. Элементов, которые стояли бы отдельно вне группы, быть не может.

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

Элементы в группе – это своего рода клиентские ссылки на некие реальные переменные (теги), находящиеся на сервере или в физическом устройстве.

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

Пример полного имени тега: Устройство_1. Модуль_2. Аналоговый Вход_3 (точка используется в качестве разделителя).

При добавлении элемента в группу клиент всегда указывает это пол-ное имя. Заметим, что группы, создаваемые клиентом на сервере, не обяза-ны совпадать (и, как правило, не совпадают) с подразделами пространства имен сервера, элементы в группу добавляются вразнобой. Единственное, что их объединяет, – это общая частота обновления и синхронность от-правки клиенту.

Наконец, на верхней ступеньке иерархии понятий находится сам OPC-сервер. Из всех перечисленных составляющих: OPC элемент, OPC-группа и ОРС - сервер только последний является COM объектом, а все остальные объекты доступны только через его интерфейсы, которые он предоставляет клиенту.

3) Синхронизация взаимодействия в ОРС при обмене данными между клиентом и сервером может осуществляться в двух режимах - синх-ронном и асинхронном.

При асинхронном варианте обмена сервер сам оповещает клиента об изменившихся значениях данных, на которые подписался клиент (с часто-той, заданной клиентом при создании группы).

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

9.4.3. Пример использования ОРС в АРМ- оператора к которому подключена промышленная сеть (Profibus-DP) с 2-мя УСО представлена на рис.9.7.

Рис. 9.7. Одномастерная система с ОРС-сервером

АРМ-оператора (на рис.9.7 – рабочая станция) выполнено на базе индустриального РС (IPC). В IPC установлена мастер-карта, которая

– с одной стороны: в качестве MS осуществляет управление промышле-нной сетью Profibus-DP, включающей в себя два УСО, обеспечивающих взаимодействие с объектом,

– с другой стороны: в качестве модуля устанавливается в интерфейсный канал IPC ( шина ISA или PCI) и обеспечивает подключение промыш-ленной сети к компьютеру.

Общеизвестно, что подключение к компьютеру внешнего устройства осуществляется с помощью драйвера. В данном случае в качестве внеш-него устройства выступает промышленная сеть Profibus-DP, а функцию драйвера выполняет Profibus OPC-сервер.

Взаимодействие оператора с IPC осуществляется с использованием HMI/SCADA, поддерживающей OPC-технологию. Прикладная программа взаимодействия с УСО сосредоточена в круге со стрелкой: «Цикл управ-ления». Круговая стрелка как раз и подчеркивает циклический характер управления.

Логически потоки в сети Profibus делятся на три основных цикла.

1) Цикл ввода/вывода выполняется под управлением УСО (ведомого узла SL): происходит автоматический опрос модулей ввода, установленных в УСО, и строится таблица последних значений, готовых к передаче в сеть. Одновременно с этим происходит передача выходным модулям УСО но-вых значений, полученных из сети. Длительность этого цикла зависит от количества модулей и, как правило, измеряется единицами милисекунд.

2) Цикл сетевого обмена в шине реализуется по инициативе MS: MS формирует пакеты, содержащие данные для модулей вывода каждого из SL, и принимает от них пакеты. Цикл сетевого обмена осуществляется без участия центрального процессора рабочей станции и начинается сразу после подачи напряжения питания на сетевую карту и сетевые УСО. При взаимодействии с каждым УСО MS берет данные из определенного поля адресов специальной памяти. В эту же память после каждого цикла обмена по сети помещаются новые значения, полученные от каналов ввода. Для того чтобы MS мог распознать, какие из участков своей памяти передать каждому из абонентов и, соответственно, какую длину пакета ожидать в ответ и что это будет обозначать, такая сеть изначально должна быть однократно сконфигурирована с помощью специальной программы. В результате работы программа-конфигуратор настраивает ведущего и ведомых участников взаимодействия и сохраняет информацию о пара-метрах сети в энергонезависимой памяти всех узлов. Такая дисциплина работы Profibus PD не допускает “горячего” (на ходу) изменения числа участников сети и даже состава их модулей ввода/вывода, но зато обеспечивает высокую скорость обмена.

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

Соседние файлы в папке АИУС