Применение датчика температуры и влажности SHT21.

Рассказать в:

Автор: Михаил

Как-то раз мне попалась на глаза довольно интересная информация о том, что компания Sensirionвыпускает комбинированные датчики температуры и влажности в одном корпусе SHT21 и, кроме того, всем желающим рассылает бесплатно семплы (образцы) этого датчика. Предложение очень заманчивое, такой возможностью глупо было не воспользоваться, поэтому, была быстренько оформлена заявка, и через две недели пришло письмо от компании Sensirion, в котором оказался образец датчика SHT21 и его подробный даташит. Впрочем, даташит, был ещё раньше скачан с сайта производителя. Поэтому определённое представление, что это за датчик у меня имелось. А вот размеры действительно поразили – всего лишь 3х3 мм. Видимо, всё же основное назначение SHT21 – использование в качестве встраиваемого решения в различную аппаратуру. Внешний вид датчика показан на рис. 1.

Применение датчика температуры и влажности SHT21.

Рис. 1

Основные технические характеристики датчика SHT21:

Выходной сигнал…………………………………………………...............I2C, ШИМ, SDM 
Потребляемая мощность…………………………...........………………1.5 мкВт 
Диапазон измерений относительной влажности………………. 0 - 100%
Диапазон рабочих температур……………………………............. -40...125°С
Время отклика (измерения отн. влажности)…………………….. 8 сек.
Точность………………………………………………………......................2%
Габаритные размеры……………………………………................…… QFN корпус

Обращаю ваше внимание, что датчики SHT21 в зависимости от модификации, могут иметь различный формат представления выходных данных – шина I2CШИМ, и аналоговый выход (SDM). Соответственно, они имеют различное обозначение – SHT21D, SHT21P и SHT21S. В дальнейшем, при ссылке на SHT21 будем считать, что имеется ввиду датчик с управлением по шине I2C - SHT21D. Корпус QFN датчика имеет шесть выводов, два из которых не задействованы (рис.2)

Применение датчика температуры и влажности SHT21.

Рис. 2

Использование шины I2C является удобным способом для организации управления датчиком SHT21 от микроконтроллера. Существует два режима взаимодействия между микроконтроллером и датчиком (Hold и No Hold Master Mode). Остановимся более подробно на режиме Hold (рис.3)

Применение датчика температуры и влажности SHT21.

Рис. 3

Как и в любом устройстве, работающем по шине I2C с использованием ведущего (в нашем случае – это микроконтроллер) и ведомого (датчик SHT21) вначале ведущий передаёт стартовый импульс (S). Затем передаётся адрес ведомого устройства по шине I2C с режимом записи. Адрес SHT21 определён как1000000X. Режим запись/чтение определяет бит X (0-запись, 1-чтение). Затем ведущий ожидает подтверждения от ведомого – команду АСК. После получения подтверждения, микроконтроллер выдаёт в линию команду управления или конфигурации – биты 10-17. В показанном на рисунке 3 примере передаётся команда работы измерения влажности в режиме Hold. Полный список команд показан в таблице на рис. 4.

Применение датчика температуры и влажности SHT21.

Рис. 4

Далее, согласно стандартным процедурам протокола I2C, передаётся повторный стартовый импульс (S) и адрес датчика с режимом чтения и контролем приёма подтверждения АСК. После приёма подтверждения начинается отсчёт времени измерения выбранного параметра – влажности или температуры (Measurement) . Следовательно, на это время необходимо установить нужные тайм-ауты в процессе считывания информации с датчика.

После измерения начинается непосредственно процесс считывания информации Сначала сохраняется содержимое старшего регистра (MSB) с передачей ведомому (от микроконтроллера к датчику) команды подтверждения АСК. Затем считывается младший байт (LSB) с выдачей подтверждения и контрольная сумма (Checksum). Так как считывание контрольной суммы является завершением процедуры чтения, то ведомому передается команда NACK, что говорит о завершении процесса считывания и стоповый бит (Р). Если контрольная сумма не нужна, то команду NACK необходимо подать вместо команды АСК в позиции 45. При этом считывание Checksum будет игнорировано. Последние два бита младшего разряда (43 и 44, рис.3) как наименее значащие при работе в 14-ти битном режиме используются для передачи статуса работы – если бит 43 равен 0-измерение температуры, если 1 – измерение влажности. Бит 44 не определён и в данном случае не используется.

На других режимах работы и дополнительных регистрах SHT21 останавливаться не будем - всю необходимую дополнительную информацию можно найти в даташите, а лучше на основе приведённого выше примера работы датчика, попытаемся реализовать экспериментальную схему измерителя температуры и влажности.

Но вначале нужно уточнить один момент. Полученные результаты измерения представляют собой 16-ти битное число, которое хранится в двух регистрах – MSB и LSB. Однако это значение необходимо подвергнуть преобразованию по определённой формуле, что бы выводимая информация соответствовала градусам в режиме измерения температуры и процентам в режиме измерения влажности.

Для перевода полученного значения в градусы применяется формула:

Для измерения влажности данная формула преобразования будет иметь несколько иной вид:

Теперь перейдём непосредственно к реализации схемы. Для экспериментов с датчиком SHT21 была использована схема с микроконтроллером 16F628A и ЖКИ индикатором WH0802A (рис.5). В принципе, схема абсолютно стандартная, никаких особенностей не имеет. Некоторые вопросы возникли с организацией питания – пришлось использовать питание 5 В для ЖКИ-индикатора и питание 3,3 В для микроконтроллера и датчика. Это обусловлено тем, что максимально допустимое рабочее напряжение SHT21 составляет 3,6В. Датчик SHT21 подключается по шине I2C, которая в микроконтроллере реализована программным способом. В схеме использован кварцевый резонатор на частоту 4 МГц и внешняя RC-цепь сброса.

Применение датчика температуры и влажности SHT21.

Рис. 5

Схема собрана на макетной плате, индикатор устанавливается в разъём платы (рис.6).

Применение датчика температуры и влажности SHT21.

Рис. 6

Так как датчик SHT21 имеет миниатюрные размеры (3х3 мм), то он для удобства работы он установлен на небольшой печатной плате, которая так же, как и индикатор, подключается к основной плате через разъём. Необходимо добавить, что паять датчик нужно очень аккуратно - QFN корпус имеет не выводы, а контактные площадки. Рядом с датчиком устанавливается блокировочный конденсатор 100 nF. Внешний вид платы датчика в увеличенном виде показан на рис.7.

Применение датчика температуры и влажности SHT21.

Рис. 7

После пайки датчик необходимо выдержать при влажности более 75% не менее 12 часов. Это своеобразное «формирование» датчика, которое предназначено для корректности его показаний.

Управляющая программа микроконтроллера работает в циклическом режиме с поочерёдным режимом измерения температуры и влажности, преобразованием полученных значений в градусы и проценты и вывода на дисплей. В верхней строке индикатора показывается температура, а в нижней строке – относительная влажность. Сразу оговорюсь, что эта программа писалась не под завершённое устройство, а под экспериментальный макет, поэтому является неоптимизированной и требующей определенной доработки в плане добавления различных функций. Необходимо ещё дополнительно реализовать индикацию контроля наличия на линии датчика (сейчас, при отсутствии или неработоспособности датчика на дисплей будут выведены значения температуры 25 С и влажности 18%). Кроме того, в этой версии программы используется только работа со старшим битом (MSB), поэтому индицируются целые значения градусов без дробной части, не реализована индикация отрицательных температур. Тем не менее, данная экспериментальная схема позволяет продемонстрировать работу датчика SHT21 в обоих его режимах измерений и впоследствии создать на её основе вполне нормальный термометр-гигрометр, что я впоследствии и планирую сделать. Внешний вид устройства с подключенным датчиком в режиме измерений показан на рис. 8.

Применение датчика температуры и влажности SHT21.

Рис. 8

Что касается погрешности измерений, то при измерении температуры погрешность относительно контрольного термометра не наблюдалась. Насчёт точности относительной влажности ничего сказать не могу – из-за отсутствия образцового гигрометра.

Вторая конструкция на основе датчика SHT21 – «термогигростат». Это устройство может найти применение там, где необходимо поддерживать заданные режимы влажности и температуры. Например, для управления вентилятором вытяжки в ванной комнате, нагревателем в погребе или гараже и т.д.

Устройство может работать в режиме измерения влажности и измерения температуры только раздельно. Выполнение определённой функции зависит от прошивки микроконтроллера. Больше никаких изменений вносить не нужно – схема «железа» остаётся неизменной для обоих режимов работы. На данный момент реализована только прошивка «гигростата», для термостата постараюсь написать в ближайшее время.

Основу устройства составляет микроконтроллер 12F675 (или 12F629), подключенный к датчику SHT21 (рис. 9). Питание микроконтроллера и датчика осуществляется от напряжения 3,3В, получаемого на выходе стабилизатора DA2. Реле К1, подключенное через транзисторный ключ VT1, служит для управления исполнительным устройством. Если нагрузка имеет большую мощность, например, нагреватель, то его нужно подключать через мощное реле или пускатель, а реле К1 использовать как промежуточное. Для подавления самоиндукции в момент срабатывания реле его обмотка зашунтирована диодом VD1. Индикация устройства выполнена на двухцветном светодиоде и может отображать три цвета - зелёный, жёлтый и красный. Жёлтое свечение получается за счёт пропорционального смешения зелёного и красного цветов, поэтому резисторы R5 и R6 имеют разное значение.

Применение датчика температуры и влажности SHT21.

Рис. 9

Устройство имеет три порога включения исполнительного устройства. При включении устанавливается нижний порог, срабатывает реле и светодиод мигает зелёным светом. Через 30 секунд, если значение влажности меньше нижнего порога, реле выключается и светодиод постоянно горит зелёным светом. Выбор других порогов осуществляется нажатием и удержанием кнопки S1.

При этом свечение светодиода поочерёдно меняется на зелёное, жёлтое и красное, что соответствуетнижнему, среднему и верхнему порогу срабатывания. В момент отпускания кнопки устанавливается выбранный порог работы. При достижении порога значения влажности или температуры срабатывает реле и мигает светодиод. Во избежание «дребезга» реле на границе порога, после включения реле введена временная задержка 30 секунд на повторное измерение. До включения реле измерение проводится непрерывно. При включенном реле также возможна установка кнопкой S1 других значений.

Прошивка микроконтроллера для измерения влажности имеет следующие значения включения реле: нижний порог – 60%, средний – 75%, верхний – 90%.

Внешний вид платы устройства показан на рис. 10

Применение датчика температуры и влажности SHT21.

Рис. 10

В данной статье были рассмотрены некоторые варианты использования датчика SHT21. Конечно, если покупать такие датчики, то это обойдётся очень накладно, но "бесплатная раздача слонов" от компанииSensirion ещё пока продолжается. Так что, не упускайте момент!!!

Заказать образец SHT21


Файлы:
Прошивка измерителя RH/T 
Печатная плата гигростата 
Даташит SHT21 
Прошивка гигростата 





Раздел: [Устройства на микроконтроллерах]

Сохрани статью в:

Оставь свой комментарий или вопрос:


Наше сообщество в VK, а ты с нами? Присоединяйся!!!
Тясячи схем в категориях:
-> Прочее
-> Измерительная техника
-> Приборы
-> Схемыэлектрооборудования
-> Источники питания (прочие полезные конструкции)
-> Теоретические материалы
-> Справочные материалы
-> Устройства на микроконтроллерах
-> Зарядные устройства (для батареек)
-> Зарядные устройства (для авто)
-> Преобразователи напряжения (инверторы)
-> Все для кулера (Вентилятора)
-> Радиомикрофоны, жучки
-> Металоискатели
-> Регуляторы мощности
-> Охрана (Сигнализация)
-> Управление освещением
-> Таймеры (влажность, давление)
-> Трансиверы и радиостанции
-> Конструкции для дома
-> Конструкции простой сложности
-> Конкурс на лучшую конструкцию на микроконтроллерах
-> Конструкции средней сложности
-> Стабилизаторы
-> Усилители мощности низкой частоты (на транзисторах)
-> Блоки питания (импульсные)
-> Усилители мощности высокой частоты
-> Приспособления для пайки и конструирования плат
-> Термометры
-> Борт. сеть
-> Измерительные приборы (тахометр, вольтметр итд)
-> Железо
-> Паяльники ипаяльные станции
-> Радиопередатчики
-> Вспомогательные устройства
-> Телевизионная техника
-> Регуляторы тембра, громкости
-> Блоки питания (лабораторные)
-> Усилители мощности низкой частоты (на микросхемах)
-> Другие устройства для усилителей
-> Cветовое оформление новогодней ёлки или праздничного зала
-> Глушилки
-> Телефонные жуки
-> Инфракрасная техника
-> Медицинская техника
-> Телефония
-> Для животного мира
-> Конструируем усилители
-> Антенны и усилители к ним
-> Звонки
-> Электронные игрушки
-> Усилители мощности низкой частоты (ламповые)
-> Управление двигателями (питание от однофазной сети)
-> Программаторы микроконтроллеров
-> Сверлилки
-> Изучаем микроконтроллеры
-> Радиоприемники
-> Сигнализации
-> Сотовая связь
-> USB-устройства
-> Блоки питания (трансформаторные)
-> Радиостанции простые в изготовлении
-> Источники питания (для усилителей)
-> Прочеее
-> защита от короткого замыкания (электронные предохранители)
-> Зарядные устройства (для радиостанций)
-> Мигалки
-> Cварочное оборудование
-> Кодовые электронные замки
-> Блоки питания (бестрансформаторные)
-> Часы
-> Управление поворотниками
-> Зажигание
-> Управление водой (насосы для скважин или колодцев, полив растений)
-> Моделирование
-> Блоки управления стеклоочистителями
-> Предварительные усилители
-> Защита от перегрузки и перегрева
-> Динамики
-> Ремонт бытовой техники
-> Дистанционное управление компьютером
-> Акустические микрофоны и преобразователи
-> Спутниковое ТВ
-> Gsm антенны, примочки, усилители, ретрансляторы.
-> Пищалки
-> Роботы
-> Ретрансляторы
-> Паяльники и паяльные станции
-> Звуковые сигнализаторы
-> Рули и джойстики
-> Схемы электрооборудования
-> Все для "кулера" (Вентилятора)
-> Работа с BGA микросхемами
-> Фильтры
-> Сабвуферы
Рейтинг@Mail.ru