Maker Pro

How to Make an Arduino Data Acquisition System, Part 2: Calibrating the Sensors

March 23, 2018 by Rolland Maro

DIY DAQ Part 2: How to calibrate the sensors on your data acquisition system.

Previous article:

DIY DAQ: Make an Arduino Data Acquisition System

Now that the components and layout have been covered, we will get our data acquisition system working and run some experiments with it. Details for the integration of the components and program used can be found in the previous article and the full report that is attached at the end of this project. The complete device is shown in the picture below.

System Specifications

  • The system has two buttons: a reset button denoted by number 1 on the image and a start/stop button (6).
  • The device can be powered in three different ways: through a USB cable (2), through a 9Volt DC battery, and or through a 6 to 12 volt adapter (3).
  • The system has 4 temperature channels but can be expanded to 8 channels (there are free slots for temperature ADC inside on number 9).
  • The minimum time between sampling of data is 4 seconds.
  • The device will tear the weighing scale each time it is stopped, reset or powered up.
  • The tearing scale has an ability to accommodate a 3 bridge load cell which is more accurate.

They can only accommodate type K thermocouples and can measure the temperature at a scale of 0 to 1024°C.

System Operation

  • A memory card is inserted into a memory card slot before starting the device.
  • Power is then turned on using a switch.
  • After 5 seconds, an LED indicator should turn on showing that the device is initialized correctly and every component is connected and ready to start sampling.
  • To start taking data, button number 6 is pressed briefly and the LED indicator will start to pulsing showing that data is being taken. The time between pulses is the rate of sampling.
  • To stop taking data, the same button is pressed again.

Arduino Code

This Arduino code will declare the pins that the sensors and SD card are connected to. It will also add the data acquisition process to your Arduino.

Arduino Data Acquisition Code

Calibrating the Sensors and Other Equipment

Parameters that are calibrated in the DAQ system are temperature and weight. The flow sensor has a pre calibrated library and therefore doesn’t need calibration.

Temperature Calibration

The process of calibrating the thermocouple (type K) sensor was done using a liquid in glass thermometer with a range of 0 to 200°C. A linear curve is fitted to the data to obtain the best approximation as shown in the figure below.

Thus the calibrating equation used to convert the instrument value to approximate temperature is ...

T(℃)=0.2493x where x=instrument reading.

Weight Sensor Calibration

The calibration of weight scale is done using 4 standard masses: 100 g, 200g, 500g, and 1000g. A linear curve is fitted to the data to obtain the best approximation as shown in the figure below.

Thus the calibrating equation used to convert the instrument value to approximate weight is:

Mass(g) = 0.3245x-29615.8707 where x = instrument reading

Briquette Experiment

Now that the data acquisition system is set up, we're ready to run some experiments!

The first experiment measured the temperature of different compositions of briquettes. The investigation of briquettes was done by starting with a fixed amount of water (2 liters). Burning was done until all briquettes were converted into ashes. The following graphs represent the burning of briquettes.

Fire, Water, and room temperature for Mkombozi briquette sample

The second briquette sample was from Siga. The highest temperature obtained here was 575°C for fire temperature.

More Information and Experiments

This DAQ system and the associated experiments were part of my final project for my university. You can read the full report here (PDF) if you would like any additional information!

Related Content



You May Also Like