This is the first in a series of articles describing a simple maker / DIY IoT garden environmental telemetry system. The project is a derivative of IoT water tank telemetry project – part 1, and some of the optional components are as per that project (eg battery / solar power).
Plans are to explore some different kinds of sensors including analog and digital connection types:
- Pt100 remote from a 4-20mA converter (ie long Pt100 3 wire wiring);
- Pt100 with co-located 4-20mA converter (ie long 4-20mA loop wiring);
- MODBUS soil sensor (temperature and humidity).
Above is a screenshot of the Thingspeak channel.
- capture soil temperature, air temperature and relative humidity, and barometric pressure (QNH);
- IoT connectivity;
- solar / battery power option;
- wireless connection;
- use existing inexpensive electronic modules.
Design choices made initially:
- Pt100 RTD and 4-20mAconverter for soil temperature measurent;
- BME280 for air temperature and relative humidity, and barometric pressure (QNH).
- ESP8266 Wemos D1 mini pro for the MCU and wireless elements;
- NodeMCU / Lua software environment;
- optional external antenna for improved WiFi range;
- optional 6V 100mA PV array;
- optional module with TP4056 batter charger and cell protection chip;
- optional 2500mAh Lipo cell;
- Photomos switch for boost converter;
- Thingspeak RESTful interface for data accumulation and presentation.
Above is a block diagram showing the major system components. Almost all of the electronics is on easily obtained low cost electronic modules source from eBay, assembled on a Veroboard backplane.
Above, the type of sensor assembly purchased (though with a 200mm probe) for about $25. It is a WZP-231 of unstated class, so we should assume Class B (error 0.4° @ 20°).
Unfortunately, it arrived damaged, the Pt100 element read 16Ω at 20°… this one used a ceramic encased Pt100 element and it had cracked, possibly a result of rough handling in transit.
Above is a Class A Pt100 probe from stock (error<0.2° @ 20°). It was fitted to the probe case above, and differently to the original probe, this carries the three wire connection right to the Pt100 element. The insulation is PTFE so not as wide a temperature withstand as the original ceramic insulation, but more than adequate for this project.
The probe assembly is connected back to the 4-20mA converter by about 8m of CAT4 LAN cable (three conductors used). This is a deliberate trial of a longish unshielded Pt100 connection.
Above is an early trial of the data capture, with some testing of LAN interference around 12:00 on 20/9. The interference was created by taping the Pt100 CAT4 cable to the WiFi AP inside the enclosure, everything running full power. With some separation there is no interference, and then the tx power of the AP and the ESP8266 module were set to minimum to reduce risk such noise.
The longer term solution is to use a 3 core shielded cable from the Pt100 probe to the transducer in the equipment enclosure. It might seem tempting to use a shielded 2 core for the 3 wire connection, but the three active conductors must have equal resistance for the compensation to work properly.
Another option is a similar probe case but with a head large enough to accommodate the common 4-20mA transducer modules. A quick search did not turn up any low cost ones of 200mm probe length.
Above is an inexpensive enclosure fitted to the wall to house various experimental equipment. The BME280 temperature, humidity and pressure probe is in the vented plastic enclosure on top of the post.
Above, the PT100 probe in situ. I note that the keeper chain is rusting after one night out in the weather and needs to be removed / replaced… Chinese Quality.
Above, some experiments in AC powering and earthing shows the analog sensor chain prone to noise. This will inform the design of the power and ground solution.
To be continued…