Микросхемы датчиков
Цифровой датчик сам измеряет величину, калибрует результат и отдаёт число по I²C или SPI. Здесь собраны карточки таких микросхем и ссылки на подробные статьи о датчиках давления, влажности, тока, температуры и освещённости.
- INA219 и INA226Ток по шунту, напряжение шины, мощность: выводы, калибровка, точность
- INA3221Три канала: шунт ±163,8 мВ, шина до 26 В, адреса, тревоги, пересчёт в ток
- ACS712Датчик тока Холла: выводы, 5/20/30 А, 185/100/66 мВ/А, фильтр, изоляция, АЦП
- DHT11 и DHT22Датчики влажности по одному проводу: точность, формат 40 бит, тайминги, подтяжка
- LM3510 мВ/°C: выводы, точность, питание от 4 В, минус, пересчёт АЦП
- MPU-60506 осей по I²C: выводы, адрес, регистры, пересчёт кодов, код Arduino
- DS18B20Датчик температуры 1-Wire: выводы, точность, 9–12 бит, паразитное питание
- MAX6675 и MAX31855Термопара по SPI: выводы, питание, точность, формат данных, обрыв и КЗ
- BME280Давление, влажность, температура: питание, адреса, точность, режимы
- BMP280Барометр I²C и SPI: питание, адреса, точность, шум, режимы, отличие от BME280
- BH1750Датчик освещённости I²C: адреса, команды, режимы, сброс DVI
- VEML7700Датчик освещённости I²C: адрес 0x10, усиление, время, пересчёт в люксы
- TSOP382 и TSOP384ИК-приёмник: выводы, питание, несущая, длина пачек, фильтр питания
- SHT31Влажность и температура по I²C: выводы, адреса, точность SHT30/31/35, команды, CRC
- AHT20Влажность и температура по I²C: выводы, адрес 0x38, опрос командой 0xAC, пересчёт, CRC
- BME680Газ, давление, влажность, температура: выводы, нагреватель, сопротивление газа, BSEC
- MCP9808Термометр I²C ±0,5 °C: выводы, адреса, регистры, пересчёт, пороги и Alert
- TMP117Термометр I²C ±0,1 °C: выводы, адреса, регистры, усреднение, ток, самонагрев
- INA180 и INA181Усилитель шунта до 26 В: выводы SOT-23 A и B, REF, выбор шунта, погрешность
- MCP9700Аналоговый датчик 500 мВ + 10 мВ/°C: исполнения A, B, MCP9701, выводы, АЦП, разводка
- INA260Ток до 15 А через встроенный шунт, шина 0–36 В, мощность: выводы, регистры, нагрев
- TMP102Термометр I²C в SOT-563: выводы, адреса, формат, режимы ALERT, ток, отличие от TMP117
- BMI270 и BMI160Шестиосевые IMU в LGA-14: выводы, I²C и SPI, режимы питания, запуск BMI270, регистры
- ACS758Датчик тока Холла ±50…±200 А, 10–60 мВ/А, шина 100 мкОм, 120 кГц, изоляция 4800 В
- SS49EЛинейный датчик Холла TO-92: 2,7–6,5 В, 1,4 мВ/Гс, ноль 2,5 В, ±1000 Гс, 6 мА
Цифровые микросхемы датчиков объединяют чувствительный элемент, АЦП, калибровку и интерфейс. Подробные статьи о классах датчиков — в разделе «Датчики»: измерение тока, датчики давления BMP280, BME280 и BMP390, датчики влажности SHT3x, HDC1080, HDC2080.
Карточки
| Микросхема | Что измеряет | Интерфейс | Особенность |
|---|---|---|---|
| LM35 | температуру, аналоговый выход 10 мВ/°C | аналоговый | калибровка на заводе, питание от 4 В |
| MCP9700 | температуру, аналоговый выход 500 мВ при 0 °C и 10 мВ/°C | аналоговый | питание 2,3–5,5 В, ток 6 мкА, от −40 °C без отрицательного питания; точность при 0…70 °C ±4 °C (MCP9700) и ±2 °C (MCP9700A), у MCP9700B ±1 °C при +20…+70 °C |
| INA219, INA226 | ток по шунту, напряжение шины, мощность | I²C, 16 адресов | INA219 — до 26 В и 12 бит, INA226 — до 36 В и 16 бит с усреднением |
| INA260 | ток через встроенный шунт 2 мОм, напряжение шины, мощность | I²C, 16 адресов | до 15 А и 36 В, шаги 1,25 мА и 1,25 мВ без калибровки, TSSOP-16 |
| INA3221 | ток по трём шунтам и три напряжения шин | I²C, адреса 0x40–0x43 | шунт ±163,8 мВ с шагом 40 мкВ, шина до 26 В, тревоги; ток считает программа |
| INA180, INA181 | ток по шунту, аналоговый выход | аналоговый | синфазное −0,2…26 В, усиление 20–200; у INA181 вывод REF для тока в обе стороны |
| ACS712 | постоянный и переменный ток по полю, ±5, ±20, ±30 А | аналоговый, VCC/2 при нуле | 185, 100 и 66 мВ/А, изоляция 2400 В, питание 5 В |
| MPU-6050 | ускорение и угловую скорость по трём осям, температуру | I²C, адреса 0x68 и 0x69 | шкалы до ±16 g и ±2000 °/с, питание 2,375–3,46 В |
| BMI270, BMI160 | ускорение и угловую скорость по трём осям | I²C (0x68, 0x69) или SPI до 10 МГц | LGA-14 2,5 × 3,0 мм, питание 1,71–3,6 В, 685 и 925 мкА; BMI270 запускается загрузкой 8 КБ конфигурации |
| DS18B20 | температуру, −55…+125 °C, ±0,5 °C при −10…+85 °C | 1-Wire, код семейства 28h | 9–12 бит, паразитное питание от линии данных |
| MCP9808 | температуру, ±0,5 °C макс. при −20…100 °C | I²C, адреса 0x18–0x1F | разрешение до 0,0625 °C, выход Alert с тремя порогами, ток 200 мкА тип. |
| TMP102 | температуру, ±2 °C макс. при −25…85 °C | I²C/SMBus, адреса 0x48–0x4B | SOT-563, питание 1,4–3,6 В, ток 4,8 мкА при 4 Гц, шаг 0,0625 °C |
| TMP117 | температуру, точность ±0,1 °C | I²C/SMBus, адреса 0x48–0x4B | 1,7–5,5 В, 3,5 мкА при 1 Гц, EEPROM и регистр поправки |
| MAX6675, MAX31855 | температуру термопары с компенсацией холодного спая | SPI, только чтение | MAX6675 — тип K, 0…1024 °C, 3,0–5,5 В; MAX31855 — K, J, N, T, E, R, S, от −270 °C, 3,0–3,6 В |
| BMP280 | давление 300–1100 гПа и температуру | I²C (0x76, 0x77) или SPI | корпус 2,0 × 2,5 мм, ID 0x58, шум 0,2 Па с фильтром, без влажности |
| BME280 | давление 300–1100 гПа, влажность, температуру | I²C (0x76, 0x77) или SPI | питание 1,71–3,6 В, совместим с BMP280 по регистрам давления и температуры |
| BME680 | давление, влажность, температуру и сопротивление газочувствительного слоя | I²C (0x76, 0x77) или SPI | нагреватель 200–400 °C; индекс качества воздуха — только через библиотеку Bosch BSEC |
| DHT11, DHT22 (AM2302) | влажность и температуру | однопроводной протокол Aosong (не 1-Wire), 40 бит | DHT22: ±2 %RH и ±0,5 °C; DHT11: ±5 %RH и ±2 °C; опрос не чаще раза в 2 с |
| SHT30, SHT31, SHT35 | влажность и температуру | I²C, адреса 0x44 и 0x45 | SHT31: ±2 % и ±0,2 °C тип., CRC-8, питание 2,15–5,5 В |
| AHT20 | влажность и температуру | I²C, адрес 0x38 | ±2 % и ±0,3 °C тип., измерение по команде 0xAC за 80 мс, CRC-8 |
| BH1750 | освещённость 1–65 535 лк | I²C, адреса 0x23 и 0x5C | питание 2,4–3,6 В, сброс выводом DVI, отсчёт делят на 1,2 |
| VEML7700 | освещённость, от 0,0042 до 140 000 лк | I²C, адрес 0x10 | 16 бит, после включения питания датчик выключен; выше 1000 лк — поправочный полином |
| TSOP382, TSOP384 | ИК-сигнал пульта на несущей 30–56 кГц | цифровой выход, активный ноль | питание 2–5,5 В, ток 0,35 мА; выводы 1 OUT, 2 GND, 3 VS |
| ACS758 | постоянный и переменный ток по полю, ±50…±200 А двунаправленные и 50–200 А однонаправленные | аналоговый, 10–60 мВ/А | шина 100 мкОм, полоса 120 кГц, изоляция 4800 В; снят с производства, замены ACS772/ACS773 |
| SS49E | магнитное поле, ±1000 Гс, линейный выход | аналоговый, 1,4 мВ/Гс, ноль 2,5 В при 5 В | питание 2,7–6,5 В, 6 мА, TO-92; выводы 1 Vcc, 2 GND, 3 Vout |
Цифровые датчики освещённости BH1750, TSL2561, VEML7700 и OPT3001 сравниваются в статье «Датчики освещённости», датчики Холла DRV5032, DRV5055 и A1324 — в статье «Датчики Холла и магнитного поля».
Что смотреть в даташите цифрового датчика
| Строка даташита | Что означает |
|---|---|
| Accuracy, total error | погрешность всего тракта, часто с отдельными цифрами для типичного и худшего случая |
| Resolution, LSB | шаг выходного кода |
| Conversion time, averaging | время одного измерения и встроенное усреднение |
| Supply voltage, I/O levels | питание и уровни шины — можно ли работать от 5 В |
| Address pins | сколько одинаковых датчиков поместится на шине |
| Supply current, power-down | потребление при работе и в спящем режиме |
Частые вопросы
Чем цифровой датчик лучше аналогового?
Цифровой датчик сам оцифровывает сигнал, учитывает заводские калибровочные коэффициенты и отдаёт готовое значение по шине. Погрешность в даташите указана сразу для всего тракта, и не нужно думать об опорном напряжении и шумах АЦП микроконтроллера. Цена — фиксированный набор настроек и адресов на шине.
Как подключить несколько одинаковых датчиков на одну шину I²C?
Выводами выбора адреса: у INA219 и INA226 их два, и каждый подключают к GND, питанию, SDA или SCL — получается 16 адресов. У датчиков с одним выводом адреса — два варианта. Если адресов не хватает, ставят мультиплексор шины I²C.
Чем INA219 отличается от датчика тока на эффекте Холла?
INA219 измеряет падение напряжения на шунте — маленьком резисторе в цепи тока — и делит его на сопротивление. Датчик Холла, например ACS712, измеряет магнитное поле тока и даёт гальваническую развязку, но шумит больше. Сравнение способов — в статье об измерении тока.
Смотрите также
- INA260Ток до 15 А через встроенный шунт, шина 0–36 В, мощность: выводы, регистры, нагрев
- TMP102Термометр I²C в SOT-563: выводы, адреса, формат, режимы ALERT, ток, отличие от TMP117
- BMI270 и BMI160Шестиосевые IMU в LGA-14: выводы, I²C и SPI, режимы питания, запуск BMI270, регистры
- MCP9700Аналоговый датчик 500 мВ + 10 мВ/°C: исполнения A, B, MCP9701, выводы, АЦП, разводка
- TMP117Термометр I²C ±0,1 °C: выводы, адреса, регистры, усреднение, ток, самонагрев
- INA180 и INA181Усилитель шунта до 26 В: выводы SOT-23 A и B, REF, выбор шунта, погрешность
- INA219 и INA226Ток по шунту, напряжение шины, мощность: выводы, калибровка, точность
- SHT31Влажность и температура по I²C: выводы, адреса, точность SHT30/31/35, команды, CRC
- AHT20Влажность и температура по I²C: выводы, адрес 0x38, опрос командой 0xAC, пересчёт, CRC
- BME680Газ, давление, влажность, температура: выводы, нагреватель, сопротивление газа, BSEC
- MCP9808Термометр I²C ±0,5 °C: выводы, адреса, регистры, пересчёт, пороги и Alert
- INA3221Три канала: шунт ±163,8 мВ, шина до 26 В, адреса, тревоги, пересчёт в ток
- ACS712Датчик тока Холла: выводы, 5/20/30 А, 185/100/66 мВ/А, фильтр, изоляция, АЦП
- BMP280Барометр I²C и SPI: питание, адреса, точность, шум, режимы, отличие от BME280
- LM3510 мВ/°C: выводы, точность, питание от 4 В, минус, пересчёт АЦП
- MPU-60506 осей по I²C: выводы, адрес, регистры, пересчёт кодов, код Arduino
- DS18B20Датчик температуры 1-Wire: выводы, точность, 9–12 бит, паразитное питание
- BME280Давление, влажность, температура: питание, адреса, точность, режимы
- BH1750Датчик освещённости I²C: адреса, команды, режимы, сброс DVI
- VEML7700Датчик освещённости I²C: адрес 0x10, усиление, время, пересчёт в люксы
- TSOP382 и TSOP384ИК-приёмник: выводы, питание, несущая, длина пачек, фильтр питания
- ДатчикиТок, температура, газы, вес, движение, ИК и звук: подключение к МК, расчёт и калибровка
- Измерение токаШунт и усилитель, датчик Холла ACS712, трансформатор тока: точность, шум, развязка
- Датчики давления BMP280, BME280, BMP390Точность, подключение по I²C и SPI, режимы, фильтр, компенсация, высота по давлению
- Датчики влажности SHT3x, HDC1080, HDC2080, BME280Точность, адреса, питание, отклик, дрейф, нагреватель, пересчёт и размещение
- Датчики освещённости BH1750, TSL2561, VEML7700, OPT3001Фоторезистор, TEMT6000 и датчики I²C: диапазон, адреса, пересчёт в люксы, ИК, окно
- DHT11 и DHT22Датчики влажности по одному проводу: точность, формат 40 бит, тайминги, подтяжка
- MAX6675 и MAX31855Термопара по SPI: выводы, питание, точность, формат данных, обрыв и КЗ
- ACS758Датчик тока Холла ±50…±200 А, 10–60 мВ/А, шина 100 мкОм, 120 кГц, изоляция 4800 В
- SS49EЛинейный датчик Холла TO-92: 2,7–6,5 В, 1,4 мВ/Гс, ноль 2,5 В, ±1000 Гс, 6 мА