SlideShare a Scribd company logo
1 of 49
Download to read offline
ТДА16-1 (20.07.16)
Програмовані логічні
контролери стандарту
МЕК 61131
Олександр Пупена (pupena_san@ukr.net)
www.asu.in.ua
17.07.2016 ПЛК pupena_san@ukr.net 1
Програма та місце проведення конференції – за посиланням
Місце в загальній архітектурі
17.07.2016 ПЛК pupena_san@ukr.net 2
Інші (не ПЛК) варіанти:
• DCS (інша структура і парадигма)
• PC-base
• пристрої IEC 61499
• конфігуровані локальні/мережні
регулятори
• …
Спрощена фізична структура системи
17.07.2016 ПЛК pupena_san@ukr.net 3
Терміни: PLC (ПЛК), канали, модулі, блоки, CPU, AI, DI, AO, DO, CP, Rack (Шасі), Slot,
fieldbus, RIO/DIO, середовище розробки, real-time
Варіанти фізичної структури ПЛК
17.07.2016 ПЛК pupena_san@ukr.net 4
компактний (моноблочний)
компактний з можливістю розширення
модульний
Варіанти фізичної структури ПЛК
17.07.2016 ПЛК pupena_san@ukr.net 5
з розподіленими I/O ПЛК з вбудованим HMI
Централізований I/O vs розподілений
17.07.2016 ПЛК pupena_san@ukr.net 6
Централізований (модулі I/O) Розподілений (RIO – віддалені модулі I/O)
за місцем ЦПУ ПЛК можливий на відстані, по місцю датчиків/ВМ, або
навіть в полі (IP-67) – зручність монтажу, економія
кабельної продукції
той самий бренд, малий вибір
варіантів, але перевірена сумісність
можливий інший бренд, великий вибір варіантів,
можлива певна несумісність
максимальна швидкість взаємодії з
ЦПУ
можливі великі швидкості (RTE – Real Time
Ethernet)
гаряча заміна дефектних модулів гаряча заміна дефектних модулів
легка заміна дефектних модулів:
вийняв - вставив
легка заміна дефектних модулів (не у всіх
випадках): вийняв старий, змінив перемикачі на
новому, вставив
топологія – зірка (кабелі в один щит) топологія – шина (інколи з відгалуженнями), кільце
(надійність), інколи дерево (AS-i)
діагностування стану діагностування стану
проблематична організація гарячого
резервування
гаряче резервування базується на RIO
Розподілені I/O – автомат станів (приклад
Profibus DP)
17.07.2016 ПЛК pupena_san@ukr.net 7
Стан Поведінка
Power_ON /
Reset
DP slave включили або
перевантажили і почалася
внутрішня ініціалізація
WPRM
Wait for
Parameter
DP slave очікує параметри від DP
Master
WCFG
Wait for
Configuration
DP slave очікує телеграму
Check_Configuration від DP Master
DXCHG
Data Exchange
DP slave циклічно обмінюється
даними процесу і за необхідності
відповідає діагностичним запитом
Робота з віддаленими модулями I/O аналогічна до локальних.
Фізична структура ПЛК (продовження)
17.07.2016 ПЛК pupena_san@ukr.net 8
Широкий вибір на ринку, в т.ч. за критеріями:
• температурний діапазон
• тип живлення
• IP (ступінь захисту), вібростійкість
• відповідність SIL
• монтажні особливості
• особливості підключення
• архітектурна сумісність з іншими виробниками
• ….
Фізична структура ПЛК: резервування
17.07.2016 ПЛК pupena_san@ukr.net 9
140CRP
140CRP
140NOE
140NOE
мережа I/O (адаптована під гаряче резервування)
основний ПЛК резервний ПЛК I/O
I/OI/O
I/O
мережа I/O
Приклад структури системи
17.07.2016 ПЛК pupena_san@ukr.net 10
Конфігурування та програмування
17.07.2016 ПЛК pupena_san@ukr.net 11
Принципи:
• орієнтована на задачі реального часу, циклічне виконання задач
• мінімум програмування, максимум конфігурування
• мінімум помилок (макропрограми, відсутність вказівників, прямого
доступу до пам'яті …)
• захищеність від зависання (сторожові таймери)
• масштабованість, як малі так і великі системи на тому ж ПЛК,
можливість нарощування
• відкритість до зв'язку з засобами інших виробників (стандартизація)
• максимальна універсальність, мінімальний час адаптації до бренду
(стандартизація)
• можливість імпорту/експорту даних, програм
• максимальна зручність і простота налагодження, швидкий пошук
логічних помилок в коді
Середовище розробки та виконання,
приклад Unity PRO
17.07.2016 ПЛК pupena_san@ukr.net 12
• Як правило, середовище розробки платне для ПЛК великої та середньої
канальності, безкоштовне для малої канальності
Функціональна структура
17.07.2016 ПЛК pupena_san@ukr.net 13
Програмні задачі (Task): однозадачне середовище
виконання
17.07.2016 ПЛК pupena_san@ukr.net 14
задача (Task)
основний
час для ОС
час виконання задачі контролюється ОС ПЛК -
не більше ніж T watch dog (сторожовий
таймер), якщо більше – задача аварінйо
зупиняється !
Однозадачне виконання: циклічне vs періодичне
17.07.2016 ПЛК pupena_san@ukr.net 15
циклічне
періодичне
- різна тривалість задачі
- без пауз між викликами задачі
- однакова періодичність
виклику задачі
- під час пауз виділяється
більший час ЦПУ на
комунікації
Коли опитуються входи і записуються виходи?
17.07.2016 ПЛК pupena_san@ukr.net 16
- обробка входів/виходів, організація задач,
специфічні для різних ПЛК
- якщо опитування входів на початку задачі (образ
процесу), а запис виходів в кінці задачі, то образ
процесу не змінюється протягом виконання задачі,
а виходи оновлюються тільки по закінченню
- деякі ПЛК мають можливість проводити
запис/читання з I/O в будь якому місці програми
(наприклад в S7300/400 - PIW/PQW)
- у деяких ПЛК змішаний підхід - і образ процесу і
пряме звернення
Багатозадачність
17.07.2016 ПЛК pupena_san@ukr.net 17
Декілька задач, для кожної своя умова виклику (не обов'язково по часу),
можуть бути свої watchdog.
Типи задач
17.07.2016 ПЛК pupena_san@ukr.net 18
● CoDeSys
● Cyclic – періодичний виклик
● Freewheeling – ціклічно по колу
● Event – за зміною значення змінної або іншої
програмної події
● External Event – апаратне переривання
S7 1200 (TIA Portal)
Залежить від ПЛК!
M340 (Unity PRO)
Пріоритетність виконання задач
(приклад Unity PRO)
17.07.2016 ПЛК pupena_san@ukr.net 19
Програмна структура: POU - Program
Organizational Unit
17.07.2016 ПЛК pupena_san@ukr.net 20
Залежить від ПЛК!
Задача
CoDeSys Unity PRO
POU викликаються в Задачі; POU можуть викликати інші POU; усі POU в
ланцюжку виконуються в контексті тієї ж Задачі
Типи POU
17.07.2016 ПЛК pupena_san@ukr.net 21
Залежить від ПЛК!
Unity PRO: Section (ака Program), Function Block, Function/Procedure (тільки
бібліотечні)
Адресація каналів
17.07.2016 ПЛК pupena_san@ukr.net 22
Різні підходи прив'язки до каналів:
• топологічна адресація, визначається розміщенням каналу
в структурі (не потребує конфігурування адресації);
• наприклад %I2.4.3 відповідає за значення дискретного входу в 2-
му шасі, 4-й модуль, 3-й канал
• виділення адрес для каналів - mapping (відображення) на
певну область пам'яті (можливо поіменовану) під час
конфігурування;
• наприклад %IW100 може містити значення будь-якого
аналогового входу, куди захоче розробник
• змішане (або, і)
Топологічна адресація
17.07.2016 ПЛК pupena_san@ukr.net 23
Залежить від ПЛК!
Різні рівні і кількість в ієрархії:
• адреса PLC, пристрою на шині
• номер шасі
• номер модуля/блока
• номер каналу на модулі
• номер ком. порту
%IW0.1.23.4.5
шасі ком.модуля
ком. модуль
ком. порт
номер пристрою
модуль на пристрої
канал на
модулі
аналоговий вхід
приклад 2
приклад 1
Виділення адрес для каналів
17.07.2016 ПЛК pupena_san@ukr.net 24
Залежить від ПЛК!
Адресація
17.07.2016 ПЛК pupena_san@ukr.net 25
Залежить від ПЛК!
%IX або %I – область дискретних входів
%IW – область значень аналогових входів (у багатьох ПЛК пересікається з %I)
%QX або %Q – область дискретних виходів
%QW – область значень аналогових виходів (у багатьох ПЛК пересікається з %Q)
%MX або %M – область внутрішніх бітів
%MW – область внутрішніх слів (у багатьох ПЛК пересікається з %MW)
… інші варіанти
• топологічна адресація - %IW0.4.3
• нетопологічна адресація - %IW130
• поіменована адресація через змінні
Змінні
17.07.2016 ПЛК pupena_san@ukr.net 26
Залежить від ПЛК!
Типи
• INT (як правило 16-бітний!), UINT, DINT (32-бітний), UDINT
• BOOL
• BYTE
• REAL
• STRING
• ARRAY
• STRUCT (UDT)
• …
Найменування: в деяких ПЛК назви зберігаються тільки в проекті на ПК
(синоніми адрес); в деяких ПЛК змінним не обов'язково явно вказуються
адреси
Область видимості: сильно залежить від ПЛК; в ряді ПЛК усі змінні є
глобальними!
Мови
17.07.2016 ПЛК pupena_san@ukr.net 27
LD
ST/SCL
IL/STL
FBD/CFC
SFC/Grafcet
• стандарт IEC 61131-3: ПЛК підтримує як мінімум одну з 5-ти
• «заточені» під різні задачі
• виробники дуже люблять «діалекти», звідси несумісність і різність реалізацій
• мови в ПЛК можуть бути нерівнозначні за можливостями
• деякі середовища дозволяють конвертацію між мовами
ST/SCL
17.07.2016 ПЛК pupena_san@ukr.net 28
●ST - Structured Text
● текстова, C/Pascal/Basic подібна
● вирази та інструкції
● доступні умовні розгалуження, цикли
● послідовне виконання
● як правило, найбільш гнучка, люблять програмісти і автоматники
● як правило, присутня в ПЛК середньої та великої канальності
IL/STL
17.07.2016 ПЛК pupena_san@ukr.net 29
●IL - Instruction List
● текстова, орієнтовані на список інструкцій
● базуються на акумуляторах
● маленькі інструкції
● в деяких ПЛК єдина мова, інші мови - тільки представлення
● популярна тільки в ряді платформ (STL в S7 300/400, VIPA)
LD
17.07.2016 ПЛК pupena_san@ukr.net 30
●LD – Ladder Diagram
● графічна, РКС (релейно-контакнті
схеми)
● орієнтована переважно на
дискретну логіку
● добре сприймається електриками
● послідовне виконання зверху до
низу, зліва – направо
● функціональність сильно залежить
від реалізації
● в багатьох ПЛК (малої
канальності) є єдиною мовою
програмування
РКС і LD
17.07.2016 ПЛК pupena_san@ukr.net 31
або
FBD/CFC
17.07.2016 ПЛК pupena_san@ukr.net 32
●FBD – Function Block Diagram
● графічна, базується на потоках даних
● при нормальній реалізації «заточена» під регулювання, люблять
«регулювальні» автоматники і електронники
● функціональні блоки та функції з’єднуються входами/виходами
● послідовність виконання зверху-вниз, зліва-направо, задається
номером виконання
● в багатьох реалізаціях дуже обмежена (напр. Simatic), звідси часто
дискредитується, але там є CFC
● в деяких ПЛК (малої канальності) є єдиною мовою програмування
FBD/CFC і функціональна схема контуру
регулювання
17.07.2016 ПЛК pupena_san@ukr.net 33
Рис. 6.30. Приклад контуру регулювання з використанням
бібліотечних блоків та мови FBD
ПЛК (Програма користувача)
%QW4.1
Аналого-
вий вхід
Аналого-
вий вихід
4-20 мА 4-20 мА
%IW3.3
комунікаційний канал
HMI (операторська панель) або SCADA)
H1
HC1
зада
не
ВМ
25 ºС
TI1
HS1
1.45
25 c
Kp
Ti
дійсне
Керування логікою виконання в FBD та LD
17.07.2016 ПЛК pupena_san@ukr.net 34
• EN (Enable) –
можливість
логіки «якщо-
то»
• в деяких
реалізаціях ПЛК
відсутня (але
обов'язкова в IEC
61131-3)
SFC/Grafcet
17.07.2016 ПЛК pupena_san@ukr.net 35
●SFC – Sequential Function Chart
● графічна, базується на станах і
переходах
● дуже потужна для керування
періодичними процесами
● ресурсоємна (при повноцінній
реалізації), багато вбудованих
функцій контролю (налаштування
та контроль часу виконання кроку,
сигналізація …)
● добре сприймається технологами в
якості опису технологічного
процесу
SFC (приклад)
17.07.2016 ПЛК pupena_san@ukr.net 36
Бібліотека
17.07.2016 ПЛК pupena_san@ukr.net 37
• включає в себе готові функції,
процедури, функціональні блоки, сильно
спрощує життя розробнику
• програма як взамозвязаний набір
бібліотечних елементів
• часто є критерієм вибору платформи
• більшість сучасних середовищ розробки
для ПЛК середньої і великої канальності
дають можливість розробляти власні
бібліотечні елементи!
• таймери, лічильники, робота з
датою/часом, масивами, перетворення
типів, математичні, регулювання,
керування приводами …
Навігація в середовищі розробки
17.07.2016 ПЛК pupena_san@ukr.net 38
Конфігурування, налаштування
17.07.2016 ПЛК pupena_san@ukr.net 39
• багато функцій конфігуруються а не
програмуються
• конфігурація модулів в т.ч. RIO
зберігаються в центральному ЦПУ
Інструменти відлагодження програм
17.07.2016 ПЛК pupena_san@ukr.net 40
• анімаційні таблиці змінних (watch)
• анімація програм
• анімаційні графічні екрани
• самописці
• точки зупинки
• …
Приклади анімації програм в режимі виконання
17.07.2016 ПЛК pupena_san@ukr.net 41
https://www.youtube.com/watch?v=l1yp_VwcA88
Імітатор ПЛК
17.07.2016 ПЛК pupena_san@ukr.net 42
• імітатори ПЛК (simulator) - імітують роботу ПЛК на ПК розробника
• деякі мають можливість з'єднання по TCP/IP -> SCADA+simulator
відлагодження ПЗ АСУТП без наявного обладнання!
• ресурси ПК імітатору дає можливість вбудовувати складну
програмну модель об'єкту на тих же IEC 61131-3
Завантаження, зміна
17.07.2016 ПЛК pupena_san@ukr.net 43
• окрім виконавчого проекту, завантаження вихідного коду (не завжди)
• зміна програми без зупинки ПЛК!
• доступ з паролем
• завантаження через зв'язані між собою ПЛК (шлюзування)
• …
Діагностика ПЛК
17.07.2016 ПЛК pupena_san@ukr.net 44
• діагностичні індикатори на ЦПУ і модулях
• діагностичні вікна середовища розробки
• діагностичний буфер
• діагностичні функції та змінні
• можливість програмної обробки
• підтримка діагностики на рівні мереж
• інтеграція діагностики з SCADA/HMI
Приклад діагностичного вікна
17.07.2016 ПЛК pupena_san@ukr.net 45
Комунікації
17.07.2016 ПЛК pupena_san@ukr.net 46
• fieldbus (промислові мережі)
• рівня розподіленої периферії (RIO, приводи)
• рівня датчиків/ВМ (+ живлення по мережі)
• рівня ПЛК (між ПЛК/SCADA)
• Типові сервіси
• неявний (без програмного ініціювання) обмін I/O для розподіленої
периферії і датчиків:
• конфігурується, діагностується, автомат станів
• максимально наближений до локального I/O
• як правило функціонує методом Polling
• неявний обмін Global Data для розподіленої бази даних:
• для реалізації спільного Application між різними ПЛК одного рівня
• конфігурується, діагностується
• як правило функціонує методом Publisher/Subscriber
• явний обмін повідомленнями читання/запис об'єктів,
відправка/отримання повідомлення (прив'язаний до циклу),
клієнт/сервер
• функції програмування/конфігурування пристрою, діагностичні
функції
Комунікації (продовження)
17.07.2016 ПЛК pupena_san@ukr.net 47
• сумісність та обмеження
• підтримка «рідних» протоколів
• модульність: набір за необхідністю потрібної мережі
• підтримка відкритих протоколів: великі бренди підтримують
«великі» протоколи
• «тотальна» підтримка Modbus RTU та Modbus/TCP
• все прямує до Ethernet TCP/IP: TCP/IP, mail, http (WEB Server), ftp,
snmp, dhcp
• до Ethernet TCP/IP йде RTE (Real Time Ethernet), поширені
представники в Україні: Ethernet IP, Profinet.
• прграмісту як правило доступний інтерфейс до Application Layer, тільки
деякі вендори надають інтерфейс Open TCP
• для Ethernet TCP/IP повна відсутність кіберзахисту - все відкрито!
• технологія OPC вирішує проблему сумісності зі SCADA;
• OPC UA – перспективний напрям, реалізація планується на рівні ПЛК
• безпосередня інтеграція в Cloud зараз не підтримується, але можлива
через шлюзування та SCADA
Висновки для парадигми ПЛК
17.07.2016 ПЛК pupena_san@ukr.net 48
• на даний момент великий вибір і функціональні можливості
• висока швидкодія
• сучасні не тільки для дискретного керування а і аналогового
регулювання (PAC)
• домінує в Україні, але українські бренди не є домінуючими
• централізований підхід, але є розподілена периферія і
можливість глобальних даних (розподіленої БД) програм
декількох ПЛК
• окремі БД ПЛК та SCADA/HMI (програє в порівнянні з DCS), але
імпорт/експорт тегів навіть лінк зі SCADA/HMI, але як правило
того ж вендора
• не тільки пропрієтарні а і відкриті протоколи, відкритість все
збільшується
• можливість роботи з засобами інших вендорів
Висновки для парадигми ПЛК (продовження)
17.07.2016 ПЛК pupena_san@ukr.net 49
• простіше, швидше, надійніше за програмування PC Based, але
потребує певних знань в програмуванні, складніше для
експлуатаційного персоналу КВПіА (програє DCS і кофігурованим
контролерам та регуляторам)
• не таке гнучке в порівнянні PC Based, не дозволяє низькорівневого
програмування
• підтримка єдиного стандарту IEC 61131: перехід на іншу платформу
- адаптація до середовища а не вивчення мови програмування,
базовий перехід можливий через тижневе навчання
• як правило платне середовище розробки, під Windows
• підтримка дуже важливих речей: діагностика, налагоджування,
заливка на льоту …

More Related Content

What's hot

документ Microsoft office word (3)дріжджі
документ Microsoft office word (3)дріжджідокумент Microsoft office word (3)дріжджі
документ Microsoft office word (3)дріжджіdarkvadim
 
Лабораторна робота №2
Лабораторна робота №2Лабораторна робота №2
Лабораторна робота №2shulga_sa
 
Прийняття рішень.ppt
Прийняття рішень.pptПрийняття рішень.ppt
Прийняття рішень.pptssuser28db6b
 
технологія приготування яєць
технологія приготування яєцьтехнологія приготування яєць
технологія приготування яєцьssuser9f32ae
 
календарне планування
календарне плануваннякалендарне планування
календарне плануванняmetodist_selid
 
методична розробка урокуменю
методична розробка урокуменюметодична розробка урокуменю
методична розробка урокуменюAnatoliy Movchan
 
лекція 10 11
лекція 10 11лекція 10 11
лекція 10 11Olga Koval
 
"Бабин Яр : наш біль і пам'ять"
"Бабин Яр : наш біль і пам'ять""Бабин Яр : наш біль і пам'ять"
"Бабин Яр : наш біль і пам'ять"Savua
 
сирітські і вдовинні пісні
сирітські і вдовинні піснісирітські і вдовинні пісні
сирітські і вдовинні пісніAlina Kapitula
 
навчально виховний проект наші друзі птахи
навчально виховний проект наші друзі птахинавчально виховний проект наші друзі птахи
навчально виховний проект наші друзі птахиschoolperem1984
 
Патофізіологія кислотно-основного стану
Патофізіологія кислотно-основного стануПатофізіологія кислотно-основного стану
Патофізіологія кислотно-основного стануVictor Dosenko
 
Ігор Калинець
Ігор КалинецьІгор Калинець
Ігор КалинецьDmytro Kryvenko
 
Хронологія заборони укр. мови
Хронологія заборони укр. мови Хронологія заборони укр. мови
Хронологія заборони укр. мови ZHOIPPO
 
Logistika proizvodnje
Logistika proizvodnjeLogistika proizvodnje
Logistika proizvodnjeJa Ti
 
кулін хар ка перших страв
кулін хар ка перших стравкулін хар ка перших страв
кулін хар ка перших стравkostyuchik
 
Подорож у космос.pptx
Подорож у космос.pptxПодорож у космос.pptx
Подорож у космос.pptxssuser9ff6d9
 
історія букви ґ
історія букви ґісторія букви ґ
історія букви ґhel77
 
лекція 2
лекція 2лекція 2
лекція 2Olga Koval
 

What's hot (20)

документ Microsoft office word (3)дріжджі
документ Microsoft office word (3)дріжджідокумент Microsoft office word (3)дріжджі
документ Microsoft office word (3)дріжджі
 
Лабораторна робота №2
Лабораторна робота №2Лабораторна робота №2
Лабораторна робота №2
 
Прийняття рішень.ppt
Прийняття рішень.pptПрийняття рішень.ppt
Прийняття рішень.ppt
 
технологія приготування яєць
технологія приготування яєцьтехнологія приготування яєць
технологія приготування яєць
 
календарне планування
календарне плануваннякалендарне планування
календарне планування
 
методична розробка урокуменю
методична розробка урокуменюметодична розробка урокуменю
методична розробка урокуменю
 
лекція 10 11
лекція 10 11лекція 10 11
лекція 10 11
 
"Бабин Яр : наш біль і пам'ять"
"Бабин Яр : наш біль і пам'ять""Бабин Яр : наш біль і пам'ять"
"Бабин Яр : наш біль і пам'ять"
 
сирітські і вдовинні пісні
сирітські і вдовинні піснісирітські і вдовинні пісні
сирітські і вдовинні пісні
 
навчально виховний проект наші друзі птахи
навчально виховний проект наші друзі птахинавчально виховний проект наші друзі птахи
навчально виховний проект наші друзі птахи
 
Disayn
DisaynDisayn
Disayn
 
Патофізіологія кислотно-основного стану
Патофізіологія кислотно-основного стануПатофізіологія кислотно-основного стану
Патофізіологія кислотно-основного стану
 
Ігор Калинець
Ігор КалинецьІгор Калинець
Ігор Калинець
 
Хронологія заборони укр. мови
Хронологія заборони укр. мови Хронологія заборони укр. мови
Хронологія заборони укр. мови
 
Logistika proizvodnje
Logistika proizvodnjeLogistika proizvodnje
Logistika proizvodnje
 
кулін хар ка перших страв
кулін хар ка перших стравкулін хар ка перших страв
кулін хар ка перших страв
 
Подорож у космос.pptx
Подорож у космос.pptxПодорож у космос.pptx
Подорож у космос.pptx
 
історія букви ґ
історія букви ґісторія букви ґ
історія букви ґ
 
лекція 2
лекція 2лекція 2
лекція 2
 
білки
білкибілки
білки
 

Similar to Програмовані логічні контролери стандарту МЕК 61131

Підсистема керування збором та обробкою даних в реальному часі
Підсистема керування збором та обробкою даних в реальному часіПідсистема керування збором та обробкою даних в реальному часі
Підсистема керування збором та обробкою даних в реальному часіПупена Александр
 
Lec13 14 багатопоточнiсть
Lec13 14 багатопоточнiстьLec13 14 багатопоточнiсть
Lec13 14 багатопоточнiстьcit-cit
 
2 3 утиліти для роботи з COM-портами ПК
2 3 утиліти для роботи з COM-портами ПК 2 3 утиліти для роботи з COM-портами ПК
2 3 утиліти для роботи з COM-портами ПК Пупена Александр
 
Гаврилюк К.docx
Гаврилюк К.docxГаврилюк К.docx
Гаврилюк К.docxssuser2a9622
 
5 Підсистема введення/виведення. OPC
5 Підсистема введення/виведення. OPC5 Підсистема введення/виведення. OPC
5 Підсистема введення/виведення. OPCПупена Александр
 
Підсистема введення/виведення SCADA/HMI. Modbus
Підсистема введення/виведення SCADA/HMI. ModbusПідсистема введення/виведення SCADA/HMI. Modbus
Підсистема введення/виведення SCADA/HMI. ModbusПупена Александр
 
Computers and Computing Works lecture №5
Computers and Computing Works lecture №5Computers and Computing Works lecture №5
Computers and Computing Works lecture №5Lesia Sobolevska
 
Intro "Промислові мережі та інтеграційні технології"
Intro "Промислові мережі та інтеграційні технології" Intro "Промислові мережі та інтеграційні технології"
Intro "Промислові мережі та інтеграційні технології" Пупена Александр
 
Изучение интерфейсов операционных систем с помощью Embedded System
Изучение интерфейсов операционных систем с помощью Embedded SystemИзучение интерфейсов операционных систем с помощью Embedded System
Изучение интерфейсов операционных систем с помощью Embedded Systemitconnect2016
 
G rpc lection1_theory_bkp2
G rpc lection1_theory_bkp2G rpc lection1_theory_bkp2
G rpc lection1_theory_bkp2eleksdev
 
Hardware workshop with Lampa (Arduino intro course)
Hardware workshop with Lampa (Arduino intro course)Hardware workshop with Lampa (Arduino intro course)
Hardware workshop with Lampa (Arduino intro course)Hackraft
 

Similar to Програмовані логічні контролери стандарту МЕК 61131 (20)

Підсистема керування збором та обробкою даних в реальному часі
Підсистема керування збором та обробкою даних в реальному часіПідсистема керування збором та обробкою даних в реальному часі
Підсистема керування збором та обробкою даних в реальному часі
 
4 2 1 Протоколи IP (частина 1)
4 2 1 Протоколи IP (частина 1)4 2 1 Протоколи IP (частина 1)
4 2 1 Протоколи IP (частина 1)
 
Lec13 14 багатопоточнiсть
Lec13 14 багатопоточнiстьLec13 14 багатопоточнiсть
Lec13 14 багатопоточнiсть
 
2 3 утиліти для роботи з COM-портами ПК
2 3 утиліти для роботи з COM-портами ПК 2 3 утиліти для роботи з COM-портами ПК
2 3 утиліти для роботи з COM-портами ПК
 
Profibus (УКР)
Profibus (УКР)Profibus (УКР)
Profibus (УКР)
 
Гаврилюк К.docx
Гаврилюк К.docxГаврилюк К.docx
Гаврилюк К.docx
 
5 Підсистема введення/виведення. OPC
5 Підсистема введення/виведення. OPC5 Підсистема введення/виведення. OPC
5 Підсистема введення/виведення. OPC
 
Підсистема введення/виведення SCADA/HMI. Modbus
Підсистема введення/виведення SCADA/HMI. ModbusПідсистема введення/виведення SCADA/HMI. Modbus
Підсистема введення/виведення SCADA/HMI. Modbus
 
4 2 3 ip
4 2 3 ip 4 2 3 ip
4 2 3 ip
 
5.1 profibus intro
5.1 profibus intro5.1 profibus intro
5.1 profibus intro
 
Computers and Computing Works lecture №5
Computers and Computing Works lecture №5Computers and Computing Works lecture №5
Computers and Computing Works lecture №5
 
Intro "Промислові мережі та інтеграційні технології"
Intro "Промислові мережі та інтеграційні технології" Intro "Промислові мережі та інтеграційні технології"
Intro "Промислові мережі та інтеграційні технології"
 
1 3 osi рівні
1 3 osi рівні 1 3 osi рівні
1 3 osi рівні
 
4 2 2 ip
4 2 2 ip 4 2 2 ip
4 2 2 ip
 
Tda18 1
Tda18 1Tda18 1
Tda18 1
 
2 2 символьний обмін
2 2 символьний обмін2 2 символьний обмін
2 2 символьний обмін
 
Изучение интерфейсов операционных систем с помощью Embedded System
Изучение интерфейсов операционных систем с помощью Embedded SystemИзучение интерфейсов операционных систем с помощью Embedded System
Изучение интерфейсов операционных систем с помощью Embedded System
 
G rpc lection1_theory_bkp2
G rpc lection1_theory_bkp2G rpc lection1_theory_bkp2
G rpc lection1_theory_bkp2
 
Hardware workshop with Lampa (Arduino intro course)
Hardware workshop with Lampa (Arduino intro course)Hardware workshop with Lampa (Arduino intro course)
Hardware workshop with Lampa (Arduino intro course)
 
Opc
OpcOpc
Opc
 

More from Пупена Александр

Розроблення підсистеми трендів
Розроблення підсистеми трендівРозроблення підсистеми трендів
Розроблення підсистеми трендівПупена Александр
 
9 Приклади підсистеми тривожної сигналізації в SCADA Citect і SCADA zenon
9 Приклади підсистеми тривожної сигналізації в SCADA Citect і SCADA zenon9 Приклади підсистеми тривожної сигналізації в SCADA Citect і SCADA zenon
9 Приклади підсистеми тривожної сигналізації в SCADA Citect і SCADA zenonПупена Александр
 
8 Розробка підсистеми тривожної сигналізації
8 Розробка підсистеми тривожної сигналізації8 Розробка підсистеми тривожної сигналізації
8 Розробка підсистеми тривожної сигналізаціїПупена Александр
 
Анімовані компоненти та навігація
Анімовані компоненти та навігаціяАнімовані компоненти та навігація
Анімовані компоненти та навігаціяПупена Александр
 
Розроблення дисплеїв та анімованих елементів
Розроблення дисплеїв та анімованих елементівРозроблення дисплеїв та анімованих елементів
Розроблення дисплеїв та анімованих елементівПупена Александр
 
Загальні принципи розроблення АРМ оператора на базі SCADA/HMI
Загальні принципи розроблення АРМ оператора на базі SCADA/HMIЗагальні принципи розроблення АРМ оператора на базі SCADA/HMI
Загальні принципи розроблення АРМ оператора на базі SCADA/HMIПупена Александр
 
2_3 Функції графічного людино-машинного інтерфейсу: високоефективний ЛМІ
2_3 Функції графічного людино-машинного інтерфейсу: високоефективний ЛМІ2_3 Функції графічного людино-машинного інтерфейсу: високоефективний ЛМІ
2_3 Функції графічного людино-машинного інтерфейсу: високоефективний ЛМІПупена Александр
 
2.1. Функції графічного людино-машинного інтерфейсу
2.1. Функції графічного людино-машинного інтерфейсу2.1. Функції графічного людино-машинного інтерфейсу
2.1. Функції графічного людино-машинного інтерфейсуПупена Александр
 
Мастер-класс: отправка данных с ПЛК в Google Sheet с использованием Node-RED
Мастер-класс: отправка данных с ПЛК в Google Sheet с использованием Node-REDМастер-класс: отправка данных с ПЛК в Google Sheet с использованием Node-RED
Мастер-класс: отправка данных с ПЛК в Google Sheet с использованием Node-REDПупена Александр
 
Про курс «Технологии Индустрии 4.0»
Про курс «Технологии Индустрии 4.0» Про курс «Технологии Индустрии 4.0»
Про курс «Технологии Индустрии 4.0» Пупена Александр
 
Git и GitHub для создания учебного контента
Git и GitHub для создания учебного контентаGit и GitHub для создания учебного контента
Git и GitHub для создания учебного контентаПупена Александр
 
Короткий опис лабораторного практикуму по MOM
Короткий опис лабораторного практикуму по MOMКороткий опис лабораторного практикуму по MOM
Короткий опис лабораторного практикуму по MOMПупена Александр
 
Модель компетенцій спеціалістів Industrial Automation в епоху 4.0
Модель компетенцій спеціалістів Industrial Automation в епоху 4.0 Модель компетенцій спеціалістів Industrial Automation в епоху 4.0
Модель компетенцій спеціалістів Industrial Automation в епоху 4.0 Пупена Александр
 

More from Пупена Александр (20)

Node-RED довідник
Node-RED довідникNode-RED довідник
Node-RED довідник
 
Інші підсистеми
Інші підсистемиІнші підсистеми
Інші підсистеми
 
11 Підсистеми захисту
11 Підсистеми захисту11 Підсистеми захисту
11 Підсистеми захисту
 
Розроблення підсистеми трендів
Розроблення підсистеми трендівРозроблення підсистеми трендів
Розроблення підсистеми трендів
 
9 Приклади підсистеми тривожної сигналізації в SCADA Citect і SCADA zenon
9 Приклади підсистеми тривожної сигналізації в SCADA Citect і SCADA zenon9 Приклади підсистеми тривожної сигналізації в SCADA Citect і SCADA zenon
9 Приклади підсистеми тривожної сигналізації в SCADA Citect і SCADA zenon
 
8 Розробка підсистеми тривожної сигналізації
8 Розробка підсистеми тривожної сигналізації8 Розробка підсистеми тривожної сигналізації
8 Розробка підсистеми тривожної сигналізації
 
Анімовані компоненти та навігація
Анімовані компоненти та навігаціяАнімовані компоненти та навігація
Анімовані компоненти та навігація
 
Розроблення дисплеїв та анімованих елементів
Розроблення дисплеїв та анімованих елементівРозроблення дисплеїв та анімованих елементів
Розроблення дисплеїв та анімованих елементів
 
Загальні принципи розроблення АРМ оператора на базі SCADA/HMI
Загальні принципи розроблення АРМ оператора на базі SCADA/HMIЗагальні принципи розроблення АРМ оператора на базі SCADA/HMI
Загальні принципи розроблення АРМ оператора на базі SCADA/HMI
 
2_3 Функції графічного людино-машинного інтерфейсу: високоефективний ЛМІ
2_3 Функції графічного людино-машинного інтерфейсу: високоефективний ЛМІ2_3 Функції графічного людино-машинного інтерфейсу: високоефективний ЛМІ
2_3 Функції графічного людино-машинного інтерфейсу: високоефективний ЛМІ
 
2 2 Інші функції SCADA/HMI
2 2 Інші функції SCADA/HMI2 2 Інші функції SCADA/HMI
2 2 Інші функції SCADA/HMI
 
2.1. Функції графічного людино-машинного інтерфейсу
2.1. Функції графічного людино-машинного інтерфейсу2.1. Функції графічного людино-машинного інтерфейсу
2.1. Функції графічного людино-машинного інтерфейсу
 
Мастер-класс: отправка данных с ПЛК в Google Sheet с использованием Node-RED
Мастер-класс: отправка данных с ПЛК в Google Sheet с использованием Node-REDМастер-класс: отправка данных с ПЛК в Google Sheet с использованием Node-RED
Мастер-класс: отправка данных с ПЛК в Google Sheet с использованием Node-RED
 
Про курс «Технологии Индустрии 4.0»
Про курс «Технологии Индустрии 4.0» Про курс «Технологии Индустрии 4.0»
Про курс «Технологии Индустрии 4.0»
 
Git и GitHub для создания учебного контента
Git и GitHub для создания учебного контентаGit и GitHub для создания учебного контента
Git и GitHub для создания учебного контента
 
Короткий опис лабораторного практикуму по MOM
Короткий опис лабораторного практикуму по MOMКороткий опис лабораторного практикуму по MOM
Короткий опис лабораторного практикуму по MOM
 
Git4 all
Git4 allGit4 all
Git4 all
 
Presentation 111019 1
Presentation 111019 1Presentation 111019 1
Presentation 111019 1
 
Модель компетенцій спеціалістів Industrial Automation в епоху 4.0
Модель компетенцій спеціалістів Industrial Automation в епоху 4.0 Модель компетенцій спеціалістів Industrial Automation в епоху 4.0
Модель компетенцій спеціалістів Industrial Automation в епоху 4.0
 
Vebinar isa88
Vebinar isa88Vebinar isa88
Vebinar isa88
 

Програмовані логічні контролери стандарту МЕК 61131

  • 1. ТДА16-1 (20.07.16) Програмовані логічні контролери стандарту МЕК 61131 Олександр Пупена (pupena_san@ukr.net) www.asu.in.ua 17.07.2016 ПЛК pupena_san@ukr.net 1 Програма та місце проведення конференції – за посиланням
  • 2. Місце в загальній архітектурі 17.07.2016 ПЛК pupena_san@ukr.net 2 Інші (не ПЛК) варіанти: • DCS (інша структура і парадигма) • PC-base • пристрої IEC 61499 • конфігуровані локальні/мережні регулятори • …
  • 3. Спрощена фізична структура системи 17.07.2016 ПЛК pupena_san@ukr.net 3 Терміни: PLC (ПЛК), канали, модулі, блоки, CPU, AI, DI, AO, DO, CP, Rack (Шасі), Slot, fieldbus, RIO/DIO, середовище розробки, real-time
  • 4. Варіанти фізичної структури ПЛК 17.07.2016 ПЛК pupena_san@ukr.net 4 компактний (моноблочний) компактний з можливістю розширення модульний
  • 5. Варіанти фізичної структури ПЛК 17.07.2016 ПЛК pupena_san@ukr.net 5 з розподіленими I/O ПЛК з вбудованим HMI
  • 6. Централізований I/O vs розподілений 17.07.2016 ПЛК pupena_san@ukr.net 6 Централізований (модулі I/O) Розподілений (RIO – віддалені модулі I/O) за місцем ЦПУ ПЛК можливий на відстані, по місцю датчиків/ВМ, або навіть в полі (IP-67) – зручність монтажу, економія кабельної продукції той самий бренд, малий вибір варіантів, але перевірена сумісність можливий інший бренд, великий вибір варіантів, можлива певна несумісність максимальна швидкість взаємодії з ЦПУ можливі великі швидкості (RTE – Real Time Ethernet) гаряча заміна дефектних модулів гаряча заміна дефектних модулів легка заміна дефектних модулів: вийняв - вставив легка заміна дефектних модулів (не у всіх випадках): вийняв старий, змінив перемикачі на новому, вставив топологія – зірка (кабелі в один щит) топологія – шина (інколи з відгалуженнями), кільце (надійність), інколи дерево (AS-i) діагностування стану діагностування стану проблематична організація гарячого резервування гаряче резервування базується на RIO
  • 7. Розподілені I/O – автомат станів (приклад Profibus DP) 17.07.2016 ПЛК pupena_san@ukr.net 7 Стан Поведінка Power_ON / Reset DP slave включили або перевантажили і почалася внутрішня ініціалізація WPRM Wait for Parameter DP slave очікує параметри від DP Master WCFG Wait for Configuration DP slave очікує телеграму Check_Configuration від DP Master DXCHG Data Exchange DP slave циклічно обмінюється даними процесу і за необхідності відповідає діагностичним запитом Робота з віддаленими модулями I/O аналогічна до локальних.
  • 8. Фізична структура ПЛК (продовження) 17.07.2016 ПЛК pupena_san@ukr.net 8 Широкий вибір на ринку, в т.ч. за критеріями: • температурний діапазон • тип живлення • IP (ступінь захисту), вібростійкість • відповідність SIL • монтажні особливості • особливості підключення • архітектурна сумісність з іншими виробниками • ….
  • 9. Фізична структура ПЛК: резервування 17.07.2016 ПЛК pupena_san@ukr.net 9 140CRP 140CRP 140NOE 140NOE мережа I/O (адаптована під гаряче резервування) основний ПЛК резервний ПЛК I/O I/OI/O I/O мережа I/O
  • 11. Конфігурування та програмування 17.07.2016 ПЛК pupena_san@ukr.net 11 Принципи: • орієнтована на задачі реального часу, циклічне виконання задач • мінімум програмування, максимум конфігурування • мінімум помилок (макропрограми, відсутність вказівників, прямого доступу до пам'яті …) • захищеність від зависання (сторожові таймери) • масштабованість, як малі так і великі системи на тому ж ПЛК, можливість нарощування • відкритість до зв'язку з засобами інших виробників (стандартизація) • максимальна універсальність, мінімальний час адаптації до бренду (стандартизація) • можливість імпорту/експорту даних, програм • максимальна зручність і простота налагодження, швидкий пошук логічних помилок в коді
  • 12. Середовище розробки та виконання, приклад Unity PRO 17.07.2016 ПЛК pupena_san@ukr.net 12 • Як правило, середовище розробки платне для ПЛК великої та середньої канальності, безкоштовне для малої канальності
  • 14. Програмні задачі (Task): однозадачне середовище виконання 17.07.2016 ПЛК pupena_san@ukr.net 14 задача (Task) основний час для ОС час виконання задачі контролюється ОС ПЛК - не більше ніж T watch dog (сторожовий таймер), якщо більше – задача аварінйо зупиняється !
  • 15. Однозадачне виконання: циклічне vs періодичне 17.07.2016 ПЛК pupena_san@ukr.net 15 циклічне періодичне - різна тривалість задачі - без пауз між викликами задачі - однакова періодичність виклику задачі - під час пауз виділяється більший час ЦПУ на комунікації
  • 16. Коли опитуються входи і записуються виходи? 17.07.2016 ПЛК pupena_san@ukr.net 16 - обробка входів/виходів, організація задач, специфічні для різних ПЛК - якщо опитування входів на початку задачі (образ процесу), а запис виходів в кінці задачі, то образ процесу не змінюється протягом виконання задачі, а виходи оновлюються тільки по закінченню - деякі ПЛК мають можливість проводити запис/читання з I/O в будь якому місці програми (наприклад в S7300/400 - PIW/PQW) - у деяких ПЛК змішаний підхід - і образ процесу і пряме звернення
  • 17. Багатозадачність 17.07.2016 ПЛК pupena_san@ukr.net 17 Декілька задач, для кожної своя умова виклику (не обов'язково по часу), можуть бути свої watchdog.
  • 18. Типи задач 17.07.2016 ПЛК pupena_san@ukr.net 18 ● CoDeSys ● Cyclic – періодичний виклик ● Freewheeling – ціклічно по колу ● Event – за зміною значення змінної або іншої програмної події ● External Event – апаратне переривання S7 1200 (TIA Portal) Залежить від ПЛК! M340 (Unity PRO)
  • 19. Пріоритетність виконання задач (приклад Unity PRO) 17.07.2016 ПЛК pupena_san@ukr.net 19
  • 20. Програмна структура: POU - Program Organizational Unit 17.07.2016 ПЛК pupena_san@ukr.net 20 Залежить від ПЛК! Задача CoDeSys Unity PRO POU викликаються в Задачі; POU можуть викликати інші POU; усі POU в ланцюжку виконуються в контексті тієї ж Задачі
  • 21. Типи POU 17.07.2016 ПЛК pupena_san@ukr.net 21 Залежить від ПЛК! Unity PRO: Section (ака Program), Function Block, Function/Procedure (тільки бібліотечні)
  • 22. Адресація каналів 17.07.2016 ПЛК pupena_san@ukr.net 22 Різні підходи прив'язки до каналів: • топологічна адресація, визначається розміщенням каналу в структурі (не потребує конфігурування адресації); • наприклад %I2.4.3 відповідає за значення дискретного входу в 2- му шасі, 4-й модуль, 3-й канал • виділення адрес для каналів - mapping (відображення) на певну область пам'яті (можливо поіменовану) під час конфігурування; • наприклад %IW100 може містити значення будь-якого аналогового входу, куди захоче розробник • змішане (або, і)
  • 23. Топологічна адресація 17.07.2016 ПЛК pupena_san@ukr.net 23 Залежить від ПЛК! Різні рівні і кількість в ієрархії: • адреса PLC, пристрою на шині • номер шасі • номер модуля/блока • номер каналу на модулі • номер ком. порту %IW0.1.23.4.5 шасі ком.модуля ком. модуль ком. порт номер пристрою модуль на пристрої канал на модулі аналоговий вхід приклад 2 приклад 1
  • 24. Виділення адрес для каналів 17.07.2016 ПЛК pupena_san@ukr.net 24 Залежить від ПЛК!
  • 25. Адресація 17.07.2016 ПЛК pupena_san@ukr.net 25 Залежить від ПЛК! %IX або %I – область дискретних входів %IW – область значень аналогових входів (у багатьох ПЛК пересікається з %I) %QX або %Q – область дискретних виходів %QW – область значень аналогових виходів (у багатьох ПЛК пересікається з %Q) %MX або %M – область внутрішніх бітів %MW – область внутрішніх слів (у багатьох ПЛК пересікається з %MW) … інші варіанти • топологічна адресація - %IW0.4.3 • нетопологічна адресація - %IW130 • поіменована адресація через змінні
  • 26. Змінні 17.07.2016 ПЛК pupena_san@ukr.net 26 Залежить від ПЛК! Типи • INT (як правило 16-бітний!), UINT, DINT (32-бітний), UDINT • BOOL • BYTE • REAL • STRING • ARRAY • STRUCT (UDT) • … Найменування: в деяких ПЛК назви зберігаються тільки в проекті на ПК (синоніми адрес); в деяких ПЛК змінним не обов'язково явно вказуються адреси Область видимості: сильно залежить від ПЛК; в ряді ПЛК усі змінні є глобальними!
  • 27. Мови 17.07.2016 ПЛК pupena_san@ukr.net 27 LD ST/SCL IL/STL FBD/CFC SFC/Grafcet • стандарт IEC 61131-3: ПЛК підтримує як мінімум одну з 5-ти • «заточені» під різні задачі • виробники дуже люблять «діалекти», звідси несумісність і різність реалізацій • мови в ПЛК можуть бути нерівнозначні за можливостями • деякі середовища дозволяють конвертацію між мовами
  • 28. ST/SCL 17.07.2016 ПЛК pupena_san@ukr.net 28 ●ST - Structured Text ● текстова, C/Pascal/Basic подібна ● вирази та інструкції ● доступні умовні розгалуження, цикли ● послідовне виконання ● як правило, найбільш гнучка, люблять програмісти і автоматники ● як правило, присутня в ПЛК середньої та великої канальності
  • 29. IL/STL 17.07.2016 ПЛК pupena_san@ukr.net 29 ●IL - Instruction List ● текстова, орієнтовані на список інструкцій ● базуються на акумуляторах ● маленькі інструкції ● в деяких ПЛК єдина мова, інші мови - тільки представлення ● популярна тільки в ряді платформ (STL в S7 300/400, VIPA)
  • 30. LD 17.07.2016 ПЛК pupena_san@ukr.net 30 ●LD – Ladder Diagram ● графічна, РКС (релейно-контакнті схеми) ● орієнтована переважно на дискретну логіку ● добре сприймається електриками ● послідовне виконання зверху до низу, зліва – направо ● функціональність сильно залежить від реалізації ● в багатьох ПЛК (малої канальності) є єдиною мовою програмування
  • 31. РКС і LD 17.07.2016 ПЛК pupena_san@ukr.net 31 або
  • 32. FBD/CFC 17.07.2016 ПЛК pupena_san@ukr.net 32 ●FBD – Function Block Diagram ● графічна, базується на потоках даних ● при нормальній реалізації «заточена» під регулювання, люблять «регулювальні» автоматники і електронники ● функціональні блоки та функції з’єднуються входами/виходами ● послідовність виконання зверху-вниз, зліва-направо, задається номером виконання ● в багатьох реалізаціях дуже обмежена (напр. Simatic), звідси часто дискредитується, але там є CFC ● в деяких ПЛК (малої канальності) є єдиною мовою програмування
  • 33. FBD/CFC і функціональна схема контуру регулювання 17.07.2016 ПЛК pupena_san@ukr.net 33 Рис. 6.30. Приклад контуру регулювання з використанням бібліотечних блоків та мови FBD ПЛК (Програма користувача) %QW4.1 Аналого- вий вхід Аналого- вий вихід 4-20 мА 4-20 мА %IW3.3 комунікаційний канал HMI (операторська панель) або SCADA) H1 HC1 зада не ВМ 25 ºС TI1 HS1 1.45 25 c Kp Ti дійсне
  • 34. Керування логікою виконання в FBD та LD 17.07.2016 ПЛК pupena_san@ukr.net 34 • EN (Enable) – можливість логіки «якщо- то» • в деяких реалізаціях ПЛК відсутня (але обов'язкова в IEC 61131-3)
  • 35. SFC/Grafcet 17.07.2016 ПЛК pupena_san@ukr.net 35 ●SFC – Sequential Function Chart ● графічна, базується на станах і переходах ● дуже потужна для керування періодичними процесами ● ресурсоємна (при повноцінній реалізації), багато вбудованих функцій контролю (налаштування та контроль часу виконання кроку, сигналізація …) ● добре сприймається технологами в якості опису технологічного процесу
  • 36. SFC (приклад) 17.07.2016 ПЛК pupena_san@ukr.net 36
  • 37. Бібліотека 17.07.2016 ПЛК pupena_san@ukr.net 37 • включає в себе готові функції, процедури, функціональні блоки, сильно спрощує життя розробнику • програма як взамозвязаний набір бібліотечних елементів • часто є критерієм вибору платформи • більшість сучасних середовищ розробки для ПЛК середньої і великої канальності дають можливість розробляти власні бібліотечні елементи! • таймери, лічильники, робота з датою/часом, масивами, перетворення типів, математичні, регулювання, керування приводами …
  • 38. Навігація в середовищі розробки 17.07.2016 ПЛК pupena_san@ukr.net 38
  • 39. Конфігурування, налаштування 17.07.2016 ПЛК pupena_san@ukr.net 39 • багато функцій конфігуруються а не програмуються • конфігурація модулів в т.ч. RIO зберігаються в центральному ЦПУ
  • 40. Інструменти відлагодження програм 17.07.2016 ПЛК pupena_san@ukr.net 40 • анімаційні таблиці змінних (watch) • анімація програм • анімаційні графічні екрани • самописці • точки зупинки • …
  • 41. Приклади анімації програм в режимі виконання 17.07.2016 ПЛК pupena_san@ukr.net 41 https://www.youtube.com/watch?v=l1yp_VwcA88
  • 42. Імітатор ПЛК 17.07.2016 ПЛК pupena_san@ukr.net 42 • імітатори ПЛК (simulator) - імітують роботу ПЛК на ПК розробника • деякі мають можливість з'єднання по TCP/IP -> SCADA+simulator відлагодження ПЗ АСУТП без наявного обладнання! • ресурси ПК імітатору дає можливість вбудовувати складну програмну модель об'єкту на тих же IEC 61131-3
  • 43. Завантаження, зміна 17.07.2016 ПЛК pupena_san@ukr.net 43 • окрім виконавчого проекту, завантаження вихідного коду (не завжди) • зміна програми без зупинки ПЛК! • доступ з паролем • завантаження через зв'язані між собою ПЛК (шлюзування) • …
  • 44. Діагностика ПЛК 17.07.2016 ПЛК pupena_san@ukr.net 44 • діагностичні індикатори на ЦПУ і модулях • діагностичні вікна середовища розробки • діагностичний буфер • діагностичні функції та змінні • можливість програмної обробки • підтримка діагностики на рівні мереж • інтеграція діагностики з SCADA/HMI
  • 46. Комунікації 17.07.2016 ПЛК pupena_san@ukr.net 46 • fieldbus (промислові мережі) • рівня розподіленої периферії (RIO, приводи) • рівня датчиків/ВМ (+ живлення по мережі) • рівня ПЛК (між ПЛК/SCADA) • Типові сервіси • неявний (без програмного ініціювання) обмін I/O для розподіленої периферії і датчиків: • конфігурується, діагностується, автомат станів • максимально наближений до локального I/O • як правило функціонує методом Polling • неявний обмін Global Data для розподіленої бази даних: • для реалізації спільного Application між різними ПЛК одного рівня • конфігурується, діагностується • як правило функціонує методом Publisher/Subscriber • явний обмін повідомленнями читання/запис об'єктів, відправка/отримання повідомлення (прив'язаний до циклу), клієнт/сервер • функції програмування/конфігурування пристрою, діагностичні функції
  • 47. Комунікації (продовження) 17.07.2016 ПЛК pupena_san@ukr.net 47 • сумісність та обмеження • підтримка «рідних» протоколів • модульність: набір за необхідністю потрібної мережі • підтримка відкритих протоколів: великі бренди підтримують «великі» протоколи • «тотальна» підтримка Modbus RTU та Modbus/TCP • все прямує до Ethernet TCP/IP: TCP/IP, mail, http (WEB Server), ftp, snmp, dhcp • до Ethernet TCP/IP йде RTE (Real Time Ethernet), поширені представники в Україні: Ethernet IP, Profinet. • прграмісту як правило доступний інтерфейс до Application Layer, тільки деякі вендори надають інтерфейс Open TCP • для Ethernet TCP/IP повна відсутність кіберзахисту - все відкрито! • технологія OPC вирішує проблему сумісності зі SCADA; • OPC UA – перспективний напрям, реалізація планується на рівні ПЛК • безпосередня інтеграція в Cloud зараз не підтримується, але можлива через шлюзування та SCADA
  • 48. Висновки для парадигми ПЛК 17.07.2016 ПЛК pupena_san@ukr.net 48 • на даний момент великий вибір і функціональні можливості • висока швидкодія • сучасні не тільки для дискретного керування а і аналогового регулювання (PAC) • домінує в Україні, але українські бренди не є домінуючими • централізований підхід, але є розподілена периферія і можливість глобальних даних (розподіленої БД) програм декількох ПЛК • окремі БД ПЛК та SCADA/HMI (програє в порівнянні з DCS), але імпорт/експорт тегів навіть лінк зі SCADA/HMI, але як правило того ж вендора • не тільки пропрієтарні а і відкриті протоколи, відкритість все збільшується • можливість роботи з засобами інших вендорів
  • 49. Висновки для парадигми ПЛК (продовження) 17.07.2016 ПЛК pupena_san@ukr.net 49 • простіше, швидше, надійніше за програмування PC Based, але потребує певних знань в програмуванні, складніше для експлуатаційного персоналу КВПіА (програє DCS і кофігурованим контролерам та регуляторам) • не таке гнучке в порівнянні PC Based, не дозволяє низькорівневого програмування • підтримка єдиного стандарту IEC 61131: перехід на іншу платформу - адаптація до середовища а не вивчення мови програмування, базовий перехід можливий через тижневе навчання • як правило платне середовище розробки, під Windows • підтримка дуже важливих речей: діагностика, налагоджування, заливка на льоту …