MQTT срещу OPC UA: Ориентиране в индустриалните протоколи от гледна точка на производител на оригинално оборудване (OEM)

В епохата на умното производство, машините трябва да правят повече от просто изпълнение на задачи. Те трябва да комуникират. Като производител на оригинално оборудване (OEM), изборът как да се прехвърлят данни от програмируем логически контролер (PLC) към облачен сървър или локална база данни е критично решение при проектирането. Въпреки че MQTT и OPC UA и двата улесняват преноса на данни, техните основни архитектури служат за много различни цели в рамките на промишлената автоматизация.
Произходът на промишлената свързаност
За да разберем тези протоколи, трябва да разгледаме тяхната история. MQTT (Message Queuing Telemetry Transport) започва като решение за нефтопроводи, свързани чрез сателит. Създателите му са имали нужда от лек, енергоспестяващ метод за работа с прекъсващи се връзки. За разлика от това, OPC UA (Open Platform Communications Unified Architecture) се развива от основи, свързани с Microsoft, в неутрален стандарт за доставчици. Днес OPC Foundation го поддържа като сигурна, независима от платформа рамка за автоматизация на фабрики.
Механизми на модела за публикуване и абониране на MQTT
MQTT разчита на архитектура "публикуване/абониране". В тази схема централен посредник управлява целия трафик на данни. Устройство "публикува" данни по определена тема при посредника. След това всеки клиент се "абонира" за тази тема, за да получава актуализации. Този разединен подход работи изключително добре за отдалечени сензори с нестабилни връзки. Въпреки това, тъй като посредникът е посредата, както машината, така и клиентът трябва да поддържат връзка с този централен възел.
Сложността на архитектурата на OPC UA
За разлика от прост протокол за съобщения, OPC UA е цялостна комуникационна архитектура. Тя позволява директни, богати връзки между клиент и сървър. Тази структура дава възможност за "преглеждане", при което сървърът може в реално време да разглежда вътрешната структура на таговете на PLC . Въпреки че поддържа и публикуване/абониране, силата му е в модела клиент/сървър. Освен това, големите производители на системи за управление вграждат OPC UA по подразбиране в хардуера си, макар че активирането често изисква лиценз.
Предимствата на MQTT при интеграция с облак
MQTT превъзхожда, когато пропускателната способност е ограничена или при изпращане на данни към облачни платформи. Неговият малък размер на заглавката го прави изключително бърз за малки обеми данни. Освен това, големи облачни доставчици като AWS и Azure използват MQTT като основен протокол за приемане на данни. Това прави интеграцията с инструменти за "големи данни" относително безпроблемна. Въпреки това, много стандартни промишлени автоматизационни контролери не поддържат MQTT по подразбиране, често изисквайки външни шлюзове или специален код.
Високоскоростни данни и ползите от OPC UA
Когато приложение изисква високоскоростни, синхронизирани данни от изпитвателен стенд или моторен задвижващ механизъм, OPC UA обикновено е по-добрият избор. Той обработва големи обеми данни ефективно и предлага здрави функции за сигурност от самото начало. Тъй като е индустриален стандарт, повечето съвременни разпределени системи за управление (DCS) и SCADA системи разпознават OPC UA тагове без допълнителен междинен софтуер. Тази вградена съвместимост опростява дългосрочната поддръжка на автоматизационния производствен комплекс.
Изборът на правилния протокол за вашата машина
Крайното решение често зависи от съществуващата ИТ инфраструктура на клиента. Ако фабриката вече използва определен технологичен набор, вероятно ще изиска този протокол за вашата машина. Ако имате избор, обмислете къде ще отиват данните ви. За локална, високоскоростна комуникация машина към машина (M2M), OPC UA предлага по-дълбока интеграция. Ако целта е отдалечено наблюдение или анализи в облака, MQTT осигурява по-опростен път.
Коментар на автора: Хибридната реалност
В моя професионален опит дебатът "MQTT срещу OPC UA" често е фалшив избор между две възможности. Много съвременни промишлени автоматизационни проекти всъщност използват и двата. Аз често използвам OPC UA за високоскоростно локално управление и обмен на данни между PLC и HMI. Паралелно използвам MQTT шлюз за изпращане на обобщени ключови показатели (KPI) към облачен табло. Моят съвет към OEM производителите: не се заключвайте в един протокол. Вместо това изградете гъвкава архитектура, която може да се адаптира към специфичната цифрова среда на клиента.
