Автоматизированный подогрев браги на ARDUINO - DISTSYS.RU
14 июня, Понедельник, 2021

Login Form

Breadcrumbs

Автоматизированный подогрев браги на ARDUINO

 

Итак, пришло время и кончились дрожжи. Покупаю по полкило, чтобы надолго сразу. Как то так случилось, что выбор пал на белорусские спиртовые, не то чтобы они прям хорошие, но просто привык к ним, выработался уже алгоритм действий, да и результат стабилен, что мне подходило. Выбрал в инете адекватную цену, заказал еще мелочевки и привезли вместо тех что были обычно вот эти:

 

ох уж эти белорусские спиртовые дрожжи

 

Читать особо инфу на этикетке не стал, т.к. рассудил что дрожжи те же, просто упаковка изменилась - поставил брагу: первые 10 литров на остатках старых дрожжей, вторые 10 литров на новых. И вот разница оказалась, как говорится, на лицо! Первая отбродила как обычно - выход 2 литра с копейками - это нормально, с учетом того что прерываю первую перегонку и самые хвосты выливаю. А вот вторая, с новыми дрожжами, спустя 2 (!) недели еще бродила. Не сильно, осадилась бентонитом нормально, но процесс явно еще вяло, кое-как, но шел. Выход 1,6... - это безобразие! Не то чтоб я жаден, но это просто неправильно.

Полез за пачкой дрожжей и чтож мы видим на этикетке?

Рекомендации к белорусским спиртовым дрожжам

 

Температура (всегда отслеживаю) конечно при брожении была 24 - 26 градусов. Это далеко не 30 и тем более не 35. Пенять было не на что, кроме как на температуру. Дрожжи активировались хорошо, с пенистой прям шапкой, так что для меня направление моих дальнейших действий было очевидным.

Тут похолодание, отключили горячую воду, в квартире дубак, греть надо точно и греть неплохо. Под руку попался обогреватель для сушки ботинок. Долго я его искал, но нашелся он неожиданно и в нужное время, что само по себе редкость. Мощность у него не большая, так что управлять им можно контроллером через обычную релюху.

Собираем схему:

схема ардуино

Запихиваем в корпус:

автоматика ардуино в корпусе

Скетч:

#include
OneWire ds(10);
int ledPin = 12; // реле пин
int flagTemp = 0; // переменная отслеживания опроса датчика температуры
int tTempTemp = 0; // временная переменная для записи расчета времени с последнего опроса датчика, не совсем верно, но по коду можно разобраться зачем))))
int Temp = 0;
int counterAlarm = 0;
unsigned long AllTempTime; // переменная для записи времени прошедшего со старта программы для опроса DALLAS DS18 (температуры)
unsigned long MemTempTime; // переменная для записи времени начала события относительно времени прошедшего с начала программы для опроса DALLAS DS18 (температуры)
unsigned long AllTime; // переменная для записи времени прошедшего со старта программы
unsigned long MemTime; // переменная для записи времени начала события относительно времени прошедшего с начала программы
int data[10];
int reg = 0;
int temp_min = 32;
int temp_max = 34;
void setup() {
Serial.begin(9600);
pinMode(ledPin, OUTPUT);
}
void BeepFunction(){
analogWrite(3, 500); // +BEEP значение должно находится между 0 и 255
delay(30);
analogWrite(3, 0); // -BEEP
}
void BeepFunction_alarm(){
analogWrite(3, 500); // +BEEP значение должно находится между 0 и 255
delay(200);
analogWrite(3, 1000); // +BEEP значение должно находится между 0 и 255
delay(200);
analogWrite(3, 3000); // +BEEP значение должно находится между 0 и 255
delay(600);
analogWrite(3, 0); // -BEEP
}
void loop() {
// *** НАЧАЛО ТЕМПЕРАТУРА

if (flagTemp == 0){
byte data[2];
ds.reset();
ds.write(0xCC);
ds.write(0x44);
flagTemp = 1; // выставляем флаг на пропуск этого блока, пока не пройдет 1000 мс
MemTempTime = millis(); // засекаемвремя
}else{
AllTempTime = millis(); //
tTempTemp = AllTempTime - MemTempTime;
if (tTempTemp < 3000){
flagTemp = 1;
}else{
flagTemp = 0;
ds.reset();
ds.write(0xCC);
ds.write(0xBE);
data[0] = ds.read();
data[1] = ds.read();
Temp = (data[1]<<8)+data[0];
Temp = Temp>>4;
}
}
// *** КОНЕЦТЕМПЕРАТУРЫ
//Serial.print(" T = ");
//Serial.println(Temp);
//Serial.println(counterAlarm);
//Serial.print(Temp);
//Serial.println("'C");
if (Temp>temp_min){
if (reg == 0){
digitalWrite(ledPin, 0);
}else if (reg == 1){
if (Temp<temp_max){ <br="">digitalWrite(ledPin, 1);
counterAlarm = 0;
}else{
reg = 0;
digitalWrite(ledPin, 0);
}
}
}else{
digitalWrite(ledPin, 1);
reg = 1;
counterAlarm ++;
if (counterAlarm > 150){
// BeepFunction_alarm(); //пытался использовать лампу накаливания, это сигнал в случае перегорания лампы
counterAlarm = 0;
}
}
delay(250);
}

 

Ставим брагу, запихиваем нагреватель между канистрами, заворачиваем в утеплитель и смотрим результат:

теплоизоляция браги - мой вариант

Держит 30-32 градуса – это хорошо. Ждем результат.

Продолжение:

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

Данная конструкция поддерживает постоянную температуру:

подогрев браги

 

 На этом с подогревом браги закончил.

 

Недостаточно прав для комментирования.