1.はじめに

No.125ではGPSを使った1pps(1パルス/秒)のユニットを作成し、No.126で周波数カウンタにまとめました。少々クセが強く、使い難いところがあったのも事実です。そこで、No.134では割と普通のカウンタが再度登場しました。

No.126のカウンタではGPSユニットの出力する1ppsを使っていたのですが、実際にどの程度の精度なのか良く解っていませんでした。手元に精度の良い基準が無かったからです。最近になって、CQ出版社のトラ技にGPSDOが紹介されキットが出ました。このキットを仕入れて試したところ、No.126はかなり良い精度と分かりました。

そこで気を良くし、GPSとOCXOを組み合わせた写真1のカウンタを作ってみました。OCXOをGPSにロックさせる事はせず、両方の良いところを選んで使い分けるハイブリッド方式としました。電圧で周波数をコントロールできるOCXOが手持ちに無かったという事情もあります。つまり揺らぎのあるGPSと、安定するまで時間のかかるOCXOの使い分けです。

photo

写真1 GPSとOCXOを切り替えて使うカウンタです。

2.No.126カウンタの評価

まずはNo.126のGPSの1ppsを使用したカウンタの評価をしました。GPSDOを入手する前は、GPSユニットの出力する1ppsの揺らぎの影響が全く分かりませんでした。この検証のため、GPSDOの10MHzを1sのゲートタイムでカウントしてみると、ほぼ±0でした。但し、たまにプラス1とマイナス1を表示する事があります。10sのゲートタイムでも同様で、100sでも同様でした。従って、GPSの1ppsをそのまま使う方式では、揺らぎによる±1の誤差があるという事になります。それ以上は私の貧弱な環境下では解りません。少なくともゲートタイム方式で使うのであれば、十分な精度と言えるでしょう。

3.回路

GPSもOCXOも、それぞれの良さと弱点があります。これを両方共に使ってみようと考えた事から、実験と製作が始まりました。このようにしてゲートタイムを切り替えて使う、ハイブリッド方式のカウンタとなりました。GPSはパソコンから設定を変更し、1MHzを取り出すようにしました。OCXOも1MHz出力を用いました。両方を1MHzに合わせる方が扱いやすいためです。これでNo.126と異なり、100msのゲートタイムも使えるようになります。これで使い難かった部分をカバーし、信頼性も確保できるカウンタとなります。GPSは設定で周波数を変える事ができますが、周波数によってはジッタが大きくなってカウンタには不向きとなります。1MHzでは問題ないようです。

実験を重ねた結果、図1のような回路としました。OCXOは写真2のような1MHz出力を使用しました。OCXOとGPSは1MHzの50Ω出力を作り、オシロでリサージュ波形を確認できるようにしました。50Ωの正弦波出力を作った理由はこのためです。しかし、周波数の合致している様子を見るだけなら、方形波出力だけで十分と後から気が付きました。

photo

図1 回路図になります。(※クリックすると画像が拡大します。)

photo

写真2 使用した1MHzのOCXOです。

GPSはu-bloxのNEO6Mを使った、aitendoのモジュール写真3を使いました。出力はLEDから取り出しています。写真3でも解るのですが、バッテリーに難点があって既に外しています。この後で、バックアップ用に電気二重層コンデンサの0.22μFを取り付けています。前回はGPS出力の1ppsをコードで引き回しました。これも誤差の要因となりそうで気になっていましたので、GPSのアンテナは外付けとしてSMAコネクタで本体に引き込むオーソドックスな手法にしました。

photo

写真3 使用したNEO6MのGPSモジュールです。

ゲートタイムはOCXOとGPSの1MHzの一方を選び、74HC74に入れます。この出力は500kHzの方形波になります。つまりこの位置でのゲートタイムは1μsになります。後は74HC390を連ねてゲートタイムを10倍にして行きます。8段を重ねて100sまで作りました。この場合、せいぜい100sまでと思います。1000sでは16分40秒にもなり、とても使う気にはなれません。もっとも奇数段では作りにくい事情もあります。

写真4はブレッドボード上に全体を組み、動作チェックをしている様子です。電源ユニットは写真5のように、段ボール箱の底に置いてトラブル防止としています。このようにして回路の動作を確認しました。

photo

写真4 ブレッドボード上に全体を組んで動作チェックをしている様子です。

photo

写真5 OCXO用の24Vスイッチング電源です。段ボールの底に置いています。

4.作成

いつものように図2の実装図を作成してから、基板を作成しました。図3がジャンパー線のレイヤーになります。写真6はハンダ付けの途中です。写真7がハンダ面になります。デジタル回路ですので普通のユニバーサル基板を使っています。入力アンプは高周波を扱いますので、部品面がグランドのユニバーサル基板を使いました。図4が実装図です。図5が入力を10分周するプリスケーラ付きの入力アンプです。これはNo.134の実装図とほぼ同じです。写真8がGPSまでを取り付けた様子です。基板への入出力は全てコネクタを使っていますので、取り外しは容易です。1MHzの出力も大宏電機のTMPコネクタを使っています。最近では入手困難のようですので、SMAコネクタを使うのが良いかもしれません。

photo

図2 実装図です。(※クリックすると画像が拡大します。)

photo

図3 ジャンパー図のレイヤーです。(※クリックすると画像が拡大します。)

photo

写真6 ユニバーサル基板を組んで動作チェックをしている様子です。

photo

写真7 ハンダ面です。

photo

図4 入力アンプの実装図です。

photo

図5 1/10分周付き入力アンプの実装図です。

photo

写真8 基板の完成です。

写真9のように基板間の仮配線を行い、再び動作チェックを行いました。これで予定とおりに動作すれば、安心して次の作業に移れます。

photo

写真9 基板間の仮配線をして動作チェックです。

ケースはLEADのRC-3を用い、写真10のように穴あけをしました。OCXOのサイズがありますので、高さのあるケースが必要になります。市販のケースでは、あまり選択肢がありません。OCXOは固定する向きで精度に影響がありそうですので、オーソドックスにソケットを下側にしています。内部を組み立てている様子が写真11です。

photo

写真10 ケースの穴あけをしたところです。

photo

写真11 ケースに部品の取り付け中です。

なお、aitendoのキットを2点使って、USBコネクタとGPSの間に入れています。写真12のUSB-TTL変換のAKIT-DTR340Bで、写真13が部品です。しかし、このまま組み立てるとOCXOと接触してケースに入れられません。そこでUSB-Bコネクタだけのキットと組み合わせて、写真14のように90度の角度を作り、更にネジ止めできるようにしました。

photo

写真12 aitendoのUSB-TTL変換キットです。

photo

写真13 内部の部品です。

photo

写真14 USB-Bのキットを利用し、90度の角度を作りました。

裏面パネルは写真15のようになりました。BNCコネクタ4個は、GPSとOCXOのそれぞれのTTLレベルと50Ωのサイン波出力になります。前述のように、ロジックレベルだけで十分だったと思います。

photo

写真15 裏面パネルの様子です。

内部は写真16のように、かなりタイトな感じです。もう一回り大きめが良いかもしれません。メインの基板はアルミ板を立てて固定しています。OCXOの右側に見えるのがメイン基板とアルミ板です。

photo

写真16 内部の様子です。

LCDは写真17のようにネジで前面パネルに固定しました。ネジが出るので普段はあまりしない工作ですが、この場合は仕方なしと考えました。

photo

写真17 LCDはこのように固定しました。

5.ソフト

ソフトはBASCOM AVRで作りました。テキスト形式ですが、以下に置いておきます。ソフトのタイミングがカウントする値に影響しないように、細心の注意をしたつもりです。そのため、ゲートタイムは74HC390を並べてハードで作っています。ソフトとしては、入って来たパルスをカウントして表示するだけにしました。

ソフトダウンロード

ところで、普通の方形波を使ってゲートタイムとした場合、100msや1sは良いのですが、10sや100sでは何もしない無駄な時間が半分できてしまいます。これでは時間が無駄ですし、第一面白くありません。そこで、カウントが終了してLCDに表示した後に、CPUがソフトで100msの位置にある74HC390に向けて、パルスを送出するようにしました。途中に入っている74HC32が、パルスを通すためのゲートです。これで強制的に次のカウントを始めるようになります。このおかげで、100sでも100ms程度のインターバルで次の測定ができるようになりました。少々姑息な手段とは思いますが、極めて快適です。

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

6.調整

まずはPCにCHG340Gのドライバをインストールする必要があります。USBコネクタを接続しただけでは、USB-TTL変換キットが認識できません。これはaitendoのサイトからダウンロードできますが、まあ面倒なところです。

次にGPSの設定を変更します。そのためPCにGPS用ソフトのu-centerをダウンロードします。これはメーカであるu-boxのサイトから入手できます。このソフトはGPSの設定変更や、衛星の補足状況等が確認できて面白いです。ただ、普段作業用に使っているXPのパソコンには入れる事ができませんでした。仕方なく原稿作成用のWin8のパソコンを使いました。まず1ppsとなっている出力を1MHzとします。デューティ比は50%にするのが良いと思います。そして保存のためにSave configをします。これでGPSの出力とOCXOの出力が同じ1MHzとなり、電源を切っても設定は保存される事になります。このあたりは解り難いところですので、トラ技の2016年2月号等を参照して下さい。もちろん私のような作り方であれば、実験段階でクリアしています。

調整は入力アンプの半固VRを調整し、最大感度にするだけです。ここまでテストしていますので、ほとんど合っていると思います。次に周波数カウンタとして動作確認を行い、OCXOの周波数をGPSに合わせます。バラックの状態でシツコク動作確認をしていますが、ケースに入れると温度等の条件も変化します。OCXOの調整は多少暖まった程度ではダメで、数日単位、あるいは月単位で暖めてから最終的に合わせるべきです。しかし、人それぞれの環境がありますので、そう簡単ではありません。何故かと言うと、私のデスクにはトータルで全てをOFFするブレーカがあり、作業中以外には必ずOFFしています。世の中で一番危険で信用のないのが自分で作ったモノだからで、これを切らないと不安だからです。ですから私としては、OCXOのエージングは半日が精一杯となります。このような理由で、基本的にはOCXOが使い難い環境です。

とりあえずGPSDOの出力をカウントし、写真18のように問題がなく10.00000000MHzと10mHzの桁まで確認しました。

photo

写真18 GPSDOのカウント中です。

7.使用感

それ程のエージング時間をかけなくても、その時の状況でOCXOとGPSを使い分ける事ができるようになりました。これが理想とは思いませんが、それなりには使いやすいカウンタとなりました。No.126では±1の揺らぎがありましたが、このカウンタでも+1カウントする事があります。ただ、-1カウントはほとんどありませんし、少なくなったように感じます。その理由は解りません。デジタル的には±1カウントの誤差は仕方ないのですが・・。

1MHzのOCXOを使用せずGPSのみを使うならば、GPSの出力は100msに設定するべきでしょう。そうすれば74HC390は1個で1sと10sが作れます。OCXOが安定するまで時間がかかりますが、GPSはすぐに安定します。このような様子を見ていると面白いのですが、GPSだけで十分とも言えそうです。GPSの方が精度的には桁違いに良いため、OCXOの存在価値には疑問があります。もっと数を作らないと完成度が上がりません。せっかくGPSDOを入手したのですから、それを基準にして使う方が良いという考えもあるでしょう。これも試してみたいと思います。