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

Свобода периферії та динамічне призначення портів

Як підключити та налаштувати периферію без перепрошивки?

Одна з найпотужніших і найунікальніших переваг oCBot — ви самі вирішуєте, куди підключити кожен давач, клапан чи кнопку. Вам не потрібно перепрошивати контролер, щоб змінити призначення порту. Усе робиться через веб-інтерфейс за кілька кліків.

Ця стаття — про те, як працює свобода периферії та як динамічне призначення портів змінює підхід до автоматизації.


Про що ця стаття#

Це — практичний посібник, який показує, як гнучкість oCBot полегшує життя користувача.

ТУТ НЕ БУДЕ#

ТУТ БУДЕ#

Важливо

Ключова думка цього тексту: У більшості систем ви купуєте контролер із зашитими портами: давач 1 → GPIO 2, клапан 2 → GPIO 4. Якщо ви хочете змінити це — вам потрібно перепрограмувати контролер. У oCBot все інакше: ви просто призначаєте функцію будь-якому порту через веб-інтерфейс. Без коду, без перепрошивки, без паяльника.


Концепція вільного мапінгу (Software Mapping)#

Що це таке?

У більшості комерційних контролерів плата розведена так, що давач 1 має бути підключений строго до гнізда А, а клапан 2 — строго до гнізда Б. Це називається фіксоване призначення (hardware mapping).

У oCBot це працює інакше:


Як це виглядає в інтерфейсі#

1. Додавання нового пристрою#

  1. Перейдіть у розділ "Периферія" у веб-інтерфейсі.
  2. Натисніть "Додати периферію".
  3. Оберіть Тип пристрою зі списку (термодатчик, датчик витрати, насос, клапан тощо).
  4. Введіть Назву пристрою (наприклад, "Температура куба").
  5. Оберіть Колір для візуальної ідентифікації.
  6. Вкажіть фізичний пін або адресу на шині, до якої підключено пристрій.
  7. Якщо пристрій може сигналізувати аварію — позначте відповідний прапорець.
  8. Натисніть "Зберегти".

2. Зміна призначення існуючого пристрою#

  1. У списку периферії знайдіть потрібний пристрій.
  2. Натисніть кнопку редагування (олівець).
  3. Змініть пін, адресу або будь-які інші параметри.
  4. Натисніть "Зберегти".
Порада

Зміна призначення відбувається миттєво. Контролер не перезавантажується, сценарії не зупиняються. Це особливо важливо, якщо ви правите налаштування під час робочого процесу.


Гаряча заміна давачів (Hot Swap)#

Якщо під час процесу згорів або пошкодився давач температури, oCBot дозволяє замінити його без зупинки та перепрошивки.

Алгоритм дій:

  1. Від'єднайте пошкоджений давач від шини OneWire.
  2. Підключіть новий давач на ту саму шину.
  3. Зайдіть у веб-інтерфейс → розділ "Периферія".
  4. Натисніть "Автосканування" — система знайде новий давач за його унікальною адресою.
  5. Призначте йому ту саму логічну роль, яку мав старий давач.
  6. Система продовжує роботу з новим давачем.
Важливо

Вам не потрібно перепрошивати ESP32. Усе робиться через інтерфейс. Ви навіть не потребуєте доступу до коду.


Налаштування полярності (Active High / Active Low)#

Іноді реле-модулі працюють "навпаки": одні спрацьовують від високого рівня (5V), інші — від низького (0V). У більшості систем це означає перепаювання або зміну коду.

У oCBot це вирішується одним прапорцем:

Ви просто обираєте потрібний варіант у налаштуваннях пристрою. Якщо ваше реле спрацьовує від 0V — ставите прапорець «Інверсія» в налаштуваннях. Без перепаювання, без зміни коду.


Призначення кількох функцій одному пристрою#

Деякі пристрої можуть виконувати кілька функцій одночасно. Наприклад:

У oCBot ви можете призначити кілька логічних ролей одному фізичному пристрою, якщо це підтримується його функціоналом.


Що дає свобода мапінгу на практиці?#

Ситуація Як це працює в oCBot
Ви випадково підключили давач не в той порт Просто змінюєте призначення в інтерфейсі — без перепаювання та перезаливання прошивки.
Вам потрібно додати ще один давач Підключаєте його до будь-якого вільного порту та призначаєте роль.
У вас зламався давач Підключаєте новий, запускаєте автосканування, призначаєте ту саму роль — процес триває.
Реле спрацьовує навпаки Ставите прапорець "Інверсія" в налаштуваннях — без перепаювання.
Ви вирішили перенести клапан на інший порт Змінюєте пін у налаштуваннях — і все працює.

Практичний приклад: зміна призначення піна#

Припустимо, ви підключили клапан відбору до GPIO 12, але виявилося, що цей пін вам потрібен для іншого пристрою. Ось як ви переносите клапан на GPIO 14:

Крок 1: Зайдіть у веб-інтерфейс oCBot.

Крок 2: Перейдіть у розділ "Периферія".

Крок 3: Знайдіть пристрій "Клапан відбору" у списку.

Крок 4: Натисніть кнопку редагування (олівець).

Крок 5: Змініть поле "Пін" з GPIO 12 на GPIO 14.

Крок 6: Натисніть "Зберегти".

Готово! Клапан тепер керується через GPIO 14. Контролер не перезавантажувався, сценарій не зупинявся.


Підказки для безпечного налаштування#

Обережно

Перед призначенням фізичних пінів ESP32 перевірте по таблиці розпиновки, чи не є обраний пін зарезервованим для системних потреб.

Деякі піни ESP32 мають особливе призначення при старті:

Пін Призначення Чи можна використовувати?
GPIO 0 Boot mode ❌ Не рекомендується (впливає на завантаження)
GPIO 2 Built-in LED / Boot ⚠️ З обережністю
GPIO 12 Boot mode ❌ Не рекомендується (впливає на напругу)
GPIO 15 Boot mode ❌ Не рекомендується (впливає на завантаження)
GPIO 5, 16, 17 Загального призначення ✅ Можна використовувати
Порада

Ми рекомендуємо використовувати піни, які не впливають на запуск контролера: GPIO 4, 5, 13, 14, 16, 17, 18, 19, 21, 22, 23, 25, 26, 27, 32, 33.


Часті запитання (FAQ)#

Що таке "Software Mapping"? expand_more

Це підхід, за якого функціональність пристрою не прив'язана до конкретного фізичного порту. Ви самі вирішуєте, який порт для чого використовувати, і змінюєте це через програмний інтерфейс.

Чи потрібно перезавантажувати контролер після зміни призначення? expand_more

Ні. Зміна відбувається миттєво. Контролер не перезавантажується, сценарії не зупиняються.

Чи можна змінювати призначення під час роботи сценарію? expand_more

Так, але будьте уважні. Якщо ви зміните призначення пристрою, який активний у поточному сценарії, це може вплинути на процес. Рекомендуємо робити такі зміни між запусками.

Як дізнатися адресу давача DS18B20? expand_more

Використовуйте функцію "Автосканування" у веб-інтерфейсі. Система сама знайде всі підключені давачі та покаже їхні адреси.

Що робити, якщо я помилився з піном? expand_more

Просто змініть призначення в інтерфейсі. Нічого не зламається. Якщо пін зарезервований для системних потреб — система попередить вас.

Чи можна підключати периферію до розширювача PCF8574 так само вільно? expand_more

Так. У налаштуваннях пристрою ви вказуєте, що він підключений через PCF8574, та обираєте номер порту на цій платі.


Що далі? (Навігація по базі знань)#

Тепер, коли ви знаєте, як налаштовувати периферію без перепрошивки, переходьте до наступного розділу:

  1. Сценарії та автоматизація — як створити власний алгоритм роботи.

Запрошення до діалогу: Ви вже спробували підключити периферію до oCBot? Розкажіть про свій досвід. Якщо виникли запитання — ми завжди поруч, щоб допомогти.