SEL言語はIAI独自の言語なので、初見だと戸惑う人も多いのではないでしょうか。
XSELやRSELで流用することが可能です。全9部構成で、このページではメインプログラムの例について解説します。
- メイン( PRG1 )
- オーバーライド( PRG60 )
- 速度初期化( PRG61 )
- フラグ初期化( PRG62 )
- 異常停止( PRG127 )
- 搬入( PRG21 )
- 搬出( PRG22 )
- サイクル停止( PRG91 )
- 原点復帰( PRG50 )
メインプログラムの例
まず異常停止プログラムを起動した後、速度やフラグを初期化します。次にPLCから取得したサイクルNoのプログラムを起動し、サイクル停止信号がONするまでプログラムをループさせます。サイクル停止信号がONしたらループを抜けてサイクル停止します。
拡張条件 E | 入力条件 N | 入力条件 Cnd | 命令 Cmnd | 操作1 Operand1 | 操作2 Operand2 | 出力部 Pst | コメント Comment |
*PRO1 | |||||||
BTON | 310 | PRG起動中(XSEL→PLC) | |||||
*異常停止 | |||||||
N | 7727 | EXPG | 127 | 異常停止PRG起動 | |||
*初期設定 | |||||||
EXPG | 60 | オーバーライドPRG起動 | |||||
WTON | 600 | オーバーライド完了 | |||||
EXPG | 61 | 速度初期化PRG起動 | |||||
WTON | 601 | 速度初期化完了 | |||||
EXPG | 62 | フラグ初期化 | |||||
WTON | 602 | フラグ初期化完了 | |||||
BTOF | 600 | 602 | 初期化フラグOFF | ||||
*ループ | |||||||
TAG | 80 | ||||||
16 | GOTO | 81 | サイクル停止信号取得 (PLC→XSEL) | ||||
*動作サイクル | |||||||
No取得 | IN | 66 | 70 | 動作サイクルNo取込 (PLC→XSEL) | |||
LET | 280 | *99 | サイクルNoを記憶 | ||||
OUT | 366 | 370 | 動作中サイクルNo送信 (XSEL→PLC) | ||||
CPEQ | 280 | 0 | 821 | サイクルNo範囲外 | |||
CPGT | 280 | 16 | 821 | サイクルNo範囲外 | |||
821 | BTON | 311 | サイクルNo範囲外異常 | ||||
821 | GOTO | 80 | |||||
GOTO | *280 | ||||||
*サイクル | |||||||
No1起動 | TAG | 1 | |||||
EXPG | 21 | サイクルNo1 搬入PRG起動 | |||||
WTON | 621 | サイクルNo1完了 | |||||
BTOF | 621 | サイクルNo1完了OFF | |||||
GOTO | 80 | ||||||
*サイクル | |||||||
No2起動 | TAG | 2 | |||||
EXPG | 22 | サイクルNo2 搬出PRG起動 | |||||
WTON | 622 | サイクルNo2完了 | |||||
BTOF | 622 | サイクルNo2完了OFF | |||||
GOTO | 80 | ||||||
*サイクル | TAG | 81 | |||||
停止PRG起動 | EXPG | 91 | サイクル停止PRG起動 | ||||
WTON | 699 | サイクル停止完了 | |||||
BTOF | 699 | サイクル停止完了OFF | |||||
*終了処理 | ABPG | 127 | 異常停止PRG終了 | ||||
BTOF | 310 | PRG起動中OFF (XSEL→PLC) | |||||
EXIT | プログラム終了 |
※プログラムの動作は保障できません。流用は自己責任でお願いします。