Java/Serial Communication
シリアル通信
多くのGPSデバイスはシリアル通信で決まった形式のデータを出力する.I-O
DATA USBGPS2/SMD9 も同様.このデバイスとシリアル通信する場合は下記のよ
うに設定すればよい.ボーレートが 4800 である点に注意.これを間違うとま
ともに受信できない.
baud rate: 4800 data: 8 bit parity: none stop bit: 1 bit flow control: none
例えばTera Term等で上記パラメータで接続すると下記のようなデータが取得
できる.
$GPGSV,3,2,12,19,00,000,,07,00,000,,04,00,000,,24,00,000,*76 $GPGSV,3,3,12,16,00,000,,28,00,000,,26,00,000,,29,00,000,*78 $GPRMC,002903.030,V,,,,,,,291006,,,N*4A $GPGGA,002904.030,,,,,0,00,,,M,0.0,M,,0000*5A $GPGSA,A,1,,,,,,,,,,,,,,,*1E $GPGSV,3,1,12,20,00,000,,10,00,000,,31,00,000,,27,00,000,*7C $GPGSV,3,2,12,19,00,000,,07,00,000,,04,00,000,,24,00,000,*76 $GPGSV,3,3,12,16,00,000,,28,00,000,,26,00,000,,29,00,000,*78 $GPRMC,002904.030,V,,,,,,,291006,,,N*4D $GPGGA,002905.039,,,,,0,00,,,M,0.0,M,,0000*52 $GPGSA,A,1,,,,,,,,,,,,,,,*1E $GPGSV,3,1,12,20,00,000,,10,00,000,,31,00,000,,27,00,000,*7C $GPGSV,3,2,12,19,00,000,,07,00,000,,04,00,000,,24,00,000,*76 $GPGSV,3,3,12,16,00,000,,28,00,000,,26,00,000,,29,00,000,*78
Javaでシリアル通信
Java Communications APIのWindows実装をSUNが出さなくなったらしいので,
下記のオープンソース実装であるRXTXを利用する.APIは一緒なので使い方は
変わらない.
サンプルプログラムとしては,例えば下記のものが使える.シリアルポート設
定部分と,ボーレート設定部分を適当に書き換えること.
java TwoWaySerialComm
で,データが取得できる.