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?

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

Last updated at Posted at 2022-08-13

はじめに

KVスクリプトとは

キーエンス KVシリーズではラダー以外にもKVスクリプトでの記述が可能です。
ということで学習のついでに学んだことを書いています。

どうもKVスクリプトVB風の書き方をベースにしてるようです。(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文
IF DM0=1 THEN  
		DM1=1
	ELSE IF DM0=2 THEN  
		DM1=2
	ELSE  
		DM1=3
END IF

SELECT文

SELECT文
SELECT CASE DM0  
	CASE 1  
		DM1=1
	CASE 2 
		DM1=2
	CASE ELSE  
		DM1=3  
END SELECT

MC文

MC文
MC DM0=0 THEN  
      MR0=1
MCR

繰り返し制御文

FOR文

FOR文
'DM10,11を10になるまでまでループ
FOR DM10=0 TO 9 STEP 1  
    DM11=DM11+1
NEXT

WHILE文

WHILE文
'DM12を10になるまでまでループ
WHILE DM12<10  
    DM12=DM12+1
END WHILE

DO文

DO文
'DM13を10になるまでまでループ
DO  
    DM13=DM13+1
UNTIL DM13>9

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

こうやってみるとラダーより分かりやすいのですが、内部ではラダーに変換され実行されます。
変換するとスクリプト横に**[+]/[-]**の記号が表示されます。押すとラダーに変換された回路を見ることができます。

GX Works2ST文もそうですがこれだけ短くても長いラダーが生成されます。

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?