ラダーを書いてて躓いた点。気を付けなくちゃだな。
以下適当にまとめておく。
前提条件
- 例えば出力Y10がランプ点灯用接点だとして,そのランプを点灯させる条件が複数あったとする。
- 条件1:スイッチX00を押している時 → ランプY10点灯
- 条件2:スイッチX01を押している時 → ランプY10点灯
二重コイルで書いちゃった場合
- んで,下記のように書くと期待通りの動きにならない。(具体的には,スイッチX00が効かないはず。)
- これを世間一般では二重コイルと呼ぶらしいのです。
- なんでこんなことになるかといういと,ラダープログラムの場合最終行のEND命令で一括処理されるから。
- つまり上記ラダーで言うと,X00の条件は無くなっちゃう。
|
| X00
|-----| |------------------------------(Y10)
|
|
・
・
・
|
| X01
|-----| |------------------------------(Y10)
|
|
二重コイル回避方法1:並列接続を使用する
- 単純にX00とX01を並列接続する。条件が少ないとコレもあり。
|
| X00
|-----| |------------------------------(Y10)
| |
| X01 |
|-----| |-----
|
|
二重コイル回避方法2:内部接点を使用する
- もし条件が複雑な場合,内部接点を使用して出力部は下の方でまとめて書く。
- 問題点:ラダー上で条件部分と出力部分がバラバラになっていくので,読みづらくなる!
- まーそもそも,ラダーって可読性悪いんだけどねw
|
| X00
|-----| |------------------------------(M00)
|
| X01
|-----| |------------------------------(M01)
|
・
・
・
|
| M00
|-----| |------------------------------(Y10)
| |
| M01 |
|-----| |-----
|
|

最近のコメント