プログラムからの
Mover制御(演習)
XTS | 状態遷移
本演習は2つのパートに分かれています。
パート1:Moverの衝突防止グループへ追加しサーボオンを自動的に行います。
パート2:実際に衝突防止のFbを使用してMoverを制御します。
パート1 :衝突防止有効
パート1
遷移条件は右のようになります。
衝突防止が有効化出来た後、待機状態へ移行します。
「Moduleが正常か確認」:このステートではUtilityを使用してMover、モーターモジュールが正常認識されているか確認します。次のスライドにヒントもあります。
XTS初期機材チェックヒント
Utilityを使ってMoverやモーターモジュール(コンフィグ上+実際)の個数が取得可能です。
以下サンプルコードではMoverとモーターモジュール数が実機とコンフィグ上で差異がないなどの条件文でチェックを行っています。
※GetDetectedMoverCountメソッドは全Mover検出に際して時間を要するため、XTSタスクのサイクルタイム超過が発生します。ですので、実機稼働中(生産中など)での使用は推奨しません。
XTS PLC StartUp Delay
Utilityで取得したパラメーターは“Parameter (Online)”画面でも確認することが出来ます。
例:
AreAllPositionsValid
DetectionCycleCount
DetectedMoverCount
ExpectedMoverCount
ScannedModuleCount
パート2 :Mover制御演習
パート2
運転条件は以下になります。
条件:
Moverが運転する際にはbStartなどのコマンドBitがTrueになった時に運転開始します。
エラー処理や停止などは実装無しです。
運転パターン:
運転開始時全MoverはA地点へ一斉に向かいます。
速度 :500mm/s
加減速 : 5000mm/s^2
A地点についたMoverからB地点へ向かいます。
速度 :1000mm/s
加減速 :5000mm/s^2
B地点についたMoverからA地点へ向かいます。
速度 :15000mm/s
加減速 : 10000mm/s^2
A->B->A->B…と連続的にループします。
ゼロ点とAとB地点の位置は以下のような仕様です。
余裕があれば、以下の仕様も追加します。
運転条件+仕様
停止コマンドの追加
原点復帰コマンドの追加
停止後、原点復帰が可能です。
全Mover地点Aへと向かいます。
再開コマンドの追加
原点復帰後、全頭のMoverからA->B->A…の連続運転を再開します。