Monthly FB NEWS 月刊FBニュース 月刊FBニュースはアマチュア無線の電子WEBマガジン。ベテランから入門まで、楽しく役立つ情報が満載です。

新・エレクトロニクス工作室

第14回 AD9959を使ったSG その2(前編)

JE1UCI 冨川寿夫

2023年6月15日掲載

数年前からの課題としていたSGを、AD9959を使用したDDSユニットを用いて作製しました。今回は長くなるため、前編と後編に分ける事とします。前後編にわたって説明する部分もありますので、図面番号や写真番号は通番とします。

最初に・・・

最初に「その2」とした理由ですが、週刊BEACONのNo.207でAD9959を使った150MHzまでのSGを紹介しました。私的に、これを「その1」としました。これはこれで上手く作ったと思っていますが、やはり新しい試みの初回作は「そこそこ」という事なのでしょう。なかなか完成度の高いものは作れません。しかし、このような不満があるので先に進むという、健全な自作の原動力でもあります。トランシーバを作るにしても同じですが、ある程度の台数を作る事も大切だと思います。

もちろん、使い込んで少しずつ改善、改修をするという方法もあります。しかし、このような記事を書いている都合上、発表したものに大幅な変更はやり難いのです。ソフトのバージョンアップ程度は行いますが、質問等が来ない時期(時効?)を待たざるを得ません。これは私の都合です。

そこで基本的には同じですが、写真1のようなAD9959を使った「その2」のSGを作製しました。週刊BEACONの記事と重複する部分もありますが、新たな視点を取り入れて説明するようにしています。


写真1 AD9959を使ったSG

また、「その1」と同じですが、JE3JLBさんの「自作・実験の紹介」から78項を参考にさせて頂いています。ありがとうございます。この記事が無ければ、「その1」からのSGを作る事はできませんでした。

SG

SGはSignal Generatorの略で、受信機を調整する時などの信号源にします。つまりレベル的には、受信できなくなるまで絞れるのが理想です。逆に、強い信号でのAGCの効き具合やSメータの振れをチェックするためには、S9+40dB以上のレベルも欲しくなります。一般的にS9の信号で40dBμと言われていますので、S9+40dBでは80dBμになります。更にAM変調とかFM変調がかけられると便利ですし、リニアアンプの実験をするには出力レベルはどこまで高くても良いのです。このように理想を追うとキリがありません。レベルの幅だけでも、必ず妥協する事になります。もちろん、レベルの正確さ、周波数の正確さ等々、妥協するポイントは他にもたくさんあります。

一般的に、SGの出力には1μVを基準とした電圧系のdBμが単位として使われます。昔々のアナログ式SGではdBμだけ使っていました。最近のCPUを使ったSGでは、LCD等に表示できます。従って、dBμとdBmの両方で表示するのが一般的のようです。もちろん、その方が便利です。

dBmは、図1のように負荷にかかる電圧で電力を計算します。一般的には電源側と負荷側はインピーダンスを合わせますので、50Ωと50Ωになります。もちろん75Ωと75Ωの場合もあります。従って電流が流れ、電源側の50Ωと負荷側の50Ωに半分ずつの電圧が加わります。図1の場合は0.5Vの電圧となります。解りやすく直流で書いていますが、高周波でも同じです。0.5Vの場合P=V2/RですのでR=50とすると5mWとなります。基準の1mWで割って10logしますと6.99dBmとなります。


図1 電源側の電圧の半分が負荷側に加わる
これで電力系dBmの値の計算を行う

電圧系のdBμの場合には図2のように負荷を付けずに、インピーダンスが∞(理想的には)の電圧計で測ります。従って電源の電圧がそのまま表れる事になり、図2の場合は1Vとなります。従って基準の1μVで割って20logしますと120dBμとなります。このようなdBμの場合、負荷側を解放にしている値という事を明確にするため、EMF(Electro Motive Force)と注意書きする場合があります。ちなみに終端の場合はPD(Potential Difference)と表示します。


図2 負荷側を解放して電圧を測る
この値でdBμの値の計算を行う

図1図2も全く同じレベルですが、異なった考え方で計算しています。この例では6.99dBmと120dBμですので、数値だけの差は約113dBとなります。このようにdBμとdBmの間は常に113dBの差となりますので、簡単に変換する事ができます。厳密には113.0103dBですが、もちろん誤差の範囲になりますので113dBで充分です。dBμからdBmへの変換を表1に示します。どのレベルでも113dBの差である事が解ります。更に、dBmからdBμへの変換を表2に示します。いずれも色の付けた部分に注目して下さい。


表1 dBμからdBmへの変換(50Ωの場合)


表2 dBmからdBμへの変換(50Ωの場合)

DDSユニット

使用したDDSユニットは中国製で、アマゾンで9,588円で購入しました。購入したのは「その1」を作製した直後ですので、数年前になります。しかし、アマゾンでは現在のところ品切れのようです。中国系の通販で探すと3,800~18,000円程度と幅がありますが、入手は可能なようです。確かコロナ前はアマゾンでも6,000円程度だったと思うのですが、コロナ騒ぎで随分と状況が変わりました。私が使ったのは写真2のようなユニットですが、同じような製品は他にもあります。機能的には変わらないはずです。


写真2 使用したAD9959のDDSユニットと付属品

この基板にはDDS ICのAD9959の他に、基準用クロックの25MHz発振器があります。基板外からの基準を使う事も可能で、その場合写真2の右側のCLKから入力します。今回はOCXOを使う事にしましたので、このCLKのコネクタから入力しました。内部発振器との切り替えは、写真2のCLKの左側にあるジャンパーピンで行います。黒い基板で黒いジャンパーピンのため見にくいと思います。これはクロックの入力を変えているだけですので、発振器が止まる事はありません。試してはいませんが、ノイズを減らすという事では電源ラインをカットしておく方が良いのかもしれません。

問題点

まず、「その1」の改善したかった点を明らかにしておきます。一番問題と思ったのが、出力レベルの可変範囲が狭かった事です。DDSの設定だけで出力レベルを変えていましたので仕方ないのですが、最大で-11dBmで最小は-51dBmでした。-51dBmは62dBμになりますので、受信機の調整用としてはレベルが高過ぎです。外部アッテネータを使えば良いと考えたためですが、これは一番頻繁に行う作業です。そのたびにアッテネータを出してくるのはかなり面倒でした。逆に専用のアンプを外付けする事で、最大で+1dBm(114dBμ)まで出力していました。これでレベルは上がるのですが、アンプの実験用とすればもう少し出力が欲しいところです。このように、上にも下にも中途半端になった印象でした。もちろんキリが無いのは承知の上ですが、使ってから気が付く事もあります。また、専用のアンプはBNCコネクタで外付けするタイプですので、実は接続が結構手間でした。

このように出力のレベル幅を広げたいと考えました。しかし、アンプを入れてレベルを上げる方向に広げるのか、アッテネータを入れて下げる方向に広げるのかです。始めは両方に広げる事を考えていましたが、中途半端になるので上に広げるのは諦めました。これは外付けの専用アンプを作って対処する事にしました。いずれにしろ限度がありますので悩ましいところです。一番使いやすい方法を考えて作るしかありません。

表示したレベルが出せない場合はLCDにUNCAL表示を出すようにしましたが、音が出ないので気が付かない事が良くありました。初回作ではレベルが低いなと悩んだ後でUNCALに気が付いたりしました。これは案外と大きな欠点で、後述しますが簡単な方法で対処しました。

実験

2回目なので不要・・・ ではなく、詳細の確認をするため再度の実験から始めました。このような場面で実験をパスして、後から痛い目に会った事も一度や二度ではありません。もちろん基本的な部分は不要ですので、今回は楽です。「このDDSはどうしたら動くのか」という段階はパスして、実際に動かす段階から始めました。写真3のように生基板上にバラックで組んで試しました。CPUの部分は右上のようにブレッドボードで組んでいました。この時点では外部電源を5Vにして使っています。デジタルテスターの左にあるのが使用したOCXOです。その左がOCXO用のSW電源です。


写真3 ブレッドボードを使った最初の実験

次に写真4の下側のように電源部分もブレッドボードで試作しました。電源トランスのAC100V部分には、触れる事のないように緑の養生用テープが貼ってあります。また30dBの固定アッテネータと、12dBのアンプの実験もしました。写真4の左上にCPUから制御されるアッテネータが2台と、アンプが見えます。ここは最後まで悩んだ部分です。最終的に固定アッテネータを2個使う事とし、アンプはボツになりました。


写真4 電源と30dBのアッテネータ、アンプを追加

CPUと電源の基板を作製して、このバラックに取り入れたところが写真5になります。もちろん、この基板の動作確認を兼ねています。LCDのケーブルは、ケースに実装した時を考えて作っています。つまり、この段階で全体的なイメージを作っています。


写真5 CPU基板を作製してブレッドボードと入れ替え

回路

前述のように実験をして回路を決めています。説明としては前後してしまいますが、図3のような回路としました。基本的には「その1」と変わりませんが、相当の試行錯誤をしています。


図3 全回路図

CPUにはAVRのAtmega328Pを使っています。これでDDSのICを制御しています。CPUには周波数を可変するためにロータリーエンコーダを3個接続しています。これで1MHz、10kHz、100Hzのステップで周波数を可変しています。これらはクリックを外した24パルス/回転のメカニカル式です。写真6の秋月電子で仕入れたものを使いました。最初からクリックの無いロータリーエンコーダを使っても良いのですが、これが固くて回し難かったので使いませんでした。実は「その1」では固かったのです。このようなクリック外しは、本来は勧めるべきではないのでしょう。しかし簡単な作業でクリックが外せ、快適に回す事ができます。


写真6 使用したロータリーエンコーダ

トランシーバであれば、3個もロータリーエンコーダを使う事は無いと思います。しかし、100kHz~150MHzの間を自在に動くためには、このようにするのが一番使いやすいと考えました。ステップを切り替える方法もありますが、操作性を考えると案外使い難いものです。もちろん10Hzステップや1Hzステップも可能ですが、SGとしてはあまり意味がありません。むしろ最小桁は1kHzとか10kHzでも良いのかもしれません。もちろん、クリスタルフィルタの測定をするという目的があれば、1Hzか10Hzにするのも良いと思います。この他にレベル可変用として、クリック付きのロータリーエンコーダを1個使っています。結果的にはクリックなしと同じものを、改造せずに使っています。

DDSユニット内の発振器は簡単に使えて便利なのですが、安定度には疑問がありました。そこで、安定度を重視してオーブンの付いたOCXOを使用しました。これは25MHzちょうどではなく、中途半端な26.706875MHzです。実は週刊BEACONのNo.117で使ったものの再利用です。電源には-15Vが必要ですので、SW電源ユニットを使っています。実はこれも再利用です。OCXOの周波数は中途半端ですが、素性は良さそうです。AD9959は、内部で基準を4~20倍に設定する事ができます。基準は100~500MHzという制限がありますので、合わせる必要があります。購入したDDSユニットには25MHzの発振器が付いていますので、これを使う時には20倍して500MHzにするのが一般的なのでしょう。しかし26.706875MHzを20倍すると500MHzを超えてオーバークロックになってしまいます。ある程度のオーバークロックであれば動くとは思いますが、今回はそこまで無理をする必要は全くありません。そこで18倍をして480.72375MHzにしました。昔々にAD9851を使った時には30×6=180MHzがスペック上の限界なのですが、なるべく50MHzでの出力レベルを下げる事なく使いたいために32×6=192MHzを使っていました。実験した結果、これがギリギリでした。その頃を考えると雲泥の差です。

出力には30dBの固定アッテネータ2組を内蔵しました。ソフトで40dBを1dBステップで可変できますので、合計100dBの可変幅となります。一般的に、アッテネータだけで100dBのダイナミックレンジを得るのは相当に困難です。しかし、40dB分をソフトで賄えるとトータルの設計がとても楽になります。しかし、出力の周波数が150MHzになりますので、60dBでも少々怪しい部分があります。まあ、レベル的には50MHzまでで、それ以上はオマケと思っておけば間違いありません。周波数が上がるほど、外部アッテネータを使用する方が正確でしょう。

前編としては、とりあえずここまでにさせて頂きます。どこで区切っても中途半端になるのですが、後編では製作までを紹介します。

新・エレクトロニクス工作室 バックナンバー

2023年6月号トップへ戻る

サイトのご利用について

©2024 月刊FBニュース編集部 All Rights Reserved.