
ラダー インデックスレジスタ Z
ラダープログラム内でデバイスの後にZ〇と付いているときがある。
これはインデックスと呼ばれ、プログラム内で数値を格納することが出来る。そこでこのインデックスを使用して簡単なラダーを書いてみた。



これは電卓のラダープログラムを書いた一部となっている。
0~9のボタンがONすればM8000がONする。
M8000がONする毎にD30をカウントさせる。
ここで Z の役割を説明すると、
MOV D30 Z0 の命令でD30のカウントをZ0に格納する。
そうすれば、この命令以降ラダー内にあるのD30Z0のデバイスが変化していくことになる。
例えば、はじめにボタン3を押したとする。
D30のカウントが1になる
D30の数値をZ0に格納し、Z0=1となる
この時点でD30Z0がD31を表すことになる。
ボタン3が押されているので、MOV k3 D30Z0(D31)
D31に3が格納される、一桁目が3となる。
次にボタン5を押した。
D30のカウントが2になる
D30の数値をZ0に格納し、Z0=2となる
D30Z0がD32を表す
ボタン5が押されているので、MOV k5 D30Z0(D32)
D32に5が格納され、二桁目が5となる。
一桁目、二桁目と増えていくと一の位、十の位と上がっていくがここからの表示方法や計算方法ほさらにラダーの工夫が必要になるが、インデックスについてはこのような使い方になる。自分自身まだ実際に使いこなせるかと言われれば不安が残る。今後より知識を深めていきたい。