Шини та протоколи в промисловій автоматиці: як все це працює

Шини та протоколи в промисловій автоматиці: як все це працює

Напевно, багато хто і вас знає або навіть бачив, яким чином керуються великі автоматизовані об'єкти, наприклад, атомна станція або завод з безліччю технологічних ліній: основне дійство часто відбувається у великій кімнаті, з купою екранів, лампочок і пультів. Це комплекс управління зазвичай називають ГЩУ - головний щит управління для контролю за виробничим об'єктом.

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

Нижній рівень або польова шина - те, з чого все починається

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

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

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

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

Верхній рівень: від гірлянди до цілої робочої станції

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

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

Шини та протоколи в промисловій автоматиці: як все це працює

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

Обладнання верхнього рівня має взаємодіяти якимось чином з микроконтроллером (інакше навіщо воно потрібне?). Для такої взаємодії використовуються протоколи верхнього рівня та деяке середовище передачі, наприклад, Ethernet або UART. У випадку з «ялинкою» таких хитрощів, звичайно, не потрібно, лампочки запалюються з використанням звичайних фізичних ліній, ніяких складних інтерфейсів і протоколів там немає.

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

«Давні» протоколи передачі: Modbus і HART

Мало хто знає, але на сьомий день творення світу Бог не відпочивав, а створював Modbus. Нарівні з HART-протоколом Modbus, мабуть, найстаріший промисловий протокол передачі даних, він з'явився аж у 1979 році.

Як середовище передачі спочатку використовувався послідовний інтерфейс, потім Modbus реалізували поверх TCP/IP. Це синхронний протокол за схемою "майстер-слейв" (головний-підлеглий), в якому використовується принцип "запит-відповідь". Протокол досить вагомий і повільний, швидкість обміну залежить від характеристик приймача і передавача, але зазвичай рахунок йде чи не на сотні мілісекунд, особливо в реалізації через послідовний інтерфейс.

Більше того, регістр передачі даних Modbus є 16-бітним, що відразу ж накладає обмеження на передачу типів real та double. Вони передаються або частинами, або з втратою точності. Хоча Modbus досі повсюдно використовується у випадках, коли не потрібна висока швидкість обміну і втрата даних не критична. Багато виробників різних пристроїв люблять розширювати протокол Modbus своїм винятковим і оригінальним чином, додаючи нестандартні функції. Тому цей протокол має безліч мутацій і відхилень від норми, але все ж таки досі успішно живе в сучасному світі.
Протокол HART теж існує з вісімдесятих років, це промисловий протокол обміну поверх двопровідної лінії струмової петлі, до якої безпосередньо включаються датчики 4-20 мА та інші прилади з підтримкою протоколу HART.

Для комутації ліній HART використовують спеціальні пристрої, звані HART-модемы. Також існують перетворювачі, які на виході надають користувачеві вже, скажімо, протокол Modbus.

Примітний HART, мабуть, тим, що крім аналогових сигналів датчиків 4-20 мА в ланцюзі передається цифровий сигнал самого протоколу, це дозволяє з'єднати цифрову і аналогову частину в одній кабельній лінії. Сучасні HART-модеми можуть підключатися в USB-порт контролера, з'єднуватися по Bluetooth або старовинним способом через послідовний порт. Десяток років тому за аналогією з Wi-Fi з'явився бездротовий стандарт WirelessHART, що працює в діапазоні ISM.

Друге покоління протоколів чи не зовсім промислові шини ISA, PCI(e) та VME

На зміну протоколам Modbus та HART прийшли не зовсім промислові шини, такі як ISA (MicroPC, PC/104) або PCI/PCIe (CompactPCI, CompactPCI Serial, StacPC), а також VME.

Настала ера обчислювачів, які мають у своєму розпорядженні універсальну шину передачі даних, куди можна підключати різні плати (модулі) для обробки якогось уніфікованого сигналу. Як правило, у цьому випадку процесорний модуль (обчислювач) вставляється у так званий каркас, який забезпечує взаємодію по шині з іншими пристроями. Каркас, або, як його люблять називати трушні автоматизатори, «крейт», доповнюється необхідними платами вводу-виводу: аналоговими, дискретними, інтерфейсними тощо, або все це зліплюється у вигляді бутерброду без каркасу — одна плата над іншою. Після цього це різноманіття на шині (ISA, PCI, etc.) обмінюється даними з процесорним модулем, який таким чином отримує інформацію з датчиків і реалізовує якусь логіку.

Шини та протоколи в промисловій автоматиці: як все це працює
Контролер та модулі вводу-виводу в каркасі PXI на шині PCI. Джерело: Корпорація National Instruments

Все б нічого з цими шинами ISA, PCI(e) та VME, особливо для тих часів: і швидкість обміну не засмучує, і розташовані компоненти системи в єдиному каркасі, компактно та зручно, гарячої заміни плат вводу-виводу може і не бути, але поки що й не дуже хочеться.

Але є ложка дьогтю, і не одна. Розподілену систему досить складно побудувати в такій конфігурації, шина обміну локальна, потрібно щось вигадувати для обміну даними з іншими підлеглими або рівноправними вузлами, той же Modbus поверх TCP/IP або якийсь інший протокол, загалом, зручностей обмаль. Ну і друга не дуже приємна штука: плати введення-виводу зазвичай чекають на вхід якийсь уніфікований сигнал, і гальванічної розв'язки з польовим обладнанням у них немає, тому потрібно городити город із різних модулів перетворення та проміжної схемотехніки, що ускладнює елементну базу.

Шини та протоколи в промисловій автоматиці: як все це працює
Проміжні модулі перетворення сигналу з гальванічною розв'язкою. Джерело: DataForth Corporation

«А що з протоколом обміну промисловою шиною?» — спитайте ви. А нічого. Немає його у такій реалізації. По кабельним лініям сигнал потрапляє з датчиків на перетворювачі сигналів, перетворювачі видають напругу на дискретну чи аналогову плату вводу-виводу, а дані з плати читаються через порти вводу/вывода, засобами ОС. І жодних спеціалізованих протоколів.

Як працюють сучасні промислові шини та протоколи

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

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

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

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

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

Популярні постачальники обладнання пропонують власні реалізації промислових протоколів: наприклад, усім відома компанія Siemens розробляє свою серію протоколів Profinet та Profibus, компанії B&R – протокол Powerlink, Rockwell Automation – протокол EtherNet/IP. Вітчизняне рішення у списку прикладів: версія протоколу FBUS від російської компанії Fastwel.

Є і більш універсальні рішення, які не прив'язані до конкретного виробника, такі як EtherCAT і CAN. Ми детально розберемо ці протоколи у продовженні статті та розберемося, які з них найкраще підходять для конкретних застосувань: автомобільної та аерокосмічної промисловості, виробництва електроніки, систем позиціонування та робототехніки. Залишайтеся на зв'язку!

Джерело: habr.com

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