OS3D_POINT_SET

ID: 3104

Payload Definition

Data Type
Name
Description

u32

ping_number

assigned sequentially from power on

float

sos_mps

speed of sound (meters per second) used in angle calculations

u16

num_points

number of points reported in the points field

u16

points_type

0 = unclassified, 1 = bottom points, 2 = water column points (we are not currently doing point classification in the device, so will be 0 for now)

float

pwr_threshold

min pwr value used in point detection

u64

utc_msec

time at start of ping, UTC milliseconds (1970 epoch). Will be 0 if not available.

u32

pwr up msec

time at start of ping from power on

u8

version

0

u8

device number

must be < number of devices (so it will be 0 for a single device)

bool

pts_have_pwr

normally will be true (only for compatibility with old data files)

u8

reserved

0

u32

reserved[12]

reserved for future (12 words)

atof_t

point_data[num_points]

see below for atof_t definition

struct atof_point_t
{
	float angle; // radians;
	float tof;	 // time of flight in seconds
	float pwr;	 // power level of the beam at this point
} PACKED_STRUCT;

Interpreting Angle

Zero angle is perpendicular to the face of the RX16 receive module. With the "dot" end of the RX16 facing the forward direction, and the transducer side down, positive angles are to the starboard side.

Note that the angles given in the data were computed with the speed of sound also given in the data. To adjust the angle in post processing for a different speed of sound, use the Snell's Law relation:

sos1 * sin(angle1) = sos2 * sin(angle2)

Last updated