Многие контроллеры компании Kincony кажутся довольно монструозными устройствами — платы невероятных размеров, огромное количество цифровых входов и управляющих выходов, множество интерфейсов и т. д., но это только до тех пор, пока вам не понадобится, например, получать информацию с 64-х цифровых входов и управлять 64-я клапанами или реле.
И тут вдруг оказывается, что существует готовое решение, которое позволяет подключить провода, залить прошивку и (быстро и просто) решить стоящую перед вами задачу по автоматизации.
Сегодня мы как раз и рассмотрим такого монстра, это контроллер Kincony KC868-A64, который занимает почётное место в линейке A4, A6, A8, A16, A32, A64 и позволяет решать сложные и объёмные задачи по автоматизации.
Особенности линейки KC868
По типу управления выходами контроллеры серии KC868 делятся на две категории: устройства с установленными на плате реле (A4, A6, A8, A16S, A32) и устройства с транзисторными (MOSFET) выходами (A16, A64, KC868-Server). Контроллеры с реле дополнительно подразделяются на девайсы с запаянными в плату реле и на устройства с реле, установленными в специальные «кроватки» и позволяющие быстро и без пайки заменять сгоревшие реле.
Каждый из этих вариантов имеет свои преимущества и недостатки: контроллеры с установленными на плате реле легче использовать, ничего не нужно покупать и подключать дополнительно, а контроллеры с транзисторными выходами могут управлять не только реле, но и, например, электромагнитными клапанами. Во втором случае требуется дополнительно покупать и устанавливать отдельные блоки реле, например, блок KC868-E16 или аналогичный.
Дополнительный блок реле KC868-E16
KC868-A64 относится ко второму типу, то есть если в вашем проекте требуется использование реле, то нужно будет дополнительно купить и подключить соответствующие блоки компании Kincony или аналогичные стороннего производителя.
Kincony KC868-A64
Плата Kincony KC868-A64 содержит множество установленных компонентов и подсистем, полный список которых я привожу ниже:
- ESP32 (ESP-WROOM-32)
- 64 цифровых опторазвязанных входов («сухой контакт»)
- 2 аналоговых входа 0–5 В
- 2 аналоговых входа 4–20 мА
- 64 MOSFET выходов 12/24 В для управления реле и прочим оборудованием
- 64 светодиода состояний выходов
- Возможность подключения нескольких блоков KC868-E16 или аналогичных
- Интерфейс RS485
- Два отдельных I2C разъёма
- Отдельный Serial разъём
- Ethernet LAN8270A
- Разъём USB для программирования и заливки прошивок
- Кнопки «Reset» и «Download»
- Питание от 12/24 В постоянного тока
Установлено много чего, если всё это суммировать и выделить основные и значимые для построения проектов подсистемы, то получится:
- Управляющий микроконтроллер ESP32 со всеми его возможностями
- 64 цифровых входов
- 4 аналоговых входа
- 64 MOSFET выходов
- Интерфейс RS485
- Ethernet LAN8270A
Другими словами, работаем по беспроводному Wi-Fi и проводному Ethernet, получаем данные с 64-х входов (+ 4 аналоговых), управляем 64-я MOSFET выходами и обмениваемся данными по интерфейсу RS485.
Плюс можем задействовать дополнительное оборудование, подключаемое по I2C и Serial интерфейсам. А это дополнительное оборудование может быть очень разнообразным и значительно расширять базовый функционал контроллера (например, дисплей, различные датчики, коммуникационные модули и т. п.).
В итоге получается, что на базе KC868-A64 можно построить довольно развитую IoT систему, главной «фишкой» которой будет возможность получения данных с 64-х цифровых входов и управление 64-я MOSFET выходами.
KC868-A64 в собранном виде, готовый для установки на DIN-рейку
Внешний вид и конструкция
Из-за своих огромных размеров KC868-A64 не поместится ни в один стандартный корпус, поэтому он комплектуется специальным нарезным профилем для установки и крепления на DIN-рейку. Всё разбирается и разбирается довольно просто — достаточно раскрутить несколько шурупов по краям этого профиля.
Фото профиля и боковых заглушек отдельно. Сам контроллер вставляется в профиль сбоку и далее просто фиксируется боковыми ограничителями.
В связи большим числом цифровых входов и управляющих выходов обратная сторона платы утыкана оптопарами и мосфетами, что нетипично для продукции Kincony — обычно обратная сторона платы у их изделий не содержит установленных элементов.
Плата контроллера KC868-A64 отдельно. Видны специальные отверстия для крепления на любую подходящую поверхность — контроллер не обязательно устанавливать именно на DIN-рейку.
Схемотехника
Переходим к схемотехнике KC868-A64. Для начала вид платы сверху. Всё в лучших традициях Kincony и серии KC868. Постоянные читатели моего блога уже могут различить отдельные функциональные блоки контроллера.
Более подробный вид обратной стороны платы. Всё сделано аккуратно, но жидкость для отмывки флюса мне всё-таки понадобилась.
Питание
Подсистема питания контроллера KC868-A64 с одной стороны стандартна и повторяет схемные решения других контроллеров серии KC868, а с другой стороны несколько отличается от них. Она также состоит из микросхемы понижающего DC-DC преобразователя XL1509-5 для формирования напряжений 12 В и 5 В, а вот вместо одного линейного регулятора LM117-3V3 для формирования напряжения 3,3 В здесь применены два.
Принципиальная схема подсистемы питания KC868-A64:
ESP32
Ядром (мозгом) контроллера Kincony KC868-A64 является всем нам хорошо знакомый модуль ESP32 (в модификации ESP-WROOM-32).
Принципиальная схема и распиновка ядра (ESP32) контроллера:
USB/CH340
Стандартная (для серии) реализация USB-UART подсистемы на микросхеме CH340C плюс брутальный вертикальный USB разъём. Здесь же присутствуют две кнопки — «RESET» и «DOWNLOAD».
Принципиальная схема подсистемы USB/CH340 контроллера:
Цифровые входы
64 цифровых оптоизолированных входа «сухой контакт» на оптронах EL357, распределённых на 8 колодок по 8 контактов. Для обеспечения их работы в связке с ESP32 в KC868-A64 применены расширители цифровых входов/выходов c I2C интерфейсом на 4-х микросхемах PCF8575TS.
Принципиальная схема подсистемы цифровых входов. Для наглядности на схеме показан только один из восьми блоков опотронов (остальные полностью ему аналогичны).
Аналоговые входы
Плата KC868-A64 имеет 2 аналоговых входа для сигналов 0–5 B и два входа для сигналов 4-20 мА. Формирование напряжения производят входные каскады, счетверённый операционный усилитель LM324 и диоды Шоттки BAT54S.
Тут же формируется напряжение VCC_12V_1.
Принципиальная схема подсистемы аналоговых входов:
MOSFET выходы
Самая большая подсистема контроллера KC868-A64, взаимодействие которой с микроконтроллером ESP32 осуществляется при помощи 4-х расширителей цифровых входов/выходов c I2C интерфейсом PCF8575TS. Далее управляющие сигналы поступают на оптопары TLP181, которые в свою очередь управляют 64-я мосфетами NCE60P10K.
Здесь же присутствуют индикаторные светодиоды, по свечению которых можно определить текущее состояние выходов контроллера KC868-A64.
Принципиальная схема подсистемы MOSFET выходов. Для наглядности на схеме показан только один из восьми MOSFET блоков (остальные полностью ему аналогичны).
Ethernet
Ethernet интерфейс, значение которого трудно переоценить. Выполнен на стандартном для ESP32 чипе LAN8270A и по типовой схеме. Видимо чтобы не отставать от USB подсистемы, здесь тоже применён брутальный вертикальный Ethernet разъём.
Принципиальная схема подсистемы Ethernet:
RS485
Работа подсистемы RS485 обеспечивается драйвером интерфейса MAX13487EESA, буфером 74LVC1G125 и соответствующими элементами обвязки.
Принципиальная схема подсистемы RS485:
Разъёмы I2C
Два очень полезных для подключения различных дополнительных компонентов разъёма I2C. К ним можно подключить, например, дисплей, дополнительные сенсоры и прочие элементы.
Принципиальная схема подсистемы (разъёмов) I2C:
Serial разъём
Тоже полезное дополнение — к этому разъёму можно подключить много интересного оборудования, использующего Serial интерфейс для передачи и приёма данных.
Принципиальная схема подсистемы (разъёма) Serial:
Схема внешних подключений
Немного доработанная оригинальная схема разъёмов и внешних подключений контроллера KC868-A64 от производителя.
Проекты на KC868-A64
В завершение приведу имеющуюся в моём распоряжении схему тестового проекта на KC868-A16. Электрические подключения контроллеров A16 и A64 аналогичны и этот пример можно использовать для KC868-A64. На этой схеме хорошо видны все паттерны подключений различного оборудования — как запитывается сам контроллер, как к нему подключается блок реле, как управляются исполнительные устройства и т. д.
Распиновка
Распиновка KC868-A64. Всё, что может предоставить нам ESP32 по GPIO. Вообще, на мой взгляд, катастрофически малое количество GPIO — это самый большой (и обидный) недостаток ESP32.
Заключение
После прочтения этой статьи вы знаете что делать, если вам вдруг понадобится решать задачу по получению информации с 64-х цифровых входов и одновременно управлять 64-я актуаторами — KC868-A64 уже ждёт, когда вы загрузите в него свою прошивку и подключите к нему 64 реле или электрических клапана.