Traiter le syndrome du double clic

Il était une fois une souris, et son nom était Defender MM-525. Elle a constamment tiré la dragonne de sa souris - cliqué sur des liens, fait défiler des pages, déplacé le curseur. Mais une fois qu'un malheur s'est produit - au lieu d'un seul clic, elle a commencé à en faire deux, voire plus. Parfois, vous souhaitez suspendre une vidéo sur YouTube, mais à la place, elle s'ouvre en plein écran. Ou vous sélectionnez le texte - et au dernier moment, la sélection est réinitialisée. Il est clair que cela ne pouvait pas continuer.



Que faire? Internet offre les options suivantes:

  • . , , Windows, .
  • .
  • - . — .
  • . , .


Mais ma joie a été de courte durée - quelques jours plus tard, un double clic est revenu. Cerveau de Porakinine, j'ai décidé que c'était une question de vibrations mécaniques, et j'ai collé un ruban épais sous le bouton. Et encore une fois, cela n'a aidé que quelques jours. Il est devenu clair qu'une solution radicale devait être recherchée. Et pour cela, vous devez d'abord comprendre ce qui se passe.

Comment les boutons sont-ils généralement fabriqués dans l'électronique numérique? Quelque chose comme ceci: au- dessus se trouve l'alimentation, en dessous de la masse, à droite se trouve un fil à l'entrée du processeur. Et à l'entrée, il a une grille d'un transistor à effet de champ. Dans notre cas, nous pouvons supposer qu'il s'agit simplement d'un voltmètre idéal. La tension est supérieure à celle spécifiée - cela signifie que le processeur tire une conclusion, c'est une à l'entrée, et si elle est inférieure, alors zéro.

image



Mais si l'entrée du processeur est parfaite, le commutateur ne peut pas être considéré comme tel, avec tout le respect que je lui dois. Lorsque l'interrupteur se ferme, cela signifie qu'une pièce de métal est en contact avec une autre pièce de métal. Mais entre les états «off» et «on», il y a ce moment gênant où ces deux pièces se touchent à peine. Et s'il y a un contact maintenant, alors en une microseconde, il peut disparaître, puis récupérer à nouveau. Et parfois, même un contact en frappe un autre et, selon les lois de Newton, rebondit sur lui, ou même plusieurs fois. Que pensera maman processeur? C'est vrai - il pensera que l'interrupteur a été allumé, éteint, allumé, éteint, allumé, éteint, etc. Bien que "en fait", il n'ait été allumé qu'une seule fois. Ce phénomène a même son nom - rebond de contacts .

Attendez, ça ne vous rappelle rien? Oh oui, un incident similaire vient d'arriver à notre souris! Ainsi, notre hypothèse de travail sera que les développeurs de la souris ne se souviennent pas du tout de la possibilité de rebond, ou que leurs efforts pour le combattre ont été vains. Et nous devrons combattre cet ennemi pour eux.

Nous notons deux choses. Premièrement, notre vitesse de clic est limitée. Il est peu probable que nous cliquions sur la souris plus de dix fois par seconde. Deuxièmement, les commutateurs tentent de faire passer le moment du rebond le plus rapidement possible, et certainement dans un dixième de seconde, le bouton de la souris aura le temps de se calmer. Ainsi, notre tâche consiste à séparer les clics haute fréquence de ceux basse fréquence, c'est-à-dire que nous avons besoin d'un filtre passe-bas. La façon la plus simple de le faire est de souder le condensateur:



c'est ce que nous allons faire.

Le voici - notre bouton:



Mais c'est le même, mais sans le couvercle: Nous



signons les numéros de contact pour plus de commodité:



Le principe de fonctionnement est évident - au repos, les contacts 1 et 3 sont fermés, lorsque le bouton est enfoncé pendant un certain temps, tous les contacts s'ouvrent, puis les contacts 1 et 2. Lors de la compression, la même chose se produit dans l'ordre inverse.

Nous avons ouvert le bouton non pas pour plier quelque chose, mais pour voir de première main comment cela fonctionne, et si nous avons de la chance, alors regardez le rebond. Et l'appareil photo Samsung WB2000 et l'objectif I96U nous y aideront. L'appareil mentionné peut enregistrer des vidéos à une fréquence de 1000 images par seconde. C'est vrai, pas aussi chaud que, mais, comme on dit, que riche.

La configuration la plus difficile pour la prise de vue à grande vitesse:



Et, en fait, le film:



Comme vous pouvez le voir, le contact parvient à parcourir toute la distance prescrite en cinq images (soit 5 millisecondes), et aucun rebond visible n'est observé. Peut-être que le rebond pouvait être vu sur l'oscillogramme, mais, malheureusement, je me souvenais que je n'avais un oscilloscope que lorsque la souris était déjà assemblée. Mais d'une manière ou d'une autre, il est clair que le temps de rebond caractéristique est nettement plus court que le temps de clic minimum, et que la frontière entre eux s'étale à environ cinq millisecondes.

Digression lyrique. Comment ferais-je une souris si j'avais un interrupteur de la conception ci-dessus? Mais comme ça:



Pas cher et joyeux. L'entrée processeur n'est pas seulement un voltmètre idéal, c'est aussi un condensateur à plusieurs picofarads. Donc, dans ces millisecondes, jusqu'à ce qu'un contact vole du deuxième au troisième, la tension n'aura pas le temps de changer sensiblement, et lorsqu'elle arrivera, le condensateur se chargera et même si le contact saute, il ne pourra pas se décharger, donc il n'y aura pas de rebond. Eh bien, à moins qu'il ne saute au contact opposé, mais, comme nous l'avons vu, c'est une situation extrêmement improbable.

Mais les valeureux développeurs de souris, comme nous le verrons, ne recherchent pas des moyens faciles.

Nous mesurons notre interrupteur avec un multimètre. Premièrement, nous constatons qu'aucun des contacts n'est court-circuité. En tous cas. Au repos, au deuxième contact, 2,5 volts de puissance, au repos - zéro. À l'état enfoncé, tous les contacts ont zéro. Cela suggère que les développeurs n'ont pas suivi mon chemin, et le deuxième contact sert apparemment d'entrée au processeur, et le troisième contact n'est pas utilisé du tout. Mais le plus drôle, c'est qu'après avoir appuyé sur le bouton, le zéro sur le deuxième contact reste pendant cinq secondes! Malheureusement, le mécanisme de travail et les avantages d'une telle solution et la motivation des développeurs restent un mystère pour moi. J'espère que quelqu'un de gens bien informés m'éclairera.

Ainsi, tout notre schéma harmonieux de lutte contre le rebond est brisé contre un mur blanc d'incompréhension des solutions de circuits modernes. Mais, en fait, ne vous arrêtez pas lorsque la chose est presque terminée. Nous allons donc souder sans comprendre.

Nous allons souder le condensateur entre les contacts 1 et 2. Et pour mesurer l'effet, nous utiliserons un script comme celui-ci , en le corrigeant légèrement pour qu'il réponde à la fois à la pression et à la pression d'un bouton, et supprime les limites de temps artificielles.

Un condensateur de 0,1 μF donne un temps de clic de 600 ms. Autrement dit, quelle que soit la vitesse à laquelle nous piquons, le bouton «sortira» au plus tôt 0,6 seconde. C'est un peu trop. En utilisant la méthode d'extrapolation linéaire, nous supposons que 3,3 nF donnera un temps de 20 ms. Nous soudons - et nous voyons un temps d'environ 100 ms. Mais ce temps comprend également le temps de mouvement du doigt lui-même, et sans condensateur, ce n'est pas beaucoup moins. Après avoir essayé quelques dénominations supplémentaires, j'ai décidé de m'arrêter à 3,3 nF.

Puisqu'il n'y avait pas de condensateurs SMD, j'ai dû en souder un à grandes jambes:



c'est tout, en fait. La souris a été assemblée avec succès et continue son service simple mais responsable. J'espère que la recette ci-dessus sera utile non seulement pour ma souris.

UPD:J'ai complètement oublié. Il y a un autre fléau de boutons de souris qui n'est pas apparu dans la discussion jusqu'à ce que je m'en souvienne. Cela ressemble à ceci - vous devez appuyer sur le bouton avec plus de force, le clic n'est pas aussi clair qu'auparavant, et parfois le bouton envoie un signal à relâcher pendant qu'il est enfoncé. Mais il n'y a qu'une seule solution - le plastique qui appuie sur l'interrupteur peut être effacé au fil du temps, puis une si belle dépression s'y forme qui ne permet pas d'appuyer complètement sur le bouton. Il est traité simplement: il faut modifier ce plastique avec une lime pour qu'il redevienne plat et parallèle au bouton, ou y coller du plastique fin dans le même but.

Il peut également sembler que je suis contre les méthodes «alternatives» à celles décrites dans l'article, mais ce n'est pas le cas. Mais chaque méthode a sa propre portée. Si la souris est conçue pour que le moindre rebond soit perçu comme un clic - vous nettoierez vos contacts et / ou changer le commutateur chaque semaine.

UPD2: Il s'est avéré que tout n'est pas si simple. Lisez la suite de l'histoire!

Source: https://habr.com/ru/post/fr383229/


All Articles