前回はTF6100をOPC-UA Server立ち上げる手順を説明しました。もし質問あればメール・Twitter・コメントでもよいので
TwinCAT OPC UA TF6100はClientとして他のServerにアクセスでき、IO DriverやPLC Function Blocks APIの2種類方法があります。そのTwinCAT IO Drvierは一番手早く・簡単な方法だでServerと通信確立できます。そして今回はそのIO Driverの設定方法を紹介します。
ちなみにこちらはPart1です:
Beckhoff#TwinCAT3 TF6100 OPCUA _Part1_Server立ち上げよう
Support Data Type
OPCUA Demo Serverインストール
自分でServer立ち上げるのもよいですが、一番手早い方法でテストしたいので、簡単なDemo Serverを入れたいと思います。
まず下記のLINKをアクセスします。
C++ Demo Server – Windows Setupでダウンロードできます。
Nextします。
またライセンスですね。はい、Check入れ、Nextします。
Nextします。
Installしたいです。Installします。
しばらく待ちます。
これでOKです!
OPC UA Server起動
UaCPPServerをクリックします。
そうすると、Terminalが起動され、EndpointのURLが見えます。
OPCUA Client IO設定
OPCUA Virtual追加
XAE起動しI/O>Device>Add New Itemします。
OPCUA>Virtual OPC UA Deviceを選び、OKします。
それでOPC UA Virtualが追加されます。
中にInputsで接続StatusなどをPLC アプリケーションに割り付けて運用するもできます。
OPC UA Client追加
次は先InsertしたDevice 1を右クリック>Add New Itemします。
OPCUA Clientを選び、OKします。
Nameはわかりやすく設定しましょう。
そしてまた新しい追加されたDeviceにクリックします。
Settings> Endpoint URLのところで先立ち上げたOPCUA Demo ServerのURLを入れます。
入力終わったらAdd Nodesボタンクリックし通信したいNodesを設定します。
みんなさんがEndpoint URLを入力間違えないと祈ります。
今回はUaExpertを使って立ち上げたServerからアクセスし、XAE側でも同じなNode見えるだとわかると思います。
そこでアクセスしたいNodeをCheckboxにいれ、OKです。
先SelectしたNodesはすべて表示されます。
それでNode追加作業は完了です。
Node値読む
では、試しにNodeの値を読んでみましょう。
Demo.000_Static.Arrays.Doubleの配列なら値が変わらないので、こっちを試してみよう。
Value[5]をタブルクリックします。
OnlineのTabをクリックしますと、現在値は11.0だとわかります。
もちろん、Valueのところタブルクリックすれば配列などの値を一覧できます。
このように感じです。
Nodeを書き込む
次はNodeを書き込もうと考えています。
TargetはDemo.000_Static.Arrays.Doubleします。
Nodeの名前のところにダブルクリックします。
そこでNodeのAttributesが見えます。いまの値とかData-typeとか。
Enable WriteのCheckboxがありますね。
これをCheck入れます。
先のNodeがProcess IOにはInputだけではなく、Outputsもできています。
いきなりBlue画面になりました!!!まじですか。
何回同じなことやっても同じみたいで。ちょっと迷っちゃいました。
なにか間違ってたのでしょう。
まず先と同じくAdd Nodesしましょう。
下にはEnable WriteのCheckboxがあります。それをCheckしてください。
同じく必要なNodeをCheck入れてOKします。
そしてダウンロードしてください。
ダウンロードしないとまたBlue 画面になります。
Demo.000_Static.Arrays.Doubleに0番目のNode値を書き込んでみます。
まずExecuteとWrite EnableをTrueします。
そしてValue[0]をダブルクリックします。
Online>Writeボタンをクリックします。
Floatのところで52.2という値を入れて、OKします。
それで値がちゃんと変わりました。
Method実行
Demo ServerのMethodを実行してみます。
今回のTargetはDemo.003_method.Multiplyします。
中にa,b,bExecute 3つのパラメータがらいます。
aをクリックしOnline Tabを開いて3.4を書き込むます。
bをクリックしOnline Tabを開いて100.0書き込みます。
bExecuteをクリックしOnline Tabを開いてTrue書き込みます。
Resultの変数みると、ちゃんと10にかけて340.0になりましたね。
もちろんMethodのNodeをクリックすれば一覧もできます!
はーいお疲れ様です。