ラダープログラムのコツ その1 センサはチャタリングタイマを設けよう 

シーケンス制御

ラダープログラムのコツ その1  センサはチャタリングタイマを設けよう

猿吉です。

今回はラダープログラムを実際に書いていき、解説していきたいと思います。

基本的な考え方を何回かに分けて解説していきたいと思います。

今回はタイトル通り、センサの入力信号はチャタリングタイマを使って取り込むわけです。

そもそもチャタリングとは、、、

信号のレベル(ON/OFF)が安定せず、信号の状態が不安定なことを表します。

スイッチを例に挙げると、スイッチを押すとスイッチがONの状態が安定するまで、ON/OFFが繰り返されている状態のことです。

PLCは電圧を0〜24Vで信号として取り込んでいますが、このチャタリングによって信号の状態が不安定なまま取り込んでしまう可能性があるわけです。

つまり、何が言いたいかと、

必要なタイミングで信号を拾えず、誤動作する可能性がある

正しいシーケンスを組んでいるはずなのに、おかしい動きをする。

一種のバグを生みやすいというわけです。

実際にラダープログラムを書いていきましょう。

ラダープログラムを作成するソフトウェアは三菱のGX-Works3を使用しています。

実際にプログラムを作成

上記のようなラダープログラムを書いてみました。

何をしているか解説していきます。

プログラムの解説① タイマ値設定

①の処理は、タイマ値を設定しています。今回は0.2sを設定しています。タイマ値は直接定数でも入力することができますが、定数ではなくDのようなレジスタを使用することで、プログラムを効率的に作成することができます。

今回はセンサ一個だけなので直接定数を入力してもいいですが、センサが複数個存在する場合各センサのタイマ値を定数で設定することは適切とはいえません。

定数を入力した場合とデバイスを使用した場合では、タイマ値を変更したい時の修正箇所が明らかにデバイスを使用した場合の方が少ないですよね。

プログラムを作成する際は、できるだけ変更箇所が少ないように設計しましょう。

プログラムの解説② センサ処理

②は入力信号X0がONしてD0秒後T0で出力し、入力信号X0がOFFしてD1秒後T100で出力しています。

T0のa接点とT100のb接点を条件にしX1000を出力しています。

要するにやりたい事としては、入力信号のタイマ後を別のデバイスに置き換えているということです。実際にシーケンスで使用するのは、X1000を使って自動運転などの回路を作成していくわけです。ここでは、内部デバイスMを使用していないのは、入力信号のイメージがXなので可読性を高める為に敢えてXにしています。

まとめ

いかがでしょうか。

今回はセンサのチャタリング防止回路について解説していきましたが、即実践できる内容かと思います。

プログラムは人それぞれ作り方が違いますので、正解のプログラムの作り方はいくらでもあります。今回私が作成したプログラムもあくまで一例です。

ただしこれから作成する上で注意していただきたいのは、可読性や判読性のあるプログラムを作成するように心がけるということです。自分だけしかわからないようなプログラムを作成するのはNGです。

ではでは。

コメント

タイトルとURLをコピーしました