リレーシーケンス回路
99カウンター
99分カウンター設計画面へ戻る
実践課題メニューへ戻る
メインメニューへ戻る


ラダーの解説
今回はちょっと親切に流れ追ってみたいと思います。


カウント部分の構成について
今回のカウンターの基礎部分の2進化10進数(BCD)についてもう一度考えてみます。ベースは2進数で、4桁で表されます。
最下位の桁(A)が1、その上の桁(B)が2、その上の桁(C)が4、最上位の桁(D)が8となっていて、例えば1001の場合、
(D):8 + (A):1 = 9 というようになります。わかれば簡単です。コンピュータの一番基本は2進数ですので、これがわかれば
コンピュータの基本が分かる・・・という話にはなりませんが、基礎学習では必ず登場します。

では、下の表をご覧ください。


何か法則がありそうですね。

@最下位の桁は数が増えていくたびに0と1を繰り返す。
Aその上の桁は、下の桁の1/2周期で0と1を繰り返す。
Bその法則はさらにその上の桁になってもあてはまる。

カウンターを作るにはこの法則を使えば、簡単にできることが分かります。
つまり
入力信号がある/なしを2回に一回(1/2)に分周(ぶんしゅう)する回路を作ります。
身近にあるもので言えば、押すたびにON/OFFが入れ代わるスイッチみたいなものです。
それを4段でひと組にすれば10進数でいう1桁が完成です。

でもそのままでは16進カウンターのままですので、10になった時に
自身でリセットをかけることと、10進数でいう上の桁への桁上がり信号を出せばOKです。

回路概念をブロック図で表せば、下のようになります


「ダイナミック方式」のテクニック
上のブロック図を2セット用意すれば2桁分作ることができます。
それぞれの桁のA〜Dをそのまま「BCD-7セグメントデコーダードライバー」のIC(74HC4511)に入れれば、スタティック方式で出力ができます
しかし、今回の計画は「ダイナミック表示方式」ですから、テクニックが必要になります。

つまり、上の桁と下の桁の表示を高速で切り換えなくてはいけません。回路図をもう一度思い出してみましょう(見てみましょう)。

下の桁のBCD出力を74HC4511に出力したときに、一番右側のトランジスタをONにすれば、その桁だけ表示条件がそろって、
数字が表示されるのです。

今度は 上の桁のBCD出力を74HC4511に出力したときに、ひとつ左側のトランジスタをONにすれば、
この時もその桁だけ表示条件がそろって、数字が表示されるのです。

それを交互に行うと、ダイナミック表示で出力できるわけです。


切替のポイントはM50
シーケンス回路の中のM50がポイントです。このM50は、プログラムを実行していく中で、実行ごとにON/OFFが入れ代わります。
それをもとに、上位と下位の表示を切り換えているのです。分かってしまえば簡単ですよね。
このようなPLCの使い方は、お遊び感覚で作っていますので通常ではありません。知識ぐらいで止めておきましょう。


というわけでシーケンス回路の公開です
ここにシーケンス回路を用意しました。どうぞお持ち帰り下さい(ダウンロード後、解凍して下さい)

60進カウンターとしての要望により、用意しました。上記同様にお持ち帰り下さい。16F84A用(zipファイル)2012.12.04

60進カウンターとしての要望により、用意しました。上記同様にお持ち帰り下さい。16F877A用(zipファイル)2012.12.04
せっかく作ったところですし、このままにしておくのも何かもったいないので、ひまを見て応用を公開するかもしれません。
適当なスイッチをつけてありますが、チャタリングもあまり気になりませんので、このままでOKだと思います。

応用とすれば、キッチンタイマーの回路から(1分クロックを)流用して、99分カウンターにしても良いし、
回路を増やして3桁以上に増設しても面白いですね。通過センサーを入力にして、物の数を数えたりと、色々使えます。

ゼロのときに00という表示になりますが0を一桁のみにしたい場合は、
74HC4511は10以上の入力を入れると非表示になるので、それをヒントに工夫してみて下さい。
宿題にしておきます。回路はご自分で考えてください。

参考までに、私の作った物の写真を載せておきます。


とりあえずここ迄で第一期完成です
設計画面へ戻る 9999カウンターへ