Here is a list of some past projects, in no particular order:

Calculation of equivalent conicity UIC519/EN15302

UIC519 (now EN15302) is a standard that describes how to calculate equivalent conicity. See the separate page for equivalent conicity.

Cooler performance prediction

Analysis of an existing tool for performance prediction of coolers regarding pressure drop and heat transfer. Comparison to measured data. Uses a web interface.

Navigation on rail networks

A system for high precision navigation for trains. See the separate page about the rail network navigation library.

Toolbox for sqlite database access from octave

A toolbox for octave has been written in c++, using a so called oct file. This makes it possible to access an sqlite database from within octave.

Price calculation helper for web site

A perl cgi script was written to make it possible to easily calculate price and options for a configurable product, calculating currency convertion, taxes etc.

Realtime system streaming data on analog out

Design and implementation of a system running realtime linux (preemptive) reading digital data from a source in real time, performing some calculations and outputting on analog out via an analog out pci card. The system synchronizes the clocks with a feedback loop.

Multiple user calculation server (TCP)

A server performing calculations was written, where results are presented to clients through networked communication. As the performance demands are soft-realtime, it was important that communication delays were kept to a minimum. A multithreaded server was written where all possibly blocking communication tasks were implemented in separate threads, making the calculations finish independent of client communication.

Reverse engineering of network communication application (TCP and UDP)

A client had an existing network application which used an undocumented protocol, making it difficult to change the behavior of the application.
The protocol was reverse engineered, documented and a new client was written.

Realtime programming

Programming of a device in Adbasic (see Interface to data queues for testing written in c.

Automatic track recognition

A machine learning algorithm was applied to automatically recognize different types of damages on the track. This work lead to a best paper award. See the Track Condition Analyzer page.

Calibration of laser sensors

Found a routine for calibrating laser sensors.

Simulation of derailment risk

Technical documentation

Documentation of a mathematical algorithm.

Matlab GUI

Several projects, ranging from simple to complex GUI:s.

Version control system

Setup, configuration and backup scripts of subversion for a client. Basic subversion education of developers.

Emulation of measurement files

To be able to use existing software, a translator was written to create files of a certain format from measured signals.