ゴールデンウィークつぶして出来たのがここまでです。底板にスイッチング電源などを貼り付けしました。カバーの無いスイッチング電源2つは GM70 のヒーター用、パンチメタルカバー付きスイッチング電源は、ファンと Arduino UNO のファンコントローラー用電電。Arduino UNO のファンコントローラ基板の4つです。これにて大物はなんとかなった感じです。これから配線していくフェーズになります。
今日の作業はここらへんにて終了。
このサイトは楠 昌浩が興味をもったことに対して広く浅くネタ集めしております。
物も揃ってきたので、実際の組み立てにいきたいところです。大きな紙に購入を検討しているタカチのケースの天板の大きさをマジックで描いてみました。ターゲットのケースは SRDSL-20 というのと、WO-99-50-33 というケースです。そこに部品を置いてアレコレ検討しました。
検討の結果 SRDSL-20 では面積不足のため WO-99-50-33(黒)に決めました。ものすごくデカイケースですが仕方ありません。作ったあとの「どーすんだこれ?」問題は今は考えたくありません。通販でポチったので後戻りしません。前に進んでまいります。
あとは、Draw ソフトに各パーツの採寸した結果を描いていって、シャーシ加工の準備にはいっていきたいと思います。
初段まわりの直流点火を目論んで、先日ラグ板にブリッジと抵抗とコンデンサをハンダ着けしたラグ板を作成したのですが、ブリッジの発熱を放熱しきれてませんでした。今回1サイズアップのブリッジと家にあまってる放熱板で作り直すこととしました。ということで、放熱板付きブリッジーダイオード再作成したとこが上の写真
構成は、ブリッジダイオード -> 0.11Ω 2パラ(0.055Ω) -> 40000uF といたしました。
電源を接続して、
1.8A 流す設定にして、6.3V くらいになりました。これはAC100V の都合で最初 6.2V くらいでしたが、食事から戻ってきたら 6.3V になっていました。とにかく 6SL7 * 2 + 6SN7 * 2 まとめて直流点火出来す見通しが
たちました。
リップルは 260mV(pp) でした。十分かと思います。
前回の記事で、シャーシにファンを取り付けたほうがいいなぁ。と書きましたが、もうちょっと仕様を検討してみました。
使用する DC ファンは山洋電気 9GA0612P1K60(12V 60mm角のファン)を通販でみかけたので 2 個購入しました。
概略の性能は以下のとおりです。
+---------+------+-------+----------+--------+----------+------+ |PWM DUTY | 電流 | 入力 | 回転速度 | 風量 | 最大静圧 | 音圧 | | (%) | (A) | (W) | (min-1) |(m3/min)| (Pa) | (db) | +---------+------+-------+----------+--------+----------+------+ | 100 | 0.95 | 11.40 | 14,800 | 1.50 | 675 | 59 | | 0 | 0.05 | 0.50 | 1,480 | 0.134 | 8.3 | 16 | +---------+------+-------+----------+--------+----------+------+
この DC ファンには 4本のコードが出ています。
赤: 電源 +
黒: 電源 –
茶: PWM 制御
黄: 回転数センサ
回転数制御ができれば十分なので、電源の線と PWM制御の線合計3本使うことにします。
回転数センサは、回転数をモニタするときには必要ですが今回そこまで要らないので使用しません。
この DC ファンを全開で使うとラックマウントサーバー並みの騒音が発生しますので、最大30%~40% を目安に
リミッターをかけたいと思っています。回転数の制御は PWM 線に 25kHz の PWM を流せば回転数を調整できます。
この信号を発生させるために Arduino UNO(ATMEGA328P) の Timer2 を使用して発生させることにしました。
なぜ、Arduino UNO かという理由は、積み基板があったことと AVR マイコンになれているからです。
今回は Timer2 を位相基準モード(Mode 5)に設定して PWM を発生させることにします。
// // Timer2 Mode 5: 位相基準 PWM TOP=OCR2A // // クロックは 16MHz / 8 = 2MHz // DC FAN PWM 周波数 = 25kHz // OCR2A = 2MHz / 25kHz = 80 -> 40 // OCR2B = デューティー比 0 - 40 の 2.5% きざみになる // PWM 出力端子は OC2B = PD3 = 3 // void setup() { pinMode(3, OUTPUT); TCCR2A = _BV(COM2B1) | _BV(WGM20); TCCR2B = _BV(WGM22) | _BV(CS21); OCR2A = 40; OCR2B = 0; }
細かい説明は省きますが、 OCR2B に 0 – 40 まで設定すると 0% – 100% の PWM を発生させることができます。
ソースのコメントにもかいていますが、2.5% ステップで調節できます。
ファン周りは以上で、次は温度センサーです。
TMP36GZ というトランジスタみたいな形の温度センサーです。この温度センサーは 25℃のときに 750mV 出て、1℃変化すると電圧が10mV 変化するというものです。
+-------+---------------------------------+-------------+ |TMP36G | Output Voltage 25℃ (mV) | 750 | | | Output Voltage Range (mV) | 100 ~ 2000 | | | Scale Factor -40~125℃ (mV/℃) | 10 | +-------+---------------------------------+-------------+
Arduino UNO の analogRead(pin) で TMP36GZ の出力を読み取って温度の判定をします。
analogRead() の戻り値は 0~1023 です。リファレンス電圧は 5V なので戻り値の単位は 5000mV / 1024 = 4.88 mV
温度 = analogRead() * (5000 / 1024) / 10 – 50
・10 は 10mV/℃
・50 は 0℃のときのオフセット電圧 500mV / Scale Factor 10mV = 50
で計算することができます。
PWM 出力の設定は、実際に動かしてみないとわからないのですが、
仮で下記のようなテーブルを設定してみました。
+----+--------------+----------+----------+ |温度|センサ出力(mV)|analogRead|FAN PWM(%)| +----+--------------+----------+----------+ |-10 | 400 | 82 | 0.0 | | -5 | 450 | 92 | 0.0 | | 0 | 500 | 102 | 0.0 | | 5 | 550 | 113 | 0.0 | | 10 | 600 | 123 | 0.0 | | 15 | 650 | 133 | 0.0 | | 20 | 700 | 143 | 2.5 | | 25 | 750 | 154 | 2.5 | | 30 | 800 | 164 | 5.0 | | 35 | 850 | 174 | 5.0 | | 40 | 900 | 184 | 7.5 | | 45 | 950 | 195 | 7.5 | | 50 | 1000 | 205 | 10.0 | | 55 | 1050 | 215 | 12.5 | | 60 | 1100 | 225 | 15.0 | | 65 | 1150 | 236 | 20.0 | | 70 | 1200 | 246 | 25.0 | | 75 | 1250 | 256 | 30.0 | | 80 | 1300 | 266 | 35.0 | | 85 | 1350 | 276 | 40.0 | +----+--------------+----------+----------+
基板につけたボリュームは当初最低回転数の設定に用いる予定でしたが、現在は上記テーブルで回るファンの回転数を
ちょい増し・減らしの調整用にしようと考えています。
あとは、回転数設定をどれくらいの頻度で行うかも検討が必要ですが、これはトライ&トライで決めたいと考え中。
ひとまず、机上での検討結果でした。
シャーシが決まっていませんが、なんとなく必要になりそうだったので作っておきました。山洋の DC ファンを PWM 制御するコントローラ + リレー4個まで接続出来るようにした基板です。DC ファンはたまたま山洋のを買ったので PWM 周波数は 25kHz です。
最終的には上記の動きになるようプログラムする予定です。ひとまずボリュームのアナログ値を読み込んで PWM 幅を変更するサンプルを作成して実行してみました。
90%, 60%, 10%, 0% を並べてみました。デューティー比を下げるとキッチリいけてませんね。0% でヒゲみたいにワンショットでちゃってます。データシート読んで悪そうなところを見直しましょう。デューティー比を変えても 25kHz の周期でパルス出せているのでレジスタ設定の肝心な部分は OK でした。
DC ファンは全開で回すとモーターの音と風切り音がラックマウントのサーバーみたいにヤカマシイので最大20~30%のパワーあたりで調整入れていくような感じになりそうです。
2016/4/11 追記
高速 PWM モードでは、0% のときはパルスがでるとデータシートにもあったので、位相基準 PWM でプログラムすることに変更しました。
以下、初期化のところをメモしておきます。
// // Timer2 Mode 5: 位相基準 PWM TOP=OCR2A // // クロックは 16MHz / 8 = 2MHz // DC FAN PWM 周波数 = 25kHz // OCR2A = 2MHz / 25kHz = 80 -> 40 // OCR2B = デューティー比 0 - 40 の 2.5% きざみになる // PWM 出力端子は OC2B = PD3 = 3 // void setup() { pinMode(3, OUTPUT); TCCR2A = _BV(COM2B1) | _BV(WGM20); TCCR2B = _BV(WGM22) | _BV(CS21); OCR2A = 40; OCR2B = 0; } void loop() { // Duty 0 - 50% テスト int i; for(i = 0; i < 21; i++) { OCR2B = i; delay(5000); } }
なんとも、見た目がアレなラグ板が写っていますが、初段 6SL7 を直流点火するための整流回路です。ブリッジダイオード -> 0.36Ω -> 10000uF × 3 で作りました。
次段の 6SN7 は交流点火のままにしておきます。
負荷装置で 600mA (6SL7 ヒーター電流2本分)流すように設定して電圧チェックした結果 6.3V 付近になりました。よしよし
リップルは 132mV pp でした。これで初段がヒーターハム拾う可能性を取り除くことが出来ました。
6SN7 2本交流点火 + 直流点火(電子負荷で 600mA設定)で通電したときの電源トランス 6.3V / 2A の巻線の電圧は 6.48V でした。6.3V よりかは高いですが、まぁ、問題ないです。どうしても気になるようになった場合はドロッパ入れることにします。
ヒートシンクは 40℃を下回るあたりで落ち着きました。シャーシ内ではこれ以上の温度になりますので、ヒートシンクはこのままにしておきます。
GM70 のロードライン更新版です。最終的な動作点はプレート電圧 950V より少し上でプレート電流 80mA のところになりました。右上りの赤い線はカソード抵抗 1.2k のラインです。右下りの青い線は出力トランスの 9.5k のライン。動作点のところに引いている縦線は gm を見るため、淡い緑っぽい線は、プレート内部抵抗 rp を調べるための線です。
GM70 のデータシートには、gm 6mS と μ 6.7 ありますが、グラフ読み取りしておおよその値を調べました。今回使う動作点あたりでは
gm: 4.5mS
μ: 8
rp: 1.8k
ぐらいの数字になりました。ということで、トータルゲインの試算
増幅率(倍) | 増幅率(db) | |
6SL7 | 40.0 | 32.0 |
6SN7 | 26.0 | 28.3 |
GM70 | 6.7 | 16.6 |
OPT | 0.03 | -31.0 |
トータル | 197.4 | 45.9 |
グラフから出力電力も目分量で求めた結果20W 程度 8 掛けとして 16W 程度が実質の最大出力となり、電圧換算は 11.3V でした。
ひとまず 150mV を入力の目安とした場合、必要な増幅率は 11.3V / 0.15V = 75.3倍(37.5db) です。
帰還抵抗 | β | Gain(倍) | NFB(db) |
100 | 0.500 | 2.0 | 40.0 |
2100 | 0.045 | 19.8 | 20.0 |
3900 | 0.025 | 33.3 | 15.5 |
9100 | 0.011 | 62.8 | 10.0 |
20000 | 0.005 | 99.6 | 5.9 |
47000 | 0.002 | 139.1 | 3.0 |
10db の帰還で 62.8倍の増幅率なので、帰還量 10 db は組込む予定。電圧の高いライン出力を持つ機器の対策はどうしましょうかね。アッテネータで減衰さすのが簡単なのですが… 検討ですね。
とりあえず、バラックのままで音出ししてみました。その結果
・ハムがひどすぎる
・ブレッドボードに回路組んでるので、周辺ノイズを拾いまくる
と散々な状況です。
ブレッドボードの中にある金具はそういうもんなのでノイズは仕方ないにしてもハムがひどい。
切り分けのため、終段 GM70 のグリッドを 100k で落とし、アイドリング電流が流れているだけの状態にしてスピーカーからハムが出るか確認。この結果ハムは聞こえませんでした。前段に問題ありそうです。次に、6SL7/6SN7 を直流点火して変化あるか確認。この結果ハムはかなり減りました。ギターアンプでもわりかしハム出てるやつとかあったりしますがそんな感じの状態。
直流点火は、ひとまず安定化電源で供給したので狭い机が限界です。ヒーターの直流点火回路はラグ板に組んでしまいたいと思います。
確認ついでに GM70 のヒーター (20V/3A) 用のスイッチング電源の出力もオシロでちょこっと確認したところ、スイッチングノイズが乗っているので、ノイズフィルター入れといたほうがいいと判明しました。定格 50% 以下で使ってるけど結構ノイズ出てますね。