Следующим этапом явилось применение этого датчика в универсальном цифровом термометре. В рассматриваемом устройстве версии 1.1 использовались три датчика температуры DS18B20 – один датчик для контроля температуры на улице, второй – внутри помещения и третий совместно с датчиком внутренней температуры образовывает своеобразный психрометр для измерения влажности внутри помещения. Схема этого устройства показана на рис. 1
Рис. 1
При всей простоте схемы реализации измерения влажности по психрометрическому принципу, она имеет один очень недостаток – необходимо один из «внутренних» температурных датчиков держать в увлажнённом состоянии. Недостаток, к сожалению, довольно существенный т.к. требует изготовления «увлажнителя» для датчика и, кроме того, необходимо постоянно следить за наличием воды в увлажнителе. Поэтому, в описании универсального термометра, я говорил о своих планах для измерения влажности использовать более технологическое решение, например, на основе датчика влажности HIH-4000. Такой датчик заказать не получилось, зато появилась возможность абсолютно бесплатно получить образец (семпл) датчика SHT21. Вот на его основе и была создана новая версия 2.0 универсального термометра.
Использование датчика SHT21 позволило отказаться в схеме от двух «внутренних» датчиков DS18B20. Такой датчик оставлен только для измерения температуры наружного воздуха, а измерение внутренней температуры и влажности полностью возложено на SHT21. В результате такой модернизации, принципиальная схема устройства стала выглядеть следующим образом (рис. 2)
Рис. 2
Датчик SHT21 управляется по шине I2C. Так как в нашем универсальном термометре уже используется одно устройство, управляемое по данной шине – часы реального времени DS1307, то, казалось бы, особой проблемы подключение ещё одного устройства к шине I2C проблемы не составит. Но увы, не всё так просто. Дело в том, что микроконтроллер и DS1307 питаются от напряжения +5В, а питание SHT21 не может превышать +3,6В. В связи с этим в схему введены две цепочки согласования уровней и источник питания, которые представляют собой простейшие параметрические стабилизаторы. Это оказалось вполне достаточно, что бы подключить датчик SHT21 к пятивольтовой шине I2C. Датчик, совместно с частью дополнительных элементов смонтирован на маленькой печатной плате размерами 15х10 мм (рис. 3), которая подключается через штырьковый разъём к универсальному термометру четырёхжильным кабелем, в качестве которого наиболее удобно использовать «витую пару». Резисторы R16 и R17 – размещены на основной плате устройства. Длина кабеля ограничена спецификацией шины I2C и в стандартном режиме может достигать 2-х метров. Но у меня датчик SHT21 стабильно работает при длине кабеля около 6 метров.
Рис. 3
На печатной плате (рис. 4) для подключения датчика необходимо выделить два пина разъёма. Для этого необходимо отрезать печатную дорожку общего проводника от пинов 4 и 5 и подключить их через резисторы R16 - R17 470 Ом соответственно к линиям SDA и SCL шины I2C. Эти резисторы можно разместить и непосредственно на плате датчика, немного её доработав.
Рис. 4
Под новую версию универсального термометра была написана версия 2.0 прошивки микроконтроллера. Она позволяет выводить на один экран дату и текущее время, температуру на улице, температуру и влажность внутри помещения (рис.5)
Рис. 5
Небольшая доработка (или скорее возврат к версии схемы 1.0) позволит подключить к данному прибору ещё один датчик DS18B20. Принципиальная схема такой доработки приведена на рис. 6, а общий вид отображаемой информации на дисплее на рис. 7. Прошивка под этот вариант схемы имеет обозначение 2.1.
Здравствуйте, давно искал такие часы теперь только наткнулся с дисплеем 2004 и DS1307, очень интересные, но бида в том что микросхема сильно дорогая, нашел PIC16F72 в закромах. Большая просьба к вам, хотелось бы на основе этой микросхеме сделать часы, так как сам програмировать не умею. Зарание вам спасибо.
А Вы представляете, какой объём работынужно выполнить и сколько времени нужно потратить, что бы переписать программу под другой контроллер? Может проще все-таки приобрести нужный МК, тем более, что не такой он уж сильно дорогой.
А нет ли варианта прошивки на три датчика ds18b20? Ну что-то типа как на рис 7 только без SHT21, нет возможности её достать. А хотелось бы датчики улица, балкон, квартира.
Большое спасибо, именно то что искал. Как поменять буквы в надписях я разобрался, но как сделать её длиннее (вместо слова "мотор" слово "квартира") в готовый HEX не всунуть. Можете поделится исходниками? Если можно на адрес Den256 собака UKR.NET.
Подскажите новичку, Конденсатор С1 - электролит? На какое напряжение он? И конденсаторы с5 и с6 - 27 чего? мф? пф? Простите за глупые вопросы, я учусь пока
Добрый день! Поддерживаю chukcha1979! Нельзя ли взглянуть на исходничек? Хочется ввести функцию термоконтроля - цены прибору тогда не будет! Или может сами поможете?
Сейчас разбираюсь с подключением датчика давления MPL115A2 для новой версии устройства. Возможно, когда буду писать программу под 3.0, тогда и добавлю выход термоконтроля
Здорово! Я был бы Вам бесконечно благодарен за термоконтрль и без датчика давления. Я собираюсь делать влагомер-термометр для террариума, там датчик давления в общем-то не нужен, а контроль температуры и влажности просто необходим... Из всех решений, что удалось найти в Сети - Ваше наиболее удачное. Кстати, можно ли вместо SHT21 применить SHT75? А то его не найти уже в продаже... И нет ли варианта прошивки для дисплея 1602?
Понимаете, даже если там будет контроль атмосферного давления, то вы же его можете не использовать - т.е. не устанавливать этот датчик. Ну а раз термоконтроль так необходим, то что ж, будем добавлять его в новую версию (хотя изначально таких планов не было). Но "по пожеланиям трудящихся" сделаю .
Насчёт датчика - вообще-то SHT21 - дороговатое удовольствие, я его не покупал, а заказывал как сэмпл. Сейчас вроде бы уже "халява" закончилась. SHT75 - не знаю, я даже не читал даташит на него, при случае посмотрю. Версия этого устройства для индикатора 1602 действительно существует, правда только для 1.1 смотрите форум - http://lock.3dn.ru/forum/2-23-1, самое первое сообщение.
Огромное Вам человеческое СПАСИБО! жили бы Вы рядом - с удовольствием угостил бы Вас пивом А на счёт индикатора 1602 для версии 1.1 я конечно видел, но Вы же понимаете, что это совсем не то пальто Психрометр не интересен, потому - не буду говорить за всех - лично я готов разориться на SHT75 и ds1820 ради точности и надёжности измерений. В конце концов от этого будет зависеть жизнь и условия существования моего любимого питомца. Так что примите хотя бы мою устную благодарность. Готов поучавствовать в тестировании. Если что, моя почта dimzone@gmail.com
Единственное, что не могу точно ответить, когда всё это реализую. Вообще-то, могу скинуть Вам исходники версии 2_0, можете попробовать сами, заодно и подгоните под собственные требования. Ибо "эпопея" с датчиком давления может затянуться надолго
Я мог бы попробовать, если исходник в ассемблере писался... С ним я немного знаком. "Си" я не знаю совсем, и опыта написания на нём программ не имею. Но в любом случае давайте попробуем? В любом случае для своей любимой паучихи я и Си изучу :)
Да была мысль что-то типа таймера/будильника сделать, да так пока и не сделал. Кстати, Вам можно будет использовать. При критической температуре подавать сигнал - в дополнение к реле управления нагревателем. Исходники отправил. Все дальнейшие вопросы и обсуждение давайте перенесём в форум - http://lock.3dn.ru/forum/2-23-14
Ну и давайте сразу на всякий случай определимся, куда будем вешать управление термоэлементом? Дабы не плодить кучу вариантов, предлагаю всё вести в рамках одного проекта. Если мне что-то удастся придумать и реализовать - я передам Вам, а Вы уже по своему усмотрению включите в основную версию прошивки, которую и выложите здесь. ОК?
Ещё было бы не плохо определиться с типом терморегулирования - будем делать дискретное или пропорциональное? Будем щёлкать релюхой при достижении границ температурного диапазона? Или плавно менять температуру самого термоэлемента? Например с помонщью ШИМ? Второй способ предпочтительней, но сложнее в реализации, да и наверняка дороже... Захочет ли кто нибудь её потом повторять?
Кстати, у SHT75 диапазон питания до 5.2 вольт - так что не надо заморачиваться на организацию дополнительного питания и согласование уровней. И выводы у него нормальные для монтажа. Я уже заказал его. Пока идёт, начинаю потихоньку собирать схему
А где собственно прошивка? В файле еще один архив UT_2_0.zip с той же схемой и печатками. Заранее благодарен. Кстати, как насчет использовать SHT21 в качестве уличного датчика?