Как стать автором
Обновить

Комментарии 26

Некоторые замечания разработчикам:

  • на кнопках явно не хватает ёмкостей (аппаратная фильтрация дребезга)

  • подключение реле явно бестолковое. При коммутации нагрузки например на индуктивность будут очень большие выбросы. С вероятностью 99% контроллер зависнет (в лучшем случае).

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

А где бы посмотреть схемы решений Siemens?

Берете блок расширения контроллера. Разбираете. Изучаете.

Ясно. Как всегда. Бесполезная болтовня.

Пора уже уходить от порочной практики решать аппаратными средствами то, что решается программно. Конденсаторы для фильтрации дребезга не нужны — по первому прерыванию отключаем на этой ноге прерывание и далее в 10 мс циклах прибавляем 1 или отнимаем 3 до достижения нуля или 4...5, затем выполняем (без)действие и снова включаем прерывание. Это пара десятков строк кода, что при 4...16 МБ памяти программ ЕСП дешевле лишнего конденсатора.

Это и есть дурная практика, пытаться решить всё программно. Ёмкость сильно удорожает или усложняет решение?

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

Но вы не можете 10мс тусить внутри прерывания, так что циклы придется либо вынести в отдельную FreeRTOS-таску, либо вставить это в главный "поток" (либо вообще использовать аппаратный или программный таймер), и поприседать, если параллельно с этими 10мс что-то ещё должно выполняться. Для нескольких кнопок этот код хорошо бы ещё без дублирования переиспользовать. В общем, моя мысль в том, что аппаратно сложно неправильно сделать дребезгодав, а программно его ещё надо сделать с умом и встроить с учётом остального кода.

это и не надо. обработку всех кнопок сразу нужно делать раз в тик системного таймера для каждой кнопки увеличивая свою переменную-счетчик если на входе 1 и уменьшая если 0. нажатие и отпускание фиксируется при достижении счетчиком верхней и нижней границ соответственно. Для FreeRTOS обработку кнопок, светодиодов и т.п. очень удобно выносить в сопрограммы. Они там живут и никому не мешают

для alex-open-plc емкости опционально, дребезг 20 мс можно давить програмно, подключение реле называется классическое, по современному там должны быть полевики , контроллер не зависнет , питание реле и ESP от разных источников.

Проходили всё это. При индуктивной нагрузке более 300 Вт (всего то...), обыкновенный электродвигатель, получите сюрпризов в полный рост. В данном решении нет полной гальванической развязки. Думайте сами, как изолировать. Обмотка реле только усиливает эффекты, не обеспечивая изоляцию.

Думайте сами, как изолировать.

скажите, а у вас есть примеры - где вы придумали, как изолировать? Или "у нас есть такие приборы - но мы о них не расскажем" (с)?

Ну, дал ссылку, и что?! Только минусов и заработал...

спасибо за ссылку,

заметьте, минусов в ветке без неё - гораздо больше

Каким образом "развязка" оптроном поможет? Реле само по себе гальванически развязано. А наносекндные помехи без проблем пройдут через оптрон.

  1. Исследуйте работу реле, в частности при коммутации реактивной (индукционной нагрузке) посмотрите, как наносекундные импульсы со свистом пролетают через обмотку, еще и усиливаясь.

  2. Читайте (внимательно) даташит для CPC. (штука удобная, можно коммутировать катушки ~220V)

  3. очень таки интересно, КАК сигнал пройдет через оптопару в обратном направлении?!

Через оптопару наносекундные помехи проходят практически без потерь, через емкостную паразитную связь.

прекрасная плата. все что нужно..., цена наверное единственный минус)

конечно управление реле без опторазвязки это не очень универсальное решение, но в подавляющем большинстве случаев будет работать. Дребезг контактов решается и хардварно и софтово. Подтяжкой и /или микросхемой анти дребезга типа мах1816, я в своих решениях вполне довольствовался и софтовым... Вопрос что все это слишком сильно раздувает размер. А здесь он укладывается в 80х80 коробку что интересно.

Опять же не очень мне понятно игнорирование POE , потому как если Ethernet, то можно было б и питание оттуда притащить...

Опять же не очень мне понятно игнорирование POE , потому как если Ethernet, то можно было б и питание оттуда притащить...

Не очень понятно зачем ПОЕ рядом с реле. КМК, если есть реле - значит где-то рядом есть проводок с питанием, 220 или 24 - по вкусу. У меня есть ряд проектов, где МК мониторят питание и щелкают релюшками, я их как-то собрал на ПОЕ бордах, потом плакал как в корпус упихивать.

естественно на Poe релюшки лучше не вешать без развязки, еще вопрос что за Poe источник. У меня платы с poe работают с микроволновыми датчиками, никаких проблем.

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

Вообще универсальные платы обычно громоздкие, я развожу кастомные со всеми хотелками, выходит всегда компактнее. У универсальных плат в поделках хуже всего внешняя коммутация и дообвес. И корпус в лучшем случае на 3д принтере.

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

Жаль что при указании параметров выходов, которые подключены к реле, редко указывают помимо токов реле, напряжение и косинус фи. Приходится всё равно лезть в даташит на реле.
Это просто мысли про описание технических характеристик...

Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.