2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

キーエンス KVシリーズのスクリプトについて

Last updated at Posted at 2022-08-13

キーエンス KVシリーズではラダー以外にもKVスクリプトでの記述が可能です。
ということで学習のついでに学んだことを書いています。
どうもKVスクリプトはVB風の書き方をベースにしてるようです。(KVスクリプト大辞典より)

参考マニュアル
KV-8000/7000/5000/3000/1000/KV Nanoシリーズ スクリプトプログラミングマニュアル
KVスクリプト大辞典

演算子

演算子
算術演算子
^ , ∗ , / , MOD , + , -

比較演算子
< , <= , > , >= , = , <>

文字列連結
+ または &

論理演算子
NOT , AND , OR , XOR

代入文

代入文
DM0 = 10	'数値代入
R501=TRUE	'ビット代入(0,OFF,FALSE,1,ON,TRUEが使用可能)
DM1 = DM0	'デバイス代入(ワード)
R500 = R0	'デバイス代入(ビット)
DM10.T = "STRING"	'文字列代入

条件分岐文

IF文
IF DM0=1 THEN  
		DM1=1
	ELSE IF DM0=2 THEN  
		DM1=2
	ELSE  
		DM1=3
END IF
SELECT文
SELECT CASE DM0  
	CASE 1  
		DM1=1
	CASE 2 
		DM1=2
	CASE ELSE  
		DM1=3  
END SELECT
MC文
MC DM0=0 THEN  
      MR0=1
MCR

繰り返し制御文

FOR文
'DM10,11を10になるまでまでループ
FOR DM10=0 TO 9 STEP 1  
    DM11=DM11+1
NEXT
WHILE文
'DM12を10になるまでまでループ
WHILE DM12<10  
    DM12=DM12+1
END WHILE
DO文
'DM13を10になるまでまでループ
DO  
    DM13=DM13+1
UNTIL DM13>9

FOR文、WHILE文、DO文はBREAKで繰り返し制御から抜けることができます。

こうやってみるとラダーより分かりやすいのですが、内部ではラダーに変換され実行されます。
変換するとスクリプト横に[+]/[-]の記号が表示されます。押すとラダーに変換された回路を見ることができます。
GX Works2のST文もそうですがこれだけ短くても長いラダーが生成されます。
image.png

サフィックス

□.U 16ビット符号無し(0~65535)
□.S 16ビット符号付き(-32768~32767)
□.D 32ビット符号無し(0~4294967295)
□.L 32ビット符号付き(-2147483648~2147483647)
□.F 単精度浮動小数点型実数
□.DF 倍精度浮動小数点型実数
□.B ビット型
□.T 文字列型

サフィックスを省略した場合の動作
ビットデバイス : □.B ビット型
ワードデバイス : □.U 16ビット符号無し
Zデバイス : □.L 32ビット符号付き
CTH : □.D 32ビット符号無し

このためDM0 = DM12 + DM14 のように書くとすべて16ビット符号無しとして変換されます。
60000+60000を行うと120000にはならず54464という値になりエラーにもなりません。
サフィックスを省略しないように書くクセと値が大きくなる可能性がある場合は32ビットデバイスを使うように考えないといけません。

image.png

オプション

[ツール]→[オプション]のST/スクリプト設定タブで色々設定可能です
image.png

改行,行番号表示だとこのようになります。
image.png

ワークメモリ

演算途中のデータはスクリプトでしか使用できないワークメモリに置かれます
image.png

スクリプトでは、インデックスレジスタ以外でもインデックス修飾が可能

Z11,Z12が使用禁止なのはスクリプト内で使われるからのようです。
image.png

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?