January progress update

In the last few weeks I’ve been really getting into the meat of the project; the circuit has been designed and implemented (see Figure 1) and fairly stable software has been developed for the Arduino to allow it to send the temperature information to the connected computer.

A Python library for the parsing, analysis, recording and visualisation of the sensor data has been developed; currently unimaginatively named “thinglib”. You can part of the visualisation in operation in Figure 2. Hopefully it’ll get a better name when the project does.

Figure 1: MLX Arduino Circuit

The above circuit diagram was developed from the actual breadboard connections, and hopefully is an accurate representation of how that all plugs together.

Figure 2: Whole System

a) "thinglib" temperature visualisation
b) Raspberry Pi with built-in camera
c) Sensor circuit

To allow for the simultaneous capture of visual and thermal data, I’ve stuck the sensor and a Raspberry Pi to the same piece of board, close enough hopefully to eliminate most FOV issues.

Figure 2: Circuit Closeup

a) Sensor itself
b) I2C level shifter
c) Arduino Uno R3

In the current design the sensor sends the calculated raw temperature over serial to a computer where “thinglib” parses it and visualizes it.

Figure 3: First Sensor Test

This is the first test I did of capturing both the thermal data from the sensor and the visual data from the Pi, then overlaying the two. They’re not overlayed correctly, and it goes pretty badly out of sync at the end, but it’ll be a useful debugging tool.

Figure 4: Deviation Code Test

This is a test using a cup of hot water of the standard deviation calculation code which is used to separate the “thermal background” from the image, so that analysis can be performed on the image results. Currently the extraction of the feature vectors required for the classifier techniques is complete, so now the question is to implement the classifiers.

Much is left to do.

Noticed a problem with this post? Leave a comment or submit a pull request.