nobcha23のエアバンド受信機自作ブログ DIY airband receiver BLOG

エアバンドレシーバーキットの組み立て、改造を手掛けます Assemble and remodel Chinese airband receiver kit

R909-DSP1の操作についてまとめてみた

R909-DSP1の操作ですが、今までSi5351aをArduinoで制御するVFOと言う位置づけから始まりました。操作のスタイルとして、ロータリーエンコーダを前提として、クリックアンドローテートと言うのが基本になっています。

 

R909-DSP1 ケースイン前

 

 

ロータリーエンコーダのスイッチをプッシュしたら、MODE選択に入ります。最新のスケッチでは、MODE表示が白黒反転します。ロータリーエンコーダでMODE選択が行われ、次にスイッチをプッシュすると該当のMODEに入ります。

 

各MODEではロータリーエンコーダでパラメータとか設定番号を増減します。

 

画面の説明

 

ロータリーエンコーダのスイッチのダブルプッシュに意味があって、該当のパラメータなどをEEPROMに記憶する機能です。MEMの時は該当のメモリーチャネルに表示されている周波数が記憶されます。SCAの時は自動スキャンニングモードになり、メモリーされているチャンネルと順次受信していきます。

 

いろいろな機能について資料にまとめました。参考まで。

 

R909-DSP1操作フロー説明図

ちょっと古い動画ですが、基本的な操作について紹介しております。

自作エアバンド受信機:エアバンド受信機の「周波数ズレ」を解消!アナログキットをデジタル局発(Si5351等)で近代化・安定化します - YouTube

PC版のSINAD/THDインディケーターでR909-DSP1受信機を評価

デジタルSINADインディケータはESP32-C3のADCノイズ問題を抱えているため性能いまいちです。と言うかちょっと使い物にならない。

そこで、AIに頼んで、該当スケッチをPYTHONに移植しました。大きな違いはESP32-C3の替わりにPC標準オーディポートを使う事ですね。で、結果はと言うと、118.1MHzで12dBSINAD点では-96dBmでした。

PC-SINAD/THDインディケータでの入力信号波形画面

(SGなどの値は画像への追加書込みです)

PC-SINAD/THDインディケータでのFFT画面

(SGなどの値は画像への追加書込みです)

 


ESP32-C3のSINAD/THDインディケータでは-92dBmで12dBSINADだったので、ESP32-C3内部のノイズ影響は6dB(感度4倍)もあり、結論としてはESP32-C3使用SINAD/THDインディケータの試作は失敗だったということになりました。

ESP32-C3 dev kit super miniという切手サイズCPUモジュールで音声信号処理のLチカ的なお勉強ができたのが成果と言うことになります。そして、スケッチはPYTHONに移植してPCで当初目論見のSINAD/THDインディケータの試作ができました。

次の試作はCPUをRaspberry PIE PICOに替えたらどうなるかというターゲットを考えています。こちらも切手サイズのRP2040 Waveshareと言うモジュールがあるのでまずはR909-DSPシリーズコンパチのPANEL部制御基板を設計する予定です。

 

次の出番は RASP PP Waveshare 基板

 

SINAD/THDインディケーターでR909-DSP1受信機を評価

TA2003+Si5351a+Si4732+LM386+ATmega328Pと言う構成のR909-DSP1エアバンド受信機を作り、更にSGA2851+TA2003+Si5351a+Si4732+TDA2822+ESP32-C3と言う構成のR909-DSP4エアバンド受信機のデバッグ中です。

 

こうしたDIY受信機の感度測定をtinySAのSG機能組み合わせるためデジタルSINADインディケータを設計試作しました。そして、R80エアバンド受信機の実験をきっかけにTHD(歪測定)も追加しSINAD/THDインディケータとしました。

 

ESP32-C3のADCノイズ問題を抱えているため性能いまいちですが、大体出来上がったので、まずはR909-DSP1エアバンド受信機を使い感度測定やってみます。

 

周波数118.1MHzで1000HzAM変調80%、-92dBmで12dBSINADになりました。変調30%だと12dBまでSINADが上がりません。ESP32-C3内部ノイズの影響だと思います。

 

R909-DSP1 感度測定

 

それでSi4732がどの程度まで受信信号に反応するのだろうかとRF信号レベルを下げ、FFT表示に1000Hzスペクトラムが現れ始めるレベルを見てみました。-109dBmと言うことです。

Limit

 

このSINAD/THDインディケータはデジタル方式なので、10kHzバーストサンプリング512点を取得後、IIR関数のノッチフィルタで1000Hzをカットし、(S+N+D)/(N+D)=SINADを計算します。FFT機能も内蔵しており、THD(歪率)も測定できます。表示機能としては入力/ノッチ後の波形表示、FFT表示内部パラメータ表示なども可能になっています。

 

受信復調信号アナライザみたいな出来上がりになりました。SINAD値の方は、ESP32-C3内部ADCノイズ影響があるので、ちょっと使いものになりません。そこでプラットホームを変えて更に試作実験を進めようとしています。まずはPC環境でPYTHONに移植してみようと思います。つぎにはRaspberry PIE PICOでやってみるかと思っています。

 

なお本試作の基板はPCBGOGOの協力で作成しました。GITHUBに公開しているガーバーデータはPCBGOGO対応になっています。

 

【航空無線】 中国中国製エアバンド受信機キットの歴史をたどってみました

AliexpressやAmazoneなどで3000¥ぐらいで売られているエアバンド受信機キットのルーツ探しです。色々な先輩ブロガーさんなどから「中華エアバンド受信機キット」と言う呼ばれてますが、さてそのルーツは。

中国製エアバンド受信機キット



調べてみると少しイメージが違ってきたので、まとめておいた方が良いかと思い、ブログ記事にしました。

 

中国製キット先駆けは套件之家(Sweat House)と言うメーカのようです。2000年ぐらいから供給していたようです。(今はR20、R60,R80とデジタル局発シリーズを出しています。)ところが、調べるとその前に米国の自作キットサプライヤから発売されています。そして、さらに少し詳細設計の違うものが前にありました。更にその前、ARRL誌に掲載されたようですが、記事までたどり着いていません。

 

結局、NE602,MC1350を使いLM358でAGC制御する構成でこれが一番オリジナルかと思うのが、ARRL誌への記載記事のようです。そういえば、どこかのフォーラムでこのキットを名指しで、「何が中華製キットだ、元はアメリカの設計だよ」と書き込みがあったのはこのことだったと思い当たりました。

 

このキットにはずいぶんお世話になりました。まずは、組み立て、次に局発改造することにし、PIC/Arduino+Si5351aと仲良くなり、初段フィルタの定数を勉強したり、スケルチ改良とかの題材になりました。更には、その時作ったVFOを元にSi4732をくっつけ、R909-DSPシリーズができました。

そこで、今回は歴史どうなの?と、ググった情報をまとめます。このNE602A+MC1350+LM358+LM386構成のエアバンド受信機の歴史は大体、こんな感じかなと言うところが次です。

 

・米国ハムがARRLに投稿?(記事迄まだたどり着けず)
・Reviewed in January 1991 “Kitplanes” magazine
 RF-TR-NE602A+IF-TR+MC1350+LM358+LM386


・Source: "Electronics Hobbyist Handbook", Spring 1994. Copyright © Fred Blechman (K6UGT) and Gernsback
 Publications, Inc. 1994. (Gernsback Publishing is no longer in business).
 2SC2498-NE602A-2N3904-MC1350-LM358-LM358-LM386(AGC部強化)
・2000年?ごろRAMSEY ELECTRONICS, INC. (NY)がキットにして供給
・Vectronics社(MS)がVEC-131Kとして供給


・中国の套件之家:Sweat HouseからCOPY?キット供給( 空芯コイル、可変C)

・中国の套件之家:Sweat HouseがPCBパターンコイル版を供給(商標もコピーかも?)
・中国の火鎚之家がPCBパターンコイル版を供給 @2015

 

なお、現在の中国製エアバンド受信機キットの中心は套件之家(Sweat House)社のR20,R60,R80シリーズかと思います。いやeBAY界隈ではPCBパターン版が売られてる。

R80組立中

 

 

【航空無線】PCBパターンコイルの初段フィルターは使い物にならない(中国製エアバンド受信機キット)

結論はやっぱりイタリアのHAMが言った「空芯コイルに替えるべき」でした。

中国製エアバンド受信機キットの歴史ですが、フィルタのコイルの件にも関係するので、機会あれば調べて紹介したいと思います。ここで手身近に言うと、元々米国の雑誌掲載回路がキット化された。それが流れて中国メーカがコピーし、キット販売で人気出た。更に中国メーカの中でもコピーされ、今生き残っているバージョンは初段の帯域フィルタがプリント基板の渦巻きパターンになっています。
#3種類のフィルタ部写真

初段フィルタの違い


初期のバージョンでは初段フィルタは空芯コイル、可変コンデンサでした。次には空芯コイルと固定コンデンサに替わり、今は基板のプリントパターンのコイルになっています。はじめ買ったのが空芯コイルと固定コンデンサで、調整なしでも通過特性測ったらなかなか良い特性でした。
#nanoVNAで測った空芯コイルタイプの通過特性

空芯コイルフィルタの帯域特性

 

もう一台作ろうと思い買ったのが、プリント基板の渦巻きパターンのものでした。組み立てて調整しようとして、何だが感度が悪いのに気が付きました。そして、初段フィルタの通過特性を調べたら、全く使い物になりません。この方式では調整代がありません。このバージョンが出た当座、どこかのFORUMで帯域がずれてると話題になっていたようだという噂を聞きました。
#PCBコイルの通過特性オリジナル

PCBパターンコイルの初段フィルタの帯域特性

 

 

それで、得意の試行錯誤で何とかならないかとコンデンサの値を変えたりいました。更にコンデンサを渦巻きパターンの上に寝かせるというアクロバットをやってみて帯域内のあばれが少し緩和されました。でも通過損失が多いので、もともと感度が悪いのにこれではちょっと使いもにならないとジャンク箱に入ってました。
#PCBコイル、修正後の通過特性改良

コンデンサ倒しで帯域特性を改善?

 

最近思い出し、何とかならないかと調べることにします。nanoVNAでPCBパターンコイルのインダクタンスを測ろうとすると、小さい方のループは60nHと言う値ですが、大きい方はキャパシタンスになり、100MHz付近に自己共振点があります。そこでやっと気が付きました。誘電率が3以上もある基板の上でパターンをぐるぐる10cm近く這いまわすとストレー容量が効いて単なるインダクターではなく、LC回路になっていたんですね。それで、コンデンサ倒しではストレー容量変動で自己共振周波数が移動し帯域位置に変動があったのだと推定します。


100MHzぐらいならパターンコイルは集中常数回路だと思っていたのは大間違い、誘電率3で、ぐるぐるパタンはそれだけでLC回路になってました。

AIさんにどうですかと聞いてみました。
誘電体損失(FR4のtanδ≈0.02)
→ 高周波で寄生容量を通じて並列コンダクタンスとなり、等価直列抵抗(Rs)を増加させる。
表皮効果による導体損失
→ 130MHzで銅の表皮深さは約5.7µm。パターン厚が18µmでも実効抵抗は直流より増加。
寄生容量の過大
→ ターン間容量および基板グランド面との容量がSRFを低下させ、使用帯域でインダクタ特性を損なう。
磁気結合による渦電流損失
→ グランド面が近い場合、磁束が導体に渦電流を誘起し、損失を増加させる。
これらの要因が複合的に作用し、小さいインダクタではQ≪1、大きいインダクタではSRF(自己共振周波数)が使用帯域内に落ちるという結果を招きました。

と言うことで、PCBパターンコイルはインダクタでなくQの低い共振回路、それも使う周波数より低い自己共振点を持っていたので、使いものにならないという見立てです。

「渦巻きストリップライン」は、

1.分布定数線路の位相特性(長さが波長に対して無視できない場合)
2.隣接セグメント間の電磁気結合(MとCm)
3.基板の誘電体・導体損失
の3つを同時に考慮しないと正確に解析できない「結合分布定数回路」です。

このため、単純な「インダクタ」として扱うには限界があり、高周波では期待したQやSRFが得られない

 

ずいぶん遠回りをしましたが、中国製エアバンド受信機キットとしては、パターンぶった切って、空芯コイルにしないと使い物にならないという事です。空芯コイルへの入れ替え作業とその結果については別途報告することにします。

デジタル化した中華エアバンド受信機キットの操作面

 

【航空無線】Arduinoを利用し中国製エアバンド受信機キットの局発をデジタル化する(デジタルVFO部)

AliexpressやAmazoneなどで3000¥ぐらいで売られているエアバンド受信機キット活用についての解説の続きです。作っては見ても、使いづらさのためジャンク箱に眠っているではないかと言う切り口でRedditに記事を書いてみました。数日でPVが3000ぐらいになったので、この際、話をもう一度詳しくまとめておいた方が良いかと思って、ブログ記事をまとめる事にしました。そして、今回はデジタルVFO部の基板作りとケース組み込みの説明です。
#JBの中、エアバンドキット基板

ジャンクボックスに眠るエアバンド受信機キット基板

 

Arduinoを使って局発を安定化し、更にいくつかの機能を追加します。この受信機の用途は近辺空港の発着陸時あるいは上空通過時に行われる通信モニター用ですよね。そのため、欲しい機能は決められた複数チャンネル周波数での待ち受けかと思います。正確な待ち受け周波数と静かな待ち受けができるようにしようという改造です。

目指すデジタル化受信機の構成は次のブロック図のようになります。
#VFO_PCB_BD.jpg

回路構成

 

さて、必要なデジタル局発ですが、ArduinoによりロータリーエンコーダーLCD表示を使いSi5351aを制御します。ArduinoはProMiniあるいはAtmega328Pのどちらかを使えるようにしました。Si5351aはモジュールを使用します。(Atmega328PにはArduino UNOのローダが書かれていることが必要です)
#VFO_PCB_ASSY.jpg

こんな基板を使います

 

VFO部の回路図とBOMは次の通りで、KiCADで設計しました。この次に試作する予定だったSi4732受信機局発部デバッグ基板として作成したので、基板サイズなどはケースへの収納を意識したものではありません。

http://chitose6thplant.web.fc2.com/R909/5531_debug_panel_scm.pdf
https://github.com/Nobcha/R909-SDR/blob/main/5531_debug_panel_scm.pdf

http://chitose6thplant.web.fc2.com/R909/5531_debug_panel_bom.pdf
https://github.com/Nobcha/R909-SDR/blob/main/5531_debug_panel_bom.pdf

また、基板製造メーカに作成依頼した基板のガーバーファイルは次になります。
基板はPCBGOGOに手配しました。 
http://chitose6thplant.web.fc2.com/R909/5531_debugPanel.zip
https://github.com/Nobcha/R909-SDR/blob/main/5531_debugPanel(3).zip

基板の組み立てですが、SMT実装のR/C/TRなどから実装し、続いてDIP、コネクタなどを実装します。

ケース組み込までに必要な部品類を次のリストにまとめました。
#全体部品リスト,

必要部品類


 

harness list

必要な配線リスト

 

LCDはケースに穴をあけて取付、ワイヤ配線を行います。Arduinoはソケットを用います。Atmega328Pを用いる場合はチップにArduino UNOのローダを書込んだチップを使用します。局発への配線は、Si5351aモジュールにつけたSMAコネクタから同軸でエアバンドキット基板の局発部を改造し配線します。スイッチ類はワイヤで配線します。YM-180ケースを用いる場合はLCDは1602Aでは入りません。1602SBなどの高さが低いものを選んでください。
#VFO_PCB_INSIDE.jpg

組み立てた状態


ケースはタカチ電子工業のYM180(最近ディスコンみたいです)を使用しました。LCD取付穴、基板の取付穴の加工が必要です。また、取り付けにはスタッドやねじが必要です。
#YM-180ケースイラスト、

YM-180寸法

ケース組み込み写真類

YM-180加工メモ

 

 

エアバンド受信機としてのArduinoスケッチは次になります。操作の特徴として、ロータリーエンコーダで周波数などの増減と機能の選択を行います。ロータリーエンコーダの押しボタンスイッチを押すことでモードが変わります。搭載した機能は次の通りです。
1.周波数設定、ステップ周波数単位でREで増減
2.周波数設定時のステップ周波数選択
3.メモリーチャンネル選択
4.メモリーチャンネル呼び出し
5.ボリウム値設定
6.スケルチレベル値設定
7.Si5351a発振周波数補正
スケッチ

github.com

 

 

出来上がったデジタル化受信機の外観は次になります。
#VFO_front.jpg, back front

組み立て後フロント

組み立て後バック

 

基板のガーバーファイル、Arduinoのスケッチ、その他説明データ類はGITHUBにアップロードしてあります。データには著作権がありますので、引用時には引用元を明記願います。商用利用はお断りします。

 

 

 

LTspiceを利用し中国製エアバンド受信機キットのスケルチノイズを対策してみる

USD15ぐらいで売られているエアバンド受信機キットはなかなかコスパが良いと思います。超再生受信機のように一か八かのものではなく、はんだ付け作業に注意し組立、少し調整すると受信ができるようになるので、作られた方は多いと思います。

 

ジャンク箱にあるエアバンドキット基板

 

しかしながら実用的に使おうとすると、いくつかの欠点が目立ちます。一つは自励発振の局発の安定度ですね。モニター用に使うにはデジタル化必須です。次がスケルチ切り替え時のポップ音です。待ち受けで静かにしたいのに、切り替え時に大きなポップ音が出ます。三つめはPCBパターンコイルのバージョンで、フィルタが減衰器みたいになっているところでしょうか。

 

そういった使いづらさのためジャンク箱に眠っているではないかと言う切り口でRedditに記事を書いてみました。数日でPVが3000ぐらいになったので、この際スケルチの話を詳しくまとめておいた方が良いかと思って、ブログ記事にしました。


さて、ここではスケルチの改善策についてのアプローチについて説明します。

 

まず何が問題かと言うと次のようになります。

1. スケルチは音声信号をダイオードスイッチしているが、音声だけでなくOPアンプのバイアスもスイッチされるので、ONとOFFとの切り替え時に大きなノイズになる。


2. スイッチングは前段LM358で行うが、後段LM386はフルゲインで動作しており、切り替えノイズが増幅されフルスイングのノイズ出力になる。

元回路図

 

解決策として採用したのは、LM386の動作点を飽和させ、利得をなくすというMUTE方法です。このアイデアは元々CQ出版の本にアイテック電子の千葉OMが書かれていたものを今回実行しました。

 

そして、実際の回路方式をどうする、パラメータ導出、TRY&ERRORするのにLTspiceを使いました。

LTspiceを始めるにあたり、まずはLM358とLM386の回路図とSpiceモデルを探します。以前はNXPとかTIのサイトにあったんですが、404になってます。そこで、以前ダウンロードしてあったlm358.asy,lm358.subket, lm386.asy,lm386.subを取り出し、使いました。 


まずはオリジナル回路の関係部分を取り出しシミュレーションします。
確かに、スケルチのOM/OFF時にスパイク状の応答があります。

BE4画面

 

続いて試行錯誤でLM386の入力端子への電流流し込みを行いMUTEする回路を編集します。
シミュレーションできました。電圧ではなく、流し込み電流でLM386がON/OFFします。

改善した回路

 

なるほど、この方式だと、切り替え時に少しダンピングがかかってON/OFFするようです。実際の音を聞いてみても、スパッと切れるのではなく、ぬめっと切り替わります。

 

如何でしょうか。はんだ付けで抵抗コンデンサをとっかえひっかえする替わりにPC上でトライアンドエラー実験ができました。

 

また、このスケルチ改良で、エアバンド受信機キットが生まれ変わったのはうれしいですね。

改造機後のYOUTUBE

 

www.youtube.com