Автоматика полностью перенесена на платформу ESP32 и вследствие чего появилось удаленное управление через телефон VirtuinoSE
Поддерживает до 8 температурных датчиков, датчик кубового давления MPX5010, расходомер воды на датчике холла, бесконтактный датчик переполнения емкости, датчик атмосферного давления, логгирование данных на флешку, 2 клапана на 12В, 2 клапана на 220В, 1 выход для плавного управления нагрузкой, 1 выход под разгонную тену. Дополнительно можно поставить блок весов, для контроля скорости и объема жидкости.
Печатные платы разработаны в EasyEDA
https://easyeda.com/norem/dist-arm
https://easyeda.com/norem/dist


Логи работы автоматики
https://yadi.sk/d/WnB7uUT9cuo1Fw
Скетч для Arduino Nano ArduinoIDE
ACS712_norem.rar
Скетч для ESP32 под PlatformIO
mysam.rar
Проект для работы с автоматикой под управлением Virtuino SE
esp32.rar
Добавлено через 20ч. 27мин.:
Автоматика поделена на 2 блока Силовой блок и Блок управления.
Силовой блок под управлением ArduinoNano и на него возложены задачи по регулировке мощности нагрева, включение и выключение разгонной розетки, 2х клапанов на 12В и 2х клапанов на 220В.
На плате предусмотрен выход под I2C дисплей, термореле, 3 резервных выхода под датчики на пинах А1 А2 А3.
Обмен между блоками происходит по I2C.
Алгоритмы работы Блока управления.
Режим работы Стоп-Старт.
Установку делаю 10 секунд через 8 минут.
Дельтой в этом режиме является температура в дефлегматоре и при ее достижении, включается клапан хвостов и останавливает отбор через дефлегматор. Так же добавляется единичка к установленному значению текущей скорости воды. Поток проходящей охлаждающей воды измеряю датчиком XKC-Y25. А регулировку краном Камоззи rfo 382-1/8 с шаговым двигателем 28BYJ-48 и драйвером ULN2003 (на плате так же запланировано использование а4899)
Режим работы Тело.
Дельта это датчик температуры расположенный в 30% от общей высоты царги с насадкой. Дельта величина не постоянная и меняется в зависимости от атмосферного давления и давления в кубе
t_Delta_Davl = t_Delta + t_Par_Spirt - t_Par_Spirt_Start;
t_Par_Spirt = (Pressure + (MPX5010DP * 0.7) + 1296.58) / 26.31579;
где, t_Delta_Davl - расчетная дельта в царге
t_Delta - вручную установленное значение дельты
t_Par_Spirt - температура кипения спирта в царге с учетом атмосферного давления и расположения датчика температуры(0,7)
Pressure - показания атмосферного давления
MPX5010DP - показания относительного давления в кубе
Сам процесс выглядит следующим образом:
ставим мощность работы тена wt_otbor(верхнее значение мощности) wt_golov(нижнее значение мощности) в значения меньше и больше чем своя стандартная мощность отбора (например моя мощность 1500 а я ставлю 1100 и 1800Вт) и ждем пока колонна не перейдет в режим захлеба. Это нужно для того чтобы узнать кубовое давление при котором прошел захлеб (цифры с неоднородной засыпкой и разной насадкой разные, у меня было от 20 до 50 мм рт ст) потом обращаем внимание на показатель Mpx5010dp(давление в кубе) и ставим в Max_kub_d значение меньшее на 5. (если давление больше то мощность нагрева 1100 если меньше то 1800) Следовательно этим мы добьемся чтобы весь погон давление в кубе будет постоянным и предзахлебным с максимальным разделением.
Дульту обычно ставлю 0,2 от показаний царги и скорость подачи воды в половину меньше положенной (автоматика сама найдет нужную скорость). Принцип работы: если скорость отбора большая то включится клапан хвостов, остановит отбор, стабилизирует показания датчика царги, увеличит скорость охлаждающей жидкости и возобновит отбор.
Режим Пиво.
Можно задать 4 температурных паузы ( температура поддержки и время паузы) при переходе между паузами сигнализирует о переходе. На стадии кипячения 3 раза позовет закинуть хмель.
Дельта - возможные отклонения от заданной температуры паузы.
Возможность управления насосом.
Режим Датчики.
Можно прямо из приложения VirtuinoSE расставить датчики согласно вашей колонне.
Режим Калькулятор.
Для того чтобы не запускать сторонние программы для расчета количества АС, спитруозности в кубе после разбавления, процентов голов предголовий и хвостов.
Значения можно получить от температуры кипения куба и перевести в текущую спиртуозность.
Добавлено через 13дн. 3ч. 43мин.:
Температура кипения воды в кубе приблизительно расчитывается по формуле
Т_макс_куб = 0.03728 * (Атмосферное_давление(мм.рт.ст.) + Давление_в_кубе(мм.рт.ст.)) + 72.04;
Требуется для определение конца погона