Меню сайта
Категории раздела
Борьба с запахом [6]
Средства и устройства для борьбы с запахом и очистки воздуха.
Материалы, инструменты и оборудование [20]
Расходники, инструменты, приспособления и материалы, которые могу быть полезны для сооружения гроубокса.
Источники CO2 [9]
Углекислый газ необходим растениям для фотосинтеза, помогает растениям расти быстрее и потенциально дать больший урожай.
Гидропоника/Аэропоника [4]
Вода/воздух в качестве субстрата
Полив [5]
Ирригационные системы
Контроль [16]
Системы мониторинга
Освещение [11]
Источники света для растений
Гроубоксы [12]
Помещения для выращивания
Субстраты [11]
Среды для выращивания
Удобрения [9]
Средства для улучшения урожая
Электроника [47]
Софт [1]
Полезные советы [6]
Выращивание грибов [15]
Саморазвитие и бизнес [2]
Гроурепорты [1]
Статистика

Яндекс.Метрика
Онлайн всего: 1
Гостей: 1
Пользователей: 0

Форма входа
Главная » Статьи » Электроника

Обогреватель с терморегулировкой своими руками

Часто при обогреве гроубокса или помещения приходится использовать обогреватели. Если обогреватель имеет встроенный терморегулятор обычно механический то такая терморегулировка имеет большой разброс температур, что не очень удобно для обогрева растений. Решение представленное ниже позволяет поддерживать температуру более точно, избавляя растения от стресса из-за частых перепадов температуры и кроме того экономит электроэнергию.

Для данного решения потребуется сам обогреватель - это может быть масляный радиатор, элемент обогрева "Доброе тепло", мощная лампа накаливания, ТЭН, калорифер, конвектор и другие нагревательные приборы. Также потребуется любой микроконтроллер на базе arduino. Датчик температуры DS18B20. Твердотельное реле SSR-25DA.

Необходимые компоненты системы:
1. Микроконтроллер arduino pro mini (можно купить тут);
2. Датчик температуры DS18B20 (можно купить тут);
3. Твердотельное реле (можно купить тут
);
4. Любой обогреватель.

Сборка регулируемого обогревателя

1. Подключение нагрузки:

 

2. Подключение электроники:

Распиновка датчика температуры DS18B20:

 

3. Подключение питания:

В качестве источника питания можно использовать зарядник от сотового телефона напряжением 5В (обычно они бывают 5.2В).

Вся конструкция потребляет не более 100mA. Если мощность нагревательного прибора порядка 500Вт твердотельное реле даже не нагреется и дополнительное охлаждение для реле не требуется.

Для работы подключить радиатор к сети 220В. Поставить механический терморегулятор радиатора в такое положение, чтобы на случай сбоя электроники он не работал на полную мощность чтобы избежать перегрева гроубокса. Ставить в минимальное положение механический терморегулятор тоже не стоит иначе он не будет давать включаться обогревателю если для него будет слишком тепло. Я поставил примерно на 60% мощности.

При работе если масляный радиатор оборудован лампочкой то она будет мерцать - это означает что твердотельное реле кратковременно включает и отключает питание обеспечивая поддержку температуры.

Датчик DS18B20 надо сделать на длинном шнурке (1-2м) чтобы его можно было помещать в то место где сейчас должно быть столько градусов на сколько настроен микроконтроллер, в моем случае он расположен в 15 см от пола, а микроконтроллер настроен на температуру 18-20°C. Т.е. при температуре ниже 18°С обогреватель включится на 100% мощности, а при температуре 20°С отключится вообще. При температуре 19°С включится на 50% мощности это значит что он будет включаться и отключаться в течении 1 секунды 50 раз (т.к. частота бытовой сети 50Гц) тем самым он будет стоять полутеплый т.к. его тепла будет достаточно для обогрева бокса.

Использование данного типа реле обеспечивает многократное включение и отключение нагрузки, если же использовать обычное механическое реле то оно будет постоянно трещать включаясь и отключаясь, что приведет к его быстрой поломке. На своем примере я использую твердотельное реле уже порядка трех лет и все работает отлично.

Принцип работы реле SSR-25DA

Как видно из рисунка, при получении команды от микроконтроллера на включение или отключение нагрузки твердотельное реле автоматически дожидается когда фаза переменного тока будет проходить через ноль и только тогда включит или отключит нагрузку. Это помогает нам не замарачиваться с поиском ноля фазы - это сделает реле само.

Другое применение терморегулятора

В качества обогревательного элемента можно использовать и другие устройства в зависимости от того, что и как вы хотите обогревать. Можно вместо масляного радиатора подключить водяной ТЭН и начнется подогрев жидкости в системе отопления и термодатчик который находится где нибудь в середине комнаты будет управлять процессом нагрева по мере роста температуры воздуха в пространстве.

Программа для микроконтроллера

Если вы не знакомы с тем как заливать скетч на микроконтроллеры ардуино - не беда, этот процесс хорошо описан в интернете. Наберите в гугле "как залить скетч на arduino pro mini".

Привожу пример моего рабочего скетча который работает на меня не один год:

#include <OneWire.h>
#include <DallasTemperature.h>
#include <avr/wdt.h>

#define ONE_WIRE_BUS 2

OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
int maxTemp=30;
int minTemp=26;
const int relayPin=9; 
unsigned long interval=30*1000; //30sec recomended
unsigned long lastConnectionTime=0;
int Temp=25;
float tempPrev;
float temp=20;


void setup() {
  Serial.begin(9600);
  pinMode(relayPin,OUTPUT);
  wdt_enable(WDTO_8S);
  sensors.begin();
  setPwmFrequency(relayPin, 1024); //division on 1024 for ~30Hz
  pinMode(13, OUTPUT); //Blick LED
  
}

void loop() {
  if(millis() - lastConnectionTime > interval) {
    digitalWrite(13, HIGH);
    tempPrev=temp;
    sensors.requestTemperatures();
    temp=sensors.getTempCByIndex(1);
    digitalWrite(13, LOW);
    if (temp == -127) {temp=tempPrev;}
    int val = 255-255*(temp-minTemp)/(maxTemp-minTemp);
    
    if (val<0) {val=0;}
    if (val>204) {val=204;} //80% -this 230 or 450W; 204 for 400W
    analogWrite(relayPin, val);
    lastConnectionTime = millis();
    Serial.print("Temp=");
    Serial.print(temp);
    int valperc = map(val, 0, 255, 0, 100);
    Serial.print(" Power=");
    Serial.print(valperc);
    Serial.println("%");
  }
  delay(1);
  wdt_reset();
}

void setPwmFrequency(int pin, int divisor) {
  byte mode;
  if(pin == 5 || pin == 6 || pin == 9 || pin == 10) {
    switch(divisor) {
      case 1: mode = 0x01; break;
      case 8: mode = 0x02; break;
      case 64: mode = 0x03; break;
      case 256: mode = 0x04; break;
      case 1024: mode = 0x05; break;
      default: return;
    }
  }
}

 

Категория: Электроника | Добавил: kimih (2015-12-05)
Просмотров: 3189 | Теги: обогреватель автоматический своими , Обогреватель, обогреватель для гроубокса, обогреватель с терморегулировкой | Рейтинг: 0.0/0
Всего комментариев: 0
avatar
Поиск
Реклама