Serial driver to acquire data from a VN-200 Inertial Navigation System. More...

#include <vn200.hh>

Inheritance diagram for dfti::VN200:
Collaboration diagram for dfti::VN200:

Public Slots

void readData (void)
 Slot to read in data over serial and parse complete packets.
 
- Public Slots inherited from dfti::SerialSensor
virtual void readData (void)=0
 Slot to read in data over serial and parse complete packets.
 

Signals

void gpsAvailable (bool flag)
 Emitted when GPS data is available.
 
void measurementUpdate (VN200Data data)
 Emitted to share new VN200Data.
 

Public Member Functions

 VN200 (Settings *_settings, QObject *_parent=nullptr)
 Constructor. More...
 
- Public Member Functions inherited from dfti::SerialSensor
 SerialSensor (Settings *_settings, QObject *_parent=nullptr)
 Constructor. More...
 
 ~SerialSensor ()
 Destructor.
 
void configureSerial (QString _portName)
 Set the serial port parameters. More...
 
void init ()
 Initialize the serial port.
 
bool isOpen (void)
 Returns true if the serial port is open. More...
 
virtual void open (void)
 Opens the serial port. More...
 
void setBaudRate (quint32 rate)
 Set the serial port baud rate. More...
 
void threadStart (void)
 Start the sensor in a thread.
 

Public Attributes

const QByteArray header {"\xfa\x01\xfa\x01"}
 VN-200 packet header bytes. More...
 

Additional Inherited Members

- Protected Member Functions inherited from dfti::SerialSensor
QString validateSerialPort (QString _port)
 Validates a proposed serial port. More...
 
- Protected Attributes inherited from dfti::SerialSensor
QPointer< Settingssettings = nullptr
 Settings object.
 
QString portName {""}
 Serial port name.
 
QSerialPort::BaudRate baudRate {QSerialPort::Baud115200}
 Serial port baud rate.
 
bool _valid_serial = false
 Indicates if serial port passed validation.
 
QPointer< QSerialPort > _port = nullptr
 Serial port object.
 

Detailed Description

Serial driver to acquire data from a VN-200 Inertial Navigation System.

Reads in data from a VectorNav VN-200 Inertial Navigation System over serial and parses the data.

The data packet format is binary, with a header consisting of

  • a sync byte (0xfa)
  • the selected output groups (bitmask, 1 byte)
  • 16-bit bitmasks for the selected outputs from the groups

In the configuration this code assumes, Output Group 1 is selected, and the

  • TimeGps
  • Yaw, Pitch, Roll
  • Quaternion
  • AngularRate
  • Position
  • Velocity
  • Accel

fields are selected. The last two bytes are the checksum.

Constructor & Destructor Documentation

dfti::VN200::VN200 ( Settings _settings,
QObject *  _parent = nullptr 
)
explicit

Constructor.

Parameters
_settingsPointer to settings object.
_parentPointer to parent QObject.

Member Data Documentation

const QByteArray dfti::VN200::header {"\xfa\x01\xfa\x01"}

VN-200 packet header bytes.

Remarks
Used to identify the start of a VN-200 packet. Note that the last three header bytes here change depending on the VN-200 payload.

The documentation for this class was generated from the following files: