VectorNav C++ Library
Functions
UART ASCII Asynchronous Packet Parsers

This group of methods allow parsing of ASCII asynchronous data packets from VectorNav sensors. More...

Functions

void vn::protocol::uart::Packet::parseVNYPR (vn::math::vec3f *yawPitchRoll)
 Parses a VNYPR asynchronous packet. More...
 
void vn::protocol::uart::Packet::parseVNQTN (vn::math::vec4f *quaternion)
 Parses a VNQTN asynchronous packet. More...
 
void vn::protocol::uart::Packet::parseVNQMR (vn::math::vec4f *quaternion, vn::math::vec3f *magnetic, vn::math::vec3f *acceleration, vn::math::vec3f *angularRate)
 Parses a VNQMR asynchronous packet. More...
 
void vn::protocol::uart::Packet::parseVNMAG (vn::math::vec3f *magnetic)
 Parses a VNMAG asynchronous packet. More...
 
void vn::protocol::uart::Packet::parseVNACC (vn::math::vec3f *acceleration)
 Parses a VNACC asynchronous packet. More...
 
void vn::protocol::uart::Packet::parseVNGYR (vn::math::vec3f *angularRate)
 Parses a VNGYR asynchronous packet. More...
 
void vn::protocol::uart::Packet::parseVNMAR (vn::math::vec3f *magnetic, vn::math::vec3f *acceleration, vn::math::vec3f *angularRate)
 Parses a VNMAR asynchronous packet. More...
 
void vn::protocol::uart::Packet::parseVNYMR (vn::math::vec3f *yawPitchRoll, vn::math::vec3f *magnetic, vn::math::vec3f *acceleration, vn::math::vec3f *angularRate)
 Parses a VNYMR asynchronous packet. More...
 
void vn::protocol::uart::Packet::parseVNYBA (vn::math::vec3f *yawPitchRoll, vn::math::vec3f *accelerationBody, vn::math::vec3f *angularRate)
 Parses a VNYBA asynchronous packet. More...
 
void vn::protocol::uart::Packet::parseVNYIA (vn::math::vec3f *yawPitchRoll, vn::math::vec3f *accelerationInertial, vn::math::vec3f *angularRate)
 Parses a VNYIA asynchronous packet. More...
 
void vn::protocol::uart::Packet::parseVNIMU (vn::math::vec3f *magneticUncompensated, vn::math::vec3f *accelerationUncompensated, vn::math::vec3f *angularRateUncompensated, float *temperature, float *pressure)
 Parses a VNIMU asynchronous packet. More...
 
void vn::protocol::uart::Packet::parseVNGPS (double *time, uint16_t *week, uint8_t *gpsFix, uint8_t *numSats, vn::math::vec3d *lla, vn::math::vec3f *nedVel, vn::math::vec3f *nedAcc, float *speedAcc, float *timeAcc)
 Parses a VNGPS asynchronous packet. More...
 
void vn::protocol::uart::Packet::parseVNINS (double *time, uint16_t *week, uint16_t *status, vn::math::vec3f *yawPitchRoll, vn::math::vec3d *lla, vn::math::vec3f *nedVel, float *attUncertainty, float *posUncertainty, float *velUncertainty)
 Parses a VNINS asynchronous packet. More...
 
void vn::protocol::uart::Packet::parseVNINE (double *time, uint16_t *week, uint16_t *status, vn::math::vec3f *ypr, vn::math::vec3d *position, vn::math::vec3f *velocity, float *attUncertainty, float *posUncertainty, float *velUncertainty)
 Parses a VNINE asynchronous packet. More...
 
void vn::protocol::uart::Packet::parseVNISL (vn::math::vec3f *ypr, vn::math::vec3d *lla, vn::math::vec3f *velocity, vn::math::vec3f *acceleration, vn::math::vec3f *angularRate)
 Parses a VNISL asynchronous packet. More...
 
void vn::protocol::uart::Packet::parseVNISE (vn::math::vec3f *ypr, vn::math::vec3d *position, vn::math::vec3f *velocity, vn::math::vec3f *acceleration, vn::math::vec3f *angularRate)
 Parses a VNISE asynchronous packet. More...
 
void vn::protocol::uart::Packet::parseVNGPE (double *tow, uint16_t *week, uint8_t *gpsFix, uint8_t *numSats, vn::math::vec3d *position, vn::math::vec3f *velocity, vn::math::vec3f *posAcc, float *speedAcc, float *timeAcc)
 Parses a VNGPE asynchronous packet. More...
 
void vn::protocol::uart::Packet::parseVNDTV (float *deltaTime, vn::math::vec3f *deltaTheta, vn::math::vec3f *deltaVelocity)
 Parses a VNDTV asynchronous packet. More...
 

Detailed Description

This group of methods allow parsing of ASCII asynchronous data packets from VectorNav sensors.

The units are not specified for the out parameters since these methods do a simple conversion operation from the packet string. Please consult the appropriate sensor user manual for details about the units returned by the sensor.

Function Documentation

void vn::protocol::uart::Packet::parseVNACC ( vn::math::vec3f acceleration)

Parses a VNACC asynchronous packet.

Parameters
[out]accelerationThe acceleration values in the packet.
void vn::protocol::uart::Packet::parseVNDTV ( float *  deltaTime,
vn::math::vec3f deltaTheta,
vn::math::vec3f deltaVelocity 
)

Parses a VNDTV asynchronous packet.

Parameters
[out]deltaTimeThe DeltaTime value in the packet.
[out]deltaThetaThe DeltaTheta values in the packet.
[out]deltaVelocityThe DeltaVelocity values in the packet.
void vn::protocol::uart::Packet::parseVNGPE ( double *  tow,
uint16_t *  week,
uint8_t *  gpsFix,
uint8_t *  numSats,
vn::math::vec3d position,
vn::math::vec3f velocity,
vn::math::vec3f posAcc,
float *  speedAcc,
float *  timeAcc 
)

Parses a VNGPE asynchronous packet.

Parameters
[out]towThe tow value in the packet.
[out]weekThe week value in the packet.
[out]gpsFixThe GPS fix value in the packet.
[out]numSatsThe numSats value in the packet.
[out]positionThe ECEF position values in the packet.
[out]velocityThe ECEF velocity values in the packet.
[out]posAccThe PosAcc values in the packet.
[out]speedAccThe SpeedAcc value in the packet.
[out]timeAccThe TimeAcc value in the packet.
void vn::protocol::uart::Packet::parseVNGPS ( double *  time,
uint16_t *  week,
uint8_t *  gpsFix,
uint8_t *  numSats,
vn::math::vec3d lla,
vn::math::vec3f nedVel,
vn::math::vec3f nedAcc,
float *  speedAcc,
float *  timeAcc 
)

Parses a VNGPS asynchronous packet.

Parameters
[out]timeThe time value in the packet.
[out]weekThe week value in the packet.
[out]gpsFixThe GPS fix value in the packet.
[out]numSatsThe NumSats value in the packet.
[out]llaThe latitude, longitude and altitude values in the packet.
[out]nedVelThe NED velocity values in the packet.
[out]nedAccThe NED position accuracy values in the packet.
[out]speedAccThe SpeedAcc value in the packet.
[out]timeAccThe TimeAcc value in the packet.
void vn::protocol::uart::Packet::parseVNGYR ( vn::math::vec3f angularRate)

Parses a VNGYR asynchronous packet.

Parameters
[out]angularRateThe angular rate values in the packet.
void vn::protocol::uart::Packet::parseVNIMU ( vn::math::vec3f magneticUncompensated,
vn::math::vec3f accelerationUncompensated,
vn::math::vec3f angularRateUncompensated,
float *  temperature,
float *  pressure 
)

Parses a VNIMU asynchronous packet.

Parameters
[out]magneticUncompensatedThe uncompensated magnetic values in the packet.
[out]accelerationUncompensatedThe uncompensated acceleration values in the packet.
[out]angularRateUncompensatedThe uncompensated angular rate values in the packet.
[out]temperatureThe temperature value in the packet.
[out]pressureThe pressure value in the packet.
void vn::protocol::uart::Packet::parseVNINE ( double *  time,
uint16_t *  week,
uint16_t *  status,
vn::math::vec3f ypr,
vn::math::vec3d position,
vn::math::vec3f velocity,
float *  attUncertainty,
float *  posUncertainty,
float *  velUncertainty 
)

Parses a VNINE asynchronous packet.

Parameters
[out]timeThe time value in the packet.
[out]weekThe week value in the packet.
[out]statusThe status value in the packet.
[out]yprThe yaw, pitch, roll values in the packet.
[out]positionThe ECEF position values in the packet.
[out]velocityThe ECEF velocity values in the packet.
[out]attUncertaintyThe attitude uncertainty value in the packet.
[out]posUncertaintyThe position uncertainty value in the packet.
[out]velUncertaintyThe velocity uncertainty value in the packet.
void vn::protocol::uart::Packet::parseVNINS ( double *  time,
uint16_t *  week,
uint16_t *  status,
vn::math::vec3f yawPitchRoll,
vn::math::vec3d lla,
vn::math::vec3f nedVel,
float *  attUncertainty,
float *  posUncertainty,
float *  velUncertainty 
)

Parses a VNINS asynchronous packet.

Parameters
[out]timeThe time value in the packet.
[out]weekThe week value in the packet.
[out]statusThe status value in the packet.
[out]yawPitchRollThe yaw, pitch, roll values in the packet.
[out]llaThe latitude, longitude, altitude values in the packet.
[out]nedVelThe NED velocity values in the packet.
[out]attUncertaintyThe attitude uncertainty value in the packet.
[out]posUncertaintyThe position uncertainty value in the packet.
[out]velUncertaintyThe velocity uncertainty value in the packet.
void vn::protocol::uart::Packet::parseVNISE ( vn::math::vec3f ypr,
vn::math::vec3d position,
vn::math::vec3f velocity,
vn::math::vec3f acceleration,
vn::math::vec3f angularRate 
)

Parses a VNISE asynchronous packet.

Parameters
[out]yprThe yaw, pitch, roll values in the packet.
[out]positionThe ECEF position values in the packet.
[out]velocityThe ECEF velocity values in the packet.
[out]accelerationThe acceleration values in the packet.
[out]angularRateThe angular rate values in the packet.
void vn::protocol::uart::Packet::parseVNISL ( vn::math::vec3f ypr,
vn::math::vec3d lla,
vn::math::vec3f velocity,
vn::math::vec3f acceleration,
vn::math::vec3f angularRate 
)

Parses a VNISL asynchronous packet.

Parameters
[out]yprThe yaw, pitch, roll values in the packet.
[out]llaThe latitude, longitude, altitude values in the packet.
[out]velocityThe velocity values in the packet.
[out]accelerationThe acceleration values in the packet.
[out]angularRateThe angular rate values in the packet.
void vn::protocol::uart::Packet::parseVNMAG ( vn::math::vec3f magnetic)

Parses a VNMAG asynchronous packet.

Parameters
[out]magneticThe magnetic values in the packet.
void vn::protocol::uart::Packet::parseVNMAR ( vn::math::vec3f magnetic,
vn::math::vec3f acceleration,
vn::math::vec3f angularRate 
)

Parses a VNMAR asynchronous packet.

Parameters
[out]magneticThe magnetic values in the packet.
[out]accelerationThe acceleration values in the packet.
[out]angularRateThe angular rate values in the packet.
void vn::protocol::uart::Packet::parseVNQMR ( vn::math::vec4f quaternion,
vn::math::vec3f magnetic,
vn::math::vec3f acceleration,
vn::math::vec3f angularRate 
)

Parses a VNQMR asynchronous packet.

Parameters
[out]quaternionThe quaternion values in the packet.
[out]magneticThe magnetic values in the packet.
[out]accelerationThe acceleration values in the packet.
[out]angularRateThe angular rate values in the packet.
void vn::protocol::uart::Packet::parseVNQTN ( vn::math::vec4f quaternion)

Parses a VNQTN asynchronous packet.

Parameters
[out]quaternionThe quaternion values in the packet.
void vn::protocol::uart::Packet::parseVNYBA ( vn::math::vec3f yawPitchRoll,
vn::math::vec3f accelerationBody,
vn::math::vec3f angularRate 
)

Parses a VNYBA asynchronous packet.

Parameters
[out]yawPitchRollThe yaw, pitch, roll values in the packet.
[out]accelerationBodyThe acceleration body values in the packet.
[out]angularRateThe angular rate values in the packet.
void vn::protocol::uart::Packet::parseVNYIA ( vn::math::vec3f yawPitchRoll,
vn::math::vec3f accelerationInertial,
vn::math::vec3f angularRate 
)

Parses a VNYIA asynchronous packet.

Parameters
[out]yawPitchRollThe yaw, pitch, roll values in the packet.
[out]accelerationInertialThe acceleration inertial values in the packet.
[out]angularRateThe angular rate values in the packet.
void vn::protocol::uart::Packet::parseVNYMR ( vn::math::vec3f yawPitchRoll,
vn::math::vec3f magnetic,
vn::math::vec3f acceleration,
vn::math::vec3f angularRate 
)

Parses a VNYMR asynchronous packet.

Parameters
[out]yawPitchRollThe yaw, pitch, roll values in the packet.
[out]magneticThe magnetic values in the packet.
[out]accelerationThe acceleration values in the packet.
[out]angularRateThe angular rate values in the packet.
Examples:
uart_protocol/main.cpp.
void vn::protocol::uart::Packet::parseVNYPR ( vn::math::vec3f yawPitchRoll)

Parses a VNYPR asynchronous packet.

Parameters
[out]yawPitchRollThe yaw, pitch, roll values in the packet.
Examples:
getting_started/main.cpp.