Программа задаётся на вкладке «Программа» главной страницы режима
Сыроварение. Каждая строка - один этап, этапы выполняются по порядку. В программе может быть до 20 этапов.
Вкладка «Программа» режима Сыроварение
 Номер этапа
Порядковый номер строки. Этапы выполняются сверху вниз.
|
 Тип этапа
Нагрев, Выдержка, Охлаждение, Перемешивание, Дозирование, Ожидание pH, Ручное действие, Слив или Lua. При смене типа поля строки сбрасываются на значения по умолчанию.
|
 Значение 1
Целевая температура (для дозирования - объём в мл). Подпись над полем меняется по типу этапа.
|
 Значение 2
Тайм-аут этапа в минутах; для выдержки - время выдержки, для перемешивания - длительность.
|
 Значение 3
Для нагрева - скорость в °C/мин, для выдержки - общий тайм-аут, для ожидания pH - целевой pH, для дозирования - скорость или компонент. Для ручного действия на этом месте список действий.
|
 Мешалка
Устройство мешалки: NONE, RELAY (реле №2) или I2C (плата I2CStepper).
|
 RPM
Обороты мешалки I2C. Для RELAY и NONE - 0. Направление вращения выбирается в соседнем списке.
|
 Работа, с
Время работы мешалки в секундах. 0 - мешалка включена весь этап.
|
 Пауза, с
Пауза между включениями. 0 при заданной работе - мешалка включится один раз.
|
 Датчик / Способ
Датчик температуры, по которому работает этап (Куб, Вода, Царга, Пар, ТСА). Для дозирования - способ: «Вручную» или «Локальный шаговый двигатель».
|
 Добавить строку
Вставляет новый этап после текущей строки.
|
 Удалить строку
Удаляет строку. Последнюю оставшуюся строку удалить нельзя.
|
 Сохранить программу
Проверяет все строки и отправляет программу в Самовар. Рядом - «Экспорт» в файл и «Импорт» из файла.
|
При смене типа этапа поля строки сбрасываются на значения по умолчанию для этого типа, а ненужные поля скрываются. Значения проверяются при сохранении: температура - от 0 до 150°C, время - от 0 до 1440 мин. При ошибке выводится сообщение «Проверьте поля этапа N», на Самовар такая программа не отправляется.
Сохранить программу - отправить программу в Самовар. Пока идёт варка, на вкладке «Процесс» используется последняя сохранённая программа, а не несохранённые правки.
Экспорт - скачать программу в файл cheese-program.txt.
Импорт - загрузить программу из текстового файла. Файл проверяется так же, как строки редактора; при ошибке текущая программа не меняется.
Формат строки
В файле и в памяти Самовара строка хранится в виде шести полей через точку с запятой:
Тип;Значение1;Значение2;Значение3;Мешалка;Значение4
Смысл полей «Значение1-4» зависит от типа этапа (см. таблицу ниже). Поле «Мешалка» - четыре числа через ^: устройство^обороты^работа, с^пауза, с. Например:
H;63;90;1;1^0^0^0;0 - нагрев до 63°C со скоростью 1°C/мин, тайм-аут 90 мин, мешалка через реле работает весь этап, датчик «Куб»;
M;0;1;0;1^0^30^0;0 - перемешивание: мешалка через реле включается один раз на 30 с;
W;0;15;1;0^0^0^0;0 - ручное действие «Внести закваску», ждать подтверждения не дольше 15 мин;
N;32;120;6.4;0^0^0^0;0 - держать 32°C, пока pH не опустится до 6,4, не дольше 120 мин.
Типы этапов
Во всех этапах, кроме «Перемешивание», поле «Тайм-аут, мин» - предельное время этапа: если этап не завершился за это время, сыроварение останавливается. «Датчик» - датчик температуры, по которому работает этап: «Куб», «Вода», «Царга», «Пар» или «ТСА». Температура считается достигнутой, когда показание датчика держится в пределах ±0,3°C от цели 10 секунд подряд.
H - Нагрев. Поля: «Цель, °C», «Тайм-аут, мин», «Скорость, °C/мин», «Датчик». Уставка нагрева поднимается от начальной температуры с заданной скоростью, пока не дойдёт до цели. Этап завершается, когда датчик достиг цели.
P - Выдержка. Поля: «Цель, °C», «Выдержка, мин», «Общий тайм-аут, мин», «Датчик». Самовар держит цель. Время выдержки засчитывается полностью, пока температура отличается от цели не больше чем на допуск. Допуск - поле «Вылет за уставку» датчика этапа на вкладке
Настройки - Температура: от 0,3°C до 3°C, значение меньше 0,3°C (в том числе 0) считается как 0,3°C. При недогреве больше допуска время засчитывается частично - тем меньше, чем больше недогрев; при недогреве 3°C и больше, а также при перегреве выше допуска время не засчитывается совсем: приходит сообщение «Выдержка приостановлена: температура вне полосы», после возврата - «Выдержка продолжена». Этап завершается, когда накоплено заданное время. Общий тайм-аут отсчитывается от начала этапа и не может быть меньше выдержки; при его истечении - остановка «Тайм-аут выдержки».
C - Охлаждение. Поля: «Цель, °C», «Тайм-аут, мин», «Датчик». Нагрев выключен; пока температура выше цели, подаётся охлаждающая вода (выше цели более чем на 1°C - полный поток, ближе - минимальный). Этап завершается, когда датчик достиг цели; охлаждение при этом выключается. Требуется схема охлаждения «насос» или «два клапана».
M - Перемешивание. Поле: «Длительность, мин». Мешалка обязательна. Этап завершается по истечении длительности, а если у мешалки задано время работы без паузы - сразу после того, как она отработала это время один раз. Тайм-аута у этапа нет.
D - Дозирование. Поля: «Объём, мл», «Тайм-аут, мин», «Способ» и третье поле, зависящее от способа.
«Вручную» - третье поле «Компонент» (тот же список, что у ручного действия). Самовар ждёт, пока сыровар внесёт компонент и нажмёт «Подтвердить».
«Локальный шаговый двигатель» - третье поле «Скорость, мл/мин». Объём подаётся штатным перистальтическим насосом Самовара; объём и скорость переводятся в шаги по калибровке насоса, поэтому насос должен быть откалиброван (
Насос). Этап завершается, когда насос отработал заданный объём. Варианты дозаторов описаны на странице
Дозаторы добавок.
N - Ожидание pH. Поля: «Температура, °C», «Тайм-аут, мин», «Целевой pH», «Датчик». Самовар держит температуру и следит за датчиком pH. Этап завершается, когда pH не выше цели 30 секунд подряд. Если показание pH недостоверно (нет данных или вне 0-14) дольше 10 секунд, сыроварение останавливается с сообщением «pH недостоверен 10 секунд». Для этапа нужна сохранённая
калибровка pH.
W - Ручное действие. Поля: «Тайм-аут, мин», «Действие». Самовар ничего не делает (кроме мешалки, если она задана) и ждёт нажатия «Подтвердить». Список действий: «Внести закваску», «Внести фермент», «Внести добавку», «Разрезать сгусток», «Переложить в формы», «Начать или изменить прессование», «Перевернуть сыр», «Другое действие». Название действия служит подсказкой в программе, в строке состояния Самовар показывает только «Ручное действие».
S - Слив. Поле: «Тайм-аут, мин». Открывается клапан слива (реле №4) и Самовар ждёт нажатия «Подтвердить». Клапан закрывается при переходе к следующему этапу. Мешалка на этом этапе не задаётся.
L - Lua. Поле: «Тайм-аут, сек». Запускается сценарий из файла, выбранного в окне «Lua-этап» (любой файл .lua из памяти Самовара; там же задаются тайм-аут и параметры, которые сценарий получит в таблице arg, см.
Lua). Чтобы перейти к следующему этапу, сценарий должен вызвать
setNextProgram(). Если сценарий закончился без этого вызова или с ошибкой, сыроварение останавливается. Мешалка на этом этапе не задаётся.
Мешалка
Мешалка задаётся в каждой строке отдельно и работает только во время этого этапа. Пять полей:
Мешалка - устройство: «NONE» - без мешалки; «RELAY» - реле №2 (включено/выключено); «I2C» - шаговый двигатель на плате
I2CStepper. Для «I2C» плата должна быть подключена, иначе программа не запустится.
RPM - обороты для «I2C», целое число больше нуля. Для «RELAY» и «NONE» должно быть 0.
Направление - «Прямое» или «Обратное», только для «I2C». В файле обратное направление записывается отрицательными оборотами (например 2^-120^0^0).
Работа, с и Пауза, с - расписание. Работа 0 - мешалка включена весь этап. Работа больше 0, пауза 0 - мешалка включается один раз на заданное время и выключается. Работа и пауза больше 0 - мешалка чередует работу и паузу до конца этапа. Пауза без работы не допускается.
При переходе к следующему этапу мешалка останавливается и включается заново по настройкам новой строки.