PLCnextによるOPC UAの活用(2):PLCnextのOPC UAサーバへアクセス

前回は OPC UA の概要と構成例について紹介しました。

PLCnext に搭載されている OPC UA サーバへアクセスして変数値を取得するまでの具体的な手順を紹介します。

目次

PLCnext 上の OPC UA サーバへのアクセス実験用環境

アプリケーション種類機材/ソフト
OPC UA サーバPLCnext コントローラ:AXC F 2152
OPC UA クライアントUaExpert (無償):Unified Automation 社製の OPC UA クライアントアプリ。Windows 用を使用します。
プログラミング環境PLCnext Engineer (無償):PLCnext 用の開発環境アプリ。今回は ST 言語で極めて短いコードを作り、その中の変数をOPC UA クライアントから参照します。
使用する機材とソフト
作業環境

ここでご紹介する手順は、簡易的な接続実験です。
セキュリティ上の観点から、UaExpert と PLCnext コントローラ間のネットワークは他の機器が接続されていないローカルネットワークとして構築してください。

PLCnext プロジェクトの用意

作業該当箇所

まず、PLCnext Engineer で 新しいプロジェクトを作成し、PLCnext の OPC UA サーバに関する設定を行います。

プロジェクトの新規作成

PLCnext Engineer を起動し、新しいプロジェクトを作成してください。

OPC UA Server の設定

PLANT ペイン内の OPC UA の項目から OPC UA Server の設定画面を出すことができます。
Information model -> Visibility of variablesMarked に設定します。

単純なサンプルプログラム

作業該当箇所

次に、プログラムの作成、書き込み&実行を行います。

ST言語で1行のプログラムを作成

まず、COMPONENTS ペインにある Programming -> Local -> Programs -> Main をダブルクリックし、ST 言語 を選択してください。

表示されたエディター画面へ
counter_var := counter_var + 1;
と入力してください。これは、counter_var という変数へ毎回 1 を加算する、という意味です。

counter_var の下に赤い波線が表示されるのは、まだ定義されていない変数である、というエラーです。
counter_var の上で右クリックし、Create New Variable -> Local を選択することでローカル変数として定義でき、赤い波線表示は消えます。

変数を OPC UA で公開

OPC UA クライアントから PLCnext の OPC UA サーバへアクセスしたときに counter_var 変数の値を操作できるよう設定します。

プロジェクトの書き込み

プロジェクトを一旦セーブした後、PLCnext コントローラへプロジェクトを書き込んでください。
プロジェクト書き込み先 PLCnext コントローラの IP アドレスの指定方法などについては、PLCnext Engineer のヘルプ等をご参照ください。

UaExpert による OPC UA サーバへのアクセス

作業該当箇所

最後に、UaExpert のインストールと、OPC UA サーバへのアクセスを行います。

UA Expert のダウンロードとインストール

Unified Automation 社のサイトから UaExpert をダウンロードし、インストールしてください。
ダウンロードには無料のユーザ登録が必要になります。
詳細は Unified Automation 社のサイトをご参照ください。

PLCnext コントローラへの接続設定

UA Expert を起動し、接続設定を行います。

PLCnext コンローラへのアクセス

Server Certification に関する警告が出ますが、ローカルネットワーク上での簡易的な実験のため、「信頼できるサーバである」とし、そのような警告を無視するように設定します。

以下の様に、PLCnext Engineer で作成した counter_var 変数を参照できるようになります。

Refresh アイコンをクリックするたびに、counter_var 変数の読み出し値が更新されます。

以上で、PLCnext コントローラ上の変数へ OPC UA クライアントからアクセスするための手順です。

次回は、コンパニオン情報モデルを PLCnext コントローラへ取り込んで利用するための具体的な手順を紹介します。

  • URLをコピーしました!
目次