GX WORKS2を使用してシリンダセンサ間の時間測定を行う際、測定後のデータ保持方法や、測定後の値のリセットに関する問題が生じることがあります。この問題は特に、タッチパネルに表示されたデータがリセットされてしまうことに関連しています。この記事では、あなたの質問にある問題の原因とその解決方法について解説します。
問題の概要と設定方法
あなたが述べた問題は、1回目の測定データを「前回測定データ」として保持し、2回目にそのデータを表示させたいという要望に関するものです。通常、測定したデータをPLC内のDレジスタに格納してタッチパネルに表示するのですが、1回目に測定したデータをリセット(0に設定)すると、前回データが0になってしまうという問題が発生します。
解決策1:データの保持方法を変更する
問題の解決方法として、1回目の測定データを一時的に保存し、リセット時にそのデータが失われないようにする方法があります。具体的には、1回目の測定データを一時的に他のDレジスタに格納して、2回目の測定データを取得する際にそのDレジスタから値を取り出す方法です。これにより、リセット時に前回データが0にならず、タッチパネルに正しいデータが表示されるようになります。
解決策2:MOV命令の使い方の改善
また、MOV命令を使用して1回目の測定データを前回表示用に移す操作についてですが、MOV命令を使用する際、リセットを行うタイミングで前回データが0になる問題を避けるためには、別のDレジスタを一時的に使用する方法も有効です。前回測定用のレジスタを保持するために、MOV命令で移す対象のレジスタを別のメモリ領域に設定して、リセットをかけてもそのデータが影響を受けないようにすることができます。
解決策3:システム全体の動作確認とデバッグ
このような問題を回避するためには、システム全体の動作確認を行い、データの流れをしっかりとデバッグすることが大切です。PLCの動作や命令が正しく動作しているか、シリンダセンサの測定値が正しく取得されているかをチェックすることが、問題解決への近道です。システムの動作をトレースして、タイマーやMOV命令が想定通りに動作しているかを確認することが重要です。
まとめ
GX WORKS2でのシリンダセンサの時間測定におけるデータ保持問題は、MOV命令の使い方やデータ格納方法を工夫することで解決できます。リセット時に前回データが失われないようにするためには、測定データを一時的に保存する方法や、別のレジスタに格納しておく方法を検討することが有効です。適切な設定と動作確認を行い、システムが正しく動作するように調整してください。


コメント