AM受信機 Feed

2018年8月12日 (日)

50MHz AM受信機 (DSPラジオ)

<カテゴリ AM受信機 >

50MHzのAM送信機が出来ましたので、これとペアで使用する50MHz用AM受信機の製作です。

すでに7MHz用として、1KHzステップ可変のDSP受信機がありますので、これを親機とするクリスタルコンバーター(クリコン)をこのDSP受信機の中に内臓させる事にします。 DSP受信機は30MHzまで1KHzスパンで動作しますので、手に入る水晶振動子できりの良い32MHzを選定し、IF周波数が18MHz台となるクリコンにします。

このクリコン部分の配線図です。 50M_clicon.pdfをダウンロード

一般的にはシールドケースのかぶったインダクタンス可変式のトランスを使いますが、最近はほとんど入手不可能です。 生産はされていますがMOQ 10,000個とかの条件がつきますので、販売店もリスクが大きすぎるのでしょう。 そこで、現在量産中のチップインダクタと表面実装用トリーマーでこれを実現する事にしました。 これらの部品はRSとかDigi-keyで少量でも入手できます。

まずは、BPFの計算です。 ここで計算しました。 TKS.

50m_bpf_2

左は、チップインダクタとトリーマーで構成した50MHz用BPFです。 BPFの計算で、低いカットオフ周波数と高いカットオフ周波数を指定しますが、中心周波数がバンドの真ん中にくるように設定すると、インダクタンスの値が量産品のE12シリーズに一致しなく、かつ、全ての値のインダクタを手持ちしている訳では有りませんので、手持ちのインダクタが使えるようにこのカットオフ周波数を調整します。

手持ちのチップインダクタに1uHが有りましたので、これを使い計算した定数でBPFを作りました。

50m_bpfadj_3

アンテナアナライザをSSGの代用として、出力端にオシロをつなぎ調整する事にしました。

ところが、トリーマーを回してもピークポイントが見つかりません。 しかも挿入ロスが20dBくらいあります。 このインダクタの仕様を再確認すると、Q無管理品で、コイルのQが必要な場合、Qを管理したインダクタを使うようにとコメントがあります。

サイズが3216でかなり大きなチップインダクタでしたので、QはOKと考えたのですが、使用しているフェライトコアが50MHzまでは対応していないようです。

この1uHインダクタと同じメーカーでQがmin 30と管理されている太陽誘電製のインダクタLBM2612Tタイプを幸いにも手持ちしておりました。 手持ちしていたのは1.5uHのコイルでしたので、再度計算をやり直し、実装した結果、アンテナアナライザの周波数を可変し、その出力をオシロでみている限り、周波数特性は一応50MHzのBPFとして実用レベルであり、挿入ロスも6dB程度である事を確認できました。

IF周波数が18MHz帯ですので、このバンドのBPFも同じように作成しましたが、入出力インピーダンスの関係で直列共振回路によるBPFはうまく行かず、ミキサーの出力は18MHzのタンク回路と2次コイルによるトランス形式の回路としました。 トランスはカーボニルコアに0.28mmφのUEWを22ターン巻いて約5uHのインダクタンスを確保した後、2次側は5ターンとしてあります。

Cliconspeana

ミキサーは定番のジャンクションFET 2SK241ですが、最初、ソース抵抗の最適値と局発の出力レベルの最適値を探す為、オシロで波形をモニターしていましたが、周波数変換された18MHzのレベルが良く判りませんでした。 そこで、IF出力にスペアナを接続し、18MHzのレベルが最高になるよう定数を選定した結果が左のスペクトルです。

32MHzが局発レベル、50MHzが入力信号、18MHzがIFレベルとなります。 また、14MHzは局発の32MHzとIFの18MHzの差分で生じたイメージです。

18MHz以外の不要信号はDSPラジオの内臓フィルターで除去してもらう事にします。

Cliconpcb

左は、クリコンの全体構造です。 入力は右側の50MHz BPF側から加えられ、左側のトロイダルコアと、20Pのトリーマーで18MHzに共振させた後、18MHzのDSPラジオに繋ぎます。 中央上に32MHzの水晶発振回路、それに7MHzと50MHzを切り替えるPINダイオード回路と、マイコンからのクリコンON/OFFのコントロール信号により、全体をスイッチングする回路も実装しました。 PINダイオードは大量に手持ちしているインフィニオン製を使いましたが、ここはロームの1SSxxxでも使えると思います。

これを7MHz用AM受信機の基板上に実装した上で、PICのソフト変更を行わないと50MHzを受信しているのかも判りません。

DSPラジオの基板にこのクリコンの基板を2重構造で張り付けますが、DSPラジオの基板の裏側もクリコン基板の裏側も銅箔をべったり貼り付けてありますので、両方の銅箔を真鍮のボスとビスで導電的に結合しました。

50mrx_pcb

50mrx_inside

全体の配線図 DSP_50M_RX.pdfをダウンロード

次は、PICマイコンのソフト改造です。

一番の問題は、周波数を表示する文字フォントが大きすぎて、5ケタの数値を並べられないことです。 クリコンのハードをコントロールするソフトは簡単に改造出来るのですが、周波数を表示する為に一回り小さなフォントを作るのが最大の問題でした。

このフォントデータの生成器は以前アンテナアナライザの開発のとき、GIF画像をベースに自動生成するプログラムを作ってあったのですが、取説が有る訳でもなく、このTcl/TKのプログラムの復習からせねばなりませんでした。 操作案内は無く、作るフォントサイズやGIFデータの条件によりいちいちソースを手直ししながら操作する必要があるみたいで、GIF文字データを何度も作り代え、やっとフォントデータはできましたが、DSP受信機のプログラムで動かすと、まともに文字が出ません。 結局判った事は、フォントのX方向のピクセルは、8の倍数か8以下でなければ、うまく表示しないという、LCD表示ソフトのバグでした。

フォントコードジェネレーターにはバグは有りませんので、今回使用したソースを公開しておきます。

フォントコードジェネレーターCcord_Generator5.tclをダウンロード

コードジェネレーターがGIF画像を読み込んだ状態のPC画面を添付して置きます。 0から9まで数字の後にスペースの部分がありますが、サンプルでは見えませんね。(スペースだから見えている?)

Fontgeneratorsmpl

バグの原因が判りましたので、バグを修正し、正しく文字が表示されるようソースコードを修正しました。 文字が表示できるようになると、50MHz受信機はあっと言う間に完成してしまいました。

完成して、その感度をFT450と比較すると20dBくらい感度が悪そうです。 そこで、50MHzのBPFの後に非同調のRFプリアンプを挿入しました。 このデュアルゲートFETのゲインは約20dBくらいです。

50mhzrx1

50mrxlcd

 

左上は動作確認中の50MHz AM受信機です。 右上は、アンテナアナライザからATTを介して信号を加えた時のSメーターの振れです。 同じようにFT450へ信号を加えるとSメーターはS9+30dBくらいまで振ります。 Sメーターの感度は自作が勝りますが、実用感度はFT450の方が良さそうな感じです。

自作の送信機にダミロードをつなぎ、音楽を変調したおこぼれ信号をこの受信機で受信すると、ブツブツと小さなノイズがでます。 信号強度がS5から9くらいの時が一番大きくなります。 原因はマイコンとDSP間の通信によるノイズです。 以前FM受信時でもあったノイズでこの時の原因はSメーターのデータ転送のノイズでしたので、FM受信の時だけはSメーター駆動を止めた経緯があります。 7MHz受信時はほとんど気になりませんでしたが、50MHz帯ではFMのときより大きなノイズとなっています。 原因は、DSP基板から出ているハーネスにノイズが乗っており、これをクリコンが拾うもののようです。 ハーネスを束ねたり、ケースの底に押し込むと少し改善しました。 

スピーカーに接続される線に50MHzか18MHzの成分のノイズが乗っているようで、この線を動かすと、ノイズが増えたり、音量が変化します。 MWや7MHzでは異常は起こらないのですが、50MHzの時だけ起こります。 狭い空間にシールドなしでクリコンが同居していますので、対策としては、スピーカーケーブルを2芯シールドに変更しました。 この対策でスピーカーケーブルを動かしてもノイズや音量に変化はなくなりました。

プリアンプ付の回路図DSP_50M_RX2.pdfをダウンロード

残念ながら、完成したこの日の50MHzは実際のAM局はおろか、SSBの局すら聞こえませんでした。

ちゃんと使えるのか心配ですね。

AM_RX50MHz.cをダウンロード

fontF50.hをダウンロード

Font7.hをダウンロード

50MHzの受信が便利なように、ラスト状態をメモリーし、次に電源ONした場合、バンド、周波数、ボリュームレベル、IFバンド幅が復元するようにソフトを改造しました。  また、激しいQSBやオーバー変調の信号を聞くと、パチパチノイズが連続して、了解度が落ちるのを少しでも改善する為、DSPのAM AGCのパラメーターを少しいじっています。

以下、改善部分の関数です。

void DSPinit() {
    unsigned int Rdata;

 writeDSP(0x04,VOLUME);
 writeDSP(0x05,DSPCFGA);

 writeDSP(0x0F,RXCFG);

    writeDSP (0x2E,SOFTMUTE);
    Rdata=readDSP(0x22);
//    writeDSP(0x22,(Rdata & 0xFCFF) | 0x0200);
    writeDSP(0x22,(Rdata & 0xF0FF) | 0x0200);
    Rdata=readDSP(0x0A);
    writeDSP(0x0A,Rdata & 0x0400);
    Rdata=readDSP(0x22);
//    writeDSP(0x22,Rdata & 0xF3FF);
    writeDSP(0x22,Rdata & 0xF0DF | 0x0240);
//     Rdata=readDSP(0x23);
//    writeDSP(0x23,Rdata & 0xE3FF | 0x1C00);
    Rdata=readDSP(0x3F);
    writeDSP(0x3F,(Rdata & 0xFF88) | 0x0013);
}

全体のソフト AM_RX50MHz_lastmemory.cをダウンロード

2018年11月の日曜日にFT450にて50MHzをワッチしていると、50.53付近でAMの信号が聞こえます。 RS52くらいです。 広島市の局らしい。 これは幸いと、このDSPラジオをONして聞いてみました。 残念ながらRS31です。 ゲインがまだ足りないようですので、ゲインアップの対策を行う事にしました。 50MHzのBPFの後にFETの非同調アンプを設けていますが、これを同調アンプにして10dBくらいのゲインアップになるように改造します。 ところが、ゲインが上がり過ぎ発振してしまいますので、同調回路にQダンプの抵抗を入れ、同調した時の最大感度でも発振しないようにしました。 アンテナアナライザとATTで確認した結果では6dB以上は感度アップしているようです。

当然、この改造が終わったころには、またしてもAMもSSBも聞こえませんので、改善したかどうかは判りません。 次の機会を待つしかないですね。 

改造後の配線図です。 DSP_50M_RX2A.pdfをダウンロード

2019年1月

約10Km離れたローカル局に協力頂き、AM 2way QSOが成功しました。 相手局は40Wキャリアにて59+10dB、私の方は8Wキャリアにて57でした。 受信音は正常で、ゲインも十分という事を確認できました。

この受信機は7MHzも使用できますので、このままにしておき、50MHzトランシーバー用DSP受信機を新たに作る事にしました。 こちらをご覧下さい。

INDEXに戻る

2016年7月16日 (土)

DSPラジオ(7MHz AM用)

<カテゴリ AM受信機 >

オールソリッドステートのPWM方式AM送信機が出来ましたので、これとペアで使うAM専用受信機が欲しくなってきます。 昔は高1中2のスーパーを筆頭に1V1とか0V1とか超再生の受信機も人気がありましたが、今作るのなら、はやりのDSPでしょう。 ということから、DSPラジオ用チップを入手して、なんとか、7195KHzのAMの交信が聴ける受信機が出来ましたので、紹介する事にします。

Dsp_rx0

Dsp_rx_lcd

上が、DSPラジオの全体構成です。 タクトSWとLCD部分は既成の基板を糸ノコで切り取って使っていますが、メインのDSPチップとPICマイコンは左側の蛇の目基板の中です。

左は、7195KHzを受信した時の表示で、VOLレベルが22(最大31)、Sが71dBuV(S9+31dB)、 IFバンド幅12KHz(4,8,12KHzを選択可)です。

LCDは160x128のカラーTFTです。後日、Sメーターをグラフ表示する事にします。

Dsp_rx_pcb

DSP IC はKT0915という中国製です。このICはFM,MW,LW,SWをカバーします。 SSOP16というパッケージですので、変換基板が必要です。 手持ちの20Pin用をつかいましたが、ICを販売しているaitendoで専用変換基板も扱っていますので、これを手配すべきだったと後悔しています。

周波数スパンは、AMについては1KHzまで対応していますので、7MHzのAM受信用ならなんとか使えます。 このICの出力は16Ωのヘッドホーン用のアナログ出力ですので、これをPWMパワーアンプで2Wまで増幅し、4Ωのスピーカーをドライブします。 PWMパワーアンプは秋月で入手したPAM8012という基板付のチップです。 ICの出力端に直接スピーカーをつなぐ事もできますが、SW受信時にノイズになる可能性が大きいので、チップコイルとチップコンデンサでLPFを作りスピーカーにつないでいます。 実際の使用状態でスピーカーのリード線を動かしてもノイズは変化なしです。 このDSPチップをコントロールするのはPIC24FV32KA302という16bitのマイコンです。 ソースコードはKT_AMFMdrv.cというファイル名でNET上にアップされていますので、それを参考にしながら、作成しました。 特にAMモード時の音声歪は、このソースコードがないと対策出来ないようです。なぜなら、データシートに出てこないアドレスのレジスタを書き換えていますので。

また、AMの周波数を設定するレジスタ(アドレス0x17)の15bit目を1にしないと、設定した周波数の受信はしてくれません。(データシートには0としか書いていない)

IFバンド幅を選択できるようになっていますが、その帯域は2KHz,4KHz,6KHzとなっています。しかし、この数値はオーディオの帯域幅で、通信型受信機で言うIFバンド幅は上下側波帯を含む帯域ですから、表示的にはこの2倍の数値としています。

信号強度はdBmで表示できるように計算式が提示されていますので、これを一般的なdBuVに換えてあります。 内部雑音の影響もあり、17dBuV以下は表示しません。 完成度が上ってきたら、この数値表示は止め、バーグラフのSメーターに変更しましたので、この状態のソースコードは有りません。

当初、7MHzオンリーの受信機にするつもりでしたが、DSPの制御の仕方を勉強していると、最初にFMが動作可能となってしまいましたので、FM,MW,7MHzの3バンド仕様としてあります。ただし、MWはバーアンテナが有りませんので、外部アンテナとしてロングワイヤーをつながないと聞こえません。

回路図 DSP_AM_RX1.pdfをダウンロード

I2Cの制御プログラムはPIC24Fの汎用として、NET上に公開されているものを利用しました。 この関数を使って実際にDSPチップに書き込んだり、読み出すプログラムはKT0915のデータシート通りとしました。 LCDの駆動は当ブログのLCDアナログメーターのプログラムを移植しました(元プログラムは未公開)。 使用しているフォントはアンテナアナライザーの自作のソフト(未公開)からの流用です。

実際に使用した結果、発見された問題点は以下です。

・S9+70dBくらいのアンテナ入力を入れても音声の歪は有りません。 いくら強入力に強いと言っても、送信中の過大入力からDSP ICを保護する為、ダイオードによるリミッターを実装してあります。

・送信機が過変調となると、パチパチと言ったおおきなデジタルノイズが聞こえます。

・感度がイマイチですが、プリアンプを入れてもS/Nが悪化するだけなので、現状とします。

・AMの受信中に大きなノイズが入った場合、AGCのリカバリタイムが恐ろしく長い。 色々調べましたが、対策案無しです。もし、この現象が起こったら、電源SWをOFF/ONしてDSPをリセットすると直ります。

・無信号状態からいきなりS9+40dB以上のキャリアが入力されると、「ガー」と言った異常音が0.5秒くらい発生します。 多分AGCが段階的に効いていく途中のデジタルノイズなのでしょうが、通常のラジオとして使う場合、全く問題にはならないですが、通信の時は、相手が相当強力な信号なら、送信開始する度に発生しますので、いやなノイズです。

実際に7195KHzをワッチした感じは、変調のピークでパチパチ音が入る事以外、了解度は比較的良好です。 TS-850の6KHzフィルターの了解度を100とすると、このDSP受信音は8KHzフィルターのとき、    90くらい、12KHzのとき、95くらいです。 感度が悪いのが、かえってS/Nを良くして、S9以上の信号なら、DSPの方が了解度が良い事もあります。 ちなみにTS-930のAMモードは70くらいですから、TS-930よりはかなり聞きやすいです。

変調のピークでパチパチと言うのは、AGCの状態が変化するようなキャリアレベルの変動が有った時に、ゲイン切り替えを行いますが、この時に発生するノイズではないかと推測されます。 従い、一定のキャリアレベルが継続しないSSBを聞くと、当然モガモガで復調はできませんが、パチパチノイズが発生しっぱなしになります。 しばらく7195KHzをワッチしていると、パチパチノイズが異常に発生しているAM局が結構います。 このパチパチノイズがある局をTS-850で聞くとかなり歪んだ音です。 オーバー変調の局がすぐに判る恐ろしい受信機になってしまいました。 ちなみに、きれいな変調をかけている局は大きな声を出しても、不思議とパチパチノイズは発生しません。

また、深いQSBがあると、例え放送局の信号でもパチパチ音が出るようです。

Smeter

Sメーターをバーグラフタイプに変えてみました。 TS-850のSメーターを見ながら実験的に合わせこんだもので、計算された信号強度とは合致しませんが、良しとしました。 バーグラフの分解能は2ドット単位となっています。

ただ、問題もあります。周波数を変更した場合、そのショックノイズでバーが最大レベルまで振れてしまい、非常に目ざわりです。 音声は、MUTE対策をしてあり、音としては聞こえませんが、この信号強度を表すデータは野放しのようです。 そこで、周波数を変更した直後はSメーターを更新しないようにし、信号強度の数値が安定したころにSメーターを駆動開始するよう、ソフト的に対策しました。

ハードによるスタンバイSW機能を付けていますが、ここをGNDに落として受信機をMUT状態にすると、Sメーターがフルスケールになります。 この辺も、まさかSメーターを付けるとは考えていないDSP設計でしょうから、Stand-byになったら信号強度を示すデータをゼロにセットしてメーターが振れないようにしました。

このStand-byから復帰したとき、DSPの内部処理がデフォルトに戻る部分があるようで、Sメーターの指示が変わったり、ノイズが増えたりします。そこで、復帰した直後にDSPを再度イニシャライズし、バンドや周波数をStand-by前の状態に復帰させています。

セットを金属ケースに収納し、ノイズ対策の為、デジタル回路とアナログ回路を分離したところ、反対にノイズが増えました。 今まではデジタルノイズでAGCがかかり、それなりにゲインを抑制していたので、目立たなかったのですが、ノイズ対策をしたら、かえってDSPとPICが通信する時のノイズが気になるようになりました。 そこで、一番ノイズが大きかったSメーターのデータ転送を、FMモードのときのみ禁止しました。 ただ、FMモード時Sメーターが振れないのも寂しいですから、FMモードに切り替えた時、もしくはFM周波数の変更が有った場合のみ、数秒間だけSメーターデータを読み出して表示させ、これを保持させています。 MWやSWの時は、もともとノイズが多くてあまり気になりませんのでMAINルーチンが1周するごとにSメーターデータを更新しています。

次に、音量の調整も変化が有った時のみDSPへデータを送信することにしました。

最新のソースコードです。 AM_RX2.cをダウンロード (2017/1/9 修正)

フォントデータ2種類です。Font7.hをダウンロード  fontF.hをダウンロード

Am_rx_front

Am_rx_back_2

Am_rx_top

上の画像は左から、フロントパネル、バックパネル、トップパネルです。

リアのMコネクタは7MHz、MW用、赤の端子はFM用です。

実際に固定運用でQSOに使ってみましたが、パチパチノイズには閉口しました。 このノイズで了解度が落ちます。 そこを必死で聞き分けようとしますので、非常に疲れます。

移動用の簡易受信機くらいにしかならないですね。  現在はローカルのFM放送受信用としています。

2017年2月

最近、7195KHzを受信していると、綺麗に変調をかけている局との交信は例え深いQSBがあっても了解度が下がるわけでもなく、実践で使えます。 将来、トランシーバー化する検討をする事にします。

2018年1月

Sメーターの信号レベル定義を見直し、景気よく振れるようにソフトを変更しました。

AM_RX3.cをダウンロード 

2018年8月

この7MHz用受信機にクリコンを内臓させ50MHz受信を追加しました。 この50MHzを追加したソフトで、パチパチノイズを完全では有りませんが、かなり改善出来ています。

INDEXに戻る