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

Твердотілка, драйвер помпи й датчики: підключення до колодки DA/IO

Написано для прошивки 0.2.93 (коміт 9648be9) · порталу 0.0.176Можливо, застаріло: поточна прошивка 0.2.127, поточний портал 0.0.182

Колодка між входами й аналоговими входами на KC868-A6 — сім клем, зліва направо як на платі: GND, DA-2, DA-1, GND, IO-2, IO-1, 3V. На ній сходяться три вузли, без яких колона не поїде: твердотілка ТЕНа, драйвер помпи браги й датчики температури. Що на цих клемах і чому — розібрано в статтях про виходи і шини; тут — лише куди який дріт, одна схема на всю колодку й те, що спалить драйвер, якщо підключити «як на Arduino».

Схема підключення до колодки DA/IO плати KC868-A6: твердотілка ТЕНа на DA-1 і GND з фазою, ТЕНом і нейтраллю на виході; драйвер IBT-2 на DA-2 через дільник 10 кОм і 5.6 кОм, LPWM і GND на GND, R_EN, L_EN і VCC на 3V, живлення помпи 12 В на B+ і B−, помпа на M+ і M−; датчик DS18B20 трьома жилами екранованого кабелю на IO-1, GND і 3V, екран на GND лише з боку плати


Що на колодці#

Клема Що це Хто на ній у цій схемі
GND (крайня) земля плати LPWM і GND драйвера, дільник
DA-2 плавний вихід 2: 0 або 10 В, ШІМ 4 кГц драйвер помпи, RPWM через дільник
DA-1 плавний вихід 1: те саме вхід твердотілки +
GND (середня) та сама земля плати твердотілки, GND датчиків, екран кабелю
IO-2 шина 1-Wire 0, GPIO 33 вільна — під другий кабель датчиків
IO-1 шина 1-Wire 1, GPIO 32 DQ датчиків
3V 3.3 В з плати, до 200 мА на все разом живлення датчиків, VCC, R_EN, L_EN драйвера

Обидві клеми GND — одна й та сама точка на платі; на схемі вони поділені лише щоб дроти не перехрещувались. Мінус блока живлення, з якого живиться плата, — теж вона.


Твердотілка на DA-1#

Чотири дроти. Два тонкі — керування, два силові — коло ТЕНа.

Звідки Куди
DA-1 вхід твердотілки + (клема 3)
GND вхід твердотілки (клема 4)
фаза L через автомат і контактор силова клема 1
силова клема 2 ТЕН
ТЕН, друга клема нейтраль N

Твердотілка — з входом 3–32 В DC і виходом на змінний струм (маркування DA, не AA і не DD). На вході в неї світлодіод оптопари, 10 В з DA-1 йому досить, і жодного резистора між платою й твердотілкою не треба.

Периферію на DA-1 у Периферії створюйте з типом «Нагрівач». Тоді прошивка не подає на клему меандр 4 кГц (твердотілка його не усереднює й гріє на повну на будь-якому відсотку), а тримає повні 10 В частку десятисекундного періоду: 30 % — 3 с увімкнено, 7 с ні. Чому так — у статті про виходи.

Твердотілка від 2 кВт — на радіаторі, ТЕН понад 2 кВт — не через контакт реле. Аварійна твердотілка на реле 5 стоїть у силовому колі послідовно з цією — як її завести, у статті про щиток.

Перевірка: задати нагрівачу 30 % — лампа паралельно ТЕНу горить 3 с і гасне на 7 с. Горить рівно — периферія створена не як «Нагрівач» або прошивка старіша за 0.2.7.


Драйвер помпи IBT-2 на DA-2#

Помпу браги сценарій ББК веде пропорційно, 0…100 %, тому вона сидить не на реле, а на драйвері з ШІМ-входом. IBT-2 на BTS7960 — типовий вибір: тягне 12-вольтову помпу з великим запасом, а вхід у нього логічний. Це міст на два напрямки, але помпа крутить в один — тож із двох каналів драйвера задіяний лише правий, R, а лівий притиснутий до нуля.

Чому не напряму#

У характеристиках IBT-2 — «вхід 3.3–5 В», і з піна ESP32 він справді заводиться напряму. Але на клемі DA-2 не 3.3 В: там вихід операційного підсилювача LM258 з коефіцієнтом 3.13, тобто 0 або 10.3 В (аркуш DAC схеми, 1 + 10 кОм / 4.7 кОм). Вхід IBT-2 — буфер 74HC244, який живиться від клеми VCC драйвера і за даташитом терпить на вході не більше за VCC + 0.5 В. Подати 10 В на вхід, розрахований на 3.3 або 5 — це струм через захисний діод буфера. На стенді може працювати місяцями, у щитку одного дня перестане.

Тому між DA-2 і RPWM стоїть дільник з двох резисторів, а логіка драйвера живиться від клеми 3V тієї ж колодки:

Резистор Де Номінал
послідовний у дроті від DA-2 до RPWM 10 кОм
на землю від RPWM до GND 5.6 кОм

Що з цього виходить: при 10.3 В на DA-2 на RPWM буде 3.7 В — нижче межі 3.8 В для буфера від 3.3 В. Якщо на платі драйвера на вході вже є підтяжка до землі 10 кОм (у різних партіях IBT-2 буває по-різному), рівень просяде до 2.7 В — усе одно вище порога «одиниці» 2.3 В для 74HC244 при 3.3 В живлення. Струм з DA-2 — 0.7 мА, для операційного підсилювача це ніщо. Резистори 0.25 Вт, запаяти в дріт і сховати в термоусадку — окрема плата тут не потрібна.

Обережно

Перетворювач рівнів 3.3↔5 В (плата на BSS138, з якою підключають 5-вольтові модулі до ESP32) сюди не годиться. Обидва його боки розраховані на 3.3 і 5 В, а DA-2 віддає 10 В — це за паспортом і для перетворювача, і для драйвера за ним. Дільник дешевший і правильний.

Дроти#

Гребінка на драйвері — 2×4, два ряди по чотири. Верхній ряд — правий канал: VCC, R_IS, R_EN, RPWM; нижній — лівий: GND, L_IS, L_EN, LPWM. Тобто живлення й земля — на одному краю гребінки, ШІМ-входи — на протилежному, а пари R/L стоять одна над одною.

Вивід IBT-2 Куди Навіщо
RPWM DA-2 через дільник 10 кОм / 5.6 кОм швидкість помпи
LPWM GND плати другий напрямок не використовується — притиснути до нуля
R_EN, L_EN 3V плати обидва дозволи мають бути «одиницею», інакше вихід мертвий — навіть якщо працює лише правий канал
R_IS, L_IS нікуди вимір струму, прошивка не читає
VCC 3V плати живлення буфера 74HC244; він бере мікроампери, бюджет клеми 3V не чіпає
GND GND плати спільна земля логіки
B+, B− +12 В і мінус блока живлення помпи силове живлення, 5.5–27 В
M+, M− помпа крутить не в той бік — поміняти ці два дроти, а не переносити ШІМ на LPWM

Живлення помпи краще брати з окремого блока 12 В, не з того, що живить плату: пуск помпи просаджує напругу, і контролер від цього перезавантажується. Але мінус того блока має бути з'єднаний із GND плати — інакше рівень на RPWM драйверу нема від чого відлічувати.

Периферія на DA-2 у Периферії — тип «Насос» (так помпа зветься в прошивці), не «Нагрівач»: на насосі прошивка лишає швидкий ШІМ 4 кГц (RB_OUT_FAST_PWM у rb_environment.cpp), а десятисекундні перемикання вмикає лише для нагрівача.

Перевірка: задати помпі 100 % і виміряти мультиметром між RPWM і GND — 3.5–3.7 В. На 50 % мультиметр покаже щось між 1 і 3 В і буде правий: там меандр, середнє він читає абияк. Помпа при цьому має крутитися вдвічі повільніше, ніж на 100 %, — це і є перевірка.


Датчики DS18B20 екранованим кабелем на IO-1#

Датчик — три жили. Кабель — екранований, три жили плюс екран, як сигнальний 3×0.22 або 4×0.22 (четверта лишається в запас).

Жила зонда Клема плати Примітка
живлення (у більшості зондів червона) 3V 3.3 В датчику досить
дані DQ (жовта або біла) IO-1
земля (чорна) GND
екран кабелю GND лише з боку плати з боку датчика екран обрізати й ізолювати

Кольори жил у зондів різні — звіряйте з описом продавця, а не з цією таблицею. Переплутані живлення й земля датчик не спалять, але він гріється й не відповідає.

Кілька датчиків на один кабель — паралельно, ті самі три жили: куб, низ колони, верх колони на одному кабелі до IO-1; дефлегматор і холодильник — другим кабелем до IO-2. Обидві шини працюють одночасно. Підтяжка 4.7 кОм і послідовні 100 Ом уже на платі (аркуш Sensors схеми) — модулі й адаптери з власним резистором сюди не ставити, друга підтяжка паралельно псує шину.

Екран з'єднаний із землею з обох кінців — це не екран, а ще один провідник, по якому тече струм від різниці потенціалів між кубом і щитком; датчики від цього починають брехати на градуси. Тому лише з боку плати.

Який роз'єм якою шиною видно в прошивці — IO-2 це шина 0, IO-1 — шина 1: стаття про шини.


Перевірка перед подачею живлення#

  1. На DA-1 і DA-2 — тільки входи приймачів: + твердотілки й RPWM через дільник. Нічого, що бере струм.
  2. LPWM — на GND, R_EN і L_EN — на 3V. Не навпаки.
  3. Дільник у дроті DA-2 є, 10 кОм у розрив і 5.6 кОм на землю. Без нього драйвер не підключати.
  4. Мінус блока живлення помпи — на GND плати.
  5. Екран кабелю датчиків — на GND з боку плати, з боку датчиків ізольований.
  6. Периферія DA-1 — «Нагрівач», DA-2 — «Насос».

Суміжні статті#