今から学ぶOPC UA⑥ ―OPC UA コンパニオン仕様―

本コラムでは、OPC UAの概要から具体的な活用方法までを複数回にわたり解説していきます。

第6回目の今回は、「OPC UAコンパニオン仕様(スペック)」です。


はじめに

2008年に最初のOPC UA仕様が発表されてから15年以上が経過し、OPC UAは、さまざまな規格団体よるOPC UAコンパニオン仕様(OPC UA Companion Specification)を公開しています。
今回は、OPC UAコンパニオン仕様の役割を解説するとともに、2024年2月時点でどのようなコンパニオン仕様があるのかをご紹介します。

OPC UAコンパニオン仕様の役割

OPC UAコンパニオン仕様は、ベースとなる基本情報モデルの上に展開される情報モデルです。もちろんコンパニオン仕様が提供している情報モデルを使用せず、独自の情報モデルのみで対応することも可能です。しかし、コンパニオン仕様の情報モデルを使用することで、開発時に作成する情報モデル(データ構成)の工数を削減することができます。また、OPC UAクライアントに汎用的なデータを提供することも可能になります。

サーバー開発者による独自情報モデル
(使用は任意)
OPC UA 情報モデル
(独自)
OPC UAコンパニオン仕様
(使用は任意)
OPC UA 情報モデル
(基本)
OPC UA 仕様書により規定
(必須)
OPC UA 情報モデル
(基本)
OPC UA 通信仕様

第4回コラム「OPC UA用語の解説」でも挙げましたが、例えば、業務用コーヒーマシーンにOPC UAサーバー機能を搭載する場合、既に公開されている業務用コーヒーマシーンのコンパニオン仕様を使用することができます。

OPCUA4c.png

このノードセット情報を取り込み、該当タイプのオブジェクトを生成するだけで、下図のようなコンパニオン仕様に沿ったノードをもつOPC UAサーバーの「枠組み」を簡単に構築することができます。

コンパニオン仕様に沿ったノードをもつOPC UAサーバー

作業手順は、①コンパニオン仕様のノードセットファイル(DIおよびCommercialKitchenEquipment)のダウンロード → ②TestCoffeeMachineノードオブジェクトを生成するノードセットファイルの作成 → ③サーバーへの取り込み/起動の流れで、開始から終了までおよそ30分の作業でした。

実際には、ここからデータの紐づけなどの重い作業が発生します。しかし、データの「枠組み」があるだけで開発者の負担は軽くなり、より迅速な市場投入が可能になります。

現在のOPC UAコンパニオン仕様

2024年2月現在、OPC UAコンパニオン仕様にはどのようなものがあるのでしょうか。 OPC Foundationが提供している、『OPC Unified Architecture Interoperability for Industrie 4.0 and the Internet of Things』(Version V15 // 2023)に記載されているOPC UAコンパニオン仕様は、下表の通りです。多岐にわたるさまざま分野において、OPC UAコンパニオン仕様の対応が進んでいることが分かります。

(*は作成中の仕様)

Generic Device Models: Controller, Field Device, Process Device

  • OPC 10000-100 - UA for Devices
  • OPC 10020 - UA for Analyzer Devices
  • OPC 30000 - UA for PLCs based on IEC 61131-3
  • OPC 30001 - UA for IEC 61131-3 Function Blocks
  • OPC 30010 - UA for AutoID Devices
  • OPC 30081 - UA for Process Automation Devices (PA-DIM)
  • OPC 30400 - UA for Cloud Library
  • OPC 30500 - UA for Laboratory & Analytical Device Standard (LADS) *
  • OPC UA for Analytical System Integration (CAISI)*
  • OPC UA for Cloud Federation *
  • OPC UA for Global Positioning *
  • OPC UA for Non-destructive Evaluation
  • OPC UA for Power Consumption Management *
  • OPC UA for Secure Elements

Manufacturing Devices: Robots, Machines, Machine Tools

  • OPC 30070-1 - UA for MTConnect, Part 1: Device Model
  • OPC 40001-1 - UA for Machinery - Basic Building Blocks
  • OPC 40001-2 - UA for Machinery - Process Values
  • OPC 40001-3 - UA for Machinery - Job Management
  • OPC 40001-100 - UA for Machinery - Result Transfer
  • OPC 40010 - UA for Robotics
  • OPC 40020 - UA for Cranes & Hoists
  • OPC 40083 - UA for Plastics Rubber - General Types
  • OPC 40077 - UA for Plastics Rubber - Injection Moulding Machines to MES
  • OPC 40079 - UA for Plastics Rubber - Injection Moulding Machines to Robot
  • OPC 40082-1...n - UA for Plastics Rubber - <device>
  • OPC 40084-1...n - UA for Plastics Rubber - Extrusion
  • OPC 40100 - UA for Machine Vision
  • OPC 40200 - UA for Weighing Technology
  • OPC 40210 - UA for Geometrical measuring Systems
  • OPC 40223 - UA for Pumps and Vacuum Pumps
  • OPC 40250 - UA for Compressed Air Systems
  • OPC 40301 - UA for Flat Glass Processing
  • OPC 40400 - UA for Powertrain *
  • OPC 40444 - UA for Textile Testing Devices *
  • OPC 40450 - UA for Joining Systems Base
  • OPC 40451 - UA for Tightening Systems
  • OPC 40501 - UA for Machine Tools
  • OPC 40502 - UA for Computerized Numerical Control (CNC) Systems
  • OPC 40530 - UA for Laser Systems
  • OPC 40550 - UA for Woodworking Machinery
  • OPC 40560 - OPC 40569 - UA for Mining
  • OPC 40740 - UA for Process Air Extraction and Filtration Systems (PAEFS) *
  • OPC UA for Cable Harness Manufacturing
  • OPC UA for High Pressure Die Casting *
  • OPC UA for Intralogistics Communication *
  • OPC UA for Surface Technology *

Energy

  • OPC 10040 - UA for IEC 61850 - Electrical Substation Automation (Release Candidate)
  • OPC 30020 - UA for MDIS
  • OPC UA for Wind Power Plants (IEC61400-25) *
  • Power Consumption *
  • OPC UA for Carbon Capture, Storage and Reporting *
  • OPC UA for Solar PV Operations and Maintenance (SPOM) *

Building

  • OPC 30030 - UA for BACNET (Release Candidate)

Miscellaneous

  • OPC 30060 - UA for Tobacco Machines
  • OPC 30200 - UA for Commercial Kitchen Equipment

Asset Mgmt, Packaging

  • OPC 10030 - UA for ISA-S95
  • OPC 10031-4 - UA for ISA-95 Job Control
  • OPC 30050 - UA for PackML (OMAC)
  • OPC 30260 - UA for OpenSCS Serialization Model
  • OPC 30261 - UA for OPEN SCS - Job Order Profiles
  • OPC 40600 - UA for Weihenstephan Standards
  • OPC UA for Asset Administration Shell - AAS *
  • OPC UA for Mimosa CCOM *

Engineering

  • OPC 30040 - UA for AutomationML
  • OPC 30250 - UA for DEXPI

Field Device Integration

  • OPC 30080 - UA for Field Device Integration (FDI)
  • OPC 30090 - UA for Field Device Tool (FDT)

Field Communication

  • OPC 30100 - UA for SERCOS Devices
  • OPC 30110 - UA for POWERLINK
  • OPC 30120 - UA for IO-Link Devices and IO-Link Masters
  • OPC 30130 - UA for Control & Communication System Profile (for Machine) CSP + (CCLink)
  • OPC 30140 - UA for PROFINET
  • OPC 30141 - UA for PROFIenergy
  • OPC 30142 - UA for PROFINET Remote IO
  • OPC 30143 - UA for PROFI-Encoder
  • OPC 30144 - UA for PROFINET-GSD
  • OPC UA for CIP Devices *

OPC UAコンパニオン仕様の使い方

これまでにさまざまなOPC UAコンパニオン仕様が公開されていますが、OPC UAサーバー(もしくはパブリッシャー)開発担当者にとってより重要なのは、ノードセットファイルが公開されていて手軽に使用できるかどうかです。

コンパニオン仕様のノードセットファイルはOPC FoundationのGitHub(https://github.com/OPCFoundation/UA-Nodeset)で公開されています。もし開発者が使用する環境に対応した形式のノードセット情報があるのであれば、そのコンパニオン仕様に基づく情報モデルの対応は簡単です。先ほどの例で示したコーヒーマシーンも、ノードセットファイルが公開されていたからこそ、30分程で作業を終えることができました。

一方、ノードセット情報ファイルがまだ提供されていない場合は、仕様書を参照しながらノードセットを構築する必要があり、開発者にかかる負荷は一気に上がります。

業界では標準的な製品だけれどもOPC UAコンパニオン仕様が存在していない、もしくは規格団体は存在しているけれどOPC UAコンパニオン仕様が存在していない場合はどうすれば良いのでしょうか。その場合は、より近い構成のコンパニオン仕様を参考にして構築することになります。もしくは、規格団体にOPC UAコンパニオン仕様の策定を働きかけるのも1つの方法かもしれません。

まとめ

現在、多くの規格団体がOPC UAコンパニオン仕様を提供しており、これを活用することで、グローバルに使用可能なOPC UA対応機器を迅速に開発することができます。
もし今回のコラムでOPC UA対応に興味をお持ちいただけたならば、まずはご自身が必要とするコンパニオン仕様の有無を確認してみてはいかがでしょうか。

参考文献


次回は「OPC UAを手軽に試してみよう!」です。

Matrikon® FLEX™ OPC UA SDK

Matrikon社は、規格に準拠した高性能なOPC UAサーバーソフトウェア/クライアントソフトウェアを提供しています。
FLEX OPC UA SDKは、拡張性の高さを特長とするプラットフォーム非依存の組込み用OPC UAソリューションです。


製品情報

組込み用OPC UA

Matrikon® FLEX™ OPC UA SDK

OPC Foundation認証済みのクライアント・サーバーツールキット
製品ページを見る

今から学ぶOPC UA⑦ ―OPC UAを手軽に試してみよう!―

コラムを読む

今から学ぶOPC UA⑤ ―OPC UAの通信方式―

コラムを読む

今から学ぶOPC UA④ ―OPC UA用語の解説―

コラムを読む

今から学ぶOPC UA③ ―OPC UAへの対応方法―

コラムを読む

今から学ぶOPC UA② ―OPC UA規格の特長―

コラムを読む

今から学ぶOPC UA① ―スマートファクトリーにおけるOPC UAの位置づけ―

コラムを読む