Sunday 30 November 2014

Low-cost Laser Cut Colorimeter

There are many low cost spectrometers on the internet that make use of compact discs and low cost CCD detectors from cell phones or webcams to determine the different colours that are emitted or absorbed by objects. These spectrometers are great for many applications where you want to look at the relative intensity of the different colours such as what colours are absorbed by a molecule or looking at whether the light is spread out or whether only specific colours are emitted as is the case with LEDs and fluorescent lights. These spectrometers have one large flaw - auto-exposure. Autoexposure means that the time that the CCD takes to collect light from the sensor is dynamically adjusted. Some expensive cameras allow this to be adjusted however most cell phones and web cams do not. This means that comparisons between different spectra intensities are difficult and getting reliable measurements of intensity out of these instruments is near impossible.

This is where the colorimeter comes in. By using only a single coloured LED and a light dependent resistor a low cost reliable measurement can be made of how a substance absorbs light. There are a large number of colour based test kits for nitrates, phosphates, pH and nitrites that could use this colorimeter for environmental monitoring. Other applications include measuring yeast growth rates through a turbidity measurement and if an LED is used as the detector a fluorescence measurement could be done which may be of interest in the environmental monitoring of oil in the environment.

You can buy educational colorimeters for 147 USD ( 144USD (, a nice open source model is made by IORodeo for $85USD and commerical systems are even more expensive.

Instead of a complete computer control system the whole idea of this project was to strip the colorimeter down to the least number of components at the lowest cost possible to get it out to schools, citizen scientists and researchers. There have been many colorimeters build recently that make use of 3D printed parts but due to the time needed to print we opted for laser cutting which is cheap and quick to fabricate. To avoid the need for a box which would involve more materials and assembly, a layering of laser cut sheets was used. Borrowing from the royal society colorimeter we make use of a multimeter which can read the resistance of a light dependent resistor the CdSe or CdS LDRs are cheap and can detect similar colours to our eyes (however they are not very good in the IR). This is the cheapest option low cost multimeters are ~$5 and many schools already have multimeters. Using a button battery (CR2032) allows the device to be portable and also current limits the LED so there is no need for a resistor in series with the LED. However as the battery's energy is used the system will need to be recalibrated as the voltage will drop. Most CR2032 button battery have around 225mAh, an LED drawing ~16-18mA should allow at worst 12 hours of operation.

The three layers made of 3.5mm acrylic was laser cut using a 30W CO2 laser. The top layer is the shielding layer which holds the battery in place, the middle layer contains the light dependent resistor on the left and the LED on the right. Any 5mm LED will work, the LED is connected to a button battery and the final layer clamps the other side of the LED legs onto the battery.

The pins for the multimeter plug into the holes where the LDR pins have been pulled through this forms a good tight connection meaning no soldering needed. A clip is used to stabilise it and keep the legs of the LED connected to the battery.

The cost of the different components not including the multimeter came to under $2NZD. I will do one more check on the laser cut designs and upload them to thingiverse for anyone to use in the next few days.

Nitrate colorimetric test

Excess nitrates in waterways leads to algal blooms and can kill wildlife. Monitoring streams and waterways is therefore an important target. To begin with a 3D printed spectrometer based on the design was used to look at what colours are absorbed by the API nitrate test kit dye (a ~$10USD test kit that can do a 100 tests).

3D printed spectrometer with the iphone LED flashlight as the light source. Another cell phone was used to collect the spectra.

From left to right; the LED from the iphone contains blue, green and red light, the dye without any nitrate added shows an absorbance in the blue, the solution appears yellow so this makes sense, the dye with the dye and nitrate show the absorption of the green light. The line plots were done in ImageJ using the profile plot.

Standards were then prepared of zinc nitrate in a range which is common in fresh water 50ppm, 100ppm 150ppm and 200ppm. 

The API test kit contains two solutions that need to be added and then a colour develops over time. The colour becomes more red as the green is absorbed by the dye-nitrate complex.

Colour card that came with the API nitrate test kit showing the range of colours.

Human error in reading the card makes the test not very accurate and the difference between what different people deem to be a particular colour varies. By measuring using a colorimeter you can measure much smaller changes in nitrates and remove the variability introduced through the colour card.

Colorimeter with the blue LED we later used a green LED as well.

A test tube covered with tape was used to block the ambient light from the room. You could also use a toilet roll or a film canister.

Taking the logarithm of the resistance (which is a measure of the absorbance) should give a value proportional to concentration. Using the blue LED (wavelength of 495nm) we get a linear relationship between the nitrate concentration and log(R).

Next we tried a green LED as we saw that green was being removed when the nitrate was being added. The sensor showed a non-linear response with absorbance but a linear response in intensity.

The bottom plot shows the nitrate concentration vs. the resistance which is linear this indicates the non-linearity is logarithmic and most likely due to the sensor. To work out if the non-linearity was the sensor not responding linearly or the test we used a spectrometer that we could control the exposure time and get a good reading of the absorbance.

Absorbance vs. wavelength for the different solutions you can see that as nitrate is added the dye starts absorbing in the green part of the spectrum.

Plotting the peak absorbance at 550nm as it changes with the nitrate concentration a linear relationship is found and therefore test is linear and the sensor is non-linear for the intensities it was dealing with.It could also be the multimeter which may not have the best electronics (highest impedance opamp).

This is OK as you can fit a polynomial or even better a logarithmic fucntion (as the error is probably logarithmic) and use that to determine the nitrate concentration from an unknown by plugging the absorbance into the equation.

The next step is to see if quantitative fluorescent measurements could be done by using another LED as a detector ( This could allow for measurement of the oil in water for example. If you choose an LED with a green or red emission they have build in filters so a combination of a blue (405nm) LED and a green LED as a detector could be used to determine quantitatively the amount of oil in water. It looks like devices already exist that use LEDs to do this measurement. This may interest the publiclab community as the characterisation of the type of oil could be done with a low cost spectrometer and the concentration measured using the colorimeter. (

This work was done as part of preparation for the year of light 2014 with Sandra Jackson the teacher fellow currently in the Photon Factory.

Sandy preparing the standard solutions of Zinc nitrate.

Here are some links to interesting pages on colorimeters that the Photon Factory colorimeter borrowed from.

Breadboard with LED powered by 9V battery and LDR connected to a multimeter.

First design that caught my attention with a LED and LDR on a pcb.

Nitrate and phosphate detection using LED and LDR that included tuning of the LDR circuit.

IORodeo low cost colorimeter with great posts on doing nitrate measurements and integration with an Arduino and software.

Good open source review of using LEDs as sensors for fluorescence and for absorbance measurements

Article using LEDs as detectors (for fluorescence)

Laser cut LDR LED box with a multimeter as the measuring device

Michigan tech colorimeter using an Arduino and a 3D printed case.

This was all integrated into an opensource colorimeter for water quality measurements.
(Article on water quality (unfortunately not open source)
OS water platform.JPG

1 comment:

  1. This comment has been removed by a blog administrator.