Дабл клик — альтернативный взгляд, или лечим грызуна химикатами
Как и многие я столкнулся с неприятным поведением домашнего грызуна, и решил поискать причины, методы лечения, и профилактики.
Название для причины нашлось сразу — дребезг контактов, а в качестве лечения предлагают весь спектр достижений народной медицины — от замены и модификации подгибанием контактов, замены кнопок на новые, до изменения электрической схемы с добавлением диодов, конденсаторов, триггеров Шмидта (похоже, что советчики немного не понимают принцип работы) и RS-триггеров (мне, кстати, даже понравился этот вариант как наиболее максималистический).
Дре́безг конта́ктов — явление, происходящее в электромеханических коммутационных устройствах и аппаратах (кнопках, реле, герконах, переключателях, контакторах, магнитных пускателях и др.), длящееся некоторое время после замыкания электрических контактов. После замыкания происходят многократные неконтролируемые замыкания и размыкания контактов за счет упругости материалов и деталей контактной системы — некоторое время контакты «подпрыгивают» при соударениях, размыкая и замыкая электрическую цепь.
Но тут что-то не сходится — раньше такого не было, а контакт не мог стать более упругим (в потерю упругости я ещё поверю)
в добавок особенность даблклика в моём случае в том, что если давануть посильнее происходит мультиклик! То есть однозначно отпадает вариант с потерей упругости в качестве причины, и подпрыгивание контактов.
Надо смотреть самому!
Первичное вскрытие показало отсутствие посторонних предметов внутри грызуна.
Появилось жгучее желание посмотреть на даблклик с точки зрения контроллера. Рисовать схему по печатной плате было лень, а поиски общей земли тыканьем щупа ничего не дали — похоже кнопка не связана с землёй, поэтому цепляем наобум (вообще-то так делать не стоит, но это усб он много тока в случае кз не выдаст).
А вот и результат:
Переходной процесс почти 0,001 секунды.
Разобрав кнопку в попытке выяснить что-же с ней не так, нахожу в контакте яму!
Понаблюдав за движениями контактов уже после клика — острый контакт как бы перекатывается в ямке — пришёл к выводу, что виноваты окислы.
К сожалению попытки заснять видео ничего толкового не выдали, а рисовальщик из меня тот ещё.
Мышь чертовски древняя, а контакт выглядит, так как будто не окислился, а оплавился,
что немного озадачивает, и частично объясняет, почему я столкнулся с даблкликом только в новых мышках — в случае регулярного оплавления толщина оксидной плёнки будет более менее постоянной) проверить даблклик в древней мышке не представляется возможным — она умерла (со всех контактов на осциллограф идёт 125 килогерц), а смотреть на дребезг и не знать есть даблклик или нет, не интересно. После некоторых ковыряний с настройками отображения получилось что-то в этом роде
125 кгц промодулированные на 4,97 кГц, чтобы это могло быть? Скорее всего, умер контроллер и начал генерировать.
конечно, контакт мог подплавляться и в процессе умирания мышки.
В отличии от новых кнопок, эту чертовски трудно собрать обратно, как было.
Ямка по форме повторяет контакт — > давление меньше — > не хватает давления продавить плёнку окислов + контакт перекатывается по ямке, где-то окислов больше, где-то меньше, вот контакт и пропадает, менять кнопку или делать RS триггер?
Мы пойдём своим путём
Зрители ничего не замечают, показ продолжается, а тем временем из шкафа появляются химикаты,
1)Флюс Ф-64 «термоядерный» флюс — используют для пайки алюминия.
2)Абсолютный изопропиловый спирт — дешёвый заменитель этилового — хорошая штука для протирки (внимание «тонким слоем» наносить нельзя).
3)Дистиллированная вода — использую для заправки контура СВО, промывки электроники и когда химичу, объёмы мне нужны не большие, поэтому проще купить, чем делать свой дистиллятор.
4)силиконовое масло — к нему мы вернёмся позже. Им я тоже заправляю контур СВО, но для того чтобы вода не испарялась.
План действий
— флюс — удаляем окислы
— вода — удаляем флюс
— спирт — удаляем воду
— масло — удаляем воздух (о, как)
Масло защитит контакты от воздействия атмосферы, почему силиконовое? Силиконовое масло с индексом 400+ практически не испаряется, и под действием больших давлений превращается в оксид кремния — поэтому им смазывают только слабонагруженные пары трения, если прикинуть наш случай высоконагруженный и оксид кремния должен ускорить протирание и постоянно обновлять контакт — звучит вроде бы не плохо, а ещё оно у меня просто было.
Пора проверить
Никакого дребезга. (Тут я увлёкся поисками пропадания контакта значительно позже нажатия кнопки, и ничего не найдя, сохранил скриншот не заметив что цена деления уже великовата, заметил сию оплошность сильно позже, но даже так дребезг можно было бы увидеть если бы он был — пикдетектор включен и спад был бы нарисован жирной линией)
Почти полгода спустя, не так хорошо как сразу после процедур, но даблклика пока нет.
P.S. Изначально планировалось сделать RS-триггер, и не делать статью, но лень и желание проверить гипотезу возобладало, в результате всё работает, фотки и осциллограммы просто скинул другу по скайпу и оставил в архиве, прошло время, а даблклик так и не появился — можно сказать, что метод в какой-то мере действенный, потом увидев вопрос про чистку нежных контактов понял, что такой опыт может быть кому то полезен. Ценник реактивов на фото в 1,5 раза превышает цену мышки, но они у меня просто были. В процессе разборки кнопки было произнесено много не цензурных слов, из-за маленьких деталей которые то и дело приходилось искать на ощупь (спасибо ковру за то, что ворс не высокий).