三菱PLC/シーケンサ

インデックスレジスタ(Z)の使い方 ラダーシーケンス

インデックスとは

インデックスと言われても、よくわからないと思います。

使い方を理解してから、利用できればいいですね。

通常のラダーシーケンスでは、あまり使うことはありませんが、

データーを扱うようになれば、とっても便利なデバイスです。

本来インデックスとは「索引」「見出し」などの意味をもつ言葉で、データベースに関わるシーンで用いられる際には、格納されたデータをより早く検索したり抽出できるように作られる索引データのことを言います。

なんとなくわかったようで分からないですね。

インデックスZが使えるデバイス数

Qシリーズのデバイス設定を見ると

インデックスZが使えるデバイス数は20となっています。

Z0 ~ Z19 までが使用できる点数です。

インデックスレジスタは Z というデバイスの中に数値を入れることができます。

そのZは係数みたいに使えます。

すなわち

10 × Z =??

Z=1 の場合は 10 となります。

Z=2 の場合は 20 となります。

このように Z は 数値を扱って瞬時に目的のデーターを抽出することができます。

沢山のデータ表の中から、順番に並んだパラメーターを条件付けで抽出することができるわけですね。

インデックスの使用例

例題として以下の表を見て下さい。

Z0 で Dレジスタ何番目かを指定しています。

指定していることが分かれば、

次に D5 のデータレジスタをどうするか?

MOV命令を使って

[ MOV D0Z0 D1000 ] とすれば

D5 のデータが D1000 に転送されます。

D1000 に転送された情報をタッチパネルに表示したり

計算のパラメーターとして使ったりできます。

または、

時間でZの数値をインクリメントしていけば、

一定時間毎のサンプリンでデータ収集が出来ますね。

インデックスレジスタによる装飾が可能なデバイス

ビット、ワードに幅広くインデックスの装飾が出来ます。

特殊なインデックスとしては、

Z0 と Z1 があります。

これは、タイマーとカウンターに関してインデックスが使用できます。

他の Z2 ~のインデックスは使用できませんので注意してください。

とは言っても

通常使いであれば、全て使用できるのであまり気にしないで使えます。

タイマーやカウンタに対してインデックスを使いそうなら

*****************
スポンサーリンク *****************

Z0,Z1 をさけて、Z2~使えばいいですね。

サンプル インデックスラダー回路

X0 ON で Z0に 1を書き込む

X1 ON で Z0に 2を書き込む

X2 ON で Z0に 3を書き込む

T0Z0 はZ0に 1 の時には T1 を

T0Z0 はZ0に 2 の時には T2 を

T0Z0 はZ0に 3 の時には T3 を

をそれぞれk20(2秒間)動作させます。

T5 に置き換えてれば T5,T6,T7 になり

k20 のところを D1000 にすれば指定した時間だけ処理できます。

たとえば、

X0,X1、X2 がONした時 それぞれの時間を変える場合

X0 ON で Z0に 1を書き込む

X1 ON で Z0に 2を書き込む

X2 ON で Z0に 3を書き込む

さらに

X0 ON で D1000に 20を書き込む

X1 ON で D1000に 30を書き込む

X2 ON で D1000に 40を書き込む

そうすると

X0 ON で Z0に 1を書き込み

X0 ON で D1000に 20を書き込むわけです。

X1,X2でも同様にすると

Z=1 で T5Z0 は T6 で D1000 が 20 となります。

Z=2 で T5Z0 は T7 で D1000 が 30 となります。

Z=3 で T5Z0 は T8 で D1000 が 40 となります。

D1000 についても インデックスレジスタが使えますね。

学習だと思って、自分でラダー回路を作ってみましょう。
今回作成したラダー回路です。