フィードバックのないオープンループのチョッパは以前製作しましたが, 低回転時やファンがしぶくなった時の信頼性に欠けるので,最近のファンには常備されている 回転パルスを検出して制御を行うようなチョッパコントローラを 製作してみました。
$Id: 2.html,v 1.3 2001-12-05 04:14:04+09 kabe Exp $
まともな回転機であれば回転検出パルスは常に得られるのでそんな 面倒な回路はいらんのですが,CPUファンだとOFF時は検出パルスも出てこない (あるいはデタラメなパルスがくる)ので,これを無視するような構成に する必要があります. このOFF期間中はパルスが観測できないので,回転しているのか否かは このままではわからず,定期的にONにしてパルスをチェックする必要が 出てきます.(このため超低速回転はちと難しい)
最初のうちはパルスの間隔を計測するような回路を考えていました. パルス間隔を計るのは半回転単位で細かく制御できる点がいいのですが, タイムアウト用のパルスも発生させなければならない等けっこう面倒でした.
そこで,パルス単位で計るのはあきらめて,タイムアウトパルス期間中に ある回数回転したらOFFにするという構成を考えてみました. これだとアナログな発振器が一つで済みます. ただしこの方法では数回転単位で制御するので低速時はちょっとONパルスが 荒くなります.(高回転時はあまり関係ない)
動作としては,
このコントローラはロジック部に+5Vを必要としてる関係上, マザーボードのファン電源(+12Vしかない)から電源がとれないので, 5"ベイ用の電源コネクタから給電します. マザーボードのファンコネクタへは原理上パルスは戻せません.
HC14のヒステリシスを使って発振器を構成します.ここはHC14でないと 動きません.
最初はLS14で設計してましたが,LSだとD3と5kΩ(10kΩより小さければなんでも可、0Ωでも一応動く)で"H"期間を縮めて デューティーの小さい発振をさせます. "L"期間がCRの時定数で決定されます. CPUファンは物によらず+12V時に6000rpmくらいが普通のようなので, たいていは回路中の定数で大丈夫でしょう. 変なファンをつなぐ場合や,違う部品を使いたい時は 最小周期が 1/(最高回転数(rpm)/60)*4(パルス) 以下に なるようにします.ので,あきらめてHC14に変更してあります. いやーCMOSだと楽だわ… (パスコンはしっかり入れること)
- 帰還抵抗を3kΩ以上に出来ない("L"ドライブ電流不足)
- ダイオードを挟むと"L"ドライブ電圧不足
- "H"出力電流がちと弱い
LS112を使っているのは手持ちでやたらに余っていたからで, カウンタが作れれば何でも可. 回路図で3段目が接続されておらず2段目から最終FFへ行っているのは, 8パルスカウントから4パルスカウントへ変更した際のなごりです. 8パルス(4回転)だと制御が荒すぎました. シフトレジスタをカウンタにしてデジタル的に回転数切替するのも面白そう。
パルスカウントはあまり小さくてもダメでしょう.現状でもタイミングによって 同回転でも3パルスだったり4パルスだったりするので出力が若干変動します. カウント数が多ければ平均化できます.
パルスを受ける所のD1は必ず入れて下さい. 入れないとHC14が壊れます.この回路はファンの接地側をスイッチングしているため, 出力OFF時はファンのパルス出力がオープンコレクタであったとしても +12Vまで上昇するので、D1で0Vパルスだけ取り出します.
最終出力を電源側スイッチングにすればD1はいらんのですが, 出力段にトランジスタが増えるのと (5V TP出力では12V側のPNPは 直接ドライブできない) ON/OFF遷移時にファン側の回路がねぼけて メチャクチャなパルスが入ってくることがあるので,あまり やらんほうがいいような気がします.やるならOFF時はFANROTを きっちりマスクするような回路にしないと
今だったらこの程度の回路はPLDに押し込むのが正解ですが, バリバリの非同期回路ですので気を付けて下さい.PLD化してないのは 単に設備を持っていないからです.
最高回転から少し落としたあたりでのLEDの明るさがロウソクのように ゆらぐのがなかなか印象的.
発振周期とファンの回転数の関係をまともに求めようとすると ファンの加減速特性なんかを加味しなければならんのですが, 単純に「回転数は平均電圧に比例する」と仮定して計算すると 上図のような特性が求まります. 実際に使ってみた感覚とも一致します. 回転が「最低回転数」以下になるとスイッチングせず全電圧がかかるようになります. 回転数を半分にするには周期を4倍にしなきゃならんこともわかります. 製作した回路では10kΩ〜110kΩの11倍で変化するので回転数はだいたい3倍 (6000rpm〜1900rpmくらい)変化します.
こういう単純なチョッパでは OFF→ON の時にスパイク電流が 本体の電源側に流れ込むので、低発熱とともに低雑音を目指している人には 不適当です。 スイッチング周波数が低いので、オーディオ系にも干渉するはずです。 出力側にコンデンサをつけて平滑しようとすると、ON時に より強力な充電スパイクが流れるので、一層不適当。
まじめにやる人は (そもそもこんな回路をベースにはしないでしょうが) 出力側をチョーク+フライホイールD+コンデンサ、の 本格的なスイッチング電源風にしてやる必要があります。 チョッパならではの低速回転性能は犠牲になるかも。