Help calibrating large quantities of sensors

Hello,

I'm currently working on a project which requires a few hundred of temperature and humidity sensors to be placed around a glasshouse. From reading other posts and forums, I found out that many sensors have an offset in their calibration and that manual calibration is needed to correct for this.

Obviously for my project, I cannot manually calibrate a few hundred sensors. I've found a few sensors that claim to be 'factory calibrated' such as the DHT22, SHT31, BME280 and Si7020 but a quick google search shows that someone has already had calibration issues with it.

On the top of that, the glasshouse is expected to run in the range between 60-90%RH which is decently high in humidity. So I would think that sensors may end up getting damaged over the long run.

So my question is, how would you tackle the issue of mass calibration and are temperature and humidity sensors able to work in such conditions?

Best,
A

Links to datasheet:

DHT22: https://www.sparkfun.com/datasheets/Sensors/Temperature/DHT22.pdf
SHT31: https://www.sensirion.com/fileadmin/user_upload/customers/sensirion/Dokumente/2_Humidity_Sensors/Datasheets/Sensirion_Humidity_Sensors_SHT3x_Datasheet_digital.pdf
BME280: https://www.makerfabs.com/desfile/files/BST-BME280_DS001-10.pdf
Si7021: https://www.silabs.com/documents/public/data-sheets/Si7021-A20.pdf

Calibrating those sensors ? That is almost never done. Buy a good sensor.
Calibrating it could improve the accuracy, but that is not easy. Using the calibration from the manufacturer is easier and might even be better.

The DHT22 is not good.
The placement of the sensors is important. Out of the sun; in a box; the box out of the sun as well; a open box, but no water that could drip into it.

Here is a extensive test: https://www.kandrsmith.org/RJS/Misc/Hygrometers/calib_many.html.

Here is a extra super extensive test: https://forum.arduino.cc/t/compare-different-i2c-temperature-and-humidity-sensors-sht2x-sht3x-sht85/599609.

Is there a test that says something about being in a high-humidity environment ? I think that 60-90% is not extreme, that should be no problem.

How are you going to wire those sensors ? With a cable ? With a few hundred Arduino board ? Who is collecting that data ?

Is there air blowing in the glasshouse ? Then perhaps one sensor per section is enough.

2 Likes

One way of doing it is to write your program so it needs a special input to put into "calibration mode". Place your sensor in a fixed temperature for a settling time, Then enter your special input and your code will write the OFFSET in several EEPROM locations, this will give you a check if something fails. Example: your sensor is placed in a 40C environment, left to settle for at least 20 minutes, you cycle the calibration (special input) and it will take the reading and create the offset knowing it was in a 40 C temperature. You can do a bunch at once and the calibration temperature will be in your code so you can pick whatever temperature you want, best to pick one in the middle of your measuring range. Fahrenheit or celsius is ok, your choice.

1 Like

Hi,
I do Industrial temp and pressure calibrations, and unless you want below 1DegC accuracy, most sensors, even those inexpensive devices used for open source, Arduino coding are very good.

The key is you purchase them from a know seller, rather than ebay, ali and bang sellers.

What accuracy and precision are you looking for?

How are you going to interface these sensors as I would gather they are spread over a large area and will have long connecting cables?

Thanks... Tom... :grinning: :+1: :coffee: :australia:
PS, Accuracy for humidity is usually 3% to 5%, in ranges 10 % to 90%, even in industrial sensors.

1 Like

Thanks for the advice! I'm looking for decently accurate sensors so anything with +/-5%RH and +/-0.5 degrees is acceptable for my application.

Each sensor will be connected to an ATmega328 chip and a LoRa module, and will be placed around the glasshouse. They will then relay the data to a gateway. What happens next with the data will be taken care of someone else.

I've already had ideas on calibrating the sensors but the idea of a 'calibrating mode' is great and I will likely borrow that idea :slight_smile:

1 Like

I'm going to try and calibrate the sensors using a calibration curve. But what I am mostly worried about is that in a lot of the sensor's data sheet, is says:

"Long-term exposure to conditions outside normal range, especially at high humidity, may temporarily offset the RH signal (e.g. +3%RH after 60h kept at >80%RH). After returning into the normal temperature and humidity range the sensor will slowly come back to calibration state by itself. Prolonged exposure to extreme conditions may accelerate ageing".

That's why I considered 90% to be extreme. From what I understood, a lot of sensors are able to work in the ranges of 0-100%RH but not for long periods of times.

To answer your other questions, each sensor will be connected to an ATmega328 and a LoRa module. Each of these sensor modules will be placed wirelessly around the glasshouse and send data to a gateway.

Are you still thinking about calibrating those sensors ? The more I think about it, the more I think it is a bad idea.

HTS221: "Further calibration by the user is not required".
It measures 0...100% humidity, but is less accurate near 100%.

Your quote is from the SHTC3 ?
SHTC3: "After returning to normal temperature and humidity range the sensor will slowly come back to its calibration state by itself.".
Perhaps "ageing" means that you have to replace the sensor every 10 years.

The Si7021 is up to 80% humidity. That is not the sensor for you.

Which sensor will be accurate for a long time is impossible to predict with just the datasheets. You could add three good sensors to each module with the ability to remotely select one of them.

The environment in a greenhouse requires full protection from moisture for any electronics - IP44 or better would be great to have for any enclosures (IP67 even better!). Never underestimate what a damp environment can do to unprotected electronics over a period of years - normally any device for outside or greenhouse use would be liberally conformally coated - this is something well worth doing here I suggest.

1 Like

Hi,
What range of temperatures and humidity are you expecting in the greenhouse?

Tom... :grinning: :+1: :coffee: :australia:

Temperatures from 12-45 degrees (yes, I know it's drastic).
Humidity 60-90%RH

Degrees ? Please pick one from this list: https://en.wikipedia.org/wiki/Conversion_of_units_of_temperature#Comparison_of_temperature_scales :wink:

Your car manufacturers work with -40C to +_125C and higher in some areas and they build millions. With that in mind 12C - 45C is not that bad. You can get humidity sensors that will go from 0 to 100% but they are not inexpensive.

Hi,
I check and clean these humdity/temperature sensors, they work in an automated bread proving oven, so they work 24/7, they last from 12 to 18months
The only thing is they are over $200 AUD EACH.

For your application I would suggest some sort of protective filter/shield to keep out dust, dust attracts moisture that deposits on the sensor surface.

Tom... :grinning: :+1: :coffee: :australia:
PS. Have you checked what other green houses use?

DS18B20 is ideal for temperature , +- 0.5C without calibration .

Wonder if you could use one as a “wet bulb” and calculate humidity .

Hi, @hammy :+1: :+1: :+1: :+1:
I was thinking the same thing, just have one of the sensors wrapped in a muslin strip with one end in water.

I have some of the "water proof" DS18B20 units.

Tom... :grinning: :+1: :coffee: :australia:
PS Add some sort of sensor to indicate when the water level is low. Nice Project.

I don't see that in the datasheet. Just that it's more accurate within that range.

I use the teflon covered/sealed version of this sensor (white face) in my bathroom (condensating).
I turn it's internal heating element on above ~80% though. Just in case.

Potted the sensor in expoxy, leaving only the white face exposed.

"A few hundred sensors" could be a bigger challenge. I2C won't travel far.
Leo..

I like @hammy's idea of 1-Wire temperature sensors (DS18S20).
You could string a load of them on just a few cables (star and daisy-chain).
At the same time, you could get one of Maxim's (Dallas Semiconductor DS) analogue to 1-Wire adaptors (DS23xx or 24xx something or other) in a SOT package.
Then use good but reasonably cheap humidity sensors by Honeywell like the HIH4000 series (analogue) and put them on the same 1-Wire cable.
The Honeywell stuff might not need calibrating, but if you want to look at how it's done, there are chemical salts that provide known humidity levels.
For a two point calibration, zero and 100%, get some activated silica gel crystals in a sealed container for your zero, and use an aquarium aerator and water in another sealed container for you 100%..
I very much doubt that you would need any initial calibration with a decent sensor, but if you have loads of valuable plants to look after, you might want a representative annual calibration.
I would also buy a decent hand held or industrial humidity instrument for confidence.
Other than 1-Wire, you could go wireless with something like an XBee network.

Hi,

You will need a separate wire for each 4000 as it is analog output.

Tom... :grinning: :+1: :coffee: :australia:

Hello Tom
Thanks for reminding me.
I run two systems around the house, an XBee Zigbee mesh that does all the energy monitoring and utility meters (gas, water, electricity) plus things like tank levels and how the heating boiler is functioning. Most of the sensors are simple LM35 types and the XBees run as end devices on battery power.
The whole lot runs on one Mega 2560 with coordinator, routers and end devices.
What I like about Digi XBee's is Digi has a nice development and configuration tool called XCTU and I i just tinkering with Series 3 XBee's as they come with MicroPython
I also have a 1-Wire system that consists of a Cat5e cable running through roof spaces that might be difficult for XBees.
Without crawling around the lofts, I couldn't tell you exactly which 1-Wire A to D devices I use, but Maxim refer to some as battery fuel gauges.
Come to think of it, I did use some of the spare Cat5e cores for additional power for sensors like the HIH4000's, but obviously not for the DS18B20's. It's not a big deal adding the power lines all in one go.
I also use Maxim 1-Wire digital input devices for water level float switches.
A quick search for 1-Wire humidity sensors will throw up examples of purely 1-Wire devices, not necessarily Maxim.
Many of the 1-Wire devices have temperature thrown in as a bonus.
The main reasons for choosing the HIH4000's were 1) Honeywell are well established in the heating and climate control business, and 2) I didn't want the hassle of using one of their digital devices.
iButtons might be worth a look.
A lot is going to depend on how important humidity is to the greenhouse operation.
I would imagine if it's thousands of expensive orchids, then the user might think it worth putting in a decent system