« 周波数カウンターの製作 | メイン | LDG KT-100の改造(マイコン) »

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に戻る