6・2・2 データ送信
データは標準に従いシリアル非同期形式で送信される。図6・4に示すように、1バイトごとに、スタートビット→データビットの順番で送信される。データを送らないときはHレベルになっており、データを送り始める合図として、1ビット分の論理値0が送られる。これをスタートビットという。リスナはデータが0に変化したことを合図として、受信を始める。
図6・4 データ送信フォーマット
(拡大画面:11KB) |
 |
次に8ビットデータを送る。送る順番は下位ビットからである。アルファベットだけを送るのならば、7ビットあればすべてのデータを送れる。そのため、7ビットモードをサポートしている場合もある。(普通日本では、8ビットが使われる。)
ストップビットは、1バイト分の通信の終了を知らせる1ビット分の論理値1である。
ここで電圧と論理値などの関係について触れておく。NMEA 0183の古いバージョンの規格との互換性を保つために、信号において、待機中、符号、論理値1、OFF、ストップビットを表す場合は−15.0V〜+0.5Vを用い、動作中、スペース、論理値0、ON、スタートビットをあらわす場合は+4.0V〜+15.0Vを用いることが前もって定義されている。
以下のパラメータが用いられる。
ボーレート |
38400bps(標準の通信の場合は4800bps) |
データビット |
8(D7=0) |
パリティビット |
なし |
ストップビッド |
1 |
bpsというのは1秒間に何ビットのデータを送るかを表す数値である。日本では、データ8ビット+スタートビット+ストップビットが1組で、1バイトのデータを送るために10ビットを送ることになる。したがって、1秒間に送れるバイト数はこのbpsの10分の1で、4800bpsなら1秒間に約480文字送れる計算になる。
トーカのデータはプリントできるアスキ型で、位置、衛星情報などが含まれている。典型的なメッセージは11〜最大79文字長さで、20ms毎に1回以上送信する。(標準の通信の場合は20〜79文字、1秒に1回程度送信する。)
(1)文字
全ての送信データはASCII型である。最上位ビットD7は常にゼロである。
(A)予約文字
予約文字としてある特定のフォーマットに用いられる文字の一覧を表6・1に示す。“^”文字(HEX 5E)を除き、これらはデータフィールドでは使ってはいけない。
表6・1 予約文字
アスキー表示 |
16進数表示 |
10進数表示 |
説明 |
<CR> |
0D |
13 |
キャリッジリターン |
<LF> |
0A |
10 |
ラインフィード(文末を示す。) |
$ |
24 |
36 |
文の開始を示す。 |
* |
2A |
42 |
チェックサムフィールドの範囲を示す。 |
, |
2C |
44 |
フィールドの範囲を示す。 |
! |
21 |
33 |
未使用(将来の使用を予定) |
/ |
5C |
92 |
未使用(将来の使用を予定) |
^ |
5E |
94 |
アスキー文字を16進数で表現していることを示す。 |
~ |
7E |
126 |
未使用(将来の使用を予定) |
|
(B)有効文字
印刷可能な全てのASCII文字(HEX 20〜HEX 7E)から予約文字を除いた文字が有効文字である。有効文字を表6・2に一覧として示す。
表6・2 有効な文字
(拡大画面:73KB) |
 |
(C)未定義文字
予約文字と有効文字以外のASCIIの値(文字)は、除外され、いかなる時にも送信されることはない。ただし、IEC 68859−1で定義された8ビット文字を送信する必要のある場合は、予約文字“^”(HEX 5E)の1文字に2文字追加し、3文字の形式で表し送信する。
例えば、“127.5°”と送る場合、“°”(HEX F8)は有効文字ではないので、“127.5^F8”と送信する。予約文字<CR><LF>を送るためには、“^0D^0A”と送信し、“^”自身を送るためには“^5E”と送信する。
(D)文字記号
単位、データフィールドの型、センテンスの型等を表す特有な文字をアルファベット1文字に置き換えて表す場合がある。それらの文字記号は、表6・3のように送信される。
表6・3 記号として用いられる場合の文字の意味の例
記号 |
意味 |
A |
状態を表す記号 yes、データ有効、警告フラッグクリア、自動、アンペア(A:電流の単位) |
a |
AからZあるいはaからzまでのアルファベット文字をあらわす不定文字 |
B |
バール(bar:圧力の単位、1000mb=100kPa(パスカル))、ボトム |
C |
摂氏(℃:温度)、コースアップ |
c |
有効な文字、計算できる |
D |
度(°:角度) |
E |
エラー、東、エンジン |
F |
ファトムズ(fm:fathoms主に水深を測る場合の単位、1fm=1.828766m) |
f |
フィート(ft:1ft=0.30479m) |
G |
大圏、緑色 |
g |
良い |
H |
コンパスの船首方位、ヘッドアップ、ヘルツ(Hz:周波数の単位)、湿度 |
h |
時間、16進数 |
I |
インチ(inch:1inch=0.0254m) |
J |
入力動作の終了 |
K |
キロメータ(km)、時速(km/h) |
k |
キログラム(kg) |
L |
左、ローカル、ロストターゲット |
I |
緯度、リットル(l)、流量(l/s) |
M |
メータ(m)、秒速(m/s)、磁気、マニュアル、体積(m3) |
m |
分、メッセージ |
N |
海里(nm:1nm=1852m)、ノット(kt)、北、ノースアップ、ニュートン(N:力の単位) |
n |
数字、アドレス |
P |
紫色、占有(“$”に続く場合のみ)、位置計測センサ、パーセント(%)、パスカル(Pa) |
Q |
質問、捕捉されているターゲット |
R |
右、羅針方位、赤色、相対的、参照、レーダートラッキング、回転数(RPM:1分あたりの回転数) |
S |
南、マイル(mi:1mi=1609.31m)、時速(mi/h)、シャフト |
s |
秒(s) |
T |
時間差、真、トラック、追跡されたターゲット |
t |
テスト |
U |
推測航法による予測 |
u |
符号(マイナスであれば“-”(HEX 2D) |
V |
データ無効、否定、警告フラッグセット、マニュアル、ボルト(V:電圧の単位) |
W |
西、水(海水、領海、水面)、転舵開始 |
x |
数字を表す変数 |
y |
経度 |
Z |
時刻 |
|
|