#include <OneWire.h>
OneWire ds(10); // Подключаем датчик к 10 цифровому пину
// Для дисплея
#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define OLED_RESET 4
Adafruit_SSD1306 display(OLED_RESET);
float setTmp; // переменная для заданного значения температуры
float celsius; // переменная для текущего значения температуры
int buttFixPin = 2; // пин кнопки
int buttFixPinCurentState = LOW; // текущее состояние кнопки
const int ledPin = 13; // LED pin
//int buttonState = 0; // статус кнопки
void setup(void) {
// buttonState = digitalRead(buttonPin); //read the state of the pushbutton value
//pinMode(2, OUTPUT); //пин реле клапана отбора
pinMode(buttFixPin, INPUT_PULLUP); //подтягиваем входы кнопок к плюсу встроенными резисторами
//pinMode(buttonPin, INPUT_PULLUP); //подтягиваем входы кнопок к плюсу встроенными резисторами
pinMode(ledPin, OUTPUT); //13й вывод индикация нажатия кнопки
pinMode(3, OUTPUT); //пин реле клапана отбора
//digitalWrite(3, LOW); // Включаем реле
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
display.clearDisplay();
Serial.begin(9600);
}
void loop(void) {
// считываем состояние кнопок
buttFixPinCurentState = digitalRead(buttFixPin);
// float celsius=celsius; // переменная для текущего значения температуры
// buttonState = digitalRead(buttonPin);
if (buttFixPinCurentState == LOW)digitalWrite(ledPin, HIGH ); //Зажигаем светодиод по нажатию кнопки
else digitalWrite(ledPin, LOW);
//Запись температуры фиксации в переменную
if (buttFixPinCurentState == LOW && setTmp == 0)
{setTmp=celsius; //Если нажата кнопка, пишем в переменную текущее значение температуры
Serial.println(setTmp);}
if (celsius > (setTmp+0.1))digitalWrite(3, LOW ); // Если температура выше зафиксированной на 0,1 С, клапан закрыт
else digitalWrite(3, HIGH);
byte i;
byte type_s;
byte data[12];
byte addr[8];
// Ищем алрес датчика
if ( !ds.search(addr))
{
ds.reset_search();
delay(250);
return;
}
// Проверяем не было ли помех при передаче
if (OneWire::crc8(addr, 7) != addr[7]) {
Serial.println("CRC is not valid!");
return;
}
Serial.println();
// Определяем серию датчика
switch (addr[0]) {
case 0x10:
Serial.println(" RECTIFICAT");
type_s = 1;
break;
case 0x28:
Serial.println(" CRECTIFICAT");
type_s = 0;
break;
case 0x22:
Serial.println(" RECTIFICAT");
type_s = 0;
break;
default:
Serial.println("Device is not a DS18x20 family device.");
return;
}
ds.reset();
ds.select(addr); // Выбираем адрес
ds.write(0x44, 1); // Производим замер, в режиме паразитного питания
delay(1000);
ds.reset();
ds.select(addr);
ds.write(0xBE); // Считываем оперативную память датчика
for ( i = 0; i < 9; i++) {
data[i] = ds.read(); // Заполняем массив считанными данными
}
// Данные о температуре содержатся в первых двух байтах, переведем их в одно значение и преобразуем в шестнадцатиразрядное число
int16_t raw = (data[1] << 8) | data[0];
if (type_s) {
raw = raw << 3;
if (data[7] == 0x10) {
raw = (raw & 0xFFF0) + 12 - data[6];
}
}
else
{
byte cfg = (data[4] & 0x60);
if (cfg == 0x00) raw = raw & ~7;
else if (cfg == 0x20) raw = raw & ~3;
else if (cfg == 0x40) raw = raw & ~1;
}
celsius = (float)raw / 16.0;
Serial.print("T = ");
Serial.print(celsius);
Serial.print(" C ");
Serial.print("setTmp ");
Serial.print(setTmp);
//Работа Дисплея
display.clearDisplay();
display.setCursor(0,5);
display.setTextSize(2);
display.setTextColor(WHITE);
display.println("RECTIFICAT"); //Надпись сверху дисплея
display.setCursor(10,27);
display.setTextSize(1);
display.setTextColor(WHITE);
display.println("KLAPAN"); //Знак температуры
display.setCursor(60,23);
display.setTextSize(2);
display.setTextColor(WHITE);
if (digitalRead(3)) display.println("ON"); // показываем состояние выхода
else display.println(" OFF");
// display.println("ON"); // знак градуса
//display.setCursor(115,5);
//display.setTextSize(2);
//display.setTextColor(WHITE);
//display.println("C"); // Цельсия
display.setCursor(0,39);
display.setTextSize(2);
display.setTextColor(WHITE);
display.print(celsius); //Выводим на дисплей текущую температуру в колонне
display.setCursor(98,42);
display.setTextSize(1);
display.setTextColor(WHITE);
display.println("O"); // знак градуса
display.setCursor(110,43);
display.setTextSize(3);
display.setTextColor(WHITE);
display.println("C"); // знак Цельсия
display.setCursor(0,57);
display.setTextSize(1);
display.setTextColor(WHITE);
display.print("setTmp"); //Выводим зафиксированную температуру на дисплей
display.setCursor(40,57);
display.setTextSize(1);
display.setTextColor(WHITE);
display.print(setTmp); //Выводим переменную зафиксированной температуры на дисплей
display.display();
delay(1000);
}
// }
Тут не косяки, тут полностью код лучше переписать. Во первых грохнуть все delay(), реальная температура у вас отстает на 2 секунды. Обработку ds18b20, недавно dimax причесал тщательно, поищите на форуме месяц-полтора назад было.
Я читал про оформление кода, но торопышка я еще тот. Быстрее нужно всегда. Спасибо ребята.
Здесь не оформление, а потенциальные плохо различимые грабли. Если сама тема интересует, то почитайте вдумчиво этот холивар . Человек практически с нулевыми знаниями начинал, за два месяца все взлетело. Там и про убийство delay() и меню и кнопки. Доктор, ты ни ходи, а то на смех подымешь. Главное, все заработало, как хотелось.
Приветсвую всех. Снова я. Пересел я на ESP 8266 под ардуину IDE
Пособите если не затруднит в таком вопросе. После сработки клапана (отключение) по превышении температуры, нужно после возврата на исходнуюю температуру, дать устаканиться колонне например 5 минут, после чего снова включить клапан.
Этот кусок выбирает дельту
if (request.indexOf("/Select=0.1") != -1 && setTmp == 0) {
setTmp=sensors.getTempCByIndex(0)+0,1;
Serial.print("setTmp ");
Serial.println(setTmp);
value = HIGH;
}
if (request.indexOf("/Select=OFF") != -1) {
setTmp ==0;
value = LOW;
}
Этот включает клапан
if (sensors.getTempCByIndex(0) >= setTmp){
digitalWrite(releyPin, HIGH );
}
else {
digitalWrite(releyPin, LOW);
}
Ни чего не могу изобразить не из примеров, ни придумать.
После сработки клапана (отключение) по превышении температуры, нужно после возврата на исходнуюю температуру, дать устаканиться колонне например 5 минут, после чего снова включить клапан.
В момент, от которого надо отсчитывать 5 минут взводите две переменных: long int "время ожидания" и boolean "флаг ожидания". Дальше в большом цикле проверяем: не находимся ли мы в ожидании, если да - проверяем паузу, сравнивая millis из переменной и его текущее значение. Как только проскочили ноль - сбрасываем флаг ожидания и начинаем работать... Примеры смотреть в "моргаем светодиодом без delay()".
void loop() { // Отключаем отбор если превышена дельта по температуре.
if (sensors.getTempCByIndex(0) >= setTmp){
digitalWrite(pin_reley, HIGH );
}
else {
digitalWrite(pin_reley, LOW);
}
if (sensors.getTempCByIndex(0) < setTmp)
{ // Температура упала ниже зафиксированной
flag = !flag; // меняем значение переменной
pause = !pause
}
}
Дальше в большом цикле проверяем: не находимся ли мы в ожидании, если да - проверяем паузу, сравнивая millis из переменной и его текущее значение. Как только проскочили ноль - сбрасываем флаг ожидания и начинаем работать...
Спасибо еще раз. Вымучил таки! Получилось. Выглядит так:
unsigned long pause;
boolean flag;
void setup() {
}
void loop() {
// Проверяем, не находимся ли мы в ожидании
if (flag = true){ // Если да
if(millis()- pause >= 60000){ // time expired (60000 ms = 1 min)
digitalWrite(pin_reley, LOW);
}
if (sensors.getTempCByIndex(0) < setTmp){ // Температура упала ниже зафиксированной
//digitalWrite(pin_reley, LOW);
flag = false;
}
if (sensors.getTempCByIndex(0) >= setTmp){ // Отключаем отбор если превышена дельта по температуре.
flag = true;
pause = millis();
digitalWrite(pin_reley, HIGH );
}
}
Гонщик-самогонщик, по опыту личной эксплуатации, более правильным будет алгоритм, не фиксации какой то заданной температуры, а неизменность контролируемого параметра (температуры колонны) в течении времени (пусть 5 минут). За время ректификации, температура которая была true в начале процесса, может под воздействием внешних факторов измениться как вверх, так и вниз. ИМХО.
Огородный сезон закончился, начну свою пилить понемногу. Для себя вижу алгоритм в таком виде: температура в колонне начинает нарастать, запомнили, запустили таймер, изменилась, снова запомнили, перезапустили таймер и так, пока таймер не достигнет требуемого интервала. Считаем последнюю температуру константой, начинаем отбор. Превысили заданную дельту, отбор остановили, вернулись к функции определения константы.
В случае штатного прохождения ректификации проблема изменения внешних факторов остается, но почему не сделать такую коррекцию при нештатной ситуации + данный процесс становится полностью автоматическим.
Единственно, пока не придумал, как автоматически головы рубить.
В моем случае датчик стоит на высоте 2/3 колонны. Если на этом датчике температура скакнула, отбор закрыли. Дали время - колонна стабилизировалась. Отбор открыли. То есть, хвосты остаются на этом уровне, и не проскакивают в отбор. По термометру в верхней точке прекращает отбор если на 0,1* скачек. Функция пока не реализованная.
Если подстраивать колонну под изменение по внешним факторам, вероятность поймать хвост возрастает многократно. Может я и не прав.
Что касается голов, тут я буду пробовать такой вариант:
Два клапана отбора. В емкости для голов датчик, контактный или поплавок. Устанавливаем уровень на расчетное количество голов (считается от абсолютного спирта). Сработал датчик- переключился клапан. Пошел отбор тела.
Но все таки полностью автомат не получится. Без оператора не обойтись. Автоматика только как помошник.
По головам тоже такой вариант видится. Не буду делать два клапана (хочу сервой кран регулировать), получается - отобрали заданный объем голов, перекрыли, включили пищало (меняй емкость). )))))
А сам алгоритм отбора, надо пробовать. Эксперимент, наше все.
За время ректификации, температура которая была true в начале процесса, может под воздействием внешних факторов измениться как вверх, так и вниз. ИМХО.
Ощутимо уползает температура куба, а в верхней точке колонны должны быть некоторые температурные "ступеньки". Ну и "ширина фракции" хоть как-то должна ограничиваться, чтобы отобрать именно "питьевую" часть, а следующие за ней более тяжелые спирты отправить на топливо, например...
Кубовая увеличивается постоянно, по мере снижения концентрации. В зоне отбора ощутимо влияет только атм.давление, за время отбора 8-10 часов изменения бывают. Я этот алгоритм хочу исключительно для автоматического определения "константы", ну а если все таки уже вышли за штатный режим, пускай проверит на всякий случай. Делать специальные проверки, наверно излишество, либо BMP-шку прикрутить и по ней принимать решение о доп.проверке.
Зона отбора питьевых обычно до +0,2гр.С.
Хвостовые фракции, кроме помойки никуда не годятся. Мерзость хуже голов.
Скорее всего и от колонны зависит здорово. У меня "Доктор Губер", в нем две точки контролируются, куб и колонна в районе дефлегматора. Превышение до 0,3 на вкус не чувствуется, химию естественно не делал. Если проморгать и до 0,4-0,5 проскочит, здесь да, привкус конкретный прет.((((
Куб контролировать бестоку. При первичной дистилляции можно ориентироваться по температуре сколько примерно осталось спирта. На колонне верхняя точка и 2/3 колонны. На 2/3 датчик и упарвляет клапаном отбора, хвосты сторожит.
Еще датчик на выходе воды с дефлегматора, чтобы флегма не переохлаждалась. По нему настраивать колонны удобно.
Я по кубовой первый сэм забираю. Кран на полную, доходит до 97 и прекращаю. На выход воды думаю ставить вторым этапом, а в полете фантазии, вместо обычного вентиля, с эл.приводом, пускай сама регулирует))).
Именно стабилизация колонны и позволяет разделить фракции, и отобрать питьевую фракцию. На РК в верхней точке, не должна температура скакать. Если скачет- нужно искать и устранять проблему.
Гонщик-самогонщик пишет "ещё датчик на выходе воды с дефлегматора, чтобы флегма не переохлаждалась.
По нему настраивать колонны удобно." ??? прочитал гору мукулатуры но про переохлождение флегмы слышу первый раз.
При настройке колонны для работы в режиме предзахлеба (наиболее эффетивный режим), показатель температуры воды на выходе дефлегматора, позволяет более точно настроить колонну. 55-65С*
Уровень флегмы тоже вещь весьма желательная.
Многое зависит от конструкции колонны.
Управление тенами тоже вещь полезная. Однако регулировка мощности производиться при настройке колонны. И он сделан отдельным блоком из соображений безопасности.
А дальше только играем отбором продукта. Все регулировки и настройки колонны- один раз и все.
Ну на вкус, все сплавы разные. На мой, медь вкуснее. Мельхиор содержит немало никеля и как следствие чудесного кобальта, а судя по ложкам активность сплава достаточно высокая. Основное его достоинство, более высокая износостойкость, что в колонне явно не требуется.
Медь получаем посредством электролиза, что гарантирует весьма высокую чистоту. Мельхиор сплавлением, а что при этом повар положил, знает он и хим.лаборатория.
Что используете в качестве насадки в колонне. Судя по фотографии колонна не термоизолированная что больше походит на самогонный аппарат.
Температура дефлегмации (классически, насколько я понимаю процесс) измеряется в точке отбора продукта и зависит только от АТМОСФЕРНОГО давления, и ни как от температуры охлаждающей жидкости. При калибровки датчика температуры в конкретном дефлегматоре по температуре кипения спирта в зависимости от давления (производится один раз или при замене датчика или ардуины на новые) показания температуры при получении продукта соответствуют табличным значениям.
Колонна у меня работает в режиме предзахлёба, превышение давления в баке над атмосферным 22мм.рт.ст (поддерживает ардуина с помощю датчика температуры бака LM и датчика давления бака BMP), при вводе превышения 23мм.рт.ст происходит захлеб. Атмосферное давление имеет свойство меняться во времени поэтому необходим второй датчик BMP180 для постоянного контроля атмосферного давления и ввода коррекции.
ТЕНами управляет ардуина через симисторные ключи, для БЕЗОПАСНОСТИ, с ОПТОЭЛЕКТРОННОЙ развязкой.
У меня тоже без теплоизоляции и производитель "Доктор Губер" настоятельно не рекомендует ее использовать. По температуре охлаждающей жидкости особо не заморачивался, но по личным ощущениям, когда на выходе 35-45 градусов, процесс идет более стабильно.
Ну а датчики давления, там физически лепить некуда. Остается только замер и стабилизация температуры краном отбора.
Что используете в качестве насадки в колонне. Судя по фотографии колонна не термоизолированная что больше походит на самогонный аппарат.
Это сильно похоже на самогонный аппарат? Насадку использую разную. Спиральную медную, нержавеющие мочалки. Мочалки работают стабильно и без заморочек.
Термоизолировать колонну- обязательно. 10 мм теплоизолятора.
Утверждать, что медь дает привкус, можно только сделав органолептический анализ продукта после медной колонны и нержавейки. Есть такие данные? В студию.
Температура естественно контролируется в вержней точке колонны. Но клапаном отбора, у меня управляет датчик на высоте 2/3 колонны. При подходе хвостов, он перекрывает отбор. Колонна снова входит в режим стабилизации.
И eще - эта колонна стабильна настолько, что перепады давления в разумных пределах, ни как ни сказываются на процессе. И автоматика здесь для этого мне не нужна.
А вообще конечно тему немного увели в сторону. Всетаки автомактика для колонны- а не конструкция колонны.
К тому же, у меня и колонна из нержавейки есть. Фотка только головы еще не законченой имеется
Ну а датчики давления, там физически лепить некуда. Остается только замер и стабилизация температуры краном отбора.
Они и не нужны. Колонна стабилизируется при работе на себя при любом давлении. Если атмосферное давление не скачет как кенгуру, то и проблем нет. А давление в кубе вообще не чего мерить. Подрывник на случай аварии.
вся автоматика разработанна лично мной на основе изучения теории и практики процесса ректификации и учебников по химии и ни КАКОГО ОТНОШЕНИЯ К НИМ НЕ ИМЕЕТ.
Термоизолировать колонну- обязательно. 10 мм теплоизолятора.
Это - не серьезно. Чтобы можно было с уверенностью говорить о том, что процесс внутри не зависит от температуры снаружи - надо несколько сантиметров изоляции. Чтобы наружная часть колонны была точно комнатной температуры, иначе Ваши эффективные "полторы тарелки" - не будут нормально работать.
вся автоматика разработанна лично мной на основе изучения теории и практики процесса ректификации и учебников по химии и ни КАКОГО ОТНОШЕНИЯ К НИМ НЕ ИМЕЕТ.
Хорошо, просто очень уж на ихнюю похожа.
Я так вообще к этому вопросу подхожу -не повторять. Иначе ни фига нового не придумаешь. Пусть не совсем нового, но со своим уклоном хотя бы.
celsius! а не setTemp! строка 50
Так тоже идут? Светик на кнопку реагирует?
Так тоже идут? Светик на кнопку реагирует?
Ура заработала! Спасибо ребята, без Вашей помощи я бы с ума сошел!
Сейчас буду разбираться где мои косяки.
Тут не косяки, тут полностью код лучше переписать. Во первых грохнуть все delay(), реальная температура у вас отстает на 2 секунды. Обработку ds18b20, недавно dimax причесал тщательно, поищите на форуме месяц-полтора назад было.
Так на макетке выглядит.
Сейчас попробую найти про ds. Еще раз спасибо!
Нашел изучаю.
используйте всегда для if и else фигурные скобки - самому будет легче читать.
используйте всегда для if и else фигурные скобки - самому будет легче читать.
поддерживаю двумя руками.
Я читал про оформление кода, но торопышка я еще тот. Быстрее нужно всегда. Спасибо ребята.
Я читал про оформление кода, но торопышка я еще тот. Быстрее нужно всегда. Спасибо ребята.
Здесь не оформление, а потенциальные плохо различимые грабли. Если сама тема интересует, то почитайте вдумчиво этот холивар . Человек практически с нулевыми знаниями начинал, за два месяца все взлетело. Там и про убийство delay() и меню и кнопки. Доктор, ты ни ходи, а то на смех подымешь. Главное, все заработало, как хотелось.
Правильная тема! А то все эти аквариумы и поливалки ... :)
Правильная тема! А то все эти аквариумы и поливалки ... :)
В итоге они все сводятся к одной теме "Термостат" с вариациями.
недавно dimax причесал тщательно
Нашел, но почемуто скетч у меня не запустился. Вчера искал еще раз тему не нашел, чудеса!
Правильная тема! А то все эти аквариумы и поливалки ... :)
В итоге они все сводятся к одной теме "Термостат" с вариациями.
Термостат наше все! Но доп функции приятные можно пристроить, в хозяйстве пригодятся.
Я по блютуз на андроиде смотрь температуру, что б не бегать постоянно к колонне.
Развитие темы здесь http://alcodistillers.ru/forum/viewtopic.php?id=616
Приветсвую всех. Снова я. Пересел я на ESP 8266 под ардуину IDE
Пособите если не затруднит в таком вопросе. После сработки клапана (отключение) по превышении температуры, нужно после возврата на исходнуюю температуру, дать устаканиться колонне например 5 минут, после чего снова включить клапан.
Этот кусок выбирает дельту
Этот включает клапан
Ни чего не могу изобразить не из примеров, ни придумать.
Выглядит это сейчас так
Спасибо.
В момент, от которого надо отсчитывать 5 минут взводите две переменных: long int "время ожидания" и boolean "флаг ожидания". Дальше в большом цикле проверяем: не находимся ли мы в ожидании, если да - проверяем паузу, сравнивая millis из переменной и его текущее значение. Как только проскочили ноль - сбрасываем флаг ожидания и начинаем работать... Примеры смотреть в "моргаем светодиодом без delay()".
Andrey_Y_Ostanovsky
Спасибо что откликнулись. Как раз и пытался соорудить конструкцию из моргалок без delay(). Однако все это зацикливается.
Вот такая получилась конструкция
Осмысливаю как реализовать то что вы написали.
Буду писать что делаю, иначе запутаюсь.
Объявляем переменные
Дальше в большом цикле проверяем: не находимся ли мы в ожидании, если да - проверяем паузу, сравнивая millis из переменной и его текущее значение. Как только проскочили ноль - сбрасываем флаг ожидания и начинаем работать...
Не понимаю как сделать.
Вот что получилось, но кажется криво.
Andrey_Y_Ostanovsky
Спасибо еще раз. Вымучил таки! Получилось. Выглядит так:
Может не очень красиво, но работает!
Гонщик-самогонщик, по опыту личной эксплуатации, более правильным будет алгоритм, не фиксации какой то заданной температуры, а неизменность контролируемого параметра (температуры колонны) в течении времени (пусть 5 минут). За время ректификации, температура которая была true в начале процесса, может под воздействием внешних факторов измениться как вверх, так и вниз. ИМХО.
Нужно обдумать.
Огородный сезон закончился, начну свою пилить понемногу. Для себя вижу алгоритм в таком виде: температура в колонне начинает нарастать, запомнили, запустили таймер, изменилась, снова запомнили, перезапустили таймер и так, пока таймер не достигнет требуемого интервала. Считаем последнюю температуру константой, начинаем отбор. Превысили заданную дельту, отбор остановили, вернулись к функции определения константы.
В случае штатного прохождения ректификации проблема изменения внешних факторов остается, но почему не сделать такую коррекцию при нештатной ситуации + данный процесс становится полностью автоматическим.
Единственно, пока не придумал, как автоматически головы рубить.
В моем случае датчик стоит на высоте 2/3 колонны. Если на этом датчике температура скакнула, отбор закрыли. Дали время - колонна стабилизировалась. Отбор открыли. То есть, хвосты остаются на этом уровне, и не проскакивают в отбор. По термометру в верхней точке прекращает отбор если на 0,1* скачек. Функция пока не реализованная.
Если подстраивать колонну под изменение по внешним факторам, вероятность поймать хвост возрастает многократно. Может я и не прав.
Что касается голов, тут я буду пробовать такой вариант:
Два клапана отбора. В емкости для голов датчик, контактный или поплавок. Устанавливаем уровень на расчетное количество голов (считается от абсолютного спирта). Сработал датчик- переключился клапан. Пошел отбор тела.
Но все таки полностью автомат не получится. Без оператора не обойтись. Автоматика только как помошник.
По головам тоже такой вариант видится. Не буду делать два клапана (хочу сервой кран регулировать), получается - отобрали заданный объем голов, перекрыли, включили пищало (меняй емкость). )))))
А сам алгоритм отбора, надо пробовать. Эксперимент, наше все.
За время ректификации, температура которая была true в начале процесса, может под воздействием внешних факторов измениться как вверх, так и вниз. ИМХО.
Ощутимо уползает температура куба, а в верхней точке колонны должны быть некоторые температурные "ступеньки". Ну и "ширина фракции" хоть как-то должна ограничиваться, чтобы отобрать именно "питьевую" часть, а следующие за ней более тяжелые спирты отправить на топливо, например...
Кубовая увеличивается постоянно, по мере снижения концентрации. В зоне отбора ощутимо влияет только атм.давление, за время отбора 8-10 часов изменения бывают. Я этот алгоритм хочу исключительно для автоматического определения "константы", ну а если все таки уже вышли за штатный режим, пускай проверит на всякий случай. Делать специальные проверки, наверно излишество, либо BMP-шку прикрутить и по ней принимать решение о доп.проверке.
Зона отбора питьевых обычно до +0,2гр.С.
Хвостовые фракции, кроме помойки никуда не годятся. Мерзость хуже голов.
BMP заказал. Придет буду пробовать зависимость атмосферного давления вводить.
Если в верхней точке скакнет больше 0,1, хвосты проскочат гарантировано.
Скорее всего и от колонны зависит здорово. У меня "Доктор Губер", в нем две точки контролируются, куб и колонна в районе дефлегматора. Превышение до 0,3 на вкус не чувствуется, химию естественно не делал. Если проморгать и до 0,4-0,5 проскочит, здесь да, привкус конкретный прет.((((
Куб контролировать бестоку. При первичной дистилляции можно ориентироваться по температуре сколько примерно осталось спирта. На колонне верхняя точка и 2/3 колонны. На 2/3 датчик и упарвляет клапаном отбора, хвосты сторожит.
Еще датчик на выходе воды с дефлегматора, чтобы флегма не переохлаждалась. По нему настраивать колонны удобно.
Я по кубовой первый сэм забираю. Кран на полную, доходит до 97 и прекращаю. На выход воды думаю ставить вторым этапом, а в полете фантазии, вместо обычного вентиля, с эл.приводом, пускай сама регулирует))).
Вот сегодня почти собрал в коробушку. Закреплю все и на испытание.
Ждемс вести с полей))).
Стоит яблочная, некогда перегнать.
чтобы отобрать именно "питьевую" часть,
Именно стабилизация колонны и позволяет разделить фракции, и отобрать питьевую фракцию. На РК в верхней точке, не должна температура скакать. Если скачет- нужно искать и устранять проблему.
Гонщик-самогонщик пишет "ещё датчик на выходе воды с дефлегматора, чтобы флегма не переохлаждалась.
По нему настраивать колонны удобно." ??? прочитал гору мукулатуры но про переохлождение флегмы слышу первый раз.
Имею ректификационнную колонну - 1.3 метра, дефлегматор из термоса, бак на 40л., работает на автономном охлаждении,
сделана примерно 3 года назад. Не давно на управление поставил ардуину. Датчики температуры LM335 - один стоит в дефлегматоре
и при получении спирта температура стабильна и не ЗАВИСИТ от температуры охлаждающей жидкости. Темрература дефлегмации
у меня зависит только от АТМОСФЕРНОГО давления, для контроля давления стоит BMP180. Колонна работает примерно на превышении
давления 22мм.рт.ст. - BMP отключает нагрев. После калибровки LM по темрературе кипения спирта в зависимости от атмосферного
давления НА КОНКРЕТНОМ ДЕФЛЕГМАТОРЕ показания LMки соответствуют табличным значениям. Также эта LMка управляет звуковой индикацией (пик- пик).
Вторая LMка управляет ТЕНами нагрева бака по алгоритму: t - максимальная - отключить 2 ТЕНы, t - близка к максимальной отключить
1 ТЕН, t в средней зоне перевести 1 ТЕН в режим 0,5 мощности.
Сейчас необходимо подключить втрой датчик BMP180 для постоянного контроля атмосферного двления.
ВОПРОС: как это сделать наболее просто не прибегая к мультиплексированию шины I2C.
Гонщик-самогонщик пишет "ещё датчик на выходе воды с дефлегматора, чтобы флегма не переохлаждалась.
По нему настраивать колонны удобно." ??? прочитал гору мукулатуры но про переохлождение флегмы слышу первый раз.
При настройке колонны для работы в режиме предзахлеба (наиболее эффетивный режим), показатель температуры воды на выходе дефлегматора, позволяет более точно настроить колонну. 55-65С*
Уровень флегмы тоже вещь весьма желательная.
Многое зависит от конструкции колонны.
Управление тенами тоже вещь полезная. Однако регулировка мощности производиться при настройке колонны. И он сделан отдельным блоком из соображений безопасности.
А дальше только играем отбором продукта. Все регулировки и настройки колонны- один раз и все.
а, медь придаёт незабываемый вкус медного купороса конечному продукту.
вроде ж мельхиор сейчас доступен? или не?
а, медь придаёт незабываемый вкус медного купороса конечному продукту.
вроде ж мельхиор сейчас доступен? или не?
Ну на вкус, все сплавы разные. На мой, медь вкуснее. Мельхиор содержит немало никеля и как следствие чудесного кобальта, а судя по ложкам активность сплава достаточно высокая. Основное его достоинство, более высокая износостойкость, что в колонне явно не требуется.
Медь получаем посредством электролиза, что гарантирует весьма высокую чистоту. Мельхиор сплавлением, а что при этом повар положил, знает он и хим.лаборатория.
Что используете в качестве насадки в колонне. Судя по фотографии колонна не термоизолированная что больше походит на самогонный аппарат.
Температура дефлегмации (классически, насколько я понимаю процесс) измеряется в точке отбора продукта и зависит только от АТМОСФЕРНОГО давления, и ни как от температуры охлаждающей жидкости. При калибровки датчика температуры в конкретном дефлегматоре по температуре кипения спирта в зависимости от давления (производится один раз или при замене датчика или ардуины на новые) показания температуры при получении продукта соответствуют табличным значениям.
Колонна у меня работает в режиме предзахлёба, превышение давления в баке над атмосферным 22мм.рт.ст (поддерживает ардуина с помощю датчика температуры бака LM и датчика давления бака BMP), при вводе превышения 23мм.рт.ст происходит захлеб. Атмосферное давление имеет свойство меняться во времени поэтому необходим второй датчик BMP180 для постоянного контроля атмосферного давления и ввода коррекции.
ТЕНами управляет ардуина через симисторные ключи, для БЕЗОПАСНОСТИ, с ОПТОЭЛЕКТРОННОЙ развязкой.
re: подскажите как вставить фото и картинки.
Вставлять картинки здесь.
У меня тоже без теплоизоляции и производитель "Доктор Губер" настоятельно не рекомендует ее использовать. По температуре охлаждающей жидкости особо не заморачивался, но по личным ощущениям, когда на выходе 35-45 градусов, процесс идет более стабильно.
Ну а датчики давления, там физически лепить некуда. Остается только замер и стабилизация температуры краном отбора.
Что используете в качестве насадки в колонне. Судя по фотографии колонна не термоизолированная что больше походит на самогонный аппарат.
Это сильно похоже на самогонный аппарат? Насадку использую разную. Спиральную медную, нержавеющие мочалки. Мочалки работают стабильно и без заморочек.
Термоизолировать колонну- обязательно. 10 мм теплоизолятора.
Утверждать, что медь дает привкус, можно только сделав органолептический анализ продукта после медной колонны и нержавейки. Есть такие данные? В студию.
Температура естественно контролируется в вержней точке колонны. Но клапаном отбора, у меня управляет датчик на высоте 2/3 колонны. При подходе хвостов, он перекрывает отбор. Колонна снова входит в режим стабилизации.
И eще - эта колонна стабильна настолько, что перепады давления в разумных пределах, ни как ни сказываются на процессе. И автоматика здесь для этого мне не нужна.
А вообще конечно тему немного увели в сторону. Всетаки автомактика для колонны- а не конструкция колонны.
К тому же, у меня и колонна из нержавейки есть. Фотка только головы еще не законченой имеется
Олег, ваша колонна и автоматика судя по описанию, делалась по мативам Шульмана?
Ну а датчики давления, там физически лепить некуда. Остается только замер и стабилизация температуры краном отбора.
Они и не нужны. Колонна стабилизируется при работе на себя при любом давлении. Если атмосферное давление не скачет как кенгуру, то и проблем нет. А давление в кубе вообще не чего мерить. Подрывник на случай аварии.
Ну да я был прав. Оттуда ноги растут.
Вся их автоматика рассчитана на продажу, все фишки мульки бесполезные.
http://alcodistillers.ru/forum/index.php
Заходиете сюда. Единственный форум без торгашей. И инфы полезной и правильной за так.
вся автоматика разработанна лично мной на основе изучения теории и практики процесса ректификации и учебников по химии и ни КАКОГО ОТНОШЕНИЯ К НИМ НЕ ИМЕЕТ.
Это - не серьезно. Чтобы можно было с уверенностью говорить о том, что процесс внутри не зависит от температуры снаружи - надо несколько сантиметров изоляции. Чтобы наружная часть колонны была точно комнатной температуры, иначе Ваши эффективные "полторы тарелки" - не будут нормально работать.
Свойства теплоизоляционных материалов разные. Если стекловатой обмотать, то да, сантиметры нужны.
Уходим в дебри. Пора завязывать.
вся автоматика разработанна лично мной на основе изучения теории и практики процесса ректификации и учебников по химии и ни КАКОГО ОТНОШЕНИЯ К НИМ НЕ ИМЕЕТ.
Хорошо, просто очень уж на ихнюю похожа.
Я так вообще к этому вопросу подхожу -не повторять. Иначе ни фига нового не придумаешь. Пусть не совсем нового, но со своим уклоном хотя бы.