ЖУРНАЛ СТА №3/1999

старой спецификацией, можно продол- жать использовать без каких-либо дора- боток). Версия 2.0 отличается несколь- ко измененным интерфейсом, исполь- зуемым при соединении с клиентом (IConnectionPoint), улучшенной под- держкой национальных языков (теперь клиент может запросить сервер, какие языки он поддерживает, и выбрать сре- ди них язык общения) и некоторыми другими модификациями. Однако кон- цептуальная сторона, описанная ранее, осталась прежней. Относительно недавно появилась первая спецификация, касающаяся об- работки тревог и событий (Alarms & Events), она также доступна с Web-узла OPC Foundation. Спецификация доступа к историческим данным на момент на- писания статьи все еще не была оконча- тельно утверждена, но, видимо, должна появиться в ближайшее время. Как разработать свой OPC-сервер Утвержденные спецификации OPC, а также proxy/stub DLL, соответствующая интерфейсам OPC, свободно доступны с Web-узла OPC Foundation. Строго го- воря, этого достаточно для разработки своего OPC-сервера. Однако разработ- ка сервера «с нуля» — довольно слож- ный процесс, а аккуратная реализация интерфейсов OPC в многопоточной (multithread) среде изобилует различ- ными «подводными камнями». Это представляет известную опасность, так как OPC-сервер обязан быть достаточ- но надежной программой. Проще всего разработать сервер, ис- пользуя специально созданные для это- го средства. Так, фирма Iconics, извест- ная своей SCADA-системой Genesis, предлагает OPC ToolWorX, который оформлен в виде дополнительного ма- стера (Wizard), встраиваемого в среду разработки Visual C++. Мастер генери- рует некий «образцовый» проект, в ко- тором требуется только модификация фрагментов кода, связанных со специ- фикой обслуживаемого устройства или протокола. Поддержка OPC-взаимодей- ствия обеспечивается специальными классами объектов, не требующими ка- ких-либо исправлений, поэтому про- граммист может сосредоточиться на функциональности своего устройства, не заботясь о реализации собственно OPC-интерфейсов. Все компоненты OPC ToolWorx поставляются в исход- ном коде. Для квалифицированного программиста срок разработки не- сложного OPC-сервера с помощью Iconics OPC ToolWorX – 3-4 недели. В случае, если к серверу не предъяв- ляются особо жесткие требования к синхронности обновления данных и не требуется динамическая реструктури- зация пространства имен во время его работы, можно применить самое про- стое и недорогое решение – универ- сальный OPC-сервер фирмы Fastwel. Он создан на базе Iconics ToolWorX и предусматривает подключение дина- мической библиотеки (DLL), написан- ной пользователем, в которой сосредо- точен весь код, специфичный для об- служиваемого устройства. Интерфейс этой DLL с сервером очень прост, и раз- работка ее для простых устройств (или когда уже есть соответствующий про- граммный задел в виде ранее написан- ных драйверов и т.п.) занимает у квали- фицированного программиста всего 1- 3 дня. Вместе с универсальным OPC- сервером (в виде исполняемого моду- ля) поставляется исходный текст «об- разцовой» DLL, который можно ис- пользовать как пример реализации. Достаточно широко известен также пакет для разработки OPC-приложений фирмы Intellution. Для разработчиков АСУ ТП, использующих SCADA-систему FiX Dynamics, это, безусловно, наилуч- ший выбор. Однако для написания «просто OPC-сервера» пакет от Intellution чрезмерно перегружен «фир- менными» чертами: по существу, разраба- тывается не сервер как таковой, а FiX- драйвер, открытый остальному миру че- рез OPC-интерфейсы. Впрочем, выбор ин- с т р у м е н т а л ь н ы х средств разработки — во многом вопрос вкуса и привычки. SCADA-системы и OPC Как уже говорилось, практически все про- изводители SCADA- систем поддержива- ют OLE for Process Control, среди них – F i x D y n a m i c s (Intellution), Facto- rySuite 2000 (Wonderware), Gene- sis32 (Iconics), FactoryLink(US Data), Lookout (National Instruments) и т.д. Од- нако для большинства из них OPC — только один из поддерживаемых интерфейсов взаимодействия, их внутренняя идеоло- гия построения напрямую не связана с этим стандартом и часто унаследована от предыдущих 16-разрядных версий. По-видимому, пока только Genesis32 из- начально спроектирован на основе OPC (OPC to the Core). Все компоненты Genesis32 взаимодействуют между со- бой через OPC, являясь, в зависимости от ситуации, либо серверами, либо кли- ентами, либо и теми и другими одновре- менно. Это придало системе во многом единый стиль, стройность архитектуры и предопределило ее компонентный ха- рактер: унификация интерфейсов взаи- модействия дала возможность легко вы- бирать совокупность компонентов, дей- ствительно необходимых пользователю (и не переплачивать за ненужные). Конечно, у других SCADA-систем есть, безусловно, свои сильные стороны, од- нако Genesis32 в наибольшей степени дает своим пользователям почувство- вать свободу выбора, которую обеспе- чивает OLE for Process Control. ● Д.А. Теркель — сотрудник фирмы «Прософт» Телефон: (095) 234-0636 Факс: (095) 234-0640 E-mail: terkel@prosoft.ru ОБЗОР ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ 32 3/99 Кабельные вводы и сальники от ведущего производителя этой продукции Пластиковые кабельные вводы Герметичные латунные кабельные вводы • Предназначены для фиксации кабелей, вводимых в электротехнические корпуса и клеммные коробки, с обеспечением полной герметичности • Материал: полиамид • Прокладки: неопрен • Обеспечиваемая степень защиты: IP68 при давлении до 5 атмосфер, полностью пылевлагонепроницаемые • Температурный диапазон: –40…+100°С, кратковременно допускается +120°С • Не содержат токсичных компонентов • Поставляется взрывозащищенное исполнение #141

RkJQdWJsaXNoZXIy MTQ4NjUy