非職業的技師の覚え書き

JK1EJPの技術的検討事項を中心に記録を残します。

Teensy(3)SDR 関連の調査

f:id:amat49:20211105231257p:plain

Teensy 4.1

Teensy攻略がご無沙汰になっていますが、肩に乗ることのできる巨人を探して、こつこつと調査を続けています。

T41 SDT(改めT41-EP)の調査

("T41 SDT"の名称は"T41-EP"(Experimenters' Platform)に変更されたようです。)

題名の T41 SDT とは、米国の 二人のOM によって推進されている Teensy 4.1 based Software Defined Transceiver プロジェクトの略称です。「公開予定」と開発者からアナウンスされているため、定期的に下記の groups.io の投稿を調査しています。

プロジェクトを推進されているのは、 W8TEE 局 Jack Purdum さんと AC8GY 局 Al Peter さんです。

Purdum 博士は、既に退官されて名誉教授?になられているようですが、Purdue 大学でプログラミングの先生をされていたようです。学位は"Cliometrics"(計量経済史=経済史+計量経済学)で取られたとのことですので、専攻は趣味の無線に直接の関係はないようです。計量経済史は馴染みがない学問分野ですが、計量経済学では数学や統計学を使うとのことですので、そこでプログラミングを駆使されていたのでしょうか。

Purdum さんは、1964年の東京オリンピックの10年前に開局された大ベテランです。今なおSDRのプログラミングで先頭の一角を走られていることは見習いたいものです。

寄稿調査

Purdum さんは HAM 雑誌に多くの寄稿をされています。最近の例では、オンラインで読める下記の米国CQ誌?のコラム記事が見つかりました。マイコンの組込みプログラムに造詣が深い方のようです。
MICROCONTROLLERS IN AMATEUR RADIO; Going from RDC to PGC”, CQ Amateur Radio,  VOL. 77, No. 6, pp. 77-79, June 2021
https://cq-amateur-radio.com/06-CQ%20June%202021-D.pdf

蛇足ですが、Purdum さんのコラム記事の前に QCX-mini の紹介記事がありました。
"KIT BUILDING; QRP Labs QCX Mini: A Field Radio in your Pocket!", CQ Amateur Radio,  VOL. 77, No. 6, pp. 70-73, June 2021 
鮮明な基板の写真が掲載されています。

書籍調査

Purdum さん執筆の書籍を検索すると、C言語のプログラミングに関する(英語)書籍が10冊以上見つかります。一部を紹介します。

  • (1) Microcontroller Projects for Amateur Radio (2020)

  • (2) Beginning C for Microcontrollers: Making Electronics Dance with Software (2020)

  • (3) Arduino Projects for Amateur Radio (2014)

最近は Arduino IDE 上でのマイコン組込みプログラムに関する書籍が多いようです。最新刊の(1)(2)では Teensy への言及もあるようです。

ARRL の(1)を読んでみたかったのですが eBook は無いようです。日本からも印刷版を ARRL に注文できるようですが、会員価格で購入できないこと、送料が高額になることからひとまず諦めました。

代わりに(2)の eBookKindle版)を購入しました。非職業的技師も SDR の軍資金を稼ぐための生業では必要に応じて PC 上のプログラミングに従事しています。今更 C の学習?とも思いましたが、T41 SDT プロジェクトが公開される前に組込 C の復習をしておくのも良いかと思いました。T41 SDT のコーディングのスタイルも書籍のスタイルと同じではないかと期待しています。

Keiths' Teensy SDR builders group

概要

groups.ioを検索してTeensy SDRの開発グループを見つけました。

一見さんお断りかと思いましたが、参加の希望を出して一日後に許可されました。毎日の投稿Summaryが届くuSDXのグループほど活発ではありませんが、貴重なTeensy SDRの情報源です。

入手容易なoff-the-shelf(既製品)のボードモジュールを組み合わせて、モジュラー方式のSDRを開発するコンセプトのようです。RF段のモジュールキットを組み立てながらAF段のSDRの機能をソフトウェアに実装していく方式は、フットプリントの面では不利かもしれませんが、学習には好適かもしれません。

送信部は構想まではありますが、まだ受信部までしか実装できていないようです。受信部に必要なoff-the-shelfのQSD(Quadrature Sampling Detector)Kitは市場にありますが、送信部に必要なQSE(Quadrature Sampling Exciter)Kitが容易には調達できないことがあい路になっているようです。

 

追伸:
本日(2021/11/06)、送信部が動作したとの投稿がありました。

Yes Virginia there is a transmitter in the works!

適切なKitが市場にないQSE部は専用のPCBを起こしたようです。年末年始にかけて詳細情報が公開されると思われます。T41-EPの情報も公開されそうな雰囲気になってきています。忙しくなってきました。

 

Teensy Audio Adaptor Board に関わる制限の有無

まだ過去の投稿を十分にフォローできていませんが、Teensy Audio Adaptor Boardについての心配事に関する情報が得られました。

f:id:amat49:20211007213315p:plain

一つ目は、I/Q信号のサンプリングレートに関する制限の有無です。TeensyからAudio Adaptor Boardに44.1kHzのクロックが供給されるため、CD qualityの44.1kHzでしかサンプリングできないかもしれないという心配がありました。このグループでは4倍のサンプリングレートを適用しているという情報が見えました。

二つ目は、Teensy Audio Libraryが16 bit整数しかサポートしていないというあい路です。FPUおよびDSP extension instructionsを搭載したMCUと超高速 SRAM の組み合わせによって DSP 演算機能が整っているのに、ライブラリを使用すると整数演算になってしまうのは残念です。このグループでは32bit浮動小数点互換ライブラリOpenAudio Library for Teensyを使用しているという情報が見えました。

当面の心配事は二つとも解決です。

 

13TR-FT8トランシーバ (8)トランジスタの選別

フォローアップ情報の調査

13TR-FT8トランシーバの頒布開始から時間が経過したため、製作実績が蓄積され、情報が更新されている可能性があると考えました。そこで、13TR-FT8トランシーバ を頒布して頂いたJL1KRA局OMの「CRkits共同購入プロジェクト」ホームページにてフォローアップ情報を調査しました。

ホームページから辿った「新QRP Plaza掲示板」の2021年10月05日(https://bbs7.sekkaku.net/bbs/qrp/page=61)に重要なフォローアップ情報がありました。下記に引用させて頂きます。

「組み立て時ファイナルに使うトランジスタはhfeを揃えてくださいとの追加アドバイスがありました。まだ製作されていない方は性能アップのためにお願いします。」

ホームページの方にも反映されていました。

「まずはじめにファイナル用に使うトランジスターのhfe選定を行ってください。
5%以内に揃えます。」

回路図にも次の図面指示が開発元により付加されたようです。

"Q11-Q13 hFE matched to 5%"

トランジスタの選別

既に局部発振器に2個のTr(2N4401)を消費してしまいましたが、残り11個のTrの選別を行いたいと思います。

BJT(Bipolar Junction Transistor)に対して手持ちのテスタTC1で測定できる項目は、hFE(DC Current Gain)、Vbe(Base-Emitter Voltage)、Ic(Collector Current)の3つになります。3並列で使用するファイナルトランジスタでクリティカルな項目はスイッチング特性(Delay Time等)と思うのですが、いずれにせよ測れないので気にしないことにして、図面指示通りhFEで選別します。

f:id:amat49:20211031163549p:plain

hFE測定の様子
DAY-1

測定は以下の手順をTr個体毎に繰り返します。

  • TC1テスタのZIF(Zero Insertion Force)ソケットにTr取り付け
  • StartボタンをプッシュしてON
  • 項目値の読み取りと転記
  • Startボタンを長押ししてOFF

測定結果は下記の通りでした。(中抜きの赤丸3個はファイナルに選別したTr個体ですが、その経緯を順番に説明します。)

f:id:amat49:20211031182620p:plain

11個の各Tr個体の測定結果(初日)

TC1テスタは、Icを6.2mAに制御して、その時のVbeとhFEを測定しているようです。hFEのMin-Maxは288-433となり、(Max - Min)/(Max + Min)/2 = 10% となります。図面指示5%を遵守するためには選別が必要になります。

測定値を見ると、Tr個体ごとに異なる値が得られていますが、同じ値が複数のTr個体に対して出現しています。ADCの量子化値が測定精度を決めていて、1bitズレれば測定値が大きくズレる心配があります。

代表個体を選んで繰り返し測定精度を検証しました。上記表のTr個体番号11番を代表として10回繰り返し測定した結果を下記に示します。

f:id:amat49:20211031184258p:plain

代表Tr個体(11番)の繰り返し測定結果

初回測定値と同じhFE=433が7回出現し、値が1だけ大きなhFE=434が2回出現しました。1bitのズレが大きな値になる訳ではなさそうだということが分かりました。

一方、値が大幅に小さくなったhFE=393が1回出現してしまいました。平均値に対して8.43%の乖離があります。これでは、1回の測定で5%の選別を行うことはできません。

DAY-2

同じTr個体のhFEの大きな乖離の原因として、最初はZIFソケットへのTrの装着ミス等を疑いました。そこで、翌日に同じTr個体(11番)の再測定を行うと、期待に反してhFE=393が連発しました。TC1テスタの測定誤差なのか、Trの動作揺らぎなのかは不明です。

1回の測定で選別を行うことは危険であることが分かりました。そこで、各個体3回の測定を積み増ししました。

f:id:amat49:20211031211228p:plain

11個の各Tr個体の測定結果(翌日1回目)

f:id:amat49:20211031211343p:plain

11個の各Tr個体の測定結果(翌日2回目)

f:id:amat49:20211031211425p:plain

11個の各Tr個体の測定結果(翌日3回目)

前日と比べると少し変動がありますが、翌日の3回の測定試行の間ではhFEは安定しています。Vbeは前日より高くなっています。前日は晴天、翌日は雨天、気温は少し低く湿度は高くなっていると思います。トランジスタの物性を変動させるほどではないと思いますが・・・。

Trの用途別の回路への割付

合計4回の前日と翌日の測定試行において、安定してhFE最高値433を記録したTrが3個(中抜きの赤丸の4番、7番、10番)あります。これらを3並列ファイナル用Trとしました。

他は自己バイアス回路に用いるならhFEが安定でなくても良い?等を考慮して、自己満足的に以下のように割り付けました。

f:id:amat49:20211031212811p:plain

Trの用途別の回路への割付

 

13TR-FT8トランシーバ (7)VOX回路のLTspiceシミュレーション

局部発振器(LO)に続いて混合器(SBM)を組み立てる予定でしたが、AUDIO信号を混合するためにはRX/TX電子スイッチ(13TR-FT8トランシーバ (3)RX/TX電子スイッチ - 非職業的技師の覚え書き)を経由する必要があります。そこで、RX/TX電子スイッチに電源を供給するために、VOX回路(音声入力を認識すると自動で送信状態に切り替える回路)から組み立てることにしました。その前に、LTspiceを用いて回路の動作を調べました。

VOX回路

f:id:amat49:20211029201258p:plain

13TR-FT8トランシーバ のVOX回路

13TR-FT8トランシーバ のVOX回路は2つのTr(Q1およびQ2)から成り、RX/TX電源切替(およびRF信号切替)リレーをQ2のコレクタ電流によって駆動しています。Q2のベース電圧は電解コンデンサC4によって昇圧され、AUDIO入力信号によって駆動されるQ1がC4に電荷をポンピングしているようです。

AUDIO入力信号が無くなれば、電荷のポンピング供給が途絶えたC4が放電するに任され、Q2のベース電圧が降下してコレクタ電流が減少し、リレーがRX側に切り替わります。

VOX回路のLTspiceモデル

f:id:amat49:20211029213216p:plain

VOX回路のLTspiceモデル
RX/TX電源切換リレー

RX/TX電源切換リレーは部品の刻印(HK19F-DC12V-SHG)からデータシートを検索できます。主な仕様は次の通りです。

  • Coil Resistance at 20℃ ± 10%(Ω):720 Ω
  • Contact Resistance :100 mΩ (at 1A 6VDC)
  • Insulation Resistance :100MΩ (500VDC)
  • Max Operate Voltage:9.00V
  • Min Release Voltage:1.20V

コイルのインダクタンスはデータシートに記載されていませんでした。LCRメータで実測したところ、次の値が得られました。

  • Coil Inductance:466.1 mH (1kHz)
  • Coil Resistance:742.8 Ω (*+10%以内確認*)

LTspiceにリレーのモデルは標準では準備されていないため、次の情報を参考にさせて頂き、コイルとスイッチを組み合わせて作成しました。

コイル(K1_L)のモデルのパラメータ定義は「.param Lr=466m Rr=743 」としました。スイッチ(K1)のモデルのパラメータ定義は「.model K1 SW(Ron=100m Roff=100Meg Vt=7.8 Vh=1.2) 」としました。ヒステリシスも考慮したため、Vt = 9.00V - Vh = 7.8V です。

AUDIO_IN信号

PCヘッドフォンジャックからのAUDIO_IN信号のモデル化については判然としません。PCヘッドフォンジャックの電気特性に関しては次のWebページに詳しい調査結果の情報があり、参考にさせて頂きました。

「この測定結果を見ると、52Ω付近がノートパソコンのインピーダンスとなります。」との報告があります。入力インピーダンスが52Ωの時に最大電力を取り、電圧は0.392Vになるとのこと。13TR-FT8トランシーバのAUDIO_INの入力抵抗は47Ωであり、最適なインピーダンスに近い値となっています。そこで、AUDIO_IN信号は振幅0.5V、1kHzの電圧源としました。

VOX回路のLTspiceシミュレーション結果

AUDIO_IN信号によるリレー切替

LTspiceシミュレーション開始と同時にAUDIO_IN信号をVOX回路に入力して、リレーの応答を調べました。

f:id:amat49:20211029220822p:plain

AUDIO_IN信号によるリレー切替

AUDIO_IN信号の電圧をV(atx)(緑)、コンデンサC4の電圧をV(C4)(紫)、TrQ2のベース電圧をV(B)(青)、コレクタ電圧をV(C)(黄)、Tx電源電圧をV(12v_TX)(赤)として示しました。

AUDIO_IN信号V(atx)が入力されると、コンデンサC4の電圧V(C4)が漸近的に1kHzで脈動しながら増加していきます。同時に、TrQ2のベース電圧V(B)も増加し、約5ms時点でベース・エミッタ間飽和電圧(約0.75V)に到達します。

この付近で、コレクタ電流が流れ始めるため、コレクタ電圧V(C)が1kHzで脈動しながら下降します。コレクタ電圧V(C)がコレクタ・エミッタ間飽和電圧(0.4V以下)に到達した約6ms時点で、十分なコレクタ電流が流れてスイッチが切り替わり、Tx電源電圧が立ち上がります。ただし、AUDIO_IN信号V(atx)に同期した脈動によって、チャタリングが1回発生しています。

AUDIO_IN信号V(atx)に同期した脈動は、ベース電圧V(B)を決めるコンデンサC4への電荷のポンピングと放電のサイクルによって、一旦ベース電圧V(B)が微小下降することによって生じているのではないかと考えています。

スイッチのモデルにヒステリシスを入れたことによりチャタリングは発生しないと予想していましたが、発生してしまいました。ただし、リレーの応答時間は、Operate Time(作動時間?)が6ms、Release Time(開放時間?)が4msとなっており、仮想的な理想スイッチのように瞬時に切り替わることはないため、現実のリレーではチャタリングは発生しないのではないかと予想します。

VOX回路を組み立てて実測したところ、予想に反してリレーのチャタリングは発生しました。(13TR-FT8トランシーバ (9)VOX回路の組立と測定 - 非職業的技師の覚え書き

AUDIO_IN信号によるTrQ1の動作

同じ条件のまま、TrQ1の動作点を調べました。

f:id:amat49:20211030001902p:plain

AUDIO_IN信号によるTrQ1の動作

AUDIO_IN信号の電圧V(atx)(緑)とコンデンサC4の電圧V(C4)(紫)は同じです。TrQ1のベース電圧をV(B)(黄)、コレクタ電圧をV(C)(赤)、エミッタ電圧をV(E)(青)として示しました。

TrQ1はhFEの変化に対してロバストな自己バイアス回路になっています。TrQ1の各端子のDCバイアス電圧は目測から、Vdc(B)=4.6V、Vdc(C)=7.3V、Vdc(E)=4.1V です。これららのDC電圧は、回路組立後にDC電源を投入した直後の回路チェックの指針になります。

小信号ベース電圧 Vac(B) = V(B) - Vdc(B) として、AUDIO_IN信号V(atx)がそのまま重畳されています。その他の気づきとして、小信号エミッタ電圧 Vac(E) はマイナス振幅側が振り切れていません。コンデンサC2の放電の影響でしょうか。

小信号コレクタ電圧 Vac(C) の振幅は徐々に大きくなっています。コンデンサC3を経由して、小信号コレクタ電流で充電するコンデンサC4の電圧V(C4)と相関があると思われます。回路シミュレーションの利点を生かして、この関係を詳しく調べました。

AUDIO_IN信号によるコンデンサC4の充電

同じ条件のまま、コンデンサC4の周辺の電圧を調べました。

f:id:amat49:20211030133936p:plain

AUDIO_IN信号によるコンデンサC4の充電

AUDIO_IN信号の電圧V(atx)(緑)とコンデンサC4の電圧V(C4)(紫)は同じです。TrQ1のコレクタから小信号を取り出すコンデンサC3の反対電極側の整流ダイオードD1のアノードの電圧をV(D)(黄)として示しました。また、TrQ2のベース電圧をV(B)(青)として示しました。

アノード電圧V(D)は、AUDIO_IN信号電圧V(atx)に対して位相が反転しています。振幅は時間経過とともに増大し、コンデンサC4電圧V(C4)と相関していることが分かります。振幅の頂点は斜めに切断され、そこでコンデンサC4電圧V(C4)の昇圧ポンピングが行われています。アノード電圧V(D)とコンデンサC4電圧V(C4)の差は約0.6V強に維持されています。ダイオードD1(1N4148)のVF(Forward Voltage )のデータシート代表値は1Vですが、IF(Forward Current)に依存して連続変化します。LTspiceはVOX回路動作点でのVF=0.6V強と割り出したことになります。

アノード電圧V(D)がコンデンサC4電圧V(C4)に対してVF=0.6V強のオフセットを維持できない位相では、コンデンサC4電圧V(C4)は放電して電圧降下を生じることが明瞭に確認できます。放電しないとVOXのOFFが実現できないため致し方なしではあります。この影響を受けて、TrQ2のベース電圧V(B)も飽和開始近辺で微小脈動を生じます。これがリレーのチャタリングの原因です。先に言及したように、現実にはチャタリングは発生しない可能性も高いと思います。

AUDIO_IN信号のボリュームアップによる応答時間の変化

AUDIO_IN信号の電圧振幅を2倍に増大(0.5V ⇒ 1.0V)した場合のVOX回路の応答の変化を調べました。

f:id:amat49:20211030163120p:plain

AUDIO_IN信号の電圧振幅増大(0.5V ⇒ 1.0V)

リレーの切替時間が1ms程度速くなり、チャタリングが無くなりました。1サイクル当たりのコンデンサC4への電荷ポンピング量が多くなったことによる効果ですが、期待したほど速くはなりませんでした。

AUDIO_IN信号のボリュームダウンによる応答時間の変化

AUDIO_IN信号の電圧振幅を0.4倍に減少(0.5V ⇒ 0.2V)した場合のVOX回路の応答の変化を調べました。

f:id:amat49:20211030164304p:plain

AUDIO_IN信号の電圧振幅減少(0.5V ⇒ 0.2V)

右図(0.2V)の横軸(時間軸)のシミュレーション時間は、左図の20msから2倍の40msに増やしてあります。

リレーの切替時間が15ms程度遅くなり、チャタリングが増加しました。1サイクル当たりのコンデンサC4への電荷ポンピング量が少なくなったことによる副作用です。放電を補うことが難しくなった様子が伺えます。

AUDIO_IN信号の電圧振幅を0.2倍まで減少(0.5V ⇒ 0.1V)すると、VOX回路はリレー切替ができなくなりました。コンデンサC4の充電と放電の均衡点のようです。

AUDIO_IN信号OFFに対する応答

AUDIO_IN信号を10サイクル目(10ms)でOFFにして、リレーがON(TX)からOFF(RX)になる応答を調べました。

f:id:amat49:20211030165856p:plain

AUDIO_IN信号のOFFに対する応答

AUDIO_IN信号の電圧をV(atx)(緑)、コンデンサC4の電圧をV(C4)(紫)、TrQ2のベース電圧をV(B)(青)、コレクタ電圧をV(C)(黄)、Tx電源電圧をV(12v_TX)(赤)として示しました。

コンデンサC4への電荷ポンピングが無くなり、緩慢に放電して電圧V(C4)が減少していきます。14ms手前(OFFから4ms)でコレクタ電圧V(C)が立ち上がり、コイルK1_Lの電圧が立下ります。15ms(OFFから5ms)でリレーはOFFに転じています。電荷のポンピングが伴わないため、チャタリングは発生していません。

 

LTspiceによる回路シミュレーションにより、VOX回路の動作原理の確認、動作点バイアス電圧等の事前確認、定量的動作速度等の事前予測を行うことができました。回路に詳しい方なら、最適改良案を検討することもできるかもしれません。

13TR-FT8トランシーバ (6)局部発振器の組立と測定

局部発振器の組立

13TR-FT8トランシーバの局部発振器(LO)を先行して組み立て、発振周波数の評価を行いました。

f:id:amat49:20211023180822p:plain

局部発振器(LO)

DCプラグ、電源スイッチ、電解コンデンサといった背の高い電源系統の部品も最初の段階で組み付けました。それらは今後の組み立ての邪魔になりますが、機能モジュール毎に組み立てを行い機能を確認しながら進める方が、問題発生時の原因の切り分けが容易になると考えました。特にLOはLTspice回路シミュレーションで発振周波数がズレる問題があるため、現物で早く確認したいと思っていました。

f:id:amat49:20211023215022p:plain

局部発振器(LO)の組み立て

LOの水晶振動子(7.074MHz)はソケットに仮組としました。丸ピンIC用シングルソケットから3連分を折り、中央の金属の足の細径部を折って太径部が基板と接しないようにヤスリでオフセットを付けて仕上げました。両端部の足はスルーホールの間隔と合います。ラダーフィルタも同じ寸法間隔のようです。

f:id:amat49:20211023221248p:plain

水晶振動子の実装用ソケット

局部発振器の評価

発振波形の評価

Q5のエミッタフォロワTrのエミッタ抵抗R35の電圧をUSBオシロスコープ(Analog Discovery 2)で測定しました。PC側のソフトはWaveForms3です。

f:id:amat49:20211024011445p:plain

発振波形確認のための測定系

f:id:amat49:20211023233236p:plain

測定の様子

f:id:amat49:20211023233804p:plain

WaveForms3の画面

WaveForms3画面の上段は発振波形、下段はそのFFT処理結果です。Analog Discovery 2のサンプリング速度は100MS/s(Sample per second)のため、確認できる上限の周波数は50MHzです。

波形が歪みを含み、高調波が高次のものまで発生していることが分かりました。調べてみると、コルピッツ発振回路(周波数調整用のC46があるのでクラップ発振回路?)の波形は歪を含むのが普通のようです。水晶振動子を使うと正弦波で発振するというのはまったくの思い込みでした。水晶振動子を使う理由は高い周波数精度の方にあります。高調波は後段の水晶ラダーフィルタや終段のLPFで抑圧することになります。

f:id:amat49:20211024000710p:plain

WaveForm3の測定機能による波形パラメータの測定結果

波形パラメータの測定結果において、発振周波数は7.0741MHzが得られました。ただし、これはカット&トライを何回か試行して偶然得られた値です。試行毎に大きなばらつきがあります。Analog Discovery 2のサンプリング速度100MS/sから、7MHzの1サイクルのサンプル点数は約14点(=100MS/s / 7MHz)になります。何周期分のデータをFFTの対象にしているのかは不明ですが、発振周波数の評価には荷が重そうです。

発振周波数の評価は後述の別の方法に委ねるとして、発振波形の評価を行いました。下図の左(1)が先に報告したLTspiceシミュレーション結果、右(2)が今回の実測結果です。

f:id:amat49:20211024002419p:plain

発振波形の評価

LTspiceシミュレーションの電源設定はDC12Vとしましたが、実測ではDC13.8Vを供給しました。LTspiceシミュレーションのPeak2Peakは約8.4V。これを電源電圧DC12Vから13.8Vへの昇圧で比例補正すると約9.7Vになります。実測のPeak2Peakは10.4Vで近い値を示しました。

波形を目視すると、両者共に立下りはスムーズです。一方、立ち上がりは途中で変曲するショルダー部を両者共に持ちます。LTspiceシミュレーションにより、定量的発振周波数は正確には予測できませんでしたが、定量的振幅および定性的な波形歪の特徴は事前に予測できていたようです。

発振周波数の評価

発振回路からの輻射をミニホイップアンテナで受信してUSBドングルSDR(SDRplay RSP1A)で測定しました。PC側のソフトはSDRuno(最新Rel. 1.41)です。

f:id:amat49:20211024132128p:plain

発振周波数確認のための測定系

f:id:amat49:20211024135040p:plain

SDRunoの画面表示

f:id:amat49:20211024133335p:plain

Main SP画面の拡大

回路基板とミニホイップアンテナの距離は配線長の制約から約0.8mありましたが、Bias-T(アンテナ内臓のインピーダンス変換回路へのDC電圧同軸重畳供給)をONにしたところ、十分な感度で受信できました。

上記画面は、周波数調整用のC46トリマを調整して7,074,004Hzまで追い込んだ結果を示しています。トリマをスラスト方向に押しただけで周波数がズレるほど感度が高いのですが、2~3回の試行で+4Hzまで調整できました。

発振周波数の近接領域にも不要輻射が見られます。回路から輻射されているのか、測定系のノイズかは不明です。今後、後段のフィルタによる抑圧を確認したいと思います。

f:id:amat49:20211024141034p:plain

RBW = 5.09Hz

今回、SDRunoについて新しい発見がありました。RBW(Resolution Bandwidth:分解能帯域幅)は約30Hzが最小と思っていましたが、特定の操作を行うとRBW=5.09Hzを達成できました。操作手順は、RX CONTROL画面でBands -> 40mを選択してから周波数を合わせ、MAIN SP画面のZOOMあるいはRBWを切り替えるだけです。RBWはFFTに入力する時系列信号のサンプリング点数に依存していると思うのですが、直接設定できるかどうかは不明です。

LTspiceとの整合

水晶振動子のパッケージ表記の発振周波数(7.074MHz)が得られることが確認できました。なぜ、LTspiceの周波数は低くズレるのかは不明です。調べても下記の原因候補しか得られませんでした。

  • 負荷容量のマッチングが反映されていない。
  • 寄生容量や浮遊容量が反映されていない。
  • モデルが不整合

LTspice水晶振動子の等価回路に負荷容量に相当するパラメータが無いため、負荷容量のマッチングは常に取れていると考えています。

寄生容量や浮遊容量が追加されると発振周波数はさらに低くなるのではないかと思われます。

Trの2N4401のLTspiceモデルには下記の通り数多くのパラメータが定義されています。
.model 2N4401   NPN(Is=26.03f Xti=3 Eg=1.11 Vaf=90.7 Bf=4.292K Ne=1.244 Ise=26.03f Ikf=.2061 Xtb=1.5 Br=1.01 Nc=2 Isc=0 Ikr=0 Rc=.5 Cjc=11.01p
+ Mjc=.3763 Vjc=.75 Fc=.5 Cje=24.07p Mje=.3641 Vje=.75 Tr=233.7n Tf=466.5p Itf=0 Vtf=0 Xtf=0 Rb=10 Vceo=40 Icrating=600m mfg=Fairchild)
Fairchildとは異なるメーカのパラメータが全て一致するとは思えません。例えば、onsemiのデータシートを見ると、Rise Time Tr=20ns(Max)、Fall Time Tf=30ns(Max)となっており、桁が異なります。位相遅れの想定が異なるなどの想像が働きます。

正確なシミュレーションには正確なモデルが必要との暫定結論とさせて頂きます。

E24系列に基づく抵抗計(RMEE01)の組み立て

大量の部品の組付けが必要な13TR-FT8 デジタルトランシーバの組み立て前の準備として、JH4VAJ局OMより頒布頂いた「E24系列に基づく抵抗計(RMEE01)」の組み立てを行いました。

E24系列に基づく抵抗計(RMEE01)の特徴

RMEE01の特徴は、開発者JH4VAJ局の上記Blogを引用させて頂けば、「本機では測定値と共に、E24系列でいうところのどれに該当し、かつ、誤差はどれだけかも合せて表示します。」となります。

DMMよりアナログテスターの方が人の認知機能に優しい・・・と思っていても、ついつい多機能に目が眩んでDMMを買ってしまいます。アナログテスターであれば、抵抗を間違えてピックアップしていないことをまず針のポジションから確認し、その後に目標目盛りへの未達あるいは目標目盛りからの過達を読んで精度(ノミナル値からの誤差)を確認します。DMMだと頭の中で変換認識処理が必要となり疲れます。RMEE01はその変換認識処理を無用にし、直読でノミナル値からの誤差認識が可能になります。汎用性を狙うメーカには真似できない素晴らしいアイディアと思います。

E24系列に基づく抵抗計(RMEE01)の組み立て

開発者JH4VAJ局の上記Blogの説明に従って組立を行いました。

部品チェックと仕分け

f:id:amat49:20211010210934p:plain

抵抗類とコンデンサ類は分別され別々の袋に仕分けされていました。員数チェックからチップ部品の同定は容易です。組み立て作業中の紛失や破損を考慮して、チップ部品の予備が入っているのも助かります。以前、ピンセットの力加減を間違えてチップ部品を天井に向かって打ち上げて紛失し、通販で補充するという憂き目にあいました。小さなチップ部品でも硬い床に落ちた時の音は以外にもキャッチできましたが、着床後にどこかに転がって行ってしまい、二度と再会することはできませんでした。

閑話休題、ちょっと確認に迷った部品はチップPolyfuseです。チップ抵抗に似ていますが、はんだ付け電極部中央に切れ込みがあるのが特徴です(はんだ付け後の写真では確認できませんが・・・)。印字は抵抗値ではなく、銅色に輝く正体不明の象形文字様の記号なのが特徴です。

f:id:amat49:20211010211757p:plain

目視画像検索をしたところ、1個だけWeb上に見つかりました。大陸系メーカのトレードマークでしょうか?

ケース仮組み

やすり掛け以上のケース加工技能のない非職業的「電気」技師には、ケース付属はありがたいです。説明手順にあった、溝嵌合ノッチ部の隅Rの直角出し追加工を特にしなくても、仮組みは大丈夫のようでした。頒布頂いたロットではPCBのカッティング精度が上がったのかもしれません。

f:id:amat49:20211010212113p:plain

チップ部品のはんだ付け

組み立て手順の説明に言及されているように、チップ部品のはんだ付けには拡大鏡が必須です。いくつか試しましたが、現在は手軽に眼鏡の上から装着できるメガネ拡大鏡を使用しています。通常の視界が必要な時は、レンズを跳ね上げることができます。

特に探した訳ではなく、以前に頂いた冠婚葬祭の商品引き換えBOOKの中に見つけました。ケンコー・トキナー天体望遠鏡も作っている光学製品の専門メーカーでしたので、即決で申し込みました。

背の低いチップ部品からはんだ付けをしますが、チップ部品の中にも背丈の違いがあります。積層チップコンデンサは積層しているだけあって背が高いのです。故にピンセットで一番つまみ易く、今回は飛ばしても予備品がある安全パイです。ついつい誘惑に負けてチップコンデンサからはんだ付けをしてしまいましたが、反省も踏まえて以下の順番が最適と思いました。

  1. PCB裏面の2個のチップコンデンサで練習
  2. PCB表面に戻ってお邪魔部品が周囲に付く前に気を使う多ピンのADCチップ
  3. 次に気を使う背の低い高精度チップ抵抗(熱容量も小さい)
  4. 背の低いチップPolyfuse
  5. 小さいフェライトビーズ
  6. 最後に残りの背が高いチップコンデンサ
  7. 三端子レギュレータも忘れずに(放熱部のはんだ付けには熱量が必要)

f:id:amat49:20211010213555p:plain

SMD組付けの順番の例(②③④⑤⑥)
チップ部品はんだ付けの検査

大鏡を使用してもはんだ接続不良は生じる可能性があります。組み立て後には、独逸製ESCHENBACHデスクトップルーペ1420と携帯カメラを駆使して検査をしています。

ESCHENBACH1420使用の必然性はありません。たまたま手元にありました。良い道具を使うと良い仕事(趣味)ができそうな気分はします。

光を集める半球レンズを横から覗くと、チップ部品の高さ方向が立体的に強調され、電極の濡れ状態を確認できます。

f:id:amat49:20211010214327p:plain

f:id:amat49:20211010214830p:plain

今回もESCHENBACH1420は接続ミスを1件発見しました。ADCのリードが一本、接続不良でした。目視検査の後に導通チェックを行い、接続不良を確定しました。

f:id:amat49:20211010220951p:plain

パッドの先端にはんだが載り、リードもはんだで濡れていますが、それらが接続されていません。横(手前)のコンデンサに気を取られて、こて先の角度調整と押し当てが不十分だったようです。メインディッシュを最後に食べる心理で、ADCのはんだ付けをコンデンサの後に持ってきたことが失敗の原因です。

完成と動作確認

ADCの接続を修正して基板を完成させ、電源ラインのチェックの後に電源を投入。無事、LEDが点滅を始めました。タイムラグが少しあって焦りました。

f:id:amat49:20211010222441p:plain

後は、組み立て手順の説明にある注記を読み飛ばさないように注意して、ケースへの組込みを進め、完成です。

確認のため、NanoVNA用の測定治具(写真左下)に付属していたキャリブレーション用のノミナル49.9Ωのチップ抵抗を測定しました。以前、DMMで測定した際の抵抗値は49.7Ωでした。

f:id:amat49:20211010232442p:plain

測定値は49.78Ω。このチップ抵抗はE24系列ではありませんが、E24系列中の近い抵抗は51Ωで、その誤差は-1.22Ω(2.39%)。RMEE01内部では誤差の有効桁数を4桁で管理しているようです。誤差は-1.216Ω(2.38%)と高精度に表示されます。組み立て手順の説明にあるコネクタの接触抵抗約0.1Ωを考慮すると、DMMの測定値とほぼ同じです。もっとも、DMMが正しい保証はないのですが。

測定パッドが表に出ているのが便利です。テスタ棒は両手がふさがるのがあい路。クリップは挟んだり外したりが面倒でした。写真のようにピンセットで挟んで置いただけで測定できるRMEE01はこれからの電子工作で活躍してくれることと思います。

13TR-FT8トランシーバ (5)局部発振器の水晶振動子実測

局部発振器の水晶振動子実測

過去に報告した通り、局部発振器のLTspiceシミュレーションの発振周波数が合わないことが気になっていました。

他の方の8MHz水晶振動子の等価回路パラメータを流用してバックキャストで7.074MHzに調整したモデルを使用したことが原因の1つと考えられました。そこで、治具を取り寄せ、13TR-FT8トランシーバ の水晶振動子の等価回路パラメータをNanoVNAを用いて実測しました。

測定方法

 JH1UMV局 cho45さんの下記Blogを参考にさせて頂きました。

Cp(Holder Capacitance)、fs(Series Resonance Frequency)、fp(Parallel Resonance Frequency)、Rs(Series Resistance)を実測し、Ls(Motional Inductance)とCs(Motional Capacitance)はそれらの実測値から算出します。

Cp(Holder Capacitance)測定

Cpは水晶片のサイズや封止パッケージに依存した容量パラメータです。Peak社のLCRメータを使用して実測しました。ACインピーダンス解析法で測定しており、測定周波数は自動で200kHzが選択されているようです。

f:id:amat49:20211003140513p:plain

LCRメータによるCp測定(Cp=2.7pF)
fs(Series Resonance Frequency)とfp(Parallel Resonance Frequency)の測定

fsとfpは水晶振動子の直列共振周波数と並列共振周波数です。NanoVNA-H4(純正品・・・と思います!?)のCH0とCH1の間に水晶振動子を取り付け、fsをS11反射係数(S11 Return Loss or CH0 LOGMAG)の最小値から、fpをS21伝送係数(S21 Gain or CH1 LOGMAG)の最小値から、それぞれ求めました。

普段のSWR測定ではCH0のキャリブレーションしか行わないため、今回は治具(Test Board Kit)を準備してCH1のキャリブレーションアイソレーションとスルー)もしっかり実施しました。治具の回路接続は短絡用ピンヘッダを2階に準備して組み替えます。下記写真はピンヘッダの接触抵抗を含めて校正用Load抵抗をDMMで測定するための接続です。治具に付属の49.9Ω表記のチップ抵抗は実測49.7Ω(-0.4%)でした(DMMの精度は不問)。

f:id:amat49:20211003143522p:plain

NanoVNA用測定治具と校正用Load抵抗

直列共振周波数fsはS11反射係数とS21伝送係数の両方でピークを持ちますが、S11反射係数のピークの方がシャープです。測定点数固定のNanoVNA本体では周波数の分解能を上げるために細かく掃引範囲を調整する必要があるため、複数回の測定Segmentのデータをつなぎ合わせることにより周波数分解能を上げることのできるNanoVNA Saver 0.3.8 ソフトウェアを使用しました。結果から判断すると、本体測定でも精度は問題なかったかもしれません。掃引後にチャート選択と設定を試行錯誤で変更できること、設定と結果をPCにファイルで残せること、タッチパネル操作のストレスが無くなること等がNanoVNA Saver使用の利点です。

f:id:amat49:20211003144943p:plain

NanoVNA本体によるfs測定(fs=7.072800MHz)

f:id:amat49:20211003163854p:plain

NanoNVA Saverによるfsおよびfp測定(fs=7.072884MHz、fp=7.08246MHz)
Rs(Series Resistance)測定

Rsは水晶振動子の直列抵抗です。NanoVNA-H4のCH0に水晶振動子を接続して、スミスチャートの測定原理からリアクタンス成分の影響が小さくなる直列共振周波数fs付近で測定しました。具体的な掃引は中央をfs、Spanを1kHzに設定しました。

f:id:amat49:20211003172004p:plain

NanoNVA SaverによるRs測定(Rs=19.639Ω)
Cs(Motional Capacitance)とLs(Motional Inductance)の算出

C_sは、並列共振周波数f_pと直列共振周波数f_sの間の下記関係式から、f_pf_sC_pの各測定値を用いて算出します。

f_p=f_s \sqrt{ 1 + \frac{C_s}{C_p} }

L_sは、直列共振周波数の下記関係式から、上記C_sの算出値と直列共振周波数f_sの測定値を用いて算出します。

f_s=\frac{1}{2\pi\sqrt{L_sC_s}}

まとめ

得られた7.074MHz水晶振動子の等価回路パラメータを下記にまとめます。

f:id:amat49:20211003180529p:plain

水晶振動子の等価回路パラメータの実測値まとめ

現物の水晶振動子はバックキャストした値よりも少し高い共振周波数を持っていることが判明しました。ただし、前回の8MHz水晶振動子からバックキャストした等価回路パラメータも大きくかけ離れた値ではありませんでした。

LTspiceシミュレーション再び

LTspiceシミュレーションによって求めた局部発振周波数を下記に示します。

f:id:amat49:20211003220053p:plain

LTspiceシミュレーションによる局部発振周波数

今回の等価回路パラメータ実測値と前回の8MHz水晶振動子からのバックキャスト値に大きな違いは無かったため、やはり発振周波数は小さく出ました。C46の50pFトリマーを振ってみましたが、微調整用なので10kHzのオーダーは変わりませんでした。

シミュレーションやモデルに瑕疵がなければ、考慮できていない基板の寄生容量や浮遊容量の影響を加味した設計になっていると考えます。実際に回路を組んで検証したいと思います。

13TR-FT8トランシーバ (4)混合器

混合器のLTspiceモデル

13TR-FT8トランシーバの混合器はSBM(Single Balanced Mixer)です。その動作は紙面による定性的な説明だけでは分かり難いため、回路シミュレーションの課題として好適です。

作成した混合器のLTspiceモデルを下記に示します。

f:id:amat49:20210924211316p:plain

13TR-FT8トランシーバの混合器のLTspiceモデル
伝送線路トランス

LTspiceモデルを作成する上での難関は、FT37-43コアに8回Trifilar(等長3本撚線)巻きをした伝送線路トランスです。LTspiceの標準モデルに伝送線路トランスは含まれていないため、3個の極性付きインダクタを用いて作ります。下記のWebページを参考にさせて頂きました。

1次側LO入力のインダクタは、既に局部発振器のシミュレーションの負荷として作成しました。

2次側にも同じインダクタを2つ準備し、極性に注意して結線します。しかし、「FT37-43コア8回巻き」のインダクタを3個準備しただけで「Trifilar巻き」のモデルになるのでしょうか。

「Trifilar巻き」は磁気結合の強さを決めていると考え、結合係数K=1(漏れなし)としました。実情は結合係数の真値が分からないことによる近似です。LTspiceへの指示命令として、「K L11 L12 L13 1」を図面に置きます。

アッチネータ

教科書ではSBMの後段にも伝送線路トランスが置かれていますが、13TR-FT8トランシーバではアッチネータPadが付いています。インピーダンスの不整合緩和に効果があるとのこと。下記Webページで計算すると、減衰5.6dB、インピーダンス68ΩのPadでした。

f:id:amat49:20210926124350p:plain

アッチネータ

LO

SBMへの入力は、過去の局部発振器のシミュレーション結果から、4V振幅7.074MHz正弦波の電圧源としました。実際は歪があるため高調波もSBMに入力されますが、ここでは理想モデルとします。

AUDIO TX(ATX

前回(13TR-FT8トランシーバ (3)RX/TX電子スイッチ - 非職業的技師の覚え書き)の結果に基づき、AUDIO TX信号は1KHz正弦波の電圧源としました。4V、1V、0.5V、100mV、50mVの各振幅に対して、SBMのRF出力の変化を調べました。

混合器のLTspiceシミュレーショ結果

ATX = 4V正弦波

f:id:amat49:20210925020350p:plain

ATX入力(紫)とRF出力(緑)をプロットしました。RF出力は大信号のLO入力をキャリア周波数7.074MHzとして塗り潰されています。

ATX入力のオーディオ周波数1KHzとRF出力の振幅変動の周波数は一致し、変調されていることが分かります。ただし、ATX入力もLOと同じレベルの大信号としたため、本来のSBMの使い方とは異なるためか、プラス側とマイナス側でバランスした綺麗な変調波にはなっていません。

ATX = 1.0V正弦波と0.5V正弦波

f:id:amat49:20210925022754p:plain

プラス側とマイナス側で変調のバランスが改善し、DSBに近づきました。

ATX = 0.1V正弦波と50mV正弦波

f:id:amat49:20210925211036p:plain

変調のバランスがさらに改善しましたが、この辺がSBMの限界のようです。

ATX = 0V(無変調)

f:id:amat49:20210925211802p:plain

AUDIO TX信号を0Vにすると、SBMの出力RF信号は10f(femto:10^-15)V程度のノイズになります。本当かどうか不明ですが、シミュレータからノイズが出てくるのは驚きです。計算ループの中でサイコロを振っているのでしょうか。