FGPS主催Jupiterモニターレポート

(その6。Rockwellバイナリモード活用)

(99.01.09ちょっと情報追加)

新着情報

98年10月からSPAにおいてちょっと値下げされてジュピターが販売されているようです。

 

はじめに

jupiterrockwellバイナリモード活用は、プログラムを書く必要もあり、私にはかなりハードルが高いことです。情報だけ集めて、実際の実験には到ってないので御了承ください。しかし、せめてバージョン情報の表示やNMEAモードへの復帰くらいはできるようになりたいなと考えています。

言語として何を選択するかという問題もありますが、C(gcc)として汎用性を高めたいなとは考えています。

 

1RS232Cプログラミング情報の入手(このサイトの他ページと重複あり)

 

(雑誌・書籍)−以下のものは98年3月以降秋葉原書泉ブックタワーで入手

トランジスタ技術 98年5月号 CQ出版社

  特集「回路設計のためのパソコン活用」

初級者の私には難しいのですが、GPSエンジン活用の基本となるRS232C関連のプログラムについて、事例(VCとVB)があります。

Interface 98年6月号 CQ出版社

Visual Basicでエンジョイプログラミング CQ出版社

「外部機器制御に使えるRS-232C通信機能の使い方」という章もあります

VisualC++5.0入門 ビギナー編 SoftBank

エンジニアのためのC&C++プログラミング CQ出版社

実用RS−232C通信プログラム作成法 CQ出版社

 

(FGPS会議室・Lib

シリアル通信プログラム関連 mes3-# 1266,1537,1564

FGPSLibにはソースコードを含んだRS232Cプログラム(主にVB)がアップされており、そのコードを勉強するだけでもかなりの知識向上では。

Lib2- 20,101,258Win95 シリアルポートモニタ)

Lib5- 1,2,6,91,

 

(ホームページ等)

Com toolというシリアルラインモニターソフトが、TNKのホームページ http://www.yo.rim.or.jp/~kenk から入手できます。バイナリーデータのHex表示もできます。試用期間中でもフル機能がサポートされているようです。

プログラムを書けないが、GPSのバイナリーデータをちょっと分析してみたいと思う方には便利かもしれません。ただし、価格がちょっと高い(29,800円です。ホームページには98年9月現在、2,9800と表記されていますが、問い合わせて確認しました)。

 

 

(その他)

Linux付属ドキュメント(http://jf.linux.or.jp において日本語化も行われています)

Serial-Programming-HOWTO

Serial-HOWTOなど

 

 

2Rockwellバイナリーモードに関する勉強方法など

(FGPSからの情報収集)

jupiterにおけるRockwellバイナリーモード活用

96年にFGPSでモニターテストが行われたRockwellNaviCardに関する報告も参考になると思います。

 

ロックウェルの開発キット等に添付されるLABMON(英語版dosソフト)の入手方法FGPS mes3-# 1854

私がftpsearchで検索した結果の例を挙げると、

ftp://ftp.ultranet.com/pub0/d/dsmart/biz_html/drop/

があります。同じディレクトリにあるjupiter2.pdfというファイルもゲットすると、1PPS信号とバイナリモードの時刻データとの関係も分かります。更には、バイナリーモードでのコマンド番号一覧も分かります(番号が分かるだけで、具体的なフォーマットは記述されていません…)。

ただし、現在(99.01.09)はファイルが存在しなくなっています。

 

最近(99.01.08)新たにaltavistaで検索したところ、ドイツですが、

http://www.unitronic.de/rockwell/GPS-002.htm

に開発キットのドキュメントやLABMONがあることが分かりました。ドイツのサイトからLABMON.zip100KBほどのファイル)をダウンロードするとlabmon47がダウンロードされてしますので、jupiter.zip(3MB以上)をダウンロードすることをお勧めします。このアーカイブの中には、LABMON49や各種マニュアルが同梱されています。

 

LABMONは、私のところのwindows95上のDosではフルスクリーン及び窓とも立ち上げ不可でした。Ms-Dosモードで立ち上げ直せば問題ありませんでした(私の経験の範囲です)。

FGPS mes3-#2446からのツリーにLABMONの主要な使い方がアップされています(98.11.07)

 

jupiterの開発キットのマニュアル(英文pdfファイル)の入手方法FGPS mes3-#2504(99.01.07)

このマニュアルをゲットするとLABMONの使い方やバイナリーモードにおけるデータの詳細な仕様を知ることができます。

 

DelomeTripmateRockwellバイナリーモード活用 FGPS mes3-#1409,1995

後継機種であるearthmateはデフォルトでrockwellバイナリモードデータが出力されるそうです(FGPS mes2-#3678,mes4-#3337からのツリー)。

 

(インターネット上の情報)

JupitertrimbleなどのGPSユニットからのデータを分析してくれる「Data monitor」というソフトも販売されています(かなり高価ですが…)。http://www.mooreinc.com を参照してみてください。

 

xntpのソースファイル活用)

著作権等はアーカイブ付属のReleaseNoteをご覧ください。

アーカイブが http://www.eecis.udel.edu/~ntp から入手可能です。最新バージョンはntp4.0.72g(Apr.27.98)となっています(non-X)。私はxntp3-5.93.tar.gzをダウンロードして利用しています。

アーカイブの中には、html形式のドキュメントがあります。アーカイブをwindows95上で解凍して、win95上で動くブラウザーで読むこともできました(当然かもしれませんが…)。

Jupiter用のドライバーは、Driver Type31ですが、他のドライバーと違いhtmlによる説明ファイルはなし。

これにより何ができるのか、SPAのjupiterでもいいのかなど、ソースファイルや他のドキュメントを見ないと分かりません。

(以下、ソースファイルの解析はあまりよく分からないので、認識が間違っていたら御指摘ください)

refclock_jupiter.cをみるとbaud rate9600となっています。SPAのjupiter4800固定ですのでソースの修正が必要と考えられます。当然1PPS関連のheader fileincludeされております。これらのコードを活用すれば、jupiterbinary活用も容易にできるかも…。

 

<注意>

xntpのアーカイブのjupiter.hの10行目をみると、jupiterの仕様書にミスがある旨のコメントがありました。確かに、SPAのマニュアルのセクション1.2.1でも0xff81となっていますね。これは間違いということでしょうか?。既に世界的に周知の事実かもしれませんが…。

#define JUPITER_SYNC 0x81ff /* sync word (book says 0xff81 !?!?) */

 

 

 

(未定稿)

Windowsでもunixコマンドやgccが利用できます(http://www.cygnus.com/misc/gnu-win32 を参照)のでgccを利用してjupiterbinaryデータをいじることを試みてみました。

 

GNU-win32に関する参考文献

「フリーだから出来るLinuxで作るSOHOサーバー」日経BP社

UNIX USER ソフトバンク 9812月号

この号の記事はbeta18についてのものですので、ちょっと記述内容に古い点があります。

 

GNU-win32windows95上のソフトで、最新版はbeta19(98.08.05現在)です。

usrtools.exe cdk.exe    (beta19へのパッチ。dllファイルのみ)の3つのファイルをダウンロードしてください。結構サイズが大きい(合計16M程度)ので、ダイヤルアップ環境の方はsplitディレクトリのファイルをダウンロードしてつなぎ合わせるという作業が必要になります。また、必要に応じてマニュアル類もダウンロードすると良いと思います。

インストールは到って簡単で、通常のwindowsソフトと同様にインストーラーまでついており、スタートメニューにもアイコン(Cygwin32 beta 19という名前)が登録されます。

 

 

C:ドライブ以外にインストールした場合(例:g:\gnu-win32)は、インストールでディレクトリにある cygnus.bat を修正して、/tmp/homeディレクトリを環境変数を用いて適切に設定する必要があります。

Cygnus.batの追加設定例

SET TMPDIR=G:\GNUWIN32\TMP

SET HOME=G:\GNUWIN32\HOME

この場合、cd /tmpは大丈夫ですが、cd /;cd tmpはうまく行かない場合がありますので注意してください。

更には/binをマウントします。

以上の設定を終えて、アイコンをダブルクリックすると、MsDosプロンプトが立ち上がり、unixユーザーには馴染みがあるシェルプロンプトが表示されます。

/(ルートディレクトリ)はc:\となっていますので、参考にしてください。

 

以下のようにhello.cを作成し、

#include <stdio.h>

main(void){

printf("Hello!\n");

}

gcc -o hello hello.c としてコンパイルしてみてください。うまくいきましたか?hello.exeという実行形式ファイルができているはずですので実行してみてください。