Этот проект объединяет несколько модулей Duinotech и некоторые другие детали для создания универсального инструмента. Созданный по образцу обогревателей росы, используемых в телескопах, он определяет температуру и влажность окружающей среды, чтобы управлять небольшим обогревателем. Не только для телескопов, но и для всего, что необходимо для предотвращения конденсации.
Используя как можно больше данных, устройство потребляет не больше энергии, чем необходимо, и может даже работать прямо от аккумуляторной батареи USB. Он может работать на заданное количество градусов выше точки росы или температуры окружающей среды. Интенсивность подсветки также регулируется в коде, и мы даже разработали корпус, напечатанный на 3D-принтере, который практически превратит его в профессионально выглядящее устройство.
Кол-во | Код | Описание |
---|---|---|
1 | ХС4520 | Модуль температуры и влажности |
1 | ХС4454 | Экран контроллера ЖК-дисплея |
1 | ХС4410 | Основная плата ООН |
1 | РН3440 | 10К Термистор |
1 | 0596 руб. | резистор 10К |
1 | РР0572 | резистор 1 кОм |
1 | ZT2468 | МОП-транзистор |
1 | ХС4482 | Протощит |
1 | WC6028 | Вилка-розетка |
1 | 3264 руб. | Резистор 5Вт 390 |
Резистор мощностью 5 Вт является нагревательным элементом. Для большей мощности даже резистор RR3254 сопротивлением 15 Ом с легкостью будет работать с большинством USB-портов (до 500 мА), давая около 1,6 Вт. Другой вариант — подключить несколько резисторов параллельно, чтобы лучше распределять тепло. Для большей мощности следует использовать подходящий тепловой диапазон телескопа. Обычно они используют вилку RCA, поэтому можно установить розетку RCA, например PS0250. В схеме используется вывод VIN на Proto Shield, который не может выдерживать ток более 1 А.
Большая часть сборки включает в себя добавление компонентов в Proto Shield, чтобы придать ему всю необходимую дополнительную функциональность. Фактически на Proto Shield имеется три подсхемы: одна для термистора, другая для датчика влажности и третья для управления МОП-транзистором нагревателя.
На фотографиях ниже показан один из способов его сборки, но на Proto Shield есть небольшая область (окруженная белым прямоугольником), которая имеет многочисленные соединения 5 В и заземления, а также несколько коротких полосок, что делает это место идеальным для установки. все это вместе, особенно для подключения 5 В и заземления.
Подсхема термистора выглядит следующим образом:
Желтый провод выше идет к A1 и по одному резистору и термистору, а зеленый провод идет к 5 В, образуя простой делитель напряжения.
Верхний черный провод соединяет вывод S модуля с D3.
Схема MOSFET самая сложная:
На основной фотографии выше выводы МОП-транзистора — G (затвор), D (сток) и S (исток), если смотреть сверху вниз. Синий и фиолетовый провода отходят от платы к резистору 39R, а два белых провода питают резистор 39R от VIN и стока MOSFET. Резистор 10 кОм слева гарантирует, что полевой МОП-транзистор выключен, если только Uno не сообщает ему о включении, а резистор 1 кОм обеспечивает некоторую изоляцию в случае выхода из строя полевого МОП-транзистора.
Код довольно длинный и использует четыре разные библиотеки. К счастью, необходимо установить только один из них, все остальные поставляются с Arduino IDE. Библиотека idDHT11 считывает показания датчика температуры и влажности, а также рассчитывает точку росы. Это файл Telescope_Dew_Heater.ino.
Перед setup()
мы инициализируем все библиотеки и глобальные переменные. Существует также большой массив temps[]
, в котором хранятся данные преобразования температуры термистора. Для точности все температуры рассчитываются в десятых долях градуса.
При настройке ЖК-дисплей инициализируется и значения загружаются из EEPROM. Если они действительны, они загружаются в соответствующие переменные. Поскольку библиотека DHT11 выполняет чтение в фоновом режиме, мы начинаем чтение сейчас, когда оно нам понадобится в loop()
. Затем настраиваем интенсивность подсветки.
В loop()
скетч считывает все входные данные, включая термистор, температуру DHT11, влажность и точку росы, а также клавиатуру. Затем он реагирует на клавиатуру: при нажатии левой кнопки обогреватель работает от температуры точки росы в режиме «D», при нажатии правой кнопки режим «А» работает от температуры окружающей среды. Уставка нагревателя устанавливается кнопками вверх и вниз в диапазоне от нуля до девяти градусов. Кнопка выбора позволяет сохранить текущие настройки в EEPROM. Продолжительность удержания кнопки определяет, какой будет мощность нагревателя по умолчанию в случае обнаружения неисправности датчика.
Целевая температура рассчитывается и мощность нагревателя регулируется путем изменения ШИМ на контакте 11, после чего отображается текущее состояние выхода. Если в любом из датчиков обнаружено недопустимое показание, отображается сообщение и нагреватель переключается на выход по умолчанию.
На изображении выше температура окружающей среды составляет 26 градусов, но температура точки росы составляет 11 градусов, поэтому нагреватель будет стремиться к точке росы плюс шесть градусов, или 17 градусов. Фактическая температура телескопа составляет 26 градусов, поэтому обогреватель выключен. Если обогреватель переключиться в режим комнатной температуры нажатием правой кнопки, то цель будет 32 градуса, и обогреватель включится полностью. При нормальной работе термистор должен находиться рядом, но не совсем касаться резистора нагревателя, чтобы он мог быстро реагировать на изменения.
Есть ряд мест, где обогреватель можно улучшить, например, изменив настройку подсветки по умолчанию в соответствии с вашим приложением или даже сделав ее одной из настроек EEPROM. Если вам нужно больше мощности, рекомендуемые МОП-транзисторы рассчитаны на ток не менее 5 А при напряжении 24 В. В этом случае рекомендуется подключить источник питания напрямую к цепи MOSFET, а затем подать VIN обратно на плату UNO. Таким образом, небольшим дорожкам печатной платы не придется выдерживать такой большой ток. Для этого можно использовать старый блок питания для ноутбука или SLA на 12 В. Как упоминалось в начале, разъемы RCA можно использовать для стандартизации соединений с теми, которые обычно используются в нагревательных лентах.