Огляд сучасних протоколів у системах промавтоматики

Огляд сучасних протоколів у системах промавтоматики

У минулій публікації ми розповіли про те, як працюють шини та протоколи у промисловій автоматизації. На цей раз сфокусуємось на сучасних робочих рішеннях: подивимося, які протоколи використовуються в системах по всьому світу. Розглянемо технології німецьких компаній Beckhoff та Siemens, австрійської B&R, американської Rockwell Automation та російської Fastwel. А також вивчимо універсальні рішення, які не прив'язані до конкретного виробника, такі як EtherCAT і CAN. 

Наприкінці статті буде порівняльна таблиця з характеристиками протоколів EtherCAT, POWERLINK, PROFINET, EtherNet/IP та ModbusTCP.

Ми не включали протоколи PRP, HSR, OPC UA та інші, т.к. по ним на Хабре вже є чудові статті наших колег-інженерів, які займаються розробкою систем промавтоматики. Наприклад, «Протоколи «безшовного» резервування PRP та HSR» и Шлюзи промислових протоколів обміну на Linux. Збери сам».

Спочатку визначимо термінологію: Industrial Ethernet = промислова мережу, Fieldbus = польова шина. У російській промисловій автоматиці трапляється плутанина в термінах, що стосуються польової шини та промислової мережі нижнього рівня. Часто ці терміни поєднуються в єдине розпливчасте поняття «нижній рівень», який називається і польовою шиною, і шиною нижнього рівня, хоча це може бути не шина зовсім.

Чому так?Така плутанина, швидше за все, пов'язана з тим, що в багатьох сучасних контролерах з'єднання модулів введення-виведення часто реалізується за допомогою об'єднавчої панелі (backplane) або фізичної шини. Тобто використовуються деякі шинні контакти та з'єднувачі, щоб об'єднати кілька модулів у єдиний вузол. Але такі вузли, у свою чергу, можуть бути поєднані між собою як промисловою мережею, так і польовою шиною. У західній термінології є чіткий поділ: мережа це мережа, шина це шина. Перше позначається терміном Industrial Ethernet, друге – Fieldbus. У статті для цих понять пропонується використовувати термін «промислова мережа» та термін «польова шина» відповідно.

Стандарт промислової мережі EtherCAT, розробка компанії Beckhoff

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

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

Огляд сучасних протоколів у системах промавтоматики
Контролер Beckhoff з набором модулів вводу-виводу. Джерело: www.beckhoff.de

Специфікація протоколу відкрита та доступна, але тільки в рамках асоціації розробки – EtherCAT Technology Group.

Ось, як працює EtherCAT (видовище зачаровує, як гра Zuma Inca):

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

Мережа EtherCAT може мати будь-яку топологію, але по суті це завжди буде кільце через використання повнодуплексного режиму і двох роз'ємів Ethernet. Таким чином, телеграма завжди буде послідовно передаватися кожному пристрою на шині.

Огляд сучасних протоколів у системах промавтоматики
Схематичне уявлення мережі Ethercat з кількома вузлами. Джерело: realpars.com

До речі, специфікація EtherCAT не містить обмежень фізичного рівня 100Base-TX, тому реалізація протоколу можлива на основі гігабітних та оптичних ліній.

Відкриті промислові мережі та стандарти PROFIBUS/NET компанії Siemens

Німецький концерн Siemens давно відомий своїми програмованими логічними контролерами (ПЛК), які використовують у всьому світі.

Обмін даними між вузлами автоматизованої системи під керуванням обладнання Siemens реалізується як по польовій шині, яка називається PROFIBUS, так і в промисловій мережі PROFINET.

Шина PROFIBUS використовує спеціальний двожильний кабель із роз'ємами DB-9. У Siemens він фіолетовий, але ми практично зустрічали й інші :). Для зв'язку кількох вузлів роз'єм може з'єднувати два кабелі. Також у ньому є перемикач термінального резистора. Термінальний резистор повинен бути увімкнений на кінцевих пристроях мережі, таким чином повідомляється, що це перший або останній пристрій, а після нього вже нічого немає, тільки морок і порожнеча (всі rs485 так працюють). Якщо на проміжному роз'ємі увімкнути резистор, то наступна за ним ділянка буде вимкнена.

Огляд сучасних протоколів у системах промавтоматики
Кабель PROFIBUS із сполучними роз'ємами. Джерело: VIPA ControlsAmerica

У мережі PROFINET використовується аналог кручений пари, як правило, з роз'ємами RJ-45, кабель пофарбований в зелений колір. Якщо топологія PROFIBUS —шина, то топологія мережі PROFINET може бути будь-що: хоч кільце, хоч зірку, хоч дерево, хоч усе разом узяте.

Огляд сучасних протоколів у системах промавтоматики
Контролер Siemens із підключеним кабелем PROFINET. Джерело: w3.siemens.com

Існують кілька протоколів обміну по шині PROFIBUS та у мережі PROFINET.

Для PROFIBUS:

  1. PROFIBUS DP — реалізація цього протоколу має на увазі зв'язок з віддаленими підлеглими пристроями, у разі PROFINET цьому протоколу відповідає протокол PROFINET IO.
  2. PROFIBUS PA є по суті тим же PROFIBUS DP, тільки використовується для вибухобезпечних виконань передачі даних і живлення (аналог PROFIBUS DP з іншими фізичними властивостями). Для PROFINET вибухобезпечного протоколу за аналогією з PROFIBUS поки що не існує.
  3. PROFIBUS FMS – призначений для обміну даними із системами інших виробників, які не можуть використовувати PROFIBUS DP. Аналогом PROFIBUS FMS у мережі PROFINET є протокол PROFINET CBA.

Для PROFINET:

  1. PROFINET IO;
  2. PROFINET CBA.

Протокол PROFINET IO ділиться на кілька класів:

  • PROFINET NRT (без реального часу) — використовується у додатках, де часові параметри не є критичними. У ньому використовується протокол передачі даних Ethernet TCP/IP, і навіть UDP/IP.
  • PROFINET RT (реальний час) - тут обмін даними вводу/виводу реалізований за допомогою кадрів Ethernet, але діагностичні дані та дані зв'язку все ще передаються через UDP/IP. 
  • PROFINET IRT (ізохронний реальний час) — цей протокол був розроблений спеціально для додатків управління рухом і включає ізохронну фазу передачі даних.

Що стосується реалізації протоколу жорсткого реального часу PROFINET IRT, то для комунікацій з віддаленими пристроями у ньому виділяють два канали обміну: ізохронний та асинхронний. Ізохронний канал з фіксованою за часом довжиною циклу обміну використовує тактову синхронізацію та передає критичні на час дані, для передачі використовуються телеграми другого рівня. Тривалість передачі в ізохронному каналі не перевищує 1 мілісекунду.

У асинхронному каналі передаються звані real-time-данные, які теж адресуються у вигляді MAC-адреси. Додатково передається різна діагностична та допоміжна інформація вже поверх TCP/IP. Ні real-time-дані, ні більше інформації, зрозуміло, неспроможна переривати ізохронний цикл.

Розширений набір функцій PROFINET IO необхідний далеко не для кожної системи промислової автоматики, тому цей протокол масштабують під конкретний проект, з урахуванням класів відповідності або класів застосування (conformance classes): СС-A, CC-B, CC-CC. Класи відповідності дозволяють вибрати польові пристрої та магістральні компоненти з мінімально необхідною функціональністю. 

Огляд сучасних протоколів у системах промавтоматики
Джерело: PROFINET university lesson

Другий протокол обміну в мережі PROFINET - PROFINET CBA - служить для організації промислового зв'язку між обладнанням різних виробників. Основною виробничою одиницею в системах СВА є сутність, яка називається компонентом. Цей компонент зазвичай є сукупністю механічної, електричної та електронної частини пристрою або установки, а також відповідне прикладне програмне забезпечення. Для кожного компонента вибирається програмний модуль, який містить повний опис інтерфейсу компонента за вимогами стандарту PROFINET. Після цього ці програмні модулі використовуються для обміну даними з пристроями. 

Протокол Ethernet POWERLINK компанії B&R

Протокол Powerlink розроблено австрійською компанією B&R на початку 2000-х. Це ще одна реалізація протоколу реального часу поверх стандарту Ethernet. Специфікація протоколу доступна та поширюється вільно. 

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

Огляд сучасних протоколів у системах промавтоматики
Контролер B&R із набором модулів вводу-виводу. Джерело: br-automation.com

Спочатку протокол був реалізований поверх фізичного рівня 100Base-TX, але пізніше була розроблена і гігабітна реалізація.

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

Огляд сучасних протоколів у системах промавтоматики
Схематичне уявлення мережі Ethernet POWERLINK з кількома вузлами.

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

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

Протокол Ethernet/IP компанії Rockwell Automation

Протокол EtherNet/IP розроблено за активної участі американської компанії Rockwell Automation у 2000 році. Він використовує стек TCP і UDP IP, і розширює його для застосування у промисловій автоматизації. Друга частина назви, всупереч поширеній думці, означає не Internet Protocol, а Industrial Protocol. UDP IP використовує комунікаційний стек протоколу CIP (Common Interface Protocol), який також використовується в мережах ControlNet/DeviceNet та реалізується поверх TCP/IP.

Специфікація EtherNet/IP є загальнодоступною та поширюється безкоштовно. Топологія мережі Ethernet/IP може бути довільною і включати кільце, зірку, дерево або шину.

На додаток до стандартних функцій протоколів HTTP, FTP, SMTP, EtherNet/IP реалізує передачу критичних часу доставки даних між опитуючим контролером і пристроями вводу/виводу. Передача некритичних часу даних забезпечується пакетами TCP, а критична на час доставки циклічних даних управління йде за протоколом UDP. 

Для синхронізації часу в розподілених системах EtherNet/IP використовує протокол CIPsync, який є розширенням протоколу комунікацій CIP.

Огляд сучасних протоколів у системах промавтоматики
Схематичне зображення мережі Ethernet/IP із кількома вузлами та підключенням Modbus-пристроїв. Джерело: www.icpdas.com.tw

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

Реалізація протоколу FBUS у компанії Fastwel

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

Існує дві фізичні реалізації FBUS. Одна з них – це шина, в якій протокол FBUS працює поверх стандарту RS485. Крім цього є реалізація FBUS у промисловій мережі Ethernet.

FBUS складно назвати швидкодіючим протоколом, час відповіді залежить від кількості модулів введення-виведення на шині і від параметрів обміну, зазвичай воно коливається в межах 0,5-10 мілісекунд. Один підлеглий вузол FBUS може містити лише 64 модулі введення-виведення. Для польової шини довжина кабелю не може перевищувати 1 метр, тому про розподілені системи не йдеться. Вірніше йде, але тільки при використанні промислової мережі FBUS поверх TCP/IP, що означає збільшення часу опитування в кілька разів. Для підключення модулів можуть використовуватися подовжувачі шини, що дозволяє зручно розташувати модулі шафи автоматики.

Огляд сучасних протоколів у системах промавтоматики
Контролер Fastwel із підключеними модулями вводу-виводу. Джерело: Control Engineering Росія

Як все це використовується на практиці в АСУ ТП

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

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

Огляд сучасних протоколів у системах промавтоматики
Джерело: HMS Networks AB

Як видно на діаграмі, PRONET та PROFIBUS від Siemens займають лідируючі позиції.

Цікаво, що 6 років тому 60% ринку займали протоколи PROFINET та Ethernet/IP.

У таблиці нижче зібрані зведені дані з описаних протоколів обміну. Деякі параметри, наприклад, продуктивність виражені абстрактними термінами: висока/низька. Числові еквіваленти можна знайти у статтях з аналізу продуктивності. 

 

EtherCAT

POWERLINK

ПРОФІНЕТ

EtherNet/IP

ModbusTCP

Фізичний рівень

100/1000 BASE-TX

100/1000 BASE-TX

100/1000 BASE-TX

100/1000 BASE-TX

100/1000 BASE-TX

Рівень передачі даних

Канальний (Ethernet-фрейми)

Канальний (Ethernet-фрейми)

Канальний (Ethernet-фрейми), Мережевий/транспортний (TCP/IP)

Мережевий/транспортний (TCP/IP)

Мережевий/транспортний (TCP/IP)

Підтримка реального часу

Так

Так

Так

Так

Ні

Продуктивність

Висока

Висока

IRT – висока, RT – середня

Середня

низька

Довжина кабелю між вузлами

100м

100м/2км

100м

100м

100м

Фази передачі

Ні

Ізохронна + асинхронна

IRT – ізохронна + асинхронна, RT – асинхронна

Ні

Ні

Кількість вузлів

65535

240

Обмеження мережі TCP/IP

Обмеження мережі TCP/IP

Обмеження мережі TCP/IP

Дозвіл колізій

Кільцева топологія

Тактова синхронізація, фази передачі

Кільцева топологія, фази передачі

Комутатори, топологія "зірка"

Комутатори, топологія "зірка"

Гаряча заміна

Ні

Так

Так

Так

Залежно від реалізації

Вартість обладнання

низька

низька

Висока

Середня

низька

Області застосування описаних протоколів обміну, польових шин та промислових мереж дуже різноманітні. Починаючи від хімічної та автомобільної промисловості та закінчуючи аерокосмічними технологіями та виробництвом електроніки. Швидкодіючі протоколи обміну потрібні в системах real-time позиціонування різних пристроїв і в робототехніці.

А з якими протоколами ви працювали та де застосовували? Діліться у коментарях своїм досвідом. 🙂

Джерело: habr.com

Додати коментар або відгук