Статті бази ▾ ← Усі бази знань
Автоматика oCBot
Концепція та філософія11 Ласкаво просимо до екосистеми oCBotІдеологія oCBotСфери призначення та режими роботиПериферійні пристроїСвобода периферіїБазові скрипти автоматизаціїВіртуальні панелі оператораСкладні сценарії та логіка автоматизаціїМультиконтролерністьЗагальний огляд автоматики oCBotАрхітектура та опис
Підтримувані контролери16 Контролер Kincony KC868-A6Підключення живлення й USB на KC868-A6Реле й аналогові виходи KC868-A6Сухі контакти й аналогові входи KC868-A6Шини й роз'єми KC868-A6: RS485, I2C, 1-Wire і рештаЩо зайнято на ESP32 у KC868-A6: карта GPIOЯк зібрати щиток на KC868-A6Контролер Kincony KC868-A16Підключення живлення й USB на KC868-A16Силові виходи KC868-A16: MOSFET замість релеСухі контакти й аналогові входи KC868-A16Шини й мережа KC868-A16: Ethernet, RS485, I2C, 1-WireЩо зайнято на ESP32 у KC868-A16: карта GPIOЯк зібрати щиток на KC868-A16Контролер WT32-ETH01Універсальний ESP32 DevKit (Custom)
Каталог периферійних пристроїв9 Датчики температуриДатчики тискуДатчики рівня рідиниДатчики потоку (витратоміри)Виконавчі механізми (Клапани, Насоси, ТЕНи)Датчики середовища (Вологість, Світло, Тиск)Датчики електричні та вагиОргани керування (Кнопки, Енкодери)Електродвигуни та вентилятори
Складання та Перший запуск (DIY)17 Збирання контролера oCBot своїми рукамиПервинне прошивання та запуск контролераШвидке підключення Wi-Fi через BluetoothПідключення ТЕНів та регуляторів потужностіВибір та підключення електромагнітних клапанівКілька плат PCA9685 на одній шиніПін OE — апаратне зняття всіх виходівПлата PCA9685 зблизька — що на ній є і навіщоПлата розширення PCA9685 — 16 каналів ШІМСервопривід і плата розширення — чому це не працюєТвердотілки на платі розширенняПідключення LCD та OLED дисплеїв по шині I2CДвигун і частотний перетворювач: силове підключенняПромисловий протокол RS485 (Modbus RTU)Частотник Ennera FCE по Modbus: налаштування і діагностикаКалібрування ваг на тензодатчиках (HX711)Усунення типових несправностей
Робота з веб-інтерфейсом17 Головна сторінка (Home)Діаграма процесу (Flow)Сценарії автоматизаціїРедактор скриптівПульти оператораДизайнер пультів HMI DesignerПериферіяПлати та шиниЗагальні налаштуванняОбладнанняТочки монтажуНалаштування графіківОновлення прошивкиНалаштування Wi-FiЛогиПорталПро програму
Написання сценаріїв (C++ Скрипти)10 Огляд скриптівМій перший сценарій: Крок за крокомШІМ-відбір: Як налаштувати клапан правильноНалаштування ПІД-регулятора для стабілізаціїАвтоматизація температурних пауз при затиранні солодуСкрипт ББКРегулювання тискуРозрахунок ABV за температурою париСкрипт «Розрахунок ABV»ABV у сценаріях
Безпека, Хмара та Інтеграція5 Система безпеки oCBot: Захист від аварійСтворення хмарного кабінету UA DistilleryЯк опублікувати звіт про перегонкуШеринг кастомних пультів оператора (HMI)Інтеграція з Home Assistant та MQTT
База знаньАвтоматика oCBotНаписання сценаріїв (C++ Скрипти)

Скрипт «Розрахунок ABV»

Це скрипт-вимірювач. Він нічим не керує — не вмикає ТЕНи, не рухає насоси, не відкриває клапани. Його єдина робота: щотакту брати покази трьох давачів, рахувати міцність пари й публікувати число — на картку, у графіки, у журнал і для сценаріїв, які на нього спираються.

Фізика й формули розібрані окремо: Розрахунок ABV за температурою пари. Ця стаття — про налаштування й використання.

У бібліотеці скриптів він називається «Розрахунок ABV» (внутрішньо sk_abv_1, sk_abv_2 — два незалежні екземпляри, скажімо на дві колони одного апарата).


Навіщо він потрібен#

Порада

Скрипт не має жодного виходу, тож запускати його безпечно за будь-яких обставин: у найгіршому разі він покаже неправильне число. Багато хто тримає його ввімкненим постійно — як приладову панель.


Що треба підключити#

Три давачі. Усі три — обов'язкові.

Роль у скрипті Тип периферії Що це фізично Одиниці
temp_vapor Температура Давач температури пари у верхній частині колони °C
pressure_column Тиск Давач тиску в колоні (надлишковий, понад атмосферний) кПа
barometer Атмосферний тиск Барометр (може бути спільний на весь контролер) кПа

Прив'язка робиться як у будь-якому скрипті — у налаштуваннях скрипта, полями вибору периферії.

Важливо

Давач температури має стояти в потоці пари, а не в конденсаті й не притиснутим до холодної стінки. Найпоширеніша причина «неправильного ABV» — не алгоритм, а місце встановлення давача.

Якщо барометр не прив'язано, скрипт бере 101,3 кПа як запасне значення. Працювати буде, але похибка «поїде» за погодою та висотою над рівнем моря — на реальному апараті барометр варто поставити.


Параметри#

Параметр Значення Типово Що робить
Алгоритм обчислення Legacy (спрощений) / VLE (розумний) VLE Яка модель рахує міцність. VLE точніший; Legacy лишено для сумісності зі старими журналами.
Цільова міцність (ABV %) 0…100 40,0 Довідкова уставка.
Нотатка

«Цільова міцність» у цьому скрипті — довідкова: сам скрипт на неї не реагує, бо він нічим не керує. Регулювання веде сценарій, і в сценарію є власний параметр цілі (у ББК — «бажаний вміст спирту»). Тримайте обидва узгодженими, щоб покази й керування не розповідали різні історії.


Що скрипт віддає назовні#

Показник abv-<N>-strength (наприклад abv-1-strength) — оновлюється щотакту й доступний скрізь, де є телеметрія:

Етап скрипта — рядок вигляду ABV: 42.3%. Його видно на картці; звідти ж інтерфейс бере значення для гейджа.


Як налаштувати — покроково#

  1. Переконайтесь, що всі три давачі створені в розділі Периферія й дають адекватні покази (температура — правдоподібна, тиск колони біля нуля на холодному апараті, барометр ≈ 95…102 кПа).
  2. У розділі Скрипти відкрийте налаштування «Розрахунок ABV 1».
  3. Прив'яжіть периферію до трьох ролей: температура пари, тиск колони, барометр.
  4. Лишіть алгоритм VLE, якщо немає причини для іншого.
  5. Запустіть скрипт. На картці має з'явитися число.
  6. Перевірка на холодному апараті: без нагріву давач пари показує кімнатну температуру, і ABV має бути близько 100 % — це нормально й нічого не означає (модель відповідає на питання «яка пара кипіла б за цієї температури й тиску», а за 22 °C кипіти може хіба що майже чистий спирт під вакуумом). Осмислені покази з'являються, коли колона вийшла на режим.
  7. Перевірка на роботі: зніміть пробу з парника ареометром і звірте з показом. Розбіжність у кілька відсотків — привід перевірити встановлення давача температури й точність тиску, а не «підкрутити алгоритм».

Типові несправності#

Симптом Найімовірніша причина
Показує 100 % і не змінюється Температура пари надто низька для поточного тиску — колона не вийшла на режим, або давач не в парі.
Показує 0 % Температура пари вища за точку кипіння води за цього тиску — перегрів, або давач бачить перегріту пару чи стінку.
Число смикається на кілька відсотків Апарат у перехідному режимі (щойно змінили потужність чи відбір) — рівноваги ще немає. Чекайте стабілізації.
Стабільно занижене/завищене на 3–5 % Похибка тиску: барометр не прив'язано або датчик колони не відкалібровано на нуль.
«ABV не оновлюється» Скрипт зупинено. Зупинений скрипт не виконується взагалі.

Далі#