Помнится, во времена моей пионерской юности я провёл много времени проектируя многоканальные измерители тока и напряжения и отлаживая математику обсчёта данных со всех этих каналов (да, были времена...). И тут, разбираясь что же в очередной раз изобрела компания Kincony в лице KC868-M16v2, я вдруг обнаружил, что это ни что иное, как воплощение моей мечты по железу для подобного измерителя.

То есть теперь все желающие могут попрактиковаться в многоканальном измерении токов потребления различных устройств и открыть для себя много нового и интересного (смайл). Кроме этого, компания Kincony снабдила своё очередное детище кучей фишек типа поддержки microSD карт памяти, сетевого подключения с POE, дисплея, часов реального времени и в качестве вишенки на торте — разъёма для подключения датчиков SH3x.

Да, иногда мечты сбываются…

Что за многоканальные измерители?


Не всем может быть понятно в чём «фишка» и зачем нужны многоканальные измерители токов и напряжений. Поясняю: одно дело, когда у вас в щитке стоит один счётчик и показывает общее потребление, и совсем другое, когда у вас измеряется ток потребления (и, соответственно, мощность) каждой линии отдельно. Причём это могут быть как групповые линии, так и отдельные линии «важных» потребителей типа холодильника, кондиционера или бойлера.

Кроме того, что это просто красиво, вы получаете развёрнутое представление о том что и как у вас работает и как на самом деле расходуется электроэнергия и, соответственно, ваши деньги. По опыту могу сказать, что тут вас ожидает много удивительных открытий.

Кроме очевидных, подобным устройствам можно найти ещё множество применений. Например, оно может служить частью охранной системы — по характеру потребления различных линий (каналов) можно судить об «активности на объекте» и при нарушении установленных паттернов система может сигнализировать об этом. В современном доме почти ничего нельзя сделать не изменив потребление электроэнергии (ничего не включив и не выключив).

Ну и так далее — спектр применений многоканальных измерителей тока ограничивается только вашей фантазией и потребностями.

KC868-M16v2


Теперь познакомимся поближе со всем перечнем компонентов и подсистем KC868-M16v2. На этот раз (щедрой рукой) Kincony разместила на плате:
  • ESP32-WROOM-32UE
  • 16 каналов для измерения тока (для датчиков SCT013 и подобных)
  • 16 джамперов для токовых каналов В/мА
  • Разъём для теста измерения токов
  • 3 канала для измерения напряжения 220-380 В
  • З резистора подстройки измерения напряжения
  • microSD картридер
  • Джампер SD/BO (GPIO2)
  • Ethernet LAN8270A
  • Разъём для POE модуля DP9700
  • Резистор подстройки POE напряжения
  • Универсальный I2C разъём
  • Разъём для дисплея SSD1306
  • Разъём для RTC DS3231
  • Разъём для датчика SH3x
  • Разъём USB для программирования
  • Кнопки «Reset» и «Download»
  • Светодиод наличия питания
  • Питание от 12/24 В постоянного тока

Неплохой набор, если бы производитель ещё добавил цифровые входы (DI) и интерфейс RS485, то было бы вообще роскошно. И самое интересное, что технологически это сделать для Kincony совсем несложно, но — не сделали.

И ещё мысль: возможно стоило измерительную часть сделать в виде отдельного блока, который можно было бы подключать к любому контроллеру. Это логично и, на мой взгляд, вполне оправдано. Видимо разработчики Kincony до этого пока не додумались.

Обращает на себя внимание поддержка этой платой возможности установки POE модуля (см. подробнее об этом далее).

Внешний вид


Фото KC868-M16v2 в «поддоне» на DIN-рейку. Установлены: дисплей SSD1306, датчик температуры и влажности SH31 и не установлены: POE модуль и модуль часов реального времени RTC.



Вид сверху. Если присмотреться, то можно заметить, что некоторые детали (переменные резисторы и разъёмы) не распаяны. В принципе, при большой необходимости, можно допаять их самостоятельно (см. описание схемы далее).



Обратная сторона платы, по традиции Kincony, не содержит никаких элементов. Обратите внимание: на разъёмы измерения напряжения предполагается подавать сигнал до 380 В. Кроме того, что эта идея сама по себе вызывает серьёзные опасения, так ещё и на плате нет никаких защитных прорезей.



Предупреждение: я не знаю насколько это оправдано, но я бы поостерёгся от экспериментов с напряжением 380 В. Если вы не профессиональный электрик и точно знаете, что делаете, то я бы не советовал работать с таким напряжением на плате KC868-M16v2.

Схемотехника


Теперь подробнее познакомимся со схемотехникой KC868-M16v2 и, как всегда, откроем для себя интересные нюансы реализации заявленной функциональности. Ну и кроме этого, схема позволит понять как это работает и грамотно использовать все возможности, заложенные в KC868-M16v2.

Питание


Тут всё стандартно для Kincony — преобразование 12 В — 5 В — 3,3 В. Из особенностей можно отметить, что контроллер может питаться от сетевого подключения с POE (см. описание далее).



ESP32


Информация о распиновке ESP32 от производителя. Джампер P24 «SD/BO» (не распаян на плате) может управлять режимами работы пина GPIO2.



USB-UART


Тоже типовая для Kincony схема переходника USB-UART.



16 каналов измерения тока


На плате имеются 16 каналов, предназначенные для измерения тока и рассчитанные на подключение типовых датчиков SCT013 и подобных. На плате имеются также 16 джамперов P1-P16 (V/mA) для переключения режимов входов ток/напряжение (по умолчанию — для датчиков с выходом напряжения).

CT clamp Sensor voltage range DC 0-1 V
CT clamp Sensor current range 0-50 mA 




Управляется всё это хозяйство посредством 16-канального аналогового мультиплексора/ демультиплексора 74HC4067. Как всё это работает, учитывая, что каналы подключены к ESP32 не напрямую, а коммутируются на один аналоговый вход — надо проверять и тестировать отдельно. Также возникают вопросы с калибровкой получаемых значений и самой математикой обсчёта каналов — это всё тема для отдельного исследования и отличный повод повысить вашу квалификацию в программировании и схемотехнике.



Пример подключения датчика SCT013 на первый канал KC868-M16v2. Для тех, кто совсем не в теме: один из сетевых проводов нужно протянуть внутри отверстия датчика (для этого он открывается).

3 канала измерения напряжения


Кроме 16 каналов измерения тока, KC868-M16v2 имеет также 3 канала измерения напряжения, выполненных по схеме типовых датчиков на трансформаторе ZMPT101B и операционных усилителях LM358DR2G.



Тут не возникает никаких проблем — это популярный датчик и для него есть и код и библиотеки в сети. Единственный момент: я не испытываю оптимизма Kincony по поводу работы с напряжением 380 В вообще и работы с напряжением 380 В на плате KC868-M16v2 в частности. Если вы всё же решитесь на подобные эксперименты, то я бы порекомендовал вам подумать ещё раз (резиновый коврик и перчатки вам в помощь).

SD картридер


SD картридер — это отличная вещь, которая никогда не бывает лишней на плате контроллера. Это хорошо ещё и как минимум потому, что не придётся «колхозить» его подключение самостоятельно.



Ethernet


Типовая для Kincony схема Ethernet интерфейса на чипе LAN8270A, дополненная возможностью подключения POE модуля DP9700 или совместимого.



POE модуль


KC868-M16v2 рассчитан на подключение совместимого «DP9700» POE модуля, в данном случае PM0503T (5 В 2,4 А).



Сам модуль 10-контактный, где из первых шести используются 4 пина в качестве входов, а из оставшихся четырёх — два пина выход и один пин для регулировки уровня выходного напряжения (переменный резистор должен быть на плате контроллера, но по факту не распаян).



Внешний вид самого модуля PM0503T:



Дисплей SSD1306


Дисплей SSD1306 штатно присутствует на плате. Наконец-то компания Kincony вняла здравому смыслу и начала оснащать свои контроллеры дисплеями.



Но видимо должно пройти какое-то время, чтобы до неё дошла ещё одна очевидная мысль: дисплей должен быть в составе дисплейной платы со светодиодами и кнопками или энкодером управления. Ждём-с…

RTC DS3231


На плате присутствует разъём для типового модуля часов реального времени на DS3231 (это очень хорошо).



Датчик SHT31


Не знаю из каких соображений, но видимо «до кучи», компания Kincony оснастила плату KC868-M16v2 разъёмом для подключения модуля датчика измерения температуры и влажности SHT31 и самим этим датчиком.



Как говориться, кашу маслом не испортишь — пусть будет. В крайнем случае этот разъём можно использовать для подключение какого-нибудь другого I2C компонента.

Разъём I2C


И отдельный I2C разъём — отлично, ему всегда можно найти применение в реальных проектах.



Распиновка


Проверенная и удобочитаемая распиновка ESP32 на плате контроллера KC868-M16v2.



Схема подключений


Схема расположения компонентов и внешних подключений от производителя.



Заключение


Реально классный контроллер для экспериментов, обучения и использования в DIY системах автоматизации. Ему не хватает только цифровых входов (DI) и интерфейса RS485 (и ещё кое-каких мелочей), чтобы претендовать на звание «воплощённой мечты ардуинщика», но он очень близко подошёл к этому недостижимому идеалу.



Читайте также:

Новости, обзоры продуктов и конкурсы от команды Timeweb.Cloud — в нашем Telegram-канале

Комментарии (78)


  1. GennPen
    29.06.2024 15:35

    На плате присутствует разъём для типового модуля часов реального времени на DS3231 (это очень хорошо).

    Но, ведь в ESP32 уже есть RTC, разве не так?


    1. smart_alex Автор
      29.06.2024 15:35

      Всегда пользовался внешним модулем DS3231 - это полноценный RTC со встроенной батарейкой и гарантированной точностью отсчёта времени.


    1. nafikovr
      29.06.2024 15:35
      +1

      практика показывает что на калибровку "встроенных" RTC при пусконаладке затрачивается больше ресурсов, чем будет потрачено денег на внешний RTC.


      1. nikolz
        29.06.2024 15:35

        А еще в ESP32 есть Wi-Fi, т.е. доступ к NTP . А это уже точнее, чем DS3231, которые будут корректироваться по тому же NTP.

        Ну и зачем тогда DS3231?


        1. nafikovr
          29.06.2024 15:35
          +1

          Сценариев много. Спмые очевидные

          1 - отсутствие доступа к ntp

          2 - таймстамп нужен сразу после подачи питания, а не когда получит данные от ntp

          3 - отсутствие необходимости делать корректировку хода часов во время работы.


          1. GennPen
            29.06.2024 15:35

            3 - отсутствие необходимости делать корректировку хода часов во время работы.

            Если использовать внешний кварц на 32к, а не внутренний RC-генератор, то и калибровка будет на уровне DS3231, который иногда все же приходится корректировать.


            1. nafikovr
              29.06.2024 15:35

              При правильном подборе обвязки выделенные RTC дают намного более стабильные результаты. По моему опыту случаи, когда была необходима калибровка хода единичны и были вызваны жесткой экономией (или ноунейм микросхемы rtc или кварцы)

              Встроенные же генераторы в МК не имеют повторяемости даже в рамках партии, да еще и часто нестабильны в режимах с пониженной энергией генерации


            1. LAutour
              29.06.2024 15:35
              +1

              А толку без выделенного питания для часов? В ESP чипах оно как-бы есть, но в модулях его упорно не хотят выводить наружу, объединяя с основным питанием.


  1. riky
    29.06.2024 15:35

    По этой плате конечно в первую очередь хочется разобраться как ей ток мерять. True RMS 6000 получится? Успеет ADC и мультиплексор так быстро мерять? 6000 * 16 получается в сек.


    1. smart_alex Автор
      29.06.2024 15:35

      Не знаю как True RMS 6000, но на 8-битной Меге мне удавалось обсчитывать 16 токовых каналов. Точность была не очень, но приемлемая для оценочных целей. Тут ESP32 в миллион раз более мощная, чем 8-битная Мега - по идее должна нормально обсчитывать.

      А вот скорость мультиплексора и всей системы в комплексе нужно проверять на практике.


      1. riky
        29.06.2024 15:35

        ну в миллион вы уж загнули. cpu частота на порядок всего лишь, да float математика может побыстрей. АЦП хоть и бит побольше но уж больно шумная. пусть не 6000, хотя бы 1000 и то для 50гц хватило бы. у кинкони готовых примеров нет?
        еще интересно что и как меряет esphome


        1. smart_alex Автор
          29.06.2024 15:35

          В статье есть ссылка на OEM, насколько я помню, у них есть готовая библиотека - там можно посмотреть код.

          Ещё можно в сети поискать код широко известного в узких кругах PowerMonitor.

          У Kincony тоже что-то есть на форуме.


  1. vbifkol
    29.06.2024 15:35
    +1

    Интересно, зачем РОЕ устройству, которое по определению находится рядом с силовыми линиями и к ним подключено? А 0,96" экран, вызывающий у Вас буйный восторг - зачем, .учитывая что у него 19 измеряемых параметров?

    Ну и цена - как всегда. Поверенный зарегистрированный как средство измерения WB-MAP12E стоит дешевле, по функционалу - не сильно уступает.


    1. smart_alex Автор
      29.06.2024 15:35

      Про дисплей не понял - что значит "у него 19 измеряемых параметров"? Это как?


      1. serafims
        29.06.2024 15:35

        3 напряжения , 16 токов - 19 чисел, которые не влезут на экран, думаю это имелось в виду.


        1. smart_alex Автор
          29.06.2024 15:35

          Так у этого контроллера ещё куча функций, кроме измерения тока и напряжения. Если добавить кнопки, то можно сделать развитое управление контроллером с меню.


          1. vbifkol
            29.06.2024 15:35

            Наверное можно. А если поставить большой экран, то можно все 19 параметров отображать. Остался вопрос - зачем маленький экран в базовой комплектации?


            1. smart_alex Автор
              29.06.2024 15:35

              Причины две: во-первых, SSD1306 - это стандарт де-факто для подобных контроллеров и, во-вторых, потребности пользователей и понимание производителей - это две большие разницы.


  1. CitizenOfDreams
    29.06.2024 15:35
    +1

    вы получаете развёрнутое представление о том что и как у вас работает и как на самом деле расходуется электроэнергия и, соответственно, ваши деньги.

    Хорошо, я узнал, что холодильник у меня расходует X рублей в месяц, кондиционер Y рублей, бойлер Z рублей. Мои действия? Горестно вздыхать каждый раз, когда я захожу с раскаленной улицы в прохладную квартиру? Пореже мыться? Купить за X*1000 рублей более экономичный холодильник?


    1. smart_alex Автор
      29.06.2024 15:35
      +4

      Когда я установил у себя такую систему, то с удивлением обнаружил, что больше всего жрёт энергию не холодильник, не нагреватель, не стиральная машина, а... скромный и неприметный сервер, который работает 24/7 :)


      1. CitizenOfDreams
        29.06.2024 15:35

        Так я и без многоканальных измерителей знаю, что сервер с постоянным потреблением >50Вт будет жрать больше, чем мой холодильник. Но что мне с этим знанием делать-то? Включать сервер с 9 до 5 по рабочим дням?


        1. smart_alex Автор
          29.06.2024 15:35
          +2

          Не все такие проницательные как вы. Для меня это было откровением, после которого я задумался о снижении энергопотребления сервера. И вообще получил объективное представление о том, что у меня больше потребляет и в каких режимах и на что нужно обратить внимание в первую очередь.


  1. Tomasina
    29.06.2024 15:35

    Обратите внимание: на разъёмы измерения напряжения предполагается подавать сигнал до 380 В.

    380 Вольт это всего лишь 3 линии по 230 Вольт.

    Но поводу опасений согласен - там нет прорезей даже для 220 В.


    1. vk6677
      29.06.2024 15:35

      Но ведь между линиями больше.


  1. smart_alex Автор
    29.06.2024 15:35

    В подобных системах, поскольку сырые данные мы получаем и обсчитываем сами, можно как угодно анализировать сигналы и творить различные «чудеса». Например, измерять не только ток, напряжение и мощность, но и частоту, накопленную энергию и т. д. — любой каприз, недоступный в готовых решениях.


    1. vbifkol
      29.06.2024 15:35

      и т. д. — любой каприз, недоступный в готовых решениях.

      Как я понимаю, в этой штуке как раз измерять достоверно все это нельзя - входы не поверенные, математика на входах не риалтаймовая. Ардуинка с 16 PZEM будет адекватней. Но еще адекватней будет любой специализированный прибор. И да, частота, накопленная энергия, перекосы по фазам и прочее - это стандартный функционал, который кажется есть в любых счетчиках.


      1. smart_alex Автор
        29.06.2024 15:35

        Здесь можно реализовать функционал, который и не снился "любым счётчикам".

        Насчёт точности - это "показометр", но с вполне приемлемой для оценочных целей точностью.


        1. vbifkol
          29.06.2024 15:35
          +1

          Здесь можно реализовать функционал, который и не снился "любым счётчикам".

          Конечно можно. Добавлять модули, перепрограммировать и т.д. А к счетчику можно добавить ЕСП32 и получить функционал, полностью аналогичный данному прибору, но с нормальным исполнением основной функции данного прибора. Вопрос же не в том что вообще можно. Вопрос в том, нахрена нужно то, что предлагается.

          Насчёт точности - это "показометр", но с вполне приемлемой для оценочных целей точностью.

          Это не показометр. Точнее это очень небезопасный показометр, судя по разводке линий 220. Еще раз: приделали бы они к есп32 просто 16 токовых входов и продавали бы тысяч за 5 - я бы купил. А если бы еще и 220 часть нормально развели + сделали БП на борту от 220, я бы купил даже за 10 в каждый шкаф.


  1. smart_alex Автор
    29.06.2024 15:35

    Можно, например, сделать «сетевой осциллограф», который в реальном времени выводит на веб-страницу форму тока и напряжения по любому каналу (или по нескольким каналам).

    И много чего ещё, на что хватит фантазии и квалификации.


    1. ClayRing
      29.06.2024 15:35

      Зачем?


      1. smart_alex Автор
        29.06.2024 15:35

        Это просто пример, конкретная реализация функций зависит от вашего проекта и от ваших желаний.


  1. nafikovr
    29.06.2024 15:35
    +1

    Вся прелесть задумки сводится на нет из-за одной мелочи. Казалось бы, есть измерение напряжения по трем фазам, есть 16 токовых входов, хоть по трем фазам мощность считай, хоть по каждому потребителю отдельно. Но для полноценного измерителя нехватает синхронного измерения тока и напряжения. Без синхронного измерения, увы, получится полноценно измерить мощность только на активной нагрузке от идеального источника питания. Любое искажение формы напряжения и любая реактивная нагрузка исказят измерения до бесполезных значений.


    1. smart_alex Автор
      29.06.2024 15:35

      На практике я столкнулся с проблемой точности измерений на различных типах нагрузки - поверенный счётчик так не сделаешь, но для "бытовых целей" точность меня устраивала.

      И вопрос: что в подобных системах может обеспечить "синхронность измерений" и что вы понимаете под этим термином?


      1. nafikovr
        29.06.2024 15:35
        +1

        Одновременное семплирование как минимум тока и напряжения на одной фазе позволяет измерить сдвиг фазы тока относительно напряжения, что позволит оперировать уже комплексной мощностью


        1. smart_alex Автор
          29.06.2024 15:35

          То есть 2 микроконтроллера, которые синхронно в одной точке времени измеряют один величину тока, а другой - величину напряжения?

          А не последовательно с некоторой задержкой, как это делает один микроконтроллер.

          Вы это имели в виду?


          1. nafikovr
            29.06.2024 15:35

            Вообще для этого достаточно одного мк с двумя ацп. Те же STM позволяют их синхронизировать.

            Аесли копнуть чуть глубже то есть специализированные микросхемы АЦП которые не только все как надо измерят, но еще и посчитают так, что МК останется только считать готовый результат


            1. smart_alex Автор
              29.06.2024 15:35

              Понял, теперь ваша мысль стала ясной. Я в своё время много экспериментировал с тем, как получать замеры :)


          1. vbifkol
            29.06.2024 15:35

            То есть 2 микроконтроллера, которые синхронно в одной точке времени измеряют один величину тока, а другой - величину напряжения?

            Существуют специализированные чипы для этого. Обычно это 2 АЦП + жестко зашитая математика + немножко памяти. связь с ведущим МК по уарту, ну либо по какому-нибудь из проышленных протоколов. Так делаются счетчики, ну и нормальные железки.

            В данном случае кинкони не альтернатива этому вообще никак. Если бы она стоила втрое дешевле, для оценки имела бы смысл, а так - я не понимаю зачем оно.


    1. Indemsys
      29.06.2024 15:35
      +2

      Так там еще трансформаторы напряжения стоят с фазовым искажением. Сами трансформаторы недешевые.


      Я в своем открытом проекте ПЛК применяю другую схему для мониторинга потребления от сети. Вот такую:

      Здесь сразу на выходе ток и напряжение в RMS, мгновенные значения тока и напряжения, активная и реактивная мощность, энергия, также те же значения, но усредненные за заданное время. Входные АЦП 24-битные. И еще есть алярмы по перегрузкам и по провалам напряжения. Работа чипа не зависит от микроконтроллера и не сбивается когда сбивается микроконтроллер. И гальваноизоляция серьезней и входной ток сенсора напряжения в 20 раз меньше.


      1. nafikovr
        29.06.2024 15:35

        Искажения трансфорсаторов постоянные и компенсируются калибровкой.

        Подобные микросхемы конечно хороши, но тоже не из дешевых.


        1. Indemsys
          29.06.2024 15:35
          +1

          Фазовые искажения из-за сдвига сэмплов АЦП во времени относительно друг друга, кстати, тоже исправляются фазосдвигающими фильтрами. Но это еще более нагрузит и без того нагруженный кучей задач микроконтроллер. Никакой ардуинщик не будет этим заморачиваться. Так что плату можно спокойно назвать кошмаром ардуинщика.


          1. smart_alex Автор
            29.06.2024 15:35
            +1

            Для того, чтобы умудриться загрузить под завязку ESP32, нужно быть сильно альтернативно одарённым программистом.


            1. GennPen
              29.06.2024 15:35

              Достаточно использовать криво написанную библиотеку, чем не брезгуют "ардуинщики".


              1. smart_alex Автор
                29.06.2024 15:35
                +1

                Для того, чтобы использовать кривой код не обязательно быть ардуинщиком, равно как ардуинщику никто не мешает создать сколь угодно безупречную библиотеку.


                1. jonic
                  29.06.2024 15:35

                  Это факт, сейчас к esp пишут библиотеки сразу одна для idf и arduino. У меня аж отношение к arduino поменялось)


      1. smart_pic
        29.06.2024 15:35

        Решение достойное, но при многоканальном варианте быстро растет стоимость.

        Нужно было измерять ток по 8 каналам , без сертификации измерения, просто как показометр - сделали на трансформаторах тока.


        1. Indemsys
          29.06.2024 15:35

          Но эти каналы малофункциональны. Обычно показометры нужны для быстрой детекции перегрузки или иные события. А тут получается просто обман потребителя. Поскольку если эту штуку настроить на быструю реакцию, то на все остальное уже не останется времени.


          1. smart_alex Автор
            29.06.2024 15:35
            +1

            "Показометры" нужны ещё для миллиона вещей, в частности, для понимания что вообще происходит на линиях и как работают подключённые приборы.

            По поводу программирования: вы программист? Я много работаю с микроконтроллерами и мне странно слышать о проблемах с производительностью ESP32 - там её хоть отбавляй.


            1. Indemsys
              29.06.2024 15:35

              Что вы такого поймете глядя на графики тока или напряжения снятые с низкой дискретностью и непонятными фазовыми искажениями? Подозреваю что ничего. Нужна аналитика в виде сложных фильтров, накоплений большого объема данных, оперирования большими файлами и быстрыми каналами передачи этих файлов. Из "миллиона вещей" хотелось бы узнать хотя бу одну полезную вещь без этого всего фарша.

              А на это все у ESP просто нет памяти ни Flash, ни RAM. Да там и тактовой не хватит если в стиле ардуино все делать в одном цикле.


              1. smart_alex Автор
                29.06.2024 15:35

                Что я пойму - это второй вопрос - задачи бывают разные (дискретность, кстати, может быть и высокой, в этой системе это не проблема).

                По поводу возможностей - а ну-ка в студию пример коммерческого счётчика с возможностью вывода формы тока и напряжения в сети в реальном времени. Сможете найти такой?


              1. smart_alex Автор
                29.06.2024 15:35
                +1

                Вы меня простите, железо у вас на вид отличное в блоге, но ваши заявления по программной части - это просто "рука-лицо", не выдерживают никакой критики.

                Вы вообще с ESP32 работали когда-нибудь?


                1. Indemsys
                  29.06.2024 15:35
                  +1

                  Списываю ваше недоумение просто на вашу неопытность. Посмотрите сколько надо ресурсов чтобы просто сделать Хаброметр.
                  А это только базовая функциональность для IoT устройства. У вас же IoT? А то иначе на кой тут ставить ESP? И это еще был не TLS 1.3 и не было Bluetooth. И не было подключения к IoT облакам типа AWS или Azure. И не было бутлодера и OTA , прочих атрибутов IoT. И GUI очень аскетический, нет графических ресурсов типа битмапов.
                  Про запись , сохранение и манипуляции с данными в реальном времени с пары десятков датчиков даже молчу. И про интерфейсы полевых шин.тем более.
                  И вы тут про какую-то произвродительность ESP говорите. Да вы её сразу похороните как только начнете что-то подобное делать.


                  1. smart_alex Автор
                    29.06.2024 15:35
                    +1

                    Спысываю ваше недоумение просто на вашу неопытность.

                    @Indemsys , ну вы даёте. Вы бы хоть поинтересовались с кем дискутируете. Хаброметр я разобрал по косточкам в статье:

                    https://habr.com/ru/articles/718254/

                    А полноценный веб-интерфейс с миллионом функций, в том числе многоканальным электроизмерителем, у меня работал ещё 10 лет назад на 8-битной Меге с 8 килобайтами оперативной памяти.

                    https://www.youtube.com/channel/UCzwiCsCitrMphSTIEr8It_w

                    (просто нужно проявлять немножко меньше снобизма по отношению к Ардуино и немножко больше практиковаться в программировании)


                    1. Indemsys
                      29.06.2024 15:35
                      +1

                      Так в пику вашему разбору я и сделал свой хаброметр. Чтобы показать все о чем вы там умалчиваете. И низкую юзабельность упрощенных решений.

                      Вы еще в школу ходили , когда я делал АОН-ы на 2 Кбайт RAM! на Z86.

                      Но это ни о чем не говорит. Времена другие.


                      1. smart_alex Автор
                        29.06.2024 15:35
                        +1

                        Ну и прекрасно :) надо будет почитать вашу статью.


    1. DanilinS
      29.06.2024 15:35

      В бытовых условиях дома как правило косинус фи в районе 1.


      1. smart_alex Автор
        29.06.2024 15:35

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


  1. peacemakerv
    29.06.2024 15:35
    +1

    А нечего ли посоветовать еще ближе к ардуинщикам ?

    Платку типа: ESP32, внешний нормальный I2C-ADC 16...24bit со входными делителями (4...8 каналов), MicroSD, RTC, LCD, I2C x (3...5 шт), SPIx1, UARTx1, релейных выходов немного (2-3 шт), Li-ON батарейный backup, остаток пинов на IO входы\выходы (может через джамперы). И с кнопочкой глобального ВКЛ-ВЫКЛ.


    1. smart_alex Автор
      29.06.2024 15:35
      +2

      Хе-хе... Мы тут уже десять лет ждём пока кто-нибудь из железячников сделает нормальный контроллер.

      Я уже склоняюсь к мнению, что для себя нужно делать контроллер самому :)


    1. GennPen
      29.06.2024 15:35

      I2C-ADC 16...24bit со входными делителями (4...8 каналов)

      Скорости шины I2C хватит на нормальную скорость обработки?


      1. peacemakerv
        29.06.2024 15:35

        Не всегда нужна огро...огромная скорость, особенно в комбайне, где куча разной периферии и неспешный алгоритм. А вот требования к точности АЦП если есть. Какого качества АЦП у ESP32 - многие знают.


    1. Indemsys
      29.06.2024 15:35
      +1

      Делать все это на одной плате мало смысла.
      Все перечисленное есть в этой архитектуре и гораздо больше, но на одной плате это было бы избыточно дорого и не гибко. Многоплатная архитектура лучше использует объем, лучше защищена от EMI, дешевле в ремонте, дешевле в апгрейде. Ну и естественно, в таких архитектурах никак не может быть ESP в качестве главного микроконтроллера.


      1. smart_alex Автор
        29.06.2024 15:35
        +1

        На заметку: архитектурно такие системы можно делать в парадигме контроллер - блоки расширения, а можно сделать линейку монолитных контроллеров со спектром возможностей от "малого к большому".

        И вопрос: а почему нельзя использовать ESP32?


        1. Indemsys
          29.06.2024 15:35

          Я бы не говорил о блоках расширения. Поскольку в экосистемах на ESP ни о каких расширениях в 10 или 100 раз даже речи не идет. Просто у ESP нет достаточно гибкой внутренней шинной структуры чтобы делать большие расширения. Читайте про механизмы прямых обменов между периферией.
          Я говорю о слоистой архитектуре с разными уровнями функциональности. Есть функциональность общая для всех решений - накопители, беспроводная связь, USB, голые АЦП, ЦАП, IO, RTC ... - это один слой (первая плата). Далее слой адаптации, где стоят схемы нормализации сигналов и крупные интерфейсы с микросхемами драйверов, зарядники и крупные DCDC конвертеры (вторая плата). И уже на вершине стоит прикладная плата с разъемами для внешний линий, клемниками, светодиодами, кнопками и проч.
          Зоопарк эксклюзивных моноплат у которых только ядро одинаковое ни к чему хорошему не приведёт. В лучшем случае они быстро пропадут из продажи. В худшем там начнется кошмар ревизий где старый софт не будет подходить к новым ревизиям.


          1. smart_alex Автор
            29.06.2024 15:35
            +1

            Скажу вам как системный архтектор системному архитектору :) контроллерные архитектуры можно обсуждать до бесконечности - каждая из них имеет свои преимущества и свои недостатки.

            Кстати, есть один объективный критерий - коммерческая успешность. Если не секрет, какими цифрами характеризуются продажи ваших контроллеров?


            1. Indemsys
              29.06.2024 15:35
              +1

              Мне не нравится разговор о продажах. Лучше всего сейчас продается оружие, любого качества. Я больше склонен к оценке того, что сейчас называется "устойчивость". А в концепции устойчивости не поощряется избыточный расход энергии на вещи не приносящие долговременной пользы. Вот эта плата с кучей датчиков, но не обеспеченная адекватным программным фреймворком кажется мне недостаточно устойчивой. Думаю, уже через год в этом же виде ее будет не найти в стоках.

              Мои контроллеры живут столько, сколько поддерживатся производство их микроконтроллеров, т.е. около 10 лет.


              1. smart_alex Автор
                29.06.2024 15:35

                А где они живут? Вы их где-то продаёте? Почём? Можно ссылку на магазин?


      1. smart_alex Автор
        29.06.2024 15:35

        глюк Хабра - дубль коммента


      1. peacemakerv
        29.06.2024 15:35

        Смысл бывает в разных местах...
        ОК, посоветуйте многоплатно-модульную архитектурку Йеспэ32ино, с перечисленными модулями, чтобы ВСЕ вместе можно было использовать.

        Вообще, имея одну такую плату Йеспэ32ино с разведенными всеми интерфейсами, с опциональными джамперами переключения периферии, никто по идее не заставляет вообще распаивать всю комплектацию, ее можно продавать с только процом и подсистемой питания. А все остальное необходимое дуинщик сам допаяет.

        И USB-UART-конвертор тоже питание через джампер обязательно надо...для батарейного питания.


  1. serafims
    29.06.2024 15:35
    +1

    Компактный модуль измерения в форм-факторе автомата 2полюсного на рейку - выглядит более профессиональным решением, хоть тот же от Wirenboard, хоть китайские счётчики с RS485,

    Зато каждый модуль независимо и синхронно считает все, остаётся лишь данные вынуть через интерфейс.


    1. serafims
      29.06.2024 15:35
      +1

      В общем, странная "мечта ардуинщика" получается, вроде всего полно, но как начнёшь это паковать в щиток, развлекаясь с этими джеками хлипкими, сразу становится грустно.


  1. NutsUnderline
    29.06.2024 15:35
    +1

    поскольку  ZMPT101B  все таки трансформатор то гальваническая развязка в схеме присутствует. Эта штука видимо популярна среди ардуинщиков и похоже "никто не жаловался". Для безопасности я бы обязательно налепил синей изоленты на ту часть дорожек где высокое напряжение может быть - их закоротить и коснуться легче всего.


  1. smart_pic
    29.06.2024 15:35

    По поводу модуля РОЕ.

    Его нужно запаивать в плату , иначе это грозит перегревом. На аналогах такого модуля в описании пишут что нужно разводить специально полигоны для отвода тепла. Так как контакты разъема предназначены для отвода тепла от модуля.

    Может конкретно этот и выдержит, но исходя из количества компонентов потребление будет на пределе этого модуля.


    1. smart_alex Автор
      29.06.2024 15:35

      Спасибо, будем иметь в виду.


      1. smart_pic
        29.06.2024 15:35

        Защита ЛАН порта имеется?

        Посмотрел схему - нет. Значит пару раз подключат отключат ЛАН провод с питанием РОЕ и микросхеме придет конец. Больше 10 раз не выдерживают - проверено. Точно сгорит. Если повезет - то и с первого . :)


        1. smart_alex Автор
          29.06.2024 15:35

          Насколько я понял, модули DP9700 это разработка компании SDaPo и своего рода стандарт - там множество моделей. Kincony использует эти модули в своих новых контроллерах.

          Насколько это надёжное решение трудно сказать - я думаю, если бы модули массово выходили из строя, то это было бы известно.


          1. smart_pic
            29.06.2024 15:35

            Насколько это надёжное решение трудно сказать - я думаю, если бы модули массово выходили из строя, то это было бы известно.

            Не модули а микросхемы лан.

            Пришлось даже серийное устройство дорабатывать


            1. smart_alex Автор
              29.06.2024 15:35

              Ну, то же самое: Kincony везде применяет типовые решения - если микросхемы будут выходить из строя, то Kincony об этом узнает первая - просто будет выпущена модернизированная ревизия платы.