RaspberryPiVolvoLogger

From ISLAB/CAISR
Title RaspberryPiVolvoLogger
Summary RaspberryPi-based solution for logging CAN data on Volvo trucks
Keywords GNU/Linux, CAN interface, Data Mining, Knowledge Representation
TimeFrame Spring 2015
References http://www.raspberrypi.org/

http://lnxpps.de/rpie/

http://islab.hh.se/mediawiki/index.php/ReDi2Service

http://www.youtube.com/watch?v=KJ5hMkWPEGY

Prerequisites Basic Linux knowledge, programming competence, possibly electronics experience,

Cooperating Intelligent Systems or equivalent basic Artificial Intelligence course

Author Anestis Zaganidis
Supervisor Slawomir Nowaczyk, Yuantao Fan
Level Master
Status Finished


In the ReDi2Service project we are working together with Volvo Technology in Göteborg on collecting on-board data from a fleet of buses and comparing individual vehicles against rest of the group to detect faults and component wear. In that project we are using a specialized hardware and software solution, but we are interested in exploring possibilities of using products such as Raspberry Pi http://www.raspberrypi.org/ in order to lower the costs and increase the flexibility.

The purpose of the project is to implement a flexible data logging system and use it to log data transmitted through the CAN interface. Supervised and unsupervised techniques will be used to compress the data, to investigate the relations between the sensors and to identify deviations from normal operation. The system will consist of three separate components. A service for data collection, a process performing analysis on the data and a User Interface. All the data will be stored in PostgreSQL DBMS and the data aggregation and compression models will be performed within the database. The system will be implemented for GNU/Linux. The hardware will be based on Raspberry Pi, but with no dependencies from it.

The service will collect the data from the CAN interface and according to some rules store them in the database. The rules will include models for the expected values of the sensors, sensors to monitor, compression methods and sensor limits. If a reading from the CAN does not agree with the model the service transmits an alert to the interface or to the network and keeps a record of the deviation.

The data analysis component will be a process with input from the SQL database and output to the configuration files of the service. The origin and nature of the data will not be taken into account on this part, to keep this tool reusable in other domains. Supervised and unsupervised learning will be used to generate data compression models, to find relations between different sensors, to find visualizations that could depict the variation of the operation of the vehicle and finally to create predictive models and rules about the values of the sensors. The generated rules of compression or prediction will then be used from the service to log only deviations from the model. For the purposes of model creation and data reduction, the techniques that will be tested include Principal component analysis (instance data), neural Autoencoder(instance data), histograms(time series data) and Discrete Fourier Transform (time series data). For the clustering of the modes of operation the algorithms that will be tested include k-means, hierarchical cluster analysis and OPTICS.

The Graphical User Interface will allow customization of the conditions under which the data should be logged, setting rules that will trigger an alert, monitor real time data from the sensors and provide visualizations to the user, constructed either from the data analysis process, or defined by the user. The user feedback on an alert could be possibly used to improve the rules that define normal operation.