どうも、もももです!
KV STUDIOでマクロの使用方法について紹介します。
マクロとは
ラダー中で何度も繰り返して使用する回路に任意の名前を付けて登録したものをマクロと呼びます。
同じ処理をマクロ化することによりラダーの入力工数の削減できたり、回路変更時にはマクロとして登録した1カ所のデータを修正するだけで済むのでラダーの変更工数が削減でき、修正ミスも防げます。
マクロには「サブルーチン型マクロ」と「自己保持型マクロ」があります。
・サブルーチン型マクロ
⇒実行条件がONの場合のみ実行される。
・自己保持型マクロ
⇒一旦実行を開始すると、マクロ実行停止命令(MEND)が実行されるまで、実行条件の状態にかかわらず動作を続ける。
マクロの類似機能でファンクションブロックがありますが、ファンクションブロックはマクロの上位互換機能になります。KV-8000などでは「ファンクションブロック」の使用が推奨されています。
ファンクションブロックの使用方法については以下で紹介しています。
前提条件
本稿は以下環境を元に作成します。
- KV STUDIO:Ver11
- 使用機種:KV-NC32
引数で指定したデバイスと定数の加算処理を行うサブルーチン型マクロを作成し、シミュレータで動作確認を行います。
設定手順
以下にマクロ作成~作成したマクロを呼出す手順をまとめます。
マクロ作成
「プロジェクト」の「マクロ」→「サブルーチン型マクロ」を右クリックし「新規作成」を選択します。
「プログラム新規作成」画面が表示されるので、プログラム名を「INCREMENT」とし「OK」ボタンを押下します。
「OK」ボタン押下後は「マクロの引数設定」画面が表示されるので引数の設定を行います。
引数設定
引数は上図の様に設定しました。
P0は加算前後データの格納デバイス、V0は加算する定数でどちらも「1ワード符号なし整数」としました。
引数や引数のデータ種類は用途に合わせて設定して下さい。
- P:デバイス⇒デバイスを引数として受け取る。
- V:値⇒デバイスの値または定数を引数として受け取る。
- UR/UM/UV:拡張ユニット情報⇒今回は割愛します。
また、「マクロの引数設定」画面は「プロジェクト」の「マクロ」から該当のマクロを右クリックして表示することもできます。
マクロに処理を記述
引数P0とV0を加算した結果をP0に格納する簡単なラダー回路を記述しました。
作成したマクロを呼出
マクロの呼出しは「命令/マクロ/バックパレット」画面から行います。(挿入予定セルをダブルクリック)
「マクロ」タブを選択し、一覧から呼出したいマクロを選択、引数を指定します。
「MR000」のON立上りで「DM0」に「1」を加算するマクロを呼出すようにしました。
動作確認
上図はシミュレータを起動して「MR000」をONした結果になります。
「MR000」のONで「DM0」の値が「0」から「1」に変化することを確認できました。
また、画像は準備していませんが、「MR000」のON/OFFを繰り返すことで「DM0」の値が「1」ずつ増加していきます。
まとめ
KV STUDIOでマクロの使用方法についてまとめました。
ラダー中で何度も繰り返して使用する回路をマクロ化することで、処理の記述箇所を1カ所にまとめることができ、回路変更時の修正漏れなども防ぐことができます。
ある程度共通化できる処理はマクロ(ファンクションブロック)化していった方が保守性の高いプログラムになるのではないでしょうか。
コメント