As well as displaying information direct from the log files, XoomCentre
uses a system of plugins to allow calculations to be performed on the logged
data. These calculations can either modify the data in the logfile, add new traces
to the logfile or print the results of calculations. A no. of plugins have been written already for the
interpreter with auto completion and syntax analysing editor.
Plugins are divided into two general categories.
- File processors - are used to process entire files. Additionally
these can be configured to be called automatically each time a logfile is
imported from the XoomBox.
- Trace Processors are used to process single traces from inside a log
The following plugins have already been written
- Slip Calculator - uses the wheel speed traces to provide 3 additional
traces - 'Driven Axle Speed', 'Undriven Axle Speed' and 'Driven/Undriven
- G-Circle - Calculates total acceleration as the vector sum of 'Lateral
acceleration' and 'Longitudinal acceleration'. The result is added
as an additional trace.
- Empty Trace Remover - examines all the traces in a logfile. If
any contains only 0.0 values, then it is deleted from the logfile.
- Summary - prints summary info on the contents of a logfile.
Includes max and min info on each channel, and no. of samples recorded.
- Acceleration times - displays times taken from launch until a given
speed is reached. Prints speeds at 5mph intervals.
- Trim Start - search from the start of the logilfe until the first
longitudinal acceleration >0.25g - indicating the start of a run.
Delete data more than 1second before this point from all channels.
- Calc Speed and Distance - adds 2 new channels. Vehicle speed,
determined from all the wheel speed sensors, and distance travelled since
the start of the run.
- Light, Medium, Heavy Smoother - a set of 3 separate plugins which
perform varying degrees of smoothing to the selected trace. Used to
minimise noise on poor quality analogue signals.
- Trace Copier - Adds another trace to a logfile which is simply a copy
of an existing trace.
- Zero Average - Adds a constant value to every sample in a trace such
that the average value of all the samples is 0.0. This is typically
of use to correct DC errors in accelerometer readings. If the car
was stationary at the start and end of the runs, then the averages of
lateral and longitudinal acceleration should both be 0.0.
- Integrator - Creates a new trace by calculating the time integral of
the given trace. Useful to calculate approximate velocity from
Below is a screenshot of the 'Trace Copier' PlugIn in the included
As can be seen, the structure of a PlugIn is very simple and the object
oriented structure of the logfile makes writing a PlugIn a simple process.
Perhaps a more interesting example is the acceleration time printout
Here's what the same code looks like if you misspell a variable name.
See if you can spot the difference from the above. The wiggly
underlines highlight the bits of code the editor thinks are wrong.
Home | Up
This site was last updated