タグの基本

<< Click to Display Table of Contents >>

マニュアル > サーバ作成ガイド > タグ編 >

タグの基本

タグとは?

FA-Panelは100機種相当のPLC等との通信に対応しており、PLC以外に他社OPCサーバなどとも通信接続することができます。そして、これらの機器との通信は「タグ」を介して行われます。タグはPLCとの通信を行うという目的以外にも、内部計算用のワークエリアとして利用したり、複数のノード同士でネットワークを介したデータ共有を行ったりと、さまざまな用途に利用することができます。

 

タグの定義における最大のポイントは、リンクされた様々な情報を全てタグとして同等に扱うことができるという点です。例えば、三菱PLCやオムロンPLCなどの異機種PLCが複数混在するような場合でも、タグとして各種PLC上のデータを同等にフラットに扱うことができます。

 

タグを登録して設定することにより、PLCとの通信が行えるようになります。例えば三菱PLCと接続して、「D0000」や「M0000」のデバイスに対して通信を行いたい場合、それぞれのデバイス毎にタグを1点ずつ登録します。

 

 

 

c_tag_0001

 

 

hint

PLCなどの機器と接続するには、各機器に対応した「ユニット」を登録し、その配下に「フォルダ」「タグ」を登録します。各機器との接続方法に関する詳細については、「機器接続ガイド」に記述されています。

 

hint

タグは実際に通信を行うため、「実タグ」もしくは「ドライバタグ」とも呼びます。

 

 

タグの階層構造とタグパス

タグは、「ユニット」「フォルダ」「タグ」という3階層の構造を持ちます。

 

■ユニット

 
ユニットは通信を行うPLC毎に作成します。各PLC固有の接続設定情報を定義します。

 

■フォルダ

 
フォルダでは、各PLC固有のネットワークに関連する設定を行います。フォルダは必ずユニットの下に作成します。1つのユニットの下に複数のフォルダを作成することもできます。但し、フォルダのネスト構造(フォルダの下にさらにフォルダを作成すること)はできません。
 
フォルダは主に2つの役割を持っています。1つは、タグの値の更新周期をフォルダでグループ化したい場合です。更新周期はフォルダ単位に設定可能であるため、例えば1秒ごとに値の更新が必要なタグと、更新は10秒に1回で良いタグとを分けて管理することができます。もう1つの目的は、デイジーチェイン型でのPLC接続設定を行う場合です。例えば、PLCの機種によってはマルチドロップ接続(RS-422)やMELSECNET接続(三菱PLC)など、1台のPLCを基点として複数台のPLCと通信する場合があります。そのようなケースにおいては、フォルダごとに号機番号やネットワーク番号などの通信上の設定を行うことで各PLCとの接続を行います。

 

■タグ

 
タグは、基本的にPLCデバイス1点につき1つのタグを作成します。又、タグは必ずフォルダの下に作成します。個々のタグは、タグ名、データ型、データサイズ(ワード、ダブルワードなど)、PLCデバイスのアドレス、フィルタ情報(型変換や工学値変換など)などの詳細な設定値を持ちます。

PLCに接続されたタグを登録した場合、タグの値は通信ドライバによってPLCデバイスの値で自動的に更新が行われます。又、タグに対して値を書き込むと、書き込まれた値は通信ドライバを介して、PLC上のデバイスに対して実際に書き込まれます。

 

従って、アプリケーションからはタグの値を参照する事によってPLCデバイスの値を知ることが可能となり、アプリケーションからタグに対して値を書き込む事によって、PLCデバイスの値を書き換えることができるようになります。

 

尚、タグの参照は「タグパス」と呼ばれる書式に従って行います。

タグパスの書式は、ユニット、フォルダ、タグをピリオド「.」でつなげた文字列です。

 

タグパスの例:

U01.F01.T01

 

 

hint

タグは配列として宣言することもできます。

 

 

タグのデータ型

タグは、データ型により大きく分けて「ビットタグ」「数値タグ」「文字列タグ」の3つのタイプがあります。

 

標準PLCでは「アドレス設定」タブの「タイプ」によりタグの型が決定します。

 

タイプ

データ型

0 - ビット

ビットタグ

1 - 整数 BCD

数値タグ

2 - 整数 BCD (符号付き)

数値タグ

3 - 整数 バイナリ

数値タグ

4 - 整数 バイナリ (符号付き)

数値タグ

5 - 単精度浮動小数型(IEEE)

数値タグ

6 - 倍精度浮動小数型(IEEE)

数値タグ

7 - アスキー

文字列タグ(ASCII)

8 - UTF-8

文字列タグ(Unicode(UTF-8))

7 - UTF-16

文字列タグ(Unicode(UTF-16))

 

ビットタグはTRUEかFALSEの値をとります。TRUEはONの状態で、FALSEはOFFの状態です。数値タグは数値を取扱います。文字列タグは、文字(全角文字も含む)を取り扱います。

 

 

hint

ビットデバイスをビットタグ(TRUE/FALSE)ではなく、数値タグ(1/0)として取り込みたい場合は、アドレス設定のタイプとサイズを以下のように設定します。

尚、M0000からM0015までをBCD値として扱いたい場合なども、タイプ、サイズの設定により柔軟に定義できるようになっています。

詳しくは、「デバイスの解釈」を参照してください。

 

c_tag_0008

 

または、フィルタ設定タブにある型変換で数値型を指定することでも、上記と同様にタグのデータ型を明示的に変換することができます。

詳しくは、「データ型と型変換」を参照してください。

 

c_tag_0165

 

 

 

タグを利用する場面(例)

例えば「U01.F01.T01」というタグを1つ設定すると、以下のように様々な場面から利用することができます。

 

 

例)IPLinkクライアントで

IPLink1.ReadVal("U01.F01.T02", value, 0)

 

例)DDEで接続する際に

=FASERVER|U01.F01!T01

 

例)OPCのアイテム名として

c_tag_0002

 

 

 

例)タグモニタのビューで

 

c_tag_0003

 

例)スクリプトVer1アクションで

c_tag_0004

 

 

例)FA-Panel のバインド式で

 

 

c_tag_0006

 

例)FA-Panel のスクリプトで

c_tag_0007