かずいの雑記帳4

趣味でいろいろ実験やってます。 2021年6月21日よりhttpsの利用が可能になりました。 当ブログも設定を変更しましたので、画面の乱れ等ありましたら教えて下さい。

2017年07月

TEA2025Bを使った2.1chアンプの制作(その4)

とりあえず組み立て完了。
この後、グルーガンで各部品のブレ止を行った。



外観は必要最小限の加工で済むよう考えたので、うまくまとまったと思う。
エンブレムはうるさくない程度に光ってるし、スリ傷も最小で済んだ。



各部電圧調整後、一晩通電してエージング。
GX-20AXのサブウーハー出力に接続して視聴してみる。

うん、なかなかの迫力。
GX-20AXが苦手な100Hz以下の周波数を健気に再生しようとしていることが解る。


それでは仕上げの調整を始めよう。

電源ON時のポップノイズがやや大きく、また、時々わけの分からない振動をする。
結線を調べてみた所異常は無く、C52のジャンパ線配線にAWG30相当の配線を使用していて、これが細すぎたためだと思われたのでジャンパ線をφ0.6に変更する。ポップノイズはゼロには出来なかったが、我慢できるレベルにまで下がったので、これは正解。

ゲイン調整の際に最終的にVR3を最小にしたので、ジャンパして52dbとした。
元々2.1chの際の設計の名残だし、ボリュームで低音のバランス調整できるので問題ないだろう。

耳を近づけてやっと判る程度ではあるが、ハム音が若干残っている。電源電圧はレギュレータのおかげで12Vで目立ったリプルも無く安定しているので、FBに使ってるコンデンサの位相のズレが問題か?
音量を大きくすると低い周波数でコーンの動きが悪くなり、脱調するようで電力不足が疑わしい。
これらの対策として一次側のバルクコンデンサとして3300μFを増量した。
また、アースのラインを延長してACと信号線のシールド効果を狙った。両面スルーホール基板なので、立体的な遮蔽になってくれるはず。
同時にレクチファイヤ出口とアンプICの電源に0.1μFのパスコンを追加する。
結果、極低音の脱調は改善したが、ハム音に対してはほぼ効果が無い。
コンデンサの位相ズレやトランスの磁気が輻射ノイズとなっていたらお手上げだ。

音量を大きくすると筐体内の何かがビビるのと、バッフルパイプを通る空気の音がスコスコ鳴るので、物理的な対策を考える。
基板が筐体と当たる所にゴムスポンジを貼って振動を抑える。
配線関係が踊らないようそれぞれ固定する。
筐体そのもののビビリ止めを狙って筐体内に鉛を張り、その上から空気の動きを抑える為にGX-70AXで使っていたのと同じようなモルトフィルター状のウレタンスポンジを貼る。
色がカラフルなのはご愛敬だ。(ダイソーで買った石鹸置きだから)
ただし、空気の流れを抑えると低周波が出にくくなるからバランス調整が難しい。
実際、ビビリ音は止まったが、やり過ぎたようで、低音のキレが悪くなった。
相乗効果でポップノイズが下がったのは良いが、今後さらなる調整が必要だ。





続きを読む

水晶振動子を使った高精度発振器の制作

PICのクロックの精度をいうと、「内蔵CR発振<外付けセラロック≪外付け水晶発振器」となることは よく知られている。
水晶発振器がppmオーダー、他は%オーダーなので、比べるべくもない。
今回、とある事情で、PICでなるだけ正確な発振器を作る必要に迫られたので書き留めておく。

水晶発振を利用するには、コンデンサ等を内蔵したIC型の水晶発振器を用いるか、水晶振動子に共振用の 負荷容量をぶら下げて自分で構築することになる。
実験に使用するPIC12F683には発振用インバータが実装されているので、勉強がてら後者でやってみよう。
3a60dfcf.jpg

まず用意するものは目的に合った水晶振動子だ。
今回はCCPモジュールのPWMモードで1500Hzを出す予定なので、PICの仕様上12MHzの振動子をチョイス した。
ヤフオクで京セラ製水晶振動子を少量調達し(感謝)、データシートを入手する。
(以下、いずれも京セラ HC-49/Uデータシートから抜粋。現在は生産終了品)
110cff97.jpg
0ae1db47.jpg
2ef9af55.jpg
ここで水晶発振器の原理を超大雑把に説明すると、
 1.水晶振動子に電圧をかけると中の水晶片が物理的に振動する。
 2.水晶片の振動により微小な電気信号が発生する。(ピエゾ効果)
 3.その電気信号を共振させてクロックの信号源として使う。

水晶の物性で物理的振動の周期が正確に決まるので、得られる電気信号もまた正確というわけだ。
そして、共振には容量成分が必要で、これが負荷容量(CL)と呼ばれている。
負荷容量とはインバータ側から見たトータルの容量成分で、つまりは発振子自体の容量成分と、外付けコンデンサ と、浮遊容量の合成値だそうだ。

ここで重要なポイントが一つ。
負荷容量によって周波数の偏差が変化する。
負荷容量が大きくなると周波数偏差がマイナスに偏る(周期が遅くなる)ので、浮遊容量は極力小さくなるよう 配線しなければならない。
また、どの程度の負荷容量が必要なのかはデータシートに記載されているが、その記載方法が曲者で、メーカによって負荷容量CLの値をそのまま規定している場合と、外付けコンデンサの容量値で規定している場合があるので、実使用時にはどちらが適用されるか確認しなければならないとのこと。

ということは、データシートが無い中華製だと完全に手探り状態だから、ちょっとMっ気があるマニア向け。(失礼)
形状が似ている他社製品を参考にして、結果を丁寧に確認するしかない。
今回、京セラに問い合わせてみたものの、製品の生産が終了しており回答が得られなかったので、データシート に記載されている負荷容量はCLそのもので、浮遊容量は5pF程度と仮定してコンデンサの容量を算定した。
※後日、京セラ殿から回答をいただきました。ありがとうございました。
回答内容を抜粋すると、「両端に付ける外付けコンデンサと、振動子以外の部品を含む回路基板の容量です。 この容量に合わせ込んで周波数をセンター合わせした値が、16pF相当になります。」 とのこと。

なので、次式で与えられる。
負荷容量(CL)=(Cg・Cd)/(Cg+Cd)+Cs
 Cg:外付けコンデンサ1
 Cd:外付けコンデンサ2
 Cs:浮遊容量
Cg=Cdの場合、
CL=Cg^2/2Cg+Cs
 =Cg/2+Cs
∴Cg=(CL-Cs)*2
=(16[pF]-5[pF])*2 = 22[pF] //

以下、ソース。
長々と書いてはいるが、結局のところ出力周波数は朱書きのパラメータで決まる。(PIC12F683 Data Sheetより)
c2a16a89.jpg
/* * File: GCEmulatorMk2.c * Author: Kazui Okumori * PIC12F683 * Created on 2017/07/15, 13:52 */ // PIC12F683 Configuration Bit Settings // 'C' source line config statements // CONFIG #pragma config FOSC = HS // Oscillator Selection bits (HS oscillator: High-speed crystal/resonator on RA4/OSC2/CLKOUT and RA5/OSC1/CLKIN) #pragma config WDTE = OFF // Watchdog Timer Enable bit (WDT disabled) #pragma config PWRTE = ON // Power-up Timer Enable bit (PWRT enabled) #pragma config MCLRE = ON // MCLR Pin Function Select bit (MCLR pin function is MCLR) #pragma config CP = OFF // Code Protection bit (Program memory code protection is disabled) #pragma config CPD = OFF // Data Code Protection bit (Data memory code protection is disabled) #pragma config BOREN = ON // Brown Out Detect (BOR enabled) #pragma config IESO = OFF // Internal External Switchover bit (Internal External Switchover mode is disabled) #pragma config FCMEN = OFF // Fail-Safe Clock Monitor Enabled bit (Fail-Safe Clock Monitor is disabled) // #pragma config statements should precede project file includes. // Use project enums instead of #define for ON and OFF. #include <xc.h> /*** グローバル変数の定義 ****/ #define _XTAL_FREQ 12000000 //12MHz crystal resonator /************ メイン関数 ***************/ void main(void) { //OPTION REGISTER 設定、PIC12F683 Data Sheet による ANSEL = 0b0000000; // アナログ入力無し CMCON0 = 0b00000111; // コンパレータ無効化 TRISIO = 0b001010; // GP1,3入力、他は出力設定 WPU = 0b000010; // プルアップビット GP1 nGPPU = 0b000000; // GPIOプルアップ有効化 /* 初期値セット */ GPIO = 0b000000; // default Low /* タイマ2初期設定 PIC12F683 Data Sheet による */ PR2 = 124; // PWM Period = [(PR2) + 1] * 4 * FOSC[msec] * TMR2PrescaleValue = (124+1)*4*0.33[μs]*16 =0.6666[ms]=1500.0[Hz] T2CON = 0b0000111; // Postscaler:1/1,Prescaler:1/16,TMR2 is on /* PWM1初期設定  PalsWidth=50 PIC12F683 Data Sheet による */ CCPR1L = 62; // Capture/Compare/PWM Register 1 Low Byte CCPR1H = 0; // Capture/Compare/PWM Register 1 High Byte CCP1CON = 0b00001100; // CCP1 CONTROL REGISTER,PWM mode active-high // PWM Period = [(PR2) + 1] * 4 * Fosc * TMR2PrescaleValue // Pulse Width = (CCPR1L:CCP1CON<5:4>) * 4 * Fosc * TMR2PrescaleValue // Duty Cycle Ratio = Pulse Width / PWM Period // Resolution = log[4(PR2 + 1)] / log(2) [bit] /* 割り込み許可 PIC12F683 Data Sheet による */ PEIE = 1; // Peripheral Interrupt Enable bit GIE = 1; // Global Interrupt Enable bit /********* メインループ **********/ while(1) { } } OSC1/OSC2の状態 上:OSC1、下:OSC2 OSC2がちょっと歪んでいる。
cf564e46.jpg
わかりやすくするため、CH2の極性を反転して合成。
4660fc98.jpg
配線を改良し、浮遊容量が極力小さくなるように工夫したつもり。 効果は微妙www。
b7ba0a50.jpg

CCP1出力の状態。 完璧です。
682fc3e1.jpg
※謝辞 本稿を執筆するにあたって、参考にさせていただきました。ありがとうございました。 セイコーインスツル株式会社 発振回路の設計について 電子工作の実験室 クロック発振回路の考え方

TEA2025Bを使った2.1chアンプの制作(その3)

設計してみた。

電源部のトランスとスイッチ、コネクタ類は流用である。あと、LEDもそのまま流用。
バルクコンデンサC1だけでは電源のリプルが取り切れないので、定電圧レギュレータを入れる。
レギュレータには低損失のものを使い、実際に負荷をかけながら、リプルが出ないギリギリを狙って電圧を上げてみようと思う。
これでハム音とも完全におさらば出来るはずだ。
9dafedfa.jpg


入力フィルタは以前の実証実験のとおり。
クロスオーバー周波数は90~100Hzとして、フィルタで落ちる電圧はアンプのゲインでカバーする。
入力はメインアンプのサブウーハー出力から取るので、VR10はほぼ最大で使うことになるだろう。


アンプICはモノラル(ブリッジモード)で使用する。
参考にさせていただいたのはデータシートとこちらのページ。
JKP's ROOM さま TEA2025B ミニ・ステレオ・アンプ
68636b2d.jpg


ライン入力時は1kΩ」程度(=26db)がおすすめだそうだ。
データーシートによると、アンプのゲインは次の式で提供されるそうなので、抵抗は可変抵抗にして微調整出来るようにしておこう。
e68f221f.jpg


さて、うまく動くかな?
(次回は実際に制作します。) 続きを読む

TEA2025Bを使った2.1chアンプの制作(その2)

GX-20AXがいいかんじに仕上がったので、この計画そのものに継続する価値があるかどうか疑問ではあるのだが、アンプICを始めとした部品が余ってる 揃っていることだし、サブウーハーのアンプに特化する方向で継続することにした。

で、パソコンで手軽にスペクトル分析が出来るようになったので、今回は再度ローパスフィルタの習作を行ってみた。
音源は10-24kHzのサインカーブスイープ(-10db)+iPhoneSE

RC一段のローパスフィルタで構築してみた結果


C10=0.1μF
フィルタの効きが悪い。
音量を上げると普通にボーカルの声も聞こえてしまう。
4bbe462d.jpg


C10=0.15μF
やはりイマイチ。
376201be.jpg


C10=2.2μF
これはやり過ぎ。
71fcc89a.jpg


もうちょっと急カーブで中音域以上をカットしたいので、RC二段のローパスフィルタで構築してみた結果。


Cの容量は図面の通り。
そうそう、こういう曲線が欲しかった。
流石にレベルが落ちているが、この程度ならアンプのゲインでなんとかなりそう。
4c8c9803.jpg


カットオフ周波数が調整できたほうがいいので、現実にはこのような回路がよいのではないかと。


次はアンプも含めて設計します。 続きを読む
記事検索
月別アーカイブ
プロフィール

かずい

QRコード
QRコード
  • ライブドアブログ