スポンサーリンク
ラダープログラムを作成後、実機の動作確認前に事前に確認して完成度を上げたい場合はどうしたらいいでしょうか。
実は、机上シミュレーションによる動作確認を行うことでプログラムの完成度を高めることができます。
なぜなら、最近のアプリケーションはシミュレータ機能が良くなっていますので、シミュレーションすることでプログラムミスを発見したりすることが可能だからです。
このページでは、ラダープログラム作成後の机上シミュレーションの方法についてご紹介しています。
このページを読み終えれば、あなたも完成度の高いプログラムを現場に持ち込んで客先からの信頼度アップを勝ち取れますね。
客先からの評価は社内にも伝わって、給料アップも期待できます。
※三菱電機製PLC「Qシリーズ」及びGX-Works2、GT-Designer3の使用を前提として説明します。
※アプリケーションについて
GX-Works2:ラダー作成アプリケーション
GT-Designer3:タッチパネル作画アプリケーション
目次(概要)
スポンサーリンク
1.GX-Works2のみ使用の場合(シミュレータのみ使用)
GX-Works2にはシミュレータ機能がありますよね。
シミュレータ機能を使用して入力信号を模擬することができます。
入力デバイスやその他デバイスを強制ONさせて確認することも可能です。
レジスタに数値を仮入力して確認もできます
ONさせるには、カーソルをONさせたいデバイスに合わせて Shift + Enter で状態を反転させることが出来ます。
(OFF→ON、ON→OFF)
また、ウォッチリストに監視したいデバイスと模擬入力したいデバイスを登録することで、ウォッチリスト内でデバイスをONさせて、その時の監視デバイスがどのようになるかを簡単に見れますよ。
自動制御の複雑な動きを見るのは面倒ですが、手動操作回路などの簡単な制御であれば、ウォッチリストで十分確認することができます。
2.GX-Works2のみ使用の場合(シミュレータ使用+模擬プログラム)
GX-Works2のシミュレータ機能のみでの確認では簡単な回路は確認できます。
しかし、複雑な自動制御プログラムなどは確認することが難しいです。
シミュレータ機能のみでの確認が困難な場合には、模擬プログラムを作成して確認していきましょう。
少々時間はかかりますが、作成した方が確実性が増すのは確かです。
例えば、開閉する機器があったとして、開出力、閉出力がそれぞれあります。
正常動作した場合、以下の動作をすると仮定します。
・開出力して10秒ほどすると開リミットスイッチの入力がON
・閉出力した際も同様に10秒程度で閉リミットスイッチの入力がON
この時、開出力がONして内部タイマで10秒カウントし、内部タイマがONしたら入力信号をONさせるプログラムを作成します。
同様に閉側も作成してプログラムで開出力をONさせれば、10秒で開リミットスイッチの入力信号がONします。
確認に必要な信号は主に入力信号です。
模擬プログラムであれば入力信号をONさせることができますので、確認することが可能になります。
ただし、この方法は以下の注意点があります。
・実際には(実機では)使用しないプログラムを作成する時間が必要
・そのプログラムが本来のプログラムの邪魔をしないように作成が必要
・最後に模擬プログラムを消す必要があるが、消し忘れる恐れがある
本来のプログラムを邪魔しないように、そして、もし模擬プログラムを消し忘れても問題がないように作成する対策が必要になってきます。
私の場合はデバッグ用のデバイスを用意して、そのデバイスがONの時は模擬プログラムが作動するように作成しています。
万が一、模擬プログラムを消し忘れてもデバッグ用のデバイスがOFFならば本来のプログラムの邪魔にならないようにしておけば、プログラムを見ない限りは模擬プログラムの存在は分かりません。
対策をしながらプログラムを作成するのは時間と手間がかかることは覚悟が必要です。
しかし、規模が大きいプログラムほど、実施した効果は感じられます。
スポンサーリンク
3.GX-Works2とGT-Designer3を使用の場合
模擬プログラムを作成するのは時間がかかり、さらに流用がききません。
そこで流用可能な方法はないか考えました。
タッチパネルの作画アプリケーションのシミュレータ機能とラダープログラム作成アプリケーションのシミュレータ機能をリンクさせて確認する方法です。
まず、タッチパネルでランプとスイッチがたくさん並んだ画面を作画します。
画面には先頭アドレスを数値(16進)入力できるオブジェクトを入力側、出力側でそれぞれ用意します。
各スイッチとランプのアドレス設定は内部リレーデバイスを連番で設定します。
GT-Designer3であれば、連続複製の機能でアドレス+1で等間隔にオブジェクトをコピーれば短時間で作画することが可能です。
この時、スイッチは反転設定にすることをお勧めします。
次に模擬プログラムを作成するのですが、以下の順序で作成します。
・数値入力された16進数のデータをインデックス(Z)に転送する命令を作成
・連番の内部リレーデバイスを入力信号へ転送する命令を作成
・出力信号を連番の内部リレーデバイスに転送する命令を作成
入力側のインデックスをZ0、出力側のインデックスをZ1とした場合、以下のように転送命令を作成しておけば、模擬プログラムの完成です。
[BMOV M1000 X0Z0 K*] [BMOV Y0Z1 M2000 K*] *には任意の数値を入力します。どのように動作させるかといいますと、まずはGX-Works2のシミュレータを起動。
その後にGT-Designer3の接続先をGX-Works2のシミュレータに設定してからシミュレータを起動します。
画面には先ほど作画したスイッチとランプが並んでいると思います。
スイッチを押すと、内部リレーデバイスがONして、その情報は入力デバイスへ転送されます。
出力デバイスがONすると、内部リレーデバイスに転送されてランプが点灯します。
シミュレータ用プログラムを作成しておくと、少しの模擬プログラムでシミュレーションが可能になります。
リミットスイッチが10秒後にONするようなプログラムはないので、マウスで作画した画面の入力信号用スイッチをクリックする必要はあります。
しかし、模擬プログラム作成の手間を省くのであればこのようなやり方もあります。
4.さいごに
机上で確認できることは机上で確認しておいた方が良いのは言うまでもありません。
わざわざスイッチやランプを用意しなくとも、シミュレータ機能のみで机上確認は十分にできます。
3番目に挙げたやり方は、作画したデータも作成したプログラムも流用可能ですのでお勧めです。
工夫しながら確実性を上げて品質のよいプログラムを提供しましょう。
以下も参考にしてみてください。