OPC UAの情報モデル

本格的な情報モデルの説明は情報モデルタグ内で説明しますが、ここでは基本的なことのみを説明します。情報モデルとは情報を伝える枠組みです。現在は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をインスタンス化します。