
- •Міністерство освіти і науки, молоді та спорту україни
- •15.1. Джерела перешкод 125
- •1.2. Вимоги до архітектури.
- •1.1.2. Проста система
- •1.3. Розподілені системи автоматизації.
- •1.4. Багаторівнева архітектура
- •2.2. Основні поняття технології Інтернету.
- •2.3. Принципи управління через Інтернет.
- •2.1. Проблеми і їх рішення
- •2.2. Основні поняття технології Інтернету
- •2.3. Принципи управління через Інтернет
- •3.2. Властивості відкритих систем
- •3.3. Засоби досягнення відкритості
- •3.4. Переваги і недоліки
- •4.2. Основні поняття промислових мереж.
- •4.3. Модель osi
- •5.1. Принципи побудови
- •5.2. Узгодження лінії з передавачем і приймачем
- •5.3. Топологія мережі на основі інтерфейсу rs-485
- •5.4. Усунення стану невизначеності лінії
- •5.5. Крізні струми.
- •5.6. Інтерфейси rs-232 і rs-422
- •6.1. Основні властивості can.
- •6.2. Фізичний рівень Саn.
- •6.3. Типова структура трансівера Саn.
- •6.4. Канальний рівень Саn.
- •7.2. Фізичний рівень
- •7.3. Канальний рівень Profibus dp
- •7.4. Резервування
- •7.5. Опис пристроїв
- •8.2. Фізичний рівень
- •8.3. Канальний рівень
- •8.4. Прикладний рівень.
- •9.2. Фізичний рівень
- •9.3. Канальний рівень
- •10.1. Проблеми безпровідних мереж|сітей|
- •10.2 Залежність щільності потужності від відстані.
- •10.3 Вплив інтерференції хвиль.
- •10.4 Джерела перешкод.
- •10.5 Деякі особливості безпровідних каналів.
- •11.2 Методи розширення спектру і модуляції несучої.
- •11.3 Методи зменшення кількості помилок в каналі.
- •11.4 Передача повідомлень|сполучень| без підтвердження про отримання|здобуття|.
- •12.2. Стандарт ZigBee|
- •12.3. Модель передачі даних.
- •15.1. Джерела перешкод
- •15.1. Джерела перешкод
- •15.2. Характеристики перешкод
- •15.4. Електромагнітні перешкоди
- •16.1. Визначення
- •16.2. Цілі заземлення
- •16.3. Заземлювальні провідники
- •3.2.6. Модель «землі|грунту|»
- •16.4. Види заземлень
16.4. Види заземлень
Одним з шляхів|колій,доріг| ослаблення|ослабіння| шкідливого впливу кіл|цепів| заземлення на системи автоматизації є|з'являється,являється| роздільне виконання заземлень для пристроїв|устроїв|, що мають різну чутливість до перешкод або ,є|з'являються,являються| джерелами перешкод різної потужності. Роздільне виконання заземлювальних провідників дозволяє виконати їх з'єднання|сполучення,сполуку| із|із| захисною землею|грунтом| в одній точці. При цьому заземлювальні провідники різних систем земель|грунтів| є променями зірки, центром якої є|з'являється,являється| контакт до шини захисного заземлення будівлі. Завдяки такій топології перешкоди «брудної» землі|грунту| не протікають по провідниках «чистої» землі|грунту|. Таким чином, незважаючи на те що системи заземлення розділені і мають різні назви, зрештою всі вони з'єднані із|із| Землею|грунтом| через систему захисного заземлення. Виняток становить тільки|лише| «плаваюча» земля|грунт|.
Силове заземлення. У системах автоматики можуть використовуватися електромагнітні реле, мікропотужні серводвигуни|, електромагнітні клапани і інші пристрої|устрої|, струм|тік| споживання|вжитку| яких істотно|суттєвий| перевищує струм|тік| споживання|вжитку| модулів введення-виведення і контроллерів. Кола|цепи| живлення|харчування| таких пристроїв|устроїв| виконують окремою парою кручених проводів (для зменшення випромінюваних перешкод), один з яких з'єднується з|із| шиною захисного заземлення. Загальний|спільний| провід системи (зазвичай|звично| провід, підключено до негативного|заперечного| виведу джерела живлення|харчування|) є|з'являється,являється| силовою землею|грунтом|.
Аналогова і цифрова земля|грунт|. Системи промислової автоматики є|з'являються,являються| аналого-цифровими. Тому одним з джерел похибок аналогової частини|частки| є|з'являється,являється| перешкода, що створюється цифровою частиною|часткою| системи. Для виключення|винятку| проходження перешкод через кола|цепи| заземлення цифрову і аналогову землю|грунт| виконують у вигляді незв'язаних провідників, з'єднаних разом тільки|лише| в одній загальній|спільній| точці. Для цього модулі введення-виведення і промислові контроллери мають окремі виводи|висновки,виведення| аналогової землі|грунту| (AGND|) і цифровий (DGND|).
«Плаваюча» земля|грунт|. «Плаваюча» земля|грунт| утворюється у разі, коли загальний|спільний| провід невеликої частини|частки| системи електрично не з'єднується з|із| шиною захисного заземлення (тобто із|із| землею|грунтом|). Типовими прикладами|зразками| таких систем є|з'являються,являються| батарейні вимірювальні прилади, системи автоматики автомобіля, літака або космічного корабля. «Плаваюча» земля|грунт| може бути отримана|одержувати| і за допомогою DC-DC| або AC-DC-перетворювачів|, якщо вивід вторинного|повторного| джерела живлення|харчування| в них не заземлений. Таке рішення|розв'язання,вирішення,розв'язування| дозволяє повністю|цілком| виключити кондуктивні| наведення через загальний|спільний| провід заземлення. Крім того, допустима напруга|напруження| синфазного сигналу може сягати 300 В і більш; практично 100%-вим| стає придушення синфазного сигналу, знижується вплив ємнісних|місткість| перешкод. Проте|однак| на високих частотах струми|токи| через ємність|місткість| на землю|грунт| істотно|суттєвий| знижують останні два достоїнства.
Якщо «плаваюча» земля|грунт| отримана|одержувати| за допомогою пристроїв|устроїв| гальванічної розв'язки на оптронах і DC-DC| перетворювачах, то треба прийняти особливі заходи для запобігання накопиченню заряду в ємності|місткості| між землею|грунтом| і «плаваючою» землею|грунтом|, яке може привести до пробою оптрона
Приклад|зразок| утворення «плаваючої» землі|грунту| показао на рис. 16.3. Вивід AGND| модуля введення сигналів термопар не з'єднано із|із| землею|грунтом|. Аналогова частина|частка| модуля має еквівалентну ємність|місткість| на землю|грунт|, яка включає ємність|місткість| вхідних кіл|цепів| на землю|грунт|, ємність|місткість| провідників друкованої плати на землю|грунт|, прохідну ємність|місткість| DC-DC-пертворювача| і оптронів гальванічної розв'язки.
|
Рис 16.3. Приклад|зразок| «плаваючої» землі|грунту| AGND|
|
Величина цієї ємності|місткості| може складати близько 100 пФ| і більш. Оскільки повітря і інші діелектрики, з|із| якими контактує ємність|місткість|, мають не нескінченний|безконечний| електричний опір, то ємність|місткість| може поволі|повільно|, протягом хвилин|мінут| або годин, заряджати струмом|током| витоку (рис 3.16) до потенціалу електризованих тіл, високовольтних джерел живлення|харчування| або потенціалу, пов'язаного з атмосферною електрикою. Потенціал на «плаваючій» землі|грунті| може перевищити напругу|напруження| пробою ізоляції оптронів і вивести систему з|із| ладу|строю,буд|.
Як захисні мери при використанні «плаваючої» землі|грунту| можна рекомендувати з'єднання|сполучення,сполуку| «плаваючої» частини|частки| із|із| землею|грунтом| через опір величиною від десятків кілоом до одиниць мегаом. Другим способом є|з'являється,являється| застосування|вживання| батарейного живлення|харчування| одночасно з передачею інформації через оптичний кабель.
«Плаваюча» земля|грунт| частіше використовується в техніці вимірювань|вимірів| малих сигналів і рідше — в промисловій автоматизації.
ЛЕКЦІЯ 17. ВИМІРЮВАЛЬНІ КАНАЛИ.
17.1. Точність, що вирішує здатність і поріг чутливості
17.2. Похибка методу вимірювань.
17.3. Похибка програмного забезпечення
17.4. Достовірність вимірювань.
17.1. Точність, що вирішує здатність і поріг чутливості
Вимірювальні канали є найбільш складною частиною систем автоматизації і вимагають глибоких знань для отримання достовірних результатів вимірювань. Якість отриманих даних залежить не тільки від погрішності засобів вимірювань, вчасно виконаної перевірки або калібрування, але, більшою мірою, від коректності методики вимірювань, правильності виконання системи заземлення, екранування і кабельної розводки. Вимірювальні канали систем автоматизації, на відміну від вимірювальних приладів, створюються в «польових умовах», що є причиною появи помилок, наявність яких не завжди вдається виявити. Безліч проблем виникає при виконанні статистичної обробки результатів вимірювань, при необхідності досягти межі роздільної здатності системи, при виконанні непрямих, сумісних і багатократних вимірювань.
Для отримання достовірних результатів потрібні знання в області метрології, математичної статистики, теорії випадкових процесів, теорії інформації і електроніки. Це самостійні об'ємні області знань, які є темою безлічі підручників і монографій. Тому нижче розглядаються тільки найбільш важливі питання вимірювань в промисловій автоматизації, які часто розуміються неправильно або неоднозначно.
При виборі модулів введення-виводу аналогових сигналів по критерію точності, що дозволяє здатності і чутливості необхідно розуміти відмінність цих термінів. Типова помилка полягає в тому, що «якщо модуль введення має похибка ±0,05%, то розрядність його АЦП більш ніж 12 битий плюс знак (±1/212=±1/2048=±0,05) є даремною». Покажемо, що це не так.
Точність (похибка) характеризує ступінь відмінності результату вимірювання від точного значення, пов'язаного з еталоном одиниці фізичної величини. Роздільна ж здатність показує, яке мінімальне відхилення вимірюваної величини може бути зареєстроване вимірювальним приладом. Наприклад, якщо модуль введення в діапазоні вимірювань -10...±10В має похибка ±0,05%, то його поріг чутливості рівний ±5мВ. Проте завдяки наявності 16-розрядного АЦП цей модуль може розрізнити два вхідні сигнали, що відрізняються на 20/216=0,3мВ, тобто його роздільна здатність в ±5/0,3=±16 раз вище за поріг чутливості. Відзначимо, що це справедливо за умови, що рівень власних шумів модуля введення нижче величини молодшого значущого розряду (МЗР), тобто похибка є чисто систематичною. При великій випадковій погрішності Можна зробити заходи для її зменшення, наприклад за допомогою усереднювання результатів багатократних вимірювань.
Поріг чутливості, який визначається погрішністю вимірювань, може бути значно більше, чим роздільна здатність, оскільки при визначенні погрішності враховують:
нелінійність вимірювального приладу у всьому діапазоні вимірювань;
динаміку процесу старіння приладу;
технологічний розкид метрологічних параметрів від приладу до приладу;
• не тільки систематичну, але і випадкову некорельовану компоненту погрішності, яка може бути зменшена до рівня МЗР шляхом багатократних вимірювань з подальшим усереднюванням результатів.
Роздільна здатність не залежить від перерахованих вище чинників, і це пояснює її відмінність від порогу чутливості і погрішності.
Приведемо декілька прикладів, коли вимоги до погрішності на декілька порядків можуть відрізнятися від вимог до роздільної здатності.
Приклад 1. Припустимо, є релейний регулятор, який відповідно до алгоритму своєї роботи повинен визначити знак різниці між температурою в печі і значенням уставки. Якщо для вимірювання температури використовується термопара з датчиком температури холодного спаю, з погрішністю вимірювань 2°С, то для вимірювання температури в діапазоні 0...100°С достатні 50 рівнів квантування, що може бути забезпечене 6-розрядним АЦП. Якщо ж використовувати 16-розрядний АЦП, то роздільна здатність по температурі складе 100/216=0,0015°С. У разі застосування 6-розрядного АЦП коливання температури в процесі регулювання не можуть бути менш 2°С, тоді як при використанні 16-розрядного АЦП амплітуда коливань наближається до 0,0015°С. Такий регулятор використовується, коли важлива стабільність в часі, а не точність відповідності установі. Наприклад, стабільність (а не точність) важлива для термостатів, які використовуються при калібруванні термодатчиків методом звірення зі свідченнями зразкового приладу. Нагадаємо, що альтернативним варіантом є калібрування за допомогою калібратора (задатчика), який повинен мати високу точність (і одночасно стабільність) завдання температури.
Приклад 2. У елеваторах для зберігання рослинної сировини спостерігається ефект самообігрівання, зв'язаний, в основному, з діяльністю мікроорганізмів. Для забезпечення якості зерна абсолютне значення температури достатнє знати з погрішністю в декілька градусів, але факт її зростання бажано фіксувати з роздільною здатністю 0,1...0,01°С. Висока роздільна здатність дозволяє попередити розвиток вогнища самообігрівання на ранній стадії і розташувати датчики температури на великій відстані один від одного.
Приклад 3. Якщо потрібно виявити момент часу початку хімічної реакції за ознакою початку зростання температури, то необхідний прилад з високою роздільною здатністю, але необов'язково високою точністю.
Приклад 4. Хай потрібно оцінити параметри коливального процесу (декремент загасання коливань, період коливань, коефіцієнт нелінійних спотворень, тривалість перехідного процесу, величину перешкоди на тлі корисного сигналу) — у всіх перерахованих випадках знаходиться співвідношення ординат або абсцис функції в різних її точках, тобто пропорції між окремими частинами графіка, які не залежать від самого значення функції. Тому такі вимірювання можуть бути виконані приладом, що має низьку точність, але високу роздільну здатність. Додатковою вимогою в даному прикладі є достатня лінійність вимірювального каналу в даному діапазоні.
Для поліпшення роздільної здатності при низькій точності використовується «електронна лупа» (аналогічний термін у фотоапаратах називається «zoom»). У основі принципу роботи електронної лупи лежить властивість будь-яких нелінійностей f(х) наближатися до лінійних залежностей:
при малих, що забезпечує відсутність нелінійних спотворень форми досліджуваного сигналу. Робота електронної лупи полягає в тому, що з досліджуваного сигналу віднімається деякий постійний рівень f(x0) а різниця посилюється за допомогою аналогового підсилювача або квантується АЦП з високою розрядністю. При цьому величина постійного рівня може бути задана з низькою точністю, оскільки метою є вимірювання співвідношень окремих ділянок сигналу між собою, а не щодо одиниці фізичної величини.
Точність, що вирішує здатність і поріг чутливості в загальному випадку вище у АЦП з великим числом двійкових розрядів, хоча прямого зв'язку тут немає. АЦП з високою розрядністю може мати великий рівень шумів, високу нестабільність джерела опорної напруги і пов'язану з ними низьку точність.
17.2. Похибка методу вимірювань.
Для виконання автоматизованих вимірювань використовують датчики і вимірювальні перетворювачі, вимірювальні модулі введення аналогових сигналів, обробку результатів вимірювань на комп'ютері або в контролері. При цьому на похибка результату вимірювань роблять вплив наступні чинники:
опір кабелів;
співвідношення між вхідним імпедансом засобу вимірювань і вихідним імпедансом датчика;
якість екранування і заземлення, потужність джерел перешкод;
похибка методу непрямих, сумісних або сукупних вимірювань;
наявність зовнішніх впливаючих чинників, якщо вони не враховані в додатковій погрішності засобу вимірювань;
похибка обробки результатів вимірювань за допомогою програмного забезпечення.
Всі погрішності, які не можуть бути враховані в процесі сертифікаційних випробувань і внесені до паспорта засобу вимірювань, а з'являються в конкретних умовах застосування, відносяться до методичних. На відміну від них, інструментальні погрішності нормуються в процесі виробництва вимірювального приладу і заносяться в його експлуатаційну документацію. Таким чином, якщо до складу змонтованої автоматизованої вимірювальної системи входять засоби вимірювань з нормованими погрішностями, то похибка, викликана перерахованими вище чинниками, є методичною. Якщо ж виконується сертифікація всієї вимірювальної системи, то методичні погрішності можуть бути враховані в погрішності всієї системи до тоді вони переходять в розряд інструментальних.
Для розрахунку або вимірювання методичної погрішності важко дати загальні рекомендації. Кожен конкретний випадок вимагає окремого розгляду.
17.3. Похибка програмного забезпечення
Похибка програмного забезпечення (ПО) оцінюється як різниця між результатами вимірювань, отриманих даним ПО і еталонним ПО. Під еталонним розуміється програмне забезпечення, висока точність якого доведена багатократними випробуваннями і тестуванням. Поняття еталонного ПО є умовним і визначається угодою між замовником атестації і виконавцем. Як еталонний може бути використано раніше атестоване ПО.
До основних джерел погрішностей ПО відносяться:
помилки запису початкового тексту програми і помилки трансляції програми в об'єктний код;
помилки в алгоритмі рішення вимірювальної задачі;
помилки в таблицях для лінеаризації нелінійних характеристик перетворення;
застосування нестійких або таких, що поволі сходяться алгоритмів при вирішенні погано обумовлених вимірювальних завдань;
помилки перетворення форматів даних;
помилки округлення і ін.
Надійність (достовірність) ПО забезпечується засобами захисту від несанкціонованих змін, які можуть з'явитися причиною появи не врахованих при атестації погрішностей.
17.4. Достовірність вимірювань.
В процесі виконання вимірювань можуть з'явитися грубі помилки (промахи), які роблять вимірювання недостовірними не дивлячись на застосування дуже точних вимірювальних приладів. Тут під достовірністю розуміється ступінь довіри до отриманих результатів. Достовірність може бути низька за наявності погрішностей, про існування яких експериментатор не здогадується. Достовірність при використанні автоматизованих вимірювальних систем знижується із зростанням їх складності і істотно залежить від кваліфікації персоналу проектуючої і монтажної організації.
Головним методом забезпечення достовірності є зіставлення результатів вимірювання однієї і тієї ж величини різними, не зв'язаними один з одним способами. Наприклад, після монтажу системи вимірювання температури в силосі елеваторі слід порівняти свідчення автоматизованої системи і автономного контрольного термометра, щоб переконатися в правильності свідчень автоматизованої системи.
Приведемо декілька прикладів, що ілюструють випадки, коли, не дивлячись на застосування точних засобів вимірювань, виходять абсолютно помилкові дані, що вводять людину в оману.
Приклад 1. Для вимірювання температури повітря в теплиці використаний датчик температури з погрішністю ±0,5°С. Проте датчик встановлений таким чином, що в деякий годинник на нього падають прямі промені сонця, які нагрівають датчик, але не змінюють температуру повітря. При цьому похибка вимірювання температури повітря може скласти +5°С, що дозволяє кваліфікувати результат вимірювання як недостовірний.
Приклад 2. Для вимірювання температури в силосах елеватора встановлені точні датчики і зроблений ретельний монтаж, але розташований на даху елеватора ретранслятор стільникового зв'язку виявився непоміченим і не було прийнято достатніх мерів для захисту від перешкод. При цьому похибка вимірювання температури може скласти ±10°С унаслідок перешкод, наведених передавачем на сигнальних кабелях системи.
Приклад 3. У автоматизованій системі для вимірювання параметрів продукції використаний модуль введення з погрішністю ±0,05%, проте при наладці системи програміст помилково встановив частоту перешкодоподавляючого режекторного фільтру не 50, а 60Гц. Об'єм проведених приймально-здавальних випробувань системи не дозволив виявити цю помилку. В результаті похибка вимірювань унаслідок наведеної перешкоди з частотою 50 Гц може підвищитися до ±10% замість очікуваних ±0,05%.
Приклад 4. Під час виконання вимірювань ваш колега розмовляв по стільниковому телефону. Наведення сигналу від передавача стільникового телефону може підвищити похибка вимірювань у декілька разів.
Приклад 5. При монтажі системи заземлили екран сигнального кабелю з двох сторін. Об'єм проведених приймально-здавальних випробувань не дозволив виявити цю помилку. Похибка може збільшитися у декілька разів в порівнянні з очікуваною.
Приклад 6. В процесі експлуатації системи порушився контакт в ланцюзі заземлення, що привело до епізодичного підвищення рівня перешкод у вимірювальному ланцюзі. Погано затягнутий болт в ланцюзі заземлення приводив до збоїв системи автоматики, причину якого шукали декілька років.
Приклад 7. При розрахунку погрішності засобів вимірювань була проігнорована динамічна похибка, оскільки початкові дані для її розрахунку не були вказані в експлуатаційній документації на засіб вимірювання і не були виявлені в процесі прийомосдаточних випробувань зважаючи на складність постановки експерименту, відсутність часу і приладів для контролю величини погрішності. Під час експлуатації системи фактична похибка у декілька разів перевищує розрахункову.
У приведених прикладах складно виявити наявність погрішності в процесі здачі системи в експлуатацію або вона з'являється в процесі експлуатації. Це призводить до зниження достовірності вимірювань не дивлячись на високу інструментальну точність використаних технічних засобів.
Загальний підхід до вирішення проблеми полягає в застосуванні другої, незалежної системи або методики вимірювань для виявлення помилок. Можна використовувати також цілий комплекс мерів, включаючи підбір персоналу, дотримання графіка перевірки, ретельність виконання типових і сертифікаційних випробувань системи, дотримання методики вимірювань і обслуговування вимірювальної системи.
Термін «достовірність» іноді використовується в другому його значенні — для вказівки вірогідності того, що зміряне значення знаходиться в заданому довірчому інтервалі за умови, що всі промахи і помилки вимірювальної системи і методики вимірювань виключені. Кількісним виразом достовірності в даному випадку є довірча вірогідність. Слід розрізняти ці два значення одного і того ж терміну.
ЛЕКЦІЯ 18. ПЛК ДЛЯ СИСТЕМ АВТОМАТИЗАЦІЇ.
18.1. Типи ПЛК.
18.2. Архітектура.
18.3. Характеристики ПЛК.
18.4. Пристрої збору даних.
18.1. Типи ПЛК.
Для класифікації величезної різноманітності контролерів, що існують в даний час, розглянемо їх істотні відмінності.
Основним показником ПЛК є число каналів введення-виводу. За цією ознакою ПЛК діляться на наступні групи:
нано- ПЛК (менше 16 каналів);
мікро- ПЛК (більше 16, до 100 каналів);
середні (більше 100, до 500 каналів);
великі (більше 500 каналів).
По розташуванню модулів введення-виводу ПЛК бувають:
моноблочними, в яких пристрій вводу-виводу не може бути видалене з контролера або замінене на інше. Конструктивно контролер є єдиним цілим з пристроями введення-виводу (наприклад, одноплатний контролер). Моноблочний контролер може мати, наприклад, 16 каналів дискретного введення і 8 каналів релейного виводу;
модульні, такі, що складаються із загальної корзини (шасі), в якій розташовуються модуль центрального процесора і змінні модулі вводу-виводу. Склад модулів вибирається користувачем залежно від вирішуваного завдання. Типове число слотів для змінних модулів — від 8 до 32;
розподілені (з видаленими модулями вводу-виводу), в яких модулі введення-виводу виконані в окремих корпусах, з'єднуються з модулем контролера по мережі (зазвичай на основі інтерфейсу RS-485) і можуть бути розташовані на відстані до 1,2 км. від процесорного модуля.
Часто перераховані конструктивні типи контролерів комбінуються, наприклад моноблочний контролер може мати декілька знімних плат; моноблочний і модульний контролери можуть бути доповнені видаленими модулями введення-виводу, щоб збільшити загальну кількість каналів.
По конструктивного виконання і способу кріплення контролери діляться на:
панельні (для монтажу на панель або дверці шафи);
для монтажу на DIN-рейку усередині шафи;
для кріплення на стіні;
стоєчні — для монтажу в стійці;
безкорпусні (зазвичай одноплатні) для застосування в спеціалізованих конструктивах виробників устаткування (ОЄМ — Original Equipment Manufacturer).
По області застосування контролери діляться на наступні типи:
універсальні загальнопромислові;
для управління роботами;
для управління позиціонуванням і переміщенням;
комунікаційні;
ПІД-контролери;
спеціалізовані.
За способом програмування контролери бувають:
програмовані з лицьової панелі контролера;
програмовані переносним програматором;
програмовані за допомогою дисплея, миші і клавіатури;
програмовані за допомогою персонального комп'ютера.
Контролери можуть програмуватися на мові МЕК 61131-3, використовуються також мови З, С#, Visual Basic.
Контролери можуть містити в своєму складі модулі вводу-виводу або не містити їх. Прикладами контролерів без модулів вводу-виводу є комунікаційні контролери, які виконують функцію міжмережевого шлюзу, або контролери, одержуючі дані від контролерів нижнього рівня ієрархії АСОВІ ТП.
18.2. Архітектура.
Архітектурою контролера називають набір його основних компонентів і зв'язків між ними. Типовий склад ПЛК включає центральний процесор, пам'ять, мережеві інтерфейси і пристрої введення-виводу (рис. 18.1). Іноді ця конфігурація доповнюється пристроєм для програмування і пультом оператора, пристроями індикації, рідше — принтером, клавіатурою, мишею або трекболом.
Рис. 18.1. Типова архітектура ПЛК
Процесорний модуль включає мікропроцесор (центральний процесорний пристрій — ЦПУ), що запам'ятовують пристрої, годинник реального часу і сторожовий таймер.
Основними характеристиками мікропроцесора є розрядність (у ПЛК використовуються 8-, 16- і 32-розрядні мікропроцесори), тактова частота, архітектура, наявність операцій з плаваючою крапкою, типи підтримуваних портів вводу-виводу, температурний діапазон працездатності і споживана потужність.
Для контролерів, що виконують інтенсивну математичну обробку даних, важлива наявність математичного співпроцесора (допоміжного процесора, що виконує операції з плаваючою крапкою) або сигнальних процесорів, в яких операції типу У=ав+x виконуються за один такт. Сигнальні процесори дозволяють прискорити виконання операцій згортки або швидкого перетворення Фурьє.
Ємність пам'яті визначає кількість змінних (тегів), які можуть бути оброблені в процесі функціонування ПЛК. У мікропроцесорах час доступу до пам'яті є одним з істотних чинників, що обмежують швидкодію. Тому пам'ять ділять на декілька рівнів ієрархії залежно від частоти використання що зберігаються в ній даних і швидкодії. Ієрархія пам'яті відноситься до істотних характеристиками архітектури процесора, оскільки вона дозволяє понизити негативний вплив повільної пам'яті на швидкодію мікропроцесора.
Моноблочні і модульні контролери використовують, як правило, паралельну шину для обміну даними з модулями введення-виводу, що дозволяє на порядок підвищити швидкодію їх опиту в порівнянні з послідовною шиною. Паралельні шини можуть бути стандартними (ISА, Рс/104, Рсi, Соmctрс1, VМЕ, СХМ) або часнофірмовими. Послідовна шина контролера (на основі інтерфейсу RS-485) використовується для підключення до нього видалених (розподілених) модулів вводу-виводу.
Програмування контролерів малої потужності виконується за допомогою кнопок, розташованих на лицьовій панелі або за допомогою переносного пульта для програмування. Як пульт останнім часом використовується комп'ютер формату «ноутбук». Програмування могутніх контролерів виконується за допомогою персонального комп'ютера, на якому встановлюється спеціальне програмне забезпечення, наприклад Соdesys або ISаGRАF, що виконує трансляцію технологічної мови стандарту МЕК 61131-3 у виконуваний код процесора, який завантажується в ПЗП ПЛК, наприклад, через порт Еthernet.
Сторожовим таймером (Wathdog Тimer— WDT) є лічильник, який рахує імпульси тактового генератора і в нормальному режимі періодично скидається (перезапускається) працюючим процесором. Якщо процесор «зависає», то сигнали скидання не поступають в лічильник, він продовжує вважати і досягши деякого порогу виробляє сигнал «Скидання» для перезапуску «завислого» процесора.
Годинником реального часу (РВ) є кварцевий годинник, який харчується від батареї і тому продовжує йти при вимкненому ПЛК. Годинник РВ використовується, наприклад, для управління вуличним освітленням залежно від часу доби, в системах охорони об'єктів і інших випадках, коли необхідна прив'язка даних або подій до астрономічного часу.
Процесорний модуль ПЛК виконує наступні завдання:
збирає дані з модулів введення в пам'ять і посилає дані з пам'яті в модулі виводу;
виконує обмін даними з пристроєм для програмування контролера;
видає мітки годинника реального часу;
здійснює обмін даними з промисловою мережею;
реалізує стек протоколів промислової мережі (для цієї мети можуть використовуватися допоміжні комунікаційні процесори);
виконує початкове завантаження і виконання операційної системи;
виконує завантажувальний модуль призначеної для користувача програми системи автоматизації;
управляє актами обміну з пам'яттю.
До основних характеристик процесорного модуля відносяться:
тип операційної системи (Windowsз ЦЕ, Linux, DOS, 0S-9, QNX і ін.);
наявність виконавчого середовища для стандартної системи програмування на мовах МЕК 61131-3;
типи підтримуваних інтерфейсів (RS-232, RS-422, RS-485, Саn, USВ, Еthernet і ін.);
типи підтримуваних мереж (Моdbus RTU, Моdbus ТСР, Еthernet, Ргойьіз, Саnopen, DeviceNet ін.);
можливість підключення пристроїв індикації або інтерфейсу оператора (світлодіодного або ЖКИ індикатора, клавіатури, миші, дисплея з інтерфейсами VGА, DVI або Смos, LVDS, трекбола і ін.);
розрядність (8, 16, 32 або 64 бита);
тактова частота мікропроцесора і пам'яті;
час виконання команд;
об'єм, ієрархія і типи пам'яті (ОЗУ, кеш, ПЗУ-ФЛЕШ, знімна флеш
і др.);
типи вбудованих функцій (ПІД-регулятор, лічильники, ШИМ, алгоритми позиціонування і управління рухом і ін.);
бренд виробника (Intel, Амd, Аtmel, RealLab і ін.).
Швидкодію процесорного модуля ПЛК зазвичай оцінюють за часом виконання логічних команд, оскільки вони найбільш поширені при реалізації алгоритмів управління.
Восьмирозрядні мікропроцесори користуються великим успіхом в автономних ПІД-контролерах і мікро-ПЛК для нескладного алгоритмічного управління верстатами, теплицями, невеликими технологічними апаратами, як міжмережеві шлюзи. Їх гідністю є висока надійність, пов'язана з граничною простотою програмного забезпечення.
18.3. Характеристики ПЛК.
Продуктивність ПЛК оцінюється по наступних параметрах:
тривалість контролерного циклу (період прочитування значень з каналів введення, обробки в процесорі і записі в канали виводу);
час виконання команд (окремо логічних, з фіксованою і з плаваючою крапкою);
пропускна спроможність шини між контролером і модулями введення-виводу;
пропускна спроможність промислової мережі;
час циклу опиту всіх контролерів в одномайстерній мережі або цикл звернення маркера для багатомайстерних мереж з маркером;
час реакції.
Контролер в системах автоматизації виконує циклічний алгоритм, що включає введення даних і розміщення їх в ОЗУ, обробку даних і вивід.
Тривалість контролерного циклу (його ще називають робочим циклом) залежить від кількості модулів вводу-виводу і наявності в них замаскованих (виключених з процедури обміну) входів-виходів, тому розраховується для кожної конфігурації автоматизованої системи окремо. При інтенсивній математичній обробці даних (наприклад, при цифровій фільтрації, інтерполяції або ідентифікації об'єкту управління в режимі нормального функціонування системи) тривалість контролерного циклу істотно залежить від швидкодії процесорного модуля. У контролерний цикл входить також обслуговування апаратних ресурсів ПЛК (забезпечення роботи системних таймерів, оперативне самотестування, індикація стану), контроль часу циклу, мережевий обмін, управління багатозадачністю, відображення процесу виконання програми на дисплеї і тому подібне
Вимоги до тривалості контролерного циклу істотно залежать від області застосування ПЛК. При управлінні тепловими процесами тривалість циклу може складати одиниці і десятки секунд, в завданнях для управління верстатами вона вимірюється мілісекундами, при опиті датчиків температури на елеваторі контролерний цикл вимірюється цілодобово.
Час реакції контролера — це інтервал часу від моменту появи дії на систему (з боку модулів введення або оператора) до моменту вироблення відповідної реакції.
У контролерах для відповідальних застосувань можуть бути передбачені наступні функції самодіагностики:
виявлення помилок центрального процесора;
сигналізація про спрацьовування сторожового таймера;
виявлення відмови батареї або джерела живлення;
виявлення збою пам'яті;
перевірка програми користувача;
виявлення виходу з ладу запобіжника;
виявлення обриву або короткого замикання (к.з.) в ланцюзі датчика і навантаження.
Можливість гарячої заміни елементів системи (тобто без відключення живлення) досягається одночасно апаратними і програмними засобами.
Надійність контролерів характеризується напрацюванням на відмову, яке визначається як відношення сумарного часу працездатного стану контролера до математичного очікування числа його відмов протягом цього часу (ГОСТ 27.002-89) або напрацюванням повністю, — часом від початку експлуатації до першої відмови.
Перешкодостійкість контролера зазвичай оцінюється по його відповідності комплексу стандартів по електромагнітній сумісності.
Промислові контролери використовують гальванічну ізоляцію для усунення паразитних зв'язків по загальному дроту, землі і для захисту устаткування від високої напруги.
Ступінь захисту від дії навколишнього середовища, забезпечувана корпусом контролера, класифікується ГОСТ 14254-96. Для позначення ступеня захисту використовуються дві букви «IР», за якими слідують дві цифри. Перша цифра позначає ступінь захисту виробу від попадання всередину твердих сторонніх тіл, друга цифра позначає ступінь захисту виробу від попадання води. Розшифровка позначень приведена в табл. 18.1, приклади корпусів показані на рис. 18.2.
Таблиця 18.1 Значень цифр в позначенні IР ступеня захисту
Перша цифра |
Ступінь захисту |
Друга цифра |
Ступінь захисту |
0 |
Захист відсутній |
0 |
Захист відсутній |
1 |
Захист від твердих тіл розміром більше 50 мм |
1 |
Захист від крапель води |
2 |
Захист від твердих тіл розміром більше 12 мм |
2 |
Захист від крапель води при нахилі до 15° |
3 |
Захист від твердих тіл розміром більше 2,5 мм |
3 |
Захист від дощу |
4 |
Захист від твердих тіл розміром більше 1 мм |
4 |
Захист від бризок |
5 |
Захист від пилу |
5 |
Захист від водяних струменів |
6 |
Пиленепроникність |
6 |
Захист від хвиль води |
|
|
7 |
Захист при зануренні у воду |
|
|
8 |
Захист при тривалому зануренні у воду |
При виборі контролера бажано оцінювати ступінь його відповідності ідеології «відкритих систем», щоб не потрапити в залежність від одного постачальника і мати можливість модифікувати систему в міру необхідності.
Рис. 18.2. Контролери в корпусах із ступенем захисту IP20 (a) і IP66 (б).
18.4. Пристрої збору даних.
Системи збору даних знаходять застосування для наукових досліджень, управління виробничими процесами, моніторингу в промисловості, медицині, метеорології, космонавтиці і інших областях людської діяльності.
Основною відмінністю систем збору даних від ПЛК є відсутність в них алгоритму управління, тобто відсутність необхідності в могутньому контролері і мові МЕК 61131-3, а також наявність великого об'єму пам'яті для ведення архіву. Хоча системи збору даних можна побудувати на будь-якому ПЛК, але у зв'язку з вказаними вище особливостями вони займають окремий сегмент ринку і їх виділяють в окрему групу засобів автоматизації.
Системи збору даних можуть застосовуватися в реальному часі, наприклад для моніторингу (спостереження) різних процесів, ідентифікації аварійних ситуацій в технологічних процесах, а також можуть застосовуватися для архівації даних, коли їх обробка відокремлена від процесу збору невизначеним інтервалом часу.
Архівуючі системи збору даних (логгери, самописці) можуть бути автономними пристроями, побудованими на основі мікроконтролера (наприклад, бортові самописці літаків, електронні лічильники тепла або електроенергії, портативні електрокардіографи). Дані, зібрані логгерами, для обробки переносяться в комп'ютер за допомогою, наприклад, USB-флеш-пам’яті або через послідовний інтерфейс.
Системи збору даних, побудовані на основі комп'ютера, зазвичай є стаціонарними і використовують універсальне програмне забезпечення, таке як Матlab, LABVIEW, Мs Еxcel, яке дозволяє не тільки зібрати дані, але і обробити їх.
Для реєстрації швидкоплинучих процесів (з необхідною частотою відліків більше 1 Мгц) використовуються системи з паралельною шиною, зокрема плати для шини Рсi комп'ютера. Комп'ютерні плати мають обмежену кількість входів, що визначається комп'ютерним конструктивом, і вимагають зовнішніх клемних блоків для під'єднання джерел сигналу, створюючи незручності при монтажі системи.
Для реєстрації повільних процесів зручніше зовнішні пристрої, що підключаються до комп'ютера через СОМ, USВ або Еthernet-порт. Зовнішні пристрої відрізняються також меншим рівнем шумів, тоді як плати, що вставляються в комп'ютер, схильні до впливу наведень від цифрових ланцюгів комп'ютера.
Система збору даних може бути розподіленою, коли пристрої введення розподілені територіально по об'єкту збору даних, а отримані дані сходяться до єдиного накопичувача і обробника даних за допомогою мережевих технологій.
Для типових завдань збору даних промисловістю випускаються пристрою з невеликим числом входів (від декількох десятків до декількох сотень). Для великих систем (від одиниць до сотень тисяч входів) розробляються спеціалізовані системи.
Входи систем збору даних можуть бути універсальними (потенційними і струмовими), або спеціалізованими (наприклад, для термопар, для термоперетворювачів опору або для тензодатчиків). Системи із спеціалізованими входами економічно ефективніші для споживача. Універсальні входи використовуються спільно з вимірювальними перетворювачами фізичних величин в струм або напругу. Існують також системи з гібридними входами, наприклад, коли декілька входів приймають сигнали термопар, інші входи — сигнали тензодатчиків, треті, — сигнали термометрів опору і так далі.
Входи можуть бути диференціальними, поодинокими, цифровими або дискретними (двійковими). Диференціальні входи дозволяють ефективніше пригнічувати зовнішні перешкоди, що наводяться на кабель, передавальний сигнал від датчика до модуля введення. Для передачі сигналу найчастіше використовується напруга в діапазоні 0...±5В, 0...±10В або струм 0...20мА, 4...20мА. Сигнали напруги виробляються джерелами напруги і мають високу перешкодостійкість до ємкісних наведень, сигнали струму виробляються джерелами струму і стійкі до індуктивних наведень. Дискретні входи приймають логічні сигнали («0» або «1»), які поступають від кінцевих вимикачів, датчиків охоронної або пожежної сигналізації, електромагнітних реле, датчиків наявності напруги і тому подібне Цифрові входи приймають сигнали від пристроїв з цифровим виходом, наприклад від цифрових датчиків температури.
Основними параметрами систем збору даних є кількість каналів, похибка, динамічна похибка, час встановлення або смуга пропускання, що вирішує здатність, ефективне число розрядів, частота дискретизації, наявність гальванічної ізоляції входів і інтерфейсу, наявність захисту від недбалого використання, перевантажень і перегріву.
Системи збору даних зазвичай мають 4, 8, 16, 32, 64... входу, які опитуються по черзі або одночасно. Системи з одночасним опитом складаються з ідентичних каналів, які виконують аналого-цифрове перетворення вхідної величини паралельно, тобто одночасно для всіх канат лов. Такі системи зустрічаються рідко унаслідок високої вартості. Зазвичай опит входів виконується по черзі, за допомогою комутатора. Тому дані різних каналів виявляються зрушеними за часом на деяку затримку, рівну відношенню періоду опиту до кількості каналів.
Прикладом системи збору даних може служити система, побудована за модульним принципом, тобто систему з необхідною кількістю входів можна зібрати з модулів — окремих «будівельних» блоків. Модулі з'єднуються між собою за допомогою промислового інтерфейсу RS-485 і розташовуються або загалом монтажній шафі, або розподілені по об'єкту збору даних так, щоб зменшити довжину кабелю від датчика до модуля. Зібрані дані в цифровій формі передаються по промисловій мережі в центральний комп'ютер або контролер. Модулі можуть працювати в стандартних мережах Моdbus RTU або в стандартній де-факто мережі DCON, мають відкритий протокол обміну.
Наближення модулів введення до датчиків має декілька переваг. По-перше, скорочується кількість проводів, оскільки цифровий інтерфейс RS-485 має тільки два дроти, а передає дані від великої кількості модулів. По-друге, знижується потужність наведених перешкод завдяки скороченню довжини проводів з аналоговими сигналами, спрощується технічне обслуговування і діагностика системи.
ЛЕКЦІЯ 19. КОМП'ЮТЕР В СИСТЕМАХ АВТОМАТИЗАЦІЇ
19.1 Комп'ютер у якості контролера
19.2 Комп'ютер для спілкування з оператором
19.3 Прислові комп'ютери
Незважаючи на існуючі традиції застосування|вживання| ПЛК для вирішення проблем автоматизації, багато задач набагато ефективніше розв'язуються за допомогою персональних комп'ютерів замість контроллера. Комп'ютер може бути використаний також як пульт|пульт-панель| оператора (диспетчера) або виконувати одночасно функції контролера і пульта оператора. В задачах автоматизації застосовують як офісні так і промислові комп'ютери.
| 19.1. Комп'ютер як контроллер
Комп'ютер може бути перетворений на повноцінний контроллер, якщо на нього встановити:
систему програмування контроллерів (наприклад, CoDeSys| або ISa-GRAF|);
електронний диск замість звичайного|звичного| жорсткого диска;
плати введення-виведення або зовнішні модулі введення-виведення;
сторожовий таймер.
Електронним диском є ПЗП, що складається з мікросхем флеш-пам`яті| і конструктивно виконане у вигляді корпусу звичайного|звичного| жорсткого диска формату 2.5", 3.5" або 5.25" із|із| стандартними інтерфейсами IDE| і SCSI|. Основною достоїнством електронного диска є|з'являється,являється| його висока стійкість до вібрацій, відсутність акустичного шуму, висока надійність, низьке енергоспоживання, мала вага.
Плати і зовнішні модулі введення-виведення для комп'ютера випускаються багатьма незалежними виробниками, що стало можливим завдяки наявності стандартів на конструктивного виконання і шини як промислових, так і офісних комп'ютерів.
Сторожовий таймер служить для перезавантаження комп'ютера у разі|в разі| його зависання. Відмітимо|помітимо|, що комп'ютер має набагато більше, ніж контроллер, час перезавантаження при використанні офісної операційної системи Windows|.
До достоїнств персональних комп'ютерів (ПК) при їх використанні як контроллери відносяться:
на порядок|лад| велика місткість оперативної пам'яті;
наявність жорсткого диска з|із| практично необмеженою місткістю;
на порядки|лади| вища швидкодія;
швидкий розвиток апаратного забезпечення (модернізація комп'ютерів відбувається|походить| кожні 4...6 місяця, контроллерів — через 3...5 років);
у декілька разів нижча ціна;
наявність великого числа фахівців|спеціалістів|, що добре володіють персональним комп'ютером;
підтримка комп'ютером DVD| і CD-ROM| дисководів, принтера, звукових карт, систем розпізнавання і синтезу мови|промови|, систем розпізнавання образів|зображень| і тексту, а також інших засобів|коштів|, недоступних для контроллера;
легка заміна комп'ютера на потужніший без зміни програмного забезпечення;
підтримка клавіатури, миші і монітора;
можливість|спроможність| комплектації комп'ютера з|із| частин|часток|, вироблюваних великим числом незалежних виробників;
можливість|спроможність| створення|створіння| всієї системи автоматизації за допомогою SCADA-пакетов| (наприклад, MASTERSCADA|, Trace| Mode|), без залучення систем програмування контроллерів і засобів|коштів| зв'язку контроллера з|із| комп'ютером;
•наявність стандартів на шини, що забезпечує велике число незалежних постачальників стандартних комп'ютерних плат.
Хоча промислові комп'ютери, наближаючись за умовами експлуатації до контроллерів, втрачають деякі з достоїнств ПК (такі, як швидкодія, швидкість|прудкість| модернізації, низька ціна), інші достоїнства ПК роблять|чинять| їх широко поширеними і затребуваними|зажадати| в промисловості.
З|із| розвитком промислових комп'ютерів і контроллерів відбувається|походить| стирання відмінностей між ними. Проте|тим не менше| залишається низка відмінностей|відзнак|, які вже не можна назвати|накликати| істотними|суттєвими|, але|та| які зустрічаються найчастіше. Типовий комп'ютер, на відміну від типового контроллера, має:
мишу, клавіатуру і монітор;
жорсткий диск;
вузький температурний діапазон (від 0 до -1-50 °С);
операційну систему Windows| (іноді|інколи| використовують ОС реального часу Windows| СЕ, QNX|, RTOS|);
вентилятор для охолодження процесора і блоку живлення|харчування|.
У промислових комп'ютерах іноді|інколи| використовують операційну систему реального часу, проте|однак| вона не завжди є|з'являється,являється| необхідною навіть в системах автоматичного управління. Наприклад, системи управління мікрокліматом, що серійно випускаються, в промислових теплицях «Агротерм» фірми|фірма-виготовлювача| НІЛ АП (www.RealLab.ru) упродовж багатьох років чудово зарекомендували себе, реалізовуючи декілька десятків контурів ПІД-регулювання| при одночасній архівації декількох сотень параметрів. Всі перераховані задачі розв'язуються за допомогою всього одного персонального комп'ютера з|із| ОС Windows| ХР і модулів введення-виведення серії RealLab|! [497]. Недоліком|нестачею| комп'ютерів з|із| ОС Windows| є|з'являється,являється| великий час перезавантаження системи при її зависанні.
19.2. Комп'ютер для спілкування з|із| оператором
Найбільш типовим застосуванням|вживанням| ПК в завданнях|задачах| автоматизації є|з'являється,являється| організація робочого місця|місце-милі| оператора (диспетчера). Комп'ютер тут виконує роль людино-машинного інтерфейсу (ЛМІ). Для поліпшення|покращання| эргономічності| і ефективності роботи оператора використовують SCADA-пакеты| з використанням звуку, анімації, високоякісної кольорової графіки і безліччю інтелектуальних функцій, що полегшують роботу оператора.
Для створення|створіння| ЛМІ використовують монітори з|із| сенсорним екраном, плазмові панелі, проектори екрану комп'ютера на стіну, трекбол|, звукові колонки, сирени, клавіатури із|із| ступенем|мірою| захисту від IP-20| до IP-67|.
Трекбол аналогічний комп'ютерній миші, яка перевернута кулькою вгору|угору|, і має розмір кульки від 1 до 4...6 см в діаметрі. Трекбол зручний тим, що при його використанні зап'ясток руки залишається нерухомим, він не вимагає багато місця|місце-милю| і може бути використаний в умовах трясіння і вібрації.
Сенсорний екран є скляною або пластиковою пластиною, прикріпленою|скріпляти| поверх екрану звичайного|звичного| монітора. Для визначення координат дотику екрану пальцем оператора використовують в основному чотири фізичні принципи: поглинання пальцем енергії поверхневих|поверхових,зверхніх| акустичних хвиль, зміна ємнісного|місткість| струму|току| при дотику екрану, зміна опору між двома прозорими провідними поверхнями при натисканні пальцем і принцип затінювання інфрачервоних променів, витікаючих з|із| випромінювачів по периметру екрану. Найбільшого поширення набули резистивні| і ємнісні|місткість| сенсорні екрани.
У промисловій автоматизації використовуються також панелі оператора, які замість клавіатури мають декілька спеціалізованих кнопок, а замість монітора — мініатюрний дисплей, на якому уміщається всього декілька рядків тексту або графіки. Такі пристрої|устрої| підключаються до СОМ-ПОРТУ комп'ютера.
Для монтажу на панель (на дверцятах шафи, на стіну) використовують панельні комп'ютери, які об'єднують в одному конструктиві процесорний блок, дисплей з|із| сенсорним екраном і клавіатуру.
19.3. Промислові комп'ютери
Промислові комп'ютери істотно|суттєвий| відрізняються від офісних по конструктивних ознаках, проте|однак| використовують ті ж мікропроцесори і архітектуру. Основними відмінностями|відзнаками| є|з'являються,являються| наступні|слідуючі|:
роз'єми для змінних плат встановлюються на пасивній об'єднувальній панелі, а не на материнській платі;
для змінних плат використовуються надійні штирькові| роз'єми;
для зміни плат не потрібно розкривати корпус;
використовуються спеціалізовані промислові комп'ютерні шини COMPACTPCI|, ADVANCEDTCA|, COMExpress|, VME|, VXI ;
замість жорсткого диска може бути використана флеш-пам`ять|;
наявність сторожового таймера;
застосування|вживання| вентиляторів із|із| змінним пиловловлюючим фільтром або відсутність вентиляторів;
міцна несуча конструкція, з|із| надійним кріпленням плат пружними планками з|із| гвинтовими затискачами;
застосування|вживання| блоків живлення|харчування| підвищеної надійності, із|із| захистом від к.з. по виходу і з|із| розширеним діапазоном мережевої|мережної| напруги|напруження| (від 100 до 250 В);
резервування блоків живлення|харчування|;
наявність незалежної оперативної пам'яті (з|із| акумуляторним живленням|харчуванням|), яка зберігає дані при збоях або зникненні живлення|харчування|;
у одному конструктиві і на одній об'єднувальній шині може розташовуватися декілька комп'ютерних систем;
наявність знімної флеш-пам`яті|;
застосування|вживання|, окрім|крім| Windows|, операційних систем DOS|, Linux| і операційних систем реального часу.
Конструктивного виконання промислового комп'ютера забезпечує захист від пилу, вологи, вібрації, електромагнітних наведень і полегшує технічне обслуговування. Для роботи в діапазоні температур від -40 до -1-70 °С використовується індустріальна елементна база з|із| розширеним температурним діапазоном або, якщо це можливо, штучний підігрів|підігрівання| і примусове охолодження.
Монтаж промислового комп'ютера може бути виконаний в стандартній 19-дюймовій стійці|стойці|, на панелі, на столі, на стіні, на DIN-рейці| і в спеціалізованому конструктиві. Органи управління промисловим комп'ютером (кнопка скидання|скиду|, живлення|харчування| і клавіатура) можуть закриватися|зачиняти| дверцями з|із| ключем|джерелом|.
За швидкодією і місткості пам'яті промислові комп'ютери завжди поступаються офісним, що пов'язане з великою тривалістю розробки нових модифікацій: за час розробки промислового комп'ютера встигає|устигає| змінитися декілька поколінь офісних ПК. Це пояснюється|тлумачить| незрівнянно меншою ємкістю|місткістю| ринку промислових комп'ютерів в порівнянні з офісними, яка визначає розмір інвестицій в нові проекти.
Переважна більшість промислових комп'ютерів відносяться до маги-стрально-модульних| систем. Вони не мають об'єднувальної материнської плати, замість неї використовується пасивна крос-плата (сполучна плата), така, що містить|утримує| тільки|лише| роз'єми, з'єднані спільною магістраллю. Всі плати комп'ютера вставляються в корпус спереду і закріплюються планками з|із| амортизаторами для підвищення вібростійкої. Це зроблено для зручності заміни плат при обслуговуванні. Плати з'єднуються з|із| кросс-платой| за допомогою штирькових| роз'ємів, які набагато надійніше за друковані роз'єми в офісних ПК. Число слотів для змінних плат перевищує 10.
Для промислових комп'ютерів існує декілька стандартів, спрямованих на забезпечення відкритості таких систем. Відкриті|відчиняти| стандарти для шин промислових комп'ютерів розробляє консорціум PICMG| (PCI| Industrial| Computer| Manufacturers| Group|), до складу якого входять більше 450 компаній комп'ютерної індустрії і телекомунікації. Консорціум був організований в 1994 р., результатами його роботи є|з'являються,являються| стандарти PCI|, COMPACTPCI|, ADVANCEDTCA|, COMExpress| і ін.
Стандарт PICMG| 1.0 дозволяє розмістити до 20 плат розширення в одному корпусі і передбачає застосування|вживання| шин PCI| і ISA|, які мають загальну|спільну| пропускну спроможність 538 Мбайт/с.
Стандарт PICMG| 1.3 базується на послідовній шині PCI| Express|. У основі PCI| Express| лежить послідовна передача даних по декількох незалежних послідовних каналах передачі (від 1 до 32), що виключає необхідність синхронізації бітів в передаваному слові, як в паралельних шинах. Кожен канал PCI| Express| складається з двох односпрямрваних|однонапрямлених| ліній передачі (по одній в кожному напрямі|направленні|) і використовує фізичний рівень стандарту LVDS| (Low| Voltage| Differential| Signaling| — низьковольтна диференціальна передача сигналу), який заснований на балансному способі передачі сигналу по крученій парі проводів. Тактова частота каналу складає 2,5 Ггц, що забезпечує пропускну спроможність однієї лінії передачі 250 Мбайт/с і всієї шини до 8 Гбайт/с в кожному напрямі|направленні| при кількості ліній 32. Застосування|вживання| шини PCI| Express| дозволяє встановити відразу декілька портів Ethernet| 1000BASE-T| на одній процесорній платі і збільшити число USB| портів 10.Шина VMEbus| була розроблена на початку 80-х років, але|та| досі використовується достатньо|досить| широко завдяки існуванню великого числа виробників і вибору плат. VMEbus| плати мають розмір для конструктиву «Євромеханіка» (див. нижчий). Пропускна спроможність 16-| або 32-розрядної шини VMEbus| складає 40 Мбіт/с. Існує також 64-розрядна версія шини з|із| пропускною спроможністю 80 Мбіт/с. Для автоматизованих вимірювальних систем використовується шина VXI (VME| extension| for| Instrumentation|), яка є|з'являється,являється| модифікацією шини VMEbus|.
Стандарт «Євромеханіка» встановлює розміри і типи|типів| друкованих плат, модулів, блоків, субблоків, 19-дюймових шаф і стійок|стойок|. У конструктиві «Євромеханіка» для передачі інформації між окремими платами найчастіше використовують шину Compact| PCI| (cPCI|), яка розроблена на основі звичайної|звичної| PCI| (Peripheral| Component| Interconnect|) шини версії 2.1. Від звичайної|звичної| шини PCI| вона відрізняється в два рази великим числом підтримуваних слотів (до 8-ми). Тактова частота шини складає 33 або 66 Мгц, ширина — 32 або 64 бита, пропускна спроможність — 133 або 266 Мбайт/с. Конструктивно плати з|із| шиною Compact| PCI| є єврокартами заввишки 3U| (100x160 мм) з|із| одним роз'ємом або 6U| (233x160 мм) з|із| двома роз'ємами. Контакти живлення|харчування| в роз'ємах зроблені довшими, ніж сигнальні, тому при заміні плати живлення|харчування| подається раніше, ніж сигнали. Це робить|чинить| можливою «гарячу заміну» плат при відповідному доопрацюванні|доробці| програмного забезпечення. У системах автоматизації вимірювань|вимірів| широко використовується шина PXI| (PCI| extensions| for| Instrumentation|), розроблена фірмою|фірма-виготовлювачем| National| Instruments| і використовувана з|із| тими ж конструктивами|, що і Compact| PCI|.
Комп'ютери стандарту PC/104 є|з'являються,являються| найменшими в класі магістрально-модульних систем, розмір плати складає 90x96 мм. Перші вироби на основі цього стандарту з'явилися|появлялися| в 1992 р. на транспорті і в системах оборони для управління безпілотними літальними апаратами, в ракетних комплексах, бортових системах контролю і навігації. Стандарт PC/104 використовує шину ISA|, але|та| із|із| зміненими типами роз'ємів (використовується 104 контакти) і характеристиками навантажень ліній шини. У 1997 р. консорціум PC/104 запровадив специфікацію PC/104-Plus, в яку був доданий|добавляти| інтерфейс PCI| з|із| 120 контактами. Пізніше були запроваджувати стандарти PC/104+, PCI-104| і PCI/104express з|із| шиною PCI-Express|. Плати стандартів PC/104 збираються «бутербродом» і скріпляються втулками і гвинтами. Такий конструктив використовується для невеликих систем, звичайне|звичне| число плат не перевищує 4-х.
Широкого поширення в промисловій автоматизації набули також одноплатні|однопалатні| комп'ютери. Основною їх достоїнством є|з'являється,являється| відсутність роз'ємів, малі габарити, наприклад 90x96 мм для стандарту PC/104 або з|із| форм-фактором 2,5" (100x66 мм), 3,5" (102x144 мм) або 5,25" (260x180 мм), мале енергоспоживання.
Одним з варіантів розширення функціональних можливостей|спроможностей| промислових комп'ютерів є|з'являється,являється| застосування|вживання| мезонінних плат. Мезонінною називається плата, яка мається в своєму розпорядженні паралельною основною і з'єднується з|із| нею роз'ємами. Стандарти на мезонінну технологію підтримуються консорціумом GROUPIPC|
.
ЛЕКЦІЯ 20. ПРИСТРОЇ ВВОДУ АНАЛОГОВИХ СИГНАЛІВ.
20.1. Введення аналогових сигналів
20.2. Структура модулів вводу.
20.3. Модулі вводу струму і напруги
Пристрої (модулі) вводу-виводу є інтерфейсом між процесором ПЛК і реальним миром. У ідеальному випадку було б бажано мати в процесорі значення зміряних сигналів у будь-який момент часу. Проте оскільки кількість каналів вводу-виводу в деяких системах може досягати тисяч, а вимірювальні канали завжди мають обмежену пропускну спроможність, зміряні значення поступають в процесор в дискретні моменти часу.
Сучасні модулі вводу-виводу можуть виконувати окрім функцій введення деяку обробку інформації, що вводиться, і додаткові функції: компенсацію температури холодного спаю термопар, лінеаризацію нелінійних датчиків, діагностику обриву датчика, автоматичне калібрування, ПІД-регулювання, управління рухом. Перенесення частини функцій контролера в модулі введення-виводу є сучасною тенденцією, направленою на збільшення ступеня розпаралелювання завдань управління, забезпечення незалежності локальних модулів (які по своїх функціях наближаються до ПЛК) і зменшення потоку інформації між паралельно працюючими процесорами в модулях введення-виводу.
20.1. Введення аналогових сигналів
Різноманітність фізичних явищ породжує різноманітність датчиків, для кожного з яких існує відповідний пристрій введення. Для уніфікації модулів введення використовують пристрої нормування сигналів, які перетворять вимірювану фізичну величину в стандартний електричний сигнал, відповідний ГОСТ 26.011-80 і ГОСТ Р 51841-2001. Фактично в промисловій автоматизації використовуються наступні стандартні діапазони аналогових сигналів: 0...10В, 0...±10В, 1...5В і 4...20мА, 0...20мА. ГОСТ Р 51841-2001 не рекомендує застосовувати діапазон 0...20 мА в нових розробках. Вхідний опір потенційних входів повинен бути не менше 10кОм для діапазону 0... 10В і 0... ±10В, не менше 5кОм для діапазону 1...5В і не більш 300Ом для діапазону 4...20мА. Застосування стандарту дозволяє виготовити всього один тип універсального пристрою введення із стандартними діапазонами для всіх типів датчиків із стандартними вихідними сигналами. Проте для таких датчиків, як термопари, термоперетворювачі опору, тензорезистори, через їх широку поширеність нормуючі перетворювачі вбудовують в самі модулі вводу. Тому, окрім універсальних модулів вводу, набули поширення спеціалізовані модулі введення сигналів термопар, термоперетворювачів опору і тензорезисторів.
20.2. Структура модулів вводу.
Розглянемо типову структуру модулів вводу аналогових сигналів (рис. 20.1).
Основною частиною модуля вводу є аналого-цифровий перетворювач (АЦП). Зазвичай використовують одні АЦП для введення декількох (зазвичай 8 або 16) аналогових сигналів. Для підключення джерел сигналу до АЦП використовується аналоговий комутатор на МОП-ТРАНЗІСТОРАХ. Введення декількох сигналів виконується послідовно в часі. У випадках, коли необхідне одночасне введення, використовують модулі, в яких кожен канал має свій АЦП.
У модулях вводу зазвичай використовують диференціальні входи, які дозволяють виконати більш перешкодозахисний канал передачі аналогового сигналу в порівнянні з одиночними (не диференціальними) входами. Деякі модулі дозволяють програмно задавати конфігурацію входів: диференціальні або поодинокі.
Рис. 20.1. Структура модуля NL-4RTD для введення сигналів термоперетворювачів опору
Вхідні ланцюги пристроїв вводу прийнято захищати від статичної електрики, від підвищеної напруги, від зміни полярності. Для захисту використовують спеціальні мікросхеми захисту, в яких активним елементом є МОП-ТРАНЗІСТОРНИЙ ключ. При підвищенні напруги вище допустимого ключ закривається, оберігаючи чутливі входи від підвищеної напруги. Вимірювальні ланцюги будують так, щоб опір відкритого МОН ключа не вносило похибка в результат вимірювання. Для цього ключ використовують або для передачі потенціалу, коли струм, що протікає через відкритий ключ, нехтує малий, або для передачі струму, коли інформація переноситься у формі струму і тому падіння напруги на ключі не вносить похибка до передаваного сигналу.
Модулі введення можуть мати програмно перемикані діапазони вхідних сигналів.
Сучасна елементна база дозволяє будувати недорогі модулі аналогового введення з погрішністю вимірювань ±0,05%, що ще 10 років тому можна було реалізувати тільки в стаціонарних і дорогих вольтметрах.
Для комутації вхідних ключів модуля використовується програма, що виконується мікроконтролером. Ця процедура достатньо проста і для її виконання можна використовувати мікроконтролер, що входить до складу деяких АЦП (саме такий АЦП використаний на рис. 20.1). Це дозволяє зменшити кількість каналів гальванічної розв'язки між аналоговими входами і портом RS-485.
Мікропроцесор типового модуля введення виконує наступні функції:
реалізує протокол обміну з ПЛК;
виконує команди, посилані ПЛК в модуль;
реалізує виконання функцій автоматичного калібрування, діагности обриву або к.з. у ланцюзі датчика;
перетворить формати даних, що вводяться (інженерний формат — в одиницях вимірюваної величини, шістнадцятковий формат, відсотки від діапазону вимірювань);
встановлює швидкість обміну з ПЛК (для ПЛК з розподіленими модулями введення-виводу);
виконує цифрову фільтрацію вхідного сигналу.
У постійній пам'яті модуля ЕППЗУ зберігаються калібрувальні коефіцієнти, адреса модуля, програма, таблиці лінеаризації нелінійних характеристик термопар і термоперетворювачів опору. Сторожовий таймер виконує перезавантаження (скидання) мікроконтролеру у разі його зависання.
У модулі вводу на рис. 20.1 є канали виведення дискретних сигналів. Це дозволяє реалізувати на одному модулі ПІД-регулятор з широко-імпульсним (ШІМ) управлінням виконавчим пристроєм.
Живлення внутрішніх вузлів модуля виконується від внутрішнього стабілізатора напруги, який дозволяє подавати зовнішню напругу живлення в широкому діапазоні, зазвичай від 10 до 30В. Великий діапазон напруги живлення дуже корисний в розподілених системах, коли модулі введення можуть знаходитися на значній відстані один від одного і тому падіння напруги на опорі проводів живлення досягає 10...20В.
Ланцюги живлення модулів захищаються від неправильної полярності напруги живлення і від перевищення напруги живлення над допустимим значенням. Захист виконується діодами, стабілітронами, позисторами і плавкими запобіжниками.
Для інтерфейсу RS-485 використовується захист від статичної електрики, від електромагнітних імпульсів, від короткого замикання і перегріву вихідного каскаду.
Команди управління модулем. Для читання даних з входів модуля, зміни вхідного діапазону, частоти обміну і виконання інших функцій процесор ПЛК посилає в модулі команди. Команди можуть мати текстовий формат (так зроблено в протоколі DCON і Моdbus Аscii або шістнадцятковий (як, наприклад, в протоколі Моdbus RTU).
20.3. Модулі вводу струму і напруги
Потенційний вхід. Потенційні входи модулів введення (рис. 20.2) використовуються для вимірювання напруги. Ідеальний потенційний вхід має нескінченно великий опір і нульову ємність, оскільки при підключенні до вимірюваного ланцюга він не повинен впливати на її динамічні або статичні характеристики. У реальних умовах внутрішній опір джерела сигналу Ri1 і опір відкритого ключа Rk1 утворюють дільник напруги з вхідним опором R1 на постійному струмі і ємкістю С1 в динамічному режимі (рис. 20.2, а). Тому повний вхідний опір модуля введення вносить методичну мультиплікативну похибка до результату вимірювання, яку завжди потрібно оцінювати, виходячи з паспортних даних модуля. Типовими значеннями вхідних параметрів є Rk1н200Ом, R1н20МОм, С1н1нф, тому для забезпечення методичної погрішності величиною 0,01% опір джерела сигналу повинен бути не більш н2кОм. Проте, оскільки вказана похибка не залежить від напруги джерела сигналу, її можна компенсувати в контролерові або модулі введення.
Опори і ємність, показані на рис. 20.2, а, утворюють фільтр низької частоти першого порядку з постійною часу Tн(Ri1+Rk1) C1н1,2мкс при Ri1н2кОм, С1н1 нФ, Rk1н200Ом (вважаємо, що R1>>Ri1+Rk1), який вносить також динамічну похибка до результату вимірювання. Динамічна похибка залежить від форми вхідного сигналу.
Для модулів з диференціальними входами (рис. 12.2,б) оцінка методичної погрішності робиться аналогічно.
Рис. 20.2. Потенційні одиночний (а) і диференціальний (б) входи.
Для зменшення погрішності слід збільшувати вхідні опори R1, R2 і зменшувати ємкості С1, С2. Проте в схемі з диференціальним включенням збільшення R1, R2 і зниження С1, С2 веде до зростання ємкісного наведення, а також до збільшення синфазної перешкоди, викликаної вхідними струмами операційного підсилювача і атмосферною електрикою. Синфазна перешкода може стати настільки великою, що напруги на входах операційного підсилювача вийдуть за межі динамічного діапазону. Тому при роботі з диференціальними входами слід дотримувати правила виконання сигнального заземлення. Виведення AGND на рис. 20.1 і 20.2 слід сполучати з екраном кабелю джерела сигналу або не сполучати ні з чим.
Струмовий вхід. Струмові входи модулів введення використовуються для введення величини струму, наприклад стандартного сигналу 4...20 мА. Перетворення струму в напругу виконується за допомогою резистора 125, 250 або 500Ом, максимальне падіння напруги на якому складає 2,5; 5 або 10В відповідно. Для введення в контролер отриманої напруги використовується модуль з диференціальним або одиночним входом (рис. 12.3). Вимірювальні резистори можуть бути встановлені зовні модуля введення (на його вхідних клемах) або усередині.
Рис. 20.3. Струмовий вхід на основі одиночного (а) і диференціального (б) потенційного входів.
Вимірювальні резистори можуть бути прецизійними, тоді для отримання точних вимірювань досить відкалібрувати модуль тільки в режимі введення напруги. При використанні резисторів низької точності їх похибка можна компенсувати шляхом калібрування модуля спільно з вимірювальним резистором, в режимі вимірювання струму. Проте для цього необхідно виконати калібрування кожного каналу окремо. Якщо модуль не дозволяє виконувати індивідуальне калібрування кожного каналу, то формулу для внесення поправок і її коефіцієнти можна зберегти в ОРС-сервері або флеш-пам’яті ПЛК.
При використанні
діапазону струмів 0.20мА струм перетвориться
в напругу по формулі, для діапазону
4.20мА – по формулі
.
При цьому струму 4мА відповідає вихідний
сигнал, рівний нулю. Зсув рівня на 4мА
необхідний для забезпечення можливості
діагностування обриву в ланцюзі датчика.
ЛЕКЦІЯ 21. ПРИСТРОЇ вводу-ВИВОДУ.
21.1. Виведення аналогових сигналів.
21.2. Введення дискретних сигналів.
21.3. Виведення дискретних сигналів.
21.1. Виведення аналогових сигналів.
Модулі аналогового виводу призначені для виводу з комп'ютера або контролера інформації в аналоговій формі. Аналогові сигнали на виході модулів виводу можуть бути представлені у вигляді стандартних сигналів струму (0...20 і 4...20мА) або напруги (0...5 ±10В). Модулі аналогового виводу використовуються в основному для управління виконавчими пристроями з аналоговим входом, що управляє, але можуть бути використані також у вимірювальних системах, для електрофізичних досліджень або побудови випробувальних стендів.
Розглянемо структуру типового модуля виведення аналогових сигналів (рис. 21.1).
Інформація в модуль виводу поступає з контролера, що управляє, або комп'ютера зазвичай через інтерфейс RS-485, в деяких модулях виводу використовують інші послідовні або паралельні інтерфейси. Типовою для засобів промислової автоматики є гальванічна ізоляція аналогової вихідної частини модуля від цифрової частини, що включає мікропроцесор. Модуль управляється командами, що посилаються за допомогою стандартного протоколу Modbus RTU або DCON.
Для правильного застосування модулів аналогового виводу треба знати схему вихідного каскаду (рис. 21.1). Виведення напруги здійснюється за допомогою цифро-аналогового перетворювача (ЦАП) і операційного підсилювача (ОУ). Завдяки глибокому зворотному зв'язку вихідний опір ОУ на постійному струмі складає соті долі Ома, що дозволяє з високою точністю вважати його ідеальним джерелом напруги. Для захисту модуля від перевантаження по виходу використовуються ОУ із захистом, виконаним на тому ж напівпровідниковому кристалі, що і сам ОУ.
Унаслідок частотної залежності коефіцієнта посилення модуль вихідного опору каскаду на ОУ гвих(f) залежить від частоти:
(21.1)
де f — частота, на якій шукається вихідний опір; r0 — вихідний опір ОУ без зворотного зв'язку; f1 — частота одиничного посилення ОУ, зазвичай рівна 1МГц; K0 — коефіцієнт посилення ОУ на постійному струмі (на нульовій частоті). Приведений вираз справедливий з погрішністю близько 10% при f0<f<10f1, де f0нf1K0 — гранична частота ОУ без зворотного зв'язку по рівню 0,702. Наприклад, при типових значеннях r0=100Ом, f1=1МГц; К0=105 отримаємо гвих=10-3Ом на постійному струмі, але гвих=1Ом на частоті 1кГц і rвих=10Ом на частоті 10кГц.
Рис. 21.1. Структурна схема модуля виведення аналогових сигналів; ВІП – вторинне джерело живлення.
Частотну залежність вихідного опору слід враховувати при розрахунку рівня наведених перешкод, а також методичній погрішності модуля виводу, обумовленій впливом опору навантаження на величину вихідної напруги.
Для виведення аналогового сигналу у формі струму використовуються джерела струму на основі ОУ із зворотним зв'язком (див. каскади з виходами Iout0..., Iout3 на рис. 21.1). Принцип їх дії заснований на тому, що ОУ з негативним зворотним зв'язком має нульову напругу між його входами завдяки високому коефіцієнту посилення. Тому вся вхідна напруга виявляється прикладеною до опору r0 (рис. 13.1, верхній по схемі каскад) і вихідний струм рівний вхідній напрузі, що ділиться на r0 Для того, щоб струм, що протікає через r0, був точно рівний вихідному струму, як транзистор на рис. 21.1 використовують біполярний транзистор з ізольованим затвором або пару з біполярного і МОП-ТРАНЗІСТОРА.
Модуль комплексного вихідного опору джерела струму rвих(f) можна знайти, використовуючи просту модель МОП-ТРАНЗІСТОРА, що враховує його вихідний опір:
де Rd — диференціальний вихідний опір МОП-ТРАНЗІСТОРА; S — крутизна МОП-ТРАНЗІСТРА; решту параметрів мають той же сенс і порядок типових величин, що і у формулі (13.1). Для типових значень цих параметрів і при Rd=100кОм отримаємо гвих=5•1011Ом, тобто вихідний опір фактично визначається опором витоків друкарської плати. Проте на частоті f=10кГц модуль комплексного вихідного опору rвих=50МОм і далі падає із зростанням частоти.
Таким чином, джерело струму з достатньо високим ступенем точності і для всіх частот можна вважати «ідеальним», і його вихідний опір можна не враховувати при використанні типового навантаження 250Ом в стандартній «струмовій петлі» 4...20мА.
Для живлення транзистора в джерелах струму, побудованих по розглянутій схемі, потрібне додаткове джерело живлення Eпит який зазвичай розташовується поза модулем виводу (рис. 21.2).
Рис. 21.2. Вихідні каскади для впадаючого (а) і витікаючого (б) струмів. Схема (а) вимагає додаткового джерела живлення.
Стабілітрон на рис. 21.2. служить для оберігання транзистора від зовнішньої напруги неправильної полярності і перевищення напруги над допустимим значенням.
Недоліком приведених каскадів є неможливість зміни напряму струму на протилежне, що зв'язане із застосуванням транзисторів одного типу провідності або з одним типом каналу. Складніші двуполярні схеми в модулях виводу для промислової автоматики не застосовуються.
Похибка модуля виводу складається з наступних основних складових:
погрішності дискретності цифро-аналогового перетворювача;
стабільності джерела опорної напруги;
внутрішнього шуму модуля;
ненульового вихідного опору.
Похибка типового модуля введення складає 0,1% від верхньої межі діапазону (±10В для потенційного виходу і 0...20мА для струмового), розрядність — 12бит, дискретність зміни вихідної величини — 5мВ для напруги і 5мкА для струму, тобто 0,05% від ширини діапазону. Управляється модуль стандартними командами Modbus RTU або командами в ASCII кодах по протоколу DCON.
21.2. Введення дискретних сигналів
У системах автоматизації дуже поширені двійкові сигнали, які поступають від кінцевих вимикачів, датчиків охоронної або пожежної сигналізації, датчиків заповнення ємкостей, датчиків збігання стрічки на конвеєрі, датчиків наближення і тому подібне Такі сигнали не зовсім правильно називаються дискретними, але цей термін міцно увійшов до практики.
Модулі введення дискретних сигналів в промисловій автоматизації мають декілька різних типів входів:
вхід типу «сухий контакт»;
дискретний вхід для логічних сигналів у формі напруги;
вхід дискретних сигналів 110...220 У.
«Сухим» контактом в системах автоматизації називають джерело інформації, що не має вбудованого джерела енергії, наприклад контакти реле або дискретні виходи типу «відритий колектор». Для передачі інформації про стан такого контакту необхідне зовнішнє джерело струму або напруги.
Структура модуля введення дискретних сигналів представлена на рис. 21.3. Мікроконтролер модуля введення виконує періодичне сканування входів або за запитом ПЛК. Мікроконтролер виконує також усунення ефекту «брязкоту» «сухих» контактів. Команди опиту входів, встановлення адреси, швидкості обміну, формату даних і ін. посилаються в модуль через послідовний інтерфейс, зазвичай RS-485.
Рис. 21.3. Структурна схема модуля введення дискретних сигналів. ВІП – вторинне джерело живлення.
Для правильного застосування модулів дискретного введення необхідно знати структуру і характеристики вхідних каскадів (рис. 13.4, 13.5).
Рис. 21.4. Структурна схема вхідних каскадів каналів дискретного введення.
Рис. 21.5. Структурна схема вхідних каскадів для джерел сигналу типу «сухий контакт».
Дискретні входи гальванічно розв'язані від решти частини модуля введення. Розв'язка виконується, як правило, за допомогою оптронів з двома випромінюючими діодами, включеними зустрічно-паралельно. Це забезпечує можливість підключення до входів дискретних сигналів будь-якої полярності. Гальванічна ізоляція може бути поканальною або груповою. Частіше використовується групова ізоляція, оскільки при цьому майже удвічі зменшується кількість вхідних клем модуля.
Конденсатор використовується у вхідних каскадах модулів (рис. 21.4, 21.5) для фільтрації високочастотних перешкод. Значення граничною частот вибирається в результаті компромісу між швидкодією модуля і можливістю помилкового спрацьовування при дії високочастотних перешкод. Типове значення граничної частоти і швидкості опиту входів лежить в районі 1кГц. Для збільшення перешкодостійкості використовують також трігери Шмідта на виході сигналів оптронів.
Рівень логічної одиниці дискретних сигналів складає зазвичай від 3 до 30В, рівень логічного нуля — від 0 до 2В. Для введення сигналів від джерел типу «сухий контакт» використовують джерело напруги Еск, як показано на рис. 21.5. Аналогічно підключають дискретні виходи типу «відкритий колектор». Джерело може бути як вбудованим в модуль дискретного введення, так і зовнішнім.
Введення високої постійної напруги виконується по схемі рис. 21.4, проте для зниження потужності, що розсіюється на токозадаючому резисторі, використовують оптрони з малим струмом, що управляє, і резистор з великим опором і великою пробивною напругою.
Введення дискретних сигналів високої змінної напруги. Введення сигналів високої (220В) змінної напруги здійснюється аналогічно розглянутому вище (рис. 21.6), проте замість токозадаючого резистора для включення оптрона використовують конденсатор, щоб понизити активну розсіювану потужність. Резистор опором 750кОм на рис. 13.6 служить для розряду конденсатора при відключених входах, що є стандартною вимогою електробезпеки. Резистор опором 1кОм обмежує кидок струму у момент комутації входу, призначення інших елементів таке ж, як в колі на рис. 21.4, 21.5.
Рис. 21.6. Структурна схема вхідних каскадів для введення дискретних сигналів високої змінної напруги.
Каскади для введення високої напруги можуть бути із загальним дротом або незалежні.
Для відображення стану дискретних входів (ввімкнено/вимкнено) використовують світлодіоди, які включають або до оптрона, або після нього.
21.3. Виведення дискретних сигналів
Виведення дискретних сигналів використовується для управління станом ввімкнено/вимкнено виконавчих пристроїв. Пристрої виводу відрізняються великим різноманіттям. Знання структури вихідних каскадів необхідне для правильного їх застосування.
Вихідні каскади із стандартними ТТЛ або КМОП логічними рівнями в промисловій автоматизації використовуються рідко. Це пов'язано з тим, що навантаженням дискретних виходів є не логічні входи електронних пристроїв, а найчастіше електромеханічні реле, пускачі, крокові двигуни і ін. Дискретні виходи зазвичай будуються на основі могутніх біполярних транзисторів з відкритим колектором або польових транзисторів (зазвичай МОН) з відкритим стоком (рис. 21.7). З погляду схемотехніки застосування ці каскади еквівалентні, тому ми їх називатимемо каскадами ОК. Каскади ОК забезпечують велику гнучкість, дозволяючи отримати необхідні для навантаження струм або напруги за допомогою зовнішнього джерела живлення. Крім того, каскад ОК за допомогою зовнішніх резисторів і джерел напруги дозволяє отримати стандартні КМОП або ТТЛ-рівні Vвих (рис. 21.7, 21.8).
|
|
|
Рис. 21.7. Структурна схема вихідних каскадів типу ОК для виведення дискретних сигналів |
|
Рис. 21.8. Підключення індуктивного навантаження до дискретного виходу. |
Якнайкращим рішенням для побудови дискретних виходів є мікросхеми інтелектуальних ключів, які містять в собі не тільки могутній транзистор з відкритим стоком, але і ланцюги його захисту від перевантаження по струму, напрузі, короткого замикання, переполюсовки і перегріву, а також електростатичних розрядів. При перегріві вихідного каскаду або перевищенні струму навантаження інтелектуальний ключ вимикається.
Найширше поширені вихідні каскади ОК модулів виведення двох типів: для впадаючого (рис. 21.9) і витікаючого (рис. 21.10) струмів. Відмінність між ними полягає в тому, який вивід є загальним для декількох навантажень: заземлений або сполучений з шиною живлення.
Каскади з відкритим колектором (стоком) зручні тим, що дозволяють використовувати зовнішнє джерело живлення з напругою, відмінною від напруги живлення модулів виводу (рис. 21.9, 21.10). Крім того, в цих схемах замість джерела живлення Епіт можна використовувати те ж джерело, що і для живлення модулів виводу (Vпит).
|
|
|
Рис. 21.9. Структурна схема вихідних каскадів для впадаючих струмів. |
|
Рис. 21.10. Структурна схема вихідних каскадів для витікаючих струмів. |
Для управління навантаженнями, що харчуються великим струмом або від джерела напруги 110...220В використовують вихідні каскади з електромагнітними або твердотільними (напівпровідниковими) реле, тиристорами, симісторами.
Основною гідністю електромагнітних реле є дуже низьке падіння напруги на замкнутих контактах, що виключає необхідність їх охолоджування. Недоліком є обмежена кількість спрацьовувань (порядка 105...106). Напівпровідникові реле, навпаки, мають відносно великий опір у відкритому стані і вимагають відведення тепла, але можуть виконати до 1010 перемикань. Крім того, напівпровідникові реле володіють вищою надійністю і не мають ефекту «брязкоту контактів».
При використанні реле для комутації індуктивного навантаження виникає велика е.д.с. самоіндукції, яка викликає пробій повітряного зазору при розмиканні контактів і їх іскріння. Це приводить до швидкого зносу контактів і появи електромагнітних перешкод. Проблема вирішується за допомогою діода, включеного паралельно котушці індуктивності при комутації в ланцюзі постійної напруги (рис. 21.11) і RС-ланкою в ланцюзі змінної напруги (рис. 21.12). Контакти реле бажано захищати запобіжниками.
|
|
|
Рис. 21.11. Релейний вихід. Застосування діода для усунення іскріння контактів реле при комутації індуктивного навантаження. |
|
Рис. 21.12. Релейний вихід. Застосування RC ланцюжка для усунення іскріння контактів реле при комутації індуктивного навантаження. |
При використанні твердотільних реле або тиристорів у високовольтних ланцюгах з довгими кабельними лініями використовують захист на варисторах (рис. 21.13), TVS-діодах і газових розрядниках.
Рис. 21.13. Вихід тиристора. Варістор використовується для захисту тиристора від імпульсів напруги.
ЛЕКЦІЯ 22. МОДУЛІ ВВОДУ ІМПУЛЬСНИХ ПОСЛІДОВНОСТЕЙ І УПРАВЛІННЯ.
22.1. Типовий модуль вводу частотних сигналів.
22.2. Модулі управління рухом.
22.1. Типовий модуль вводу частотних сигналів.
Функції лічильника, частотоміра і вимірника періоду проходження імпульсів зазвичай поєднуються в одному і тому ж модулі введення. Такі модулі можуть бути використані для вирішення наступних завдань:
вимірювання швидкості обертання валу двигуна з метою її стабілізації або зміни по заданому закону
підрахунок кількості продукції на конвеєрі;
вимірювання частоти періодичного сигналу;
робота з датчиками, що мають імпульсний вихід (наприклад, з енкодерами — датчиками кута повороту, електролічильниками або анемометрами);
автоматичне дозування рахункової продукції;
підрахунок кількості продукції, виданої з складу.
Структуру типового модуля введення розглянемо на приміряю лічильника-частотоміра. Він містить два 32-розрядні лічильники-частотоміри. Кожен лічильник має ізольовані і неізольовані входи. Ізольовані входи виконані за допомогою оптрона і є пасивними з боку джерела сигналу. Неізольовані входи мають програмно регульовані рівні логічного нуля і одиниці. Це дозволяє зменшити вірогідність помилкового спрацьовування модуля в умовах перешкод. Для регулювання рівнів використано два 8-розрядні цифро-управляемих потенціометри. Для придушення перешкод служить також цифровий фільтр з перебудовуваними параметрами, виконаний на мікроконтролері, що входить до складу модуля.
На рис. 22.1 використані наступні позначення: Gаtе — входи дозволу рахунку; In — рахункові входи з програмованими логічними рівнями; Dout — дискретні виходи; INIT — вивід для виконання початкових установок модуля; Data+, Data- — виводи інтерфейсу RS-485.
Для розширення функціональних можливостей кожен рахунковий вхід модуля має вхід дозволу рахунку (Gаtе) і джерело струму для живлення «сухих» контактів. Модуль має також чотири ізольовані дискретні виходи із загальною «землею».
Лічильник містить чотири мікроконтролери. Вони виконують наступні функції:
виконують команди, що посилаються з комп'ютера, що управляє;
виконують алгоритм цифрової фільтрації;
виконують підрахунок кількості імпульсів;
реалізують протокол обміну через інтерфейс RS-485.
Рис. 22.1. Структурна схема модуля введення частотних сигналів.
До складу модуля входить сторожовий таймер, що виробляє сигнал скидання, якщо мікроконтролер перестає виробляти сигнал «ОК» (це періодичний сигнал, підтверджуючий, що мікроконтролер не «завис»). Другий сторожовий таймер усередині мікроконтролера переводить виходи модуля в безпечні стани («Safe Value»), якщо з комп'ютера, що управляє, перестає приходити сигнал «Host ОК».
Схема живлення модулів містить вторинне імпульсне джерело живлення, що перетворює напругу, що поступає ззовні, в діапазоні від +10 до +30В у напругу +5В для живлення електричного ланцюга усередині модуля. Модуль містить також ізолюючий перетворювач напруги для живлення каскадів виведення дискретних сигналів.
Модуль вимірює частоту в діапазоні від 10Гц до 300кГц з погрішністю ±0,0002/(fТ), де f — вимірювана частота, Гц; Т — час рахунку імпульсів (1,0 або 0,1с).
Зовнішні команди, що управляють, посилаються в модуль через порт RS-485. Використовуються всього 54 команди, детально описаної в керівництві по експлуатації модуля.
22.2. Модулі управління рухом.
Контролери з модулями управління рухом використовуються в роботах, металло- і деревообробних верстатах, складальних лініях, друкарських машинах, в устаткуванні для обробки їжі, для дозування і упаковки, для автоматичної зварки і лазерного різання, для обробки напівпровідникових пластин і тому подібне
Через специфіку завдання контролери для управління рухом займають окреме місце на ринку ПЛК, оскільки відрізняються як параметрами модулів введення-виводу, так і спеціалізованим програмним забезпеченням. Основними відмінностями від модулів загального застосування є підвищені вимоги до швидкодії і особливий склад каналів введення-виводу, оптимізований для завдань управління рухом з метою мінімізації вартості.
Типовою системою управління рухом є електропривод, який є окремим випадком системи автоматичного регулювання із зворотним або прямим зв'язком. До складу електроприводу входить електродвигун, датчики положення виконавчого механізму, контролер і сервопідсилювач.
У електроприводах використовують асинхронні і синхронні двигуни змінного струму, постійного струму, крокові, лінійні двигуни, а також гидро- і пневмоцилиндри з насосами.
Електропривод будується зазвичай з двома контурами зворотного зв'язку. Внутрішній контур з сигналом від датчика швидкості (тахометра або інкрементного енкодера) використовується для управління швидкістю двигуна і часто реалізується усередині сервопідсилювача. Зовнішній контур із зворотним зв'язком від осі двигуна або від його навантаження використовується для управління позицією виконавчого механізму і моментом, що обертає. Зворотний зв'язок від навантаження дозволяє підвищити точність реалізації траєкторії руху і використовувати нежорсткі механічні зв'язки, проте ускладнює настройку замкнутої Системи.
Сигнал зворотного зв'язку зовнішнього контура поступає від датчиків положення, як які використовують енкодери, резольвери, потенціометри, датчики Холу і тахометри. Енкодери діляться на абсолютних і інкрементних. Інкрементні енкодери визначають зміну положення механізму, а абсолютні визначають його абсолютне положення. Резольвери виконують ту ж функцію, що і енкодери, але мають аналоговий вихідний сигнал, оскільки побудовані на основі трансформатора, що обертається, і видають синусоїдальний і косинусоїдальний сигнали, які дозволяють обчислити положення валу двигуна. Недоліком резольвера є низька швидкодія і необхідність використання АЦП.
Сигнали зворотного зв'язку поступають в контролер, який повинен мати модулі для введення сигналів від перерахованих вище датчиків. У контролер поступають також сигнали від кінцевих датчиків, встановлених в крайніх положеннях виконавчого механізму. Дія, що управляє, з контролера поступає на двигун через сервопідсилювач. Підсилювачі мають могутні вихідні каскади з радіаторами, тому виготовляються окремо від контролера. На їх входи можуть поступати аналогові сигнали ±10В, цифрові або ШИМ-сигнали. Підсилювачі діляться на підсилювачі швидкості, підсилювачі моменту, підсилювачі з синусоїдальним вхідним сигналом, підсилювачі з імпульсним входом, а також гідравлічні. Зазвичай вони мають вбудований захист від перенапруження, низької напруги, перегріву, к.з., перевищення струму, втрати фази. Вибираючи підсилювач з потрібними характеристиками, можна виконувати управління устаткуванням будь-якої потужності, від микрозондов для тестування напівпровідникових пластин до могутніх металообробних центрів.
ПЛК можуть мати вхід для джойстика або кнопок, які дозволяють управляти рухом уручну.
Основним параметром модулів введення-виводу для управління рухом є число одночасно керованих осей координат. Вісь координат в переважній більшості випадків асоціюється з одним двигуном. Проте декілька двигунів можуть працювати на загальне навантаження, наприклад два двигуни можуть обертати загальний вал з двох його кінців або спільно здійснювати плоскопаралельне переміщення однієї балки. В цьому випадку декілька двигунів відповідають одній осі координат.
У загальному випадку вісь координат визначається як лінійна комбінація трьох координатних осей, відповідних трем двигунам, тому вона не відповідає жодному конкретному двигуну окремо.
Оскільки рух в тривимірному просторі можна розкласти на три одновимірних, для побудови будь-якої траєкторії досить три координатні осі. Проте в металообробці часто доводиться повертати столик із закріпленою деталлю або шпіндель із закріпленим інструментом, для опису чого вводяться додаткові осі координат. Найбільш могутні контролери управління рухом можуть синхронно управляти сотнею координатних осей.
Модулі введення-виводу для управління рухом оптимізовані для введення сигналів енкодеров, резольверов, тахометрів, потенціометрів і кінцевих вимикачів, а також для виведення сигналів управління сервопідсилювачами. Основні параметри типових модулів для управління рухом приведені нижче.
Модулі введення можуть мати наступні входи:
диференціальні або одиночні входи лічильників розрядністю 16/24/ 32 битий для сигналів енкодера;
дискретні входи;
входи переривань процесора;
аналогові входи для сигналів від резольвера і потенціометра. Типові модулі виводу можуть містити:
аналогові канали виводу з розрядністю 12, 14 або 16 битий для управління сервопідсилювачами;
дискретні виходи (зазвичай з відкритим колектором);
цифрові виходи;
імпульсні виходи для крокових двигунів. Основні параметри модулів введення-виводу:
час оновлення даних;
розрядність і число АЦП і ЦАП;
число дискретних і імпульсних входів/виходів;
ємність пам'яті в кроках;
тип і можливості програмного забезпечення;
типи комунікаційних інтерфейсів (RS-232/422, RS-485, USB, Ethernet, PCI, VМЕ, ISA і ін.).
Сигнал від інкрементного енкодера може поступати в деяких випадках з швидкістю до 20Мбит/с, що вимагає швидкодіючих лічильників імпульсів. У деяких модулях використовуються процесори цифрової обробки сигналів і спеціалізовані мікросхеми (ASIC).
У системах управління рухом спеціалізованими є не тільки модулі, але і програмне забезпечення. Приведемо приклади деяких вбудованих функцій, які виконуються контролерами для управління рухом:
плавний пуск;
переміщення: безперервне, абсолютне, відносне, синхронне, в контрольну крапку (для калібрування і синхронізації);
синхронізація координат в режимі контрольних крапок;
реалізація заданої траєкторії руху в просторі;
інтерполяція: лінійна, круг, сплайнами;
повернення в початкове положення;
ручний режим управління;
управління залежністю швидкості від часу: трапецеїдальна, 8-образна (трапеція із закругленнями замість кутів);
автонастроювання контурів регулювання;
відладка програми без реального приводу;
придушення резонансних явищ (вібрацій);
автоматичне розпізнавання двигуна;
синхронізація роботи декількох приводів (зокрема при роботі двигунів на загальний вал);
управління силою або тиском;
захист (від ненавмисного запуску, при збоях в устаткуванні, при спрацьовуванні кінцевих вимикачів);
самодіагностика;
моніторинг поточного стану;
аварійна сигналізація;
аварійний останов;
функція таймера.
Системи управління рухом сприймають інформацію від програм автоматизованого проектування (САПР) і частіше використовуються з комп'ютерами, чим з ПЛК. Для роботи від комп'ютера під ОС Windows використовуються буфери FIFO на вході і виході модуля, щоб виключити неконтрольовані затримки ОС.
ЛЕКЦІЯ 23. ПРОГРАМНЕ ЗАБЕЗПЕЧЕННЯ.
23.1. Розвиток програмних засобів автоматизації.
23.2. Графічне програмування.
23.3. Графічний інтерфейс.
23.4. Відкритість програмного забезпечення.
23.5. Зв'язок з фізичними пристроями.
23.6. Бази даних.
23.7. Операційні системи реального часу.
23.1. Розвиток програмних засобів автоматизації.
Сучасні системи промислової і лабораторної автоматизації дозволяють вирішувати широкий круг завдань, які можна розділити на декілька груп, що мають свої особливості:
автоматизація управління технологічними процесами (АСУ ТП);
взаємодія системи з диспетчером (оператором);
автоматизований контроль і вимірювання (моніторинг);
забезпечення безпеки;
дистанційне керування, вимірювання, сигналізація (завдання телемеханіки).
Історія розвитку програмних засобів автоматизації показала, що всі особливості окремих застосувань можна врахувати шляхом настроювання декількох універсальних програм на виконання конкретного завдання. До таких універсальних програм відносяться:
ОРС сервер;
засоби МЕК-програмування контролерів;
SCADA-пакети.
Для систем автоматизації, не пов'язаних з АСОВІ ТП, використовуються програми LABVIEW, MATLAB, HP-VEE і ін., орієнтовані на автоматизацію експерименту, вимірювань або математичну обробку їх результатів. Для простих завдань або широко тиражованих застосувань буває економічно ефективно використовувати замовлене програмування на C++ або Visual Basic із застосуванням купувальних елементів ACTIVEX, що знижують трудомісткість розробки.
Для вирішення перерахованих вище завдань спочатку використовувалися універсальні мови програмування високого рівня і команда професійних програмістів. Проте практика показала украй низьку ефективність такої розробки. Виявилось, що розробка системи повинна виконуватися не програмістами, а фахівцями тієї наочної області, яка потребує автоматизації, тобто технологами, а також системними інтеграторами, які здійснюють комплексне впровадження системи.
Необхідність в розробці засобів програмування, призначених спеціально для систем автоматизації і орієнтованих на технологів, була викликана наступними причинами:
вимогою надійності програмного забезпечення. Система, написана цілком на алгоритмічній мові для конкретного замовлення, містила дуже багато програмну коду, на ретельну розробку і тестування якого не хапало часу;
стислими термінами впровадження системи і обмеженою вартістю робіт. Для створення системи в короткий термін при обмеженому бюджеті була потрібна велика кількість готових універсальних програмних компонентів, що вже написаних і ретельно відтестували;
необхідністю модифікації системи в процесі її експлуатації. Внести зміни до спеціалізованої програми міг програміст, що тільки написав її, який до цього часу зазвичай працював вже на іншому підприємстві. Тому замість того, щоб модифікувати програмне забезпечення, його доводилося переписувати наново;
вимогами сумісності з іншими системами автоматизації, що працюють на тому ж підприємстві. Були необхідні стандартні інтерфейси між програмами, створеними різними виробниками на різних апаратно-програмних платформах;
високими вимогами до якості призначеного для користувача інтерфейсу. Обмежений бюджет часу і фінансових ресурсів не дозволяв розробити достатньо хороший програмний інтерфейс на універсальних алгоритмічних мовах.
Перераховані причини привели до наступного розподілу праці по створенню програмних засобів для систем автоматизації: фірми, що спеціалізуються на програмному забезпеченні, створюють універсальні системи програмування завдань автоматизації (SCADA-пакети і засоби МЕК-програмування), а інжинірингові фірми (системні інтегратори) адаптують ці засоби до потреб конкретного замовника. В результаті досягається вирішення всіх перерахованих вище проблем. Більш того, завдяки істотному спрощенню процесу адаптації в порівнянні з класичним програмуванням зміни в алгоритми управління можуть бути внесені, наприклад, технологом експлуатуючої організації без залучення системних інтеграторів або програмістів.
В даний час замовлені програми природним чином витиснені з ринку промислової автоматизації SCADA-пакетами і аналогічними універсальними засобами автоматизації, а також засобами програмування контролерів на мовах стандарту МЕК 61131-3.
Через свою універсальність SCADA-пакети виявилися дуже дорогими для застосування в простих завданнях, коли, наприклад, необхідно записати в комп'ютер декілька значень температури або зробити один контур управління температурою в термошкафі. Цю проблему частково вдається вирішити введенням залежності ціни SCADA-пакетів від кількості тегів, проте залишається невирішеною проблема трудомісткості вивчення і складності адаптації SCADA до простих завдань, а також висока вартість консультацій по застосуванню. SCADA-пакети не змогли зайняти сегмент ринку простих систем, які не вимагають попереднього вивчення або настройки і побудовані за принципом «Plug&Play», — «вставив — і заграло». Подібні програми вже не можуть бути такими універсальними і функціонально насиченими, як SCADA. Вони є спеціалізованими, орієнтованими на вузький круг завдань відображення графіків або простого управління з невеликою кількістю тегов.
Економічно доцільно залишилося також розробляти замовлені програми для серійно тиражованих, однотипних систем автоматизації, наприклад систем контролю температури в силосах елеваторів. Для спрощення і підвищення якості замовленого програмування широко використовуються ACTIVEX елементи, спеціально розроблені для завдань автоматизації: для побудови графіків, органів управління і індикації, для відображення технологічних схем. Такі системи створюються на мовах візуального програмування Visual C++, Visual Basic, VBA, Delphi.
23.2. Графічне програмування
Мови візуального програмування з'явилися на початку 90-х років і містять велике число стандартних функцій і бібліотек, а також готових засобів візуалізації. Вони дозволяють створювати дуже зручні і ефектні програми, проте досягається це за рахунок різкого збільшення об'єму програмної коди. Тому мови візуального програмування, як і текстові, як і раніше не дозволяють модифікувати алгоритми силами технологів без участі професійних програмістів.
Справжню революцію в програмуванні систем автоматизації зробили мови графічного програмування. Одним з перших в цьому класі була графічна мова середовища Simulink, що входить до складу MATLAB (MathWorks Inc), а також мови LABVIEW (National Instruments) і HP-VEE (Hewlett Packard). Вони були призначені і успішно використовувалися для збору даних, моделювання систем автоматизації, автоматичного управління, обробки зібраних даних і їх візуального уявлення у вигляді графіків, таблиць, звуку, за допомогою комп'ютерної анімації. Графічні мови були настільки простими і природними, що для їх освоєння часто був достатньо методу проб і помилок без використання підручників і консультацій. Людина, не знайомий з програмуванням на алгоритмічних мовах, користуючись тільки логікою і розуміючи постановку прикладного завдання, міг зібрати працююче застосування з готових компонентів, накидаючи їх мишкою на екран монітора і проводячи графічні зв'язки для вказівки потоків інформації.
Перші мови програмування алгоритмів роботи систем автоматизації були нестандартними. Кожна фірма, що створювала контролер або SCADA-пакет, пропонувала свою мову. Це вимагало від системних інтеграторів додаткових зусиль і утрудняло освоєння нових SCADA-пакетов і засобів програмування контролерів.
Тому поява в 1993 р. стандарту на мови програмування контролерів МЕК 61131-3 була великим кроком у напрямі створення відкритих систем автоматизації і забезпечила зниження вартості розробки, скорочення термінів, підвищення якості реалізації алгоритмів автоматизації і можливість детального вивчення мов програмування, придатних для будь-якого контролера. МЕК 61131-3 встановлював стандарти для п'яти мов програмування, розрахованих на фахівців різних професій, не пов'язаних з програмуванням.
23.3. Графічний інтерфейс.
Створення графічних інтерфейсів користувача на комп'ютері з'явилося великим досягненням у напрямі розвитку засобів диспетчерського управління. Головним ефектом від застосування графічного інтерфейсу є істотне зниження кількості помилок, що допускаються оператором (диспетчером) в стресових ситуаціях при управлінні виробничими процесами. Проектування призначеного для користувача інтерфейсу засноване на наступних принципах:
впізнанність: призначення елементів екрану повинне бути зрозуміле без попереднього навчання, допустимі маніпуляції з цими елементами також повинні бути зрозумілі інтуїтивно. Призначений для користувача інтерфейс не повинен містити зайвої деталізації;
логічність: користувач, що має досвід роботи з однією програмою, повинен бути здатний швидко, практично без навчання, адаптуватися до будь-якої аналогічної програми;
відсутність «сюрпризів»: знайомі з минулого досвіду операції з елементами на екрані повинні викликати знайомі реакції системи;
відновлюваність: система не повинна бути чутлива до помилок оператора. Оператор повинен мати можливість відмінити будь-яке своя неправильна дія. Для цього використовуються багатократні підтвердження, відміни, повернення на декілька кроків назад, установка контрольних крапок і т.п.;
наявність зручної довідки, підказок, вбудованих в призначений для користувача інтерфейс, засобів контекстного пошуку і заміни;
адаптація до досвіду користувача: початкуючий користувач повинен мати більш простій інтерфейс з великою кількістю підказок. Для досвідченого користувача кількість підказок повинна бути зменшене, оскільки вони заважають в роботі.
23.4. Відкритість програмного забезпечення.
Програмні засоби автоматизації повинні задовольняти вимогам відвертості. Для цього вони повинні підтримувати:
стандартні засоби програмування МЕК 61131-3;
стандарт ОРС для зв'язку з фізичними пристроями;
стандартні мережеві протоколи Ethernet, Modbus, Profibus, CAN і др.;
стандартний інтерфейс ODBC для доступу до баз даних з мовою запитів SQL;
найбільш поширені операційні системи (Windows XP/CE, Linux);
веб-сервер-технологію;
обмін даними з Microsoft Office.
Перераховані засоби задовольняють загальновизнаним або офіційним стандартам, є у вільному продажі, розробляються декількома незалежними виробниками, що конкурують між собою (останнє не стосується MS Windows і MS Office).
23.5. Зв'язок з фізичними пристроями.
Зв'язок програмного забезпечення з фізичними пристроями в системах автоматизації здійснюється за допомогою методів DDE, OLE, COM, DCOM і ОРС.
Технологія обміну даними між додатками Windows з абревіатурою DDE (Dynamical Data Exchange — динамічний обмін даними) з'явилася в 1987 р. разом з Windows 2.0. У промисловій автоматизації DDE використовувалася для обміну даними між SCADA як DDE-клиента і фізичним пристроєм, який поставлявся з DDE-сервером.
Після появи OLE (Object Linking and Embedding — скріплення і впровадження об'єктів) фірми Microsoft, а пізніше COM (Component Object Model — модель багатокомпонентних об'єктів) і DCOM (Distributed COM — СОМ для розподілених систем) технологія DDE була повністю витиснена цими новими засобами, які виявилися набагато ефективнішими.
Технологія СОМ надає засоби для взаємодії між розрізненими програмними модулями, написаними на різних мовах програмування, які збираються в єдину систему під час виконання. Взаємодія СОМ об'єкту з іншими програмами або програмними модулями виконується через програмні інтерфейси з використанням методу «клієнт-сервер».
Одній з складових СОМ є Automation — засоби взаємодії програм, написаних на C++ з програмами на мові VBA (Visual Basic for Application) або Delphi, а також з програмами на мовах сценаріїв (VBScript, JScript). Завдяки автоматизації СОМ-об'єкт може бути також розміщений і виконуватися на веб-сторінці.
Розширення СОМ у вигляді DCOM дозволяє програмам взаємодіяти між собою, навіть якщо вони виконуються на різних комп'ютерах локальної мережі. Тому DCOM з'явилася універсальною програмною технологією, яка як не можна краще дозволяє здійснити взаємодію між SCADA як клієнт і сервером, що забезпечує інтерфейс до апаратних засобів промислової автоматизації. Саме завдяки цій властивості DCOM була використана як база для розробки стандарту ОРС «OLE for Process Control» — «OLE для управління процесами», який лежить в основі всіх сучасних SCADA-пакетов, що взаємодіють з апаратурою через ОРС-сервер.
23.6. Бази даних.
Системи автоматизації працюють з великими об'ємами даних, які необхідно зберігати, сортувати, групувати, витягувати і представляти у вигляді, зручному для користувача. Дані витягуються за допомогою мови запитів SQL (Structured Query Language — структурована мова запитів), який став стандартом в системах автоматизації. Найбільш поширеними системами управління базами даних (СУБД) є Microsoft SQL Server, Wonderware Industrial SQL Server, Microsoft Access і Excel. Основними властивостями СУБД є: наявність призначеного для користувача інтерфейсу на базі мови запитів SQL; можливість одночасного обслуговування декількох користувачів; коректність роботи з даними.
Відкриті системи використовують звернення до СУБД через драйвер ODBC (Open Database Connectivity — підключення до відкритої бази даних). ODBC використовується, коли необхідно забезпечити незалежність прикладної програми від типу СУБД або типу операційної системи і потрібно підключитися до декількох різних СУБД (наприклад, одночасно до MS SQL Server, MS Excel, MS Access, Paradox і ін.). При використанні декількох ODBC-драйверов ними управляє менеджер драйверів. ODBC-драйвер транслює стандартний SQL-запрос у формат запиту для конкретної СУБД. Таким чином, для роботи з новою базою даних користувачеві досить додати в систему новий ODBC-драйвер, не змінюючи прикладну програму.
23.7. Операційні системи реального часу.
Швидкодія ПЛК або комп'ютера впливає на величину динамічної погрішності системи автоматизації і запас її стійкості за наявності зворотного зв'язку. Для поліпшення цих характеристик використовують швидкодіючі модулі введення-виводу і комп'ютер (ПЛК) з високопродуктивним процесором. Це дозволяє поліпшити динамічні характеристики системи, проте більшість операційних систем (ОС) не можуть забезпечити один і той же час виконання завдання при повторних її запусках, тобто час виконання є випадковим величиною. В деяких випадках непередбачуваність часу виконання завдання приводить до відмови системи.
Для усунення цієї проблеми був розроблений клас операційних систем, які забезпечують детермінований (тобто не випадкове) час виконання завдань і час реакції на апаратні переривання. Такі ОС отримали назва операційних систем реального часу (ОС РВ) і були поділені на ОС жорсткого і м'якого реального часу. Відмітною ознакою ОС РВ є не час виконання завдань, а гарантованість постійності величини цього часу для одного і того ж завдання.
ОС жорсткого реального часу гарантує виконання завдання за заздалегідь відомий час. У ОС м'якого реального часу прийняті особливі заходи для усунення невизначеності часу виконання, проте повністю невизначеність не усувається.
Стандарт POSIX (Portable Operating System Interface for Computer Environments) IEEE 1003.1 дає наступне визначення РВ: «реальний час в операційних системах — це здатність операційної системи забезпечити необхідний рівень сервісу в певний проміжок часу». Отже, ОС РВ відрізняються своєю поведінкою, а не внутрішнім принципом побудови. Тому якщо вірогідність появи неприпустимо великих затримок достатньо низка для досягнення необхідного рівня сервісу (наприклад, якщо вона менше допустимої вірогідності відмови системи), то така ОС в конкретному застосуванні може розглядатися як ОС РВ. Зокрема, відповідно до визначення стандарту POSIX операційна система Windows XP при управлінні повільними (тепловими) процесами може розглядатися як ОС РВ.
Проте, існують певні методи побудови операційних систем, які забезпечують прямокутну щільність розподілу вірогідності затримки і тому відносяться до ОС жорсткого реального часу незалежно від рівня сервісу, що надається. У ОС жорсткого РВ процес представляється на виконання одночасно з вказівкою необхідного часу виконання. Планувальник ОС або вирішує виконання, гарантуючи необхідний час, або відхиляє процес як неможливий для виконання. Для цього планувальник винен точно знати, скільки часу вимагається кожній функції ОС для виконання завдання.
Базовими вимогами для забезпечення режиму реального часу є:
високопріоритетні завдання завжди повинні виконуватися в першу чергу;
повинна бути виключена інверсія пріоритетів;
процеси і потоки, час виконання яких не можна планувати, ніколи не повинні повністю займати ресурси системи.
Інверсією пріоритетів називають ситуацію, коли потік з високим пріоритетом вимагає надання ресурсу, який вже зайнятий потоком з нижчим пріоритетом. Виходить, що високопріоритетний потік коштує в черзі, тоді як виконується низькопріоритетний (відбувається «інверсія пріоритетів»). Така ситуація можлива, якщо є потік з середнім пріоритетом, який блокує завершення виконання потоку з нижчим пріоритетом, а потік з вищим пріоритетом не може початися, оскільки захоплений необхідний йому ресурс. Основним методом вирішення цієї проблеми в ОС РВ є спадкоємство пріоритетів, яке полягає в наступному. Якщо низькопріоритетний потік блокує виконання декількох високопріоритетних потоків, то низькопріоритетний потік ігнорує призначений йому спочатку пріоритет і виконується з пріоритетом, який є найвищим в блоці чекаючих його потоків. Після закінчення роботи потік приймає свій первинний пріоритет.
Для забезпечення режиму реального часу в ОС можуть бути реалізовані наступні вимоги:
підтримка динамічних пріоритетів (які можна міняти в процесі виконання завдання) в багатозадачному режимі з витісняючим ядром (як для процесів, так і для потоків);
можливість спадкоємства пріоритетів;
можливість витіснення завдань ядром ОС;
обмежена латентність переривань (час, протягом якого переривання заборонене, — це час обробки критичної секції коди);
виконання сервісів ОС з пріоритетом, який призначається клієнтом сервісу.
У системах РВ зазвичай відсутня віртуальна пам'ять, оскільки цей метод використовує підкачку сторінок з диска, час виконання якої є непередбачуваним.
Найбільш поширеними в ПЛК і комп'ютерах для вирішення завдань автоматизації є операційні системи Windows CE, QNX Neutrino і OS-9.
Багатозадачна операційна система жорсткого реального часу Windows CE.NET корпорації Microsoft (www.microsoft.com) підтримує мікропроцесори з архітектурою ARM, STRONGARM і xScale, MIPS, SH, Х86-совместімиє і має наступні властивості:
допускає одночасне виконання до 32 процесів;
має 256 рівнів пріоритетів;
підтримує витісняючу багатозадачність;
забезпечує карусельного виконання ланцюжків з однаковим пріоритетом;
підтримує вкладені переривання;
має середній час обробки переривання 2,8 мкс (на Pentium 166 Мгц), підтримує вкладені переривання;
забезпечує час обробки потоку переривань (Interrupt Service Thread, IST), рівний 17,9 мкс (на Pentium 166 Мгц);
у мінімальній конфігурації може бути встановлена при об'ємі ОЗУ 200Кб.
Ядро цієї ОС принципово відрізняється від ядра ОС для настільних комп'ютерів. У Windows CE.NET об'єднані всі можливості систем реального часу і останні технології Windows. Планування виконується на основі пріоритетів, для усунення інверсії використовується спадкоємство пріоритетів. Не дивлячись на наявність можливості роботи з віртуальною пам'яттю, для забезпечення режиму жорсткого реального часу її відключають.
Windows CE.NET підтримує Microsoft Visual Studio.NET і Microsoft eMbedded Visual C++ з мовами програмування Visual C++, Visual C# і Visual Basic.NET.
QNX Neutrino корпорації QNX Software Systems є операційною системою реального часу і забезпечує багатозадачний режим з пріоритетами. Підтримує мікропроцесори сімейств ARM, STRONGARM, xScale, x86, MIPS, POWERPC, SH-4.
QNX відноситься до мікроядерних ОС (тобто реалізує тільки базові функції ядра — управління адресним простором ОЗУ і віртуальної пам'яті, процесами і потоками, забезпечує міжпроцесорну комунікацію). Складається з ядра, планувальника процесів і сервісів. Побудована на основі сервісів — невеликих завдань, що виконують основні функції ОС. Така структура дозволяє відключити будь-яку непотрібну функціональність, не змінюючи ядро. Кожен драйвер, додаток, протокол або файлова система виконуються поза ядром, в захищеному адресному просторі.
Інверсія пріоритетів долається за допомогою розподіленого спадкоємства пріоритетів.
Операційна система OS-9 фірми Microware System є багатозадачною і многопользовательской, працює в режимі м'якого реального часу. Використовується у вбудовуваних застосуваннях на платформах ARM, STRONGARM, MIPS, POWERPC, Hitachi SUPERH, x86, Pentium, XScale, Motorola 68K.
ЛЕКЦІЯ 24. ОРС-СЕРВЕР.
24.1. Огляд стандарту ОРС.
24.2. ОРС-DA-сервер.
24.3.ОРС-НDA-сервер
24.1. Огляд стандарту ОРС.
Головною метою стандарту ОРС з'явилося забезпечення можливості спільної роботи (интероперабельности) засобів автоматизації, що функціонують на різних апаратних платформах, в різних промислових мережах і вироблюваних різними фірмами. Після появи стандарту ОРС практично всі SCADA-пакети були перепроектовані як ОРС-клиенти, а кожен виробник апаратного забезпечення почав забезпечувати свої контролери, модулі введення-виводу, інтелектуальні датчики і виконавчі пристрої стандартним ОРС-сервером. Завдяки появі стандартизації інтерфейсу стало можливим підключення будь-якого фізичного пристрою до будь-якої SCADA, якщо вони обидва відповідали стандарту ОРС. Розробники дістали можливість проектувати тільки один драйвер для всіх SCADA-пакетов, а користувачі дістали можливість вибору устаткування і програм без колишніх обмежень на їх сумісність.
Стандарт ОРС відноситься тільки до інтерфейсів, які ОРС-сервер надає клієнтським програмам. Метод же взаємодії сервера з апаратурою (наприклад, з модулями введення-виводу) стандартом не передбачений, і його реалізація покладається повністю на розробника апаратури. Тому стандарт ОРС може бути використаний не тільки для взаємодії SCADA з «залізом», але і для обмін даними з будь-яким джерелом даних, наприклад з базою даних або з GPS-приемником.
ОРС-сервер як засіб взаємодії з технічним пристроєм може бути використаний при розробці замовлених програм на C++, Visual Basic, VBA, Delphi і тому подібне У цих завданнях ОРС-сервер використовується як Microsoft DCOM-об’єкт, від якого він відрізняється тільки стандартизацією позначень і специфічними термінами з області промислової автоматизації. Застосування ОРС-сервера при розробці замовлених програм дозволяє приховати від розробника всю складність спілкування з апаратурою, представляючи простій і зручний метод доступу до апаратури через інтерфейси СОМ-ОБ'ЕКТА.
Стандарт ОРС складається з декількох частин:
ОРС DA (ОРС Data Access) — специфікація для обміну даними між клієнтом (наприклад, SCADA) і апаратурою (контролерами, модулями введення-введення і ін.) в реальному часі;
ОРС Alarms & Events (A&E) — специфікація для повідомлення клієнта про події і сигнали тривоги, які посилаються клієнтові у міру їх виникнення. Цей сервер пересилає аварійні сигнали, дії оператора, інформаційні повідомлення, результати контролю стану системи;
ОРС HDA (Historical Data Access) — специфікація для доступу до передісторії процесу (до збережених в архіві даним). Сервер забезпечує уніфікований спосіб доступу за допомогою DCOM технології. Забезпечує читання, запис і зміну даних;
ОРС Batch — специфікація для особливих физико-хімічних технологічних процесів обробки матеріалів, які не є безперервними. У таких процесах виконується завантаження декількох видів сировини в певних пропорціях згідно рецепту, встановлюються режими обробки, а після виконання циклу обробки і вивантаження готового матеріалу завантажується нова партія сировини. ОРС-сервер виконує обмін між клієнтом і сервером рецептами, характеристиками технологічного устаткування, умовами і результатами обробки;
ОРС Data eXchange — специфікація для обміну даними між двома ОРС DA-серверами через мережу Ethernet;
ОРС Security — специфікація, яка визначає методи доступу клієнтів до сервера, які забезпечують захист важливої інформації від несанкціонованої модифікації;
ОРС XML-DA — набір гнучких, таких, що узгоджуються один з одним правив і форматів для представлення первинних даних за допомогою мови XML, веб-сервера технологій і повідомлень SOAP;
ОРС Complex Data — додаткові специфікації до ОРС DA і XML-DA, які дозволяють серверам працювати з складними типами даних, такими як бінарні структури і XML-документи;
ОРС Commands — набір програмних інтерфейсів, який дозволяє ОРС клієнтам і серверам ідентифікувати, посилати і контролювати команди, що виконуються в технічному пристрої (у контролері, модулі введення-виводу);
ОРС Unified Architecture — принципово новий набір специфікацій, який вже не базується на DCOM технології.
З перерахованих специфікацій широко використовуються тільки дві: ОРС DA і рідше — ОРС HDA.
24.2. ОРС DA-сервер
Сервер ОРС DA є найширше використовуваним в промисловій автоматизації. Він забезпечує обмін даними (запис і читання) між клієнтською програмою і фізичними пристроями. Дані складаються з трьох полів: значення, якість і тимчасова мітка. Параметр якості даних дозволяє передати від пристрою клієнтській програмі інформацію про вихід вимірюваної величини за межі динамічного діапазону, про відсутність даних, помилці зв'язку та інші.
Існують чотири стандартні режими читання даних з ОРС-сервера:
синхронний режим: клієнт посилає запит серверу і чекає від нього відповідь;
асинхронний режим: клієнт відправляє запит і відразу ж переходить до виконання інших завдань. Сервер після виконання функції запиту посилає клієнтові повідомлення і той забирає надані дані;
режим підписки: клієнт повідомляє серверу список тегов, значення яких сервер повинен відправляти клієнтові тільки у разі їх зміни. Для того, щоб шум даних не був прийнятий за їх зміну, вводиться поняття «Мертвої зони», яка злегка перевищує максимально можливий розмах перешкоди;
режим оновлення даних: клієнт викликає одночасне читання всіх активних тегов. Активними називаються всі теги, окрім позначених як «пасивні». Таке ділення тегов зменшує завантаження процесора оновленням даних, що приймаються з фізичного пристрою.
У кожному з цих режимів дані можуть читатися або з кеша ОРС-сервера, або безпосередньо з фізичного пристрою. Читання з кеша виконується набагато швидше, але дані до моменту читання можуть застаріти. Тому сервер повинен періодично освіжати дані з максимально можливою частотою. Для зменшення завантаження процесора використовують параметр частоти оновлення, яка може бути встановлена для кожної групи тегов індивідуально. Крім того, деякі теги можна зробити пасивними, тоді їх значення не оновлюватимуться даними з фізичного пристрою.
Запис даних у фізичний пристрій може бути виконана тільки двома методами: синхронним і асинхронним і виконується відразу в пристрій, без проміжної буферизації. У синхронному режимі функція запису виконується до тих пір, поки з фізичного пристрою не поступить підтвердження, що запис виконаний. Цей процес може займати багато часу, протягом якого клієнт знаходиться в стані очікування завершення функції і не може продовжувати виконання своєї роботи. При асинхронному записі клієнт відправляє дані серверу і відразу продовжує свою роботу. Після закінчення запису сервер відправляє клієнтові відповідне повідомлення.
ОРС DA-сервер може мати (не обов'язково) призначений для користувача інтерфейс, який дозволяє виконувати будь-які допоміжні функції для полегшення роботи з устаткуванням.
Відповідно до стандарту, ОРС-сервер під час інсталяції автоматично реєструється в реєстрі Windows. Запуск сервера здійснюється так само, як будь-якої іншої програми, або автоматично з клієнтської програми.
На рис. 24.1 показано діалогове вікно ОРС-сервера. Сервер дозволяє виконати пошук фізичних пристроїв, підключених до СОМ-ПОРТУ комп'ютера.
Рис. 24.1. Приклад діалогового вікна ОРС-сервера.
На рис. 24.1 вікно сервера зліва показує, що до комп'ютера підключено три модулі введення: NL16HV, NL8TI і NL8AI. Для зручності представлення вимірюваних величин (тегов) на об'єкті автоматизації імена тегов можуть бути складеними і шлях до тегу може бути представлений у вигляді дерева, як показано на рис. 24.1. Ім'я виділеного на малюнку тега виглядає як «NL8TI.Laboratory32.Top.Vin4». Всі імена і їх структура задаються за допомогою засобів вікна ОРС-сервера.
При використанні ОРС-клиента (наприклад, SCADА), імена тегов, доступні через ОРС-сервер, представляються в аналогічній формі у вікні навігатора тегов (рис. 24.2). Клієнт показує всі ОРС-сервери, встановлені на комп'ютерах і доступні по мережі Ethernet, і дозволяє використовувати все теги цих серверів.
Рис. 24.2. Приклад діалогового вікна навігатора тегів ОРС-клиента
Приклади архітектури систем, що включають ОРС-сервери і ОРС-клиентов, показані на рис. 24.3 і 24.4. Як ОРС-клиента може виступати програма на мові С++ (наприклад, SCADA-пакет) або програма на мові Visual Basic, VBA, Delphi або будь-яка інша програма, що підтримує впровадження СОМ-ОБ'ЕКТОВ (рис. 16.3). Програма на мові C++ взаємодіє з ОРС-сервером через інтерфейс ОРС Custom, а програма на Visual Basic, VBA, Delphi — через інтерфейс автоматизації ОРС Automation. ОРС-сервер і ОРС-клиенти можуть працювати тільки на комп'ютерах і контролерах з операційними системами, що підтримують технологію DCOM (наприклад, Windows ХР і Windows ЦЕ).
ОРС-сервер підключається до фізичних пристроїв будь-яким способом; ці способи стандартом не передбачені. Наприклад, сервер NLopc фірми НІЛ АП використовує для кожного фізичного пристрою свій драйвер (рис. 24.3).
Клієнтська програма і ОРС-сервер можуть бути встановлені на одному і тому ж комп'ютері, як показано на рис. 16.3, або на різних комп'ютерах мережі Ethernet (рис. 24.4). За наявності декількох комп'ютерів кожен з них може містити ОРС-сервер і підключений до нього фізичні пристрої.
Рис. 24.3. Простій приклад взаємодії прикладних програм і фізичних пристроїв через ОРС-сервер на одному комп'ютері.
У такій системі будь-який ОРС-клиент з будь-якого комп'ютера може звертатися до будь-якого ОРС-серверу, зокрема до розташованого на іншому комп'ютері мережі. Це досягається завдяки технології DCOM, що використовує видалений виклик процедур (RPC — Remote Procedure Call). Наприклад, SCADA на рис. 24.4 може звернутися за даними до модуля введення-виводу по шляху, вказаному на рис. 24.4 штриховою лінією. Звернемо увагу, що комп'ютери і контролери в такій архітектурі можуть працювати з різними промисловими мережами. Обмін даними з ПЛК, що працюють з ОС Windows СЕ, виконується точно так, як з комп'ютерами.
Рис. 24.4. Приклад застосування ОРС-технологии для мережевого доступу до даним в системах автоматизації
У такій системі будь-який ОРС-клиент| з будь-якого комп'ютера може звертатися | до будь-якого ОРС-серверу|, зокрема до розташованого | на іншому комп'ютері мережі|. Це досягається завдяки технології DCOM|, що використовує |віддалений| виклик процедур (RPC| — Remote| Procedure| Call|). Наприклад, SCADA| на мал. 24.4 може звернутися за даними до модуля введення-виводу за напрямком|, вказаному на мал. 24.4 штриховою лінією. Звернемо увагу, що комп'ютери і контроллери в такій архітектурі можуть працювати з| різними промисловими мережами||. Обмін даними з| ПЛК, що працюють з| ОС Windows| СЕ|, виконується так само, як і з іншими комп'ютерами.
При використанні устаткування різних виробників на комп'ютері (контролері) може бути встановлене декілька ОРС-серверов різних виробників, проте ОРС-сервер монопольно займає СОМ-порт комп'ютера (оскільки безперервно виконує оновлення даних), тому число портів повинне бути рівне числу ОРС-серверов. Для нарощування кількості СОМ-ПОРТОВ можна використовувати перетворювачі інтерфейсу USB в RS-232. До різних портів комп'ютера можуть бути підключені різні промислові мережі. В цьому випадку ОРС-сервери виконують функцію міжмережевих шлюзів.
24.3. OPC-HDA-сервер
Завданням ОРС HDA-сервера| (сервера передісторії процесу) є| надання клієнтській програмі єдиного інтерфейсу для обміну даними з будь-якими сховищами даних, у якості яких може бути| нестандартний файл з| даними, стандартна СУБД, ОРС DA-сервер| або інший ОРС HDA-сервер|. Стандарт розповсюджується|поширюється| тільки|лише| на інтерфейси для взаємодії HDA-сервера| з|із| клієнтськими програмами і не встановлює способів отримання|здобуття| або зберігання даних.
Специфікація ОРС HDA| встановлює стандарт на інтерфейси СОМ-ОБ'ЕКТА і методи його використання. Структура сервера і методи взаємодії з клієнтами |цілком| аналогічні загальній| ідеології ОРС і описаному вище ОРС DA| зокрема. Наприклад, ОРС клієнт може під'єднуватися до декількох ОРС HDA-серверам| різних виробників і бути встановлений| на різних комп'ютерах в мережі Ethernet|.
Існує два типи HDA-серверов|:
простій сервер даних передісторії для побудови| графіків (трендів);
сервер для зберігання даних в упакованому| вигляді| з | можливістю| їх обробки і аналізу. До функцій обробки і аналізу даних відносяться знаходження середнього, мінімального і максимального значення тощо. Робота з| даними полягає в читанні, записі або зміні даних.
ЛЕКЦІЯ 25. МОДИФІКАЦІЇ ТА ЗАСТОСУВАННЯ ОРС UA –СЕРВЕРІВ
25.1. Специфікація OPC UA.
25.2. ОРС-DA-сервер в середовищі MS Excel.
25.3. Застосування OPC-сервера з MATLAB і LabVIEW/
Не дивлячись на величезний успіх і загальне визнання, практика виявила наступні недоліки ОРС технології:
•доступність тільки на операційних системах сімейства Microsoft Windows;
зв'язок з технологією DCOM, початкові коди якої є закритими. Це не дозволяє вирішувати питання надійності ПО, а також виявляти і усувати виникаючі програмні відмови;
бувають проблеми конфігурації, пов'язані з DCOM;
неточні повідомлення DCOM про переривання зв'язку;
непристосованість DCOM для обміну даними через інтернет
непристосованість DCOM для забезпечення інформаційної безпеки.
У зв'язку з цим в 2006 р. ОРС Foundation запропонував нову стандартну специфікацію для обміну даними в системах промислової автоматизації, що отримала назву «ОРС Unified Architecture» — «ОРС з уніфікованою архітектурою», яка розглядається як ОРС-стандарт нового покоління.
25.1. Специфікація OPC UA.
Стандарт ОРС UA встановлює методи обміну повідомленнями між ОРС-сервером і клієнтом, не залежні від апаратно-програмної платформи, від типу взаємодіючих систем і мереж. ОРС UA забезпечує надійну і безпечну комунікацію, протидію вірусним атакам, гарантує ідентичність інформації клієнта і сервера.
У новому стандарті використовується поняття об'єкту, під яким розуміється фізичний або абстрактний елемент системи. Прикладами об'єктів можуть бути фізичні пристрої, системи, що включають їх, і підсистеми. Датчик температури, наприклад, може бути представлений як об'єкт, який включає значення температури, набір параметрів сигналізацій і межі їх спрацьовування. Об'єкт, по аналогії з об'єктно-орієнтованим програмуванням, визначається як екземпляр класу, а клас розглядається як тип даних. Об'єкти включають змінні, події і методи.
ОРС UA використовує декілька різних форматів даних, основними з яких є бінарні структури і XML-документи. Формат даних може бути визначений постачальником ОРС-сервера або стандартом. Для роботи з довільними форматами клієнт може запитати у сервера інформацію про опис цього формату. У багатьох випадках використовується автоматичне розпізнавання формату даних під час їх передачі.
ОРС UA володіє високою робастностью* даних і повідомлень про події. Робастность забезпечується механізмом швидкого виявлення помилок комунікації і відновлення даних.
Сервери можуть мати доступ, як до поточних, так і даним, що архівуються, до подій і аварійних сигналів. ОРС UA може бути упроваджений в різні комунікаційні протоколи, а дані можуть бути закодовані способами, оптимальними по співвідношенню ефективності і переносимості на інші платформи.
Архітектура, орієнтована на сервіси. Основною відмінністю ОРС UA від ОРС є відмова від технології СОМ і DCOM фірми Microsoft і перехід до архітектури SOA (Service Oriented Architecture — архітектура, орієнтована на сервіси) з метою обміну інформацією і забезпечення сумісності з безліччю різних апаратно-програмних платформ. Під сервісом в ОРС UA розуміється деяка функціональність, увязнена в програмному компоненті, який може бути транспортований від сервера до клієнта або назад і викликаний видалено. Виклик сервісу аналогічний виклику методу в мовах об'єктно-орієнтованого програмування. Інтерфейс між клієнтом ОРС UA і сервером визначається як набір сервісів. Основним принципом SOA є незалежність від програмної технології, від обчислювальної платформи, від мов програмування, від конкретних застосувань, а також організація сервісів як слабозв'язаних компонентів для побудови систем. Сервіси включають засоби для забезпечення інформаційної безпеки.
Завдяки побудові сервера ОРС UA на основі сервісів з'явилася можливість змінювати розмір (масштабувати) сервер для його використання на платформах з різними обчислювальними ресурсами: для вбудованих застосувань може бути використаний скорочений набір сервісів, для корпоративних мережевих серверів — повний набір.
Сервіси ОРС UА діляться на логічні групи:
сервіси безпечних каналів;
сервіси сесій взаємодії додатків за ініціативою користувача;
сервіси для управління вузлами. Дозволяють клієнтам додавати, модифікувати або видаляти вузли в адресному просторі;
сервіси видимості вузлів, що дозволяють задавати індивідуальні набори видимих вузлів для різних клієнтів;
сервіси атрибутів дозволяють модифікувати атрибути вузлів;
сервіси методів, які викликають функції, виконувані елементами системи;
сервіси для моніторингу вузлів в режимі підписки. Ці сервіси періодично контролюють змінні, атрибути і події, а також генерують повідомлення при настанні заданих умов;
сервіси для здійснення підписки і публікації повідомлень.
Незалежність від COM, DCOM. Відмова від DCOM стала можлива завдяки появі нових транспортних механізмів, заснованих на SOAP, XML, HTTP і сервісах. Завдяки ним ОРС UA дозволяє здійснити безпечну і надійну доставку інформації і об'єднати в одному сервері функціональність ОРС DA, ОРС HDA і ОРС А&е-серверов.
Стандарт ОРС UA не призначений для заміни існуючих ОРС-спецификаций, а доповнює і розширює їх можливості.
Безпека. Для забезпечення інформаційної безпеки в ОРС UA використовуються стандартні веб-сервиси безпеці, такі як WS-Security, WS-Trust або WS-SecureConversation. Діапазон можливостей засобів безпеки тягнеться від простій аутентифікації за допомогою пароля і обміну цифровими підписами до повного шифрування передаваних повідомлень. ОРС-сообщения в стандарті UA передаються за допомогою повідомлень SOAP у вигляді XML-текста. Оскільки кодування і декодування текстового форма-га займає досить багато часу, стандарт передбачає альтернативний спосіб представлення інформації у вигляді бінарного файлу.
Достоїнства нового стандарту. Основними достоїнствами ОРС UA є:
реалізація на мові програмування ANSI З для забезпечення переносимості на інші платформи, включаючи вбудовувані системи. Доступні також версії на .NET і Java (від ОРС Foundation);
орієнтація на сервіси замість орієнтації на об'єкти, що дозволяє використовувати ОРС UA на будь-яких комп'ютерах, вбудовуваних системах, в коммуникаторах і тому подібне, які використовують веб-сервиси;
дозволяє здійснити масштабування ОРС UA, тобто зміна об'єму програми залежно від обчислювальних ресурсів процесора і необхідної функціональності. Може бути виконана також компіляція у вигляді однопоточного або багатопотокового застосування;
підтримка надійного і сучасного транспортного механізму SOAP на базі XML із застосуванням HTTP-протокола;
забезпечення хорошої інформаційної безпеки;
таймаут, що конфігурується, для кожного сервісу;
використання відкритих стандартів World Wide Web Consortium (W3C) замість закритого стандарту COM/DCOM.
Концепція системи на базі ОРС UA. Система на базі ОРС UA може містити безліч клієнтів і серверів. Кожен клієнт може працювати паралельно з декількома серверами, і кожен сервер може обслуговувати декількох клієнтів. Призначене для користувача застосування (наприклад, SCADA) може створювати комбіновані групи клієнтів і серверів для ретрансляції повідомлень, якими воно обмінюється з іншими клієнтами і серверами, як показано на рис. 25.1.
Рис. 25.1. ОРС-UA-клиент і сервер можуть бути скомбіновані в одному застосуванні для взаємодії з іншими ОРС-UA-клиентами і серверами.
Клієнтом при взаємодії з ОРС-сервером є прикладна програма, наприклад, SCADA. Структура клієнта показана на рис. 25.2. Клієнтська програма виконує запити сервісів ОРС-сервера через внутрішній інтерфейс, який є ізолюючим прошарком між програмою і комунікаційним стеком. Комунікаційний стек конвертує запити клієнтської прикладної програми в повідомлення для виклику необхідного сервісу, які посилає серверу. Після отримання відповіді на запити комунікаційний стек передає їх в клієнтську програму.
Рис. 25.2. Структура клієнтської програми в стандарті ОРС UA.
Структура сервера ОРС UA представлена на рис. 25.3. Модулі введення-виводу, ПЛК, інтелектуальні пристрої і програми, які можуть поставляти дані через ОРС-сервер, позначені на рис. 25.4 як «реальні об'єкти». Серверне застосування є програмною реалізацією функцій, які повинен виконувати сервер. Взаємодія ОРС UA-серве-ра з клієнтом виконується через інтерфейс прикладної програми (рис. 25.4) шляхом відправлення запитів і отримання відповідей.
Адресним простором ОРС-сервера є безліч вузлів, доступних клієнтській програмі за допомогою сервісів ОРС UA. «Вузли» в адресному просторі використовуються, щоб представити реальні об'єкти, їх визначення і перехресні посилання. У адресному просторі виділяється підпростір вузлів, які сервер робить «видимими» для клієнта. Видимі вузли організовуються у вигляді ієрархічної структури, для зручності навігації їх клієнтською програмою.
Обмін даними між клієнтом і сервером може виконуватися як шляхом отримання миттєвих відповідей на запити, так і по схемі «видавець-підписчик». У другому випадку клієнтська програма здійснює «підписку» на отримання певних даних, які сервер повинен буде надати у міру їх появи. Для реалізації режиму підписки сервер здійснює безперервний контроль (моніторинг) вузлів і відповідних їм реальних об'єктів з метою виявлення змін. При виявленні змін в даних, подіях або аварійних сигналах (алармах) сервер генерує повідомлення, яке передається клієнтові по каналу підписки.
Рис. 25.4. Структура сервера в стандарті ОРС UA.
OPC UA допускає обмін між двома серверами. Для цього один з серверів виступає в ролі клієнта, другий — в ролі сервера. Таким чином можна з'єднати декілька серверів ланцюжком, при цьому кожен з них виступатиме з одного боку ланцюжка як клієнт, з іншого боку — як сервер, як показано на рис. 24.3.
Для захисту вже зроблених інвестицій в ОРС на базі DCOM організація OPC Foundation розробила стратегію переходу на нову технологію із застосуванням «UA-оболочки», яка допускає обмін даними між старими і новими продуктами. Така оболонка дозволяє, наприклад, DCOM ОРС серверу працювати з ОРС UA клієнтом, і навпаки.
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.
25.3 Застосування|вживання| ОРС-сервера| з|із| MATLAB| і Lab| VIEW
|У MATLAB, починаючи з версії 7, входить пакет ОРС Toolbox, що підтримує ОРС-сервери версії v2.05a. Він містить також блоки Simulink для обміну даними з ОРС-серверами. Аналогічно, Lab VIEW, починаючи з версії 7, також має вбудовану підтримку стандарту ОРС.Попередні версії MATLAB і Lab VIEW не підтримують ОРС, проте підтримують OLE Automation.
У MATLAB|, починаючи|розпочинати,зачинати| з|із| версії 7, входить пакет ОРС Toolbox|, що підтримує ОРС-серверы| версії v2.05a. Він містить|утримує| також блоки Simulink| для обміну даними з|із| ОРС-серверами|. Аналогічно, Lab| VIEW|, починаючи|розпочинати,зачинати| з|із| версії 7, також має вбудовану підтримку стандарту ОРС.
Попередні версії MATLAB| і Lab| VIEW| не підтримують ОРС, проте|однак| підтримують OLE| Automation|. Для роботи з|із| такими програмами можна використовувати об'єкт ОРС Wrapper|. Service|, розроблений НИЛ АП (www.RealLab.ru) який є буфером, що перетворює стандартні виклики ОРС в стандартні виклики OLE| Automation|. Для використання об'єкту OPCWrapper|.Service спочатку створюють з'єднання|сполучення,сполуку| з|із| ним за допомогою рядка (у середовищі|середі| MATLAB|)
wrapper| = actxserver|('OPCWrapper|.Service'), потім підключають об'єкт до сервера:
invoke|(wrapper,'OpcOpenServer','NLopc|.Server',"), де замість «NLopc|.Server» можна використовувати ім'я будь-якого ОРС-сервера|.
Значення тега|, наприклад «NL8TI|.Vinl», читають за допомогою функції invoke| з|із| пакету MATLAB|:
value| = invoke|(wrapper,'OpсReadItem','NL8TI|.Vinl').Запис у фізичний пристрій|устрій| дискретного значення «1»| тега| «NL8TI|.Bit. DOUTO|» виконується аналогічно:
invoke|(wrapper,'OpcWriteltem','NL8TI|.Bit.DoutO',1). Від'єднати об'єкт від сервера можна таким чином:
invoke|(wrapper|, 'OpcCloseServer|'). Після|потім| цього з'єднання|сполучення,сполука| з|із| об'єктом OPCWrapper|.Service необхідно закрити|зачиняти|:
release|(wrapper|). Приклади|зразки| роботи пакету MATLАВ| з|із| фізичними пристроями|устроями| можна знайти на сайті.
ЛЕКЦІЯ 26. Системи програмування на мовах МЕК 61131-3.
26.1. Мова релейноконтактних схем LD.
26.2. Список інструкцій IL.
26.3. Структурований текст ST.
26.4. Діаграми функціональних блоків FBD.
26.5. Функціональні блоки стандартів МЕК 61499 і МЕК 61804.
26.6. Послідовні функціональні схеми SFC.
26.7. Програмне забезпечення.
Стандарт МЕК 61131-3 встановлює п'ять мов програмування ПЛК: три графічних і два текстових. Спочатку стандарт називався IEC 1131-3 і був опублікований в 1993 р., але в 1997 р. МЕК (IEC) перейшов на нову систему позначень і в назві стандарту додалася цифра «6». Просуванням стандарту займається організація PLCopen (http://www.plcopen.org).
Основною метою стандарту було підвищення швидкості і якості розробки програм для ПЛК, а також створення мов програмування, орієнтованих на технологів, забезпечення відповідності ПЛК ідеології відкритих систем, виключення етапу додаткового навчання при зміні типу ПЛК.
Системи програмування, засновані на МЕК 61131-3, характеризуються наступними показниками:
надійністю створюваного програмного забезпечення. Надійність забезпечується тим, що програми для ПЛК створюються за допомогою спеціального призначеного для цього середовища розробки, яка містить всі необхідні засоби для написання, тестування і відладки програм за допомогою емуляторів і реальних ПЛК, а також безліч готових фрагментів програмної коди;
можливістю простій модифікації програми і нарощування її функціональності;
переносимістю проекту з одного ПЛК на іншій;
можливістю повторного використання відпрацьованих фрагментів програми;
простотою мови і обмеженням кількості його елементів.
Мови МЕК 61131-3 з'явилися не як теоретична розробка, а як результат аналізу безлічі мов, вже використовуваних на практиці і пропонованих ринку виробниками ПЛК. Стандарт встановлює п'ять мов програмування з наступними назвами:
•структурований текст (ST — Structured Text);
послідовні функціональні схеми (SFC — Sequential Function Chart);
діаграми функціональних блоків (FBD — Function Block Diagram);
релейно-контактні схеми, або релейні діаграми (LD — Ladder Diagram);
список інструкцій (IL — Instruction List).
Графічними мовами є SFC, FBD, LD. Мови IL і ST є текстовими.
У стандарт було введено декілька мов (а не один) для того, щоб кожен користувач міг застосувати найбільш зрозумілу йому мову. Програмісти частіше вибирають мову IL (схожий на асемблер) або ST (схожий на мову високого рівня Паскаль); фахівці, що мають досвід роботи з релейною логікою, вибирають мову LD, фахівці з САУ і схемотехніки вибирають звичну для них мову FBD.
Вибір один з п'яти мов визначаться не тільки перевагами користувача, але і сенсом вирішуваного завдання. Якщо початкове завдання формулюється в термінах послідовної обробки і передачі сигналів, то для неї простіше і наочніше використовувати мову FBD. Якщо завдання описується як послідовність спрацьовувань деяких ключів і реле, то для неї найнаочніше буде мова LD. Для завдань, які спочатку формулюються у вигляді складного розгалуженого алгоритму, зручніше буде мова ST.
Мови МЕК 61131-3 базуються на наступних принципах:
вся програма розбивається на безліч функціональних елементів — Program Organization Units (POU), кожен з яких може складатися з функцій, функціональних блоків і програм. Будь-який елемент МЕК-программи може бути сконструйований ієрархічно з простіших елементів;
стандарт вимагає строгої типізації даних. Вказівка типів даних дозволяє легко виявляти більшість помилок в програмі до її виконання;
є засоби для виконання різних фрагментів програми в різний час, з різною швидкістю, а також паралельно. Наприклад, один фрагмент програми може сканувати кінцевий датчик з частотою 100 разів в секунду, тоді як другий фрагмент скануватиме датчик температури з частотою один раз в 10 з;
для виконання операцій в певній послідовності, яка задається моментами часу або подіями, використовується спеціальна мова послідовних функціональних схем (SFC);
стандарт підтримує структури для опису різнорідних даних. Наприклад, температуру підшипників насоса, тиск і стан «включено-виключено» можна описати за допомогою єдиної структури «Pomp» і передавати її усередині програми як єдиний елемент даних;
стандарт забезпечує сумісне використання всіх п'яти мов, тому для кожного фрагмента завдання може бути вибраний будь-якій, найбільш зручний, мова;
програма, написана для одного контролера, може бути перенесена на будь-який контролер, сумісний із стандартом МЕК 61131-3.
Будь-який ПЛК працює в циклічному режимі. Цикл починається із збору даних з модулів введення, потім виконується програма ПЛК і закінчується цикл виведенням даних в пристрої виводу. Тому час виконання контролерного циклу залежить від тривалості операцій введення-виводу і швидкодії процесорного модуля.
26.1. Мова релейноконтактних схем LD.
Графічна мова релейної логіки вперше з'явилася у вигляді електричних схем, які складалися з контактів і обмоток електромагнітних реле (рис. 26.1). Такі схеми використовувалися в автоматиці конвеєрів для збірки автомобілів до ери мікропроцесорів. Мова релейної логіки була інтуїтивно зрозуміла людям, злегка знайомим з електротехнікою і тому виявився найбільш поширеним в промисловій автоматиці. Обслуговуючий персонал легко знаходив відмову в устаткуванні, простежуючи шлях сигналу по релейній діаграмі.
Проте мову LD проблематично використовувати для реалізації складних алгоритмів, оскільки він не підтримує підпрограми, функції, инкапсуляцию* і інші засоби структуризації програм з метою підвищення якості програмування. Ці недоліки утрудняють багатократне використання програмних компонентів, що робить програму довгою і складною для обслуговування.
Рис. 26.1. Приклад програми на мові LD (а) і її еквівалент у вигляді електричного ланцюга з реле і вимикачами (б).
Для виконання арифметичних функцій в мову LD були додані функціональні блоки, які виконували операції складання, множення, обчислення середнього і так далі Складні обчислення в цій мові неможливі.
Недоліком є також те, що тільки маленька частина програми уміщається на моніторі комп'ютера або панелі оператора при програмуванні. Не дивлячись на вказані недоліки, мова LD відноситься до найбільш поширеним в світі, хоча використовується для програмування тільки простих завдань.
26.2. Список інструкцій IL.
Мову IL нагадує асемблер і використовується для реалізації функцій, функціональних блоків і програм, а також кроків і переходів в мові SFC. Основною гідністю мови є простота його вивчення. Найчастіше мова IL використовується у випадках, коли потрібно отримати оптимізований код для реалізації критичних секцій програми, а також для вирішення невеликих завдань з малою кількістю розгалужень алгоритму.
Лістинг 4. Приклад програми на мові IL
У основі мови лежить поняття акумулятора і переходів по мітках. Приклад програми на мові IL з коментарями приведений в лістингу 4. Починається програма із завантаження в акумулятор значення змінної. Подальші кроки програми полягають у витяганні вмісту акумулятора і виконанні над ним обмеженого числа допустимих дій (їх в мові всього 24).
26.3. Структурований текст ST.
Мова SFC є текстовою мовою високого рівня і дуже сильно нагадує Паскаль.
Лістинг 5. Приклад програми на мові ST
Мову ST має багато відмінностей від мови Паскаль і розроблений спеціально для програмування ПЛК. Він містить безліч конструкцій для привласнення значень змінним, для виклику функцій і функціональних блоків, для написання виразів умовних переходів, вибору операторів, для побудови ітераційних процесів. Ця мова призначена в основному для виконання складних математичних обчислень, опису складних функцій, функціональних блоків і програм.
26.4. Діаграми функціональних блоків FBD.
FBD є графічною мовою і найбільш зручний для програмування процесів проходження сигналів через функціональні блоки. Мова FBD зручна для схемотехников, які легко можуть скласти електричну схему системи управління на «жорсткій логіці», але не мають досвіду програмування.
Функціональними блоками є фрагменти програм, написаних на IL, SFC або інших мовах, які можуть бути багато разів використані в різних частинах програми і яким відповідає графічне зображення, прийняте при розробці функціональних схем електронних пристроїв (рис. 26.2).
Мова FBD може бути використаний для програмування функцій, функціональних блоків і програм, а також для опису кроків і переходів в мові SFC. Функціональні блоки інкапсулюють дані і методи, чим нагадують об'єктно-орієнтовані мови програмування, але не підтримують спадкоємство і поліморфізм.
Рис. 26.2. Приклад програми на мові FBD.
Типовим застосуванням мови FBD є опис «жорсткої логіки» і замкнутих контурів систем управління. Мова функціональних блоків є зручною також для створення і поповнення бібліотеки типових функціональних блоків, яку можна багато разів використовувати при програмування завдань промислової автоматизації. До типових блоків відносяться блок таймера, ПІД-регулятора, блок секвенсора, трігера, генератора імпульсів, фільтру і тому подібне
26.5. Функціональні блоки стандартів МЕК 61499 і МЕК 61804.
Функціональні блоки є не просто частиною мови FBD, вони застосовуються також для моделювання і проектування систем автоматизації. Функціональні блоки можуть бути використані також для підтримки всього життєвого циклу системи, включаючи проектування, виготовлення, функціонування, валидацию і обслуговування. Опису і застосуванню функціональних блоків присвячені, крім МЕК 61131-3, ще і стандарти МЕК 61499 і МЕК 61804.
Стандарт МЕК 61499, що складається з чотирьох частин, був опублікований в 2005 р. Він встановлює узагальнену архітектуру функціональних блоків і надає керівництво для їх застосування в розподілених системах промислової автоматизації. У таких системах програмне забезпечення розподілене між декількома фізичними пристроями (ПЛК) і декількома функціональними блоками (ФБ), а промислова мережа розглядається як складова частина системи.
Особливістю ФБ в МЕК 61499 є можливість управління подіями і великий ступінь узагальнення функціональних блоків. Стандарт МЕК 61499 може використовуватися спільно з МЕК 61131-3 як засіб опису базових типів функціональних блоків для програмування ПЛК, а внутрішньо опис ФБ виконується за допомогою мов МЕК 61131-3.
Однією з істотних особливостей МЕК 61499 є орієнтація на системи, в яких ФБ управляються подіями, тоді як традиційні системи автоматизації будуються зазвичай на базі того, що тактує або управління за тимчасовим розкладом. Подієве управління використане тому, що в розподілених системах воно є більш загальним. Будь-яка система з тим, що тактує може бути представлена у вигляді системи з подієвим управлінням, але зворотне не завжди вірно. Архітектура функціональних блоків представляється за допомогою текстового опису і графічно (рис. 26.3).
Рис. 26.3. Функціональний блок стандарту МЕК 61499.
Функціональний блок характеризується ім'ям типу і ім'ям екземпляра блоку. Наприклад, ім'ям типу може бути PID, а імен екземплярів може бути багато: PID1, PID2, PID3..., по кількості ФБ, використаних в конкретній системі.
Кожен ФБ має безліч входів і виходів для прийому і передачі потоку подій. Прийняті події можуть ініціювати виконання деяких алгоритмів усередині блоку, внаслідок чого можуть вироблятися події, які передаються іншим блокам системи.
Функціональний блок має також безліч входів, через які поступає потік даних. Вхідні дані відображаються у вхідні змінні, які обробляються алгоритмами блоку, після чого можуть передаватися іншому ФВ у вигляді потоку даних, що виходить. Блок може містити також внутрішні дані і відповідні їм внутрішні змінні.
Кожен ФБ має свої функціональні характеристики, які визначаються комбінацією внутрішніх даних, станів і алгоритмів, а також функціональними можливостями ресурсів пристрою. Ресурс — це функціональний елемент, що міститься у фізичному пристрої і незалежно керівник його операціями, а також що забезпечує різні сервіси для додатків, включаючи планування і виконання алгоритмів. Ресурс може бути створений, конфігурований, стартував, видалений і так далі без дії на інші ресурси в пристрої. Функціями ресурсу є прийом даних і подій через вхідні інтерфейси, обробка і видача їх через вихідні інтерфейси.
Третім стандартом, що розвиває уявлення про функціональні блоки, є МЕК 61804. Він містить специфікацію (деталізацію) вимог до розподілених систем управління, побудованих на основі функціональних блоків. МЕК 61804 конкретизує абстрактні визначення, дані в МЕК 61499. Він додає в МЕК 61499 описів параметрів і функцій, що виконуються функціональними блоками, які можуть бути реалізовані у фізичних пристроях.
Стандарт визначає мінімальний набір ФБ, який може бути необхідний для індустріальних застосувань. Набір складається з двох частин: складні ФБ (ПІД-регулятор, селектор для схем голосування, інкрементний суматор, таймер, інтегратор) і прості (обчислення тригонометричних функцій, модуля, підсумовування, усереднювання, блоки арифметичних операцій, блоки Булевих функцій і тому подібне).
Однією з найширше вживаних специфікацій стандарту МЕК 61804 є опис мови EDDL (Electronic Device Description Language), яка є подальшим розвитком методів генерації GSD файлу в мережах Profibus і розроблявся з підтримкою організації Fieldbus Foundation.
Опису функціональних блоків для систем автоматизації будівель присвячений стандарт ISO 16484-3.
26.6. Послідовні функціональні схеми SFC.
SFC називають мовою програмування, хоча по суті це не мова, а допоміжний засіб для структуризації програм. Він призначений спеціально для програмування послідовності виконання дій системою управління, коли ці дії повинні бути виконані в задані моменти часу або при настанні деяких подій. У його основі лежить представлення системи управління за допомогою понять станів і переходів між ними.
Мова SFC призначена для опису системи управління на самому верхньому рівні абстракції, наприклад, в термінах «Старт», «Наповнення автоклава», «Виконання етапу № 1», «Виконання етапу № 2», «Вивантаження з автоклава». Мова SFC може бути використаний також для програмування окремих функціональних блоків, якщо алгоритм їх роботи природним чином описується за допомогою понять станів і переходів. Наприклад, алгоритм автоматичного з'єднання модему з комутованою лінією описується станами
«Включення», «Виявлення тону», «Набір номер», «Ідентифікація сигналу» і переходами «Якщо довгий — те чекати 20 сік», «Якщо короткий — перейти в стан «Набор Номера»» і так далі
На рис. 26.4 показаний фрагмент програми на мові SFC. Програма складається з кроків і умов переходів. Кроки показуються на схемі прямокутниками, умови переходів — жирною перекреслюючою лінією. Програма виконується зверху вниз. Початковий крок на схемі показується у вигляді подвійного прямокутника. Умови переходів записуються поряд з їх позначеннями. Кожен крок програми може бути реалізацією складного алгоритму, написаного на одній з МЕК-мов.
Рис. 26.4. Приклад програми на мові SFC.
26.7. Програмне забезпечення.
Програмування ПЛК на описаних вище мовах МЕК 61131-3 здійснюється за допомогою спеціалізованого програмного забезпечення, яке розробляється виробниками ПЛК або фірмами, що спеціалізуються на створенні ПО для систем автоматизації. Найбільш відомими в світі є системи CoDeSys фірми 3S (www.3s-software.com) і ISaGRAF фірми ICS Triplex (www.isagraf.com).
CoDeSys (Controller Development System) є комплексом програм для проектування прикладного програмного забезпечення, відладки в режимі емуляції і завантаження програми в ПЛК. Найдетальніше ця система описана в книзі. Основними частинами системи є середовище розробки програми і середовище її виконання (CoDeSys SP), яке знаходиться в ПЛК.
У CoDeSys входять графічні і текстові редактори для всіх п'яти мов МЕК 61131-3. Цей комплекс повністю реалізує вимоги стандарту і додатково вводить ряд оригінальних розширень, найзручнішим з яких є об'єктно-орієнтовані програмування. Проте розширеннями мови можна не користуватися, щоб зберегти вимоги до сумісності мов, що пред'являється до відкритих систем.
У одному проекті може бути використане декілька контролерів різних виробників. Кожен з них може програмуватися як незалежний пристрій або з урахуванням їх взаємодії в промисловій мережі. Проект складається з декількох застосувань, розподілених по декількох контролерах. У одному ПЛК може існувати декілька незалежних застосувань.
Програма, написана на мовах МЕК, компілюється системою CoDeSys в машинний код, оптимізований для заданої апаратної платформи. Компілятор видає діагностичні повідомлення, як на етапі компіляції, так і на етапі введення операторів мови.
Машинний код, що згенерував компілятором CoDeSys, завантажується в ПЛК, після чого розробник має можливість використовувати широкий набір функцій для швидкої і ефективної відладки додатку. Поточні значення змінних видно безпосередньо в редакторах програм. Програму можна виконувати по кроках або по контролерним циклах. Можна задавати точки останову програми, проглядати стек викликів, готувати зв'язні набори значень змінних і завантажувати їх однією командою.
За відсутності реального контролера відладку програми можна виконувати за допомогою вбудованого програмного емулятора.
Система має також вбудований багатоканальний програмний трасувальник (графічний самописець) значень змінних. Він дозволяє наочно представити дані проекту, що динамічно змінюються. Дані акумулюються в пам'яті ПЛК і можуть синхронізуватися з певними подіями. Трасувальник корисний не тільки при відладці, але і при аналізі нештатних ситуацій в процесі експлуатації устаткування.
Після зміни програми під час відладки перекомпілюються тільки змінені частини програми. Їх можна підвантажувати в контролер без зупинки виконання прикладної програми. Ця можливість системи називається «Гарячим оновленням» коди.
Програмований пристрій з'єднується з CoDeSys через допоміжний програмний компонент — шлюз зв'язку, який використовує протокол TCP/IP. Шлюз працює на комп'ютері програміста або видалено, наприклад, через інтернет або мережа Ethernet. Контролер підключається до комп'ютера через будь-який послідовний канал або мережу. Додавши драйвер, виготівник ПК може підтримати свій оригінальний протокол зв'язку.
Спілкування ПЛК з SCADA здійснюється за допомогою стандартного ОРС-сервера.
Для того, щоб ПЛК можна було програмувати за допомогою CoDeSys, в контролері повинна бути встановлена система виконання. Установку системи виконує виготівник контролера. Виготівник забезпечує також підтримку всіх модулів ПЛК, тому кінцевий користувач може зосередитися на розробці тільки прикладної програми.
Середовище виконання CoDeSys може функціонувати в ПЛК під управлінням різних операційних систем або взагалі без них, зокрема на звичайному персональному комп'ютері. Власне ядро реального часу може встановлювати контролерний цикл з точністю до декількох мікросекунд. Прикладна програма залишається працездатною навіть при зависанні ОС.
Крім засобів програмування, CoDeSys має вбудовану систему візуалізації, яка застосовується для операторського управління, а також моделювання на етапі розробки. Візуалізацію можна запустити на комп'ютері, графічній панелі ПЛК або вбудованому в контролер web-сервері.
Користувач може самостійно розширювати можливість CoDeSys шляхом створення бібліотек програмних модулів. Наприклад, він може реалізувати підтримку нестандартних інтерфейсів.
Комплекс програмування CoDeSys побудований за компонентною технологією Microsoft на базі автоматизації. Тому виготівник ПЛК може включити в комплекс свої власні компоненти, від конфігуратора оригінальної мережі до власної мови програмування ПЛК.
Для систем, пов'язаних з безпекою, CoDeSys має бібліотеку функціональних блоків PLCopen Safety, систему виконання для устаткування з дублюванням і спеціалізоване розширення середовища програмування. При раптовому відключенні живлення CoDeSys автоматично зберігає значення змінних у флеш-пам’яті або в ОЗУ з батарейним живленням.
Система ISaGRAF фірми ICS Triplex (www.isagraf.com) також складається з середовища розробки і середовища виконання. Середовище виконання може функціонувати практично на будь-якій операційній системі і будь-якій апаратній платформі, включаючи персональний комп'ютер. Середовище розробки підтримує все п'ять мов МЕК 61131-3 і функціональні блоки МЕК 61499, має засоби для редагування, компіляції, документування, управління бібліотеками, архівації, моделювання системи за відсутності реального ПЛК і відладок з підключеним ПЛК.
Комплекс програм ISaGRAF перший на ринку використовував новий стандарт МЕК 61499 для програмування розподілених систем управління.
Зв'язок між SCADA-пакетом і контролером, запрограмованим за допомогою ISaGRAF, здійснюється за допомогою стандартного ОРС-сервера.
Середовище виконання створюється і завантажується в контролер виробником ПЛК і є незалежною від виконуваної в ній програми користувача.
Середовище розробки має знайомий по Windows-приложениям інтерфейс з підказками, панелями інструментів, вікнами, з функціями вставки і заміни і тому подібне Код, отриманий на виході середовища розробки, може виконуватися на будь-якій апаратно-програмній платформі без змін, якщо на ній заздалегідь встановлено середовище виконання. Середовище розробки може також транслювати призначену для користувача програму, написану на МЕК-мовах, в текст на мові С.
Лекція 27. Призначений для користувача інтерфейс, SCADA-пакетИ.
27.1. Функції SCADA.
27.2. Властивості SCADA.
27.3. Програмне забезпечення.
Більшість систем автоматизації функціонують за участю людини (оператора, диспетчера). Інтерфейс між людиною і системою називають людино-машинним інтерфейсом (ЧМІ), в зарубіжній літературі — HMI (Human-Machinery Interface) або MMI (Man-Machinery Interface). У окремому випадку, коли ЧМІ призначений для взаємодії людини з автоматизованим технологічним процесом, його називають SCADA-системою (Supervisory Control And Data Acquisition). Цей термін переводиться буквально як «диспетчерське управління і збір даних», але на практиці його трактують набагато ширше, а сучасні SCADA-пакети включають щонайширший набір функціональних можливостей, що далеко виходить за рамки збору даних і диспетчерського управління.
27.1. Функції SCADA.
SCADA-пакети, що існують в даний час, виконують безліч функцій, які можна розділити на декілька груп:
настроювання SCADA на конкретне завдання (тобто розробка програмної частини системи автоматизації);
диспетчерське управління;
автоматичне управління;
зберігання історії процесів;
виконання функцій безпеки;
•виконання загальносистемних функцій.
Не дивлячись на безліч функцій, виконуваних SCADA, основним її відмітною ознакою є наявність інтерфейсу з користувачем. За відсутності такого інтерфейсу перераховані вище функції співпадають з функціями засобів програмування контролерів, а управління є автоматичним, в протилежність диспетчерському.
Якість рішень, прийнятих оператором (диспетчером), часто впливає не тільки на якість вироблюваної продукції, але і на життя людей. Тому комфорт робочого місця, зрозумілість інтерфейсу, наявність підказок і блокування явних помилок оператора є найбільш важливими властивостями SCADA, а подальший їх розвиток здійснюється у напрямі поліпшення ергономіки і створення експертних підсистем.
Іноді SCADA комплектуються засобами для програмування контролерів, проте ця функція викликана комерційними міркуваннями і слабо пов'язана з основним призначенням SCADA.
У SCADA-пакетах використовують поняття аларма і події. Подія — це зміна деяких полягань в системі. Прикладами подій можуть бути включення перевалки зерна в елеваторі, завершення циклу періодичного процесу обробки деталі, закінчення завантаження бункера, реєстрація нового оператора і тому подібне Події не вимагають термінового втручання оператора, а просто інформують його про стан системи.
На відміну від події, аларм (від англійського alarm — сигнал тривоги) є попередженням про важливу подію, у відповідь на яку потрібно терміново зробити деякі дії. У англійського слова «аларм» є точний російський переклад — «сигнал тривоги» або «аварійний сигнал», проте термін «аларм» вже міцно увійшов до лексикону промислової автоматизації.
Прикладами алармов може бути досягнення критичної температури зберігання зерна в елеваторі, після якого починається його спалах, досягнення критичного значення тиску в автоклаві, після якого можливий розрив оболонки, спрацьовування датчика відкриття дверей, що охороняються, перевищення допустимого рівня загазованості в котельній і тому подібне
У зв'язку з тим, що аларми вимагає ухвалення рішення, їх ділять на підтверджених і непідтверджених. Підтвердженим називається аларм, у відповідь на якого оператора ввів команду підтвердження. До цього моменту аларм вважається непідтвердженим.
Аларми діляться на дискретних і аналогових. Дискретні сигналізують про зміну дискретній змінній, аналогові аларми з'являються, коли безперервна змінна у(t) входить в заздалегідь заданий інтервал своїх значень. Як приклад на рис. 27.1 показано ділення всього інтервалу зміни змінній у(t) на інтервали «Норма», «Увага» (передаварійний стан) і «Аварія»:
аларм «Увага» виникає при у(а) <у(t) <у(b) під час наростання спостережуваної змінної і при у(d)<у(t)<у(c) під час її зменшення;
аларм «Аварія» виникає при у(b)< у(i).
Рис. 27.1. Приклад призначення інтервалів аналоговим алармам.
Кожна критична межа на рис. 27.1 має зону нечутливості (мертву зону), яка потрібна для того, щоб після зняття стану аларма змінна не могла повернутися в нього унаслідок випадкових викидів в системі (шумів). Межі зон на рис. 9.13 можуть змінюватися з часом.
Аналогічні межі можуть бути призначені для швидкості зміни змінній (для похідної функції у(t)), яка визначається як кут ? нахилу дотичної до кривій у(t).
Методика видачі алармов повинна бути надійною. Зокрема, спливаючі вікна з повідомленнями алармов повинні бути завжди поверх решти вікон, аларми можуть дублюватися звуком і світлом. Оскільки алармов в системі може бути багато, їм призначають різні пріоритети, різну гучність і тони звукового сигналу і тому подібне
Розробка людино-машинного інтерфейсу. Однією з основних функцій SCADA є розробка людино-машинного інтерфейсу, тобто SCADA одночасно є і ЧМІ, і інструментом для його створення. Швидкість розробки істотно впливає на рентабельність фірми, що виконує роботу по впровадженню системи автоматизації, тому швидкість розробки є основним показником якості SCADA з погляду системного інтегратора. У процес розробки входять наступні операції:
створення графічного інтерфейсу (мнемосхем, графіків, таблиць, спливаючих вікон, елементів для введення команд оператора і так далі);
програмування і відладка алгоритмів роботи системи автоматизації. Багато SCADA дозволяють виконувати відладку системи як в режимі емуляції устаткування, так і з підключеним устаткуванням;
настройка системи комунікації (мереж, модемів, комунікаційні контролерів і тому подібне); створення баз даних і підключення до них SCADA.
SCADA як система диспетчерського управління. Як система диспетчерського управління SCADA може виконувати наступні завдання:
взаємодія з оператором (видача візуальній і слуховій інформації, передача в систему команд оператора);
допомога операторові в ухваленні рішень (функції експертної системи);
автоматична сигналізація про аварії і критичні ситуації;
видача інформаційних повідомлень на пульт оператора;
ведення журналу подій в системі;
витягання інформації з архіву і представлення її операторові в зручному для сприйняття вигляді;
підготовка звітів (наприклад, роздрук таблиці температур, графіків зміни операторів, переліку дій оператора);
облік напрацювання технологічного устаткування.
SCADA як частина системи автоматичного управління. Основна частина завдань автоматичного управління виконується, як правило, за допомогою ПЛК, проте частина завдань може покладатися на SCADA. Крім того, в багатьох невеликих системах управління ПЛК можуть бути взагалі відсутніми, і тоді комп'ютер зі встановленою SCADA є єдиним засобом управління. SCADA зазвичай виконує наступні завдання автоматичного управління:
автоматичне регулювання;
управління послідовністю операцій в системі автоматизації;
адаптація до зміни умов протікання технологічного процесу;
автоматичне блокування виконавчих пристроїв при виконанні заздалегідь заданих умов.
Зберігання історії процесу. Знання передісторії керованого процесу дозволяє поліпшити майбутню поведінку системи, проаналізувати причини виникнення небезпечних ситуацій або браку продукції, виявити помилки оператора. Для створення історії система виконує наступні операції:
збір даних і їх обробка (цифрова фільтрація, інтерполяція, стиснення, нормалізація, масштабування і так далі);
архівація даних (дій оператора, зібраних і оброблених даних, подій, алармов, графіків, екранних форм, файлів конфігурації, звітів і тому подібне);
управління базами даних (реального часу і архівних).
Безпека SCADA. Застосування SCADA в системах видаленого доступу через інтернет різко підвищило уразливість SCADA до дій ворожих осіб. Зневага цією проблемою може приводити, наприклад, до відмови в роботі мереж електропостачання, життєзабезпечення, зв'язку, відмови морських маяків, дорожніх світлофорів, до зараження води неочищеними стоками і тому подібне Можливі і тяжчі наслідки з людськими жертвами або великим економічним збитком. Для підвищення безпеки SCADA використовують наступні методи:
•розмежування доступу до системи між різними категоріями користувачів (у змінного оператора, технолога, програміста і директора повинні бути різні права доступу до інформації і модифікації настройок системи);
захист інформації (шляхом шифрування інформації і забезпечення секретності протоколів зв'язку);
забезпечення безпеки оператора завдяки його віддаленню від небезпечного керованого процесу (дистанційне керування). Дистанційний контроль і дистанційне керування є типовими вимогами Ростехнадзора і виконуються по дротяній мережі, радіоканалу (через GSM-або радіомодем), через інтернет і т.д.;
спеціальні методи захисту від кібер-атак;
застосування міжмережевих екранів.
Загальносистемні функції. Оскільки SCADA зазвичай є єдиною програмою для управління системою автоматизації, на неї можуть покладатися також деякі загальносистемні функції:
здійснення взаємодій між декількома SCADA, між SCADA і іншими програмами (MS Office, базою даних, MATLAB і тому подібне);
діагноста апаратури, каналів зв'язку і програмного забезпечення.
27.2. Властивості SCADA.
Аналіз властивостей різних SCADA дозволяє вибирати систему, оптимальну для вирішення поставленого завдання. Все різноманіття властивостей SCADA-пакетов можна розбити на наступні групи:
інструментальні властивості;
експлуатаційні властивості;
властивості відвертості;
економічна ефективність.
Інструментальні властивості. До інструментальних відносяться властивості SCADA, що впливають на ефективність роботи системних інтеграторів:
швидкість розробки проекту;
легкість освоєння;
підтримувані засоби комунікації;
наявність функцій для складної обробки даних;
наявність мов МЕК 61131-3 і універсальної алгоритмічної мови типу Visual Basic;
ступінь відвертості для розробника (підтримка СОМ і ACTIVEX для підключення програмних модулів користувача, а також ОРС, ODBC, OLE DB);
якість технічної документації (повнота, ясність викладу, кількість помилок);
наявність режиму емуляції устаткування для відладки;
наявність внутрішніх графічних редакторів, що дозволяють відмовитися від застосування зовнішніх редакторів типу CorelDraw або Photoshop;
підтримка типових графічних форматів файлів;
якість технічної підтримки (час реакції на питання користувачів, наявність «гарячої лінії» технічної підтримки.
SCADA використовують мови програмування МЕК 61131-3, орієнтовані на технологів, які доповнюються функціями, специфічними для SCADA. Більшість SCADA мають вбудований редактор і інтерпретатор мови Visual Basic фірми Microsoft.
Експлуатаційні властивості. Якість SCADA в процесі експлуатації оцінюється кінцевими користувачами і характеризується наступним набором властивостей:
робастность (нечутливість до помилок користувача, захищеність від вандалів і ворожих елементів, стійкість до помилок в початкових даних);
надійність;
інформаційна захищеність;
наявність засобів збереження даних при нештатних ситуаціях, відключеннях живлення і збоях;
наявність автомата перезапуску системи при її зависанні або після переривання живлення;
підтримка резервування SCADA (операторської станції, мережевих серверів, клієнтських робочих станцій, резервне копіювання даних);
підтримка перемикання екранів з різною деталізацією зображень; підтримка декількох моніторів.
Ступінь відвертості дуже сильно впливає на економічну ефективність системи, проте цей вплив носить випадковий характер, оскільки залежить від ступеня використання властивостей відвертості в конкретному проекті.
Відкритість для програмування користувачем SCADA забезпечується можливістю підключення програмних модулів, написаних користувачем або іншими виробниками. Це зазвичай досягається тим, що SCADA розробляється як контейнер для СОМ-ОБ'ЕКТОВ і ActiveX-елементов. Сумісність з апаратурою і базами даних інших виробників досягається за допомогою стандарту ОРС, застосуванням інтерфейсу ODBC або OLE DB. Відкритість системи програмування досягається підтримкою мов МЕК 61131-3.
Особливо цікаво з погляду відвертості застосування веб-сервера-інтерфейсу, оскільки він забезпечує доступ до SCADA з будь-якого комп'ютера з будь-якої точки миру, незалежно від апаратної платформи, типу каналу зв'язку, операційної системи і використовуваного веб-навигатора.
Економічна ефективність. Економічну ефективність SCADA можна визначити як відношення економічного ефекту від її впровадження до загальної суми витрат на впровадження і підтримку системи в працездатному стані. На економічну ефективність кінець кінцем впливають практично всі властивості SCADA, проте в першу чергу можна виділити наступні:
масштабованість (можливість застосування як для великих, так і для малих систем);
модульність. Модульність дозволяє зробити замовлену комплектацію системи залежно від поставленого завдання. Типовими модулями можуть бути, наприклад, модуль введення-виводу, модуль візуалізації, модуль алармов, модуль трендів, модуль звітів, модуль комерційного обліку енергоресурсів і др.;
вартість обслуговування;
умови оновлення версій;
надійність постачальника, наявність досвіду практичного застосування;
вартість навчання;
вартість технічної підтримки;
методи ціноутворення.
Загальним недоліком універсальних SCADA є їх низька економічна ефективність при використанні для вирішення простих завдань. Не дивлячись на те що ціна SCADA-пакетов істотно знижується при зменшенні кількості доступних користувачеві тегов і набору модулів, залишається високою ціна технічної підтримки. Також дорогою (трудомісткою) залишається адаптація універсальної SCADA до конкретного завдання. Тому ряд фірм пропонують більш вузькоспеціалізовані, але достатньо прості в настройці микро-SCADA з скороченою функціональністю.
27.3. Програмне забезпечення.
В даний час найбільш поширеними вітчизняними універсальними SCADA є MASTERSCADA (ІНСАТ www.masterscada.ru), Trace Mode (AdAstrA Research Group, Ltd www.adastra.ru), Круг-2000 (НПФ «КРУГ» www.krug2000.ru) і З АРГОН (НВТ-автоматика nvt.msk.ru). Всі системи задовольняють основним вимогам до SCADA, описаним вище, і успішно конкурують із зарубіжними аналогами. Нижче ми розглянемо відмітні особливості двох найбільш відомих пакетів: MASTERSCADA і Trace Mode.
MASTERSCADA. Система MASTERSCADA фірми «ІНСАТ» призначена для створення повномасштабних систем автоматизації в різних галузях промисловості. Основною її особливістю є об'єктний підхід, використаний на рівні опису системи при її настроюванні на конкретний об'єкт автоматизації. Наприклад, цех, ділянка, технологічний блок і фізичний пристрій при створенні проекту за допомогою MASTERSCADA розглядаються як окремі об'єкти. Для кожного об'єкту створюється свій опис на технологічній мові програмування. Опис включає властивості об'єкту і документи об'єкту. Властивостями можуть бути період опиту, спосіб лінеаризації датчика, діапазон вхідних сигналів. Документами об'єкту є його зображення, мнемосхема, графік зміни змінних і тому подібне Будь-який документ в системі відноситься до деякого об'єкту. Такий підхід дозволяє легко розмножувати один раз створені об'єкти, що підвищує швидкість настройки SCADA на завдання користувача.
До ознак об'єктного підходу відноситься також можливість спадкоємства всіх настройок від «батьківських» об'єктів. Це означає, що в MASTERSCADA немає необхідності вводити настройки для кожного типу об'єктів «з нуля». Можна використовувати спадкоємство цих настройок від батьківського об'єкту, змінивши в них тільки ті параметри, які відрізняють батька від нащадка.
Створені об'єкти можна копіювати з метою багатократного використання. При копіюванні об'єкту зберігаються всі пов'язані з ним документи і властивості. Зв'язки із зовнішніми джерелами і приймачами даних відновлюються після копіювання, якщо в системі є такі джерела або вільні приймачі даних (фізичні пристрої). Це дозволяє поповнювати бібліотеку об'єктів знов створеними екземплярами і використовувати об'єкти, створені іншими розробниками.
Trace Mode. SCADA-система Trace Mode 6 фірм AdAstrA складається з інструментальної системи і набору виконавчих модулів. До складу Trace Mode 6 входять також засоби управління бизнес-процессами виробничого підприємства.
Для збільшення швидкості розробки проекту користувача застосовується оригінальна технологія автопобудови. Автоматично в SCADA можуть бути побудовані:
джерела даних ПЛК і модулів введення-виводу по відомій конфігурації;
канали за джерелами даних;
зв'язки каналів з редактора аргументів;
зв'язки контролер-сервер і сервер-сервер;
SQL-запроси;
зв'язки з ОРС-сервером;
зв'язок з ODBC.
Автопобудова дозволяє понизити кількість помилок, що допускаються користувачем при ручному створенні проекту.
У п'ятій версії Trace Mode інструментальна система представлена у вигляді окремих компонентів, в 6-ій використано інтегроване середовище розробки.
У систему Trace Mode 6 включено п'ять мов програмування — Techno SFC, Techno LD, Techno FBD, Techno ST, і Techno IL, які є розширеннями відповідних мов стандарту МЕК 61131-3.
Виводи. Основними тенденціями розвитку програмного забезпечення для засобів автоматизації є максимальне спрощення процесу програмування і забезпечення відвертості інструментальних засобів. Кінцевою метою є надання споживачеві можливості побудови якісної системи автоматизації в максимально короткий термін.
Довгий період невизначеності в засобах програмування ПЛК і SCADA-пакетов завершився ухваленням загальновизнаного стандарту МЕК 61131-3 і створенням на його основі інструментальних засобів програмування, які підтримуються фірмами, що спеціалізуються на програмному забезпеченні.
Істотний внесок у відкритість систем автоматизації вніс стандарт ОРС, що забезпечив системним інтеграторам щонайширший вибір апаратного забезпечення, сумісного з будь-якими стандартними SCADA-пакетами, а розробникам контролерного устаткування — розширення ринків збуту.