• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Разность показаний датчиков

Stranger61

New member
Добрый день.
Можно сказать, что впервые имею дело с esp, да и вообще с микроконтроллерами. Задумался измерять температуру, влажность и СО2 в помещениях в доме, чтобы в дальнейшем на основе этого можно было включать/отключать отопление/вентиляцию. Столкнулся с очень не понятной и не приятной ситуацией. Все температурные датчики показывают разную температуру.
Испрользовал: DS18B20, AHT20, SCD40, спиртовой термометр, электронный термометр. Если в SCD40 можно задать корректирвку температуры, то во всех остальных такой возможности нет (ну в спиртовом еще можно сместить колбу относительно шкалы). Следовательно они должны показывать более или менее правилоьные значения.
Опустим пока SCD40 т.к. в нем точно будут не верные показания температуры по причине преднагрева датчика для измерения СО2.

Теперь показания:
DS18B20: 22.38 aht2x: 22.96 Цифровой: 23,6 спиртовой 24.2 (приблизительно). причем какой-либо одинаковой разницы между DS и AHT нет.
DS18B20: 22.50 aht2x: 23.47 Цифровой: 24.0 спиртовой 25,0
DS18B20: 22.75 aht2x: 23.62 Цифровой: 24.0 спиртовой 25,0

При температуре 20 градусов (приблизительно) показания следующие: DS18B20: 20.50 aht2x: 20.23. Как видно из замеров выше логики нет. С измением температуры окружающей среды разница между показаниями постоянно меняетчся от 0,2 до -1,9. Понятное дело, что если какой-то из датчиков брешет на 2 градуса, то это совсем не приятно.
Оба датчика подключены к одной ESP, измерения производятся каждые 10 сек.

Датчиков AHT у меня несколько, пробовал разные, но они так-же имеют расхождения с DS18, кто на 1 кто на 2 градуса сразу. Цифровой термометр проверял в воде сольдом (накидал льда, налил воды), показания на нем опустились до 1,2 градуса. Считаю что это впринципе правильно т.к. в стакане лед тает, следовательно температура должна быть чуть выше точки замерзания воды.

Может кто-то подсказать, может я что-то делаю не правильно, или это датчики бракованные? И как можно исправить ситуацию?

Заранее всем спасибо.
 

aZholtikov

Active member
Добрый день.
Можно сказать, что впервые имею дело с esp, да и вообще с микроконтроллерами. Задумался измерять температуру, влажность и СО2 в помещениях в доме, чтобы в дальнейшем на основе этого можно было включать/отключать отопление/вентиляцию. Столкнулся с очень не понятной и не приятной ситуацией. Все температурные датчики показывают разную температуру.
Испрользовал: DS18B20, AHT20, SCD40, спиртовой термометр, электронный термометр. Если в SCD40 можно задать корректирвку температуры, то во всех остальных такой возможности нет (ну в спиртовом еще можно сместить колбу относительно шкалы). Следовательно они должны показывать более или менее правилоьные значения.
Опустим пока SCD40 т.к. в нем точно будут не верные показания температуры по причине преднагрева датчика для измерения СО2.

Теперь показания:
DS18B20: 22.38 aht2x: 22.96 Цифровой: 23,6 спиртовой 24.2 (приблизительно). причем какой-либо одинаковой разницы между DS и AHT нет.
DS18B20: 22.50 aht2x: 23.47 Цифровой: 24.0 спиртовой 25,0
DS18B20: 22.75 aht2x: 23.62 Цифровой: 24.0 спиртовой 25,0

При температуре 20 градусов (приблизительно) показания следующие: DS18B20: 20.50 aht2x: 20.23. Как видно из замеров выше логики нет. С измением температуры окружающей среды разница между показаниями постоянно меняетчся от 0,2 до -1,9. Понятное дело, что если какой-то из датчиков брешет на 2 градуса, то это совсем не приятно.
Оба датчика подключены к одной ESP, измерения производятся каждые 10 сек.

Датчиков AHT у меня несколько, пробовал разные, но они так-же имеют расхождения с DS18, кто на 1 кто на 2 градуса сразу. Цифровой термометр проверял в воде сольдом (накидал льда, налил воды), показания на нем опустились до 1,2 градуса. Считаю что это впринципе правильно т.к. в стакане лед тает, следовательно температура должна быть чуть выше точки замерзания воды.

Может кто-то подсказать, может я что-то делаю не правильно, или это датчики бракованные? И как можно исправить ситуацию?

Заранее всем спасибо.
Это такие датчики в принципе и ничего с этим не сделать...
Если хочется чего-то более точного, то можно "поиграться" с BME280 от Bosсh, но цена (10$ за оригинальный чип (только чип), а "Г" с Али даже не стоит рассматривать), и точность все равно 0,5% при 25C. А оно того надо?

P.S. Человек имеющий только одни часы точно знает время. Несколько - ни в чем не уверен... :)
 

aZholtikov

Active member
Или еще.

Серия TSic 5xxF
Датчики TSic 501F, TSic 503F и TSic 506F имеют рабочий диапазон температур -10 .. +60°C и обеспечивают на нём следующую точность:
  • ±0.1°C на диапазоне от +5 до +45°C
  • ±0.2°C на диапазонах от -10 до +5°C и от +45 до +60°C
Цена соответствующая...
 

Stranger61

New member
Это такие датчики в принципе и ничего с этим не сделать...
Если хочется чего-то более точного, то можно "поиграться" с BME280 от Bosсh, но цена (10$ за оригинальный чип (только чип), а "Г" с Али даже не стоит рассматривать), и точность все равно 0,5% при 25C. А оно того надо?

P.S. Человек имеющий только одни часы точно знает время. Несколько - ни в чем не уверен... :)
Т.е. то, что продается на али за 250 р за BME280 - это однозначно Г ??? А где взять тогда нормальный?
 

aZholtikov

Active member
Т.е. то, что продается на али за 250 р за BME280 - это однозначно Г ??? А где взять тогда нормальный?
Сейчас даже не знаю. До всех событий примерно 1,5 года назад купил несколько на mouser.com вроде по 12-13$. Сейчас не могу ничего посоветовать.

 

CodeNameHawk

Moderator
Команда форума
, или это датчики бракованные? И как можно исправить ситуацию?
Для чего вам понадобилось знать все абсолютно точно?
С чего вы решили, что они должны быть точнее?
Для бытовых нужд, точности ds18b20 вполне хватает. И работают они нормально.
У меня разброс примерно 0.5 градуса, спиртовой и ds18b20 висят на улице в одинаковых условиях.
Но уже разница между двумя ds18b20, которые висят на разных этажах может достигать 1 градуса, но если нет ветра, то они показывают примерно одинаково +-0.2 градуса.
Вполне возможно, что в измерителях(влажности, со2) выделяется дополнительное тепло.
Если уж очень надо, то можете корректировать программно, но чаще все в этом нет необходимости.
 

Stranger61

New member
Для чего вам понадобилось знать все абсолютно точно?
С чего вы решили, что они должны быть точнее?
Для бытовых нужд, точности ds18b20 вполне хватает. И работают они нормально.
У меня разброс примерно 0.5 градуса, спиртовой и ds18b20 висят на улице в одинаковых условиях.
Но уже разница между двумя ds18b20, которые висят на разных этажах может достигать 1 градуса, но если нет ветра, то они показывают примерно одинаково +-0.2 градуса.
Вполне возможно, что в измерителях(влажности, со2) выделяется дополнительное тепло.
Если уж очень надо, то можете корректировать программно, но чаще все в этом нет необходимости.
Мне не надо супер точных показаний, даже в 0,5 градуса меня вполне устроило бы.
Проблема в том, что я не знаю каой из датчиков брешет, все показывают разные данные.. Разница в показаниях достигает почти 2 градуса, и к сожалению эта разница не линейная, иначе бы я не заморачиваясь сдедал бы программную коррекцию либо на стороне сервера либо в коде мк.
 

pvvx

Активный участник сообщества
При температуре 20 градусов (приблизительно) показания следующие: DS18B20: 20.50 aht2x: 20.23. Как видно из замеров выше логики нет. С измением температуры окружающей среды разница между показаниями постоянно меняетчся от 0,2 до -1,9. Понятное дело, что если какой-то из датчиков брешет на 2 градуса, то это совсем не приятно.
Оба датчика подключены к одной ESP, измерения производятся каждые 10 сек.
Местами менять датчики пробовали? :)
Где и как ведется замер? Если тупо на столе - от простейшей конвекции нормальная разница составляет +-2С. А если рядом человек - разница может быть и больше, или смотри расстояние до лампы/нагревающего чипа и т.д. Зависит и от цвета датчика (поглощения- отражения ИФК)
На улице, на стене разница от высоты в 2 метра может элементарно дать разницу температур в 10С.
Для сверки все датчики должны быть в кучке, в чем-то хорошо проводящем температуру и всё это изолировано от внешней среды.
Тогда получите разницу датчиков на их само-нагрев, который зависит от тока работы датчика, нагрузочных сопротивлений интерфейса, частоты проса и типично составляет более 0.2С. Это при условии шага замеров не менее 1 сек. При частоте опроса менее - разница между датчиками может достигать более нескольких градусов.
 

pvvx

Активный участник сообщества
С измением температуры окружающей среды разница между показаниями постоянно меняетчся от 0,2 до -1,9.
У всех датчиков разное время реакции ("нагрева").
Быстрый датчик можно сделать только из пленки или из тончайшей проволоки :p
Можно использовать и лампу накаливания :)
Изменение сопротивления спирали лампы от температуры - зеленый график (в виде напряжения от тока в 200мкА. Около 70.2 мкВ/C) Красный график - температура (в виде напряжения) с датчика TMP36.

И пример, как зависит температура на датчике температуры при включении лампы накаливания на расстоянии в 1 метр:
Это вам чтобы сбивку градусников сделали правильно, а не просто валяющиеся датчики на "проводках"...
 

enjoynering

Well-known member
Из моего опыта - AHT10 довольно точен. Расхождения с HTU21 и сенсором SHTC3 из Xiaomi Thermometer в пределах заявленных погрешностей измерения. А вот с полностью кремниевым AHT21 не сложилось - очень врёт по влажности +-15%. Пытался его "жарить" и "увлажнять" согласно процедуре описанной в datashee - не помогло.

 

pvvx

Активный участник сообщества
К примеру, расхождения температур двух градусников "на улице", сегодня для выбранных по самому малому расстоянию между ними из множества градусников в моей системе на HA :
1666636122445.png
Один на веранде - метра 2 от земли и 1.5 м от стен дома. На всплесках видна отрываемая дверь дома...
Второй на самом фронтоне крыши - что-то около 4..5 м от земли - точно не измерял, висит да ладно :)
Между градусниками по прямой - около 4 м.
Калиброваны и расхождение в +-25С составляет не более 0.1С
 

Stranger61

New member
Местами менять датчики пробовали? :)
Где и как ведется замер? Если тупо на столе - от простейшей конвекции нормальная разница составляет +-2С. А если рядом человек - разница может быть и больше, или смотри расстояние до лампы/нагревающего чипа и т.д. Зависит и от цвета датчика (поглощения- отражения ИФК)
На улице, на стене разница от высоты в 2 метра может элементарно дать разницу температур в 10С.
Для сверки все датчики должны быть в кучке, в чем-то хорошо проводящем температуру и всё это изолировано от внешней среды.
Тогда получите разницу датчиков на их само-нагрев, который зависит от тока работы датчика, нагрузочных сопротивлений интерфейса, частоты проса и типично составляет более 0.2С. Это при условии шага замеров не менее 1 сек. При частоте опроса менее - разница между датчиками может достигать более нескольких градусов.
Датчики все на столе, в кучке. Про конвекцию тоже думал, поэтому всю кучу накрыл коробкой. разница стала чуть меньше (приблизительно на 0,2-0,3 градуса, но все равно никакой логике не поддавалась. По данной причине я опустил условия тестирования.
 

Stranger61

New member
К примеру, расхождения температур двух градусников "на улице", сегодня для выбранных по самому малому расстоянию между ними из множества градусников в моей системе на HA :
Посмотреть вложение 12450
Один на веранде - метра 2 от земли и 1.5 м от стен дома. На всплесках видна отрываемая дверь дома...
Второй на самом фронтоне крыши - что-то около 4..5 м от земли - точно не измерял, висит да ладно :)
Между градусниками по прямой - около 4 м.
Калиброваны и расхождение в +-25С составляет не более 0.1С
А какие датчики использовались ?
 

Stranger61

New member
Из моего опыта - AHT10 довольно точен. Расхождения с HTU21 и сенсором SHTC3 из Xiaomi Thermometer в пределах заявленных погрешностей измерения. А вот с полностью кремниевым AHT21 не сложилось - очень врёт по влажности +-15%. Пытался его "жарить" и "увлажнять" согласно процедуре описанной в datashee - не помогло.

Начинаю понимать свою ошибку: думал обмануьт судьбу, мерить на 1-м датчике и влажность и температуру и CO2. теперь понимаю, что для каждого параметра нужен отдельный датчик. Спасибо.
 

enjoynering

Well-known member
у меня еще есть SDC30. Умеет CO2 влажность и температуру. CO2 измеряет отлично, не калибровал уже 3 месяца и ASC отключен. недавно вынес на улицу и он показал 400ppm. а вот с влажностью и температурой беда - +-10% и +1С. толи это SHT31 такой, толи самонагрев измерительной камеры высокий.
 

enjoynering

Well-known member
разница стала чуть меньше (приблизительно на 0,2-0,3 градуса
вы погрешность измерения датчиков учитываете? например у AHT10 и HTU21 она заявленна T ±0.3°C, RH ±2%.

так что 0,2-0,3 градуса - это все в пределах допуска.
 

Stranger61

New member
вы погрешность измерения датчиков учитываете? например у AHT10 и HTU21 она заявленна T ±0.3°C, RH ±2%.

так что 0,2-0,3 градуса - это все в пределах допуска.
0,2-0,3 - это на столько изменилась разница между показаниями когда датчики лежали просто на столе и накрывались коробкой. Соответственно разница в показаниях составила от 0,1 до 1.7 градусов где-то.
Относительно SСВ: У меня есть SCВ40 - действительно CO2 измеряет правильно, я его даже перекалибровал. Но вот с температурой там вообще атас. Я этот датчик оставил на потом, т.к. в нем можно задать температурное смещение.
 

enjoynering

Well-known member
Вы наверное имели ввиду SDC40 - это новый тип датчиков фотоакустический. SDC30 ещё по старой NIRD технологии. Имхо новая дешевле и проще, но не такая точная как NIRD.

P.S. Почему-то то никто не читает datasheet. В SDC30 и SDC40 нельзя задавать отрицательные смещения температуры. Те если вы никогда до этого не задавали смещение и видите что вас воздух 21С, а сенсор показывает 22С, то -1С не сработает. Учите материал.
 
Сверху Снизу