НМЦ

АВТОМАТИЗАЦІЯ ТЕХНОЛОГІЧНИХ ПРОЦЕСІВ

І СИСТЕМИ АВТОМАТИЧНОГО КЕРУВАННЯ

Електронний посібник

 

ВФПО

1. ОСНОВИ АВТОМАТИЗАЦІЇ СІЛЬСЬКОГОСПОДАРСЬКОГО ВИРОБНИЦТВА

 

1.6. Вибір алгоритму управління об'єктом та основи програмування

1.6.1. Вибір алгоритму управління об'єктом

1.6.2. Розробка алгоритму для автоматизації технологічного процесу

1.6.3. Розробка завдання на програмування мікропроцесорних пристроїв

1.6.4. Мови для програмування мікроконтролерів

1.6.5. Програмування логічних контролерів

 

1.6.1. Вибір алгоритму управління об'єктом

 

 

Динамічні властивості об'єктів управління дають змогу розробникам систем автоматики на стадії проєктування визначити алгоритм управління. Для цього слід проаналізувати співвідношення між постійною часу та часом запізнювання.

 

Відомо, що:

 – безперервний (лінійний);

 – позиційний;

 – рекомендують імпульсний алгоритм управління.

Під час визначення алгоритму управління необхідно пам'ятати, що структура передаточної функції має відповідати виразам для статичного і астатичного об’єкта. Метод інтегральних площин дає більш складну структуру.

 

 

 

 

 

Рис. 1.6.1. Різновиди алгоритмів управління

 

 

У цьому випадку:

· за передаточною функцією знаходять оригінал, за яким будують криву розгону;

· крива розгону (побудована) апроксимується графічним способом, яких би динамічних властивостей не мали зазначені об'єкти;

· розраховані параметри передаточної функції використовуються для визначення алгоритму управління.

 

  

156

Лінійний алгоритм управління – один із найпоширеніших у сільськогосподарському виробництві (рис. 1.6.1). Він поєднує пропорційний, інтегральний, пропорційно-інтегральний, пропорційно-диференційований, пропорційно-інтегрально-диференційований. Кожний з них має свої недоліки і переваги.

 

 

У практиці проєктування для конкретного об'єкта вибирають такий алгоритм, який би забезпечив один із трьох типових перехідних процесів: аперіодичний, з 20% перерегулюванням та з мінімальним інтегральним показником якості (рис. 1.6.2). Аперіодичний характеризується максимальним динамічним відхиленням, мінімальним часом регулювання та відсутністю перерегулювання. Перехідний процес з 20 % перегулюванням середній за якістю. Перехідний процес з мінімальним інтегральним показником якості (площа між кривою перехідного процесу та віссю часу мінімальна) характеризується значним перерегулюванням, найбільшим часом регулювання та мінімальним динамічним відхиленням. Конкретний типовий перехідний процес може бути визначений з урахуванням вимог технологів до відповідного об'єкта управління.

Методика вибору найкращого алгоритму управління полягає у визначенні динамічного коефіцієнта регулювання. Для статичних об'єктів:

 

 

де у1 – максимальне динамічне відхилення;

kо – коефіцієнт передачі об'єкта управління;

ум – максимально можливе збурення по навантаженню (у відсотках переміщення регулювального органу).

 

 

 

 

 

Рис. 1.6.2. Типові перехідні процеси:

а – аперіодичний; б – із 20 % перерегулюванням;

в – із мінімальним інтегральним показником якості

 

Після цього за графічними залежностями визначають алгоритм управління.

Для астатичних об'єктів:

 

 

де εо   швидкість розгону об'єкта;

τ – час запізнювання.

Для астатичного об'єкта алгоритм управління знаходять за табл. 1.18.

 

Таблиця 1.18

Динамічні коефіцієнти регулювання для астатичних об’єктів

Алгоритм управління

Динамічні коефіцієнти регулювання

аперіодичний

із 20% пере­гулюванням

із мінімальним інтегральним критерієм

Пропорційний

Пропорційно-інтегральний

Пропорційно-інтегрально- диференціальний

2,9

1,4

1,3

1,4

1,3

1,1

0,9

0,8

 

Для того, щоб переконатись у правильності вибору алгоритму управління, розраховують час регулювання, який потім порівнюють із вимогами технологів:

 

tр = τφ,

 

де φ – відносний час регулювання, що вибирається за табл. 1.19.

 

  

156

Позиційний алгоритм управління – найдешевший, але придатний лише для низькочастотних об'єктів, тобто для тих, що пропускають тільки першу гармоніку. На відміну від лінійних алгоритмів позиційний потребує для розрахунків параметрів настройки регуляторів не метод синтезу, а метод аналізу.

 

 

Широке застосування при цьому отримав метод Гольдфарба, в основі якого лежить метод гармонічної лінеаризації.

Застосування методу гармонічної лінеаризації передбачає деяку нелінійну ланку, що входить до складу системи автоматизації, замінити лінійною, властивості якої характеризуються коефіцієнтами гармонічної лінеаризації:

 

 

де g1, g2 – коефіцієнт гармонічної лінеаризації.

 

  

156

Розрахунок параметрів настройки полягає в тому, що розробники задаються деякою зоною нечутливості і розраховують параметри автоколивань, що виникають у системі. Якщо вони відповідають вимогам технологів, то розрахунки на цьому завершують. Якщо ж ні, то беруть інші значення зони нечутливості і так доти, доки не отримують задовільний результат.

 

 

Таблиця 1.19

Відносний час регулювання

Алгоритм управління

Об’єкт

Відносний час регулювання

аперіодичний

із 20% перерегулю-ванням

із мінімальним інтегральним критерієм

Пропорційний

 

Пропорційно-інтегральний

Пропорційно-інтегрально-диференціальний

Статичний

Астатичний

Статичний

Астатичний

Статичний

Астатичний

4,5

6,0

8,0

14,0

5,5

9,0

6,5

8,0

12,0

16,0

7,0

12,0

9,0

16,0

18,0

10,0

13,0

 

 

1.6.2. Розробка алгоритму для автоматизації технологічного процесу

 

 

Так як автоматизація технологічного процесу перекладає участь людини в здійсненні цього процесу на плечі технічних засобів, то необхідно «навчити» їх здійснювати і забезпечувати протікання процесу в повній відповідності з запланованим його ходом, тобто автоматизованим управлінням технологічним процесом.

 

  

156

Для цього людина спочатку має ретельно вивчити процес, усвідомити досягнення певної мети, що саме має вийти в результаті виконання, уявити кожну операцію або дію, умови їх проведення і нарешті, детально описати послідовність виконання дій.

 

 

Ця послідовність виконання дій, що веде до досягнення певної мети, називається алгоритмом управління. Під час складання алгоритму складні дії розбиваються на простіші дії, аж до елементарних рухів.

Така деталізація дозволяє найскладнішу дію уявити як сукупність простіших дій, а виконання найпростіших дій можна доручити технічним засобам, то це буде прямий шлях до автоматизації технологічного процесу. Ці засоби здатні виконувати за людини значну кількість різних дій. Причому ці засоби можуть виконувати не тільки фізичні дії або елементарні, але і аналізувати, обчислювати, оцінювати, приймати рішення.

Всі ці функції автоматичним пристроям надає людина. Однак вони на відміну від людини не володіють розумом, але вони здатні виконувати елементарні рухи, точно відповідні отриманим командам. Розпізнати команду пристрій зможе тільки в тому випадку, якщо команда однозначна і її різне тлумачення неможливо. Тому кожна команда має бути записана на зрозумілій мові. Такий алгоритм управління називається керуючої програмою.

Управляючі технологічними процесами, під час проєктування систем автоматизації в першу чергу звертається увага на розробку алгоритмів і програмних засобів для керування цими процесами. Розглянемо основні алгоритми управління технологічними процесами.

 

Алгоритм первинної обробки сигналів, що знімаються з датчиків, передбачає наступні дії:

· вибір датчика технологічної інформації;

· управління АЦП і зчитування коду під час аналогового сигналу;

· перетворення коду сигналу відповідно до заданого значення фізичної величини, що реєструється;

· фільтрацію випадкових перешкод, що накладаються на контрольований параметр;

· видачу результуючого значення контрольованого параметра.

Вибір датчика технологічної інформації пов'язаний з організацією схеми опитування контрольованих параметрів об'єкта управління. У практиці застосовують дві основні схеми: циклічного і вибіркового опитування.

 

image040-topaz-enhance

Рис. 1.6.3. Алгоритм циклічного опитування

з передумовою і постумовою

 

Алгоритм циклічного опитування забезпечує послідовне опитування всіх датчиків зазначеного списку (рис. 1.6.3). Список адрес підключення датчиків до портів мікроЕОМ розміщують в деякому масиві, наприклад KD, кількість датчиків вказують у змінної N. У керуючій програмі організовується цикл і створюється масив результатів опитування KD(i), де i змінюється від 0 до N.

 

  

156

Під час опитування алгоритм запитує у диспетчера номер датчика і після введення здійснюється обробка результату вимірювання і алгоритм зупиняється.

 

 

Наступний крок алгоритму залежить від виду реєстрованого сигналу і схемотехнічних рішень, що забезпечують перетворення аналогової величини в цифровий код. Якщо АЦП реалізований апаратно, то алгоритм опитування видає сигнал на початок перетворення і очікує сигнал завершення та готовності коду в порту введення–виведення. Якщо один АЦП використовується для обслуговування декількох датчиків, то алгоритм опитування має забезпечувати управління комутатором для підключення АЦП до конкретного каналу.

Перетворення коду сигналу аналогової величини в значення вимірюваної фізичної величини проводиться на основі залежності, що розміщується в одній з підпрограм.

Важливе значення в обробці аналогових сигналів з використанням мікропроцесорних засобів грає фільтрація випадкових перешкод, що з'являються під час вимірювання параметрів технологічного об'єкта управління. Під час побудови мікропроцесорних систем управління застосовуються різні алгоритми фільтрації випадкових перешкод. Одним з них є алгоритм усереднення показань датчика. У цьому випадку проводиться багаторазове опитування датчика упродовж деякого часу і розрахунок середнього значення.

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

 

Алгоритм аналізу поточного стану об'єктів контролю і управління передбачає:

·   опитування і первинну обробку контрольованих параметрів;

·   аналіз значень параметрів на основі заданих і виявлення аварійних ситуацій;

·   аналіз реакції технологічного об'єкта управління на видане керуючий вплив.

Виявлення аварійних ситуацій здійснюється шляхом порівняння отриманих результатів з нижньою і верхньою межами допустимих значень.

Під час управління технологічним обладнанням збої під час увімкнення або його вимкнення можуть привести до аварії системи, тому алгоритми аналізу повинні оцінювати правильність відпрацювання керуючих впливів. Отже, виконавчі механізми мають містити датчики положення (рис. 1.6.4) або руху. Наприклад, положення заслінок або шиберів – «відкрито», «закрито», стан конвеєрних ліній – «увімкненя», «вимкнена» тощо.

 

Рис. 1.6.4. Датчики положення

 

Алгоритми логіко-програмного управління передбачають виконання низки робочих операцій, які періодично повторюються в заданій послідовності. Зазвичай такі алгоритми здійснюють логічну послідовність увімкнення і вимкнення виконавчих механізмів.

 

З цього випливає, що основний набір операцій логіко-програмного управління пов'язаний:

· із вмиканням виконавчих механізмів;

· аналізом відпрацювання команд увімкнення;

· технологічної затримкою вироблення чергового сигналу;

· вмиканням виконавчих механізмів і аналізу їх стану.

Як правило, алгоритми логіко-програмного управління застосовуються для дискретних об'єктів управління (конвеєрних ліній, зблокованих груп машин і механізмів тощо). Основними видами логіко-програмного управління є тимчасове, крокове, блоковане, селективне, старт-стопи, цифрове і аналогове.

Алгоритм тимчасового управління передбачає увімкнення або вимкнення виконавчого механізму з обумовленою затримкою щодо введеної команди.

Під час крокового управління алгоритм формує серію команд, які видаються на технологічне обладнання, в певні моменти часу. У цьому випадку контроль обробки команд технологічним обладнанням не проводиться.

Алгоритм блокованого управління передбачає реалізацію послідовності команд, які видаються на виконавчі механізми через задані інтервали часу. Він реалізує різні види блокувальних зв'язків – дозволяють, забороняють, альтернативні і комбіновані.

Особливості алгоритму селективного управління полягають у наявності ознаки стану, до якого має перейти об'єкт управління. При цьому кожне з станів може контролюватися одним або двома датчиками, а зміна стану зв'язується з переходом у зону дії датчика або зону, обмежену двома датчиками.

 

Розроблений алгоритм має забезпечувати зв'язок з оператором (технологом). Він може здійснюватися на основі:

· видачі повідомлень про порушення технологічного процесу на дисплей, друк, пульт технолога-оператора і мнемосхему;

· контролю за ходом технологічного процесу за допомогою команд, що вводяться з дисплея;

· реєстрації тенденцій зміни технологічних параметрів на самописних приладах.

Різноманіття об'єктів логіко-програмного управління не дозволяє в рамках навчального посібника будувати і обговорювати універсальні алгоритми і програмні засоби для мікроЕОМ. Розглянуті вище алгоритми можуть бути використані в якості основи для побудови універсальних алгоритмів логікопрограмного управління технологічним обладнанням.

 

1.6.3. Розробка завдання на програмування мікропроцесорних пристроїв

 

 

  

156

Розробка завдання на програмування мікропроцесорних пристроїв необхідна для того, щоб скласти точне уявлення про хід виконання завдання і узгодити технічні питання, що буде виконувати мікропроцесорний пристрій.

 

 

Розглянемо основні складові завданнь на які необхідно звернути увагу при програмуванні пристроїв.

Назва або мета завдання має коротко відображати суть завдання: що має робити програма, яка розробляється, або пристрій на її основі.

Предмет розробки. Чітко вказати границі системи, що розробляється: використовуючи алгоритм технологічного процесу або нарисувати функціональну схему всієї системи у вигляді «квадратиків» і зв'язків між ними.

Тип мікроконтролера, мова програмування. Вибрати тип мікроконтролера, який буде використовуватися та мову програмування. Необхідно враховувати під час вибору мікроконтролера тип корпусу, напругу живлення, температурні характеристики, ціну та інші параметри.

 

Деталі реалізації програми або пристрою. Чітко визначити наступну інформацію:

·   які сигнали від яких пристроїв і в якому вигляді отримує мікроконтролер або пристрій (АЦП, датчики, інші контролери тощо);

·   які сигнали формує мікроконтролер або пристрій (управляє якимись іншими пристроями та ін.);

·   зв'язується мікроконтролер (пристрій) з ЕОМ. Якщо так, то яким чином (за яким протоколом) і яка програма буде з ним взаємодіяти;

·   алгоритм роботи програми або пристрою (що конкретно в який момент вона має робити і т.п.). Наприклад, можна скласти і додати блок-схему, або описати алгоритм словесно;

·   характеристики живлення мікроконтролера або пристроїв (напруга живлення контролера, граничний струм, чи потрібен енергозберігальний режим та ін.).

Функціональна або електрична схема технологічного процесу допоможе зрозуміти завдання, які вирішуються мікроконтролером, і алгоритми його роботи (рис. 1.6.5).

Під час розробки програми для ЕОМ, необхідно визначити вимоги до неї.

 

Рис. 1.6.5. Програмування мікропроцесорного пристрою

 

Прошивка і налагодження. Під час розробки програмного забезпечення для мікроконтролерів потрібно мати можливість потім прошити його самостійно. Також потрібно провести тестування і налагодження програми або роботи пристрою для заданого технологічного процесу. Процес налагодження, як правило, багатоетапний і вимагає певних технічних навичок і проводиться безпосередньо на об’єкті.

Інша інформація. Під час розробки завдання на програмування потрібно враховувати, що важливіше – підвищити надійність або швидкодію пристрою, знизити вартість роботи чи підвищити швидкість виконання програми.

 

1.6.4. Мови для програмування мікроконтролерів

 

 

  

156

Програмування мікроконтролерів здійснюється, як правило, за допомогою спеціальних пристроїв, які називаються програматорами.

 

 

Під час прошивки за допомогою плати фірми Atmel, здійснюється програмування мікроконтролерів AVR. У платі вже є заздалегідь прошитий бутлоадер і порт USB, які дозволяють безпечно прошити мікроконтролер, не даючи користувачу доступу до даних, що можуть цей самий МК вивести з ладу.

 

Рис. 1.6.6. Програмування AVR-мікроконтролерів мовою Асемблер

 

Як мови програмування мікроконтролерів використовується два: С/С++ і Асемблер (рис. 1.6.6). Кожен з них має свої переваги і недоліки. Так, якщо говорити про асемблер, то він дає можливість зробити все дуже тонко і якісно, особливо важливо це, коли не вистачає оперативної пам'яті або оперативних потужностей. Але його вивчення і написання програм на ньому вимагає досить багато зусиль, пунктуальності і часу.

Тому для розробок мікроконтролерів часто використовують мови програмування С та С++. Вони є більш зрозумілими, за своїм виглядом і структурою вони близькі людської мови, хоча і не представляють з себе її в повноцінному розумінні. Також вони мають дуже добре продуманий функціонал, який може запросто взаємодіяти з апаратною частиною, уявляючи, що це всього лише елемент програми. При всіх своїх очевидних перевагах на С і С++ створюють більш об'ємні програми, ніж на асемблері.

Також в окремих випадках, коли критичним є використовуваний оперативний простір, можна поєднати ці мови. Майже всі середовища розробки для С++ мають можливість установки в програму асемблерних вставок. Тому у разі виникнення проблеми на критичній ділянці можна написати асемблерну вставку та інтегрувати її в прошивку для мікроконтролера, а саму прошивку, точніше, більшу її частину, написану на С або С++. Програмування мікроконтролерів на С є більш легким, тому багато хто вибирає саме ці мови. Але ті, хто не боїться труднощів і хоче зрозуміти особливість роботи апаратури, можуть спробувати свої сили і з асемблером.

 

1.6.5. Програмування логічних контролерів

 

 

  

156

Програмовані логічні контролери (ПЛК) легкі в програмуванні, тому що їх програмна мова нагадує логіку роботи реле (рис. 1.6.7). Підключення сигналів і стандартне програмування дещо відрізняються у різних моделей ПЛК, але вони досить схожі, що дозволяє розмістити тут «загальне» введення в програмування пристрою.

 

 

Сучасна логіка системи керування встановлена в ПЛК за допомогою комп'ютерної програми. Ця програма визначає, які виходи знаходяться під напругою і за яких вхідних умов.

 

Рис. 1.6.7. Програмовані логічні контролери

 

Хоча сама програма нагадує схему логіки реле, в ній не існує ніяких контактів перемикача або котушок реле, діючих всередині ПЛК для створення зв'язків між входом і виходом. Ці контакти та котушки уявні. Програма пишеться і проглядається за допомогою персонального комп'ютера, підключеного до порту програмування ПЛК.

Не менш важливо зрозуміти, що комп'ютер, використовуваний для написання і редагування програми, не потрібен для подальшого використання ПЛК. Після того, як програма була завантажена в програмований контролер, комп'ютер можна вимикати, і ПЛК самостійно буде виконувати програмні команди.

 

Рис. 1.6.8. Панельний програмований логічний контролер

(ПЛК) К1-102

 

Істинна потужність і універсальність ПЛК розкривається, коли ми хочемо змінити поведінку системи управління. Оскільки ПЛК є програмованим пристроєм, ми можемо змінити, команди, які ми поставили, без перенастроювання компонентів, підключених до нього. Припустимо, що ми вирішили функцію «перемикач – лампочка» перепрограмувати навпаки: натиснути кнопку, щоб вимкнути лампочку, і відпустити її, щоб увімкнути (рис. 1.6.8).

 

  

156

Одне з переваг ПЛК, яке просто не може бути продубльовано електромеханічним реле, є віддалений моніторинг і управління через цифрові мережі комп'ютера. Оскільки ПЛК – це нічого більше, ніж спеціалізований цифровий комп'ютер, він може легко «спілкуватися» з іншими комп'ютерами.

 

 

Мови для програмовано логічних контролерів вельми оригінальні і істотно відрізняються від відомих мов програмування для комп'ютерів. Розглянемо мови, які отримали визнання інженерів в області автоматизації технологічних процесів.

 

Рис. 1.6.9. Програмування мовою функціональних блоків і діаграм (Function Block Diagram)

 

Розвиток ідеї програмної реалізації електричних схем призвело до появи мови функціональних блоків і діаграм (ФБД), FBD (Function Block Diagram). Діаграма FBD (рис. 1.6.9) дуже нагадує принципову схему електронного пристрою на мікросхемах. Виходи примірників функціональних блоків можуть бути подані на входи інших блоків або безпосередньо на виходи ПЛК. Самі блоки, представлені на схемі як функціональні модулі, можуть виконувати стандартні і спеціальні функції.

FBD-схеми чітко відображають взаємозв'язок входів і виходів діаграми. Якщо алгоритм добре описується з позиції сигналів, то його FBD-уявлення завжди виходить значно наочніше, ніж в текстових мовах.

Популярністю серед прикладних ПЛК програмістів користується мова релейно-контактних схем (РКС) або релейних діаграм LD (Ladder Diagram) – графічна мова, яка реалізує структури електричних ланцюгів (рис. 1.6.10).

 

image056-topaz-enhance

Рис. 1.6.10. Приклад програми на мові релейно-контактних схем

та еквівалентна їй електрична схеми

 

Графічно LD діаграма представлена у вигляді двох вертикальних шин живлення. Між ними розташовані ланцюги, утворені з’єднанням контактів. Контактом може виступати вхід ПЛК або деяка проміжна ланка. Навантаженням кожного ланцюга служить реле. Кожне реле має контакти, які можна використовувати в інших ланцюгах.

LD ідеально підходить для реалізації комбінаційних логічних схем і кінцевих автоматів. Завдяки можливості включення в LD функцій і функціональних блоків, виконаних на інших мовах, сфера застосування практично не обмежена. Популярність LD пояснюється його наочністю. Фахівець, який володіє основами схемотехніки, без особливих зусиль розбереться в роботі LD діаграми.

Також використовується мова IL (Instruction list) – типовий асемблер з акумулятором і переходами по мітках. Набір інструкцій стандартизований і не залежить від конкретної цільової платформи. Мова IL дозволяє працювати з будь-якими типами даних, викликати функції і функціональні блоки, реалізовані на будь-якій мові. На IL можна описати алгоритм будь-якої складності, хоча текст іноді буває досить громіздким.

Стандарт МЕК не зобов'язує розробників ПЛК реалізовувати всі мови програмування. Зазвичай невеликі фірми-виробники ПЛК реалізують кілька або одну єдину мову. Багато в чому пріоритет використання тієї чи іншої мови програмування залежить від історично сформованих традицій в галузі або сфері застосування логічних контролерів.

 

Um8A

Питання для самоконтролю

 

1. Що дають динамічні властивості об'єктів управління розробникам систем автоматики?

2. Яка послідовність визначення алгоритму управління методом інтегральних площин?

3. Чим характеризується перехідний процес із 20 %- ним регулюванням?

4. Як визначається динамічний коефіцієнт регулювання для статичних об'єктів?

5. Як визначається динамічний коефіцієнт регулювання для астатичних об'єктів?

6. Який метод застосовують для позиційного алгоритму управління?

7. Яка необхідність створення алгоритму управляння технологічним процесом?

8. Який алгоритм називається керуючою програмою?

9. Які дії передбачає алгоритм первинної обробки сигналів?

10. Що забезпечує алгоритм циклічного опитування?

11. Що передбачають алгоритми аналізу поточного стану об'єктів?

12. Що передбачає алгоритми логіко-програмного управління?

13. Що передбачають алгоритми тимчасового, крокового, блокованого та селективного управління?

14. Що має забезпечувати розроблений алгоритм?

15. Яка необхідність розробки завдань на програмування мікропроцесорних пристроїв?

16. Які основні складові завдання на програмування пристроїв?

17. За допомогою яких пристроїв здійснюється програмування мікроконтролерів?

18. Які мови використовуються для програмування, їх характеристика?

19. Які особливості в програмуванні логічних контролерів?

20. Дайте характеристику мовам, що використовуються для програмування логічних пристроїв.

 

 

Попередня тема

На початок

Наступна тема