![]() |
Forum Index : Microcontroller and PC projects : Interesting, if slightly shonky, comparison of temperature sensors
Author | Message | ||||
CaptainBoing![]() Guru ![]() Joined: 07/09/2016 Location: United KingdomPosts: 2170 |
saw this and thought you might be interested. https://randomnerdtutorials.com/dht11-vs-dht22-vs-lm35-vs-ds18b20-vs-bme280-vs-bmp180/ |
||||
Poppy![]() Guru ![]() Joined: 25/07/2019 Location: GermanyPosts: 486 |
Thanks, interesting though not really being repeatable but a good general overview. ![]() just reminding: https://github.com/cpetrich/counterfeit_DS18B20 from here: https://www.thebackshed.com/forum/ViewTopic.php?TID=11842&PID=142330#142330#142330 ![]() ![]() | ||||
CaptainBoing![]() Guru ![]() Joined: 07/09/2016 Location: United KingdomPosts: 2170 |
yes, I was disappointed the whole "experiment" was not against a calibrated thermometer (it's not hard, even if manual... hourly correlations would do) as it kind of just leaves some dis-embodied traces with no real reference points... like musical notes without a staff. Also, I thought the assertion that working in kelvin (LM335) was non-preferred because of the subtraction of a "large" number... 273.16? really? I would expect that dispensing with negatives at the (analogue) measurement stage was far more useful. I suppose getting towards 337K (100C) might cause issues with voltages of 3.3V being common on micro-controllers these days... measuring a representative analogue signal probably not as good as a digital value from a register on the sensor anyway(?) still, an interesting read. I am tempted to repeat the experiment, with a calibrated thermometer and known temperature sources, the MAX thermocouple devices included (I have little faith in these BTW as they seem to wander around a *lot*) just for completeness Edited 2020-02-05 08:31 by CaptainBoing |
||||
TassyJim![]() Guru ![]() Joined: 07/08/2011 Location: AustraliaPosts: 6283 |
Placing the sensors in comparable locations can get tricky also. On my test server, I tried to hang the sensors over the side of the shelf apart form the BMP180 which is onboard and not so easily moved. The sensors compare well but it depends on whether I have the air conditioner fan running. Sensors respond differently in moving air. Example output form today: 10:24:15 T(BMP180): 20.0 P(sl): 1021.7,T(DHT22): 19.6 H: 54.1,T(DS18B20): 20.7 BME280: T: 20.8 P: 1021.5 H: 49.2 10:24:25 T(BMP180): 20.0 P(sl): 1021.6,T(DHT22): 19.6 H: 54.1,T(DS18B20): 20.7 BME280: T: 20.8 P: 1021.5 H: 49.2 I have the code running on the test server (tassyjim.ddns.net:3002) unless someone has been playing with their own code. Jim VK7JH MMedit |
||||
Volhout Guru ![]() Joined: 05/03/2018 Location: NetherlandsPosts: 5090 |
The article the topic starter points to is completely useless. 1/ The analog sensor LM35 is sampled by the Arduino ADC and clearly shows the ADC resolution rather than the indicated instability or noise of the sensor. 2/ The DS18B20 shows similar temperature step size, but is definitely not operated in 12bit mode (more accurate). All in all, you are looking more to the immature test system and Arduino libraries than the performance of the sensors. PicomiteVGA PETSCII ROBOTS |
||||
Chopperp![]() Guru ![]() Joined: 03/01/2018 Location: AustraliaPosts: 1097 |
When I check & compare DS18B20's, (& LM335's), I normally hang them inside a clear container (so I can see them), away from the sides, bottom & each other & then sit the lid on top. Helps keep any air movement from affecting them. (Probably should be checked & compared in free and moving air as well) Brian ChopperP |
||||
Volhout Guru ![]() Joined: 05/03/2018 Location: NetherlandsPosts: 5090 |
@TassyJim The micromite (according manual from Geoff) uses 0.25 degrees temperature resolution, using the DS18B20 that completely matches with the 200ms measuring time (datasheet = 9 bit mode, 187ms max conversion time). Your log shows 20.7 degrees. Is that 20.75 rounded down? (not up ?). Or did you find a way to trick MMbasic to use 10 bit mode or better.? Regards Volhout Edited 2020-02-06 02:12 by Volhout PicomiteVGA PETSCII ROBOTS |
||||
TassyJim![]() Guru ![]() Joined: 07/08/2011 Location: AustraliaPosts: 6283 |
NO - just rounding the readouts all to one decimal place because I know any better is just fooling yourself. We are using floating point numbers so it is anyone's guess which way the rounding will go. STR$(tds18,3,1); Jim VK7JH MMedit |
||||
![]() |
![]() |
The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2025 |