0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【OPC-UA(Java)】初めての制御系アプリケーション開発メモ

Last updated at Posted at 2020-04-21

OSGiフレームワーク上に実装するOPC-UAアプリケーションの開発を初めて経験したので、開発の基盤技術について簡単にメモしておきます。

OSGiフレームワークとは

下記は、「EclipseやSpringで使われている基盤技術OSGiとは」 から引用させていただいたものです。

OSGiを一言でいうと、「Javaモジュールの動的追加や実行を管理するための基盤システム」です。
OSGiでは、Javaモジュールを「バンドル」と呼び、このバンドルの実行基盤を「OSGiフレームワーク」と呼びます。
OSGiには、Javaモジュールを動的追加する仕組みに加えて、複数のJavaモジュール同士を連携させる機能やJavaモジュールを管理するための機能を備えています。

OPC-UAとは

OPC UA(Open Platform Communications Unified Architecture)は産業オートメーションなどの業界で、安全で信頼性あるデータ交換を行うために策定されたオープンな国際標準規格です。

IoT共通プラットフォームとは

IoT共通プラットフォームとは、IoTデバイス、アプリケーション、ネットワークなどを、クラウドを介して効率的につなぐための “プラットフォーム(土台)”のことです。この言葉は様々な意味合いで使われることがあり、構築されたシステム全体のことを示す場合もあります。

OPC-UA サンプルライブラリ

OPC Foundationからgithubにサンプルが公開されています。計測機器からの計測データをOPC-UAのアドレス・スペースに書き込む形式であるWriteValueの定義が記載されているなど、実装に使用するライブラリも詳細に記載されています。
OPCFoundation/UA-Java-Legacy

計測機器からの計測データ取得とOPC-UAクライアントへの連携について

整理している部分の概要は下記の通りです。
<計測機器 ⇔ 機器通信バンドル ⇔ データ中継バンドル ⇔ OPC-UAクライアント>
※機器通信バンドルの概要を記載します。
※取得対象計測データの一覧は、あらかじめ定義ファイルで定義しておきます。

<1> 計測データの取得(Socket通信)
計測機器へのSocket通信により、計測データの要求と取得を行います。
<2> データ中継バンドルへの連携(アドレススペース書き込み)
取得した計測データをOPC-UA規定のデータ型に変換して、OPC-UAアドレススペースに書き込みます。
Ex. OPC-UA規定のデータ型: WriteValue, NodeId...。

実装前に参考したより具体的な記事について

現場で実装する前に、より具体的なJavaでの実装例が知りたくて参照させていただいたのが下記の記事になります。結果的に実装した内容は、全く異なるフレームワークと実装内容になりましたが、身近に感じるという点でお世話になった記事です。
@s5uishidaさん
屋内環境を手軽にモニタリングする~⑥産業オートメーション機器の稼動情報をJavaで取得する(OPC-UA / Eclipse Milo)~

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?