【上級編】キーエンスKV-X520 EtherCAT サーボSV3通信設定

ーーーーーーーーーーーーーーーーーーーーーーーーーーー
FA電気設計屋の技術倉庫は、下記、スポンサーの提供で記事を作成しております。

■ つよぽん@制御設計 https://x.com/kubisu_taka21

■ たけ@電気制御×FA起業 https://x.com/eletri_0309

■ 箱入り https://x.com/hakomussu
https://hakoden.jp/

■ ドラフター|東大阪機械制御 https://x.com/drafter_san 
東大阪機械制御 | 関西で制御設計を任せるなら東大阪機械制御

■ T.K https://x.com/Electricalggggg

ーーーーーーーーーーーーーーーーーーーーーーーーーーー

キーエンスPLC、最新機種のKV-X520が出たことにより、EtherCAT経由のSV3が登場しております。

性能が上がったのはもちろんですが、今までの通信方式メカトロリンクではなく、EtherCAT。

こちらには驚いた方も多いかと思います。

SV3を使用したというものをあまり見ていませんので、実際の現場に投入・置き換えされているところは少ないのが現状かと思います。

私なりに少し立ち上げに苦労しましたので、そちらをまとめました。

今回はキーエンスKV-X520 EtherCAT SV3通信設定について紹介します。

www.niwakafa.com

www.niwakafa.com

www.niwakafa.com



EtherCAT サーボSV3通信設定

初期設定

右クリックで開くを選択。

SV3をドラック&ドロップする。

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
注意点として、
① ネットワーク構成通りにハード(現実)も繋ぐ必要がある
② HUBもネットワーク構成の一部になる
③ 入出力は全て変数で登録する
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

サーボ設定

SV2同様、SV3はモーション設定、SV3設定で細かいサーボの設定が可能です。

プログラム

変数設定

基本的なパラメータは初期割付で変数が割り当たるようです。

特殊なパラメータが必要なようでしたら、自分で変数を追加する必要があります。

制御方式 ファンクションブロック・リレー設定

ユニット構成のKV-X520をクリックし、右側の指令方法でプログラム上でどのようにサーボを制御するか選択することができます。

・ファンクションブロック

キーエンスが提供しているファンクションブロックを使って、サーボ制御することが可能です。

「メリット」
① 基本的にはメーカー(国際規格準拠)が保証しているものですので、適切に使えば簡単に制御が可能。
② 内部処理を気にせず、どの軸に対しても同様のファンクションブロックで対応できる。

「デメリット」
① ファンクションブロックに準拠した使い方でないと機能しない。
② 内部処理がブラックBOXのため、どのような処理がされているかわからず、複雑な制御や特殊な制御をしたいときに邪魔になる。

・リレー

キーエンスが提供しているファンクションブロックを使用せず、既存のSV2と同様なリレーを用いてサーボを制御することができます。

「メリット」
① SV2と同様の処理を流用できる。
② 内部処理がブラックBOXでないため、自分なりの制御を思い存分に記述できる。

「デメリット」
① 基本的に動作しない場合、自分自身のプログラムに起因している。
② ファンクションブロックなら簡単な処理も、すべて自分自身でプログラムを作る必要がある。

リレー方式 参考

軸制御中、こちらの信号がオンしている時は軸が制御(動作中)になっていますので、制御不可です。

軸エラー中ではなく、動作可能状態でサーボオンしてください。

そうでない場合にサーボオンすると、基本的にエラーを吐くはずです。

サーボオンすると、サーボレディがオンします。

サーボレディがオンしない場合、
① 動力電源が入っていない。
② 設定したパラメータが間違っている。
③ 動作可能状態でサーボオンしなかった。

などが挙げられます。

Y5315:サーボオン します。

_MC_PointParam[K1].Point[K1].PositioningMode  軸1のポイント1のモードを設定。ビット13をオンすると速度制御モードへ。

_MC_PointParam[K1].Point[K1].TargetPos  軸1のポイント1の目標位置を設定。TO_LREALで、32ビット符号付を浮動小数へ変換。浮動小数として格納。

_MC_AxisCtrl[K1].PointNo  軸1の動作させるポイントNo.を設定。今回はポイント1にしたいので、1を格納。

Y5300  軸1 位置決め制御開始をオンすると動作開始。

_MC_PointParam[K1].Point[K1].TargetVel  速度を設定。浮動小数扱い。

_MC_PointParam[K1].Point[K1].Acceleration / _MC_PointParam[K1].Point[K1].Deceleration  加速・減速時間を設定。

Axis_1_ピッチ出しCV1.Status.MechanicalPos  現在位置の情報が浮動小数として格納されいているため、浮動小数から、LREAL_TO_DINTで32ビット符号付へ変換。

まとめ

・SV3の変数は浮動小数も多いため、扱いには注意すること。
・リレー方式にすれば、SV2同様に制御することが可能。
・変数の取り扱いは必須。



www.niwakafa.com
www.niwakafa.com

www.niwakafa.com