Stirrer, pump, temperature.
Description of the operation of the stirrer and
wort transfer pump (circulation pump)
Attention.
Samovar 7.00: In Beer («Пиво») mode the stirrer and the wort transfer pump can run either from the outputs of Samovar itself or through the expander I2CStepper. If a stepper stirrer or a stepper pump is set in the program line but the required board is absent, heating will not start: when the program starts, a message with the reason is shown ("I2C stirrer unavailable in line N" («I2C-мешалка недоступна в строке N»), "I2C pump unavailable in line N" («I2C-насос недоступен в строке N») or "I2C pump relay unavailable in line N" («I2C-реле насоса недоступно в строке N»)).
The following connection options are possible:
Stirrer on a relay - Samovar relay No. 2 switches on (rpm is 0), no expander is needed;
Stirrer on a stepper motor - an I2CStepper board with an odd address. The rpm and rotation direction are set; relay No. 2 switches on as well;
Pump on a stepper motor - an I2CStepper board with an even address. The flow rate in ml/h is set;
Pump without a stepper motor (flow rate 0) - the Samovar cooling pump output switches on; if an I2CStepper is connected, relay 1 of the board switches on with it. The cooling pump output exists only if the firmware is built with the PWM pump (USE_WATER_PUMP, enabled by default); without it the pump works only from relay 1 of the I2CStepper.
Relay 1 for the pump is taken from the stirrer board if it has a relay, otherwise from the pump board.
Clicking the stirrer values input field opens an additional selection menu.
"Edit device mode" («Редактирование режима устройства») window (click the "Stirrer" («Мешалка») field of a program line)
 Device («Устройство»)
Off, Stirrer, Pump, Stirrer and pump.
|
 Stirrer speed («Скорость мешалки»)
0 - the stirrer on Samovar relay No. 2, otherwise the speed of the I2CStepper stepper stirrer in revolutions per minute; minus - change the direction after each pause.
|
 Run, sec («Работа, сек»)
Run time, maximum 65535 sec.
|
 Pause, sec («Пауза, сек»)
Pause time; 0 - work without pauses.
|
 OK («Ок»)
Write the values into the program line field.
|
Device («Устройство») - you can choose what exactly works while this program line is running: the stirrer, the pump, or both devices. Or switch both off ("Off" («Выключено»)).
Stirrer: 0 — ESP32 relay 2, otherwise I2C, rpm («Мешалка: 0 — реле 2 ESP32, иначе I2C, об/мин») - 0 - the stirrer on relay No. 2, otherwise the speed of the stepper stirrer. A positive value is forward rotation; with a negative one the stirrer changes its rotation direction after each pause. The field is shown only if a stepper stirrer board is connected; without it the field is replaced by "Stirrer: ESP32 relay 2" («Мешалка: реле 2 ESP32»).
Pump («Насос») - 0 - a pump without a stepper motor (cooling pump output and/or relay 1), greater than 0 - the stepper pump flow rate in ml/h. The field is shown only if a stepper pump board is connected; without it the text is "Pump: I2CStepper relay 1" («Насос: реле 1 I2CStepper») (if a stepper stirrer board is connected) or "Pump: ESP32 output" («Насос: выход ESP32»).
Run, sec («Работа, сек») - run time. (Attention! Starting with version 6.22 the time is set in seconds)
Pause, sec («Пауза, сек») - pause time. The maximum value of each field is 65535 sec (18 h 12 min).
When "OK" («Ок») is pressed, the values are checked: if a non-zero value is set for a device that is not selected, the message "Specify 0 for a disabled device." («Для выключенного устройства укажите 0.») is shown.
The order of stirrer and pump operation can also be set manually in the text field of the mashing program (see Mashing program). The field is set with five numbers; the ( ^ ) symbol is the value separator:
First - the device type: 0 - off, 1 - stirrer, 2 - pump, 3 - stirrer and pump at the same time;
Second - the stirrer rpm (from -32768 to 32767): 0 - the stirrer on Samovar relay No. 2, positive - forward rotation, negative - change the rotation direction after each pause. If the stirrer is not selected - 0;
Third - the stepper pump flow rate in ml/h (from 0 to 65535): 0 - a pump without a stepper motor (the Samovar cooling pump output and/or I2CStepper relay 1). If the pump is not selected - 0;
Fourth - run time in seconds (Attention! Starting with version 6.22 the time is set in seconds);
Fifth - idle (pause) time in seconds.
Examples:
1^-30^0^2^3 - only the stepper stirrer, 30 rpm: 2 seconds of rotation, 3 seconds of pause, the rotation direction changes after the pause.
1^0^0^20^40 - only the stirrer on relay No. 2: 20 seconds of work, 40 seconds of pause.
3^30^500^60^0 - the stepper stirrer at 30 rpm and the stepper pump at 500 ml/h without pauses.
If the stirrer/pump must work continuously, set any run time value (maximum 65535) and pause = 0, or leave the pause field empty.
A manual pause (the "Pause" («Пауза») button on the main window) stops the stirrer and the pump; after "Continue" («Продолжить») the schedule continues from where it was interrupted.
There is a validity check on how the "Stirrer" («Мешалка») field is formed. Samovar 7.00: allowed values are either 0^0^0^0^0 (devices off) or type 1, 2 or 3 with a non-zero run time; the rpm is set only for a selected stirrer, the flow rate only for a selected pump. A record of four numbers (the format of earlier versions) is not accepted. An incorrectly formed line is not saved: when "Set program" («Установить программу») is pressed, "Program error." («Ошибка программы.») is shown with the line number and the reason.
Samovar outputs while the stirrer and pump work
Stirrer.
When the stirrer works, relay No. 2 switches on, connected to PIN D15 of the ESP32 (pin 19 for the LILYGO board, pin 42 for ESP32-S3), - both for a stirrer on a relay and together with the I2CStepper stepper stirrer.
Wort transfer pump
If the firmware is built with the PWM pump (USE_WATER_PUMP), then when the pump runs per the program line, the cooling pump output switches on - both for a pump without a stepper motor and together with the I2CStepper stepper pump. A pump with a 12 volt DC motor can be connected to it instead of the cooling pump.
There is an important peculiarity: the run time and the pause time apply to both the stirrer and the wort transfer pump. That is, if the stirrer is paused, the pump does not work either.
To connect a pump and a stirrer powered by something other than 12 volts (for example 220 volts), use intermediate devices such as solid-state relays.
Explanation of the stirrer and wort transfer pump algorithms:
If the device type "Pump" («Насос») is set in the program, the stirrer will not switch on.
If only the pump is used, it will work taking into account the pauses specified in the program line.
If only the stirrer is selected, the pump will not switch on.
Heater algorithm in "Boost" («Разгон») mode.
The settings can be changed in the fileSamovar_ini.h.
To reach the temperature set in the mashing program, Samovar applies to the main heater the voltage from the field "Regulator voltage/power in heating and boiling mode" («Напр./мощность регулятора в режиме нагрева и кипения») (
Settings - Beer («Настройки - Пиво»)). If a
boost heating element is used, it switches on too.
A few degrees before the target temperature the boost heating element switches off. This value is set in the line
#define ACCELERATION_HEATER_DELTA 4 (
4 is the value in degrees C° )
But the main heating element keeps working at this voltage until the set temperature minus the value in the line
#define HEAT_DELTA 1 (
1 is the value in degrees C° )
Closer to the setpoint, heating is controlled by the PID controller, and the voltage is limited by the field "Regulator voltage/power in temperature holding mode" («Напр./мощность регулятора в режиме поддержания темп.»).
This algorithm keeps the set temperature from being "overshot".
Additional settings can be made in the settings - the tab
"Beer" («Пиво»).
Note. Control of the boost heating element by ACCELERATION_HEATER_DELTA works in a build with a UART regulator. In a relay build the boost heating element switches on together with the main one while the difference from the setpoint is greater than HEAT_DELTA, and switches off on transition to PID.
Samovar 7.00: the start of boiling is detected not by reaching BOILING_TEMP but automatically - when the boiler temperature stops rising (not lower than MIN_BOILING_TEMP 98°). At that moment the message "Boiling mode started" («Начался режим кипячения») is shown and the time of the "Boiling" («Кипячение») line starts counting. If boiling is not detected within 120 minutes, the brew is aborted with the message "Failed to detect the start of boiling within 120 minutes…" («Не удалось зафиксировать начало кипения за 120 минут…»).
The value of BOILING_TEMP is used as follows:
-
before boiling is detected, the "Boiling" line heats the boiler with the setpoint BOILING_TEMP + 5° by the algorithm described above (the "heating and boiling mode" voltage, the boost heating element while the difference is greater than ACCELERATION_HEATER_DELTA);
-
after boiling is detected, the heater gets the voltage from the field "Regulator voltage/power in heating and boiling mode" («Напр./мощность регулятора в режиме нагрева и кипения»), and the boost heating element is on only if the "Use boost heating element during boiling" («Использовать разгонный тэн при кипении») checkbox is set (Settings - Beer («Настройки - Пиво»));
-
BOILING_TEMP + 5° is the emergency threshold for the boiler sensor on any program line: "Emergency shutdown! Maximum wort temperature exceeded" («Аварийное отключение! Превышена максимальная температура сусла»).
Cooling («Охлаждение»)
Program line: "Cooling" («Охлаждение»). Time is not taken into account. Samovar 7.00: the cooling water supply valve opens and the cooling pump switches on at full power. When the temperature set in the "Cooling" line is reached, the water supply valve closes, the pump switches off too, and Samovar moves on to the next line.
Since the wort transfer pump is connected in place of the cooling pump, a cooling pump must be connected in its place for the duration of the "Cooling" line - otherwise power will be applied to the pump output for the whole cooling time.
If the boiler has not cooled to the set temperature within 120 minutes, the brew is aborted with the message "Failed to cool the boiler to the target temperature within 120 minutes…" («Не удалось охладить куб до целевой температуры за 120 минут…»). Cooling can be skipped with the "Next" («Далее») button - press it again within 10 seconds.