本文へスキップ
産業技術

産業IoTの通信プロトコル:OPC UAとMQTTの相互運用性

AsparImpex 編集部 4分で読めます
産業IoTの通信プロトコル:OPC UAとMQTTの相互運用性

工場の設備をネットワークに繋ぎ、データを収集して活用する産業IoTでは、機器やシステムのあいだをどう繋ぐかという通信の設計が要になる。現場でよく登場するのがOPC UAとMQTTだが、この二つはしばしば競合として並べられる。実際には、両者は異なる問題を解くために設計されており、単純な優劣では比較できない。

現場に二つのプロトコルが併存する理由

製造の情報システムは、現場の制御機器から上位の生産管理システムまで、階層構造で整理される。国際規格IEC62264として標準化されたISA-95は、この企業と制御をつなぐ階層と情報の流れを定義している。下の層では機器を確実に制御する要件が、上の層では大量のデータを柔軟に流通させる要件が求められる。求められるものが層で異なるため、単一のプロトコルですべてを賄うより、性格の違う複数を役割に応じて使う構図が生まれる。

OPC UA:情報モデルという強みと重さ

OPC UAは、OPC Foundationが策定する産業通信の枠組みで、最大の特徴は豊かな情報モデルにある。単に数値を運ぶだけでなく、そのデータが何を意味し、どの機器のどの属性なのかという意味づけを構造として持てる。これにより、異なるベンダーの機器でも、意味のレベルで相互に解釈できる余地が生まれる。半面、この表現力は処理の重さと表裏一体である。モデルの構築と維持には手間がかかり、制約の厳しい末端機器には負担が大きい場合がある。強力だが、どこにでも軽々と載せられるわけではない。

MQTT:軽量性と引き換えの意味の欠如

MQTTは、OASISで標準化された軽量な発行購読型のプロトコルである。中央のブローカーを介して、送り手と受け手を疎結合に保ちながらメッセージを配る。帯域の限られた回線や多数の機器を広域に繋ぐ用途に向き、実装も軽い。ただし、MQTT自体はメッセージの中身に意味を規定しない。運ぶのはあくまでバイト列であり、そのデータが何を表すかは、送り手と受け手のあいだの取り決めに委ねられる。軽量性は、意味の欠如と引き換えに得られている。

  • OPC UA:意味を構造として持てるが重い
  • MQTT:軽量で広域に強いが、意味は仕様の外

相互運用性は仕様の外側で決まる

ここから見えてくるのは、相互運用性がプロトコルの選択だけでは決まらないという点である。MQTTを選んでも、ペイロードの構造や項目の意味を共通の規約で定めなければ、受け手はデータを解釈できない。実際、MQTT上で機器データの表現を標準化しようとする取り組みも現れている。逆にOPC UAを選んでも、情報モデルの設計が各社ばらばらなら、意味の相互運用は実現しない。結局、繋がるかどうかは、プロトコルの下や外にある、モデルと規約の設計しだいである。

どちらかではなく役割分担

したがって現実的な設計は、二者択一ではなく役割分担になる。現場に近い層で機器を意味づけて統合する部分にはOPC UAが向き、そこで整理されたデータを上位や広域へ効率よく流す部分にはMQTTが向く。両者をゲートウェイで橋渡しし、それぞれの強みを活かす構成が広く採られている。こうして整理されたデータは、現場を写す仮想モデルの基盤にもなる。その活用と限界はデジタルツインの産業応用と限界で論じる。一方で、機器をネットワークに繋ぐほど、外部からの脅威にさらされる面も広がる。接続がもたらすリスクへの備えは製造現場のOTセキュリティで扱う。産業IoTの通信は、優れたプロトコルを一つ選ぶ問題ではなく、性格の異なる道具をどう組み合わせ、その外側で意味をどう設計するかという問題なのである。

関連記事

ニュースレター登録

最新の分析を受け取る

国際貿易・物流・調達・産業技術の実務知を、定期的にお届けします。

配信はいつでも解除できます。