ЖУРНАЛ СТА 4/2009
94 СТА 4/2009 www.cta.ru В ЗАПИСНУЮ КНИЖК У ИНЖЕ Н Е РА Описанный метод обладает высокой универсальностью и может быть использован как для преодоления проблем несовместимости ActiveX объекта и рабочей среды, куда необходимо его интегрировать, так и для разработки собственных библиотек объектов ActiveX Control. И НТЕГРАЦИЯ ПОСРЕДСТВОМ СОЗДАНИЯ СОБСТВЕННОГО W EB ИНТЕРФЕЙСА Рассмотрим другой способ вывода изображения с IP видеокамеры в экранную форму, который также может быть использован для решения других подобных задач интеграции. Суть метода заключается в разработке собственного Web интерфейса и просмотра созданной Web страницы в экранной форме SCADA системы с по мощью стандартного ActiveX компонента Web Browser. Как уже было упомянуто, IP видеокамера имеет Web интерфейс, но он представлен в виде нескольких Web страниц, и изображение с видеокамеры занимает лишь часть окна (рис. 5), поэтому целесообразно разработать собственный интерфейс. Для этого создадим текстовый файл с расширением *.htm и поместим в него следующий html код: <html> <SCRIPT LANGUAGE=«JavaScript»> function Init() { cam.RemoteHost = «192.168.2.1» cam.RemotePort = 8481 cam.Timeout = 5 cam.AuthType = 1 cam.PreviewFrameRate = 1 cam.PreviewWidth = 320 cam.PreviewHeight = 240 cam.Play() } </SCRIPT> <body bgcolor=e4ebf1 onload=«Init()»> <OBJECT ID=«cam» WIDTH=320 HEIGHT=240 CLASSID=«CLSID:31150A86 0BBA 409f BEB4 F3922D10BF34» </OBJECT> </body> </html> Принцип работы приведённого кода следующий. После загрузки созданной Web страницы выполняется функция Init, которая задаёт значения свойств ActiveX объекта ка меры и выполняет метод Play. Определение объекта осу ществляется через идентификатор класса CLSID:31150A86 0BBA 409f BEB4 F3922D10BF34 (в мо ём случае), с которым он зарегистрирован в реестре опе рационной системы (идентификатор можно определить из редактора системного реестра, который запускается командой regedit). Библиотека ActiveX компонента долж на быть предварительно зарегистрирована в системе. Сохраним текстовый файл под именем IPCam.htm. Итак, мы создали Web страницу с размерами заданного нами ActiveX объекта, после загрузки которой автомати чески начинается трансляция изображения с IP видеока меры. Теперь создадим экранную форму SCADA системы и отобразим на ней созданный Web интерфейс. Для этого запустим компонент GraphWorX, создадим экранную форму и импортируем на неё ActiveX объект класса Web Browser. Процедура импорта объектов на эк ранную форму описана в разделе Интеграция со SCADA системами. В VBA коде объекта ThisDisplay напишем следующее: Private Sub GwxDisplay_PostRuntimeStart() ThisDisplay.WebBrowser1.Navigate («c:\IPCam.htm») End Sub Процедура GwxDisplay_PostRuntimeStart выполняется сразу после перехода экранной формы в режим исполнения и загружает в ActiveX объект Web браузера созданную нами страницу Web интерфейса IP видеокамеры. Инициировать выполнение этой процедуры можно также по нажатию кнопки или по другому событию объекта ThisDisplay. Видеоизображение, полученное описанным методом, представлено на рис. 3. Р ЕЗУЛЬТАТЫ В статье были рассмотрены некоторые методы интегра ции изображения с IP видеокамеры в экранную форму SCADA системы на примере GENESIS32. Реализация приведённых алгоритмов в других SCADA пакетах имеет незначительные различия. Необходимое требование — поддержка ActiveX компонентов и языков программирова ния инструкций (скриптов). Описанные трудности под ключения видеокамер с помощью ActiveX объектов харак терны и для иного оборудования. Предложенные методы позволяют решить данные проблемы, а также дают общее представление о различных вариантах работы SCADA сис тем с объектами типа ActiveX Control. В своей статье я по пытался систематизировать методы работы с ActiveX объ ектами на примере задачи вывода изображения с видеока меры на экранную форму SCADA системы. Описанные примеры детализированы, благодаря чему могут быть ис пользованы как руководство при разработке собственных проектов. Действия, связанные с конфигурированием внешнего вида экранных форм, были намеренно опущены, поскольку предполагается, что любой инженер, даже не знакомый со средствами программирования, сможет на строить его с помощью интерфейса окна свойств. Рассмотренные функции интеграции изображения с видеокамеры в SCADA систему весьма актуальны и реа лизуют возможность создания систем диспетчеризации качественно нового уровня. ● Автор — сотрудник фирмы ПРОСОФТ Телефон: (495) 234 0636 E mail: bodyagin@prosoft.ru Рис. 5. Встроенный Web интерфейс IP видеокамеры © СТА-ПРЕСС
Made with FlippingBook
RkJQdWJsaXNoZXIy MTQ4NjUy