
Итак, мы с вами потренировались на начальных контроллерах компании Kincony (KC868-A4, KC868-A8, KC868-Uair, KC868-AG) и теперь переходим в «высшую лигу» и разберём устройство и назначение более серьёзного контроллера KC868-A16. Это представитель всё той же линейки ESP32 контроллеров Kincony для DIY и малой автоматизации, но имеющий другую архитектуру и некоторые дополнительные (долгожданные) возможности, например, встроенный интерфейс RS485.
Здесь всё также присутствует возможность работы как по беспроводному Wi-Fi, так и по проводному Ethernet, возможность работы с беспроводными устройствами 433 МГц и подключения дополнительного оборудования и т. д., но не будем забегать вперёд и постараемся обстоятельно разобраться с тем, что же представляет собой Kincony KC868-A16 и как его можно использовать в вашем хозяйстве.
Kincony KC868-A16
Для начала проведём формальную инвентаризацию оборудования и функциональных блоков, имеющихся на борту KC868-A16. Прежде всего это, конечно, «мозг» всей системы — микроконтроллер ESP32 (ESP-WROOM-32) со всеми его возможностями (Wi-Fi, Bluetooth, 4 МБ EEPROM и т. д.).
Кроме ESP-WROOM-32, Kincony KC868-A16 содержит:
- 16 цифровых опторазвязанных входов («сухой контакт»);
- 4 аналоговых входа 0–5 В;
- 16 MOSFET выходов 12/24 В для управления реле и прочим оборудованием;
- Возможность подключения блока KC868-E16 на 16 реле или аналогичного;
- 3 контакта для подключения температурных и прочих датчиков;
- Модули приёмника/передатчика 433 МГц;
- Интерфейс RS485;
- I2C разъём;
- Ethernet LAN8270A;
- Разъём USB Type-C для программирования и заливки прошивок;
- Питание от 12 В постоянного тока.
Как мы видим, список функциональных блоков и возможностей KC868-A16 довольно внушительный — 16 цифровых входов и 16 MOSFET выходов позволяют создавать на этом контроллере довольно развитые проекты по автоматизации. Кроме этого, наличие аналоговых входов и GPIO для работы с различными датчиками, а также свободного I2C разъёма даёт возможность для подключения нужного вам дополнительного оборудования.
Список интерфейсов тоже довольно внушительный: здесь и беспроводные Wi-Fi, Bluetooth, 433 МГц и проводные Ethernet и RS485 — всё это позволяет покрыть большую часть потребностей малой автоматизации и в целом KC868-A16 смотрится довольно «сильным» решением. Это уже контроллер более высокого уровня, чем рассмотренные нами ранее контроллеры Kincony.

Для сравнения A4 и A16 рядом
За «серьёзность» KC868-A16 пришлось расплатиться потерей реле — во-первых, 16 реле установить на плате довольно проблематично, и, во-вторых, MOSFET выходы можно использовать не только для реле, но и для управления другим оборудованием, например, контакторами, электроклапанами и прочими подобными устройствами. Поэтому замена реле на колодки с 16-ю MOSFET выходами выглядит разумной и вполне уместной в контексте назначения и области применения KC868-A16.

Блок реле KC868-E16, предназначенный для работы в связке с KC868-A16
Внешний вид
KC868-A16 комплектуется корпусом аналогичной конструкции, как и у контроллеров KC868-A4 и KC868-A8, но только несколько увеличенной длины. Также бросается в глаза другой цвет пластмассы и отсутствие технологических отверстий и заглушек на верхней крышке корпуса. В целом, качество корпуса для KC868-A4 и KC868-A8 я бы оценил на «5», а качество корпуса для KC868-A16 на «4+».

Вид KC868-A16 со снятой верхней крышкой корпуса. Можно отметить, что у платы нет сильно выступающих деталей и в корпусе остаётся много места для размещения дополнительной платы или дисплея.

Плата без корпуса, вид со стороны Ethernet-разъёма. Видны разъёмы цифровых входов, интерфейса RS485, аналоговых входов и разъём для подключения дополнительных датчиков.

Плата KC868-A16
Вид сверху на плату KC868-A16 и установленные на ней компоненты. Всё сделано качественно и аккуратно — к внешнему виду платы у меня нет никаких нареканий.

Вид с обратной стороны. Детали на нижней стороне полностью отсутствуют. Единственное замечание — я бы сделал «окно» для антенны ESP32 в фольге текстолита немного больше.

Схемотехника
Теперь разберём схемотехнику KC868-A16. Для каждого функционального блока я приведу фото компонентов этого блока на плате контроллера и его принципиальную схему, а также дополню это описание своими комментариями.
▍ Питание
Подсистема питания контроллера KC868-A16 состоит из микросхемы понижающего DC-DC преобразователя XL1509-5 для формирования напряжений 12 В и 5 В и линейного регулятора LM117-3V3 для формирования напряжения 3,3 В. Всё это снабжено соответствующей обвязкой.

Принципиальная схема подсистемы питания KC868-A16:

▍ ESP32
В Kincony KC868-A16 установлен модуль ESP32 в модификации ESP-WROOM-32. Ранее в некоторые модели линейки KC868 устанавливались модули ESP32-S, но теперь компания полностью перешла на комплектацию этих контроллеров модулями ESP-WROOM-32.

Принципиальная схема и распиновка ядра (ESP32) контроллера:

▍ USB/CH340
Подсистема подключения к компьютеру и программирования KC868-A16 радует нас появлением USB разъёма Type-C вместо устаревшего Mini-USB. Сама работа этого блока обеспечивается микросхемой CH340C. Здесь же присутствуют две кнопки — «RESET» и «DOWNLOAD». Расположение кнопок позволяет иметь к ним доступ без демонтажа верхней крышки контроллера.

Принципиальная схема подсистемы USB/CH340 контроллера:

▍ Цифровые входы
Плата Kincony KC868-A16 имеет 16 цифровых оптоизолированных входов «сухой контакт» на оптронах EL357. Индикации состояния цифровых входов нет (она закончилась на KC868-A4, а жаль).
Для обеспечения работы 16-и цифровых входов в связке с ESP32 (с его ограниченным количеством свободных GPIO) в KC868-A16 применён pасширитель цифровых входов/выходов c I2C интерфейсом на двух чипах PCF8574P.

Принципиальная схема подсистемы цифровых входов:

▍ Аналоговые входы
Плата KC868-A16 имеет 4 аналоговых входа для сигналов 0–5 B. Формирование напряжения производят входные каскады, счетверённый операционный усилитель LM324 и диоды Шоттки BAT54S.
Тут же формируется напряжение VCC_12V_1.

Принципиальная схема подсистемы аналоговых входов:

▍ MOSFET выходы
Самая большая подсистема контроллера KC868-A16, взаимодействие которой с микроконтроллером ESP32 осуществляется при помощи двух расширителей цифровых входов/выходов c I2C интерфейсом PCF8574P. Далее управляющие сигналы поступают на оптопары TLP181, которые, в свою очередь, управляют 16-ю мосфетами NCE60P10K.
Здесь же присутствуют индикаторные светодиоды, по свечению которых можно определить состояние выходов контроллера KC868-A16.

Принципиальная схема подсистемы MOSFET выходов:

Далее я привожу типовую схему подключения блока реле (в данном случае KC868-E16) к контроллеру KC868-A16. В целом всё понятно и никаких трудностей с подключением реле к KC868-A16 у вас быть не должно.

▍ Датчики (температуры/влажности и т. д.)
KC868-A16 имеет разъём с 3-я свободными GPIO выводами, к которым можно подключать любые датчики или другие нужные вам компоненты. Нужно только обратить внимание, что все эти контакты подтянуты на плате к напряжению 3 В.

Принципиальная схема подсистемы подключения датчиков:

▍ Модули 433 МГц
Здесь мы видим реализацию простой и очевидной идеи — распайку не самих беспроводных модулей 433 МГц на плату KC868-A16, а вместо них распайку разъёмов. Это даёт возможность в случае необходимости быстро подключать беспроводные модули или отключать их, просто вынимая из разъёмов. Это же позволяет получить 2 дополнительных свободных GPIO в случае, если связь на 433 МГц вам не нужна.

Принципиальная схема подсистемы подключения беспроводных модулей на 433 МГц:

▍ Ethernet
Контроллер Kincony KC868-A16 снабжён проводным Ethernet интерфейсом на чипе LAN8270A. Это позволяет подключать контроллер по Wi-Fi, или Ethernet, или одновременно по двум интерфейсам, или использовать второй интерфейс как резервный.
Расплатиться за возможность использования Ethernet интерфейса придётся потерей 9-и свободных GPIO из и без того крайне скудного их количества на ESP32.

Принципиальная схема подсистемы Ethernet:

▍ RS485
При рассмотрении контроллеров KC868-A4 и KC868-A8, всем не хватало интерфейса RS485 на борту и вот компания Kincony услышала пожелания своих пользователей и добавила этот интерфейс на плату.

Работа подсистемы RS485 обеспечивается драйвером интерфейса MAX13487EESA, буфером 74LVC1G125 и соответствующими элементами обвязки.

▍ I2C
Наличие разъёма I2C на плате KC868-A16 трудно переоценить — благодаря ему мы можем подключить к контроллеру различные I2C компоненты, например, дисплей или дополнительные сенсоры.

Схема внешних подключений
Далее я привожу немного окультуренную «оригинальную» схему разъёмов и внешних подключений к контроллеру KC868-A16.

Проекты на KC868-A16
Ну и в завершение приведу пример схемы простого проекта на KC868-A16. На этой схеме хорошо видны все паттерны подключений различного оборудования — как запитывается сам контроллер, как к нему подключается блок реле, как управляются исполнительные устройства и т. д.

После ознакомления с этой тестовой схемой у вас не должно остаться никаких вопросов по подключению оборудования к KC868-A16.
Заключение
Ну что же, вот и закончилось наше очередное путешествие в интересный мир микроконтроллеров серии KC868 компании Kincony. Не знаю как вам, а мне было интересно разобраться с тем, как устроен KC868-A16 и надо сказать, что A16 оправдал мои ожидания — это отличный контроллер для домашней DIY автоматизации.
