Перейти к содержимому
Главная страница » Статьи » Описание работы с Самоваром в режиме ректификации

Описание работы с Самоваром в режиме ректификации

Эта страница описывает полный цикл работы «Самовара» в режиме «Ректификация»: от включения и разгона колонны до отбора голов, тела, хвостов и автоматического завершения программы. Описание соответствует прошивке 7.00.

Общая логика режима

В режиме ректификации «Самовар» разделяет спирт-сырец на три фракции: головы, тело и хвосты. Контроллер нагревает куб через SSR-реле, стабилизирует колонну по PID-регулятору и по заданной программе переключает ёмкости для отбора и управляет перистальтическим насосом. Температура контролируется пятью датчиками DS18B20: пар, царга, вода охлаждения, куб, ТСА. Весь процесс визуализируется в веб-интерфейсе, мобильных приложениях Android и iOS и на сайте samovar-tool.ru.

Решение о запуске отбора принимает оператор. После включения режима и подачи питания «Самовар» переходит в состояние «Выключено», ждёт команду и управляет только чтением датчиков. Чтобы запустить процесс, оператор нажимает «Включить питание» — контроллер включает нагрев и начинает разгон колонны.

Состояние «Выключено» и запуск

При выборе режима «Ректификация» или после перезагрузки контроллер остаётся в состоянии «Выключено»: показания датчиков отображаются, но нагрев и насосы выключены. Из этого состояния возможны два перехода:

  • «Включить питание» — контроллер включает нагрев в режиме разгона колонны.
  • «Калибровка насоса» — отдельный сервисный режим для измерения производительности перистальтического насоса.

Разгон колонны

После нажатия «Включить питание» контроллер переходит в состояние «Разгон» (статус 50, SAMOVAR_STATUS_RECT_ACCEL). В этом состоянии регулятор мощности работает в режиме разгона. Если в сборке включён UART-регулятор мощности (флаг SAMOVAR_USE_POWER в Samovar_ini.h), реле № 4 может включить разгонный ТЭН — он отключится, когда температура в кубе приблизится к порогу открытия клапана воды. Реле для разгонного ТЭНа должно быть с паспортной мощностью минимум на 20 % выше мощности ТЭНа. Если используется модуль-сборка из четырёх реле, разгонный ТЭН можно подключать через реле № 4 — оно управляет контактором или другим реле с нужной мощностью.

Когда температура в кубе достигает 77 °C (константа OPEN_VALVE_TANK_TEMP в Samovar_ini.h), «Самовар» открывает клапан воды охлаждения (реле № 3, RELE_CHANNEL3), отправляет уведомление в мобильное приложение и на сайт samovar-tool.ru и показывает сообщение о подаче воды охлаждения на основном экране.

Стабилизация колонны

Когда температура пара превышает 39 °C (константа CHANGE_POWER_MODE_STEAM_TEMP в Samovar_ini.h), контроллер отключает режим разгона и переходит в режим стабилизации (статус 51, SAMOVAR_STATUS_RECT_STABILIZING). Уведомление об этом отправляется в приложение и на сайт.

В режиме стабилизации «Самовар» ждёт, когда колебания температуры пара станут меньше 0,1 °C в течение 6 минут (отсчёт ведётся по числу опросов датчика, см. alarm.h:463). После этого контроллер переходит в состояние «Стабилизация завершена» (статус 52, SAMOVAR_STATUS_RECT_STABLE), звучит короткий сигнал и приходит уведомление. Если в настройках включён параметр COLUMN_WETTING и wetting_autostart, отбор голов может стартовать автоматически — для этого в скетче задаётся опция автостарта голов после стабилизации.

Состояние «Стабилизация завершена» — точка, в которой оператор принимает решение о запуске программы отбора. Чтобы начать отбор, нужно нажать «Начать отбор» в веб-интерфейсе или в мобильном приложении. После нажатия насос начнёт работать на скорости, заданной в первой строке программы.

Программа отбора: структура строки

Программа отбора — это последовательность строк в текстовом поле на странице «Программа». Каждая строка описывает одну фазу отбора: головы, тело, хвосты, паузу, вспомогательные действия. Формат строки — 5 полей через «;»:

  1. Тип строки: H (головы), B (тело), C (хвосты), T (пауза), P (пауза-программа), L (Lua-этап).
  2. Объём отбора в миллилитрах (для строк типа H/B/C) либо длительность в секундах (для пауз).
  3. Скорость отбора в литрах в час (от 0,001 до 5 л/ч).
  4. Номер ёмкости для отбора (целое число от 1 до 4).
  5. Температура отбора в °C. Для голов и хвостов используется автоматически определённая температура тела, для тела — зафиксированная в начале первой строки тела (см. ниже). Значение 0 — определяется автоматически.
  6. Напряжение на ТЭНе, В (опционально).

Пример строки голов: H;200;0.05;1;0;0 — отбор 200 мл голов со скоростью 0,05 л/ч в ёмкость № 1. Пример строки тела: B;1500;1.5;2;0;0 — отбор 1500 мл тела со скоростью 1,5 л/ч в ёмкость № 2.

Отбор голов

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

Во время работы любой строки оператор может в любой момент скорректировать скорость отбора — для этого нужно задать новое значение в литрах в час на вкладке «Дополнительно» и нажать «Установить». Минимальная скорость — 0,001 л/ч, максимальная — 5 л/ч.

Отбор тела и фиксация температуры

Когда начинается первая строка тела, контроллер запоминает текущие температуры пара и царги. Эти температуры становятся опорными для всего отбора тела. Их можно скорректировать в любой момент работы строки тела, нажав «Задать Т отбора тела» на вкладке «Дополнительно». Контроллер перезапишет запомненные температуры текущими показаниями датчиков.

Если включена опция «Использовать корректировку давления» (UsePreccureCorrect в Samovar.h), контроллер пересчитывает запомненные температуры отбора тела при изменении атмосферного давления (по датчику BMP180/BMP280/BME280, если он установлен): при понижении давления — понижает, при повышении — повышает, в соответствии с зависимостью температуры кипения спирта от давления.

Строки тела работают, пока не наберётся заданный в программе объём. Если в процессе отбора температуры пара и царги выходят за указанные в настройках пределы, контроллер ставит отбор на паузу. Если включена опция «Использовать корректировку скорости насоса» (useautospeed в Samovar.h), одновременно с паузой контроллер снижает скорость отбора на заданный в настройках процент.

Детектор примесей

В 7.00 встроен детектор примесей, который следит за стабильностью температуры пара и флегмы во время отбора тела. Если колебания температуры превышают порог, заданный для текущей ступени отбора, детектор останавливает отбор до восстановления стабильности. Это защищает от проскока хвостовых фракций в тело. Параметры детектора — в файле impurity_detector.h.

Отбор хвостов

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

После завершения программы включается режим «работа на себя»: насос остановлен, нагрев продолжается. По умолчанию режим длится 30 минут (константа PROGRAM_DONE_AUTO_POWEROFF_MIN в Samovar_ini.h). За это время оператор может принять решение — выключить колонну или продолжить отбор с другой программой (например, для отбора жирных кислот, если сырьём было зерно). Если по истечении 30 минут оператор не вмешался, контроллер автоматически отключает нагрев. Значение 0 в настройке отключает удержание — питание снимается сразу после завершения программы.

Управление во время отбора

Во время выполнения программы оператор может в любой момент:

  • Нажать «Начать отбор» повторно — контроллер перейдёт к следующей строке программы.
  • Нажать «Поставить на паузу» — насос остановится, нагрев продолжится.
  • Нажать «Продолжить отбор» — программа продолжит выполнение с того же места.
  • Изменить скорость отбора на вкладке «Дополнительно» — новая скорость применяется сразу.
  • Скорректировать температуру отбора тела на вкладке «Дополнительно» — запомненные температуры будут перезаписаны текущими показаниями датчиков.

Аварийное отключение

Контроллер отключает нагрев и переводит процесс в режим «Авария» при превышении температуры в кубе выше аварийного порога (по умолчанию 100 °C), при потере связи с датчиком куба или пара, а также при срабатывании детектора проскока примесей. Сообщение об аварии отправляется в мобильное приложение и на сайт samovar-tool.ru, отображается на основном экране и в логе. После устранения причины оператор запускает процесс заново.

Где смотреть параметры

  • Температура открытия клапана воды — OPEN_VALVE_TANK_TEMP в Samovar_ini.h.
  • Температура перехода из разгона в рабочий режим — CHANGE_POWER_MODE_STEAM_TEMP в Samovar_ini.h.
  • Удержание «работа на себя» после завершения программы — PROGRAM_DONE_AUTO_POWEROFF_MIN в Samovar_ini.h.
  • Включение UART-регулятора мощности и разгонного ТЭНа — флаг SAMOVAR_USE_POWER в Samovar_ini.h.
  • Пины клапана воды и разгонного ТЭНа — RELE_CHANNEL3 и RELE_CHANNEL4 в Samovar_pin.h.
  • Статусы ректификации — SAMOVAR_STATUS_RECT_* в Samovar.h.
  • Парсинг программы — rect_program_parse_spec() в program_io.h.
  • Детектор примесей — impurity_detector.h.
  • Стабилизация колонны — alarm.h, обработчик SAMOVAR_STATUS_RECT_STABILIZING.

Добавить комментарий