デバイスの解釈

<< Click to Display Table of Contents >>

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

デバイスの解釈

デバイスの解釈について

標準PLCのデバイスには、ビットデバイス・バイトデバイス・ワードデバイスなど、いくつかの種類があります。例えば三菱電機製のPLCでは「X」「Y」「M」などはビットデバイスであり、1デバイスのサイズは1ビットです。

また「D」「W」「R」はワードデバイスであり、1デバイスのサイズは16ビットとなります。つまり「X」などのビットデバイス16個分が、「D」などのワードデバイス1つのサイズに相当します。

 

具体的な例を挙げると、三菱電機製のPLCでは「X」は入力にあたります。入力カードの接点につながった機器がOnの場合、値は1になり、Offの場合は0になります。通常はこれら1つ1つにそれぞれ別々の機器がつながっているので、ユーザーが知りたい情報はOnかOffかということになります。

しかしながら、デバイスには機器の仕様により様々な意味解釈があり、例えば前述の入力カードにサムロータリースイッチなどのBCD入力がつながっていた場合の挙動としては、通常は、BCDは4つの接点を使用して、4ビットで0から9までを表現します。つまり、X0からX3までの情報で、1桁の数値を示すことになります。当然4桁の数値をあらわすためには、4×4=16ビット必要になります。こういった場合、X0からX15までのまとまった単位で初めて1つの情報として意味を持ち、それぞれを個別に解釈しても意味がありません。あるいは、「D」などのワードデバイスは通常16ビット単位で1つの数値をあらわしますが、ワードデバイスを構成する各ビットにさまざまな情報のフラグを格納する場合などは、ビット単位で扱わなければならない場合もあります。

 

そこで、本パッケージはこれらのデバイスの種類に関わらず、さまざまな解釈ができるように柔軟に設計されています。また、それらの考え方は非常にシンプルな形にまとめられています。

 

ここでは例として、任意のタグを1点追加して、タグのプロパティを開いてみます。

 

c_tag_0081

 

上画像のうち、「タイプ」のコンボボックスを開いてみると、ビット・整数BCD・整数バイナリ・アスキーなどが選択できることがわかります。ここで「整数バイナリ」を選択すると、サイズには、1ビット・8ビット・16ビット・32ビット・自由指定などが選択できることがわかります。さらに「自由指定」を選択した場合には、3ビットや12ビットなど自由にビット数を指定できることもわかります。

 

デバイスをどのように解釈するかは、これらの設定を組み合わせることによって行います。

 

以下に、いくつかの設定例を紹介します。

 

 

■ビットデバイス「X0000」をビットとして解釈する

c_tag_0082
 

 

■ビットデバイス「X0000~X0015」を16ビット整数として解釈する
c_tag_0083

 

 

■ビットデバイス「X0004~X0019」を16ビット符号付き整数として解釈する
c_tag_0084

 

 

■ビットデバイス「X0004~X0015」の12ビットを3桁BCDとして解釈する

c_tag_0085
 

 

■ワードデバイス「D0000」を16ビット符号付き整数として解釈する

c_tag_0086
 

 

■ワードデバイス「D0000~D0001」を32ビット符号付き整数として解釈する

c_tag_0087
 
 

■ワードデバイス「D0000」の16ビット中、0ビット目をビットとして解釈する

c_tag_0088
 

 

■ワードデバイス「D0000」の16ビット中、3ビット目をビットとして解釈する。

c_tag_0089
 

 

■ワードデバイス「D0000」の16ビット中、4ビット目から7ビット分を整数として解釈する
c_tag_0090

 

 

上画像で示した例のとおり、デバイスの解釈は以下のルールに従って行われます。

 

アドレス
通信を行いたいデバイスの位置を指定します。ワードデバイスのような16ビット単位で表現されるアドレス体系でも、アドレスの末尾に「@1」などと指定することによって、ビット単位での指定も可能です。

 

サイズ
タグのサイズを決定します。「アドレス」で指定したデバイスの位置から、何ビット分を対象とするかを指定します。

 

タイプ
ビット列をどう解釈するかを決定します。同じビット列でも、バイナリとして取得するのか、BCDで取得するのか、あるいはアスキーで取得するのかによって値が異なります。

 

 

hint

ワードデバイスの場合、アドレスの末尾に「@」+1~15までの整数を指定することによって、何ビット目かを示すことができます。

同じようにバイトデバイスは「@」+1~7までの整数を指定することができます。