どうも、もももです。
今回はKVスクリプトを用いてラダーで記述されている演算処理を簡略化する方法を紹介したいと思います。
前提条件
本稿は以下環境を元に作成します。
- KV STUDIO:Ver11
- 使用機種(PLC):KV-8000
KVスクリプトとは
KVスクリプトとは、従来ラダー言語では記述しにくかった
- 演算処理
- 文字列処理
などを簡単に記述することを目的に開発された言語です。
ラダー言語に混在して記述することが可能です。
上図は四則演算のラダー記述をKVスクリプトに置き換えた例になります。
4行で記述されていた処理を1行にまとめることが出来ました。
演算内容についても一目見て何をしているか分かり易いし、PCのプログラミング言語を扱っていた筆者としては理解しやすいです。
簡単な四則演算の例を示しましたが、これが複雑な演算になってくるとラダー記述だとより複雑になりり、KVスクリプトだとシンプルに記述することができます。
KVスクリプトの種類
KVスクリプトには2種類の記述方法があります。
エリアスクリプト
エリアスクリプトはラダーの実行条件を持たない、毎スキャン実行型のスクリプトです。
≒常時ONのボックススクリプト
ボックススクリプト
ボックススクリプトは実行条件をラダーで記述できるスクリプトです。
上図は「CR2002」の接点を接続していますが、任意の条件の接点を指定することができます。
接点がONの間のみスクリプトが実行されます。
記述ルール
ラダーで記述される一連の制御を、BASIC言語に近いプログラミング形式で記述できます。
スクリプトは
- 代入文
- 条件分岐制御文
- 繰り返し制御文
などから構成されていますが、演算処理の記述を簡略化に必要のない「条件分岐制御文」と「繰り返し制御文」については説明を割愛します。
代入文は値を格納したいデバイスを「=」の左辺に、格納したい演算内容を右辺に記述します。
右辺には上記の他にも
- 数値 (例:DM0 = 1)
- 文字列 (「”」で囲む / 例:DM0 = “サンプル”)
- ビット (例:R0 = R1)
などが記述できます。
また、余談ですが「’」以降はコメント文字列として扱われ制御に影響しません。
使用方法
スクリプトの追加(右クリック)
追加したい行を右クリックし、「ST/スクリプト編集」→「エリアスクリプト挿入」または「ボックススクリプト挿入」をクリックします。
スクリプトの追加(ショートカット)
追加したい行にカーソルを移動して
- 「Ctrl+R」キーを押下(エリアスクリプト挿入)
- 「Ctrl+B」キーを押下(ボックススクリプト挿入)
スクリプトの入力
エリアスクリプト/ボックススクリプトが挿入されるのでスクリプトの内容を記述し、「Ctrl」+「Enter」キー押下またはスクリプト枠外をクリック等して確定させます。(上図はエリアスクリプト)
ボックススクリプトの場合はこの後に条件となる接点を接続して下さい。
スクリプトの内容に記述ルールの誤り等、エラーがあった場合は「変換」時に変換失敗になります。
上図は「DM14」を「DaM14」としてしまい、存在しないデバイスを指定した際のエラーです。
まとめ
KVスクリプトの概要とKVスクリプトを用いてラダーで記述されている演算処理を簡略化する方法についてまとめました。
KVスクリプトを用いることで複雑になっているラダーの演算記述をスッキリ見やすく、可読性を上げることが出来てオススメです。
まだ使ったことが無い方は是非お試しください!
コメント