• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Нужна помощь Помехозащищенность выносной кнопки

pvvx

Активный участник сообщества
Еще: Пепка - Прыгни! :D
Где сертификат на ваше соответствие заученным байкам, выданный организацией грин-пис, что вы не осел?
Иначе катите под сторожа с гонором горки своих переработанных калорий.
Как детятям то читать и внимать ваши глупости, если потом вы не выпишите им справку о прохождении электронного экзамена соответствия на внушаемость и повторяемость? Вы же их потом "самоучками" обзовете.
Так что справку в студию.
 

pvvx

Активный участник сообщества
Сорри... не успел еще прочитать последние 10 сообщений...
Там ничего интересного.
=AK= несмогла нарисовать правильную схему из ваших компонентов.

То есть от блока питания +5 и GND заходят на nodemcu, а оттуда уже на другие платы.
Глюки никуда не исчезли. Сработка любого реле, на котором есть нагрузка - вызывает спонтанную реакцию других реле. Глюков не вызывают лишь реле, которые не подключены на шину 220v (висят "в воздухе").
По этому поводу =AK= уже приводил схему генератора типа "Качер" в своей статье про помехи:

У вас так и сделано, по его рекомендациям. Чему вы удивляетесь? :confused:
Остальным, без справки из его больницы, он запретил чего либо писать и решать.
 
Последнее редактирование:

nikolz

Well-known member
не-не-не... все не так.
Около компа я собираю лишь цифровую часть схемы и проверяю работу платки с кнопками, запитывая ESP от компового USB.
При этом реле у меня под рукой нет, равно как и нагружать их нечем - все лежит на даче под потолком.
Поэтому тут нельзя никоим образом говорить, что в одном месте у меня работает, а в другом нет. Я на 100% уверен, что глюки будут в обоих местах. Да, собственно, уже были, пока я реле на дачу не перевез. Втыкание в розетку даже паяльника вызывало сработку реле.

Что касается слабости блока питания, то я пробовал nodeMCU питать и отдельным блоком на 7В 1А, так и маленьким китайским зарядником 5В 1А включаемым мимо DC-DC прямо в питание самого nodeMCU. Поведение и глюки идентичные.
Тогда получается что кнопки вообще не приделах.
Под потолком на даче вы вряд ли настроите.
Начнем с начала. Какая у вас марка реле и как вы их включаете?
У Вас будут несколько реле включаться одновременно или активным будет лишь одно?
Заберите все с дачи и настраивайте сначала на столе.
Я бы начал с того что оставил одно реле и добился бы чтобы паяльник не влиял потом поставил одну кнопку ну и так далее
Но прежде чем это делать надо все посчитать и испытать блок питания посмотреть или измерить пульсации на нем и определить что он за фрукт.
У Вас паяльник влиял при питании от блока или от компа?
 

hc2hunter

Member
- Там, где помеха бежит по земле, если ей встретился конденсатор - то для нее это как просто проводник. Если ей короче прыгнуть через конденсатор на GPIO пин, а оттуда на земляной пин микропроцессора и далее опять по земле - она так и побежит, и это опять будет сбой. Поэтому надо четко понимать, куда подключать земляной пин фильтрующего конденсатора, чтобы это не стало причиной сбоев. Если не понимаете - лучше вообще уберите этот конденсатор, одного резистора будет достаточно.
Полагаю, что нижний контакт помехозащитных конденсаторов правильнее цеплять непосредственно на земляной пин МК, чтобы помеха не искала других путей через сам МК и прочие элементы схемы. Или плату разводить так, чтобы кратчайший путь от этих кондеров был сразу на землю МК.


Тогда получается что кнопки вообще не приделах.
Начнем с начала. Какая у вас марка реле и как вы их включаете?
У Вас будут несколько реле включаться одновременно или активным будет лишь одно?
Заберите все с дачи и настраивайте сначала на столе.
Я бы начал с того что оставил одно реле и добился бы чтобы паяльник не влиял потом поставил одну кнопку ну и так далее
Но прежде чем это делать надо все посчитать и испытать блок питания посмотреть или измерить пульсации на нем и определить что он за фрукт.
У Вас паяльник влиял при питании от блока или от компа?
Да, уже понятно, что схема кнопок - это самое последнее, что нужно решать.
Причем, сами кнопки (длинные провода) можно даже не втыкать. Глюки начинаются уже от того, что на GPIO in подана платка с резистивными делителями. То есть так:
схема помеха.PNG
Но! Никаких помех нет, если красную линию убираем. То есть отрываем схему от GPIOin. И вообще, как показала практика, глюки уменьшаются с сокращением длины красной линии.

Паяльник влиял во всех случаях, при любых питаниях.

Блок реле 5-вольтовый: HTB19Fl_QXXXXXbvXVXXq6xXFXXXX.jpg

Включаться будут независимо друг от друга. Оставаться активными могут хоть все, хоть одно, хоть несколько.
Задача банальна - задумано, что это будет несколько выключателей (кнопок), по командам от которых МК управляет реле и включает где-то освещение (нагрузки до 100 вт). Думал, что реализуется за день, но вот уже 2 недели свожу концы с концами :)
 

tretyakov_sa

Moderator
Команда форума
Думал, что реализуется за день, но вот уже 2 недели свожу концы с концами :)
Потому как огромное количество сообщений и не о чем. Все читать не стал :( Вы вероятно в коде кнопок используете прерывание? (чтение мыслей)
Выключите прерывания и напишите код для кнопок по другому.
 

hc2hunter

Member
Потому как огромное количество сообщений и не о чем. Все читать не стал :( Вы вероятно в коде кнопок используете прерывание? (чтение мыслей)
Выключите прерывания и напишите код для кнопок по другому.
да, я писал. что использую прошивку WiFi IOT (WiFi-IoT Firmware Builder :: Main). в ней кнопки реализованы через прерывания.
программная отстройка от звонов и помехозащита присутствует. также можно указывать как ловить прерывание - по фронту, срезу или сразу по обоим событиям.
 

hc2hunter

Member
Появилась, правда, мысль, почитав статью по ссылке nikolz
Попробовать действительно запитать блок реле от своего БП, а nodemcu от своего. как раз на модуле реле есть и джампер, разрывающий гальваническую связь.

Правда, если все получится и заработает бессбойно - это будет "вбит костыль", а не решена проблема, т.к. в идеале все обязано работать от одного блока +5.
 

tretyakov_sa

Moderator
Команда форума
да, я писал. что использую прошивку WiFi IOT (WiFi-IoT Firmware Builder :: Main). в ней кнопки реализованы через прерывания.
программная отстройка от звонов и помехозащита присутствует. также можно указывать как ловить прерывание - по фронту, срезу или сразу по обоим событиям.
Реализация по прерыванию очень чувствительна к помехам от других устройств. Можно конечно колдовать с кодом для прерывания и добавлять обвязку, спорить о реализации, писать сотни постов (а воз и ныне там), но если это просто кнопка, то проще попробовать другой вариант кода. Проведите эксперимент. Залейте прошивку с кодом без прерываний и проверьте.
 

pvvx

Активный участник сообщества
Реализация по прерыванию очень чувствительна к помехам от других устройств. Можно конечно колдовать с кодом для прерывания и добавлять обвязку, спорить о реализации, писать сотни постов (а воз и ныне там), но если это просто кнопка, то проще попробовать другой вариант кода. Проведите эксперимент. Залейте прошивку с кодом без прерываний и проверьте.
Т.е. предлагаете слепить халтуру, которая даст немного меньше ложных срабатываний?
Что-жь, этот метод принят в Arduino и учитывая что вы её поклонник и проповедник отговаривать не буду...
 
Последнее редактирование:

pvvx

Активный участник сообщества
Появилась, правда, мысль, почитав статью по ссылке nikolz
Попробовать действительно запитать блок реле от своего БП, а nodemcu от своего. как раз на модуле реле есть и джампер, разрывающий гальваническую связь.

Правда, если все получится и заработает бессбойно - это будет "вбит костыль", а не решена проблема, т.к. в идеале все обязано работать от одного блока +5.
По фото у вас стоят реле на 5В https://www.generationrobots.com/media/JQC-3FF-v1.pdf
4-ре реле по 70 Ом потребляют 286 мА (+ копейки на оптроне) + модуль ESP8266 при активности WiFi 300 мА + USB2UART c 1117 ещё 30..50 мА.
Итого за 600 мА. По китайски это требует БП наверно на 2A 5V, т.е. китайские 10 Вт :)
Вы питаете схему через стабилизатор на "nodemcu lolin base" ? На него нет данных. Дайте маркировку...
 
Последнее редактирование:

tretyakov_sa

Moderator
Команда форума
Т.е. предлагаете слепить халтуру, которая даст немного меньше ложных срабатываний?
Что-жь, этот метод принят в Arduino и учитывая что вы её поклонник и проповедник отговаривать не буду...
А обсуждение с 23 марта до 8 апреля без какого либо решения - это как называется? А решения у человека как не было так и нет.
Работающую схему в студию. Отговорки о том, что человек просит халявы не принимаются. 18 дней разговоров не о чем, и взаимных оскорблений.
Схемы рисовать умеете. Ладно когда Ардуиньщики пишут текстом, что куда подключить, вы то инженеры со стажем и все то у вас секретно. :)
 

pvvx

Активный участник сообщества
А обсуждение с 23 марта до 8 апреля без какого либо решения - это как называется? А решения у человека как не было так и нет.
Работающую схему в студию. Отговорки о том, что человек просит халявы не принимаются. 18 дней разговоров не о чем, и взаимных оскорблений.
Схемы рисовать умеете. Ладно когда Ардуиньщики пишут текстом, что куда подключить, вы то инженеры со стажем и все то у вас секретно. :)
У нас тут "удаленный объект" c полтергейстом.
До выполнения данных мной рекомендаций автор ещё не приступал. Пока на нем ставят опыты =AK= и nikolz.
Например - =AK= и nikolz советует соединить все gnd на один пин.
Но на плате "nodemcu lolin base" все gnd выводы соединены внутренним слоем фольги и представляют из себя площадку. :)
=AK= при этом уверяет, что но данной плоскости бегают киловольтные токовые импульсы :)
Теперь появился tretyakov_sa и уверяет, что в ESP8266 ужасно работают прерывания по пинам - т.е. гонят липовые срабатывания... :eek: Т.е. ESP8266 все неисправны?
То, что у ESP8266 отсутствует ESD защита экспы уже провели, даже в этой теме. А так-же что он падок на любые импульсы.
Если вы знаток "nodemcu lolin base" - подскажите какая микросхема там стоит в DC-DC. Диод нашелся на фото - SS24. Кондеры и разводка для 1A 5V из 10..20 по доке - хиловатая.
---
Люди бывают разные – некоторые желают найти решение проблемы, а не бросать и кидаться на что-то другое…
 
Последнее редактирование:

pvvx

Активный участник сообщества
А как реле подключили?

Просто реле работает от 5 вольт - и что-бы оно работало от 3.3 надо снимать перемычку и подавать +5V на JD-VCC.
По схеме в первом сообщении темы. Через резистор 1 кОм, светодиод, оптрон и на 5V. С 5V через оптрон и резистор на Б транзистора и с транзистора на реле с диодом... Схем данной платы в инете полно, но все без номиналов. Детям-Ардуинщикам это безразлично.
Тип транзистора не указан. По этому не известно, есть ли у него обратный диод между К-Э. Если нет - то это схема генератора, правда затухающих колебаний от внешней помехи :) Если поднять напряжение питания, то можно запустить в режим непрерывной генерации... Я такой помойки не покупаю и не знаю что там стоит.
 
Последнее редактирование:

sboganov

Member
По схеме в первом сообщении темы. Через резистор 1 кОм, светодиод, оптрон и на 5V. С 5V через оптрон и резистор на Б транзистора и с транзистора на реле с диодом... Схем данной платы в инете полно, но все без номиналов. Детям-Ардуинщикам это безразлично.
Тип транзистора не указан. По этому не известно, есть ли у него обратный диод между К-Э. Если нет - то это схема генератора, правда затухающих колебаний от внешней помехи :) Если поднять напряжение питания, то можно запустить в режим непрерывной генерации... Я такой помойки не покупаю и не знаю что там стоит.
Там все схемы только подключения кнопки - а про реле только то что оно странно работает.

Но по фото - там стоит перемычка. Значит если на VCC подается +5V - то 3.3V не гарантируют срабатывание. Если же 3.3V - то реле будет работать очень странно.
 

=AK=

New member
Полагаю, что нижний контакт помехозащитных конденсаторов правильнее цеплять непосредственно на земляной пин МК, чтобы помеха не искала других путей через сам МК и прочие элементы схемы. Или плату разводить так, чтобы кратчайший путь от этих кондеров был сразу на землю МК.
Это было бы идеально, н6о на практике сделать невозможно - у вас вообще нет доступа к этому пину. Вместо этого можно ограничиться использованием только одного земляного пина платы NodeMCU а "земли" конденсаторов спаять между собой и, ни к чему более не подключая, присоединить к этой точке.

Вот условная схема включения для иллюстрации. Все земли "звездой" подключены к одному пину NodeMCU. Резисторы R4..R8 образуют барьер, защищающий NodeMCU от помех.

NodeMCU_noise.png
 

pvvx

Активный участник сообщества
Это было бы идеально, н6о на практике сделать невозможно - у вас вообще нет доступа к этому пину. Вместо этого можно ограничиться использованием только одного земляного пина платы NodeMCU а "земли" конденсаторов спаять между собой и, ни к чему более не подключая, присоединить к этой точке.

Вот условная схема включения для иллюстрации. Все земли "звездой" подключены к одному пину NodeMCU. Резисторы R4..R8 образуют барьер, защищающий NodeMCU от помех.

Посмотреть вложение 6202
=AK= - проснитесь :) Как влияет:
  • конденсатор на коротком куске провода, при включении паяльника в соседнюю розетку,
  • пропажа глюков при отключении блока с реле...
Это из описаний hc2hunter.
Да и схема, которая избавит от части вами предполагаемых глюков давно нарисована, на первой странице темы. https://esp8266.ru/forum/attachments/snimok11-gif.6057/ и с кондером так-же - https://esp8266.ru/forum/attachments/snimok31-gif.6173/ Резистор на GPIO всё исправит.
Но дело то не в них...
 
Последнее редактирование:

=AK=

New member
Как влияет:
  • конденсатор на коротком куске провода, при включении паяльника в соседнюю розетку,
  • пропажа глюков при отключении блока с реле...
Предположительно в настоящее время NodeMCU подключен у ТС примерно так:

NodeMCU_noise_2.png
  • При подаче помехи, имитирующей включение паяльника, на кабель, идущий к кнопкам, помеха в конечном счете должна через емкость связи Ссв добежать до истинной земли GND. На пути прохождения помехи наиболее критическим будет падение напряжения на участке от точки А до земляного пина микроконтроллера GNDuC. Это напряжение через конденсаторы С1...С3 попадает на входы GPIO D0...D3 и вызывает сбой.
  • Контакты реле в момент коммутации сами являются источником помех. При подаче помехи на кабель, идущий к блоку реле, помеха также в конечном счете должна через емкость связи Ссв добежать до истинной земли GND. При этом между проводами кабеля, идущего к блоку реле, существует заметная емкостная связь. Падение напряжения на земляном проводе этого кабеля будет частично приложено к выходам D5, D6, далее ток помехи пойдет к земляному пину микроконтроллера GNDuC и вызовет сбой.
 

nikolz

Well-known member
Появилась, правда, мысль, почитав статью по ссылке nikolz
Попробовать действительно запитать блок реле от своего БП, а nodemcu от своего. как раз на модуле реле есть и джампер, разрывающий гальваническую связь.

Правда, если все получится и заработает бессбойно - это будет "вбит костыль", а не решена проблема, т.к. в идеале все обязано работать от одного блока +5.
Попробую объяснить про то, какая должна быть схема и программа (сам так делаю)
---------------------------------------
это эссе и для третьякова, который жаждет схему.
-------------------------------
И так начнем.
-----------------------------
Схема очень простая ESP , кнопки, реле (я предпочитаю симисторы), провода, блок питания.
------------------------------
На ESP ставится 4 резистора и диод шоттки если надо deep-sleep. ставим подтягивающие резисторы на используемые пины.
-----------------------
Проводами соединяем кнопки с пинами ESP
-------------------
Проводами соединяем реле с пинами ESP.
=================
Блок питания
--------------
Есть два варианта
------------------------------------
Вариант 1:
-------------------------------
Два блока:
1) либо зарядное на 5 в за 50 руб либо есть еще меньше по размерам для управления диодами но по 65 руб
плюс стабилизатор AM1117 или любой другой на нужный ток для ESP.
------------------------
Этот блок питания лишь для ESP .
Его можно поставить в одной коробочке с ESP или подключать к нему по кабелю.
Это универсальный блок ESP.
Т е его можно встраивать в различные розетки и унитазы не меняя ничего в схеме.
------------------------
2) блок питания для силовой части.
Особенность этого блока в том, что нет надобности в очень точной стабилизации напряжения.
В этом блоке нет надобности бороться с помехами , поэтому он может быть любой лишь бы не сгорел при включении всех реле.
Например для управления розетками я делал такой блок бестрансформаторным на емкостном делителе.
---------------------
Вариант 2:
--------------------------
В этой схеме требования к двум блокам питания совмещаются в одном. Устройство получается не универсальное так как силовая часть меняется при автоматизации розетки или унитаза.
=====================================
Борьба с ложными срабатываниями от кнопки - сие есть борьба с невежеством.
----------------------

Замечу, что проблема всех любителей на этом форуме в отсутствии у них элементарной грамотности в разработке алгоритмов обработки данных и жажда халявы.
-------------------------------
Но те кто дает советы тем более не будут вникать в используемую на халяву программу.
Вот и начинается словоблудие..
Постоянно можно читать подобные темы,
которые длятся бесконечно и в них разбирается проблема нано импульсов,
борьба с тараканами на луне с помощью отвертки, установка дополнительных варисторов для путешествия в сильную грозу
ну и так далее...
Т е как в песне про ямщика:
Ямщик ты о чем поешь?
Так что вижу так о том и пою!
======================
В действительности есть давно отработанный алгоритм обеспечения устойчивой работы от кнопки, который фильтрует все ложные импульсы без каких либо навесных элементов.
Возможны различные варианты его программного решения.
----------------------------
Это алгоритм измерения времени нажатия кнопки и сравнения этого времени с порогом.
Т е если порог будет 100 мс, то любые периодические помехи с частотой выше 10 гц или импульсы короче 0.1 сек будут фильтроваться.
=======================
Но проблема халявы в том и состоит,
что программы, которые выкладывают их создатели сделаны коряво и на низком алгоритмическом уровне и без подробного описания работы программы.
Т е цель автора такой программы в основном не выложить хороший продукт бесплатно, а пометить данное дерево раньше других.
И очередной халявщик вместо того, чтобы разобраться в ней и исправить слабые места,
начинает навешивать резисторы конденсаторы и варисторы по советам остальных посетителей форума,
которые тем более не желают разбираться в этой программе.
Вот и трындят неделями про то, что не требует изучения и плавает на поверхности инета (но на поверхности обычно плавает не золото).
------------------------
Всем успехов
 
Последнее редактирование:
Сверху Снизу