SDR Feed

2019年8月16日 (金)

ダイレクトコンバージョン式SDR(送信機能セットアップ)

カテゴリ<SDR>

ダイレクトコンバージョンSDRチューナーが曲りなりにも動作するようになりましたので、いよいよ送信機能の検討に着手する事にします。

まず、HDSDRのホームページの中から送信に関する情報を入手します。

ここに書かれた説明は、HDSDRを完全に知り尽くした人が書いたみたいで、肝心な基本設定が良く判りません。 結局、先輩方が苦労して得た情報を元にして、なんとか構築出来たものです。 そして判った事は、ダミーでExtIO_Si570.dllは必要でしたが、PE0FKOのCFGSR.exeも、仮想COMポートも必要有りませんでした。

この「送信」の説明のなかで、COMポートを使う事、サウンドカードが2台必要と書かれていますので、まず、USB接続のCOMポートを用意しました。 CTESTWINとリグを連動させる為に用意していたもので、確か秋月で1000円くらいでした。 次にサウンドカードを新規に手配しました。 AmazonでサウンドブラスターSB Play3が税込1711円で出ていましたので、これを手配。 発注した翌日には届きました。 このカードはモノラルMIC入力で、録音時のサンプリング周波数は48KHzですが、送信用に設定すれば使えるような記述がどこかにありました。

HDSDRのOptionsの一番下にあるTXを選び、SDR TX Supportにチェックをいれて置きます。

SB Play3を、PCに接続すると、勝手にドライバーがインストールされ、デバイスマネージャーを開いてポート番号がCOM10である事を確認しました。 次にHDSDRの「Soundcard」をクリックすると、下のようなダイアログが現れ、それぞれ選択しました。

Sbsection

ただし、まだTXボタンをクリックしても送信モードにはなりません。

次にTXに関する設定をおこないました。HDSDRにダミーとして、ExtIO_Si570.dllを組み込んで立ち上げた後、追加の設定を行いました。

Txsetup

Optionsのボタンをクリックして、TXを開き、SDR TX SupportとEnable TX Button for CAT to HDSDR及び

mute RX audio on TXにチェックマークがつくように処理しました。

チェックがちゃんとついたかどうかは、一度ダイアログをクローズし、再度開くと判ります。

Ctssetup

CAT to HDSDRからPTT activation pinを選びCTSかDCDをチェックしておきます。

PortとBaurdrateはデバイスマネージャーでポート情報(COM10とか、9600ボーとか)を調べておき、合わせ込みます。

activatedにチェックマークを入れようとすると、最初にポートやボーレートを設定しろと怒られますので、Portを開き、COM10の先頭に黒丸があるか確認します。無い時はこのCOM10をクリックすると黒丸が現れます。 なお、COM10の10の数字はPCの状態で変わります。 USBハブを追加する前はCOM8でしたが、ハブを追加したらCOM10に変わっていました。

以上の設定で、PCの画面は、受信と送信モードを交互に切り替えられるようになりました。 USBサウンドカードのMIC端子にコンデンサマイクを接続し、しゃべると、右下のオーディオスペクトルのレベルが変化し、感度もMIC gainにより可変できます。 しかし実際にマイクからの信号を処理してI、Q信号をSB-Play3のヘッドフォーン出力に出しているかは?です。

送受信の切り替えは、外付けハード側から操作する必要がありますが、英文説明の通り、CTSピンをhigh(5V)にしても送信にはなりません。 設定をDCDピンに変えて試しましたが、いずれもダメでした。 これを解決しないと、送受信の切り替え操作が、外部ハード部分とPCのマウス操作という2重操作になりますので、不便です。

Ptt_sw

3日くらい悩んでいたPTT SWが解決しました。

原因は、D-Sub9ピンを取り付ける試作用の基板のピン番号間違いでした。 さらに、対象ピンに5Vを加えるのではなく、4番ピンと接続するかしないかでTX/RXが切り替わるのだそうです。 それが判って、最初、4番pinと8番pin(CTS)間にPTT SWを挿入したのですが、PTT ONにすると、1秒くらいの周期で送信と受信を繰り返します。 4番pinと1番pin(DCD)間にPTT SWを入れると、正常に動作するようになりました。  ただし、困った事が一つ、 HDSDRをクローズしてもwindowが閉じません。 何かを待っている感じ。 HDSDRに関連するUSBを全て引き抜くと閉じます。

何はともあれ、これでトランシーバーの検討を進める事が出来るようになりました。

先輩方のレポートの中に、HDSDRの送信信号のスプリアスはかなり厳しいような説明が有りましたので、気になります。

INDEXに戻る

2019年8月 4日 (日)

ダイレクトコンバージョン式SDRチューナー

カテゴリ<SDR>

RTL-SDRチューナーを改造して、フリーSDRソフトであるHDSDRを使用したVHF帯の受信機は実現しました。 このチューナーでHFを聞くにはアップコンバーターを追加したり、RTL-SDRチューナーをダイレクトコンバージョンチューナーに改造する必要があります。 ただし、コンバーターの追加や改造をやっても、このチューナーは受信オンリーで送信する事が出来ません。 そこで、RTL-SDRは卒業して、送信可能なトランシーバーのベースを一から作る事にしました。

直交復調を行う上で、位相が90度ずれたIキャリアとQキャリアを作るところから始めます。

7100khziqosc

左の波形は、7100KHzのIキャリア(上)とQキャリア(下)をデジタルオシロで見た状態です。 (後日、これは逆である事がわかりました。 上がQで、下がIでした。) 

これを作り出す為には14.2MHzの方形波を用意し、この方形波をフリップフロップで1/2分周する訳ですが、14MHzの方形波の立ち上がりで、次のフリップフロップをドライブしたのが上の波形で、方形波の立下りでフリップフロップをドライブしたのが下の波形になります。 ただし、一般に使用されるFF(フリッププロップ)の74HC74は入力の立ち上がりでしか、1/2分周動作はしませんので、14MHzの位相が180度異なる信号を使い、いずれも方形波の立ち上がりでFFを動作させます。 このように考えると、7MHzで90度位相差を有する、二つのキャリアを作る為には14MHzのキャリアがあれば良い事になりますが、この場合、14MHzの方形波は完全な50%デューティである事が要求されます。波形整形で50%デューティの方形波を作るのは至難の業です。 そこで、28MHzのキャリアをFFで1/2分周した14MHzキャリアを作ってやります。 FFで1/2分周した方形波は確実に50%のデューティを確保する事ができます。 これが、90度位相差のI,Q信号を作る為には、欲しいキャリアの4倍の周波数が必要な理由です。

インターネットで紹介されているSDRチューナー用のキャリアはSi570などのDDSをUSBを介してPCからコントロールする例が多いのですが、今回は、以前作成したAD9833によるDDSと逓倍ICで作成した28MHzの信号を使います。

Sdr_dc_tunner_2

上のJPGの配線図がみにくい場合はSDR_DC01.pdfをダウンロード

IC11の3番ピンに28.4MHzを加えたDDSの周波数が左下。、12番ピンの出力を周波数カウンターで見たのが右下です。

Dds28400khz

7100khzcounter

このチューナーはノーマルスイッチング周波数、数MHzのMC14066BというONセミコンのアナログスイッチで直交復調を行っているだけで、入力側の高周波増幅やBPFはなく、また、復調で得られたI及びQ信号も簡単なLCによるLPFを通った後、増幅もフィルターもなしでPCのサウンドカードへ出力されます。 通常、このアナログスイッチは74HC4066など、もう少し高周波的に余裕のあるICを使いますが、ちゃんと復調しているかは不明です。

Directconvertionpcb

Directconvertionpcbback

左上がその基板のチップ装着面。右上がその裏側です。 アンテナ入力からマッチングトランスまでの間に今後BPFとRFアンプを追加するスペースを確保し、直交復調器からPCのMIC端子へ出力するコネクター間には、ポストアンプや送信モード時の直交変調回路を置くスペースを確保してあります。

マッチングトランスは手元に有った#43材のフェライトコアに0.26φのUEWを1次:3ターン、2次21ターン巻いた物です。

このチューナーから出力されたI,Q信号をデジタル処理してSSBやCWが聞けるようにするのはHDSDRのソフトを使います。 HDSDRのソフトをダイレクトコンバージョンに設定する為に、ExtIO_Si570.dllのファイルをダミーで読み込ませています。 受信周波数は0Hzにしたまま、ソフトの入力をサウンドカードのアナログ入力、すなわちMIC端子に設定する事もできます。 受信周波数は、AD9833のキャリアで、LOを決定し、TUNE周波数はHDSDRのカーソルを動かして操作ができます。  入力および出力の帯域幅を色々調整した結果、LSBの受信が出来るようになりました。下の画像が7MHzのSSB信号を受信している時のスナップです。

7mhzssb

TS930にてS9+40dBの信号ですが、HDSDRではS9+25dBくらいをSメーターは指しています。 この時のLOの周波数(AD9833の1/4の周波数)は7100KHzでした。 さすがに+40dBのLSBの復調音はちゃんと聞けるもので、当然了解度も5ですが、TS930にてS9+10dBくらいのLSBの了解度は4くらいです。 無信号時のSはTS930ではS7くらい。 このHDSDRではS9ですから、トランシーバーとして、実用するには7MHzのBPFや復調後に20-30dBくらいのポストアンプを入れる必要がありそうです。 

8月9日

そこで、復調後のI,Q信号をオシロで見てみたところ、これがホワイトノイズのみで、さっぱり信号としては認識できません。 レベルが小さすぎます。 ここは、ポストアンプが必要です。 現在のPCのサンプリング周波数は48KHz程度で、ポストアンプの帯域は20KHz程度でも良いのですが、 将来、192KHzのサウンドカードを使う事を考えるとフラットの範囲が100KHzくらいは必要です。

Mcp6402_freq_responce

Opa1678_freqresponce

ポストアンプは片電源5Vで動作するオペアンプが必要になります。 左上がft(利得帯域幅積(GB積))1MHzのMCP6402の負帰還なしゲイン周波数特性です。 100KHzまでフラットにするにはゲイン20dBが限界です。 一方右上のグラフはftが20MHzのOPA1678の特性で、同じく100KHzまでフラットに出来るゲインは42dBくらいを確保できます。 従い、ポストアンプは秋月で扱っているOPA1678にし、ゲインは40dBとする事にしました。 

また、しばらく受信を続けていると、その内、復調不能になります。 7MHzのキャリアが変動するのか?とオシロでチェックしました。 すると、DDSの周波数を変更した途端、周波数が大幅にずれます。ひどい時は50MHzくらいになる事があります。 どうもDDSが安定して信号を発生しないようです。 これはSDRとは関係ない問題ですので、DDSを再検討必要です。 

Dds_sdr

原因はDDSの後段に接続されたPLLのアンロックでした。 対策の詳細はこちらにあります。 DDSのソフト変更をしたついでにSDR用のモードを追加しました。 左が、追加したDDSのSDRモードで、実際の発振周波数は28.4MHzですが、表示はその1/4の7.1MHzを表示しています。 HDSDRのLOの周波数を7.1MHzにセットすると、受信周波数をカーソルで直接読み取る事ができます。

さらにチェックすると、アナログSWの入出力でDCレベルが違います。 5Vの1/2のDCバイアスがかかっており、これを7MHzでスイッチングしていますので、少しは電圧降下があると、思われますが、IとQでそのDC電圧が異なります。 これは、14066のアナログSWがまともにスイッチングしていないのではと、改めてデータシートを見ると、正確なスイッチング周波数の値は判りませんが、製品バラツキのセンター付近でも5MHzくらいがベストで、最悪2MHzくらいが限界ではないかと思われるようなスイッチング波形が表示されています。 海外のKITでこのICとして使われているのは高速マルチプレクサと言われるバススイッチが大半で、少なくとも4066レベルを使っている回路はありませんでした。  対策として、このアナログSWを高速タイプに変更します。 選んだ高速アナログSWはSN74LVC2G66というデータシート上でのスイッチング周波数が195MHzのTiのICですが、RSの海外在庫との事で、納期が1週間くらいかかりそうです。 MOQ=10で1個40円弱ですが、送料が450円ですから、1個85円くらいになりました。 

このICが手に入るまでの間に、ポストアンプとRFアンプを追加して様子を見る事にします。

Rf_amp_coil

Rf_amp_postamp

左上がアンテナ入力段に追加した7MHzの同調コイルです。最初、複同調回路にしたのですが、マッチングが悪く20dBも減衰しますので単同調にしてあります。右上は追加したデュアルゲートFETによるRFアンプと40dBゲインのポストアンプです。 

RFアンプとポストアンプを追加した配線図SDR_DC03.pdfをダウンロード

この配線図はアナログSWを高速タイプに変えてありますが、まだICを入手していないので、14066のままです。 また、ミラー信号が表示されます。

8月13日

HDSDRをインストールしたノートPCのサウンドカードの詳細を調べていましたら、現在の録音モードのサンプリング周波数は44.1KHzに設定されていました。 そして、96KHzに設定変更する事が出来る事が判りました。 再生時のサンプリング周波数は最大で192KHzまで設定できますが、録音と同じく96KHzに設定しました。 その結果、バンドスコープの幅が±48KHzのほぼ90KHzまで拡大したのが、下のウォーターフォールのショットです。

7mhz_mirrar

LOの周波数を7.13MHzとして、7086KHzから7174KHzくらいまで表示し、実際に受信出来ています。 しかし、この画面では7130KHzを中心としたミラー信号も同時に表示されており、ミラー信号に同調させると、LSBでは復調できませんが、USBモードなら復調できます。 直交復調がまともに働いておればミラー信号は出てこないはずですが、IとQの信号のバランスが崩れているようです。 

8月15日

高速アナログSWは到着しましたが、変換基板を間違って手配してしまい、今度は変換基板到着待ちになりました。

その間に、海外KITの回路例を調べていました。 Softrockの回路では、直交復調以降のOPアンプの回路構成が、私の回路と違う事が判りました。 私のOPアンプ動作は非反転増幅で、OPアンプは高インピーダンスで受けていますが、このKITは反転増幅回路で低インピーダンスで受けています。また、OPアンプの前にLCのフィルターも無く、OPアンプの負帰還抵抗にパラに入れたコンデンサ1個でLPFを構成しています。  何が違うのか、このKITの回路のように変更して見ました。 すると、ミラー信号がほぼ消えて7MHzの90KHzの帯域で表示されるウォーターフォールは全てUSBになりました。 クロックのIとQが逆になっているようです。 これを入れ替えたら、全てLSBになりました。

7mhz_notmirrar_2

なぜ、OPアンプが反転増幅でなければならないのかは判りませんが、ミラー表示の問題は解決してしまいました。 修正した回路図は以下です。 まだ、高速アナログSWは実装されていません。

SDR_DC04.pdfをダウンロード

高速アナログSWに交換して、異常がなければ、次はいよいよ送信モードの検討です。 google翻訳で仕入れた情報によると、HDSDRを送信モードで使うには、RS232Cのポートと2台目のサウンドカードが必要との事。USB対応のCOMポートは有りますが、サウンドカードが有りません。 安物でも良いと書いてありますので、USBサウンドカードを注文しました。 HDSDRのホームページで送信に関する説明は全て読みましたが、意味不明の説明も有り、実際に動かしながら模索する事にします。   どうも、HDSDRはCWの送信が苦手らしい。 

ダイレクトコンバージョン式SDR(送信機能セットアップ) へ続く。

INDEXに戻る

2019年7月25日 (木)

SDR入門

カテゴリ<SDR>

かねてより興味が有りました、SDRについて遊び始めました。 aitendoで安いDABドングルが売られており、これを入手したのが、2週間前。 色々なホームページから、簡単に2mのワッチが出来ると思い込み手当り次第にソフトやドライバーをインストールしたのですが、うまく行きません。 悪戦苦闘の末、とりあえず、ローカルのFM放送が受信できるまでになりました。 最終目標はSDRのPCに依存するところは、フリーソフトにお任せして、直交検波と直交変調が出来る回路とそれにつながる送受信回路の自作ですが、生きている間に出来るかどうかは????です。

Fc0012dongle

左の写真はRTL-SDRチューナーと言われるaitendoから届いたドングルをさっそくオープンした状態です。 先輩方のホームページより、USBコネクタはUSBケーブルでPCに接続し、アンテナ端子はSMAやBNCに変更した方が良いというアドバイスの通り、シールドと放熱が期待できるアルミケースに改造する事にしました。 時期は梅雨の真っ最中、毎日雨で、外での工作が出来ない状態でしたが、雨が止む短い時間を狙って、工具を倉庫から出しては仕舞いを繰り返しながら作成したのが、下の写真です。 入力部分にBPFやRFアンプを追加するスペースを確保する為に少し大きめのシャーシとし、アンテナ端子も現用の2mトランシーバーに接続するMコネクターにし、まずは、2mのオールモード受信機作成がターゲットです。

Fc0012dongle1

Fc0012dongle2

左上が、配線前の部品配置検討段階、右上が、配線完了状態です。 ここまでは、問題なしですが基板は全て両面テープで張り付けた状態で、いつでもはぎ取る事が出来る状態です。

次はソフトのインストールです。 HD SDRというフリーソフトがある事をインターネットで聞きつけ、これの最新版をゲット。RUNさせると、ハムバンドと放送、業務無線とジャンル別に整理されており、多分aitendoのドングルは対応していないと思いますが、HFをフルカバーできるアプリになっています。 これによる受信をトライしたのですが、いくら頑張ってもUSBドライバーが色々なホームページが説明している名称になりません。 当然、HD SDRの起動の時点でドライバーが無いと蹴飛ばされます。

これは、簡単ではないとと悟るまで1週間。 初心に帰り、aitendoの商品説明にある通り、SDR#とそれに必要なドライバーのインストールにトライし、zadig.exeの部分で挫折しかかりましたが、zadig-2.4.exeに乗り換えて、めでたくドライバーがインストールされました。 

Sdrsharp

さっそく、3.5Km先の標高415mにある出力10WのローカルFM局にチューニングするとフルスケールで受信できるようになりました。

この延長線上で、周波数を145MHzにし、バンドスコープ幅を2MHzにすると、2mの全体のスペクトルを見る事ができます。 当地では、出ている局が少ない上、昼間である事から、実際に捉えられた局はSSBが1局、FMが1局でした。 スペクトルは期待したような結果を出してくれましたが、その復調音は、とても交信に使えるレベルでは有りません。 S/Nが非常に悪く、またAGCの効きもかなり不足で、FMでもノイズの変化があります。

原因はゲインの不足です。 ドングルの前に、BPFとRFアンプを追加してどれくらい改善するかを見る必要がありそうです。

下に2mのバンド幅2MHzと1MHzのスペクトルを示します。 1MHz幅のとき、FMが2局あります。

2mspectlebw2mhz

2mspectlebw1mhz

このSDRの操作性ですが、トランシーバーを操作するレベルには程遠く、特にチューニング操作は全く話にならないレベルです。 広帯域受信機として、特定の周波数をじっくり聞く場合に限るようです。 また、バンド内に59+60dBの局が現れると、バンド全体にスプリアスが発生し、S5くらいの信号は全く受信できなくなります。  今使っているドングルは送信機能は有りませんので、現状の組み合わせでトランシーバーは構成できません。 こんな事情から、SDRのフリーソフトを含めて再検討する事にします。 

このSDRを始めるに当たり、最初にインストールしたHD SDRは、どういう訳か周波数の設定がLoもTuneも0Hzのままで設定できませんでした。 原因が判らず、とりあえずSDR#で実験を開始したのですが、一度SDR#で動作確認した後、SDR#をクローズして、すぐにHD SDRを立ち上げると、正常に動作します。 HD SDRをクローズした後は、またNGとなります。 とりあえず原因は判りませんが、SDR#立ち上げ、クローズ、HD SDR立ち上げのシーケンスでなんとか使える事は判りました。 このHD SDRのソフトの操作方法が良く判らず、色々なパラメーターをいじっていましたら、SDR#よりS/Nの良い受信が出来るようになりました。 SDR#でどうにもならないと思っていた59+60dBの局がバンド内に現れた時でも、AGCで弱信号の抑圧は発生しますが、スプリアスの発生が少なく、入力のフィルターを調整すれば、なんとか使える受信機ができそうです。

下の写真はHD SDRで2mをワッチしている時のスナップです。周波数のキャリブレーションをまだしていませんので、周波数表示が微妙にずれていますが、145.080で59の信号を受信しているところです。

Hddsr2m

FM受信時のスケルチ動作も通常のトランシーバーと変わらない動作をします。 低周波の帯域幅も自由に設定できるという事から、今後このソフトをベースに検討していく事にします。

ダイレクトコンバーション式SDRチューナー へ続く。

INDEXに戻る