logo
Konspekt_lektsy_KISU_redaktirovannyy_308

25.2. Орс da-сервер в середовищі ms Excel.

Microsoft Excel є добрим середовищем для розробки нескладних систем автоматизації завдяки тому, що він містить зручний призначений для користувача інтерфейс для обробки даних, побудови графіків, вставки малюнків, виконання анімації і тому подібного. Він містить також вбудовані елементи управління (списки, що розкриваються, «радіокнопки», «чек-бокси»). Excel дозволяє зробити спеціалізований призначений для користувача інтерфейс, що не поступається дизайном професійним SCADA-пакетам. Особливо зручним є просте збереження виконаної роботи у файл.

Недоліком MS Excel є низька швидкодія при записі даних в елементи таблиці і відсутність в VBA можливості виконання завдань в декількох паралельних потоках. VBA включає Visual Basic і додаткові функції, що забезпечують роботу з додатком, наприклад з осередками MS Excel або з параграфами MS Word. Ми рекомендуємо використовувати MS Excel тільки для додатків, що використовують не більше 10...30 тегів при періоді їх опиту не менше 1с. Проте це стосується тільки операцій в осередках і динамічного оновлення графіків і не розповсюджується на обробку даних засобами мови VBA.

Можливість роботи MS Excel (і інших додатків Microsoft Office) з ОРС-сервером забезпечується завдяки тому, що Visual Basic, що входить до складу MS Excel, підтримує технологію Automation (OLE Automation) фірми Microsoft. Суть Automation полягає в тому, що вона дозволяє одному додатку (клієнтові) використовувати об'єкти іншого застосування (сервера). Стосовно завдання промислової автоматизації це означає, що додаток-клієнт може використовувати об'єкти ОРС-сервера, який, у свою чергу, може отримувати дані з фізичного пристрою або записувати їх в нього.

Automation дозволяє використовувати в середовищі MS Excel також об'єкти інших застосувань, наприклад ActiveX-об’єкти, об'єкти MS Word, Outlook Express і ін. Інтерфейс Automation дозволяє використовувати ОРС-сервер з будь-якими іншими застосуваннями, що мають вбудований Visual Basic for Application.

Об'єкти, доступні в MS Excel через інтерфейс Automation, видно в списку об'єктів «Object Browser» в меню «View» Microsoft Visual Basic, який відкривається з пункту меню Cepвиc/Macros/Редактор Visual Basic в Excel 2003 і старіших версіях або в меню «Разработчик/visual Basic» в MS Excel 2007.

Для підключення ОРС-сервера до MS Excel спочатку необхідно інсталювати на комп'ютері ОРС-сервер. Стандартний ОРС-сервер повинен реєструватися в реєстрі Windows автоматично. Потім потрібно відкрити пункт меню Tools/References в редакторові Visual Basic, знайти в списку «Available References» і відзначити галочкою посилання на псевдонім ОРС-сервера. Після цього в списку об'єктів «Object Browser» з'являється список об'єктів ОРС-сервера, і їх можна використовувати по загальних правилах програмування на Visual Basic. Детальніше про роботу з об'єктами OLE Automation можна ознайомитися в керівництві з програмування.

На рис. 25.5 показана ієрархія об'єктів, що надаються інтерфейсом ОРС Automation. Значення даних, зчитаних з пристрою введення, параметр якості даних і тимчасова мітка зберігаються в об'єкті OPCItem. Декілька OPCItem можуть складати колекцію. Колекція — це термін VBA, вона є групою зв'язаних об'єктів, кожен з яких називається елементом колекції і може бути викликаний за індексом. Кожна колекція має властивість Count, яка дозволяє підрахувати кількість елементів.

Об'єктом OPCServer є екземпляр ОРС-сервера. Цей об'єкт повинен бути створений до того, як будуть встановлені посилання на інші об'єкти. Він містить колекцію OPCGroups і створює об'єкт OPCBrowser, який використовується в ОРС-клієнті для побудови навігатора тегів.

Рис. 25.5. Ієрархія об'єктів інтерфейсу Automation.