Схемы для устранения дребезга контактов механических переключателей.
Несмотря на широчайшее распространение полупроводниковых коммутаторов, механические переключатели по-прежнему используются в ряде приложений. Как бы ни совершенствовалась их технология, от дребезга контактов избавиться не удается. В статье рассматриваются способы свести эти проблемы к минимуму с помощью внешних компонентов.
Введение
Компания Würth Elektronik предлагает широкий ассортимент механических переключателей (см. рис. 1). Эти изделия применяются во многих приложениях для размыкания и замыкания электронных цепей.
Рис. 1. Часть ассортимента механических переключателей компании WE
Функция переключения, в основном, механическая, но многие переключатели работают как аналого-цифровой интерфейс в современных электронных схемах с четко определенными уровнями напряжения для логического нуля и логической единицы. Любой разработчик приложения, где используются тактовые или детекторные кнопки с быстро реагирующей электронной схемой, может задаться вопросом, почему она функционирует некорректно. Причина может заключаться в т. н. дребезге (вибрации) контактов. В статье рассматривается схема, позволяющая решить эту распространенную проблему.
Дребезг контактов
Механизм переключения
Как правило, считается, что контакт в переключателе является надежным и срабатывает мгновенно (см. рис. 2).
Рис. 2. Идеализированный график коммутируемого сигнала
Однако на практике все несколько иначе (см. рис. 3). В каждом положении переключателя контакт между токопроводящими участками устанавливается или прерывается с помощью подвижных механических элементов (см. рис. 4).
Рис. 3. Идеализированный график «реального» коммутируемого сигнала
Рис. 4. Конструкция тактового переключателя
Как правило, пружинные компоненты применяются в качестве средства для перевода контакта из одного состояния в другое в виде либо металлической пластины, либо винтовой пружины, у которой имеется некоторая масса и, следовательно, момент инерции. В тот момент, когда эти небольшие компоненты приводятся в движение, они с ускорением перемещаются в требуемое положение. После срабатывания некоторое время происходят многократные неконтролируемые замыкания и размыкания контактов за счет упругости пружины и деталей контактной системы; при этом электрическая цепь размыкается и замыкается, пока движение полностью не прекратится.
Таблица. Компоненты для переключения и защиты от дребезга
Компоненты | Время дребезга | |
Тактовый переключатель | 10 мс | |
Кнопочный переключатель |
|
|
Детектор |
|
|
Механический энкодер |
Поскольку коэффициент затухания велик, а момент инерции мал, продолжительность этого эффекта обычно составляет всего несколько микросекунд. Силовые цепи от него не страдают, чего нельзя сказать о цифровом входе. при изменении состояния электронный сигнал имеет нестабильный или, точнее, неопределенный статус, тогда как логической иС требуется четкий сигнал определенного уровня. микроконтроллер может пропустить изменившееся состояние порта, если считает данные в неподходящий момент. таким образом, требуется обеспечить генерацию четкого выходного сигнала переключателя. мы рассмотрим схему, позволяющую устранить его дребезг, чтобы решить эту проблему.
Используемые компоненты
Время защиты от дребезга указано в паспорте изделия. Компания Würth Elektronik определяет этот параметр как время между механическим переключением компонента и полным электрическим переключением. в таблице перечислены компоненты, используемые для переключения и защиты от дребезга.
Схема устранения дребезга
Мы добавим некоторые компоненты для создания фильтра нижних частот (ФНЧ), чтобы оценить его влияние на выходной сигнал.
Добавление фильтра
Схема базового переключателя без компенсации дребезга показана на рисунке 5. Типовые значения резистора R,: Г
Рис. 5. Схема переключателя без защиты от дребезга
После нажатия переключателя возникает сигнал, который позволяет отследить эффект дребезга контактов (см. рис. 6).
Рис. 6. Выходной сигнал в отсутствие схемы защиты от дребезга при переходе с высокого на низкий уровень
Чтобы устранить дребезг в выходном сигнале, предлагается одна из самых дешевых и простых в реализации электронных схем, в которой используется RC-фильтр (см. рис. 7). Когда переключатель разомкнут, конденсатор заряжается через цепочку R1 + R2, что замедляет рост напряжения. Когда переключатель замкнут, конденсатор разряжается через R2 с контролируемой скоростью.
Рис.
7. Переключатель с базовой схемой защиты от дребезгаЕсли компоненты были выбраны корректно, дребезг переключателя поглощается в процессе зарядки или разрядки, благодаря чему обеспечивается плавный переход из одного состояния в другое. Для расчета номинала конденсатора и резисторов применяется формула (1), позволяющая определить постоянную времени схемы:
Т = (Ri + R2) • Ci, (1)
где Т – постоянная времени, с; R – величина сопротивления, Ом; C – величина емкости, Ф.
Постоянная времени выбирается как некое компромиссное значение, позволяющее устранить дребезг переключателя и обеспечить требуемое время отклика схемы. За одну постоянную времени напряжение повысится до 63% от своего конечного значения или упадет до 37% от этого значения. В обоих случаях оно повышается или спадает на 99% после пяти постоянных времени.
Заданные условия:
– время дребезга в спецификациях: 10 мс;
– типовое значение сопротивления R1 для ограничения тока: 1 кОм;
– R2: выбираются два стандартных значения для устранения дребезга: 10 и 47 ком;
– напряжение питания: 5 в DC.
таким образом, расчет дает два значения емкости:
Ci = t/(Ri + R2). (2)
Предлагаются два ряда значений для этой схемы:
– решение 1: R1 = 1 кОм; R2 = 10 кОм; С1 = 1 мкФ;
– решение 2: R1 = 1 кОм; R2 = 47 кОм; С1 = 220 нФ.
Заметим, что значения сопротивления и емкости могут отличаться в зависимости от конструкции схемы заказчика.
Для обеих схем получаем характеристику, показанную на рисунке 8.
Рис. 8. Выходной сигнал при использовании схемы устранения дребезга и переходе с низкого на высокий уровень
Значение UOUT в зависимости от времени определяется следующей формулой:
Uout = U|N (1 – e-t/T). (3)
Из нее следует, что при t = т величина выходного напряжения UOUT составляет около 63% входного UIN. В нашем примере величина UOUT = 63% (3,15 В) от своего конечного значения (5,0 В) через 10 мс.
Добавление диода
Чтобы контролировать время заряда и время разряда по отдельности, в приведенную выше схему добавляется диод (см. рис. 9). В результате сокращается время переключения для зарядки конденсатора с помощью R
Рис. 9. Добавление диода в схему
Добавление буфера
Как известно, нуль в цифровой логике определяется по уровню ниже некоторого напряжения(например, 0,8 В), а единица – выше (например, 2,5 В). Значения между ними не определены. Если приложение не в состоянии поддержать неопределенные значения, может потребоваться буфер с триггером Шмидта с гистерезисом. Схема с разным временем включения и выключения и дополнительным гистерезисом показана на рисунке 10. Время отклика схемы, возможно, придется согласовать с временем выборки микроконтроллера.
Рис. 10. Триггер Шмидта обеспечивает стабильные и определенные значения напряжения
Защита от переходных процессов
Если переключатель расположен далеко или на конце длинного провода, вероятно, потребуется защита от перенапряжения, электростатического разряда или других переходных процессов. В качестве защитных компонентов применяется ферритовая бусина и TVS-диод, установленные перед входной цепью (см. рис. 11).
Рис. 11. Добавление ферритовой бусины и TVS-диода для защиты от перенапряжения
Выводы
При использовании механических переключателей сигналов появляется эффект дребезга, характеризующийся короткими периодами нестабильного сигнала в электронной схеме. Время дребезга переключателей Würth Elektronik достигает 10 мс, что следует учитывать при проектировании. Предложенный RC-фильтр позволяет уменьшить это явление. Фильтр можно усовершенствовать, установив дополнительные компоненты для более точного формирования сигнала и защиты от перенапряжения.
Опубликовано в журнале “Электронные Компоненты” №12, 2021 г.
Техподдержка: Wü[email protected]
причины возникновения и способы борьбы с ним
Дребезг контактов – это паразитное явление, которое вносит проблемы преимущественно в электронных схемах. Его суть заключается в повторном многократном и ложном прерывании и подаче сигнала на вход. В результате система, которая его принимает, неверно реагирует. Давайте более подробнее рассмотрим причины дребезга контактов и способы борьбы с ним.
- Определение и суть проблемы в электронике
- Устранение эффекта
- Дребезжание реле
Определение и суть проблемы в электронике
Дребезг контактов возникает при нажатии на кнопку и переключатель, он возникает из-за реальных вибраций контактной пластины при её перемещении. Любой переключатель устроен так, что у него есть подвижный и неподвижный контакт. Как видно из названия, подвижным называется тот, что соединен с толкателем или рычагом, на который уже нажимает человек или механизм при работе устройства.
Так как кнопки имеют механическое устройство, то от их качества зависит то, как точно они отрабатывают нажатия. При этом в любом случае полностью устранить явление дребезга нельзя. К чему он приводит?
Если клавиша управляет каким-то электронным устройством с цифровым входом, например, микроконтроллера, логического элемента и пр., то его вход распознает столько нажатий, сколько было импульсов послано в результате возникновения дребезга.
Пример осциллограммы дребезга контактов изображен на рисунке ниже:
Устранение эффекта
Чтобы устранить дребезг контактов, возможно использовать аппаратное или программное решение. К аппаратным решениям относится:
- Установка конденсаторов параллельно входу. Тогда может снижаться быстродействие реакции на нажатие при слишком большой ёмкости и неполного устранения дребезга при слишком маленькой.
- Введение триггеров Шмидта во входную цепь устройства. Более сложное решение, которое затруднительно для реализации в ходе доработки уже готового изделия, но и более технологичное и совершенное.
Если рассмотреть это явление на примере сдвигового регистра, то в этом видео наглядно показано его воздействие. После каждого нажатия кнопки должен загораться следующий светодиод.
Схема включения регистра и светодиодов на рисунке ниже:
Кнопка подключена так, как показано на схеме:
Пример осциллограммы сигнала с выраженным дребезгом:
Установив конденсатор на 1 мкФ параллельно кнопке для его подавления, получаем стабильное и точное срабатывание:
Схема подавления:
А фронт сигнала переключения, как вы можете убедиться, действительно завален, зато без лишних всплесков.
Альтернативой такому решению защиты от этого эффекта, без заваливания фронта и с большим быстродействием является использование триггера Шмидта. Типовая его схема изображена ниже:
На следующем рисунке изображены другие варианты схем на логических элементах для борьбы с дребезгом контактов:
Кроме аппаратного устранения, как было сказано, есть и программный способ решения данной проблемы. Он заключается в написании кода, смысл которого в считывании изменения сигнала, выдержки определенного времени и повторного его считывания.
Пример программного подавления дребезга контактов в Arduino IDE вы можете скачать, перейдя по ссылке: код для подавления дребезга.
Дребезжание реле
Кроме дребезга кнопок в цифровых электронных схемах также доставляет проблемы дребезг контактов в схемах управления реле. К таким схемам можно отнести сумеречное реле или различные датчики протока, а также регуляторы температуры. Когда датчик выдаёт сигнал на пороге срабатывания устройства, получается неопределенное состояние и логика схемы то включает, то отключает его. И при срабатывании реле не всегда наблюдается устойчивое удержание контактов, оно начинает как бы вибрировать, включаясь и отключаясь. На эпюре ниже наглядно изображена эта проблема на примере регулятора температуры:
Решением этой проблемы также является установка порогового элемента петлей гистерезиса в его передаточных статических характеристиках, то есть триггера Шмидта или Компаратора на операционном усилителе. На схеме ниже изображен исходный вариант с рассмотренной на графике проблемой:
А так выглядит схема с дополнением в виде задержки включения на логических элементах 2И-НЕ отечественной микросхемы К561ЛА7:
Иногда с этой же проблемой справляются с помощью установки стабилитрона в сигнальные цепи.
Аналогично дребезгу кнопок при включении реле, его контакты могут повторно несколько раз перекоммутироваться. Явление опасно тем, что в этот момент происходит зажигание и гашение дуги, что значительно снижает срок службы аппарата. Особенно часто это происходит при срабатывании реле на переменном токе.
Всё это связано с механической структурой герконов, реле и других коммутаторов. Их контакты замыкаются не моментально, а в течении долей, единиц или десятков миллисекунд. Чтобы продлить срок службы реле, ознакомьтесь со способами, которые мы описывали в статье о том, почему искрят контакты.
Также рекомендуем посмотреть хорошее видео на эту тему:
Теперь вы знаете, что такое дребезг контактов реле и какие способы борьбы с ним наиболее эффективны. Если возникли вопросы, задавайте и в комментариях под статьей!
Материалы по теме:
- Что делать, если греются контакты
- Как сделать реле времени своими руками
- Кодовый замок на Ардуино
Что такое дребезг коммутатора и как его предотвратить с помощью схемы отключения коммутатора
Что такое дребезг коммутатора?Когда мы нажимаем кнопку, тумблер или микропереключатель, две металлические детали соприкасаются, вызывая короткое замыкание. Но они не соединяются мгновенно, а металлические части соединяются и разъединяются несколько раз, прежде чем будет установлено фактическое стабильное соединение. То же самое происходит при отпускании кнопки. Это приводит к ложным срабатываниям или множественным срабатываниям как будто кнопка нажата несколько раз. Это похоже на падение прыгающего мяча с высоты, и он продолжает прыгать по поверхности, пока не остановится.
Проще говоря, мы можем сказать, что дребезг переключателя является неидеальным поведением любого переключателя, который генерирует множественных переходов одного входа . Дрожание переключателя не является серьезной проблемой, когда мы имеем дело с силовыми цепями, но оно вызывает проблемы, когда мы имеем дело с логическими или цифровыми схемами. Следовательно, для устранения дребезга в цепи Используется схема устранения дребезга переключателей .
Что такое устранение дребезга программного обеспечения?
Устранение дребезга также происходит в программном обеспечении, в то время как программисты добавляют задержки, чтобы избавиться от устранения дребезга программного обеспечения. Добавление задержки заставляет контроллер останавливаться на определенный период времени, но добавление задержки в программу не является хорошим вариантом, поскольку оно приостанавливает программу и увеличивает время обработки. Лучший способ — использовать прерывания в коде для отказа программного обеспечения. У Arduino есть код для предотвращения подпрыгивания программного обеспечения.
Методы устранения дребезга коммутатора
Сначала мы продемонстрируем схему без устранения дребезга коммутатора .
Вы также можете видеть форму волны на осциллографе, пока кнопка находится в состоянии подпрыгивания. Он показывает, сколько дребезга произошло во время переключения кнопки.
Существует три широко используемых метода для предотвращения дребезга цепи при переключении .
- Аппаратное устранение дребезга
- RC Устранение дребезга
- Микросхема подавления дребезга переключателей
1. Аппаратное устранение дребезга
В методе аппаратного устранения дребезга мы используем триггер S-R для предотвращения дребезга цепи при переключении. Это лучший метод устранения дребезга среди всех.
Необходимые компоненты
- Nand Gate IC 74HC00
- Тумблер
- Резистор (10 кОм, 2 шт.)
- Конденсатор (0,1 мкФ)
- Светодиод
- Макет
Принципиальная схема
Работа схемы аппаратного торможения
Схема состоит из двух вентилей Nand (74HC00 IC), образующих SR-триггер. Как вы можете видеть на принципиальной схеме, всякий раз, когда тумблер переключается на сторону А, выходная логика становится «ВЫСОКОЙ». Здесь мы использовали осциллограф для обнаружения дребезга. И, как вы можете видеть на приведенном ниже сигнале, логика смещается с небольшой кривой, а не подпрыгивает. Резисторы, используемые в схеме, являются подтягивающими резисторами.
Всякий раз, когда переключатель перемещается между контактами, чтобы создать дребезг, триггер поддерживает выходной сигнал, поскольку «0» возвращается с выхода вентилей Nand.
2. R-C Debouncing
R-C определяется только своим названием, схема использовала RC-сеть для защиты от дребезга переключателя. Конденсатор в цепи фильтрует мгновенные изменения сигнала переключения. Когда ключ находится в разомкнутом состоянии, напряжение на конденсаторе остается равным нулю. Первоначально, когда ключ разомкнут, конденсатор заряжается через резисторы R1 и R2.
Когда переключатель замкнут, конденсатор начинает разряжаться до нуля, следовательно, напряжение на входе инвертирующего триггера Шмитта равно нулю, поэтому выход становится ВЫСОКИМ.
В состоянии дребезга конденсатор останавливает напряжение на Vin до тех пор, пока оно не достигнет Vcc или земли.
Чтобы увеличить скорость устранения дребезга RC, мы можем подключить диод, как показано на рисунке ниже. Таким образом, сокращается время зарядки конденсатора.
3. Микросхема устранения дребезга коммутаторов
На рынке имеются микросхемы для устранения дребезга коммутаторов. Некоторые из микросхем для устранения дребезга: MAX6816, MC14490 и LS118 .
Ниже приведена принципиальная схема устранения дребезга переключателей с использованием MAX6818.
Итак, здесь мы узнали, как кнопки создают эффект дребезга переключателей и как его можно предотвратить с помощью схем устранения дребезга переключателей .
переключателей – устранение дребезга переключателей – тумблер все еще дребезжит
Спросил
Изменено 10 лет, 1 месяц назад
Просмотрено 9000 раз
\$\начало группы\$
У меня классическая головная боль от дребезга с Arduino. Выключатель предназначен для включения и выключения светодиода. Так что, если я использую кнопку-переключатель (SPDT), она все равно будет подпрыгивать? Может быть, это не будет, так как это не кнопка. Сколько будет стоить использование переключателя? Просто меня попросили сделать этот проект для моей местной лаборатории изготовления.
- переключатели
\$\конечная группа\$
3
\$\начало группы\$
Большинство переключателей или кнопок SPST будут дребезжать, потому что есть только два состояния: контакт замкнут (например, низкий уровень) и контакт разомкнут (высокий уровень через подтягивающий резистор). Это может показаться очевидным, но именно колебания при открытии/закрытии вызывают отскок; достаточно одного раза, чтобы переключатель не работал.
Вы можете устранить дребезг коммутатора с помощью конденсатора, но, поскольку вы используете его с микроконтроллером, дешевле сделать это программно. У меня обычно есть 32-мс (программный) таймер для сканирования клавиатуры, и я принимаю изменение состояния только в том случае, если оно сохраняется в течение двух последовательных сканирований. Это означает, что у вас будет задержка максимум 64 мс, но поскольку кнопка будет управляться вручную, вы не заметите такой короткой задержки.
Вы упомянули кнопку SPDT, и это лучшее решение, если вы хотите сделать это аппаратно.
Но, честно говоря, я не вижу причин не делать это в программном обеспечении, и у вас будет гораздо больше выбора для кнопок SPST, чем для кнопок SPDT.
Если вам нужна кнопка, которая почти не дребезжит, я могу порекомендовать тактовый переключатель Alps SKQG
, который с протестированными мной устройствами имел начальный дребезг менее 10 нс.
\$\конечная группа\$
3
\$\начало группы\$
Ganssle Group написала очень подробный отчет под названием «Руководство по устранению дребезга». В нем автор, Джек Ганссле, взял 18 различных переключателей и нажал на каждый по 300 раз. Он записал результаты, используя осциллограф MSO, чтобы посмотреть на фактический аналоговый сигнал, а также на цифровое представление, чтобы смоделировать то, что увидит микроконтроллер.
Все протестированные переключатели дребезжали по-разному. Некоторые виды хуже других. Некоторые вообще нет. Но даже одинаковые переключатели одного типа дребезжат по-разному.
Идентичные переключатели не были особенно идентичными. Были протестированы две совпадающие пары; каждый близнец отличался от своего брата в два раза.
Так что, если вы собираетесь использовать коммутатор, необходимость устранения дребезга — это просто жизненный факт.
Часть 2 руководства содержит многочисленные методы решения проблемы устранения дребезга.
Обсуждается защелка Set-Reset (SR), упомянутая stevenvh:
А также более дешевый метод RC:
Но, как упоминалось в комментариях и других ответах, если у вас есть микроконтроллер, вам, вероятно, лучше сделать это программно. В руководстве также обсуждаются различные алгоритмы, которые могут быть реализованы.
От очень простого ISR:
До расширенной версии для управления целым портом коммутаторов:
Внимательно прочитайте весь отчет. Как устранить дребезг переключателя — это навык, который стоит иметь и который вы будете использовать на протяжении всей своей карьеры.
\$\конечная группа\$
2
\$\начало группы\$
Все выключатели с сухими* механическими контактами дребезжат. Сумма варьируется. Переключатель SPDT почти всегда ломается перед тем, как сделать, поэтому состояния низкие / открытые / высокие.
Вы МОЖЕТЕ сделать до поломки переключатели SPDT, но даже они могут отскакивать.
*Ртутное смачивание используется в некоторых реле для улучшения способности выдерживать ток. Я думаю, что они могут иметь тенденцию быть свободными от дребезга, но у меня не было реального опыта работы с ними, и они редки, и смачивание ртутью не будет обнаружено в переключателях, которые работали.