情報モデル

情報モデルの詳細な説明は情報モデルタグ内で説明しますが、ここでは基本的なことのみを説明します。情報モデルとは情報を伝える枠組みです。現在はFA機器同士の通信はベンダごとにパラメータが異なるため人間が介在しやっと情報が伝達できます。OPC UAはFA機器同士が直接会話し意味が理解できることを目標としています。この情報を伝達するための枠組みのことを情報モデルといいます。

OPC UAの情報モデルのXML

OPC UAの情報モデルはXMLフォーマットで表現され、4つのレイヤーで構築されています。1層目はMeta Model、2層目はBuilt-in Modelと呼ばれ、OPC UAの基本的な仕様が定義されています。3層目は一番重要なレイヤーで実質上の業界標準として使用され、Companion Information Modelと呼ばれます。ドイツ機械工業連盟(VDMA)、ドイツ自動車工業会などの団体とOPC Foundationが共同で作成します。 4層目はベンダが独自に作成するレイヤーでVendor Specific Extensionsと呼ばれます。

1層目のMeta Model、2層目のBuilt-in ModelはOpc.Ua.NodeSet2.xmlというファイル名でOPC Foundationが作成しインターネット上で公開されます。3層目はOPC Foundationが他の標準化団体、例えばVDMAなどと共同で作成します。OPC UA for Roboticsの場合、VDMA.Robotics.NodeSet2.xmlというファイル名でOPC Foundationがインターネット上に公開します。

Vendor Specific Extensionsは、Companion Information Modelとは逆に、各企業が独自情報を記載するXML領域です。Companion Information Modelは、タイプ定義しかないため、Vendor Specific Extensionsでインスタンス化しないとAddressSpaceにインスタンスが存在しません。Companion Information Modelで定義されたTypeからインスタンス化するXMLが必要になります。OPC UA Severに、Opc.Ua.NodeSet2.xmlをロードさせると図の通りServerというObjectしか存在しません。Typeからインスタンスを作成するためにVendor Specific ExtensionsのXMLを作成します。

Companion Information Modelがない場合

業界標準となるCompanion Information Modelがない場合、Companion Information Modelが製品と合わない場合は、企業が独自に情報モデルを作成する必要があります。Meta ModelとBuilt-in Information Modelの上に企業独自の情報モデルを構築します。独自情報モデルのXMLでTypeを定義し、さらに定義したTypeをインスタンス化し、AddressSpaceを構築します。