1.はじめに

No.189では、ちょっと変わった制御のGPSDOを紹介しました。3回くらいに分割しても良さそうな大作になってしまいました。しかし一番重要な部品であるOCXOの入手に問題があったのは事実で、全く同じ作り方は困難だったと思います。入手が確実な発振器を探していたところ、秋月電子で12.8MHzのVC-TCXOを売っている事に気が付きました。10MHzの方が使いやすいのですが、これは仕方ありません。やはり実験という事で、少し違った考え方で写真1のように製作してみました。

写真1 このように、小型にまとめたGPSDOです。

今回も実験記になってしまいましたが、部品の入手だけは問題ないと思います。このVC-TCXOの持っている特性には少々限界があり、前回に比べて精度が1~2桁程度は悪化しているように感じました。最初から想定されていたのですが、GPSDOは精度を追求しないと意味がありません。今回も次回作へのステップと考えており、作りやすく性能の良い10MHzのGPSDO 3が頭の中にあります。

2.   構成

周波数の比較方法を少し変えましたが、基本的な考えはNo.189と同じです。図1のように12.8MHzを74HC390で1/2に分周し、その後で74HC74で1/4に分周すると同時に90度の位相差の1.6MHzを作りました。そして、1.6MHzに設定したGPSの出力と比較しました。この結果をCPUで読み取り、D/A変換出力でVC-TCXOの周波数を微調整するという構造です。

図1  このような構成としてみました。

最初の実験では、12.8MHzのVC-TCXO出力を1/4分周しながら90度の位相差を作ってみました。GPSの設定を3.2MHzにして周波数の比較をしようとしたのですが、ノイズが多く問題がありました。No.189ではノイズを無視したのですが、1.6MHzであればノイズが少ない事に引かれ、1.6MHzで周波数の比較をする事にしました。

なお、No.189では10MHzと10MHzを比較して10MHzを出力していました。位相をLCD上に円で表し、1秒で1回転すると1Hzの相違でした。今回は12.8MHzを1/8にして1.6MHzで比較しますので、1秒で1回転すると8Hzの相違になります。つまり細かい調整については不利になりますが、これは仕方がありません。

比較は手元にあったSN16913を用いて行い、No.189のようなダイオードDBMやハイブリッドの分配器等は使用しませんでした。コストカットでもあります。あまりに古いSN16913を使う必要は全く無く、入手容易なDBM用のICで充分です。しかし状態の監視のために、グラフィックLCDを使用しています。これが無いと見ていて楽しくありません。

更に問題となるのが、VC-TCXOの周波数制御になります。前回のOCXOはTUNE電圧が5Vで1Hzの周波数変化でしたので、12ビットD/A変換のMCP4726で充分でした。ところがこのVC-TCXOを試したところ、4Vで250Hzの変化をしました。データシートでは±6~12ppmとなっていますので、ちょうどその程度の変化幅と思います。250Hz÷4V=62.5Hz/Vですので、単位を変えると62.5mHz/mVとなります。12ビットのD/A変換の出力は、5V÷4096=1.22mVステップになります。従って1ステップが62.5×1.22=76.3mHzになりますが、このような使い方としては明らかに粗すぎでしょう。しかし、16ビットを使ったとしても結局は周波数の差が離れ過ぎてしまい、CPUではズレが全く測れません。つまり収束できません。そこで12ビットのMCP4726をD/A変換器に使うのですが、出力を抵抗で1/47に分圧して変化幅が小さくなるようにしました。76.3mHz/47=1.62mHzステップになりますので、この場合では充分かと思います。制御電圧には、パネル面からのVRで調整する直流電圧をプラスしました。これでグラフィックLCDの回転状態を見ながら、VRで租調整を行います。これは周波数カウンタで確認しながらでないと、最初は難しいと思います。ズレによる回転の様子が解るようになると、周波数カウンタも不要でしょう。その後は自動的に周波数が調整されます。

また、前回はGPSユニットを外部に置いて10MHzを入力していました。これは実験の流れがあって仕方がなかったのです。今回はGPSのアンテナで入力し、GPSモジュールは本体の内部に入れています。この方が作り方としては王道なのでしょう。GPSアンテナの使いまわしも容易になります。

2台目ですので、No.189よりも相当にスムーズに進める事ができました。写真2はブレッドボード上で実験している様子です。このようなバラックの状態で動作する事を確認し、見つかった問題点を解決しながら製作を進めました。

写真2 このようにブレッドボード上で実験をしました。

3. 回路

このように実験をした結果、図2のような回路としました。今回は5Vだけの単電圧ですので、電源としては容易です。入力を12VにしてレギュレータICで5Vにするだけです。もちろん9Vでも8Vでも支障はありませんし、放熱を考えるとその方が有利です。性能的にはそれ程ノイズを気にしても仕方ありませんので、レギュレータIC一個の簡単な電源で済ませています。

図2 全回路図。

私が使用したGPSはU-bloxのNEO-6Mを使ったモジュールで、aitendoで購入しました。型番的にはNEO6M5PSMA-Uになります。GPSアンテナも付いていますが、これは使用せずにコネクタでパネル面にアンテナ端子を出しています。ちょうどアンテナ無しのモジュールが無かったためです。同じNEO-6Mを使っていても、モジュールによっては1pps出力の取り出し方法が異なります。この1ppsの設定を変更して1.6MHzにしますので、この端子が重要になります。端子に出ているものが楽ですが、LEDの点滅で使用している場合は取り出す必要があります。使用したモジュールの場合は、コネクタ端子に1ppsがありました。NEO-8Mを使ったモジュールでも使用できますが、1pps出力の取り出し方法を確認して下さい。

出力としてはVC-TCXOの出力を利用した12.8MHzのサイン波とロジックレベル、またこれを分周した100kHzのロジックレベルとしました。

4. 製作

図3の実装図を先に製作してから作りました。図4がこのハンダ面です。図5がジャンパーです。サンハヤトのシールド付きのユニバーサル基板ICB-98DSEをカットして使っています。このサイズになると実装図は重要で、先に製作しないとほぼ不可能と思います。74HC14のICソケットの下にジャンパー線がありますので、これを先にハンダ付けします。しかし部品面は全面がシールド付きの基板ですので、写真3のように絶縁用のカプトンテープを貼ってからジャンパー線のハンダ付けしました。他のジャンパー線は部品面に出していますので、最後に配線する方が良いでしょう。

図3  部品面の実装図。

図4  ハンダ面。

図5  ジャンパー。

写真3  最初のハンダ付けはICの下側のジャンパーです。ショートしないようにテープを貼っています。

ケースにはLEADのPSA-2を用いました。容積的には、かなりギリギリのサイズです。私の穴あけの方法ですが、パネル面にメンディングテープを貼って、穴の位置を鉛筆で書きます。ズレがあれば消しゴムで消して、納得するまで修正します。これに合わせて、まず写真4のようにドリルとリーマーで円の穴あけをしました。LCDの穴はパネル内にハンドニブラが入りませんので、外から開けるしかありません。従って内側にも写真5のように穴の位置をテープ上に書いておきます。中央にハンドニブラの入る穴を開けて、まず写真6のように十文字にカットします。三か所は雑でも大丈夫です。一か所だけは最初にスタートする線にピタリ合わせておきます。ここをスタートとして四か所をカットするように穴を開けています。まず写真7のようになります。最終的には写真8のように穴が開きます。このように分割する方が、慎重に作業ができます。面倒ですが綺麗に開ける事ができます。この後でヤスリで各穴の仕上げを行い、写真9のようにしました。

写真4 まずドリルとリーマーで円を開けます。まだ開けただけの状態です。

写真5 内側にハンドニブラ用の穴を描いておきます。

写真6 ハンドニブラで十文字にカットします。

写真7 まず四分の一をカットします。

写真8 全て開けたところです。

写真9 ヤスリで仕上げたところです。

基板を固定しようとすると、ゴム足のケース内に入る部分が、どうしても邪魔になりました。このケースのサイズでは、ゴム足の位置と基板の取り付けが重なる確率が高いと思います。そこで写真10のように付属のゴム足ではなく、シール方式のものを貼りました。なお、基板は接着式樹脂スペーサーのペテットT-600を使って固定しました。これは秋月電子で購入したものです。正方形の中央で基板を固定するタイプでは、スペーサーがケースに入りません。

写真10  付属のゴム足は使用せず、シール式の足を貼りました。

グラフィックLCDは写真11のようにコネクタ付きのコードを自作しました。次回の10MHzように備えて写真12のように2つ製作しています。なお、このグラフィックLCDですが、No.189ではTG12864B-02WWBVを使用していますが。今回は小型にする目的もあってTG12864E-02Aを使用しています。長い型番で恐縮ですが、検索すると簡単に見つかると思います。どちらも秋月電子で購入したものです。この時点で全体の動作確認をしているはずなのですが、写真を忘れているようです。これらの部品を写真13のように固定しました。写真14のように全部品を取り付けて動作確認をしました。使用したケースのPSA-2は、パネル面に多少の高さがあって都合が良いのですが、前後のパネルがペナペナしてしまいます。そこで写真15のようにアルミの板で補強してみました。強力な両面テープで固定した程度ですが、これでケースとしてガッチリします。また、後から追加したのですが5VのレギュレータICの放熱が気になったため、Lアングルを使ってケースに接触させている様子が見えます。No.189に比べて相当コンパクトに作る事ができました。これはVC-TCXOが小型である事と、電源が単電圧というメリットのためでしょう。最終的には写真16のようになりました。パネル面が狭いため、スイッチとBNCコネクタの一部は裏面に設けました。

写真11 LCDと基板間を接続する直付けのコードを自作しました。

写真12 次回作のために2つ製作しています。

写真13 各部品を固定したところです。

写真14 内部の配線をして動作確認を行いました。

写真15 アルミ板で補強した様子です。これでガッチリとします。

写真16 最終的な様子です。

​​​​​​​5. ソフト

ソフトは基本的には、No.189と同じです。少々継ぎ接ぎだったところを改め、一貫的になるようにしました。写真17にLCDの表示を示します。中央の下側に6041と表示していますが、電源ONしてからの秒数です。時間管理をこの秒数に一本化しました。前回は500秒を1セットとして、何セット経過したかという表示でした。しかも500秒はカウントダウンでセット数はアップという、少々チグハグな作り方でした。秒数で一本化すれば、これほど明確なものはありません。そこで100000秒までのカウントアップに統一しました。そこからは0秒に戻ります。一日以上ですので、私の使い方では充分過ぎる時間です。

写真17 LCDの表示です。

ついでに周波数のズレ表示も10秒、100秒、1000秒にしました。また、100秒間隔で周波数を合わせると、修正が追いつけなくなる事に気が付きました。そこで常に10秒間隔で修正しています。これは安定なOCXOとの相違なのでしょう。

LCDの右下に見える3501はD/A変換の出力値を表示しています。12ビットですので0~4095を出力しますので、ここで収束しているのは少々高過ぎです。VRを調整してもう少し下げるべきでしょう。参考程度と思いますが、ソフトは「ここ」に置いておきます。なお、No.189のソフトも同時にバージョンアップし、10秒、100秒、1000秒としました。これも「ここ」に置いておきます。

なお、PCの環境はWINDOWS XPで、BASCOM AVRの製品版 VER.1.11.9.8を使ってコンパイルしています。書き込みはAVR ISPmk2ですが、基板のISP端子との接続には自作の変換ケーブルを使っています。これ以外の環境についての確認はしていません。

6. 調整

まず必要な設定として、GPSモジュールの1pps出力を1.6MHzにする事です。GPSモジュールの中にはこの設定変更ができないものもありますので、良く確認して下さい。設定方法等についてはトラ技等のGPS記事を参考にして下さい。使用するソフトのバージョンによって、かなり操作が異なります。内容的にはTP5で出力周波数を16000000として、Duty Cycleを50%にします。また、Save Configをクリックして、設定をGPSモジュールのEEPROMに保存しておきます。これで次回からは手間が省けます。

1.9MHzのFCZコイルは1.6MHzに合わせ、出力レベルがピークになるようにします。このコイルの出力にある半固VRは、DBM ICへの入力が600mV程度になるようにします。これはあまり意味が無かったようにも思います。

TP1,TP2にX-Yに設定したオシロスコープを接続し、周波数のズレが円の回転として見られるようにオペアンプの半固VRを調整します。最終的にはグラフィックLCDの表示が正しく回転するように調整します。

TUNEでの可変範囲が適当になるように、前後の半固VRを調整します。いずれにしても、簡単に終わるような調整ではありません。

7. 使用感

想像どおり周波数は動きます。暴れるという印象です。もちろん普通の発振器よりは遥かに安定なのでしょうけど、GPSDOとしては動きます。初めはNo.189のGPSDOと同じタイミングでソフトでの修正をしていましたが、全くNGでした。QRHに追いつけない感じで、いつまで待っても安定しません。そこで、常時10秒毎に修正するように設定しました。それでも、時間をかければ10mHz程度には収まります。普通の水晶発振に比べれば、桁違いの性能には違いありません。やはり、このようなGPSDOには超安定したVC-OCXOが良い事が解ります。性能的には仕方がありませんが、実験として充分に楽しんだGPSDOでした。

後から気が付いたのですが、このようなVC-TCXOであれば、普通のPLLを用いた方がずっと安定するだろうという事です。恐らく、長時間的にも短時間的にもその方が良さそうです。これは作ってみないと気が付きませんでした。PLLに比べてメリットが少ない気もしますが、これも作らないと解りません。

少々改良すべきと思うのが、円の調整に半固VRを2個使っている事です。正しい円の回転にする調整がシビアで面倒なのです。そこで、これはソフト上で自動的に行いたいと考えているところです。

一度困った事がありました。何時まで待っても4Hz程度のズレが収束しませんでした。これには悩んだのですが、GPSユニットの出力からズレている事を確認しました。試しにGPSアンテナを変えると良好になりました。パソコンのソフトを介さないと受信状態が解らないのですが、やはりアンテナは重要という事なのでしょう。