OPC UAとは?使い方・入門方法をまとめてみた

OPC UA

OPC UAの簡単な使い方をまとめてみました。

個人の環境でサーバー・クライアントを作ってテストすることが可能です。

「OPC UAを試してみたい!」という方にフリー(無料)で実施できる内容を紹介します。

 

スポンサーリンク

OPC UAとは?

OPC UAとは産業用の通信規格の一つです。

産業機器・産業システムには数多くの規格が有ります。(PROFINET,EtherCATなど…)

OPC UAを使うことで、規格を超えて産業用のデータ交換することが可能です。

 

OPC UAのできること

例としてOPC UAを使えば、スマートフォンから工場のデータを簡単に確認できます。

工場のコントローラであるPLCのデータを収集することが可能です。

 

他にもクラウドと繋げてデータ収集・解析することもできます。

産業用の莫大のデータを有効活用することが可能です。

 

OPC UAの使い方

(メーカ製の)OPC UAに対応した機器・ソフトは高価かつ有料のケースも多いです。

但し、無料でも十分にテスト可能で簡単に使い方を学ぶことが可能です。

OPC UAの使い方・入門方法の各事例を紹介していきます。

 

OPC UAでPLCと接続テスト

OPC UAでPLCと接続して、クライアント側からデータ取集まで試してみました。

無料で対応可能です。

ラズベリーパイを「OPC UAサーバー」かつ「PLC(シーケンサ)」にする手順を紹介します。

 

OPC UAサーバーとPLCの作り方を下記記事で紹介しています。(リンクはこちら)

OPC UAでPLC(シーケンサ)と接続!サーバーの環境構築してみた

OPC UAでPLC(シーケンサ)と接続!サーバーの環境構築してみた
OPC-UAでPLCと接続して、クライアント側からデータ取集まで試してみました。無料で対応可能です。 汎用的なラズベリーパイで「OPC UAサーバー」かつ「PLC(シーケンサ)」にする手順を紹介します。 OPC UAでPLC...

 

OPC UAクライアントのフリーソフト

OPC UAクライアントソフトのUaExpertのダウンロードして使い方を確認しました。

無料(フリー)で使えて便利なソフトです。

OPC UAを始めてみたい方におすすめな記事となっています。

 

OPC UAクライアントの始め方を下記記事で紹介しています。(リンクはこちら)

OPC UAクライアントのフリーソフトUaExpertを使ってみた

OPC UAクライアントのフリーソフトUaExpertを使ってみた
OPC UAクライアントソフトのUaExpertのダウンロード方法から基本的な使い方まで紹介します。 無料(フリー)で使えて便利なソフトですのでOPC UAを始めてみたい方におすすめな記事となっています。 OPC UAクライ...

 

スマートフォンのアプリ

工場のコントローラであるPLCのデータを見える化してみました。

OPC UAを使えばスマートフォン・タブレットでもデータ収集することが可能です。

環境整えてアプリ一つダウンロードすれば見える化できる事例を試しています。

 

OPC UAをスマートフォンで利用する方法を紹介しています。(リンク先はこちら)

工場の見える化の事例を試してみた!OPC UAで簡単にデータ収集

工場の見える化の事例を試してみた!OPC UAで簡単にデータ収集
工場のコントローラであるPLCのデータを見える化してみました。 OPC UAを使えばスマートフォン・タブレットから簡単にデータ収集することが可能です 環境整えてアプリ一つダウンロードすれば見える化できる事例を紹介します ...

 

Linuxのフリーソフト

LinuxでOPC UAクライアントをインストールして動かしてみました。

汎用的なラズベリーパイでテストしていますので誰でも同様に実施できます。

無料(フリー)で簡単にLinuxからPLCと通信することが可能です。

 

LinuxでOPC UAを簡単に使う方法を下記記事で紹介しています。(リンク先はこちら)

LinuxでOPC UAクライアントを動かす!PLCと通信してみた

LinuxでOPC UAクライアントを動かす!PLCと通信してみた
LinuxでOPC UAクライアントをインストールして動かしてみました。 汎用的なラズベリーパイでテストしていますので誰でも同様に実施できます。 無料(フリー)で簡単にLinuxからPLCと通信することが可能です。 L...

 

OPC UAの仕様

OPC UAの情報モデルの型は規格で決まっています。

Pythonでサーバーを作成して、どのような仕様になっているのか調べてみました。

OPC UAのデータ構造を実際に確認することが可能です。

 

OPC UAの仕様・構造の確認方法を下記記事で紹介しています。(リンク先はこちら)

OPC UAの情報モデルをサーバー作って確認してみた

OPC UAの情報モデルをサーバー作って確認してみた
OPC UAの情報モデルの型は規格で決まっています。 フリー(無料)のサーバーを作成して、実際にどのような仕様になっているのか調べてみました。 OPC UAのデータ構造を分かりやすく紹介します。

 

OPC UAのセキュリティ

OPC UAのセキュリティの証明書を実際に発行してみました。

セキュリティポリシーの「Basic256Sha256」を使用しています。

サーバー・クライアント間でのセキュリティの設定方法含めて確認しました。

 

OPC UAのセキュリティの使い方を下記記事で紹介しています。(リンク先はこちら)

OPC UAでセキュリティの証明書を発行してみた

OPC UAでセキュリティの証明書を発行してみた
OPC UAのセキュリティの証明書を実際に発行してみました。 セキュリティポリシーの「Basic256Sha256」を使用しています。 サーバー・クライアント間でのセキュリティの設定方法含めて詳しく紹介します。

 

OPC UAとクラウドのゲートウェイ

AWS IoTでOPC UA(産業用のデータ)を使ってみました。

クラウド(AWS)でOPC UAの情報を収集できています。

実際に接続した事例をもとに、環境構築の手順を一から確認しました。

 

OPC UA対応のゲートウェイの作り方を下記記事で紹介しています。(リンク先はこちら)

AWSでOPC UAの使い方!Greengrassで接続してみた

AWSでOPC UAの使い方!Greengrassで接続してみた
AWS IoTでOPC UAを使ってみました。 クラウド(AWS)でOPC UAのデータを確認できています。 実際に接続した事例をもとに環境構築の手順を一から紹介します。

 

OPC UAとクラウドの接続テスト

AWS IoT SiteWiseを使ってOPC UAのデータ収集・解析をしてみました。

各設定方法から実際に掛かった料金まで記載しています。

実例を基にクラウド(AWS)で産業用データの使い方を確認しています。

 

実際にクラウドでOPC UAを使う方法を下記記事で紹介しています。(リンク先はこちら)

AWS SiteWiseでOPC UAのデータ収集してみた

AWS SiteWiseでOPC UAのデータ収集してみた
AWS IoT SiteWiseを使ってOPC UAのデータ収集・解析をしてみました。 各設定方法から実際に掛かった料金まで記載しています。 実例を基にクラウド(AWS)で産業用データの使い方を紹介します。

 

OPC UAでEtherCATやPROFINETのデータ収集

PythonでEtherCAT,PROFINETの産業用イーサネットのデータを収集してみました。

ラズパイと無料ソフト環境でテストしていますので誰でも実施可能です。

使用したライブラリからプログラムまで一から確認しています。

 

OPC UAでデータ収集した例を紹介しています。(リンク先はこちら)

PythonでIoT!Raspberry Piで産業用のデータ収集してみた

PythonでIoT!Raspberry Piで産業用のデータ収集してみた
PythonでEtherCAT,PROFINETの産業用データを収集してみました。 ラズパイと無料ソフト環境でテストしていますので誰でも実施可能です。 使用したライブラリからプログラムまで一から紹介します。 Pytho...

 

RustでOPC UA

Pythonだけでなく、プログラミング言語RustでもOPC UAの環境構築が可能です。

フリーのライブラリを使って、サーバーを作成しています。

実際に通信テストした手順を一から紹介します。誰でも同様に実施できます。

 

RustでOPC UAの環境構築した例を紹介しています。(リンク先はこちら)

RustのOPC UAサーバーからクライアントと接続してみた

RustのOPC UAサーバーからクライアントと接続してみた
プログラミング言語のRustでOPC UAの環境構築してみました。 フリーのライブラリを使って、サーバーを作成しています。 実際に通信テストした手順を一から紹介します。誰でも同様に実施できます。

 

FA設備技術勉強会で発表しました

今回の内容を「第6回 FA設備技術勉強会」で発表させていただきました。

(connpassでのリンク先はこちらから)

勉強会に使った発表資料が下記スライドになります。

 

謝辞

FAの技術交流できる貴重な場を開催していただいたことに深く感謝申し上げます。

 

@fulhause様、また一般社団法人 次世代ロボットエンジニア支援機構 Scramble様含めた開催者・運営者・参加者の皆様には重ねてお礼申し上げます。

 

勉強会でいただいた意見・コメント

勉強会で貴重な意見・コメントいただきました。

自分への忘備録含めてこのブログにも残しておきたいと思います。

※記事として書きやすいように質問・回答内容を多少修正させていただいています。

 

OPC UAの開発テストにどれぐらいの時間を掛けているのか?

この記事で紹介しているテストレベルで大体1日~2日程度です。

各個人で技術のバックグラウンドには違いがありますので、あくまで目安です。

(筆者の場合はブログ記事を書きながらのテストなので、速い人は数時間のレベルかも…)

 

  • OPC UAでPLCと接続テスト…1~2日
  • OPC UAクライアントのフリーソフト…1日
  • スマートフォンのアプリ…1日
  • Linuxのフリーソフト…1日
  • OPC UAの仕様…1~2日
  • OPC UAのセキュリティ…1~2日
  • OPC UAとクラウドのゲートウェイ…2~3日
  • OPC UAとクラウドの接続テスト…1~2日
  • OPC UAでEtherCATやPROFINETのデータ収集…2~3日
  • RustでOPC UA…1~2日

 

最初はソフトのインストールなど、どうしても開発環境の構築に時間は掛かります。

一度OPC UAの開発環境作ってしまえば、コツも掴めて速くなると思います。

 

開発テストする際に注意していること

勉強会では伝えきれませんでしたが、個人的に気を付けていることは下記です。

 

変なネットワーク環境では開発テストしない。

OPC UAがTCP/IPのポートを開きますので、ルータの設定次第では弾かれる場合があります。

開発の段階では、なるべく独立したネットワーク環境でテストすることをおすすめします。

(筆者はWimaxやスマホのテザリングなどで実施するケースが多いです)

 

1台のデバイスに2つのOPC UAサーバーを立てない

OPC UAサーバーがポートを開きますので、重複すると大体エラーが発生します。

例えば1台のラズパイで「CODESYS」と「Python」の両方のOPC UAサーバーを開く場合です。

必要に応じて、一度ラズパイからCODESYSをアンインストールの対応した方が良いです。

 

クラウドでは公式のマニュアル・手順を必ず守る

クラウドの設定に関しては、公式のマニュアル・手順を良く読んだ方が良いです。

特に使用するバージョンには気を付けて下さい。

クラウドサービスはバージョン違いで設定・手順が異なることが頻繁にあります。

 

OPC UAはMicrosoftに依存性がある?

筆者のテストレベルでは特に依存性はありませんでした。

Linux、Windowsどちらの開発環境でも正常に動作・テストできています。

GitHubのオープンソースも多くあり、比較的に自由な環境で開発が可能です。

 

ただOPC UAの一つ前の規格の「OPC DA」では影響あったようです。

勉強会のチャットに有識者からコメントいただいていました。ありがとうございました。

 

OPC UAは日本国内で流行るか?

少しずつ広まっていそうですが、日本国内で流行るとしても時間が必要だと思います。

特にFA業界では規格ものが伝わるのに(年単位の)時間がかかります。

保守性・コストの影響で通信方式の大幅な切り替えは難しい傾向があるとは考えています。

 

現状、国内FAメーカだとハイエンド(高価)な機器には搭載されているケースがあります。

ただ汎用的な機器全てにOPC UAが搭載されるには、時間がかかりそうです。

ただ比較的オープンな開発環境を持つ通信規格なので、個人的には期待しています。

 

まとめ

今回はOPC UAの使い方・入門方法に関して紹介させていただきました。

記事をまとめますと下記になります。

OPC UAとは産業用の通信規格の一つです。
OPC UAは無料で十分にテスト可能で、使い方を学べます。
OPC UAはオープンソースやフリーのソフトが多くあります。

 

ラズベリーパイ(raspberry pi)で簡単にOPC UAを使うことができます。

皆様もぜひ試してみてください。

コメント