Продолжаем обзоры новой «железной» серии контроллеров Kincony и на этот раз разберём очередного её представителя — KC868-A16S. В прошлом обзоре комментаторы справедливо заметили, что сколько бы ни был хорош контроллер, но цена в 50 тыс. рублей не очень гуманна — в этом смысле KC868-A16S выглядит гораздо привлекательнее: внешне он почти неотличим от AIO, имеет тот же металлический корпус, развитый функционал, а стоит при этом в два (а в некоторых конфигурациях и в три) раза дешевле.
Как получается, что цена на «почти одно и то же» отличается в разы и чем пришлось пожертвовать разработчикам мы и узнаем из этой статьи.
❯ KC868-A16S
Для начала, чтобы составить себе представление о чём идёт речь, давайте познакомимся со списком компонентов и подсистем KC868-A16S:
- Микроконтроллер ESP-WROOM-32UE
- SMA разъём и Wi-Fi антенна
- 16 цифровых входов «сухой контакт»
- 2 аналоговых входов 0-5 В
- 2 аналоговых входов 4-20 мА
- 16 реле 250В/10А
- 16 светодиодов состояний реле
- Встроенная плата с кнопками управления реле (16 шт.)
- 1-Wire GPIO (для датчиков)
- Выход 3,3 В питания на датчик
- Интерфейс RS485
- Разъём для приёмника 433 МГц
- Разъём для 2G/4G GSM модуля
- Разъём для RTC модуля на DS3231
- Ethernet LAN8270A
- Разъём I2C интерфейса
- Разъём USB Type-C
- Кнопки «Reset» и «Boot»
- Питание от 12/24 В
- Индикатор наличия питания
На первый взгляд более чем достойный перечень компонентов и возможностей — на базе такого контроллера можно выполнить множество развитых проектов по автоматизации. Но как он соотносится с «флагманом» KC868-AIO? Чтобы это наглядно представить, давайте посмотрим на сравнительную таблицу.
После анализа этой таблицы, можно сделать следующие выводы: это действительно почти одно и то же, (существенная) разница заключается только в количестве цифровых и аналоговых входов, отсутствии у A16S аналоговых выходов и разной организации у этих контроллеров управляющих выходов мосфеты/реле. Остальные отличия можно считать несущественными в большинстве случаев.
Причём разницу в организации выходов мосфеты/реле нельзя причислить ни к недостаткам, ни к достоинствам — всё зависит от требований конкретного проекта.
А вот ограничения на входы 16/2/2 у KC868-A16S и 56/11/8 у KC868-AIO являются важными: если вам нужно обслуживать 50 цифровых входов, то обойтись 16-ю никак не получится.
Отсюда вывод: счастливчики, требования которых вписываются в ТТХ «младшего брата», могут купить KC868-A16S в два раза дешевле, чем KC868-AIO (смайл).
Теперь давайте посмотрим что представляет собой KC868-A16S и как он устроен.
❯ Упаковка
Как вы помните из предыдущей статьи, одной из «фишек» новых контроллеров Kincony является то, что компания наконец-то стала нормально (качественно) упаковывать свои изделия. Кроме эстетического удовлетворения, такая упаковка способствует сохранности электронной начинки контроллера при его транспортировке через всю планету и финальных трёхочковых бросках профессиональных игроков отечественной почты.
Вид KC868-A16S сразу после извлечения из коробки. На корпусе установлен разъём для подключения Wi-Fi антенны, а сама крышка корпуса крепится к основанию при помощи всего двух винтов, которые ненавязчиво подчёркивают брутальность этого IoT решения.
Взвешивание бойца перед спаррингом даёт рекордный результат в 763 грамма, и боец попадает в тяжёлую категорию «около килограмма железа».
❯ Разборка
Снимаем верхнюю крышку и контроллер остаётся в металлическом поддоне. Сразу на себя обращает внимание плата с 16-ю загадочными кнопками. Которая находится… да, да — внутри корпуса контроллера! (Креатив Kincony опять зашкаливает.)
Совсем избавляемся от железа корпуса и освобождаем плату контроллера. С этого ракурса уже обращает на себя внимание пучок разноцветных проводов заметной толщины (как самого пучка, так составляющих его проводов).
Плата кнопок отдельно. Почему плата кнопок подсоединяется к материнской плате тремя разъёмами мы узнаем несколько позже, а пока можем полюбоваться дизайнерским изыском в виде двух рядов кнопок со смещением на одну позицию (люблю Kincony).
❯ Схемотехника
Теперь переходим к разбору схемотехники KC868-A16S и исследованию того, что и как там работает. Для начала вид сверху на основную плату, без платы кнопок.
Внешний вид обратной стороны платы контроллера. Всё ожидаемо и в привычном стиле компании Kincony.
Подсистема питания
Подсистема питания выполнена стандартным для Kincony образом. Из необычных элементов можно отметить сдвоенные контакты для подключения питающего напряжения 12/24 В.
ESP32
Схема подключения выводов микроконтроллера ESP32 от производителя. Как всегда есть небольшие неточности, которые устранены в распиновке, которую я представлю в конце статьи.
USB-UART
Переходник USB-UART на CH340C и с USB Type-C разъёмом для самостоятельного программирования контроллера.
Цифровые входы (DI)
16 цифровых оптоизолированных входов «сухой контакт» на оптронах EL357, распределённых на две колодки. Для обеспечения их работы в связке с ESP32 применены расширители цифровых входов/выходов c I2C интерфейсом на 2-х микросхемах PCF8574P.
Адреса на I2C шине: 0x22 (DI1-8), 0x23 (DI9-16).
Аналоговые входы (AI)
Здесь всё очень скромно: два аналоговых входа 0-5 В и два аналоговых входа 0-20 мА. Но нужно помнить, что это скромно для Kincony, а для производителей других контроллеров подобное количество аналоговых входов — норма (а часто их и вовсе нет).
Реле и плата кнопок
16 реле управляются при помощи двух расширителей цифровых входов/выходов c I2C интерфейсом PCF8574P. Непосредственно обслуживанием работы реле занимаются микросхемы 74HCT14 с инвертирующими триггерами Шмитта и ULN2003A с матрицами транзисторов Дарлингтона.
Адреса на I2C шине: 0x24 (реле 1-8) и 0x25 (реле 9-16).
И несколько слов о дополнительной плате с 16-ю кнопками. Производитель позиционирует эти кнопки как средство экстренного, прямого, в обход софта (прошивки), управления состоянием реле. Поэтому плата с кнопками и находится внутри корпуса контроллера и недоступна снаружи при его штатном использовании.
Плата кнопок подключается к контроллеру при помощи трёх разъёмов P7, P8 и P9. Почему использовано такое странное решение? Трудно сказать, но более логичным выглядело бы использование одного разъёма с большим количеством контактов, и, кстати, не такими толстыми проводами — многоамперный ток там коммутировать не нужно.
Сенсоры (1-Wire)
Один подтянутый к 3,3 В вывод для подключения датчиков или шины 1-Wire. Или любых других устройств с подключением на одно GPIO. Да, всего один контакт, что очень грустно.
Приёмник 433 МГц
В схеме KC868-A16S предусмотрено подключение типового модуля для приёма радиосигналов 433 МГц. Рудимент, но может быть кому-нибудь это будет полезно.
Вид самого ресивера. Можно купить на Алиэкспресс или заказать при покупке контроллера KC868-A16S.
RS485
Стандартная для Kincony схема подсистемы RS485.
Ethernet
Так же, стандартная для Kincony схема подсистемы Ethernet на LAN8720A.
RTC (DS3231)
Контроллер KC868-A16S имеет возможность подключения типового модуля часов реального времени (RTC) на микросхеме DS3231.
Что, безусловно, очень полезная функция для такого контроллера.
GSM 4G
KC868-A16S предусматривает подключение GSM 2G модуля SIM800L или 4G модуля SIM7600 (хоть в чём-то удалось уесть KC868-AIO — там есть поддержка только 4G модуля).
В один момент времени можно использовать только один из вариантов модулей 2G/4G, но не оба модуля одновременно.
I2C разъём
Очень полезный разъём для расширения функционала KC868-A16S. Например, к нему можно подключить модуль I2C дисплея.
❯ Распиновка
Правильная распиновка ESP32 с исправленными ошибками и неточностями.
❯ Схема подключений
Исправленная и окультуренная схема подключений KC868-A16S от производителя (она прекрасна).
❯ Итого
Очень достойная альтернатива KC868-AIO за меньшие деньги и очень достойный DIY контроллер сам по себе. 16 цифровых входов, 16 реле, Wi-Fi, Ethernet, GSM, RS485, RTC и прочие возможности, плюс всё это в металлическом корпусе, с вменяемой документацией и возможностью установки готовых прошивок или создания собственной — что ещё нужно для счастья DIY автоматизатору?