Датчики температуры, влажности, давления
Датчики температуры и влажности DHT11 и DHT22
Данные датчики измеряют температуру и влажность воздуха. Они обладают очень низким быстродействием и невысокой точностью. Главное их достоинство – цена. По своим характеристикам датчики вполне подходят для использования в проектах аля «Умный дом».
Характеристики:
Наименование
|
U(пит)
|
Определение влажности
|
Определение температуры
|
Частота опроса
|
Размеры
|
DHT11
|
3-5В
|
20-80% ± 5%
|
0-50C ± 2%
|
1Гц
|
15.5мм x 12мм x 5.5мм
|
DHT22
|
0-100% ± 2-5%
|
-40 - 125C ± 0.5C
|
0.5Гц
|
15.1мм x 25мм x 7.7мм
|
Подключение:
Датчики имеют по 4 вывода с шагом 2.54мм. Назначение выводов следующее:
- VCC
- Data
- Не используется
- GND
При подключении к МК, вы можете между выводами Vcc и Data разместить подтягивающий pull-up резистор номиналом 10 кОм.
Для считывания данных датчика на Arduino есть масса готовых библиотек, которые избавят Вас от разбирательств в мудреном протоколе. Вот ссылка на одну из них. Там же есть пример использования. Тип датчика определяется дефайнсом DHTTYPE.
Датчик температуры DS18B20
Модель
|
Диапазон измерения
|
Корпус
|
маркировка
|
DS18B20
|
-55°C to +125°C
|
3 TO-92
|
18B20
|
DS18B20+
|
-55°C to +125°C
|
3 TO-92
|
18B20
|
DS18B20/T&R
|
-55°C to +125°C
|
3 TO-92 (2000 Piece)
|
18B20
|
DS18B20+T&R
|
-55°C to +125°C
|
3 TO-92 (2000 Piece)
|
18B20
|
DS18B20-SL/T&R
|
-55°C to +125°C
|
3 TO-92 (2000 Piece)*
|
18B20
|
DS18B20-SL+T&R
|
-55°C to +125°C
|
3 TO-92 (2000 Piece)*
|
18B20
|
DS18B20U
|
-55°C to +125°C
|
8 μSOP
|
18B20
|
DS18B20U+
|
-55°C to +125°C
|
8 μSOP
|
18B20
|
DS18B20U/T&R
|
-55°C to +125°C
|
8 μSOP (3000 Piece)
|
18B20
|
DS18B20U+T&R
|
-55°C to +125°C
|
8 μSOP (3000 Piece)
|
18B20
|
DS18B20Z
|
-55°C to +125°C
|
8 SO
|
DS18B20
|
DS18B20Z+
|
-55°C to +125°C
|
8 SO
|
DS18B20
|
DS18B20Z/T&R
|
-55°C to +125°C
|
8 SO (2500 Piece)
|
DS18B20
|
DS18B20Z+T&R
|
-55°C to +125°C
|
8 SO (2500 Piece)
|
DS18B20
|
В продаже чаще всего встречается в корпусе ТО-92 и в специальном герметичном исполнении.
Датчик позволяет определять температуру окружающего воздуха в диапазоне от -55°C до +125°C и получать данные с 12-битным разрешением по 1-Wire протоколу. Таким образом к микроконтроллеру можно подключить несколько датчиков с использованием всего трех проводов. Можно так же уменьшить количество проводов до двух, подключив +5В к линии данных через резистор 4к7 – так называемая «схема паразитного питания». Но при этом количество датчиков на шине придется сократить.
В постоянной памяти DS18B20 можно сохранить граничные значения температуры, при выходе из которых сенсор будет переходить в режим тревоги. На общей шине из многих сенсоров микроконтроллер может за раз узнать, какие из них перешли в этот режим. Таким образом становится легко определить проблемный участок в контролируемой среде.
Разрешение показаний настраивается и может составлять от 9 до 12 бит. Меньше разрешение — выше скорость преобразования.
Благодаря своим возможностям, DS18B20 часто используется в системах «умного» дома, террариума и т.д.
Библиотека для подключения 1-Wire устройств к Arduino.
Библиотека для подключения DS18B20 к Arduino.
Даташит
Датчик абсолютного атмосферного давления и температуры BMP085.
Область применения: измерение давления для барометров, метеостанций и приборов, перемещающихся в атмосфере.
Характеристики:
- Пределы измерения абсолютного давления 30-110кПа (300-1100hPa) (-500…9000 метров над уровнем моря)
- Питание 1.8 — 3.6В (Vdda), 1.62 — 3.6В (Vddd)
- Размер корпуса: 5.0X5.0 мм.
- Низкий уровень шума:
0.06hPa (0.5м) в стандартном режиме
0.03hPa (0.25м) в режиме ультравысокого разрешения
0.1m возможно при применение программного фильтра.
- Интерфейс: I2C
- Разрешение: 0.01 hPa, 0.1 С
Датчик может работать в нескольких режимах:
- Режим пониженного энергопотребления
- Стандартный
- Режим высокого разрешения
- Режим ультравысокого разрешения.
Часто в описании BMP085 можно встретить «разрешение 14бит», но это не соответствует действительности. Датчик способен выдавать от 16 до 19 значащих бит в зависимости от режима работы.
Датчик откалиброван. Имеет термостабилизацию. Логика работы сходна с прочими цифровыми датчиками. С памяти датчика считываются калибровочные коэффициенты, показания АЦП сенсора давления и температуры, после чего по специальной формуле вычисляются значение давления и температуры.
Датчик подключается к микроконтроллеру по шине I2C
Расчет высоты
Как известно, с ростом высоты давление падает. Примерная зависимость давления от высоты над уровнем моря отображена на следующем графике:
Эту зависимость описывает Барометрическая формула. На самом деле, вычисление высоты по давлению занятие весьма приблизительное. Дело в том, что основные показатели атмосферы (температура, влажность, атмосферное давление) меняются во времени. Эти показатели могут значительно изменяться в течение суток и существенно влиять на вычисление высоты. В барометрической формуле присутствует средняя температура слоя воздуха между точками измерения. При разных погодных условиях температура с ростом высоты может изменяться по разным кривым, что так же вносит погрешность в вычисления. Если пользоваться формулой Лапласа, то следует учитывать влажность воздуха. Вы должны понимать, что вычисленная по давлению высота над уровнем моря, будет совпадать с реальной только при стандартном давлении 760 мм рт.ст. (101 325 Па) над уровне моря.
Невзирая на сложности в вычислениях высоты по давлению, ее все же вычисляют, с некоторыми упрощениями. Из за разных подходов к вычислению высоты по давлению, у приборов разных производителей результаты могут отличаться. Не удивляйтесь, если на высоте свыше 1 км показания приборов разных производителей будут разниться на несколько процентов. В нашем случае, для вычисления высоты будем пользоваться формулой, рекомендуемой производителем датчика давления BMP085:
Даташит
Библиотека для Arduino |