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

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

hc2hunter

Member
Коллеги, столкнулся с такой странностью...
Имеется модуль ESP8266 LoLiN на колодке, который всунут в плату расширения ножек.
Пытаюсь приделать на маленькой выносной платке кнопку, которая срабатывает через обычную оптопару РС817. Ну, вроде всегда так делают, чтобы не было ложных срабатываний от прочих помех...
Но фигня происходит такая, что если где-то в квартире в розетку сунут потребитель (паяльник, пылесос, миксер и т.п.), то запросто может среагировать моя кнопка и сработать. Это как так...?
Питается это все от блочка питания 7В. На расширителе под Лолином - стабилизатор на 3.3В и на 5В.

Схема у меня такая: Буфер обмена01.jpg

Выглядит это так: DSC_20180323_164601_207.JPG

Причем саму кнопку можно отключить от платки (удалить ее длинные провода), схема один фиг реагирует на помехи o_O
 
Последнее редактирование:

andrik_zp

Member
Есть два пути решения, аппаратный и программный. Аппаратный это проставить конденсатор 0.1-1 мк между входом модуля и землей (как можно ближе к есп). Программный это проверять нажатие кнопки 3 раза, с периодом например 20 милисекунд, если три раза подряд кнопка в нажатом состоянии значит действительно было нажатие. На практике лучше использовать оба варианта.
 

pvvx

Активный участник сообщества
Причем саму кнопку можно отключить от платки (удалить ее длинные провода), схема один фиг реагирует на помехи o_O
Уберите механические реле - помехи исчезнут.
Правильно соедините провода GND блоков и поставьте защитный варистор (типа CG0603MLC-05LE) на длинные провода кнопки.
 

nikolz

Well-known member
Коллеги, столкнулся с такой странностью...
Имеется модуль ESP8266 LoLiN на колодке, который всунут в плату расширения ножек.
Пытаюсь приделать на маленькой выносной платке кнопку, которая срабатывает через обычную оптопару РС817. Ну, вроде всегда так делают, чтобы не было ложных срабатываний от прочих помех...
Но фигня происходит такая, что если где-то в квартире в розетку сунут потребитель (паяльник, пылесос, миксер и т.п.), то запросто может среагировать моя кнопка и сработать. Это как так...?
Питается это все от блочка питания 7В. На расширителе под Лолином - стабилизатор на 3.3В и на 5В.

Причем саму кнопку можно отключить от платки (удалить ее длинные провода), схема один фиг реагирует на помехи o_O
оптрон уберите он лишний.
сделайте программную защиту от помех. Если программировать умеете то это просто.
вот два варианта:
1) кнопку вешаете на пин пин на +3 через резистор в зависимости от длины провода до кнопки начните с 10 ком
кнопку подключаете витой парой
В колбеке по прерыванию от кнопки ставим измерение времени нажатия и отпускания кнопки если это время меньше некотрого порога то это помеха
--------------------------------
2) Можно сделать рестар ESP по нажатию кнопки
т е нажали и ESP начнет работать
Для этого подключаете кнопку через параллельно соединенные RС к RST. RST подтягиваете к питанию через 10 к
RC - это резистор 100 к и С - 1-10 мкф.
При нажатии кнопки RST подключается к земле на время заряда конденсатора и после этого рестартует ESP.
доп программу вообще делать не надо.
--------
 

=AK=

New member
Но фигня происходит такая, что если где-то в квартире в розетку сунут потребитель (паяльник, пылесос, миксер и т.п.), то запросто может среагировать моя кнопка и сработать. Это как так...?
У вас не кнопка, а оптрон срабатывает от помех.

Чтобы он не ловил помехи, параллельно светодиоду надо поставить резистор 1к, или конденсатор 0.01 мкФ, или еще лучше и то и другое. А чтобы зря не рассеивать мощность источника питания, резистор 100 Ом увеличить до 470 Ом.

А чтобы действительно защититься от помех, добавить резистор 1к между коллектором оптрона и входом микроконтроллера.
 
Последнее редактирование:

hc2hunter

Member
Если резистор оптрона увеличивать больше 200ом, он просто не срабатывает.
Я 100 ом рассчитывал исходя из питания +3.3 и рабочего тока оптрона в 30-35 мА

И как может оптрон срабатывать от помех? Для меня это вообще странная фраза. Их всегда ставят именно для защиты от помех, т.к. вход МК - это КМОП логика. Она как раз срабатывает не от тока, а от наводок потенциалов.
 

pvvx

Активный участник сообщества
Если резистор оптрона увеличивать больше 200ом, он просто не срабатывает.
Я 100 ом рассчитывал исходя из питания +3.3 и рабочего тока оптрона в 30-35 мА

И как может оптрон срабатывать от помех? Для меня это вообще странная фраза. Их всегда ставят именно для защиты от помех, т.к. вход МК - это КМОП логика. Она как раз срабатывает не от тока, а от наводок потенциалов.
Вы бы объяснили зачем там вообще оптрон?
Два провода, витой парой, один уже сидит на GND. От чего развязка то делается? :confused:
 

nikolz

Well-known member
Их всегда ставят именно для защиты от помех, т.к. вход МК - это КМОП логика. Она как раз срабатывает не от тока, а от наводок потенциалов.
Железный довод!!!
А Вы видите у вас на схеме 10к на питание?
И при чем здесь KMOП если это сопротивление параллельно входу по переменке стоит?
----------------------------------------------------------------
Еще раз вам повторяю - уберите оптрон - он лишний
и еще - почему просто не поставите кнопку на RST или CH_PD ESP?
-----------------------------------------------------------------
Не читайте газет перед едой.
 

pvvx

Активный участник сообщества
Снимок11.gif
Но для механической кнопки с удалением в метры среди другой проводки не хватает тока в 3 мА.
Чем больше ток и напряжение на кнопку, тем меньше сказываются помехи.
По этому по току выбирают порядок от 20 мА, а напряжения от 12 до 24 В, при срабатывании на уровень в 6..12В (что ниже - значит замкнута).
Приведенная схема - это первый и самый простой уровень защиты. Он не предусматривает защит при включении проводов кнопки в сеть 220В или контакт (замыкания) проводов с сетевыми...

Если хотите использовать оптрон - ставьте ему отдельный DC-DC с гальвано-развязкой по питаниям.
 
Последнее редактирование:

nikolz

Well-known member
Посмотреть вложение 6057
Но для механической кнопки с удалением в метры среди другой проводки не хватает тока в 3 мА.
Чем больше ток и напряжение на кнопку, тем меньше сказываются помехи.
По этому по току выбирают порядок от 20 мА, а напряжения от 12 до 24 В, при срабатывании на уровень в 6..12В (что ниже - значит замкнута).

Если хотите использовать оптрон - ставьте ему отдельный DC-DC с гальвано-развязкой по питаниям.
Зачем резистор R1 ?
В ESP есть защита от импульсных помех.
И вообще какой смысл ставить такой делитель при входном сопротивлении в 10 ком (подтяжка у пина)?
 

pvvx

Активный участник сообщества
Зачем резистор R1 ?
В ESP есть защита от импульсных помех.
Она не работает. Где сертификат на ESD? :)

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

nikolz

Well-known member
Она не работает. Где сертификат на ESD? :)

В детсаде электроники вам разъяснят... А знающему физику объяснять это не требуется.
Спросите у своего приятеля =AK=, пусть пораспинается на пару страниц. А мне пока не охота.
Маразматик
 

nikolz

Well-known member
Если резистор оптрона увеличивать больше 200ом, он просто не срабатывает.
Я 100 ом рассчитывал исходя из питания +3.3 и рабочего тока оптрона в 30-35 мА

И как может оптрон срабатывать от помех? Для меня это вообще странная фраза. Их всегда ставят именно для защиты от помех, т.к. вход МК - это КМОП логика. Она как раз срабатывает не от тока, а от наводок потенциалов.
Возможно у Вас не помехи а дребезг кнопки или помехи идут через питание а не через кнопку.
Поэтому надо определить причину.
Для этого проведите два эксперимента.
1) отпаяйте кнопку с проводами и наберите статистику сбоев
2) припаяйте кнопку максимально близко к пинам без проводов и соберите статистику сбоев.
после этого можно обсуждать решение проблемы
 

nikolz

Well-known member
Вообще ESD защиту принято делать как-то так
В документации ESP указано что там стоят диоды шоттки для подавления импульсных помех.
В данном случае причина сбоев вообще не установлена.
поэтому нет смысла что-либо переделывать
 

pvvx

Активный участник сообщества
Вообще ESD защиту принято делать как-то так
Реальные диоды Shottky не годятся. Только теоретические. Их давно заместили варисторами на менее 1 нс срабатывания и без всяких эффектов пробоя и обратного рассасывания... В схеме указан примерный вариант. https://www.bourns.com/pdfs/MLC.pdf
Можно поставить старые, десятилетней давности, которые имеют большую емкость и разработаны специально для клавиатур и прочих внешних контактов... Тогда С1 не требуется.
А ваша схема - это начало транзисторного века (1970-х)... :D Да и с ударом в питание, и выгоранием R1 при случайном включении к +12В или типа...
 
Последнее редактирование:

pvvx

Активный участник сообщества
@pvvx я от вас другой реакции и не ожидал :D
А чё вы хотели -то?
Универсальное решение включения внешней удаленной механической кнопки включает в себя DC-DC и оптрон с гальвано-развязкой на 2 кВ, емкостными развязками на уровне до пару пФ, токами на кнопку от 10 мА и напряжением срабатывания на уровне от 12 В. При этом провода от кнопки можно запихать в сеть и ничего плохого не будет...
Вандало-защитный вариант должен предусматривать и подключение электрошокера прямо на кнопку :)
 

=AK=

New member
Если резистор оптрона увеличивать больше 200ом, он просто не срабатывает.
При напряжении 3.3 В и макс. возможном напряжении на светодиоде 1.4 В, при последовательно включенном резисторе 470 Ом ток через этот резистор будет не менее 4 мА. Из этого тока макс. 1.4 мА уйдет в шунтирующий резистор 1 кОм, а через светодиод пройдет не менее 2.6 мА. Согласно даташиту на PC817 минимальный коэфф. передачи тока 50% начиная с тока светодиода 0.1 мА, то есть, фототранзистор способен развить ток не менее 1.3 мА. А при нагрузочном резисторе 10 кОм от него требуется всего 0.33 мА. Обязан сработать.

То ли вы неверно описали свое устройство, то ли вы нам просто сказки рассказываете.

Я 100 ом рассчитывал исходя из питания +3.3 и рабочего тока оптрона в 30-35 мА
Мало того что вы напрасно греете окружающее пространство, такой ток вызывает ускоренную деградацию светодиода оптрона и обгорание контактов кнопки.

И как может оптрон срабатывать от помех? Для меня это вообще странная фраза. Их всегда ставят именно для защиты от помех
Для оптрона гарантируется минимальный коэфф. передачи тока 50%, а максимальный вообще не оговорен. Обычно он составляет проядка 200-500%, но может быть и больше. Например, при 1000% и коллекторном резисторе 10 кОм оптрон будет срабатывать при токе светодиода всего 33 мкА, что легко обеспечит даже довольно слабая наводка.

Чтобы он защищал от помех светодиод надо шунтировать резистором. При 1 кОм, как я вам советовал, наведенная помеха должна развить ток не менее 1 мА, т.е. быть в 30 раз более мощной. А шунтирующий конденсатор прибьет еще более мощные короткие помехи.

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

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

Для оценки помехоустойчивости считайте, какую мощность должна иметь помеха. Например, у вас с оптроном момеха должна иметь мощность порядка 33 мкВт. А для обычного КМОП входа с 470 Ом подтягивающим резистром - не менее 2 мВт, т.е. в 60 раз больше. Вы в 60 раз ухудшили помехоустойчивость, с кондачка поставив оптрон. :D
 
Сверху Снизу