電子工作 1200MHz TRV

2017/05/27

ADF4351 近接スプリアス BPFを入れてみる

タイトルが変わり映えしないが、今度はBPFを入れてみた。

430MHzぐらいだと、いい加減に作ってもそこそこ特性が出るのだが、1GHzともなるとそう簡単にはうまくいかないようだ。形は何とか追い込んだが、如何せんロスが多い。まあ、近接スプリアスを見るのだから、傾向ぐらいはつかめるだろう。これで試してみた。特性は、こんな感じ。
Dscf0259

Dscf0263

Dscf0260

さてここで、BPFを挿入してみる。
Dscf0265

Dscf0268

綺麗に近接のスプリアスが取れている。もっとも、BPFのロスが10dBもあるのでこれがATTになっているので、スプリアスの絶対値は10dBほど有利になっている。本来この部分は割り引いて考える必要がある。

Dscf0273
スパンを狭めている。BPFを未挿入の場合だ。左端にスプリアスのスペクトラムが少しだけ見える。

Dscf0270
こちらは、BPF挿入した場合だ。レベルが10dBほど下がってしまっている。

今回のプロジェクトはこのPLLやAmpはモジュールを使おうとしているので、一番のキーはいかにうまくBPFが作れるかにかかっている。特に送信終段のBPFはロスも極力小さくしないと、せっかくのパワーがココでロスって、十分に取り出せなくなる。

このADF4351は優れものだ。これをうまく使えば簡単にLOが出来そうだ。さて、もう少し真面なBPFを作らねば・・・。(続く)


| | コメント (0) | トラックバック (0)

2017/05/24

ADF4351 近接スプリアス HPFを入れてみる

やってみると、失敗だったことがすぐにわかる。後から考えてみると、当たり前だとわかるが、考えているだけだとわからないことが多い。

ADF4351の近接スプリアスを取るための実験だ。以下は、前回撮った写真だ。左側の高い輝線はDCレベルを表しており、この前後にスプリアスが見える。こいつで、変調されて目的の信号の前後にスプリアスが生じると考えた。(これは、誤り)
Dscf0230

それで、この低域をカットするHPFを作ってみた。
Dscf0247

Dscf0255_1

Dscf0243
フィルターは100MHz辺りを目指したが、実測すると150MHz付近がカットオフ周波数になっている。主にコイルのインダクタンスが正確ではないためだと思う。0.9mm径の銅線をドリルの適当な径に巻いて伸ばしてインダクタンスを調整した。

それで、うまくスプリアスが取れたかというと、目的の信号では全く変化なし。もちろんDC付近の低域のスプリアスは綺麗になくなったが。
あまりのショック?で写真を撮り忘れた。(以下は、以前の写真だが、こんな感じで、目的の信号付近は全く変化なしだ。この時のクロック周波数は10MH。)
Dscf0233

まあ、冷静に考えると、2~4.4GHzのVCOの信号をディジタル的に分周して作っている。この分周が、スプリアスの原因(推定だが)だとすると、信号付近のスプリアスはこれによるもので、しっかり成分として現れるはずだ。それに加えてDC付近の成分を含むのであろう。したがって、HPFを付けて除去できるのは、このDC付近の物だけで、信号付近のスプリアスが除去できるはずがない。ということではないかと思う。

なので、信号付近のスプリアスを除去するためには、信号付近のBPFを入れる必要がありそうだ。このチップのクロック周波数が25MHzであれば、信号とスプリアスが結構離れているのでフィルターで分離できるのではないかと思う。BPFを作ってみようと思う。
(続く)


| | コメント (0) | トラックバック (0)

2017/05/18

ADF4351 近接スプリアス

気になっていた、近接スプリアスについて調べてみた。
切り分けとして、やったこと。

これは、1GHzを出力した場合。
Dscf0232

1)XTALオシレータの電源を分離してみる。
 引き回しにより、スプリアスが発生しているのではないかと思い、パターンの分離、デカップリングコンデンサーの追加、別電源(XTALOSCを別電源、PLL ICを乾電池)にしてみるも、様子に変化なし。
Dscf0238
上の写真は、ポリウレタン線によりパターンの分離とデカップリングの電解コンデンサーを追加。それ以外に色々試すが変化がない。

2)OSCを外部のSSGより25MHzを入れる。(正弦波)
元のXTALオシレータは3V0-pだが、SSGを相当絞ってもロックする。IC内部にアンプか波形成型回路が入っているのか?
結果は、ほとんど変化なし。
以下は、発振周波数を433MHzにした時の波形。
Dscf0235

3)外部OSCの周波数を10MHzに変更し、発振周波数を433MHzにした時の波形。(レジスタ値を変更している)
Dscf0233
これまた、きれいにスプリアスが並ぶ。

色々やっている中で気が付いたこと。外部OSCのレベルをかなり下げてもPLLがロックしているように見える。このとき、入力レベルを下げてもスプリアス値はほとんど下がらない。
さらにレベルを下げてSSGの出力をOFFにしても、このICから433MHz付近で出力が出続ける。さすがにロックしていなのでフリーランになっているのか周波数が狂うものの、相変わらず近傍にスプリアスが出る。クロックを止めているにもかかわらずだ。
これらのことから、どうもクロックオシレータが回り込んでスプリアスを発生させている訳ではないようだ。どうもこのICの原理的なもののように思える。マニュアルを読んでみるか(まだよく読んでいない!)
ネットとかを見てもちょっと見ただけではこの事象に関する記載を見つけることができなかった。
クロックを25MHzぐらいにとれば、BPFで取ることができるのだろうか、この当たりからやってみようか。どなたか、そんなの当り前だよ、と教えていただけませんか!

| | コメント (2) | トラックバック (0)

2017/05/14

ADF4351 レジスターを設定する

今日は不用品の整理や相変わらず庭の草取りなど、電子工作の方はさっぱりだ。昨日書き忘れたレジスターの設定について記しておく。

アナデバが評価ボード用に提供しているPC用アプリだ。アナデバの評価ボードにはUSBでシリアル接続されている。このアプリで設定値を入力し、ADF4351のレジスターに流し込むことができる。中華製のボードではできないが、各レジスターの値がわかるので、これをPICで作った設定器で設定値を流し込んで使う。

周波数を433MHzにした時の値。
Adf4351_reg_433

周波数を1000MHzにした時の値。
Adf4351_reg_1000

| | コメント (0) | トラックバック (0)

2017/05/13

ADF4351 広帯域シンセサイザーを動かしてみる

GWはコンテスト三昧で他のことは疎かになっていたが、少しづつ元に戻そうと思っている。自作も遠ざかっていたが、またやってみたい本能的な疼きもあり、こんなことをやってみた。

自作と言っても、アリババでこんなモジュールを見つけた。ADF4351を組み上げたモジュールだ。
Aliexp_adf4351
これは、アナデバの石で何と35MHzから4400MHzまで連続で信号が得られるシンセサイザーだ。物はPLLでVCOまで内蔵している。基本は2200MHzから4400MHzまでのVCOを内蔵しており、周波数デバイダーとの組み合わせで下限を35MHzまで拡大させることができる。

中華製にしては安くはないが、約5mm角のチップ単体でも入手可能(約$10ぐらい)だが、基板を起こさないと実験すらできない。それを考えると、まあ、お手頃の価格だと思っている。

Dscf0226
この石を制御するためには、シリアルデータを送り込む必要がある。今回はPICを使ってみた。最終的には8pinぐらいの小さな石に焼き直そうと思っている。その時の電源電圧は3V系だと、PLL ICと直結することができる。今回はデバッグを兼ねてLCDまで奢ってみた。

で、これを何に使うかというと、今のところ1200MHzあたりのトランスバーターができないかと思っている。従来は水晶発振器を逓倍して信号を得るがスプリアスや回路規模の点から不利になる。自分でPLLを組もうと1/2周波数のVCOを譲っていただいたりしたのだが、自分でまともなPLLを組み上げる自信がない。何気なくアリババを見ていて見つけたのがこのモジュールだ。中華製ではあるが、アナデバの参考回路を忠実に再現していればそんなに酷いものにはならないと踏んだ。
2.4GHzであれば直接発振させることができるし、それ以上のバンドであれば逓倍すればローカルOSCとして利用でき価値が高そう。

というわけで、1年以上間が開いてしまったが、プログラムと格闘することになった。AD9851のDDSをドライブしていたモジュールを改造することにした。
ちょっと、ポイントを記しておく。
1)MSBからビットを送る(AD9851はLSBから送出)
2)32bit構成のレジスターが6個あるが、設定する場合は、5,4,3,2,1,0の順で逆から送る

下位3bitがControlBitでレジスターのアドレスを示す。まず、アドレスのみをセットして、他はオール0のデータを書いてみて、うまく送出されるかをロジアナを使って確認しておく。
Adf4351_0x0

Adf4351_0x0_up
まあ、ここにたどり着くまで、忘れてしまった言語を思い出すのに四苦八苦しているのだが。LSBが5,4,3,2,1,0となっていることを確認している。下はレジスター5のところを拡大している。

Adf4351_1ghz

Adf4351_1ghz_up
次に1GHzのデータを設定した場合。正しくビットが送出されているか、1bitごと確認した。

ここまで確認しておくと、モジュールを接続してみるとあっさり信号が出てきた。
Dscf0228

Dscf0230

スパンを広げてみると、信号の近傍にPLLのクロックである25MHzが並んで見える。アナログ的には実装方法を含めて検討する必要がある。ここまでは周波数設定器の開発なので。

さて、プログラムだが忘れていたのを思い出しながら、大したプログラムでもないが時間がかかってしまった。データは配列で保持しているが、うまくポインター渡しにできるようにしたい。もう少し、格闘してみるか。


| | コメント (2) | トラックバック (0)