Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник ИСПиУ.doc
Скачиваний:
213
Добавлен:
18.09.2019
Размер:
17.33 Mб
Скачать

Аппаратная реализация связи с устройствами ввода-вывода

Для организации взаимодействия с контроллерами могут быть использованы следующие аппаратные средства:

  • СОМ-порты; в этом случае контроллер или объединенные сетью контроллеры подключаются по протоколам RS-232, RS-422, RS-485;

  • сетевые платы; использование такой аппаратной поддержки возможно, если соответствующие контроллеры снабжены интер­фейсным выходом на Ethernet;

  • вставные платы; в этом случае протокол взаимодействия определяется платой и может быть уникальным; предлагаются их реа­лизации в стандартах ISA, PCI, CompactPCI.

Технологии ActiveX

Говоря о технологиях ActiveX, можно выделить следующие аспекты:

  • выбор типов ActiveX-объектов, используемых в конкретной SCADA-системе;

  • ограничения, накладываемые на применение объектов ActiveX;

  • простота применения в приложении.

Первый аспект является решающим и рассмотрение поддержи­ваемых типов важно при тестировании.

Объекты ActiveX – это объекты, в основе которых лежит Microsoft COM (Component Object Model – модель составных объ­ектов). Технология СОМ определяет общую схему взаимодействия компонентов программного обеспечения в среде Windows и пре­доставляет стандартную инфраструктуру, позволяющую объектам обмениваться данными и функциями между прикладными про­граммами. Большинство SCADA-систем являются контейнерами, которые уведомляются ActiveX о происшедших событиях. Любые объекты ActiveX могут быть загружены в систему разработки большинства SCADA и использованы при создании прикладных программ. Управление объектами ActiveX осуществляется с помощью данных, методов и событийных функций, свойственных выбранному объекту.

Объект ActiveX играет роль сервера по отношению к контей­неру (SCADA-приложению), являющемуся клиентом. Объект ActiveX может быть реализован в двух основных режимах: как сервер, встроенный в процесс “in-process”, и как сервер, испол­няющийся в отдельном процессе “out-of-process”. Этим двум спо­собам исполнения соответствуют две реализации объектов ActiveX: в виде динамических библиотек и в виде исполняемых модулей. Обе реализации обладают и преимуществами, и недос­татками.

Для передачи данных из одного процесса в другой вводится механизм «маршалинг» (Marshaling). Стандарт СОМ поддержива­ет «маршалинг».

Динамически подключаемые библиотеки ActiveX (ActiveX DLL's) или встраиваемые ActiveX размещаются в пространстве процесса контейнерного приложения, поэтому нет необходимости в использовании механизма «маршалинг» для организации пере­дачи данных между приложением-контейнером и объектом ActiveX. Это уменьшает накладные расходы и увеличивает произ­водительность. Существует ряд преимуществ в реализации объек­та ActiveX как встраиваемого сервера.

Исполняемые в отдельном процессе объекты ActiveX “out-of-process” загружаются вне пространства приложения-контейнера. Для передачи данных между объектом ActiveX и контейнером ис­пользуется механизм «маршалинг». Его применение заметно уве­личивает накладные расходы и сильно влияет на производительность.

Многие компании занимаются разработкой драйверов, ОРС-серверов, ActiveX-объектов и другого программного обеспечения для SCADA-систем. Этот факт очень важно оценивать при выборе SCADA-пакета, поскольку это расширяет область применения системы непрофессиональными программистами (нет необходи­мости разрабатывать программы с использованием языков Си или Basic).

Для реализации указанных выше технологий в среде ОС Windows разработаны специальные библиотеки и инструменталь­ные системы. Использование же только спецификаций стандартов для этого не только достаточно трудоемко, но и требует высокого профессионализма программистов и, следовательно, затрудни­тельно для нe Windows платформ.