The generic DMI (Distance Measurement Instrument) is used to input a body velocity from a wheel speed encoder (odometer) for example. It's basically just a time stamped velocity along the vehicle X axis expressed in m.s^-1

Conventions

Qinertia expect a velocity information in m.s^-1 and expressed in the vehicle X axis reference frame. The velocity is positive forward and negative backward.

ASCII DMI Format

This is the easiest way to input odometer data using a CSV like text file format.

The file format is composed of an optional header followed by odometer velocities stored line by line. If Qinertia doesn't find the header, the default configuration values are used. The file can use either Windows, Unix or Linux line ending conventions and should use UTF-8 encoding.

ASCII header

The header is used to configure how Qinertia should parse and import the file. The header always starts with the $qdmi magic keyword to identify it. Then each parameter can be set using a succession of <param>:<value> pairs stored line by line.

If there is no header or the parameter is not present in the file, Qinertia will use the default value that is indicated in bold.

ParamOptionalDescription

$version

(error)DMI ASCII file format version, should be set to 1

$timeSource

(tick)

DMI data time stamp format:

  • gps: Seconds from 6 January 1980 (no leap second)
  • gpsTow: GPS time of week in seconds
  • utcIso: ISO 6801 (e.g. 2020-06-19T11:50:04.535Z)
  • unix: Seconds from 1 January 1970 (UTC time)

Default value is gps

$gpsWeekNumber

(tick)

GPS week number to use in case $timeSource is gpsTow

If gpsTow is selected this parameter is mandatory and has no default value.

ASCII data

he ASCII DMI data part is just a succession of velocity measurement stored line per line. Each column field is separated by a tabulation '\t' or semicolon ';' character.

FieldTypeUnitOptionalDescription

timestamp

--(error)

The velocity data time stamp expressed in the format specified by the $timeSource header field.

velocity

doublem.s^-1(error)Vehicle velocity along the body X axis.

Example

The example below shows a few DMI measurements with the file header:

$qdmi
$version:1
$timeSource:gpsTow
$gpsWeekNumber:2000
490735.000;0.19288155
490736.150;0.14271985
490737.015;0.49167461
490737.515;0.82166114
490738.320;0.43269981
490738.456;0.08995617
490739.101;-0.05499884
490739.532;-0.12632891
490740.000;0.000000
490741.000;0.000000
490742.000;0.000000
490743.000;0.000000
TEXT

Zero Velocity Update

Qinertia can both use zero velocities updates generated by your system as shown in the example above

Binary DMI Format

For now, there is no binary file format for the DMI.