о вкладке "дополнительно" отсутствует кнопка запуска луа скриптаChernik_, 07 Мая 23, 22:41
Кнопки появятся, когда интерфейс будет загружен через Самовар. Они формируются динамически на основании файлов btn_button(N).lua, которые лежат в памяти Самовара. Кнопок может быть до 5 штук, в каждой может быть прописан свой скрипт, который разово выполнится при нажатии на кнопку.
Это удобно автоматизировать через луа скриптChernik_, 07 Мая 23, 22:41
После добавления в Самовар программы дистилляции необходимость использовать Lua скрипт отпала. Все можно настроить в программе.
Например, при достижении Т в кубе равной 85 градусов можно сбросить напряжение/мощность до нужной. Для того, чтобы можно было вернуть сброшенную мощность обратно после начала кипения, сделал спиртуозность до начала кипения равной 100 (это проще всего), в программе можно задать реакцию на снижение спиртуозности в кубе ниже 80 (например) и поднять мощность до нужного значения.
Программа в этом случае будет выглядеть так (можно вбить на вкладке Программа, развернув под плюсом Программа дистилляции - в поле ввода):
T;85;0;150
A;80;0;220
Первая строка - при достижении Т равной 85 снижаем напряжение до 150 Вольт
Вторая строка - при снижении спиртуозности ниже 80 поднимаем напряжение до 220 Вольт. Так как до начала кипения спиртуозность равна 100, то это сработает.
имеет смысл в программе дистилляции оставить поле мощности в каждой строке?Chernik_, 07 Мая 23, 22:41
Она там есть. Логика работы напряжения/мощности такая же, как в режиме ректификации. Если 0 - текущая не меняется, если абсолютное значение меньше 40 вольт (400 ватт), то это значение прибавляется (или вычитается, если оно меньше 0) к текущему, иначе устанавливается заданное.
Несколько слов про строки программ с типами относительного изменения содержания спирта в кубе и в отборе.
Это отношение текущего значения спиртуозности к тому, которое было при начале строки программы. То есть, если есть необходимость отсечь отбор при падении спиртуозности в кубе на 50% с начала кипения, можно указать такую строку программы:
S;0.5;1;0
При этом произойдет переход на следующую строку программы и переключение на 1 емкость. Обратите внимание, что логика работы перехода по емкостям отличается от логики перехода в режиме ректификация. Там переход на емкость происходит при переходе на строку программы, в которой указана эта емкость, в режиме дистилляции переход происходит при наступлении события, которое контролируется текущей строкой программы. Как в данном примере - спиртуозность упала на 50%, изменилась емкость, произошел переход к следующей строке программы.
Ну и чтобы повторить логику Lua-скрипта, в котором был еще переход на следующую емкость при достижении 1/4 от содержания спирта в кубе, нужно добавить еще одну строчку в программу:
S;0.5;1;0
Итоговая программа, повторяющая логику Lua-скрипта, будет выглядеть так:
T;85;0;150
A;80;0;220
S;0.5;1;0
S;0.5;2;0
Так же есть еще одно отличие от режима ректификации: там завершение строк программы означает завершение ректификации, в режиме дистилляции процесс будет продолжаться, пока не будет остановлен оператором или же не сработает остановка по граничным условиям - температура в кубе не превысит заданную в настройках температуру окончания дистилляции или в кубе не останется спирта (это определяется неизменностью Т куба в течении 16 минут).
Пока писал комментарий, нашел одну логическую ошибку в скетче, перевыложил 6.3.