CSV export
Since the Surveyor is a multi-beam echo sounder, each time we emit a sonar pulse, we receive multiple signals and combine them to get multiple beams. Each ping consists of multiple βdetectionsβ and each detection is a row in the CSV.
Some data is per-detection, and some is per-ping.
The following columns are presented in CSV export:
latitude
detection's geodetic latitude in decimal degrees north of equator (or negative south)
longitude
detection's geodetic longitude in decimal degrees east of prime meridian (or negative west)
depth
depth of detection in meters
north (m north)
detection's Cartesian position in meters north. Relative to an arbitrary origin.
east (m east)
detection's Cartesian position in meters east. Relative to an arbitrary origin.
pingNumber
sequence number of the ping which produced this data. Each ping has multiple detections, and thus multiple rows in the CSV.
elapsed (s)
time the ping was sent, in seconds since the session started
datetime
time the ping was sent, in UTC
platform position x (m north)
position of the platform in local Cartesian coordinates
platform position y (m east)
position of the platform in local Cartesian coordinates
platform position z (m down)
position of the platform in local Cartesian coordinates
platform attitude Qx
Rotation of the platform, relative to local Cartesian coordinates.
platform attitude Qy
platform attitude Qz
platform attitude Qw
device position x
where the Surveyor device was at the time of sounding in local Cartesian coordinates
device position y
device position z
device attitude Qx
Rotation of the Surveyor, relative to local Cartesian coordinates.
device attitude Qy
device attitude Qz
device attitude Qw
Positions are represented as Local Cartesian Coordinates (x,y,z). x=north, y=east, z=down.
Quaternions
You can think about quaternions as a convenient and compact shorthand for a rotation matrix. Each quaternion is specified by 4 numbers, Qx, Qy, Qz, Qw (often written [x,y,z,w] or [w,x,y,z] or w+xi+yj+zk). They are mathematically convenient to work with but might be slightly harder to interpret than traditional Tait-Bryan angles (yaw, pitch, roll) or Euler angles.
A great interactive explanation of the math and intuition behind Quaternions as rotations can be found at https://eater.net/quaternions.
To expand out [x,y,z,w] as a rotation matrix (operating on column vectors):
Rotation quaternions will have x^2 + y^2 + z^2 + w^2 = 1. Some convenient quaternions to know (expressed as [Qx, Qy, Qz, Qw]):
[0,0,0,1] = no rotation at all
[0.71,0,0,0.71] = 90ΒΊ rotation about the x-axis (north stays the same, east becomes down)
[0,Β±0.71,0,Β±71] = 90Β° rotation about the y-axis (east axis fixed, down becomes north)
[0,0,Β±0.71,Β±0.71] = 90Β° rotation about the z-axis (down axis fixed, north becomes east)
[0,0,Β±1,0] = 180Β° rotation about the down-axis (down stays the same, north becomes south, east becomes west)
If the x and y components are 0, then *all* rotation is around the z-axis (with the vehicle rotation that means it has no pitch/roll)
Last updated