Sensor Network History 2 – Second Iteration

For the second iteration of the sensor network, I tried to make the sensor nodes universal and smaller. I integrated more sensors and switched from on-site internet to cellular. The sensor nodes were still powered with wall plugs. An Arduino Pro Mini was chosen as a microcontroller unit, and XBees were used for wireless communication. The sensor selection was as follows:

Temperatures (2x DS18B20)

Electric pulses (electricity meters, oil flow meters)

Luminosity (TSL2561)

Air temperature and relative humidity (SHT15)

Small voltages (pyranometers, heat flux sensors, Opamp: ADA4528-1)

Current clamp

The sensors were only used in certain combinations, e.g., two temperature sensors and a heat flux sensor for u-value measurement. The combination of the sensors had to be set with a rotary switch on the sensor node PCB.
The gateway consisted of a Raspberry Pi, a USB-GSM-modem, an Xbee, USB memory stick, and a powered USB hub. The data was stored on the memory stick and in an online MySQL table. I chose a Raspberry Pi in order to have more computational power for having room to add more features.
This version of the sensor network was deployed in four different case studies. Some of the results can be found here: https://infoscience.epfl.ch/record/213293/files/10_FREI.pdf

Now to the interesting part, the issues:

The sensor nodes still relied on cords for power. It took up to 45 minutes to install and cable manage a single sensor node.

Although, sensor nodes became more flexible, it was almost impossible to integrate new sensors into the system. Moreover, for the measurement range for small voltage was limited, leading to different resistor network configurations for heat flux sensors and pyranometers.

The PCB is all through-hole, requiring considerable time for manufacturing.

The amplification circuit for small voltages was quite crude.

The operating system of the Raspberry Pi runs on an SD card. Corruption of the SD-card lead to several failures, including loss of data. After these incidents, the memory stick was added, and the operating system was set in a read-only mode. The read-only mode was cumbersome to enable and disable, which made changes to the python code on the Raspberry Pi cumbersome as well.

Finding a USB-GSM modem that works with the Raspberry Pi was a bit of a gamble. An additional challenge was that USB-GSM modems of the same type but from different production lots or revisions did not work with the same setup. The difference between the modems could only be seen through software when plugged in.

The USB-GSM modem requires more current than the Raspberry Pi can deliver, which made a powered USB-hub necessary, adding to the cost and complexity of the wiring.