(2000.04.11 CREATE)
私がラダー回路について述べることは非常に恥ずかしい思いがあります。なぜならですね、まず、自身で書いている回路が本当に正しい書き方なのか、判断基準が無いからなんですよ。社内での各自の書き方も基準となるところ(デバイスの割り振り等)は、一緒ですが、作り方は(考え方は)十人十色で 見れば誰が作ったか分かるほどです。まあ、特に難しく考えなくても簡単に作れるのがラダーの特徴ですが・・・。
(特徴のある作り手)
○SET,RESET派
本来は動作を電源断でも記憶させておくラッチ等に有用ですが、全てをこれで行ってしまうスタイル。
○パルス派
次行程に進む際には必ず、パルスにしないと気が済まないスタイル。
○シフト派
ビットシフトで行程を進めるスタイル。
○ラダー派
本家、はしご状の回路が一番だ!と、頑なにSETを使用しないスタイル。
○タイマー派
パルスなど信じられるか!と、1スキャン信号には必ず、保持&タイマーを使うスタイル。
○B接派
うーん、このような名称は的確では無いと思うのですが、なにかと言いますと、例えばですね あるOUT命令を実行するならば普通、”条件がそろったら動作” ですよね。それを ”条件がひとつでもあったら動作しない” と、逆の考えで固めてしまうのです。これは、制作者以外の人が見ると非常に根気を必要とします。なにしろ、全部 ”〜しない”で書いて有るのですから。
まあ、社内にいる数人でも上記のような特徴が見受けられるのですから、他にも未知の作り方があるかも知れない。
さて、そろそろ本題ですが よく使うような回路を公開したいと思います。私が考えたモノで参考にした回路などはいっさいありません。もし、あなたが使っている回路と同様ならば 同じ考えなんだな と、思って下さい。また、まったく違う作り方があり、公開してもいいよ であれば、連絡下さい。
(モーメンタリースイッチの入力でオルタネートで出力)
*備考
X00 => モーメンタリースイッチ
Y00 => オルタネートで出力
M0〜M2 => 内部レジスタ
とりあえず、ひとつだけ載せます。実際にはX00はチャタリング防止にタイマーを入れますが、まあ、無いと仮定しての回路です。
ご意見お待ちしてまーす。