GPS、Jupiter、GHS、PIC

1PPSのタイミングとスーパーインポーズ

1PPSタイミングとメッセージのずれについて
 GPS受信機(ジュピター)から流れてくるNMEA−0183メッセージのタイミングは1PPSと同期はしていません。1PPSは測位すると正確にUTCと同期している(ときどき測位してから1−2分たってタイミングを合わせ直すような動作をする場合がある)、NMEAメッセージのタイミングは同期しません。パワーON後メッセージの流れ方を見ていると、メッセージの出力タイミングは測位した後も変わらず、1PPSのタイミングだけが変化しているように見えます。
 SPAのホームページ中のQ&Aでも書かれていますが、メッセージ出力から+/−1秒以内に1PPSのタイミングが訪れているように思います。ここで作った装置はメッセージを受信してその後にくる1PPS信号をPICで拾って表示出力させるため、1PPSに対して先行する場合にのみうまく動くようになって、後方あるいは同時のタイミングになる場合、2秒おきの表示になるようにしました。
 1つのメッセージたとえばGPRMC出力だけに絞ったとすると、ほとんどの場合メッセージは1PPSに対して先行して出力されています。メッセージが後方になった場合2秒おきの表示になってしまいますが、何度か立ち上げ直せば正常に表示できるようになります。これがめんどうな人は古野電子のタイムトランスファGPS GT−74、GT−77なんかいいのではと思いますが、ちょっと値段が高めですが、NMEAメッセージが1PPSと同期して出力されるようです。
 今後の課題ですが、このJupiterにはもう一つの出力モードがあります。バイナリーメッセージと呼ばれていますが、時刻同期サインや測位系の変更、ポジションピンニング設定はこのモードで行います。バイナリ出力になりますから扱いにくいのですがLabMonソフトを使えばできるようです、私は他のHEX送信のできる通信ソフトを使っていろんな設定を行いました。問題点はバイナリメッセージの位置出力がラジアンであること、普通のPCなら何でもない不動小数点計算は、PICには大変な負担になりますからそのままの出力でないと辛いところです。
 現在の装置は1PPS出力の後にスーパー出力、LCD表示を行っていますので多少タイムラグが発生しますが。このモードですと時刻メッセージ出力の後に1PPS出力されるようですから、また時刻同期サインも出力できるので、1PPSサインにぴったりと合った出力ができるように、このバイナリ出力に対応したプログラムも考えたいと思います。

古野電気(株)GPS_HP
http://www.furuno.co.jp/gps/gpsshop.htm

時刻のスーパーインポーズ
 観測者から、時刻信号をビデオに録画できるようにできないかとの要望でスーパーインポーズの資料集めにかかり、2ヶ月間この装置と奮闘することになりました。スーパーインポーズ用基盤の制作には普通のLSIを使用すると、少なくとも10個以上のLSIを使用しないと制作できないことがわかり「コリャ駄目かな」と思っていたところにまたタイミング良く1チップでスーパーインポーズができるLSIを利用したホームページを見つけました。
 このチップはNECのμPD6454と呼ばれるビデオ機器に使われていたビデオ専用LSIで、マイコンを使って表示制御をするものです。すでにLCDの表示にはマイクロチップ社のPIC16F84を使用していますから、基盤の制作とプログラムを作るだけで実現しそうでした。上記のHPを作った人にメールでこんなことに使うので分けていただけませんかとお願いしたら、快諾していただいて数個送っていただくことができました。おまけに手に入りにくい部品なども分けていただいて大変感謝しています。このLSI現行商品ではμPD6464というものがあるのですが、個人で専用LSIを手に入れることは大変難しく、秋葉原など市場にもなかなか出回らないことが多いようです。
 各社共に同じようなオンスクリーンLSIを作っていますので、まとまった数が出れば専用LSIも入手することが可能でしょう。

NECオンスクリーンICのHP
http://www.ic.nec.co.jp/partic/dspic.html

たけぴょん の映像無線基地
アマチュア無線中心のたけぴょんさんのぺージ
http://www.jr5jrk.com/takepyon/
静止画像をアマチュア無線で送受信
http://www.jr5jrk.com/takepyon/ham/ONSTAK0.HTM

IR-LAP Timer
ゼロヨン計測などをビデオにスーパーする装置をPICで制作
http://lillith.sk.tsukuba.ac.jp/~kashima/laptimer/laptimer.html

問題点
 GHS時計のようにロジックICを使っていれば、表示、出力遅延問題はほとんどありませんが、PICの様にマイコンを使うとどうしても、ひとつずつ命令をこなしていくために遅延問題が発生します。1PPSの信号を直接PICで受信してすぐにスーパーのプログラムに入るようにプログラムしていますが、ここで使ったPICマイコンはクロックが10MHzで1命令が約0.4μ秒のサイクルになります。どれくらいの遅延になっているかはまだ測定していませんが、マイコンでの遅れ、スーパーインポーズLSIの遅れがそれにプラスされ、またビデオ信号のタイミングに合わせてスーパーされますのでかなりの遅れが想像できます。

 以下にGHSのLED発光とスーパーインポーズした時刻情報の録画画面をLED発光を中心に7フレームずつおとした画面を入れておきます。良く見ているとLED発光より早くスーパーされる場合がありますが、ほとんどはLED発光の立ち上がるフレームで数字が切り替わります。見う少し実験してみないと分かりませんが、LEDというのは案外立ち上がりが悪いのかもしれません。簡単な観察ではLED発光からの遅れは感じられませんでした。

LED発光が1フレームに収まる場合 LED発光が2フレームにまたがる時
-3frame -3frame
-2frame -2frame
-1frame -1frame
0frame 0frame
1frame 1frame
2frame 2frame
3frame 3frame

 もう一つ遅れを少なくするために、OSD専用LSIを使用せずにPIC自身でビデオ信号を作り出して出力画像にマーキングする方法もありますが、LED発光を別の方法でCCDに直接映し出したほうがいいのかも知れません。いずれPICを使った簡易型のタイムキーパーを制作しようと考えています。

-NEXT-

Dynic Astropark 天究館