【上級編】PLC(シーケンサ)によるGX Works2&MT Developer2&GT Designer3の連携シミュレーション方法 -モーションコントローラサーボ制御-

f:id:vv_6ong_3ka_cp:20190116061429j:plain

今回の目的としてはMT Developer2の使用方法を学ぶことにあります。

学ぶためには実際どのようにプログラムが動いているのか、サーボモータの指令がどのようになっているかを確かめる(動作を知る)必要があります。

様々なシミュレーション方法がありますが、GX Works2とMT Developer2でシミュレーションを行うためにはGT Designer3を中継するしかないという結論になりました。

GX Works2とMT Developer2とGT Designer3の連携シミュレーション方法を紹介します。


【目次】

広告


GX Works2とMT Developer2だけでシミュレーションできないのか?

GX Works2とMT Developer2のシミュレーション方法は一つあります。

それはMELSOFT Navigatorと呼ばれるMELSOFT iQ Worksの中で上流設計およびツール間の連携を行うためのツールで行う連携シミュレーション方法です。

この方法であればGX Works2とMT Developer2との間で行われるインターフェース信号のやりとりを行うことができ、入出力信号の確認ができます。

ただし、GX Works2のシミュレーション時間が100msecと制約が原因なのか、MT Developer2によるサーボモータの動作シミュレーションができないという状態が発生してしまいました。

ということで、MT Developer2で作成したプログラムがGX Works2と通信して、正常にサーボモータが動作するかという確認ができません

今回の目的であるMT Developer2の使い方を知るというのには不適切でした。

インターフェースだけの確認でもよい場合のために、今後MELSOFT Navigatorについても記事にしていきたいと思います。

GT Designer3の使用目的について

今回使用するGT Designer3はタッチパネルでオペレーターのインターフェースとなることはもちろんのこと、GX Works2とMT Developer2とのインターフェースを中継するという役割も兼ねております。

シミュレーションモードにおいて、GT Designer3はGX Works2とMT Developer2を立ち上げていなければならないという制約があり、GT Designer3はGX Works2とMT Developer2の状態をモニタすることが可能です。

つまり、GX Works2とMT Developer2はGT Designer3を介して通信できるということです。

ここで、GT Designer3でGX Works2とMT Developer2を中継しようとすると、多少テクニックが必要となります。

そのテクニックというのがGT Designer3によるスクリプト機能です。

www.niwakafa.com

スクリプト機能を使えないと、GX Works2とMT Developer2の連携シミュレーションはできないと考えて下さい。

大したプログラムは組みませんので、スクリプト言語も参考にして頂ければと思います。

タッチパネル作成

f:id:vv_6ong_3ka_cp:20190116123418j:plain

タッチパネルは上記のように作成しました。

デバイスを表示しましたが、このような表示がないと正確に通信しているかわかりませんので必ず用意するようにして下さい。

スクリプト機能

f:id:vv_6ong_3ka_cp:20190116123451j:plain

f:id:vv_6ong_3ka_cp:20190116123517j:plain

f:id:vv_6ong_3ka_cp:20190116123529j:plain

f:id:vv_6ong_3ka_cp:20190116123542j:plain

f:id:vv_6ong_3ka_cp:20190116123602j:plain


GX Works2プログラム作成

f:id:vv_6ong_3ka_cp:20190121070238p:plain

f:id:vv_6ong_3ka_cp:20190121070253p:plain

f:id:vv_6ong_3ka_cp:20190121070312p:plain

f:id:vv_6ong_3ka_cp:20190121070330p:plain

f:id:vv_6ong_3ka_cp:20190121070349p:plain

f:id:vv_6ong_3ka_cp:20190121070404p:plain

f:id:vv_6ong_3ka_cp:20190121070422p:plain

f:id:vv_6ong_3ka_cp:20190121070447p:plain

MT Developer2プログラム作成

自動リフレッシュ

f:id:vv_6ong_3ka_cp:20190116062920j:plain

今回はGOTが信号を中継するので必要ないかもしれません。

サーボデータ設定

f:id:vv_6ong_3ka_cp:20190116063022j:plain

パラメータブロック

f:id:vv_6ong_3ka_cp:20190116063050j:plain

リミット出力

f:id:vv_6ong_3ka_cp:20190116063108j:plain

サーボプログラム

f:id:vv_6ong_3ka_cp:20190116063143j:plain


SFCプログラム

f:id:vv_6ong_3ka_cp:20190116063720g:plain

f:id:vv_6ong_3ka_cp:20190116061511j:plain

原点復帰回路

f:id:vv_6ong_3ka_cp:20190116063123j:plain

JOG回路

f:id:vv_6ong_3ka_cp:20190116063250g:plain

STEP回路

f:id:vv_6ong_3ka_cp:20190116063510g:plain


シミュレーション結果

JOG動作

f:id:vv_6ong_3ka_cp:20190105221947g:plain

f:id:vv_6ong_3ka_cp:20190105221649g:plain

ステップ動作

f:id:vv_6ong_3ka_cp:20190105220942g:plain

f:id:vv_6ong_3ka_cp:20190105221830g:plain

2軸補間動作

f:id:vv_6ong_3ka_cp:20190105221437g:plain

スクリプト処理による描画処理の高速化

f:id:vv_6ong_3ka_cp:20190105221133g:plain

サーボモータの現在位置をMT Developer2→GOT→PLC→GOTで処理していましたが、それをMT Developer2→GOTとスクリプト機能を利用して短くしました。

さきほどとは見違えるほどスムーズに描画できていると思います。

終わりに

サーボモータ制御は実機がないとなかなか行うことができないものです。

しかし、このようにシミュレーションを行うことができるとすれば、自分の作ったプログラムが正常かどうか判断することができます。

また、実際に動作させていますので実機での試運転時間を短縮することもできます。

私もMT Developer2は講習会に行った程度でほぼ分からない状態からはじめております。

これからMT Developer2を使うというかたは頑張ってみてください。

広告


www.niwakafa.com

www.niwakafa.com

www.niwakafa.com