Форум самогонщиков Сайт Барахолка Магазин Помощь солдатам

Комплекс автоматизации Самоварыч

Форум самогонщиков Автоматика
1 2 3 1
dranek Куратор Минск 609 645
11 Мая 26, 10:30
Не что иное как модификация Самовара , сделанная мной изначально для ESP32S3, в последствии адаптирована обратно под ESP32.
Изначальная цель: довести Самовар до нужной мне функциональности.
Работает на обоих микроконтроллерах.

Коротко о возможностях автоматики (здесь лишь малая часть мои заслуги, в основном наследие Самовара)

  • Модульная частичная сборка под свои нужды, есть разработанные платы, которые можно заказать в соответствующих сервисах, легко собирается на макетках или навесным монтажом.
  • Разработанные модели корпусов, узлов разбора и прочего для 3д печати.
  • Простая прошивка бинарником без заморочек с компиляцией, но исходники в комплекте.
  • Поддержка до 2 перистальтических насосов на шаговых двигателях для отбора тела и голов при ректификации, прокачки браги в НБК (в перспективе барда вторым насосом), управления дозатором инградиентов и мешалкой при варке пива или сыра.
  • Поддержка узла разбора до 11 емкостей для распределения фракций отбора по времени при ректификации (22 в случае с вторым перистальтическим насосом (двухрядный узел)).
  • Поддержка 1 или 3 на ESP32S3 индукционных датчиков уровня для реагирования на захлёб колонны, переключения емкостей при дистилляции по мере их заполнения, в перспективе для регулятора уровня барды НБК.
  • Измерение пяти температур с помощью термисторов и/или DS18B20. (Верх колонны(пар), царга, куб, вода на выходе охлаждения, ТСА.)
  • Учет и регулирование расхода охлаждающей воды, управление её насосом либо двумя клапанами.
  • Возможность использовать модуль с 4 реле для различных функций (нагрев, разгон, вода, мешалка, либо свои через LUA).
  • Поддержка нескольких видов стабилизаторов мощности с проводным управлением (с изоляцией через ADUM), либо беспроводным через HC-12. В том числе поддержка моего варианта стабилизатора с управлением по WiFi.
  • На текущий момент проверена работа с стабилизаторами РМВк, Stab AVR, моим. Со стабилизатором kvic пока никто не отписался об успешной работе, настраивался с помощью эмуляции. Заложены дополнительно управление с помощью ШИМ и по протоколу Modbus RTU для частотных преобразователей - эти режимы не проверялись совсем и наверняка потребуют отладки. Также в списке есть Universal protocol, это наследие StabAVR, некогда хотел задействовать, но отложил пока.
  • Продуманная комплексная система безопасности, аппаратная и в составе алгоритма.
  • Интерфейс в виде веб-страниц в локальной сети. Его можно выводить себе удаленно с помощью различных технологий VPN. Вывод краткой информации на дисплей. Запись логов на свою флэш, на устройство в локальной сети и в облако Самовара.
  • Удалённое оповещение через личного телеграмм бота. Удаленное управление по протоколу blynk. У автора Самовара есть даже своё мобильное приложение с использованием протокола Blynk, оно тоже должно работать, там только нет управления вторым насосом над царгой пастеризации.
  • Режимы работы: Ректификация, Дистилляция, Бражная колонна, Пивоварение, НБК, Сыроварение. Можно приспособить и под другие, например Сувид, Дозреватор, Экстрактор Соцклета.
  • Возможность (хоть и ограниченная) писать свои алгоритмы и дополнять существующие с помощью встроенного языка программирования LUA.
  • Для режимов используются строковые Программы, позволяющие эти режимы гибко настраивать под себя. В режимах Ректификация, Дистилляция, Пивоварение, Сыроварение программы ограничены 29 строками на выбор. В НБК программа фиксированная, можно менять только параметры её строк.

Вот так, сделал себе мод, и решил поделиться. Ибо "Нельзя есть мороженое одному."
Некоторое время уживался в одной теме с Самоваром. Однако мод вырос настолько, что автор Самовара вежливо попросил меня создать свою тему, что я и сделал.
Схема для ESP32 и плата те же, что у Самовара, за исключением энкодера. Вместо энкодера подключается драйвер ШД насоса над царгой пастеризации. Также можно использовать только BMP180.
Схема и плата для ESP32S3 актуализируются здесь . Схемы и платы для ESP32 есть в составе Самовара, они совместимы с небольшими оговорками.
И это хорошо, у пользователей есть альтернатива.
В Самоваре также заложена своя поддержка ESP32S3, его при желании можно запустить на моей плате, но придётся разобраться в нюансах.
Существует мой вариант платы для Самовара на ESP32 здесь и I2C приставка с термисторами
У Самовара есть свой сайт с обширной документацией и другими сервисами.
По большей части изложенная там информация может быть использована для Самоварыча. Не вижу смысла писать тоже самое второй раз и вообще не представляю себе первый пост в теме с таким объёмом, поэтому далее будут описаны только отличия Самоварыча от Самовара версии 6.26 (он ведь тоже продолжает своё развитие).
Желающие, имеющие в наличии только плату с ESP32S3 или ESP32 могут за пару минут прошить в неё Самоварыча, посмотреть и предварительно оценить интерфейс и возможности. Решить, нужно ли им это. Далее можно почитать документацию, приобрести необходимые недостающие компоненты и приступать к сборке.

Кратко:
Упрощены процессы прошивки и инициализации. Самоварыч распространяется на ряду с исходниками также готовыми бинарными файлами.
Доработан интерфейс для удобства, упрощены некоторые настройки и т.п. Проведен ряд оптимизаций и дебаг. Добавлена встроенная поддержка термисторов. Использование второго перистальтического насоса над царгой пастеризации.
Добавлен режим сыроварения. Пока в упрощенном виде.
Есть и другие отличия, не все в пользу Самоварыча. Например нет поддержки I2C Stepper, в качестве датчика атмосферного давления только BMP180.
На многих параметрах в настройках есть всплывающие пояснения.

Подробно:Аппаратные отличия:
  • 1. Отсутствует поддержка I2C Stepper, I2C расширителей портов, датчиков давления MPX, датчик атмосферного давления только BMP180. Отсутствует энкодер.
  • 2. Добавлен дисплей oled i2c 128/64 px. На него при загрузке выводится количество найденных датчиков температуры DS18B20 и NTC, SSID подключенной точки wi-fi и полученный IP либо сообщение о поднятии своей точки доступа, диагностические сообщения: неисправность файловой системы...
    Во время работы на дисплей выводятся в 2 столбца:
    Время. Продолжительность работы.
    Статус.
    Температура пара. Дельта температур пара и царги.
    Температура царги. Температура ТСА.
    Температура куба. Температура воды.
    Скорость отбора. Мощность/напряжение на ТЭНе.
    SSID Wi-Fi. Давление ДД.
    IP. Текущий RSSI.
  • 3. Поддержка использования второго перистальтического насоса для отбора голов над царгой пастеризации (ЦП). Насос над ЦП такой же как на отборе тела. Для унификации. Настройки скорости общая. Калибровка по основному насосу. В случае ESP32 и платы Самовара второй насос над ЦП подключается вместо энкодера, пины: STEPPER2_STEP 19, STEPPER2_DIR 18, STEPPER2_EN 23.
    В случае установки галки в настройках - "Использовать второй насос для отбора голов":
    В режиме отбора голов вместо основного включается насос над ЦП со скоростью из соответствующей строки программы. В режиме отбора тела и предзахлеб работает со скоростью указанной в настройках "Скорость насоса при отборе тела:". Всегда можно подкорректировать из основной страницы Web интерфейса. На хвостах должен стоять.
    Если галка не стоит всё как у Самовара.
    Есть отличие от Самовара в отображении скорости насосов. У меня отображается скорость, которую возвращает встроенная функция на соответствующий запрос. Там присутствует ступенчатость. На 1/2 может и не заметите. При делителях 1/8-1/32 и высоких скоростях будет хорошо заметна.
    Она есть в любом случае. Чем больше знаменатель и скорость, тем шире ступенька. Так что выбирайте: шум или точность. Или ищите промежуточный компромисс. Для меня тишина важнее, поэтому использую 1/16.
  • 4. Поддержка расширителя I2C с термисторами как хорошая альтернатива DS18B20. В случае платы Самовара собирается отдельно, на плате Самоварыча интегрирован. Сделана удобная их настройка. Расчет характеристики термисторов. Калибровка по 2 замерам (подмышка и кипение с поправкой на атм. давление). Добавлена в настройки возможность включения чтения с термисторов и/или с DS18B20. Сначала пытается читать DS18B20, затем термистор, если термистор есть используется значение с него.
    Код чтения термисторов позаимствован отсюда [Подключение NTC-термисторов на шину 1Wire как и DS18B20]
    Почему термисторы.
    По сравнению с DS18B20 просто сказка, особенно если подключить обе ADS1117 к I2C Самоварыча. Ни разу не пожалел о переходе на них.
    Маленькие, можно вставить в любую гильзу, после калибровки точные, низкая инерционность, гораздо меньшая дискретность и высокая стабильность измерений. Очень просто примотать к любой трубке. А еще дешевые до безобразия. Я купил на али 20 шт. уже припаянных к проводам 10 см и залитых пластиком, осталось только нарастить до нужной длины.
  • 5. Управление вентилятором охлаждения корпуса по bmp180. На плате Самовара с ESP32 - в случае если не используется насос либо второй клапан воды (не задействован пин 4).
  • 6. Добавлена поддержка простого датчика наличия протока воды, пин должен быть подтянут к земле через резистор 10-20 кОм. Датчик должен подключать пин к 3,3В. 3,3 В есть на пине - вода течет, 0 - не течет. После запуска нагрева и прогрева куба до температуры "Т в кубе открытия клапана/включения насоса воды:" из Настройки/Исполнители (по умолчанию 77+2 гр.Ц) есть 20 сек на подачу воды. Потом, в случае если на пине будет 0, произойдёт аварийное отключение. 20 сек отсчитывается с момента появления 0 на пине. Т.е. кратковременный перерыв подачи воды процесс не остановит. В общем так же как с ротационным, только без расчета количества. Состояние пина в интерфейсе соответствует индикатору WS. Включается его поддержка выбором типа датчика в выпадающем списке на странице Настроек/Прочие/Контроль потока воды.
    Внимание, у данного датчика важна его ориентация в пространстве и направление протока воды. Вода должна протекать вверх, на датчике есть стрелка.

Отличия интерфейса
  • 1. Убран wi-fi manager, своя реализация инициализации WiFi. Настройки WiFi можно просто записать в файл wifi.ini и закинуть вместе с остальными файлами во флэш. Если Самоварыч его найдет, то в случае наличия там одной точки доступа попытается первым делом подключиться к ней, если их там больше он поищет их и подключится к той у которой сигнал лучше. После успешного подключения запишет её как точку по умолчанию в NVS. После этого wifi.ini можно удалить если поиск быстрой точки доступа не нужен больше.
  • 2. Веб интерфейс быстрее. Переход полностью на ajax запросы с отказом от плейсхолдеров. Использование gzip сжатия всех html страниц.
    Сокращен с 0.9 до 0.5 кБ размер регулярно отправляемой JSON строки. Частота её генерации - не чаще запросов от одного клиента, т.е. 2 сек. Если запросы перемежаются от разных клиентов передаётся сгенерированный ранее JSON. Клиент подавший запрос первым по прошествии с предыдущего запроса 3000 мс назначается ведущим, для него JSON генерируется всегда, остальным шлются актуальные копии. Если ведущий перестаёт слать запросы через 3000 мс ведущим может быть назначен первый клиент приславший запрос. Таким образом все онлайн клиенты должны получать все сообщения. Теперь задосить esp32 запросами JSON стало чуть сложнее.
    Индикация состояния основных пинов датчиков и реле на главной странице. Нужно для проверки проходжения сигнала от датчика захлёба, для более четкого понимания процесса, например видим что на кнопках, что на реле и т.п. Сделана возможность вручную переключать состояние пина WATER_PUMP_PIN и любое из 4 реле кликом на соответствующем статусе внизу в интерфейсе.
    Индикация подключенного состояния стабилизатора мощности в случае получения от него отчетов.
    Количество возможных строк программ увеличено до 29. Автоматическое сохранение программ в виде файлов в текстовом формате, а так-же восстановление их при загрузке.
    Заменил в интерфейсе алерты на менее надоедливые, сделаны исчезающими, выскакивают в центре экрана, если ошибка - красный, уведомление - зеленый.
    Переделан способ отправки сообщений пользователю. (кольцевой буфер на 10 или 4 сообщений по 300 байт (не менее 150 русских символов), отправка FIFO. Каждый запрос сервера получит 1 сообщение из очереди буфера. Т.о. если сообщений в буфере будет несколько будет выводиться по одному каждых 2 секунды, пока все не выведет. В случае переполнения буфера самые старые сообщения удаляются. Время пишется в начале сообщения при его добавлении, чтобы при выводе оно было корректным. Если есть PSRAM буфер создаётся в ней на 10 сообщений. (Для ESP32 из-за недостатка памяти буфер на 4 сообщения.)
  • 3. Практически все настройки находятся на странице Setup.htm и они аналогичны настройкам Самовара, те что у него в Samovar_ini.h и выбираются до компиляции тоже в Setup.htm и их там даже больше. Все параметры инициализированы безопасными значениями. Остаётся донастроить под своё железо.
    Поддержка отдельной настройки скорости шагов на мл насоса НБК, со своей калибровкой.
    Калибровка узла разбора и ручное управление им. Также калибровка датчика протока воды. Использование простого датчика протока воды без вращающихся деталей.
    Добавлена возможность управления регулятором мощности с помощью ШИМ, Modbus, Universal protocol. Это пока задел на будущее, если будут заинтересованные настроить будет просто. Реализовано управление стабилизатором мощности от dranek по WiFi.
    Реализован простейший фильтр на датчик атмосферного давления с настройкой в Setup.htm, 0-отключен, 99 - максимальное сглаживание. (Измерения BMP180 сильно болтает, это сказывается на температурах и соответственно на процессе, имхо надо фильтровать и 99 считаю в самый раз. По умолчанию стоит 50.)
    Распределение адресов датчиков DS18B20 по контролируемым температурам в настройках сохраняются отдельной кнопкой для исключения случайного их сбрасывания.
    В настройках есть возможность отключить запись логов и статуса в флэш память. По умолчанию логи и статус отключены, бережем флэш ESP32, да и надежности LittleFS это не добавляет. Соответственно при отключенном логировании встроенные графики работать не будут, надо - включайте. При этом если включена отправка в облако логи по MQTT отправляться всё равно будут.
    В INI.h осталось только плавное ускорение ШД. Остальное я перенёс в Setup.htm c целью во первых упростить отладку, во вторых упростить прошивку бинарниками.
    Отказ от файлов профилей, дело в том, что в моём понимании профиль это только часть общих настроек для конкретного режима, а не всё скопом. Но разделить их на эти две категории сложно. Посему есть экспорт и импорт настроек во внешний файл, не так уж и сложно использовать его с персонализированными под режимы названиями файлов. Заодно резерв настроек гарантированно будет в наличии.
  • 4. Другой edit.htm для работы с файлами в файловой системе ESP32. В отличие от оригинала умеет сжимать/разжимать файлы, редактировать сжатые файлы, открывать страницы в новой вкладке, удалять папки, показывает размеры файлов, навигация по папкам. Плюс строка состояния с полезной инфой (она поддерживается только Самоварычем и Регистратором в виде отдельного устройства на ESP32S3).
  • 5. Независимая страница преднастройки: WiFi + файлы в флэш памяти (техстраница). Откроется при попытке открытия интерфейса сама, если нужные файлы отсутствуют или файловая система не инициализирована. Можно открыть самостоятельно по кнопке Преднастройка в Настройках.
  • 6. Изменена функция и страница калибровки насоса. В режиме НБК калибруется насос НБК, 1000 мл, отдельный параметр шагов/мл в SamSetup и setup.htm. Добавлена вторая страница калибровок: Расчет характеристики термисторов. Калибровка по 2 замерам (подмышка и кипение с поправкой на атм. давление). Калибровка датчика протока воды, узла разбора.
  • 7. Убрано меню на дисплее. Вэб интерфейс обновляется пользователем самостоятельно каждый раз при обновлении путем перезаливки содержимого папки data в флэш память esp32 с помощью техстраницы.

Режимы работы.
  • 1. Убрано предварительное смачивание насадки в начале ректификации. Сделан автостарт отбора после стабилизации в начале работы. Добавлена настройка продолжительности стабилизации в ректификации.
  • 2. Использование датчика уровня (захлеба)(WHLS) для перехода к следующей программе при дистилляции. На ESP32S3 есть возможность подключить еще два датчика уровня (BLU и BLD), пока можно использовать как второй и третий для перехода к следующей программе при дистилляции. В последствии они надеюсь также будут задействованы в регуляторе уровня барды НБК. Их пины также должны быть подтянуты к земле резистором 20 кОм (используются только P-N-P), для WHLS - к земле или к 3,3В в зависимости от типа датчика. Состояние датчиков показано в интерфейсе соответствующими индикаторами.
    Порядок установки датчиков WHLS - Тара 1, BLU - Тара 2, BLD - Тара 3. От этого зависят только сообщения выводимые Самоварычем. Если один из датчиков сработает произойдёт переход на следующую строку программы и его показания до перезапуска программы учитываться больше не будут. Соответственно, на какой строке это произойдёт также не важно. Функция включается в Setup.htm.
  • 3. В режимах варки пива и сыра.
    При экспорте программы вместе с ней на диск сохраняется описание. Возможная длина описания увеличена с 250 до 1500 символов. Мне не известно как воспримет такие тексты облачное хранилище логов Самовара.
    1) Настроена работа мешалки, запрограммировано 3 вида подключения мешалок.
    1 - Простая релейная: реле 2 (вкл/выкл) и пин STEPPER2_DIR (направление).
    2 - Шаговый двигатель №2 (тот, что вместо энкодера)
    3 - Драйвер коллекторного двигателя BTS7960 (HW-039), управление тремя пинами STEPPER2_EN - вперед, STEPPER2_DIR - назад, WATER_PUMP_PIN - скорость (ШИМ 0-1024)
    В настройки исполнителей добавлены выбор типа мешалки и скорость/ШИМ двигателя.
    В интерфейс добавлена возможность изменять уровни напряжения/мощности, используемые ПИД регулятором. Но во флэш они сохраняются только из Setup.htm.
    Кроме коррекции по атмосферному давлению температур куба, пара и царги Самовара реализована отключаемая дополнительная коррекция по датчику давления в кубе для Т куба и 1/3 от него для Т царги.
Альтернатива облачному логированию.
  • В состав исходников включен обновленный регистратор для PC v.4. Он при запуске может автоматически заменить облачное хранилище логов Самовара.
    В нем добавлена в настройки config.ini маска UDP рассылки. Её нужно отредактировать под свою локальную сеть, для уменьшения охвата рассылки и надежного опознавания Самоварычем, в большинстве случаев это должно быть 192.168.0.255 или 192.168.1.255. По умолчанию стоит 255.255.255.255, потому что я не знаю местного адресного пространства. Можно было бы попробовать определять маску автоматически, но на РС часто бывает несколько подсетей, локалка/впн/блютуз и т.д., сложно определить в какой находится Самоварыч. У меня есть опыт при написании эмулятора стабилизаторов, он не всегда корректно определяет нужную маску сети. Поэтому вручную.
  • Реализовано получение текущего времени от Регистратора на PC в случае отсутствия связи с интернетом у NTC библиотеки.
  • Кроме того как альтернатива есть поддержка автономного MQTT регистратора на основе Lilygo T-Dongle S3. Если включить этот свисток, Самоварыч автоматически его обнаружит в сети и вместо сервера будет отправлять MQTT данные ему, а тот запишет на micro sd. Со своим веб интерфейсом, графиками, логи можно потом смотреть, экспортировать. Ну и часы по совместительству.
Смысл использования ESP32S3.Количество свободной памяти значительно увеличивается, вкупе с более быстрым процессором это дает ощутимый прирост скорости и стабильности. Под управление вентилятором охлаждения корпуса по bmp180 задействован отдельный пин. Два дополнительных датчика уровня и два дополнительных LUA пина в перспективе.
При покупке ESP32S3 берите вариант с размером флэш памяти 8 или 16 Мб и наличием PSRAM, а так-же с возможностью использования выносной антенны (без антенны его не включать, помрёт). Кнопки reset и boot на использованного мной модуля расположены вдоль его пинов, у него свой типоразмер, разводка моей платы под него.
Такой
395027.png
395027. Комплекс автоматизации Самоварыч. Автоматика.

Маркировка чипа должна содержать в конце нечто вроде N8R2, здесь 8 - размер флэш памяти, 2 - размер PSRAM. Преимущество наличия PSRAM будет даже при прошивке Самовара, поскольку библиотеки её используют, нужно только перед компиляцией включить её поддержку в Arduino IDE: Выбрать плату ESP32S3 Dev module, Инструменты - PSRAM - QSPI PSRAM. Увеличенный размер флэш памяти позволит записать более длинный лог. Прошивка мной будет компилироваться именно под 8 Мб. Антенны есть разные в продаже, важно чтоб продавец указал, что подходит для ESP32S3, разъем там свой.
Компиляция.Перед запуском ide скопируйте partations.csv из папки partations shemes/#mb_OTA (#mb - размер флэш памяти вашей ESP32, OTA/NOOTA - создавать две партации для обновления по WiFi (OTA) или нет).
Arduino IDE весии 2.3.8 c SDK ESP32 v. 3.3.8. плата ESP32 DEV MODULE или ESP32S3 DEV MODULE, PSRAM: QSPI PSRAM (если есть), Erase All Flash Before Sketh Upload: Enable, Partations Sheme: custom

В папке с прошивкой есть три удобных батника для Windows:
clear_arduino_cashe.bat - очистка прежней папки компиляций, сразу и без лишних вопросов, перед прошивкой этой версии скетча запустить обязательно. Чистит папку C:Users<Пользователь>AppDataLocalarduinosketches
install_libraries.bat - переименование прежней папки libraries в libraries_old_0 (1,2...) и копирование библиотек вместо неё из папки со скетчем, также запускать обязательно, библиотеки изменились.
restore_libraries.bat - восстановить прежние библиотеки из libraries_old_0 (1,2...).
Запускаем install_libraries.bat (копируем нужные библиотеки).
В файле INI.h выберите ESP32 DEVKIT или ESP32S3. Там же вбиваем свои логин и пароль WiFi (не обязательно, но удобно).
Компилируем (Ctrl + Alt + S).
Как прошить Самоварыча в первый раз за считанные минуты.Здесь описана прошивка ESP32 или ESP32S3, у них разные бинарные файлы прошивок (находятся в соответствующих подпапках папки build после компиляции в Arduino IDE, в выкладываемом архиве они уже есть).
  • 1. Если драйверы еще не установлены. Идем в руководство Самовара, подготовка ESP32 к загрузке. Скачиваем и устанавливаем там драйверы CH340/CH341 или CP210х в зависимости от платы (можно и оба на будущее). Подключаем ESP32 к USB, в диспетчере устройств убеждаемся что появился доступный СОМ порт. ESP32S3 подключать в её правый UCB-C порт, если смотреть с их стороны.
  • 2. Идем на страницу сервиса для управления прошивками https://thelastoutpostworkshop.github.io/...kit/espconnect/. Жмем сверху CONNECT, выбираем на запрос СОМ порт ESP32. Заходим в подраздел Flash Tools. Обязательно, сохраняем на всякий случай бэкап предыдущей прошивки (Самовара например, потом можно будет откатиться за пару минут) нажав DOWNLOAD FLASH BACKUP, переподключаемся (DISCONNECT и CONNECT). Жмем на поле под надписью Flash Firmware и выбираем предварительно распакованный bin файл полной прошивки ESP32 Samovaritch_v1_5_0.ino.merged.bin (merged - значит полная прошивка), убеждаемся, что Flash offset установлен 0x00. Жмем FLASH FIRMVARE, соглашаемся с предупреждением, ждем пока прошьётся.
  • 3. Инициализация файловой системы и подключение к WIFi.
    Жмём DISCONNECT , нажать на ESP32 кнопку reset, дождаться когда Самоварыч поднимет точку доступа, подключиться к ней (пароль по умолчанию 12345678), зайти в браузере на 192.168.4.1, Попадёте на техстраницу. Здесь прописываем свой SSID и пароль от WiFi. Сохраняем с перезагрузкой. Самоварыч должен подключиться к WiFi, убедиться можно в мониторе COM порта (мониторы есть разные, в сетевом сервисе для прошивки тоже свой есть). Там же узнать его IP и опять зайти на техстраницу уже из браузера компа (ну или опять из телефона, но файлы заливать удобней с PC). Там инициализировать файловую систему, нажав FormatFS. После залить все файлы из папки data, нажав Выбрать файлы (можно все сразу выбирать в папке), Открыть, Upload selected. Дождаться через несколько секунд зеленого алерта, перезагрузить ESP32 кнопкой reset.
  • Если модуль новый дайте ему после прошивки не трогая поработать минут 10. Пока займитесь роутером. В настройках роутера сразу желательно сделать привязку определенного IP к MAC адресу данной ESP32, чтоб в дальнейшем он не изменялся. Роутеров разных много, обычно это мной интуитивно делается. Не знаете как, почитайте к нему инструкцию.
  • Всё, можно вставлять в плату, и заходить в вэбинтерфейс по его IP. IP можно увидеть на дисплее, в мониторе COM порта, на вэбстранице своего роутера.

Прошивка с помощью flash_download_tool (родная утилита от Espressif).Это много раз и много где описано, потому кратко.
При запуске выберите com порт на котором ваша плата. Файл с полной прошивкой (merged) шить по адресу 0x00, адрес прошивки обновления зависит от выбранного при компиляции файла partations.csv.
При полной прошивке сначала жмём ERASE, ждем пока не закончит стирать, потом жмём START, ждём пока не закончит шить.
Первичный запуск.Если в INI.h не прописаны ваши WiFi SSID и пароль Самоварыч поднимет точку доступа. Подключаемся к ней, заходим с телефона на http://192.168.4.1/, попадаем на техстраницу, там прописываем адрес и пароль своей точки доступа, сохраняем, Самоварыч перезагрузится, смотрим в мониторе ком порта, либо на дисплее, либо в интерфейсе роутера его IP адрес, заходим на него с компа, попадаем опять на техстраницу. Если файловая система не инициализирована нужно её отформатировать, нажав Format FS. Если форматирована, то нажав на эту кнопку ничего не испортите. Заливаем файлы из папки data скетча все скопом: Жмем Выбрать файлы, находим папку data, выбираем внутри все файлы (Ctrl+A), жмем Открыть. После этого Upload Selected. После паузы в несколько секунд в центре страницы должен появиться зеленый алерт, значит загрузка успешна. Если алерт красный, значит загрузка не удалась. Можно попробовать выбирать меньшее количество файлов за раз. Как вариант можно с ноутбука к WiFi точке доступа Samovarich изначально подключиться, зайти на http://192.168.4.1/ отформатировать файловую систему и залить файлы, прописать адрес точки WiFi и пароль, нажать Save & Reboot, всё.
При открытии вэбинтерфейса следите чтоб браузер не пытался использовать https. Иначе увидите белый экран.
После загрузки файлов жмем на техстранице Exit to Main и попадаем в интерфейс Самоварыча.
Прошивка Самоварыча при обновленииФайл бинарника для обновления называется также как сам скетч с расширением ".bin", без "merged". Лежит в папке build, подпапке esp32.esp32.esp32 или esp32.esp32.esp32s3, в зависимости от чипа. Там же и появится при самостоятельной компиляции по Ctrl + Alt + S. Самый простой и удобный способ, прошить его по OTA. Обязательным условием является подключение ESP к той же WiFi сети, что и PC и особый формат файла partations.csv (наличие двух разделов app0 и app1), использованного при компиляции первичной прошивки. Это файлы в подпапках папки partation_shemes, помеченных OTA. Я компилирую бинарники с включенной возможностью OTA.
  • 1. Для такого обновления в настройках (Setup.htm, вкладка Net) надо это OTA дополнительно включить (сервис ожидания беспроводной перепрошивки), после сохранения Самоварыч перезагрузится с задействованным OTA. Рядом с бинарниками есть bat файл, в нем нужно изменить IP Самоварыча на свой и актуализировать имя бинарника, запустить. Прошивка зальётся по воздуху. После этого в настройках OTA надо отключить, чтобы не загружать лишней нагрузкой чип.
  • 2. Можно прошиться обновлением с помощью указанного в первичной прошивке вэбсервиса. Бинарник выбираем тот же что при OTA обновлении, выбираем app0 в recommended offset и прошиваем его, если вдруг обновления не произошло - app1.
При обычной компиляции бинарники тоже можно легко найти в папке вроде C:Users<Пользователь>AppDataLocalarduinosketchesFABB4BB9F13AD1B9E860CFDE528639BF Здесь FABB4BB9F13AD1B9E860CFDE528639BF папка создаваемая для каждой новой компиляции, найти последнюю легко по дате создания. Имя файла бинарника = Имя файла прошивки + .bin
Находим утилиту espota.exe по пути вроде C:Users<Пользователь>AppDataLocalArduino15packagesesp32hardwareesp323.3.3 ools, здесь 3.3.3 версия вашего SDK. Копируем её вместе с бинарником в отдельную папку.
В той же папке создаем cmd или bat файл с содержимым:
espota.exe -r -i 192.168.0.124 -p 3232 "--auth=admin" -f "Samovaritch_v1_3_2.ino.bin"
pause
Здесь 192.168.0.124 ip адрес вашей ESP32, Samovaritch_v1_3_2.ino.bin - файл с бинарником.
Запускаем, и видим прошивку по OTA, если конечно в Setup.htm она включена.
Не получилось - пробуем ещё, повторная компиляция не нужна.

При обновлении также нужно перезалить вручную файлы из папки data на случай обновления интерфейса.

Мод не проверен мной на всём заявленном спектре режимов и оборудования (это затруднительно), только на том, которым пользуюсь я и другие уже использующие. Желающие проверяют у себя, если что то не работает, я по возможности исправлю.

Будет развиваться, есть еще нереализованные планы.

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

Раз уж завёл тему буду по возможности следить в ней за порядком.

Продолжая традиции темы Самовара здесь обращение строго на Вы. С уважением ко всем участникам.
Пустой трёп, оскорбления и прочее непотребство буду удалять сразу. Шутить без оскорблений можно.

Предвосхищая вопросы типа "Почему вы сделали это так? Ведь можно было... Вот здесь всё уже есть." сразу ответ "Так уж получилось. Это хоббийная поделка. А я не всеведущ."

Данный пост будет периодически актуализироваться.

Посты со 2 по 4 хочу зарезервировать для других составляющих комплекса автоматики, Стабилизатор и т.п.

Текущие прошивка, схема для ESP32S3, корпусы, герберы:
Samovaritch_v1_5_0.7z

Schematic_Samovar-in-ESP32-S3_2026-05-09.png
Schematic_Samovar-in-ESP32-S3_2026-05-09. Комплекс автоматизации Самоварыч. Автоматика.


box_and_gerber.7z

Фото моего экземпляра на ESP32S3, он собран в почти полной конфигурации, для отладки функций, рядовому пользователю всё распаивать не нужно, только необходимое.
IMG_20251112_160149.jpg
IMG_20251112_160149. Комплекс автоматизации Самоварыч. Автоматика.
IMG_20251112_155912.jpg
IMG_20251112_155912. Комплекс автоматизации Самоварыч. Автоматика.


P.S. У Самоварыча есть группа для техподдержки в Макс, там реакция на ваши трудности со сборкой и настройкой будет быстрее. Вход пока свободный.

Версия 1.5.1 Samovaritch_v1_5_1.7z
  • 1. Исправлена обработка захлёба в НБК.
  • 2. Добавлено на выбор переключение реле 2 или узла разбора (0,1) в НБК при сработке ДЗ для слива загрязненного СС обратно в брагу или ёмкость с загрязненным СС.
  • 3. В сыроварение добавлена поддержка аналогового датчика кислотности PH-4502C на LUA пине и его калибровка. Режим называется Набор кислотности. В по достижении pH ниже уставки из Setup.htm, произойдёт переход на следующую строку программы. Данный датчик питается от 5 В. Для недопущения попадания 5 В на LUA пин необходимо на плате Самоварыча смонтировать делитель (P0 PH-4502C) - (5kOm) - (LUA pin) - (10 kOm паралельно с 10 nF) - (GND). Кабель использовать с экранирующей оплёткой, которую с одной стороны соединить с GND. Настроить модуль согласно https://cimpleo.com/...poox1o771022670, и откалибровать в настройках calibrate2.htm. Добавлен дополнительный фильтр 0-99% для сглаживания показаний.
  • 4. В сыроварение добавлен тип строки программы Слив рассола, в начале открывается клапан слива на реле №4, после паузы согласто строки он закрывается. Продолжительность посола осуществляется с помощью предшествующей строки Пауза.
  • 5. Исправлена загрузка сохраненной программы при смене режима.
dranek Куратор Минск 609 645
Отв.1  11 Мая 26, 10:34 (через 4 мин)
Стабилизатор на на ESP32-C3 Supermini и PZEM-004t с управлением по WiFi и UART.
Пока что это копия поста отсюда. Собираю всё в одно место.
Входит в комплекс Самоварыч.
stab_esp32c3_v4_2_3.zip внутри исходники, бинарники, схемы, корпус на дин рейку.
В корпусе возможно не до конца точно выставлены крепежные отверстия для плат.

Принцип регулирования.Датчик Zerocross, нужен обязательно, и именно тот что на схеме. Он выдаёт отрицательный импульс при пересечении синусоиды напряжения с нулем, при этом ширина импульса у него стабильна. Стабилизатор после включения определяет времена начала и конца импульса, усредняет 100 замеров и запоминает смещение от начала импульса до реального момента пересечения с 0. При сборке он обычно начинает работать сразу. Обычные проблемы непропай. Легко собирается на макетке.
Для быстрого регулирования используется калибровочная таблица сопоставления времени задержки открытия симистора заданию мощности, в прошивке она уже есть, однако для более быстрого выполнения задания калибровку из вэб интерфейса с подключенным ТЭН-ом желательно запустить. Длительность около 6 минут, за это время стабилизатор пройдет по диапазону задержек и запомнит мощности на 32 ступенях с пересчетом в относительные единицы.
В настройках есть поле с максимальной мощностью текущего ТЭН-а. Можно внести вручную, однако через 6 секунд после включения разгона стабилизатор его все равно перепишет и только после этого включит контактор разгонного ТЭН-а. Таким образом к нему можно подключать любой ТЭН до 10 кВт (это ограничение в прошивке, можно поменять) и он с ним после одного разгона сможет корректно работать.
После получения задания на загрузку определенной мощностью стабилизатор мгновенно выставляет соответствующую задержку с помощью таблицы и интерполяции.
Через 4 секунды (меняется в настройках вэб интерфейса) он производит первый замер мощности и с периодичностью из настроек (по умолчанию 4 сек) начинает работать регулятор. У регулятора есть два вида коррекции:
1) Адаптивная. Если отклонение от задания больше 0.2% (на ТЭН 2 кВт это 4 Вт). Её величина зависит от процентного от максимальной отклонения от задания мощности и коэффициента воздействия из настроек. В случае например внезапной просадки напряжения в сети из-за подключения другой мощной нагрузки (или наоборот или если калибровочная таблица неверна) изменение задержки открытия симистора будет пропорционально недостающей мощности, коэффициенту, и с поправкой на калибровочную таблицу, поскольку зависимость между мощностью и задержкой нелинейная из-за синусоидальности напряжения. Таким образом при правильной настройке первая же адаптивная коррекция должна вернуть мощность к заданию.
2) Плавная. Она поддерживает мощность как можно ближе к заданию изменяя с периодом регулирования задержку на 1 мкс (из 10000 мкс в полупериоде синусоиды 50 гЦ). Таким образом при плавном изменении напряжения стабилизатор будет на это медленно реагировать.
Управление1) Web интерфейс, самый удобный для ручного.
Есть возможность отключить регулятор, например если захочется выяснить какая мощность соответствует какой задержке для более точного установления пределов (по умолчанию 500-9500).
2) Две кнопки. Короткое зажатие +-10 Вт, длительное - с нарастающей скоростью, Зажатие обеих вкл/выкл разгона.
3) Внешнее управление по UART, используется модифицированный протокол Stab AVR с префиксами в ответах для асинхронности. Если захотите использовать с Самоваром префиксы надо самостоятельно убрать из прошивки. Самоварыч с ними работает по умолчанию.
4) Внешнее управление по WiFi. Стабилизатор шлет в подсети UDP пакеты с текущим режимом, заданием и мощностью, по умолчанию на порт 12345 (настраивается через web интерфейс). Самоварыч, при включенном виде стабилизатора "WiFi c UDP" слушает этот порт (тоже настраивается номер в настройках) и при получении пакетов определяет IP стабилизатора и начинает им управлять через эндпоинты. Настройки минимальные, в одной подсети может быть множество пар Самоварыч-Стабилизатор, мешать друг другу не будут. Работает у меня хорошо.
НастройкиВ ВЭБ интерфейсе настраиваются:
SSID и пароль WiFi (первый вход классический через точку доступа и пароль 12345678).
Мощность ТЭНа (Вт).
Периодичность регулирования (с):4
Коэффициент воздействия (1-100):50
Нижний предел задержки, 0-1000 (мкс):500
Верхний предел задержки, 9000-10000 (мкс):9500
Порт UDP вещания:12345
Галка "Запомнить в NVS при применении" сохраняет настройки в флэш память чтобы они восстановились при следующем включении.

Итого: собираем, настраиваем, подключаем ТЭН любой мощности, пользуемся.
Раз выполнение заданий мгновенное будет работать и с ПИД регулятором при варке пива.
Стабилизатор.png
Стабилизатор. Комплекс автоматизации Самоварыч. Автоматика.
dranek Куратор Минск 609 645
Отв.2  11 Мая 26, 10:34 (через 1 мин)
Регистраторы логов на внешних устройствах
Бывает облаком для логов пользоваться невозможно или нет желания.
Наряду с локальным регистратором на python в составе прошивки есть возможность использовать для этого отдельное устройство на ESP32S3.

№1. Регистратор на Lilygo T-Dongle S3. t_dongle_v0_4_2.zip
Функционал как у скрипта на python в составе прошивки.
Сделан WiFi менеджмент по подобию Самоварыча (INI.h + Setup.htm + wifi.ini c поиском лучшей точки), плюс из терминала можно командой подключиться.
Сделан Setup.htm с настройками.
Переписана страница с графиками, она та же что у Регистратора на python.
Для синхронизации часов интернет ему все таки нужен. Присоединял я к нему модуль RTC. Были проблемы из-за него с выводом в Serial, но отвадило меня само наличие модуля, не по фэншую смотрится.
Прикольная вещица вышла. Ну а если интернета нет - тогда скрипт в телефоне из поста выше.
Что умеет:
1.Часы. Короткое нажатие на кнопку t-dongle переворачивает часы. Цвет часов желтый - никто не подключен к брокеру, зеленый - кто-то подключен, красный - идет запись логов. Таймаут сессии на последнюю запись 3 минуты.

2.Простой MQTT брокер. Можно использовать под другие нужды.

3.У Самоварыча в настройках MQTT есть поле Порт MQTT регистратора (0-откл.):, если там будет 48899 при включенном MQTT Самоварыч начнет слушать этот порт, если найдётся регистратор, то Самоварыч определит его IP и всё что отправлялось в облако будет отправляться регистратору.
Регистратор при начале процесса (Начать отбор в ректе, и т.п.) откроет сессию (это один процесс перегонки) и начнет писать логи на microsd в папку с именем соответствующем IP Самоварыча. Сессии можно смотреть в виде графиков с помощью веб интерфейса регистратора. Свой IP он выводит на дисплей над часами.
Для того чтобы все это работало надо на microsd карточку (до 32GB) с fat32 скопировать содержимое папки data_MicroSD и вставить в t-dongle. Там сейчас есть editor.htm, chart.htm (графики) и пробник из демки index2.htm.
При входе в него через браузер откроется страница по умолчанию index.htm, которая просканирует содержимое карточки и выведет список найденных html страниц с ссылками (меню).
Таким образом можно его легко наполнять и своими страницами.

4.Если подключить t-dongle без microsd то при попытке доступа по WEB должна открыться сервисная страница аналогичная как у Самоварыча и можно будет записать что-нибудь во внутреннюю LittleFS. Плюс страницы содержащиеся там будут открываться.
Это пока наметки на будущее.

5.Длинное нажатие на кнопку t-dongle - монтирует microsd к USB и появляется подобие очень медленного кардридера, но этот режим плох из-за совместного доступа к файлам, поэтому после использования нужно переподключить t-dongle, а при включенном логи не писать и web интерфейс не использовать. Иначе возможны ошибки на microsd. Вообще esp32 довольно плохо дружит с fat, поэтому microsd карточку нужно периодически вставлять в обычный кардридер и проверять на ошибки средствами ос.

6.Интернет нужен только для синхронизации часов, графики должны рисоваться без него. Как выйти из ситуации с часами пока не решил. Хочется сделать нечто полностью автономное, хоть ты свой NTP сервер поднимай в телефоне.

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

№2 Вариант часов с погодой, при подключении Самоварыча пишет его логи и отображает текущий процесс.Стоит рядом с PC, в обычном режиме это календарь-часы с погодой, при работе Самоварыча даёт возможность видеть что происходит в автоматике. Одновременно пишет логи.
Монитор PC свободен, можно смотреть кино.

Прислали мне китайцы недорогой, но достойный дисплей без тачскрина (ESP32-S3 8M PSRAM 4M FLASH 4,3-Дюймовый ЖК-Модуль IPS 480x270 HD (A)).
Поначалу я сделал из него часы с погодой по образцу отсюда.
Пришлось поломать голову чтобы заработал micro sd reader.
Русифицировал. Потом добавил функцию регистратора. Как в t-dongle.
Потом мониторинг процесса в реальном времени.
Теперь это выглядит так в режиме часов:
IMG_20260426_153039.jpg
IMG_20260426_153039. Комплекс автоматизации Самоварыч. Автоматика.

Время синхронизируется по NTP. Погода берется с openweather, для этого надо зарегистрироваться, получить свой ключ и ввести его в настройках.
А если в сети обнаружится Самоварыч...
IMG_20260426_153201.jpg
IMG_20260426_153201. Комплекс автоматизации Самоварыч. Автоматика.

Фото сделано при использовании в качестве Самоварыча голой ESP, поэтому температуры 0 и атмосферное давление не показывает.
Данные для мониторинга берутся из JSON ответа на GET запрос.
Reg_on_JC4827W543_v.1.0.7z
Оба устройства легко запитываются от повербанка и превращаются в мобильные в пределах WiFi сети.
dranek Куратор Минск 609 645
Отв.3  11 Мая 26, 10:35 (через 2 мин)
Инструкции
Как сделать удаленный доступ к СамоварычуУ меня есть PC с Linux Mint, используемый мной для Home Assistant. Сделал себе удаленный доступ к нему, заодно и к Самоварычу.

Мой текущий вариант

1. Регистрация и установка Tailscale на клиентские устройства
- Зарегистрируйтесь на tailscale.com
- Установите клиент Tailscale на свою удаленную Windows-машину или телефон. Приложение для телефона можно найти на 4PDA, если в Google Play не получится. Tailscale создает защищенную частную сеть между вашими устройствами (телефон, ноутбук, домашний ПК).

2. Установка Tailscale на Linux Mint (где работает сервер)

Откройте терминал и выполните:
curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up

В процессе установки и в последующих настройках tailscale будет выдавать http адреса для подтверждения действий на своём сервере, вроде
To enable, visit:
https: //login.tailscale.com/f/serve?node= xxxxxxxxxx
нужно открывать их в браузере и соглашаться.
Стандартная установка Tailscale на Linux создаёт systemd-сервис `tailscaled.service`, который включён по умолчанию. Это значит, что после перезагрузки сервис запустится автоматически.
3. Установка прокси-сервера `socat`
`socat` будет принимать трафик от Tailscale и перенаправлять его на Самоварыча (`192.168.0.142:80` — это адрес Самоварыча в моей локальной сети).
sudo apt update && sudo apt install socat -y

Создайте systemd-сервис для автозапуска:
sudo nano /etc/systemd/system/lan-proxy.service

Вставьте:
[Unit]
Description=LAN to Tailscale proxy
After=network.target tailscaled.service
Wants=tailscaled.service
[Service]
Type=simple
ExecStart=/usr/bin/socat TCP-LISTEN:8888,fork,reuseaddr TCP:192.168.0.142:80
Restart=always
RestartSec=5
# Укажите ваше имя пользователя вместо "login" или удалите строку ниже
User=login

[Install]
WantedBy=multi-user.target

Сохраните: `Ctrl+O`, `Enter`, `Ctrl+X`

Запустите и включите автозапуск
sudo systemctl daemon-reload
sudo systemctl enable lan-proxy.service
sudo systemctl start lan-proxy.service

Проверьте, что прокси работает локально
curl localhost:8888

Должна вернуться страница Самоварыча (или хотя бы не ошибка соединения).

4. Настройка Tailscale для проброса порта

Выполните эти две команды по очереди:
Говорим Tailscale слушать 8443 порт и перенаправлять на 8888
sudo tailscale serve --bg 8443 8888

Включаем HTTPS (Tailscale сам выдаст бесплатный сертификат)
sudo tailscale serve --bg --https=8443

Проверьте статус прокси:
tailscale serve status

Вы должны увидеть примерно такое:
https://ha-server.<ваша-tailnet>.ts.net:8443 -> http://localhost:8888 (active)

Запомните ссылку, которая там появится — это и есть адрес для удаленного доступа к Самоварычу.
5. Проверка
1. Включите Tailscale на вашем телефоне или Windows-машине
2. Откройте браузер и перейдите по полученной ссылке (например, `https://ha-server.tail1234.ts.net:8443`)
3. При первом заходе браузер может ругаться на сертификат — нажмите "Принять риск" или "Продолжить"
Если нужно отключить прокси
sudo tailscale serve off

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

Tailscale есть под все платформы. "Шлюзом" может быть:
- **Windows PC**, который всегда включён
- **Raspberry Pi** или любой другой Linux-компьютер
- **Роутер с поддержкой Tailscale** (OpenWrt, pfSense и т.д.)

Альтернативная инструкция для Windows и linux (я проверил на windows, всё получилось)

1. Установить Tailscale на устройство-шлюз (в одной локальной сети с Самоварычем)
Linux (в терминале): curl -fsSL https://tailscale.com/install.sh | sh && sudo tailscale up
Windows: Скачать с сайта, установить, запустить tailscale up в PowerShell (админ)

2. Включить маршрутизацию локальной сети (Subnet Router)
Небходимо разрешить своему устройству-шлюзу "рекламировать" свою домашнюю сеть.
Включить IP-пересылку

На Linux в терминале
echo 'net.ipv4.ip_forward = 1' | sudo tee -a /etc/sysctl.d/99-tailscale.conf
sudo sysctl -p /etc/sysctl.d/99-tailscale.conf

Для Windows в PowerShell от имени администратора:
New-ItemProperty -Path "HKLM:SYSTEMCurrentControlSetServicesTcpipParameters" -Name IPEnableRouter -PropertyType DWord -Value 1 -Force

После этого обязательно перезагрузите Windows . Без перезагрузки изменения не вступят в силу.

Запустить Tailscale с рекламой подсети (ЗАМЕНИТЕ 192.168.0.0/24 на свою)
Для linux
sudo tailscale up --advertise-routes=192.168.0.0/24

Для Windows
tailscale up --advertise-routes=192.168.0.0/24

3. Утвердить маршруты в админ-консоли

Зайдите на login.tailscale.com
Перейдите в Machines. Найдите ваше Windows/linux-устройство
Нажмите ... → Edit route settings
Включите переключатель для 192.168.0.0/24 активен (синий/включён)

4. Подключение к Самоварычу из любой точки
Теперь можем открыть в браузере устройства подключенного к tailscale, но находящегося вне локальной сети с Самоварычем:
http://192.168.0.142:80 (IP Самоварыча в локальной сети)
Важно: IP Самоварыча должен быть статическим или зарезервирован в DHCP роутера.

Для Android: К сожалению, Android не поддерживает --advertise-routes. Поэтому он не сможет быть шлюзом для всей локальной сети. Телефон может быть только клиентом, но не маршрутизатором.
Насчет роутеров не разбирался, под рукой сейчас нет такого, но принцип подобен.
Описание работы режима НБК Самоварыча.Здесь я не претендую на непогрешимость. Однако режим есть, а инструкции не было. Теперь тоже есть.

Программа самовара в режиме НБК традиционно поделена на строки (этапы). Строк всего 4: Прогрев, Настройка, Оптимизация и Работа, количество и порядок их изменить нельзя.
В каждой строке могут быть указаны начальные мощность (далее М) (или соответствующее ей напряжение для регуляторов,управляющих напряжением) и скорость подачи браги (далее П). При переходе программы на каждую строку, где заданы ненулевые параметры, будут использованы они, если же параметры оставлены нулевыми, то будут использованы значения, достигнутые при выполнении предыдущей строки программы. Если наследовать нечего, а заданы нули, то будут использованы значения по-умолчанию:
[ МаксМ=(230*230)/(сопротивление ТЭНа) - максимальная доступная мощность ]
Прогрев - М=МаксМ, П=1л/ч;
Настройка - М=500Вт, П=1л/ч;
Оптимизация - М=0.3*МаксМ, П=10л/ч;
Работа - М=500Вт, П=1л/ч.

Настройки

На странице веб-интерфейса "Настройки" Самовара необходимо задать следующие параметры:

вкладка "НБК":
  • "Опорная Тн барды" - (далее Тн.) целевой порог температуры барды, ниже которого Самовар не должен допускать её снижения в строках Оптимизация и Работа. По-умолчанию = 98.5°C.
  • "Инерция" - (далее Ин) индивидуальная "инерция" колонны: промежуток времени за который конкретная колонна (с её конструктивными особенностями), наполненная текущим типом браги (очевидно, что, например, сахарная от мучной по реакции будет отличаться), при изменении воздействия на неё (мощности или подачи) переходит из одного стабильного состояния в другое, задержка в секундах. Определяется вручную на этапе Настройка, влияет на время пауз стабилизации этапа Оптимизация. По-умолчанию = 180 секунд, т.е. с серьёзным запасом, лучше исправить под свою реальность, не нужно будет лишнего ждать;
  • "Инерций в паузе" - количество инерций используемых в качестве паузы после захлёба.
  • "Дельта Т барды" - допустимое отклонение Тб (текущей Т барды) от Тн. По-сути, этим параметром задаётся "эластичность" регулирования, допустимый предел единичных флуктуаций. По-умолчанию = 0.5°C (далее dT);
  • "Шаг мощности: " - шаг регулирования мощности, используемый на этапе Оптимизация. Меньше шаг - точнее достигаемый результат, но и достигаться он будет, очевидно, дольше. По-умолчанию = 100 Вт. (далее dM);
  • "Шаг подачи" - величина, на которую изменяется скорость насоса НБК (в л/ч) при нажатии в интерфейсе кнопок Насос НБК ++ и --, а также шаг регулирования в автоматическом режиме, по умолчанию 0.5 л/ч;
  • "Предел насоса" - ограничение производительности насоса браги, л/ч.;
  • "Предел Т пара (макс. ‰ спирта): " - ограничение минимальной температуры пара для исключения слишком высокой спиртуозности в отборе, ведущей к потерям спирта в сливаемой барде ("недоотжиму"). По таблице зависимости от Т объемной доли спирта в паре: 60% это примерно 81°C, 50% - 84,4°C, 40% - 87.7°C (далее nbk_Tp_lim) По-умолчанию = 81;
  • "Давление захлёба: мм.рт.ст." - используется для определения наступления захлёба по датчику давления наряду с датчиком захлёба (опционально, для надёжности). При отсутствии датчика давления параметр игнорируется. Определяется вручную на этапе Настройка. По-умолчанию = 40 мм.рт.ст.
  • "Процент Mo и Po при переходе в работу" - отстройка от найденных оптимальных значений мощности и подачи для снижения вероятности захлёбов в процессе перегона;
  • "Коррекция температуры барды по давлению в бардоотводчике" - позволяет точнее регулировать температуру барды при изменениях давления в колонне;
  • "Процент Mo и Po при переходе в работу" - процент использования найденных оптимальных Мо и По при переходе к строке Работа, для отстройки от возможных повторных захлебов.
  • "Для переключения слива СС при срабатывании ДЗ использовать" - Позволяет дополнительно с помощью переключающего клапана или узла разбора пресечь возможность попадания браги в отбор из-за захлеба. Предполагается во время захлёба переключать слив СС на возврат в бочку с брагой, либо на отдельную ёмкость для сбора загрязненного СС.
вкладка "Датчики":
  • "Корректировка датчика в кубе:" - сюда можно ввести коррекции до 100°C по результатам калибровки на воде (см. ниже). Точность измерения температуры барды (а в НБК её датчик подключается вместо датчика Т куба) критически важна для полноты "отжатия" из браги спирта;


Описание строк программы

Строка "Прогрев"
Цель - разогнать парогенератор, прогреть колонну, а также наполнить бардоотводчик (он температуру жидкости призван измерять, так что жидкость в нём необходима) и предподогреватель (если есть) брагой. В поля строки Прогрев можно ввести желаемые мощность и подачу. Этап завершается по достижении температуры пара 75°C автоматическим переходом к следующей строке Настройка. В случае возникновения захлёба (если оператор задал слишком большую подачу) процесс прерывается. Возможен ручной переход на следующую строку программы.
По-умолчанию: М=МаксМ, П=1л/ч

Строка "Настройка"
На этом этапе у оператора без ограничения по времени есть возможность, самостоятельно управляя М и П, экспериментально найти начальные параметры для Оптимизации или необходимые для Работы (например, вручную достичь захлёба, зафиксировав параметры), определить Ин, Тн и dT, как минимум - дождаться стабильного состояния колонны, с которого начнётся Оптимизация.
Можно просто выставить нужные параметры и полностью провести перегон здесь, вручную. В случае возникновения захлёба П обнуляется, М снижается до половины от актуальной. Переход к следующей строке Оптимизация произойдёт только по кнопке "Следующая программа", т.е. вручную. При этом, туда передадутся в качестве исходных текущие достигнутые М и П.
По-умолчанию: М=500Вт, П=1л/ч

Строка "Оптимизация"
У пользователя есть 10 секунд чтобы нажать кнопку "Следующая программа", пропустить Оптимизацию и перейти в Работу с параметрами М и П, полученными из Настройки. После истечения 10 секунд исходные М и П берутся из строки Оптимизация программы, если же там нули, то параметры также наследуются из Настройки.
В процессе оптимизации производится поэтапное увеличение мощности, на каждой ступени мощности шагами с паузами в одну Ин производится наращивание подачи браги, которая прекращается после снижения Тб ниже Тн, при этом запоминаются текущие М и П (запоминаются как на данный момент оптимальные Мо и По) и происходит переход на следующую ступень мощности, а подача браги уменьшается на 10%. Эти два вложенных цикла повторяются до тех пор, пока не выполнится одно из условий:
- произойдёт захлёб;
- будет достигнуто максимальное количество итераций (1000);
- будет достигнута максимальная мощность ТЭНа.
- будет достигнуто ограничение производительности насоса подачи браги;
В этом случае оптимизация заканчивается и происходит переход на строку Работа с передачей туда последних достигнутых Мо и По. В случае перехода по максимуму мощности или лимита итераций переход производится без паузы, а при переходе по захлёбу П временно обнуляется, М снижается на 50% и выдерживается пауза равная Ин*2.
Возможен и ручной переход. В этом случае в Работу без паузы передадутся последние найденные Мо и По.
По-умолчанию: М=0.3*МаксМ, П=10л/ч

Строка "Работа"
На этом этапе производится поддержание стабильной работы колонны на переданных из Оптимизации Мо и По, либо, при пропуске Оптимизации, переданных из Настройки М и П, которые считаются оптимальными. Если в строке Работа вручную заданы М и/или П, то в качестве Мо и По будут использованы они. Если на момент перехода ещё не будут найдены Мо и По и в строке программы "Работа" эти параметры не указаны, будут использованы (крайне низкие) значения по-умолчанию: М=500Вт, П=1л/ч. Далее один раз за время Ин проверяются:
1) снижение Тб от Тн на величину не более dT, если это не так, то П уменьшается на 10%dP.
2) снижение Тп ниже уставки nbk_Tp_lim, в этом случае П так же снижается на 10%dP.
В случае возникновения захлёба подача браги прекращается, мощность снижается до половины текущей на время 2/3*Ин*Инерций в паузе, после чего работа возобновляется с П и М сниженными на 10% от dP и dM.
Нажатие кнопки "Следующая программа" вызовет полный останов выполнения программы.
По-умолчанию: М=500Вт, П=1л/ч

Проверки

В строках Оптимизация и Работа если Тп > 98°C происходит останов программы по признаку "Кончилась брага". В строке Настройка это условие не проверяется (см. ниже "Калибровка по воде"), само предназначение этой строки (ручная настройка) предполагает присутствие пользователя рядом с колонной.

Помимо этого, на всём протяжении выполнения программы:
1) Производится проверка на наличие охлаждения, если Ттса > 60°C или Тводы > 70°C в течении 60 сек подряд - останов по признаку "Недостаточное охлаждение"
2) Регулируется ШИМ насоса воды, либо
3) Открываетсязакрывается водяной клапан

Калибровка по воде (необязательно, но рекомендуется)

Для правильного определения Тн важно достоверное измерение Тб. Для привязки к температуре кипения воды предлагается сначала выполнить калибровку датчиков температуры по воде. Для этого, начиная с этапа Прогрев, сначала вместо браги подаём воду со скоростью 1 л/ч. Выставляем прдпологаемую рабочую мощность (это можно сделать заранее в программе для строки Настройка), начинаем добавлять подачу воды по одной ступени, фиксируем максимальные показания Тб, вводим в Настройки поправку для датчика Т куба, приближая Т барды к 100 гр.Ц.
Калибровка закончена.

Рекомендации по использованию строки Настройка

Подключаем подачу браги.
Определение Тн
П выставляем 1/2 от планируемой рабочей (т.е., около 10 л/ч для колонны 2"), М = П*200. Через 5-10 минут фиксируем установившуюся Тб - её принимаем за Тн, при которой происходит гарантированно полный отжим браги, вносим её в Настройки. Важно понимать, что при настолько жёстко определённой Тн потерь спирта практически не будет, но перегонять придётся дольше, а СС получится низкой спиртуозности, что означает потери и электроэнергии, и времени. Поэтому, на основании вашего опыта, может оказаться целесообразным впоследствии снижать эту температуру на 0.5-2 градуса.
Важное замечание: в случае включения параметра "Коррекция температуры барды по давлению в бардоотводчике" необходимо полученную выше
Тн скорректировать давлением по формуле
Тн = Тн - 0.00001913*nbk_D*nbk_D - 0.03694*nbk_D,
где nbk_D - давление в бардоотводчике на момент замера Тн.

Инерция
Повышаем/понижаем на 1 ступень М или П, фиксируя время ввода изменения. Наблюдая за Тб, фиксируем момент, когда установится новые стабильные показания. Разница во времени между воздействием и новым стабильным состоянием и даст искомую инерцию Ин. Повторяем несколько раз, усредняя полученные Ин. Если воздействие не вызывает фиксируемых изменений, значит, мы попали в диапазон "эластичности" колонны с этой конкретной брагой, стоит попробовать увеличить воздействие (например, добавить/убрать не 0.5 подачи, а 1 л/ч).
На 2" СПН колонне с фруктовой брагой практические инерции составили (для примера): +100Вт = 92с, +1л/ч = 64с, выбрана была, естественно, максимальная = 92.

По мере накопления опыта рекомендации будут уточняться.
На тестовом прогоне при задании Тн=98.5°C из сахарной браги 15% был получен СС крепостью 60+-1% без ощутимых потерь АС.

Конструктивные решения

Датчик температуры барды Тб
Как показала практика, для измерения температуры барды в случае использования относительно недорогих имеющихся в продаже бардоотводчиков, устанавливамых на куб-парогенератор и имеющих внутренний паропровод, лучше использовать датчик температуры на внешнем сливе барды, т.е. вне бардоотводчика. Правильно будет использовать утепленный тройник из нержавейки (допустима латунь, но её со временем разъест кислота) в один из выводов которого установлен датчик без заужения проходного сечения для барды. Если же использовать штатную встроенную в стакан бардоотводчика гильзу, то происходит измерение в большей степени температуры проходящего мимо пара, чем нужной нам барды поскольку металл гильзы разогревается паропроводом.
Кроме того, необходимо предотвратить прорыв пара в слив барды при повышении давления в колонне до захлёбного. Для этого нужно либо удлинить паропровод до 25 см от слива, либо установить перед или после него обратный клапан во избежание попадания барды в куб. Петлю перелива с ТСА необходимо поднять на 24 см от слива. Бардоотводчики с поплавковым регулятором уровня лишены этого недостатка и в них не требуется удлинять паропровод или ставить обратный клапан. Неплохой эффект также даёт использование барды для предподогрева браги и/или воды для парогенератора - тогда сопротивление течению барды в теплообменниках создаёт дополнительную компенсацию повышенного рабочего давления в бардоотводчике. Но тут всё индивидуально.
Для конструкций где пар подаётся выше слива барды необходимо также снизить его влияние установкой пароотражателя, достаточного расстояния от пароввода до датчика (5-10см) и обеспечив затопление датчика бардой при повышении давления в колонне до рабочего. Кроме того теплоизолировать его от металла царги. Петлю перелива следует так-же поднять на 24 см выше места установки датчика температуры.
Если используется предподогрев подпиточной воды либо браги бардой необходимо так же минимизировать его влияние на датчик температуры барды. Это опять отсекатель препятствующий её циркуляции либо связь с подогревателем через трубку.

Датчик температуры пара Тп
Необходимо установить в паровой зоне в верхней доступной точке и также теплоизолировать его от металла царги. Следует отметить что на показания данного датчика сильно влияет наличие предподогрева браги паром.

Датчик захлёба (ДЗ)
Для правильной работы строк Оптимизация и Работа необходимо безусловное его срабатывание при появлении пены в диоптре. Для этого желательно перевести его на питание от 5 в с использованием логического преобразователя уровней для согласования и обеспечить надежный контакт по всем трем проводам.

Датчик давления
Является опциональным, если есть - по нему дополнительно будет контролироваться наступление захлёба и прерываться Прогрев, Настройка, Оптимизация и Работа по превышению его уставки (см. "Давление захлёба" в Настройках). Однако, нужно понимать, что надёжность работы ДД варьируется из-за специфических особенностей его правильного подключения, дрейфа показаний и низких порогов срабатывания, поэтому он рассматривается как дополнительный канал, основной - ДЗ.
Также можно включить "Коррекция температуры барды по давлению в бардоотводчике", Т кипения спирта повышается с повышением давления, а в оптимальном предзахлёбном режиме давление в бардоотводчике будет повышенным.

lekt Студент Екатеринбург 22 19
Отв.4  11 Мая 26, 23:17
Ну, с почином!
Надежного устройства, интересных идей и их реализации.
Ну и про Самовар не забывать, заглядывать.
У Вас с Алексеем отличная синергия.
logvinov Магистр Москва 282 56
Отв.5  12 Мая 26, 10:49
Всем привет, поздравляю с открытием.
Сыроварня работает отлично. Отработано 2 программы варки сыра
Это сыр Качотта,Сулугуни(косичка).
Систему засыпки ингредиентов ,программы выложу позже. Возможно у кого-нибудь будет новые идеи и мысли.
dranek Куратор Минск 609 645
Отв.6  13 Мая 26, 10:02
Посетила тут с утра одна мысль насчет режима НБК.
По опыту одна из довольно неприятных её особенностей это возможный бурный захлёб и заброс барды в отбор. Сейчас мы боремся с ним кратковременным снижением мощности и подачи браги с последующим возвратом к режиму с пониженными этими параметрами. Однако если в подачу браги вдруг пойдёт осадок или забьётся насадка/тарелки процесс будет повторяться и заброс вполне вероятен.
У многих знаю есть клапаны от автоматик типа старт/стоп. Что если один такой клапан нормально открытый поставить на входе в холодильник? И закрывать с помощью реле мешалки при условии сработавшего датчика захлеба.
Я так думаю давление в колонне вырастет и захлёб ликвидируется, колонну в случае использования для слива барды петли перелива "пронесёт". Что в принципе может и насадку почистить. И паузу можно сделать короче.
Вот не будет ли узким местом проходное сечение клапана?
И как его наличие в целом скажется на процессе?
Есть у кого соображения?
Знаю что лучше поставить эксперимент самому, однако у меня пока перепроизводство.
gxtkjdjl Профессор Архангельск 9.5K 2.4K
Отв.7  13 Мая 26, 10:33 (через 31 мин)
Вот не будет ли узким местом проходное сечение клапана?dranek, 13 Мая 26, 10:02
смотря какое то сечение, на отбор 1-2.5мм ставят, а на подачу браги 10мм, как помню (Игорь 223 такой ставил, видос, у его, есть).
а насадочная НБК больше для сахарных или белых браг подходит.

Добавлено через 41мин.:

dranek, что то похожее Смирнов (изобретатель) рассказывал на А.В у них НБК насадочная и её нужно промывать при работе, как помню, тоже отбор закрывали, а воду подавали в колонну вместо браги. как то так, найду видос прикреплю, может что нужное там найдёшь.

Добавлено через 2мин.:

вот
dranek Куратор Минск 609 645
Отв.8  13 Мая 26, 13:22
Посмотрел кино, в целом видео познавательно, в большей части, в малой я бы сказал вредно.
Раз оно тут появилось для вхождения в тему НБК полезно, но прошу, не воспринимайте за абсолют.

ИМХО.
У изобретателя проблемы с физикой.
Графики упрощены.
У такого узла подачи есть критичные недостатки.
Предподогрев браги конденсацией спиртов или бардой даёт экономию энергии, а не точно такой же её нагрев и испарение как при дистилляции, только снижение теплопотерь (в основном за счет повышенной скорости) может дать экономию и рекуперация.
Своя насадка... РПН чем хуже?
Органолептика, тут да, но тему не раскрыл.
Укреплять то, что всё равно невероятно хвостатое и головастое, зачем? Была б там пастеризация хоть на выходе.

Это не то, что я имел ввиду. Надо будет поискать что Игорь223 делал.
muxtair Бакалавр Мелеуз 97 18
Отв.9  14 Мая 26, 09:43
По опыту одна из довольно неприятных её особенностей это возможный бурный захлёб и заброс барды в отборdranek, 13 Мая 26, 10:02
Ни разу такого не было . когда была петля на бардоотводчике , при захлебе в колонне повышалось давление и сразу через петлю выкидывало все что в колонне в каналью . Сейчас стоит бардоотводчмк от Шульмана , поплавковый , с ним нормально давление держится , с петлей танцы с бубном . если на автоматике стоит датчик давления и настроен на превышение давления , насос отключится и плевка не барды а браги в отбор не будет . Брага сахарная .
dranek Куратор Минск 609 645
Отв.10  14 Мая 26, 09:56 (через 13 мин)
muxtair, поплавковый от Шульмана дорого и на дроблёнке можно ставить крест.
при захлебе в колонне повышалось давление и сразу через петлю выкидывало все что в колонне в канальюmuxtair, 14 Мая 26, 09:43
Недостаточная высота петли полагаю, отсюда пролив. Это в принципе то же о чем я писал, только мысль была сделать его контролируемым.
Я тоже от петли уйти хочу, но в сторону перильстатики.
gxtkjdjl Профессор Архангельск 9.5K 2.4K
Отв.11  14 Мая 26, 10:09 (через 14 мин)
Ни разу такого не былоmuxtair, 14 Мая 26, 09:43
muxtair, это не значит что такого не бывает, у меня было.
Я тоже от петли уйти хочу, но в сторону перильстатикиdranek, 14 Мая 26, 09:56
тоже такие мысли посещают. какой нибудь накопитель под колонной, наполнился, насос включился, откачал, выключился. (как на вакуумной СиВ)
muxtair Бакалавр Мелеуз 97 18
Отв.12  14 Мая 26, 10:16 (через 8 мин)
только мысль была сделать его контролируемымdranek, 14 Мая 26, 09:56
а разве он сейчас ни чем не контролируется ?
Я тоже от петли уйти хочу, но в сторону перильстатики.dranek, 14 Мая 26, 09:56
многие делают слив барды в куб , затем в каналью , без бардоотводчика . НБК на барде . Но для старта все равно нужна вода .
gxtkjdjl Профессор Архангельск 9.5K 2.4K
Отв.13  14 Мая 26, 10:30 (через 14 мин)
НБК на бардеmuxtair, 14 Мая 26, 10:16
спорное решение, (хотя бы тем что густые браги не прокатят, барда пригорит, к тэну) но если кому то зашло по чему бы и нет. было описание на форуме (давно уже) кто то из коллег так делал. барда стекала в куб, на кране куба теплообменник, там брага подогревалась, но хитрость в том что он был поднят и уровень барды в кубе, всегда выше тэнов был (возможно и сейчас так, не найти, уже того сообщения)
dranek Куратор Минск 609 645
Отв.14  14 Мая 26, 10:33 (через 4 мин)
а разве он сейчас ни чем не контролируется ?muxtair, 14 Мая 26, 10:16
Контролируется, но мгновенно не ликвидируется. Захлёб очень быстро развивается, а датчик срабатывает с задержкой. Автоматика глушит нагрев и подачу. Ждет слива барды и возобновляет работу. Клапан по пару мог бы четко предотвращать выход браги в отбор. Пролив за счет роста давления был бы интенсивней. Пауза была бы короче. Тарелки от крупы чистились.
Вот клапан походу большого сечения нужен. Иначе будет задирать давление в колонне в рабочем режиме и будут проливы. А на слив из холодильника смысла его ставить не вижу.
gxtkjdjl, Тоже барду в парогене считаю злом. Подгорит на тэне и полетят с паром ароматы в колонну. Половина смысла НБК потеряется.
muxtair Бакалавр Мелеуз 97 18
Отв.15  14 Мая 26, 10:48 (через 15 мин)
НБК на барде для сахара я так понял . извиняюсь что не написал .
gxtkjdjl Профессор Архангельск 9.5K 2.4K
Отв.16  14 Мая 26, 11:10 (через 23 мин)
muxtair, не только и белые так перегонят, или красные фильтуют. есть тут коллега deen (не путать с dee) он куку перегоняет на такой нбк (правда сейчас завод какой то собрал и не слышно давно) канал deen moonshainer на трубе [Профиль пользователя deen]
сообщение удалено
gxtkjdjl Профессор Архангельск 9.5K 2.4K
Отв.17  14 Мая 26, 14:29
на белой или сахарной можно насадочную нбк. вроде как и по высоте выигрыш. на л.б большинство на таких.
nic2015 Магистр Феодосия 232 58
Отв.18  15 Мая 26, 09:38
Добрый день всем!
Никто платой не поделится?
Приобрел бы с удовольствием
SedoY Профессор Новосибирск 5.3K 2.2K
Отв.19  15 Мая 26, 10:30 (через 53 мин)
Есть у кого соображения?
Что если один такой клапан нормально открытый поставить на входе в холодильник?
Вот не будет ли узким местом проходное сечение клапана?dranek, 13 Мая 26, 10:02
переключать на выходе из доохладителя - клапаном такой испорченный продукт в брагу, на время ликвидации захлёба, пока автоматика не обнаружит что все стало нормально
а не на входе в холодильник мудрить клапан запирая холодильник