OPC UAの4つのコンセプトと3つの特徴
表2に、OPCファウンデーションが推進するOPC UAの目的と、OPC UAの4つのコンセプト「安全に(Security)」「伝える(Communication)」「つなげる(Connection)」「活用する(Utilization)」を示す。
表2 OPC UAの目的と4つのコンセプト
※ここでは「データ」の塊を「情報」として扱い、変数データやメソッドデータなどをまとめて「情報モデル」と表現している。
出所 たけびしセミナー「OPCについて」、SCF2017(2017年12月1日)
さらに、OPC UAには、(1)マルチプラットフォームに対応、(2)通信セキュリティが強固、(3)オブジェクト指向の情報モデルを表現可能、という3つの特徴がある。これらの特徴を見てみよう。
〔1〕マルチプラットフォーム(プラットフォームに依存しない)
Windows、LINUX、Androidの各OSに対応している。
〔2〕セキュアな通信
OPC UAは、盗聴、改ざん、なりすましなどに対応する強固なセキュリティ機能が搭載された通信仕様となっている。従来の各社独自の仕様で通信している場合は、仕様が統一されておらず、生産システムへの個別のサイバー攻撃は難しい状況であった。しかし、標準化されたOPC UAになると仕様が1つに絞られて攻撃がしやすくなるというデメリットもある。このため、OPC UAでは、通信仕様の標準化とともに、表3に示すような強固なセキュリティ機能がセットされている。
表3 OPC UAのセキュリティ機能の例
出所 たけびしセミナー「OPCについて」、SCF2017(2017年12月1日)
図4 セキュリティの優先順位比較
出所 たけびしセミナー「OPCについて」、SCF2017(2017年12月1日)
また、図4、表4に示すように、情報システムの場合は「情報が改ざんされないこと」(C:機密性)が最優先課題であるが、制御システムの場合は「生産設備が止まらず稼働率がよいこと」(A:可用性)が最優先課題となるため、これらを配慮したセキュリティ機能となっている。
表4 情報セキュリティにおけるCIA(機密性、完全性、可用性)
出所 各種資料をもとに編集部作成
〔3〕オブジェクト指向の情報モデル
OPC UAでは、オブジェクト指向(Object Oriented)による情報モデルが使用される。
オブジェクトというのは「モノ」(対象物)のことである。オブジェクト指向では、オブジェクトは「バリアブル(変数)、メソッド、イベント」という3つの要素で構成されて動作するものと定義される(情報モデル化される)。例えば、図5に示すように、工場で使用される「バルブ」というオブジェクト(対象物あるいは製品、ハードウェア)の場合、
- バルブの中を流れる温水の流量(Xm3/秒)はどれくらいか=バリアブル(変数)
- バルブを開閉する制御はどのような方法で行われるか=メソッド
- バルブの流量がオーバーした場合に警報はどのように行われるか=イベント
となる。しかし、実際の生産システムにおけるバルブは単品では動いておらず、図5右に示すような、ポンプや流量計、タンクなど他のオブジェクトと連携し、これらを参照しながら動作しているので、これらを考慮して情報モデル化される。
図5 情報はオブジェクト指向で表現される
出所 たけびしセミナー「OPCについて」、SCF2017(2017年12月1日)
このように、オブジェクト指向によって、対象とするモノ(オブジェクト、ここではバルブ)の情報を、汎用性をもつ「情報モデル」として一般化(抽象化)して表現し活用できることも、OPC UAの特徴の1つである。
従来の生産システムでは、図6左側に示すように、実際の物理モデル(現実のバルブそのもの)の振る舞いや構造などを把握してから、その仕様に合わせてアプリケーションを開発・構築するという流れであった。しかし、物理モデルの情報をオブジェクト指向の「情報モデル」で表現することによって、アプリケーションの開発側は、実際の物理モデル(バルブそのもの)がなくても、パソコン上でバルブの情報モデル(バルブとは「こういう機能をもったもの」という情報モデル)を参照するだけで、その物理モデルの振る舞いや構造を把握できるようになる。
図6 情報モデルとOPC UAの世界
出所 たけびしセミナー「OPCについて」、SCF2017(2017年12月1日)
多様な生産システムで多様なオブジェクトの情報モデルを利用できるようにするため、業界ごとに「情報モデル」が定義され始めている。
具体的には、各機器間の通信はOPC UAで行い、その環境でやり取りする情報モデルは、業界団体ごとに必要となる標準的なオブジェクトに基づいて策定するという、コラボレーションが進められている。例えば、PLC分野の「情報モデル」はPLCopen(PLCアプリケーションの開発の効率化などを目的とする組織)、ビルオートメーション分野の「情報モデル」はBACnet(BACnet Interest Group Europe、ビルオートメーション/制御用ネットワークプロトコル規格策定組織)、というように、現在、約30の標準化団体とOPCファウンデーションとがコラボレーションし、「情報モデル」(アプリケーション間で交換される情報の定義)が策定されている。