前回は、シュミットトリガインバータを使って矩形波発振回路を作ってみました。

今回は、シュミットトリガじゃない、普通のインバータを使った矩形波発振回路を試してみようと思います。
インバータ 74HC04 を使った矩形波発振回路
本来、発振回路に使うインバータは、アンバッファタイプの 74HCU04 推奨だそうです。
74HC04 はバッファタイプで、内部にインバータが 3 段入っています。アンバッファタイプはインバータが 1 段だけで、入力に対して出力が緩やかに変化するめ、異常発振が低減されるとのこと。
でもさ、毎度のように部品箱に、ない。それに、余ったインバータでちょこっと発振器作ろうなんてときに、わざわざアンバッファを用意するってのは、ない (^_^;)
まぁ、バッファタイプじゃ絶対ダメ、ってわけでもなさそうなので、手元にある 74HC04 でやってみましょう。
回路図
図 (1) が、今回作った回路図です。
ググると出てくる回路とは、ちょっとだけ違います。普通はコンデンサ C2 はありませんね。あとで説明します。
抵抗 R1 とコンデンサ C1 が RC 回路で、この定数で発振周期が決まります。
抵抗 R2 はインバータ 2 の入力保護抵抗。これもあとで説明します。
動作原理
動作原理です。ちょっと難しいです。
ここでは、コンデンサ C2 はないものとして考えて下さい。抵抗 R2 も無視してよいです。
R 点が HIGH (5V) のとき、出力 O 点は LOW (0V) です。
このとき、コンデンサ C1 が充電されていきます。充電にともなって P 点の電圧が高くなっていくと、Q 点の電圧も高くなっていきます。インバータの入力電流はごくわずかなので、P 点と Q 点の電圧はほぼ同じ。これは C1 の電圧に等しいです。
Q 点の電圧が入力しきい値 2.5V に達すると、R 点が LOW に、O 点が HIGH になります。O 点が HIGH になった瞬間、P 点の電圧は、C1 の 2.5V に O 点の 5V をプラスした 7.5V に上昇します。
そして、C1 は放電を始めます。
C1 の放電に伴い、P 点の電圧が下がっていきます。Q 点の電圧も下がり、入力しきい値 2.5V に達すると、R 点が再び HIGH に、O 点も LOW に戻ります。O 点が LOW になった瞬間、P 点の電圧は 2.5V から 5V 下がって -2.5V になります。
そして、C1 が再び充電されていきます。
ってことで、これを繰返して発振する、という仕組みです。
発振周期 T は、
T = 2.2 CR = 2.2 × 0.1μF × 4.7KΩ = 1.0ms
です。周波数で 1000Hz です。
各部の波形
動作原理だけではわかりにくいので、各部の波形を見ながら確認してみましょう。
O 点:出力波形
図 (2) は、出力波形 O 点です。
きれいですね。周期 1.33ms 、デューティー比 51.1% です。
コンデンサ C1 の充電、放電はどちらも 5V の電位差ですので、時間も同じ、そのためデューティー比は 50% になります。
え? 50% じゃない? 誤差ですよ、誤差 (^_^;)
P 点:コンデンサ電圧の波形
図 (3) は、P 点の波形 (黄色) です。これはコンデンサ C1 の電圧です。下の波形 (青色) は出力波形 O 点です。
縦のスケールが異なりますので、注意して下さい。
O 点が 0V のとき、P 点の電圧は、コンデンサ C1 の充電にともない上昇していきます。
P 点が 2.5V に達すると、O 点が 5V になるため、P 点は 7.5V に急上昇します。
その後、C1 は放電を始め、P 点の電圧は下がっていきます。
P 点が 2.5V になると、O 点が 0V になり、P 点は -2.5V へ急降下。その後、C1 の充電にともない、上昇していきます。
P 点が 2.5V になると、O 点が 5V になって…
と繰返して、発振しています。
Q 点:インバータ 2 の入力波形と保護抵抗 R2 の働き
図 (4) 黄色は、インバータ 2 の入力側 Q 点の波形です。青色は出力波形 O 点です。
上に、P 点と Q 点の電圧は同じだ、と書きました。でも、この波形は P 点の波形と異なり、上が 5.5V 、下が -0.5V に削ぎ落とされていますね。
これが、保護抵抗 R2 の働きです。
データシートによると、入力電圧の絶対最大定格は「-0.5V ~ Vcc+0.5V」となっています。Vcc=5V ならば、-0.5V ~ +5.5V です。P 点の電圧は -2.5V ~ +7.5V ですから、これをそのまま入力すると、絶対最大定格を超えてしまう。つまり、IC が壊れる、ってことです。
入力電圧が絶対最大定格を超えたとき、 IC 内部の入力保護ダイオードに電流が流れて、IC を保護するようになっています。が、その電流の最大値は ±20mA です。保護抵抗 R2 は、このとき流れる電流を ±20mA 以内に抑えるために入れてあるのです。
同様の保護抵抗は、前回の「シュミットトリガインバータを使った矩形波発振回路」でもありましたね。コンデンサの電圧が 5V で、電源電圧が 0V になったときに、入力側に流れ込む電流から IC を保護するための抵抗でした。理由は同じです。

あれ?ちょっと待って下さい。前回の保護抵抗は 1KΩ でした。今回は 100KΩ です。ずいぶん定数が違いますが、どうしてでしょうか?
それは、先達の知恵です、ということで (^_^;)
えーと、前回の場合はですねぇ。
前回の発振回路で、シュミットトリガインバータの入力保護抵抗を、たとえば 100KΩ といった大きな値にすると、IC の入力容量の影響で、異常発振してしまうことがあります。
また、電源電圧が 0V というのは、通常の起動状態では起こりません。あるタイミングで起きる可能性がある状態から、IC を保護するのが目的。そのために、瞬間的に 10mA ほどの電流を流すことを容認しています。
で、先達の知恵、経験から、1KΩ ぐらいがちょうど良い、とされています。
対して、今回の発振回路では。
P 点の電圧が絶対最大定格を超えているのは、通常の起動状態でのことです。入力保護ダイオードは、通常の使用状態でガンガン電流を流すことを目的にしていません。本来なら、外部にリミッタを入れて、電圧を絶対最大定格内におさめるようにすべきでしょう。
でも、そこはそれ、100KΩ ぐらいの抵抗で、できるだけ保護ダイオードの電流を小さくして、こっそり流してやる程度なら、だいじょーぶだよ。
という、先達の知恵、経験値なんです。
と、俺は考えています。
コンデンサ C2 の働き
さて、コンデンサ C2 の役割ですが、ずばり、異常発振の抑制です。条件よく異常発振しなければ、もちろん不要です。
図 (5) は、出力波形 O 点の立ち上がり部です。
左はコンデンサ C2 がないとき、右は C2 を付けたときです。C2 がないと異常発振していることがわかります。
保護抵抗の働きでも書きましたが、保護抵抗が 100KΩ と大きいとき、入力容量の影響で異常発振してしまうことがあります。
また、Q 点の電圧はコンデンサ C1 の電圧なので、上昇、下降の速度が遅いです。しきい値を横切る速度が遅いとき、振動が起きてしまいます。
これらが異常発振を起こしてしまう原因。
入力遷移速度を速くし、入力容量の影響を減らす方法といえば、スピードアップコンデンサ、でしょ?
P 点の電圧が下降して、Q 点の電圧がしきい値の 2.5V になったとき、R 点が HIGH になります。P 点の電圧は 7.5V に急上昇しますが、抵抗 R2 と入力容量のために Q 点の電圧が上昇するのが遅れます。しきい値付近でもたついていると、信号は振動してしまいます。
そこで、コンデンサ C2 を抵抗 R2 に並列に入れます。
これにより、P 点が 7.5V になった瞬間に C2 を通して入力容量を充電し、Q 点の電圧をすばやく上げることができます。P 点が -2.5V になった瞬間には、C2 を通して入力容量を放電し、Q 点の電圧を下げます。
図 (6) 黄色は Q 点の電圧の立ち上がり部です。
左は C2 がないとき、右は C2 を付けたときです。青色は出力波形 O 点です。
C2 がないとき、Q 点はしきい値付近をゆっくり上昇し、そこで振動しています。そのため、出力も振動してしまいます。
C2 を入れることで、Q 点の電圧が急速に上昇し、しきい値を一気に抜けていることがわかります。
これが、コンデンサ C2 の働きです。
ところで、コンデンサ C2 が、逆に IC の破壊を招かないのでしょうか?
C2 の容量はカットアンドトライで決めています。10pF ではまだ少しバタつきが残りました。22pF できれいな立ち上がりになりましたので、この容量にしました。
これだけ小さな容量ですので、一瞬に流れる電流はほとんどが入力容量の充放電に使われるだろうと思います。IC を破壊するだけの力はないだろうと。
C2 を、必要以上に大きな容量にしてしまうと、IC を破壊しかねません。要注意です。
発振周期を変えてみた
R1 | C1 | 周期 |
470KΩ | 10μF | 10s |
100KΩ | 10μF | 2.2s |
47KΩ | 10μF | 0.96s |
10KΩ | 10μF | 0.21s |
4.7KΩ | 10μF | 98ms |
4.7KΩ | 1μF | 10ms |
4.7KΩ | 0.1μF | 1.3ms |
4.7KΩ | 0.01μF | 0.12ms |
4.7KΩ | 1000pF | 12μs |
4.7KΩ | 100pF | 1.4μs |
1KΩ | 100pF | 0.27μs |
470Ω | 100pF | 0.16μs |
では、RC 回路の定数を変更し、発振周期を変化させてみましょう。
コンデンサ C1 を100pF にすると、発振が不安定になりました。そこで、C2 を 5pF に替えると、安定します。C2 の影響が出てきたようです。
周期 0.16μs 、周波数で 6.3MHz あたりが限界のようです。まぁ、十分ですね。
異常発振がうまく止められれば
ブレッドボードに、かなりラフに組み立てていますので、いろいろ異常発振してしまう可能性は高いです。でも、そんな状態でも、それなりに安定して発振できる回路じゃないと、けっきょく苦労しちゃうんですよね。
今回は、比較的簡単に異常発振を止めることができましたが、場合によっては、使えないってことがあるかもしれません。使うときは、ちょっと気をつけておきましょう。