The NORSUB6g protocol is a proprietary communication standard with an NMEA-based format, designed to store the data listed below. Note that NORSUB6g includes gravity in the z-axis acceleration measurement.
Data:
-
Roll, pitch, heading
-
Surge, sway, heave
-
Roll rate, pitch rate, yaw rate
-
Surge velocity, sway velocity, heave velocity
-
x acceleration, y acceleration, z acceleration (including gravity)
Format:
$PNORSUB6,T1,T2,roll,pitch,heading,surge,sway,heave,roll_rate,pitch_rate, yaw_rate,surge_vel,sway_vel, heave_vel,acc_x,acc_y,acc_zG,status*CS<CR><LF>
|
NORSUB6g protocol description |
|||||
|---|---|---|---|---|---|
|
FIELD N. |
FIELD |
DESCRIPTION |
UNIT |
TYPE |
NOTE |
|
0 |
$PNORSUB6 |
identifier |
- |
string |
Telegram identifier. |
|
1 |
T1 |
time for valid measurement (internal clock) |
[us] |
uint32 |
Can store values from 0 to (2^32-1). |
|
2 |
T2 |
delay from T1 to telegram is sent |
[us] |
uint32 |
Can store values from 0 to (2^32-1). |
|
3 |
roll |
roll angle |
[deg] |
DBL (%.4f) |
Floating-point number with four decimal places. |
|
4 |
pitch |
pitch angle |
[deg] |
DBL (%.4f) |
Floating-point number with four decimal places. |
|
5 |
heading |
heading angle |
[deg] |
DBL (%.4f) |
Floating-point number with four decimal places. Range: [0.001 - 359.9999]. |
|
6 |
surge |
surge |
[m] |
DBL (%.4f) |
Floating-point number with four decimal places. |
|
7 |
sway |
sway |
[m] |
DBL (%.4f) |
Floating-point number with four decimal places. |
|
8 |
heave |
heave |
[m] |
DBL (%.4f) |
Floating-point number with four decimal places. Sign: Positive (+) when z-down. |
|
9 |
roll_rate |
roll rate |
[deg/s] |
DBL (%.4f) |
Floating-point number with four decimal places. |
|
10 |
pitch_rate |
pitch rate |
[deg/s] |
DBL (%.4f) |
Floating-point number with four decimal places. |
|
11 |
yaw_rate |
yaw rate |
[deg/s] |
DBL (%.4f) |
Floating-point number with four decimal places. |
|
12 |
surge_vel |
surge velocity |
[m/s] |
DBL (%.4f) |
Floating-point number with four decimal places. |
|
13 |
sway_vel |
sway velocity |
[m/s] |
DBL (%.4f) |
Floating-point number with four decimal places. |
|
14 |
heave_vel |
heave velocity |
[m/s] |
DBL (%.4f) |
Floating-point number with four decimal places. Sign: Positive (+) when z-down. |
|
15 |
acc_x |
acceleration x |
[m/s²] |
DBL (%.5f) |
Floating-point number with five decimal places. |
|
16 |
acc_y |
acceleration y |
[m/s²] |
DBL (%.5f) |
Floating-point number with five decimal places. |
|
17 |
acc_zG |
acceleration z incl. g |
[m/s²] |
DBL (%.5f) |
Floating-point number with five decimal places. |
|
18 |
status |
full status message |
- |
uint32 |
1: OK, 0: error. See health monitoring system for more details. |
|
19 |
CS |
NMEA checksum |
- |
HEX |
XOR of characters between $ and * |
Example:
NORSUB6 frame with raw example data is listed below.
$PNORSUB6,735924181,7566,0.188,0.447,357.132,0.012,-0.002,-0.001,-0.000, -0.000,0.003,0.012,0.003,-0.002,0.07679,-0.04408,-9.83225,1*71<CR><LF>
|
Field 0 |
Field 1 |
Field 2 |
Field 3 |
Field 4 |
Field 5 |
Field 6 |
Field 7 |
Field 8 |
Field 9 |
Field 10 |
Field 11 |
Field 12 |
Field 13 |
Field 14 |
Field 15 |
Field 16 |
Field 17 |
Field 18 |
Field 19 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
$PNORSUB6 |
735924181 |
7566 |
0.188 |
0.447 |
357.132 |
0.012 |
-0.002 |
-0.001 |
-0.002 |
-0.002 |
0.003 |
0.012 |
0.003 |
-0.002 |
0.07679 |
-0.04408 |
-9.83225 |
1 |
71 |
Decoded values:
-
T1
-
Raw value: 735924181, decoded time: 735924.181 seconds.
-
-
T2
-
Raw value: 7566, decoded time: 7.566 seconds.
-
-
roll
-
Raw value: 0.188, decoded roll angle: 0.188 degrees.
-
-
pitch
-
Raw value: 0.447, decoded pitch angle: 0.447 degrees.
-
-
heading
-
Raw value: 357.132, decoded heading angle: 357.132 degrees.
-
-
heave
-
Raw value: 0.012, decoded heave: 0.012 m.
-
-
roll rate
-
Raw value: -0.002, decoded roll rate: -0.002 deg/s.
-
-
pitch rate
-
Raw value: -0.001, decoded pitch rate: -0.001 deg/s.
-
-
yaw rate
-
Raw value: -0.002, decoded yaw rate: -0.002 deg/s.
-
-
surge velocity
-
Raw value: -0.002, decoded surge velocity: -0.002 m/s.
-
-
sway velocity
-
Raw value: 0.003, decoded surge velocity: 0.003 m/s.
-
-
heave velocity
-
Raw value: 0.012, decoded heave velocity: 0.0012 m/s.
-
-
acceleration x
-
Raw value: 0.003, decoded acc x: 0.003 m/s².
-
-
acceleration y
-
Raw value: -0.002, decoded acc y: -0.002 m/s².
-
-
acceleration z
-
Raw value: 0.07679, decoded acc z: -9.83225 m/s².
-
-
status
-
Raw value: 1, decoded status: OK.
-
-
checksum:
-
Created from XOR operations of characters between $ and * in the example frame.
-
Note
Unlike industry standards, the NORSUB6g protocol has a fixed reference frame for data (e.g., heave). However, the data's location (e.g., MRU or MP1) remains configurable.