OPC UAって結局なんなの? 「全世界共通の通訳」が必要な理由と、現場での使い所

  • URLをコピーしました!

「インダストリー4.0」「スマート工場」「IoT化」……。

展示会に行けばキラキラした言葉が踊っていますが、現場の設計者からすれば「で、結局どうやって繋ぐの?」というのが本音ではないでしょうか。

そこで必ず出てくるキーワードが「OPC UA」です。

「名前は聞くけど、設定が面倒くさそう」「従来の通信と何が違うの?」と敬遠されがちなこの規格。

実はこれ、単なる通信プロトコルではなく、「メーカーの壁を取り払うための通訳(翻訳機)」なのです。

今回は、なぜ今OPC UAが必要なのかを、現場のエンジニア目線で「Dレジスタ」や「DM」の話を交えて噛み砕いて解説します。


目次

導入:メーカーごとの「方言」で、現場は会話不能状態?

工場の中を見渡してみてください。 三菱電機のPLC、オムロンの温調器、キーエンスのセンサー、ファナックのロボット……。 まるで多国籍軍のように、様々なメーカーの機器が混在していますよね。

しかし、これらには今まで「言葉が通じない」という致命的な問題がありました。 みんな、メーカー独自の「きつい方言」しか喋れないのです。

  • CC-Link IE (三菱語)
  • EtherNet/IP (ODVA語)
  • EtherCAT (ベッコフ語)

この状態で、上位のパソコン(サーバー)でデータをまとめて管理しようとするとどうなるでしょうか? パソコン側は、これら全ての方言を理解するために、何種類もの「通訳プログラム」を用意しなければなりません。これでは、システムを組むだけで莫大な手間とコストがかかってしまいます。

そこで救世主として登場したのが、「全員、これからは『OPC UA』という世界共通語で喋ろうぜ」というルールなのです。

OPC UAが注目される5つの理由(異種環境の統合、プラットフォーム非依存、セキュリティ強化、国際標準規格、将来性)をまとめたインフォグラフィック。

アドレス(番地)を捨てて「タグ(名札)」で呼ぶ

従来の通信(Modbusや各社独自プロトコル)とOPC UAの最大の違いは、「データの呼び方」にあります。

昔(レガシー):番地で呼ぶ「郵便屋さん」

これまでは、データを取り出すために「メモリの番地」を指定していました。

  • 三菱電機 (Q/iQ-R): 「D1000番地」の値を見ろ!
  • キーエンス (KV): 「DM100番地」の値だ!
  • オムロン (CS/CJ): 「CIO 0.00」がONしてるぞ!

これの問題点は、「外(PC側)からは、その数字が何の意味かさっぱり分からない」ことです。

PC側のプログラマーは、「三菱のD1000はライン速度、キーエンスのDM100は温度…」という膨大な「翻訳表(アドレスマップ)」をエクセルで作る必要がありました。

もしPLCのラダー修正でD1000がD1002にズレたら? ……翻訳表も全部修正です(地獄)。

今(OPC UA):名前で呼ぶ「タグ(変数)方式」

OPC UAでは、内部のメモリ番号なんて気にしません。データに「名札(タグ)」を付けてやり取りします。

  • Line1.MotorSpeed (ライン1のモータ速度)
  • Oven.Temperature (オーブンの温度)

これなら、三菱だろうがキーエンスだろうが、外から見れば同じ「Temperature」です。

PLCの中身がD1000だろうがD5000だろうが、タグ名さえ合っていれば上位システムは一切修正不要。これがOPC UAが「IoT時代の標準」と言われる最大の理由です。

従来のPLC通信(アドレスベース)とOPC UA(タグベース)の違いを比較したExcelイメージ図。Dレジスタ(D1000など)による意味不明なデータ管理と、OPC UAのタグ名(Line1_Speedなど)による「意味がわかる」データ管理の可読性の違いを対比。

コラム:メーカーによって「設定の楽さ」が全然違う!

「タグ名で呼べるなんて便利!」と思ったあなた。実は、使っているPLCメーカーによって設定の「楽さ」が天と地ほど違います。

これから機器選定をするなら、この違いを知っておいて損はありません。

変数ベース(オムロン・シーメンスなど)

これらは最初から変数をタグとして扱う思想で作られています(IEC 61131-3準拠)。 例えば、オムロンのNX/NJシリーズなら、設定は一瞬です。

  1. グローバル変数を作る(例:Network_In1など)。
  2. その変数の「ネットワーク公開」という列を、プルダウンで切り替える。

たったこれだけで、上位PCからは自動的にその変数名が「タグ」として見えるようになります。 構造体などもそのまま見えるため、「ダントツで楽」です。

オムロン製PLC(Sysmac Studio)でのOPC UA設定画面のスクリーンショット。グローバル変数の「ネットワーク公開」設定をプルダウンで「出力」に切り替えるだけで、自動的にタグとして公開される簡単な設定手順を示した図。

(※出典:オムロン株式会社「NJ/NXシリーズ CPUユニットユーザーズマニュアル OPC UA編 (SBCA-411)」より)

画像の「ネットワーク公開」の列を見てください。 ここのプルダウンを「非公開」から「入力」や「出力」に変えるだけ。……信じられないかもしれませんが、設定は本当にこれだけです。 これだけで、PLC内部の変数がそのままOPC UAの「タグ」として世界中に公開されます。

アドレスベース(三菱電機・キーエンスなど)

これらは伝統的なアドレス(デバイス)管理を守っているため、ひと手間かかります。

  1. OPC UAユニットの設定ツールを開く。
  2. 「デバイス D1000番地 を、タグ名 Motor_Speed に変換する」という「割り付け設定」を行う。
  3. ユニットに書き込む。

あくまで「アドレス」を「タグ」に変換して見せているだけなので、変換テーブルを作る作業が発生します。

大規模なシステムを作る場合、この手間の差は意外と馬鹿になりません。


セキュリティは「社員証」ではなく「パスポート」

もう一つ、現場で嫌がられるのが「証明書(Certificate)」などの面倒なセキュリティ設定です。

「社内LANなんだから、繋げば動くようにしてくれよ!」と言いたくなりますが、これには理由があります。

  • 従来の工場ネットワーク:
    • 「鎖国」状態。 外と繋がっていないから、誰が入ってきても(物理的にケーブルを挿せれば)性善説で通していた。
  • IoT時代のネットワーク:
    • 「開国」状態。 インターネットやクラウドと繋がる。

もし、従来の感覚でインターネットに繋ぐと、地球の裏側のハッカーに「モーター停止コマンド」を勝手に送られてしまうかもしれません。

空港の入国審査と同じ

OPC UAのセキュリティは、「信頼できる相手としか通信しない」仕組みです。

  1. 接続要求: 「繋いでいい?」
  2. 証明書確認: 「パスポート(電子証明書)見せて。うん、君は正規の管理者だね」
  3. 暗号化通信: 「じゃあここからは、盗聴されても分からない暗号で話そう」

面倒ですが、この「認証」と「暗号化」が標準装備されているからこそ、安心して工場のデータを外に出せるのです。

OPC UAのセキュリティ(認証)の仕組みを入国審査に例えたイラスト。パスポート(電子証明書)による本人確認と、チェックポイントでの信頼関係構築のイメージ。

【技術解説】OPC UAを支える「情報モデル」

さて、ここからは少し技術的な中身の話です。

これを理解していると、上位システム側の担当者(ITエンジニア)と会話するときに、『タグの中に単位も入ってるから、そっちで勝手にグラフ化できるでしょ?』とカッコよく言えるようになります。

OPC UAが「ただの通信」ではないと言われる所以は、その「情報の持たせ方(情報モデル)」にあります。

単なる「数値」か、「意味のある情報」か

従来の通信では、「100」というデータが送られてきても、それが「100℃」なのか「100mm」なのか「エラーコード100」なのかは分かりませんでした。

OPC UA(情報モデル)では、データが「オブジェクト(構造体)」として扱われます。

  • 値 (Value): 100
  • データ型 (DataType): Int32
  • 単位 (Unit): Celsius (℃)
  • 品質 (Quality): Good (正常値)
  • タイムスタンプ: 2025/12/24 15:00

データそのものに「私は摂氏100度で、正常なデータですよ」という自己紹介が含まれているのです。これにより、受け取った側のシステムは何も考えずにデータをグラフ化したり保存したりできます。


OPC UA導入の現実解(住み分け)

「じゃあ、これからはセンサーも全部OPC UAになるの?」

というと、そうはなりません。OPC UAは高機能なぶん、通信パケットが大きく、処理が重いからです。

0.1ミリ秒を争うような高速なモーション制御には不向きです。

現在の工場のトレンドは、以下のような「適材適所」の使い分けです。

階層役割推奨プロトコル
上位 (IT層)生産管理・クラウド連携
(速度より意味・安全重視)
OPC UA
コントローラ間PLC同士の連携OPC UA / EtherNet/IP
フィールド (現場)モーター・センサー制御
(とにかくリアルタイム性重視)
EtherCAT, CC-Link IE TSN
MECHATROLINK など

現場の足回りは、従来どおり得意なフィールドバス(EtherCATなど)で高速に回し、

そのデータをPLCが集約して、上位へ送るときだけOPC UAに変換して渡す。

これが最もコストパフォーマンスが良く、現実的な構成です。

工場ネットワークの3層構造図。フィールド層(センサー・モーター)はリアルタイム性の高いEtherCAT等を使用し、コントローラ間や上位層(IT層)との連携にはOPC UAを使用する「適材適所」のプロトコル使い分け構成。

OPC UAは上位連携には最強ですが、高速な制御には向きません。足回りの制御には『EtherNet/IP』などが適しています。違いについては以下の記事で解説しています。

あわせて読みたい
EtherNet/IPとは?「普通のLAN」と何が違う?現場で役立つ基礎知識 「EtherNet/IP」と「普通のLAN」、ケーブルは同じでも中身は別物です。なぜ工場では普通のLANじゃダメなのか?その理由と、新人が必ずハマる3つの落とし穴(EDSファイルの登録忘れ、事務用ハブの使用など)を、現場の実体験を交えて解説します。

まとめ

  • OPC UAは「通訳」: 三菱「D」やキーエンス「DM」の違いを吸収し、共通の言葉にする。
  • タグで管理: アドレス管理から解放され、仕様変更に強くなる。
  • メーカー差: オムロンなどの「変数ベース」PLCなら、設定はチェックを入れるだけで爆速。
  • セキュリティ: 面倒な証明書は、工場を守るための「パスポート」。
  • 使い分け: 制御は従来のフィールドバス、情報収集はOPC UA。

「難しい・面倒」と思われがちなOPC UAですが、その本質は「人間(エンジニア)が楽をするための仕組み」です。

次回のプロジェクトで「上位連携」の話が出たら、「じゃあOPC UAでタグ渡しにしましょうか」と提案してみてください。それだけで、あなたは「IoTの分かるエンジニア」として一目置かれるはずです。

\ 未経験から一人前の設計者へ /

知識ゼロから現場で戦えるレベルまで。FA電気設計の学習手順を体系的にまとめました。学習の迷子にならないための「地図」です。

👉 FA電気設計・完全学習ロードマップを見る

💬 更新情報を X (Twitter) で発信中!

記事の更新通知や、現場で役立つ「電気制御の小ネタ」をツイートしています。 また、「記事のここが分からなかった」「現場でここが困っているけどどうしたらいい?」といった疑問があれば、DMで募集しています!個別のトラブル相談も、ブログのネタにさせていただけるなら大歓迎です!ネタに困っている私を助けると思って(笑)、ぜひフォローして気軽に絡んでください!

よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

目次