Что точнее: DS18B20 или BME280?
Обновлено Редакция GAW
Оба датчика выдают цифровую температуру с похожими цифрами в рекламе, но условия у этих цифр разные.
| Параметр | DS18B20 | BME280 |
|---|---|---|
| Погрешность | ±0,5 °C при −10…+85 °C, предел ±3σ | ±0,5 °C типично при 0…65 °C |
| За пределами основного диапазона | ±1 °C при −30…+100 °C, ±2 °C при −55…+125 °C | ±1,25 и ±1,5 °C при −20…0 и −40…−20 °C, без гарантии |
| Разрешение | до 0,0625 °C | 0,01 °C |
| Что измеряет | температуру своего корпуса | температуру кристалла, нужна для компенсации давления и влажности |
| Подключение | 1-Wire, на проводе до места измерения | I²C или SPI, обычно на плате модуля |
Почему BME280 «врёт» вверх
Bosch прямо пишет в примечании к таблице температуры: значение зависит от температуры печатной платы, самонагрева датчика и окружающего воздуха и обычно выше окружающей. Встроенный термометр BME280 нужен в первую очередь для температурной компенсации давления и влажности, а модуль с ним часто стоит рядом со стабилизатором и микроконтроллером. Подробнее о механизме — в термине «самонагрев».
DS18B20 тоже потребляет ток при измерении — до 1,5 мА, — но его обычно выносят на проводе в нужное место, подальше от греющейся электроники.
Что выбрать
- Температура воздуха, теплоносителя, улица — DS18B20 в гильзе на проводе: погрешность нормирована, датчик вынесен от тёплой электроники. См. страницу DS18B20.
- Метеостанция с давлением и влажностью — BME280, но в режиме forced с редкими измерениями и подальше от тёплых деталей. См. страницу BME280.
- Можно и оба: DS18B20 для температуры, BME280 для давления и влажности.
Другие варианты — термисторы, LM35, TMP117 — сравниваются в статье «Датчики температуры для микроконтроллера».
Похожие вопросы
Зачем BME280 разрешение 0,01 °C, если точность ±0,5 °C?
Разрешение — это шаг показаний, а не точность. Шаг 0,01 °C позволяет видеть медленные изменения и тренды, но абсолютное значение может отличаться от реальной температуры воздуха на градус и больше из-за нагрева платы. У DS18B20 так же: шаг 0,0625 °C при погрешности ±0,5 °C.
Как уменьшить завышение температуры у BME280?
Измерять редко в режиме forced — так советует сама Bosch для метеостанции, — выносить датчик подальше от стабилизатора и микроконтроллера и давать плате обдув. Остаток смещения можно вычесть калибровкой по эталонному термометру.
Какой датчик выбрать, если нужна точность лучше 0,5 °C?
Ни тот, ни другой без калибровки: оба дают около ±0,5 °C. Для точности порядка ±0,1 °C берут специализированные датчики вроде TMP117, сравнение — в статье о датчиках температуры.
Источники
- Maxim Integrated (Analog Devices). DS18B20 Programmable Resolution 1-Wire Digital Thermometer (19-7487, Rev 6, 7/19) — с. 1–2 — погрешность ±0,5 °C при −10…+85 °C, ±1 °C при −30…+100 °C, ±2 °C при −55…+125 °C (как предел ±3σ), разрешение до 0,0625 °C, ток при измерении до 1,5 мА, время преобразования до 750 мс при 12 битах
- Bosch Sensortec. BME280 Combined humidity and pressure sensor: Data sheet (BST-BME280-DS001-24, revision 1.24, February 2024) — табл. 4 — температура: ±0,5 °C типично при 0…65 °C, ±1,25 и ±1,5 °C при −20…0 и −40…−20 °C (целевые значения без гарантии), разрешение 0,01 °C; примечание 7 — значение зависит от температуры платы, самонагрева датчика и окружающей среды и обычно выше окружающей; разд. 3.5 — режим forced с редкими измерениями для метеостанции
Нашли ошибку?
Смотрите также
- DS18B20Датчик температуры 1-Wire: выводы, точность, 9–12 бит, паразитное питание
- BME280Давление, влажность, температура: питание, адреса, точность, режимы
- Датчики температуры: NTC, Pt100, термопара, DS18B20, TMP117Термистор, Pt100, термопара, микросхемы и датчик МК: точность, подключение, самонагрев
- Самонагрев датчикаДатчик греется током измерения: ΔT = P/δ