Когда я впервые увидел KC868-AM, то долго думал как можно его охарактеризовать — и тут меня осенило: это не что иное, как контроллер Kincony в его минималистическом воплощении, ужатый до размеров 9x7 см. Тут присутствуют все основные элементы «больших» контроллеров Kincony (Wi-Fi, Ethernet, RS485, USB-UART и т. д.), размещённые на плате минимального размера, плюс свободные GPIO и возможность крепления на DIN-рейку.
Кроме типовых элементов, на плате KC868-AM присутствует и что-то новенькое — в этом контроллере компания Kincony впервые на моей памяти использует не готовый модуль ESP32, а самостоятельно развела на плате и сам чип и всю радиочастотную часть. Для чего она это сделала не совсем понятно, моё предположение — чтобы потренироваться и попробовать свои силы в конструировании подобных устройств.
Но обо всем по порядку…
❯ Что на борту
Для того, чтобы лучше понять с чем мы имеем дело, начнём с формального перечисления компонентов KC868-AM:
- Микроконтроллер ESP32-D0WD-V3
- Память 4 МБ (W25Q32JVSSIQ)
- PCB антенна (по умолчанию)
- IPEX разъём для подключения внешней антенны
- GPIO датчик/1-Wire (4 шт.)
- 3,3 В выход для датчиков
- Реле 10А 220В (NO, COM, NC)
- Светодиод состояния реле
- Интерфейс RS485
- Ethernet LAN8270A
- Разъём I2C
- Кнопки «Reset» и «User»
- Разъём USB
- Питание: 9-24 В
- Индикатор наличия питания
Ничего сверхординарного, но присутствуют (само-собой) ESP32 со всеми его возможностями, Ethernet, RS485, I2C разъём, Free GPIO и т. д., то есть уже есть с чем работать и что использовать в своих проектах. Правда выбор Free GPIO несколько странный — все они работают только на вход, что значительно сужает область их применения. Это можно частично исправить с помощью паяльника, но лучше бы набор свободных пинов изначально был полноценным (IO).
❯ Экстерьер
Плата KC868-AM упакована в нарезной профиль для установки на DIN-рейку. Это оправданное решение для больших и нестандартных плат, для которых трудно подобрать подходящий корпус, но KC868-AM можно было упаковать во что-нибудь получше защищённое от пыли.
Разбирается всё легко и просто, плату можно использовать и без профиля на DIN-рейку, просто встроив её в какой-то корпус или в какое-то устройство.
Сама плата KC868-AM крупным планом. Расположение и тип LAN и USB разъёмов предполагают подключение кабелей перпендикулярно плате (а не параллельно, как в большинстве случаев).
❯ Схемотехника
Вид на плату KC868-AM сверху — вся схемотехника находится как на ладони и невооружённым глазом видны все основные подсистемы контроллера (питание, USB-UART, LAN, ESP32 и прочее).
Вид с обратной стороны — всё сделано в традиционном стиле Kincony, плюс бонусом прорези в плате рядом с контактами реле.
Питание
Входное напряжение питания 9-24 В преобразуется сначала в 5 В при помощи понижающего DC-DC преобразователя XL1509-5 (до 3 А), а затем при помощи подстраиваемого преобразователя TLV62565DBVR формируется напряжение 3,3 В (до 1,5 А). Тут же присутствует индикатор наличия питания на светодиоде (3,3 В).
Ядро ESP32
Как я уже отметил выше, в KC868-AM компания Kincony решила не использовать готовый модуль ESP32, а развести всю схемотехнику этого узла, включая радиочастотную часть, непосредственно на плате. Использованы микроконтроллер ESP32-D0WD-V3 и чип памяти W25Q32JVSSIQ на 4 МБ. Плюс есть как встроенная антенна, так и IPEX разъём для подключения внешней (что хорошо и может быть полезным при установке контроллера в металлических шкафах).
USB-UART
Полностью стандартная для Kincony схема USB-UART преобразователя на CH340C, плюс «кондовый» (который проблематично будет сломать, даже при всём желании) вертикальный USB разъём.
Датчики/1-Wire
Четыре канала для подключения датчиков и/или 1-Wire устройств, заведённые в общую колодку с питанием и интерфейсом RS485. В этой же колодке присутствует выходное напряжение 3,3 В для питания датчиков.
При желании можно удалить подтягивающие резисторы и получить универсальные GPIO для любого использования по вашему усмотрению.
Реле
Реле с полным набором контактов NO, COM, NC (что хорошо) и индикацией состояния. Работает через TTL инвертор SN74AHCT1G04DBVR и транзистор. Одно реле — это конечно немного, но лучше, чем ничего. Если нужно большее количество реле, то можно использовать какой-нибудь дополнительный блок на DIN-рейку, работающий по интерфейсу RS485.
Интерфейс RS485
Полностью стандартная для Kincony схема реализации интерфейса RS485 на микросхеме MAX1348 и буфере 74LVC1G125.
Ethernet LAN8270A
Тоже стандартная для Kincony схема реализации Ethernet интерфейса на «физике» LAN8720A. Точно не лишняя и очень полезная подсистема KC868-AM.
Разъём I2C
Интерфейс I2C, выведенный в отдельный разъём и снабжённый на плате установленными резисторами подтяжки 3,3 кОм (видимо 4,7 кОм не было на складе или компания Kincony решила, что побольше тока не повредит интерфейсу I2C).
Разъём Free GPIO
Крайне полезный, но не менее странный разъём Free GPIO — в нём почему-то использованы исключительно пины GPI, вместо GPIO. На распиновке ниже видно, что на плате присутствуют два незадействованных пина (GPIO2 и GPIO12), которые при желании и использовании паяльника можно подключить в разъём P2 (3 GPI плюс 2 GPIO будет однозначно лучше, чем 5 GPI).
❯ Распиновка
Богато иллюстрированная (смайл) распиновка KC868-AM из которой, при внимательном рассмотрении, можно узнать много интересного.
❯ Схема подключений
Окультуренная и исправленная схема подключений KC868-AM от производителя платы.
❯ Итого
KC868-AM хорошо вписывается в концепцию компании Kincony «множество контроллеров на все случаи жизни» и может пригодиться вам для решения ваших задач по автоматизации или создания IoT систем (если ваша конкретная задача вписывается в ТТХ KC868-AM).
Возможно, захочется почитать и это:
- ➤ Дисплей для Ариты или тайна четырёх перемычек
- ➤ Нейросеть мне в помощь или как я сделал телеграм бота, который умеет переводить песни
- ➤ Как объяснить суть Kubernetes таксисту
- ➤ Пишем прошивку для старого пин-пада
- ➤ Как создавался Halo
Комментарии (15)
GennPen
26.11.2023 08:59+2По мне так лучше было бы не распаивать ESP на плате, а использовать стандартный модуль.
smart_alex Автор
26.11.2023 08:59Видимо тренируются (опять же, видимо для того, чтобы в будущем выпускать какие-то кастомные решения.
GennPen
26.11.2023 08:59Это ухудшает (сильно в данном случае) ремонтопригодность, т.к. проще и дешевле поменять готовый модуль, чем выискивать неисправность в распаянных элементах на плате.
smart_alex Автор
26.11.2023 08:59+1В этом смысле контроллеры Lavritech пошли ещё дальше - там ESP32 модули можно менять вообще без пайки и на разные модификации.
usego
26.11.2023 08:59+1А часто приходится ESP32 менять? Без подколки, не сталкивался с ними ещё.
smart_alex Автор
26.11.2023 08:59Мне, поскольку с контроллерами я работаю грамотно и аккуратно, вообще не приходится, а по отзывам компании Lavritech - "электрикам на последней миле" - периодически и в самый неожиданный и неудобный момент.
select26
26.11.2023 08:59+1Интерфейс I2C, выведенный в отдельный разъём и снабжённый на плате установленными резисторами подтяжки 3,3 кОм (видимо 4,7 кОм не было на складе или компания Kincony решила, что побольше тока не повредит шине 1-Wire).
I2C не имеет никакого отношения к 1-Wire. Это совершенно разные интерфейсы. 1-Wire, как видно из названия, однопроводная шина, в отличие от I2C (SDA + SCL).
smart_alex Автор
26.11.2023 08:59Ой, вы правы - просто ошибся - конечно же I2C не имеет никакого отношения к 1-Wire - чуть позже исправлю в тексте.
shadrap
26.11.2023 08:59+1Прекрасный набор. Одно из моих любимых решений есп32+лан8270.Но минуса два и они огромные. Во- первых цена в около 4к руб это какой то трэш. LLyly ttgo аналог будет стоить раза в два дешевле. Во- вторых размер можно было сократить раза в два и убрать оттуда реле ну или поставить что-то компактное. Понятно что если это есп32 да еще и на Din ,то предполагается управление множеством реле. Смысл в одном, занимающем 30% платы не ясен. И вот если бы удалось сократить размер,а иначе зачем разводить еспшку отдельно , и вписать эту плату в Din овский модуль, размера автомата, вот это было бы здорово. В таком вот большом варианте я бы добавил POE. Раз есть Ethernet, наверняка будет нужда в таких устройствах.
smart_alex Автор
26.11.2023 08:59Компания Kincony (правда как и все прочие компании) «на своей волне» и делает только контроллеры «в своём стиле» — какие-либо советы со стороны она не особо слушает. Хотя технологически она может сделать любой контроллер (любую линейку контроллеров).
alex-open-plc
26.11.2023 08:59Решение с реле крайне кривое...
LAutour
26.11.2023 08:59А что не так?
GennPen
26.11.2023 08:59Я не спец в схемотехнике, но...
От обратного выброса шунтируется не обмотка реле, а управляющий транзистор. Из-за этого помехи при переключении реле будут проникать в питание VCC.
Сначала подумал, что странно что реле управляется верхним плечом, инверсное управление и т.п. Но при детальном изучении видим, что реле управляется через GPIO15, который должен подтягиваться к VCC во время загрузки.
vazir
Схема/плата opensource? Есть ссылка на репо?
smart_alex Автор
Вот ссылка на страницу этой платы - там внизу есть список всех актуальных ресурсов.
https://www.kincony.com/esp32-io-expansion-board.html