URL: https://linuxfr.org/users/niconico/journaux/toute-resistance-n-est-pas-futile Title: Toute résistance n’est pas futile. Authors: Nicolas Boulay Date: 2016年11月16日T11:18:02+01:00 License: CC By-SA Tags: électronique, robotique, diy, résistance et électricité Score: 94 **Dans un circuit numérique, il y a une dose d’électronique analogique. "Malheureusement", penseront certains. Voyons les résistances.**  Si on veut utiliser un microcontrôleur pour un projet de robotique ou de domotique, on doit parfois créer sa propre carte numérique, ou créer une carte de périphérique, connecté à une carte numérique plus dense comme l’Arduino ou la Raspberry Pi. Le but de cet article est de montrer les pièges et embûches à éviter, lorsque l’on essaye d’appliquer la théorie. Une résistance est un bipède, qui n’a pas de sens de branchement, en théorie, mais aussi en pratique. Sa grandeur principale se mesure en ohms (Ω). Elle va de quelques dixièmes d’ohms (mΩ) à quelques gigaohms (GΩ). La petite équation bien connu est U = R * I. Elle décrit une relation entre la tension (qui est un potentiel comme la gravité) qui traverse la résistance, et le courant (qui est un flux, un débit). C’est comparable à une chute d’eau sur un torrent. Si la rivière est large (résistance faible), le courant est fort, si la rivière est étroite (résistance forte), le courant est faible. La hauteur de la chute représente la tension aux bornes de la résistance. Une résistance transforme de l’énergie électrique en énergie thermique. Ce mode de fonctionnement permet de lier le courant et la tension. Un peu comme si la pente d’une chute d’eau permettait d’estimer la hauteur, en regardant le débit, ou à estimer le débit, en connaissant la hauteur de la chute.  La puissance typique d’une résistance traversante est le quart de watt, cela veut dire que la résistance ne peut pas dissiper plus que cette énergie, sans être abîmée. Les petites résistances CMS (composant monté en surface) peuvent être encore plus fragile. Il existe des grosses résistances, de plus de 10 cm de long, insérés dans des radiateurs en métal, qui supporte la dissipation de plusieurs dizaines de watt.  (licence CC – Wikipédia) La définition de l’énergie électrique consommé (la puissance) est P = U * I, quel que soit le composant électronique. Donc on a P = R*I2 ou P = V2/R pour une résistance. Selon l’application, on pourra calculer facilement la puissance dissipée maximum. Cette formule permet de comprendre pourquoi sur un amplificateur audio dont la tension est fixée (environ 30V pour un ampli "100W"), la demande de puissance est plus forte avec des haut-parleurs 4 ohms que 8 ohms (P=V2/R donc la demande de puissance est doublé). Ou à l’inverse l’emploie de haut parleur 4 ohm permet de limiter la tension de l’amplificateur, tout en gardant la même puissance, comme dans les voitures, qui ont une batterie 12V. Ou comprendre pourquoi, un casque audio hifi de 600 ohms a besoin d'un ampli « plus puissant » qu'un casque de 32 ohms. En fait, il a besoin d'une tension plus élevée, pas de plus de « puissance ». Le code couleur classique a un peu évolué avec l’augmentation de précision disponible. Un chiffre est ajouté sur certaine résistance sous forme d’un anneau de couleur de plus, et il existe des grades de précision de 1% et moins (0.01% existe). **Seule** Une grosse résistance peut être vue comme un générateur de courant. U = R.I => I = U/R si U varie cela donne i = U/R + deltaU/R, plus R est grand moins l’intensité varie avec une modification de la tension.  On les voit souvent dans les alimentations de LED dont le fonctionnement nominal est spécifié en ampère (20mA typiquement). Mais c’est une mauvaise alimentation car de l’énergie est perdue en chaleur, le "rendement" est faible. Une résistance permet aussi d’imposer une tension de "rappel" sur un fil, "pull" en anglais. Cela permet de mettre une tension sur un fil qui est normalement coupé, ou en court-circuit comme avec un interrupteur. Un circuit ouvert (ou "haute impédance") a peu de sens dans la communication avec du numérique, il faut une tension (la tension d’alimentation, zéro ou une tension intermédiaire dans le cas de l’usage d’un convertisseur analogique numérique). S'il y a une connexion par la résistance entre le fil et la masse, on appelle cela une "pull down", et si la connexion a lieu entre le fil et le "+" du circuit, on appelle cela une "pull up".  Wikipédia Au repos, l’entrée est à la tension d’alimentation. Quand l’interrupteur est fermé, l’entrée est mise à la masse et la résistance consomme du courant. On voit bien que si la résistance est faible, elle va consommer beaucoup de courant, jusqu’au court-circuit entre l’alimentation et la masse. Ce genre de résistance est typiquement de 10 ou 100 kΩ voir plus, pour limiter cette consommation. Dans une carte comportant un convertisseur analogique numérique et un capteur comme une photodiode, le courant généré par le capteur peut être très faible. Dans le cas d’une liaison analogique, le signal (ici, la tension) est donc sensible aux perturbations électromagnétiques (le 50hz du secteur, un moteur à courant continu, une alimentation à découpage, etc.). Si on rajoute une résistance de pull sur la carte numérique, on force de la consommation électrique dans la liaison, ce qui diminue l'influence du « bruit ». Comme la photodiode ne peut pas fournir ce courant, il faut rajouter un amplificateur opérationnel en mode suiveur sur la carte capteur. Il réplique exactement la tension, en fournissant tout le courant demandé. Si on ne met pas de résistance, le courant est toujours faible et la tension vu par la carte numérique, peut fluctuer, car les entrées ont une impédance très élevée, et donc une perturbation de faible énergie peut modifier la tension présentée aux entrées. Avec la résistance, le câble de liaison entre les 2 cartes, même s’il fait antenne, ne devrait pas être perturbé le signal qu’il porte sous forme de tension. Une résistance en série permet de limiter le courant en cas de court-circuit. Imaginez une connexion série qui sort directement d’un microcontrôleur ; vous prévoyez un connecteur avec la masse, et les 2 fils de transmission série (Rx et Tx, de la norme RS232, celle que vous avez sur les vieux PC, où l’on pouvait brancher un modem). Si jamais le microcontrôleur émet, et que le fils d’émission est en contact avec la masse, il y a un court-circuit. L’intensité est maximale, et la « pin » de sortie du microcontrôleur fini par griller. Si on rajoute une résistance de 100 ohms, en série du fils d'émission entre le microcontrôleur, et le connecteur, en cas de court-circuit, la résistance se retrouve entre les 2. Sur un circuit 5V, on a 5V/100 Ω = 10 mA soit l’ordre de grandeur maximum de ce genre de technologie (entre 35 et 5 mA, et 15 le plus souvent). La pin ne pourra jamais griller. **À plusieurs** Les montages en série ou en parallèle sont assez connus. Dans le cas en série, les 2 valeurs de résistances s’additionnent. Dans le cas parallèle, c’est plus compliqué mais si les 2 valeurs sont identiques, cela revient à diviser par 2 la résistance (1/R = 1/R1+1/R2). Il faut savoir qu’une résistance qui grille a sa résistance qui augmente : cela peut sauver un circuit. Ainsi, sur un montage sensible, si une résistance grille, elle augmente jusqu’à aller jusqu’au circuit ouvert (coupé). S’il y a 2 résistances en parallèles, la deuxième peut prendre le relais. Utiliser 2 résistances permet aussi d’obtenir des valeurs exotiques, ou augmenter par 2, l'énergie que l’on peut consommer. Le montage en diviseur de tension peut être utile pour avoir une tension particulière à disposition. Il s’agit de 2 résistances séries entre la masse et l’alimentation, dont on récupère le point milieu. La tension est due à une égalisation du courant entre les résistances (V = Valim*R2/(R1+R2)). C’est une mauvaise alimentation car si on consomme trop de courant, la tension tombe. Elle tombera d’autant plus vite que les résistances sont fortes, car trop peu de courant circule dans R2.  Wikipédia Ce montage est utile, par exemple, pour mesurer la tension d’une batterie 12V avec un microcontrôleur alimenté en 5V. Il suffit de diviser la tension par 2.4. Le microcontrôleur pourra mesurer la tension sans voir jamais plus de 5V à ses bornes. Le courant est ici très faible, ce qui n'influence donc pas la mesure.  Wikipédia Le pont de Wheatstone permet de mesurer précisément une résistance inconnue à l’aide d’autres résistances. Rx = R3/(R2*R1) quand il n’y a pas de courant qui circule entre le point D et B. On peut le mesurer par un galvanomètre. On peut aussi s’en servir pour mesurer de faibles variations de résistance d’une résistance variable, ou encore de faibles variations de consommation électrique d’un composant qui est vu au premier ordre comme une résistance; par exemple, une puce de carte à puce, pour faire de l’analyse de consommation (SPA, DPA). **Avec des circuits CMOS** Dans le cas de circuit sensible, par exemple, équipé d’ampli-op de précision, on veut pouvoir protéger ces circuits d’une surtension. Si la consommation est faible, on peut ajouter une résistance faible en série entre l’alimentation et la pin d’alimentation du circuit. En cas de surtension, une partie de l’énergie sera absorbée par la résistance et cela le protège. Les pull up et pull down sont utilisés pour fixer une valeur sur les entrées numériques non utilisées. En effet, sans connexion, la valeur du pad d’entrée change au gré des perturbations électromagnétiques, et à chaque passage du seuil, le transistor interne bascule et cela entraîne de la consommation électrique inutile, voir sa destruction, si cela part en oscillations incontrôlées. Les composants CMOS modernes peuvent avoir des pads complexes. Les entrés ont de très fortes valeurs de résistances internes (consommation donc très faible) et une capacité parasite toujours plus faible. Cette capacité est à "remplir" pour faire basculer la tension d’entrée. Cela détermine la vitesse de la connexion possible et la consommation électrique associée. Ses pads comportent parfois des résistances de pull intégré. Il ne faut donc pas rajouter une pull up, en plus d’une pull down interne. Cela créé un diviseur de tension, qui au mieux, fait consommer inutilement le circuit. Il faut faire aussi attention aux puces, dont la majorité des pins sont mises en sorties au reset pour éviter justement, le problème lié aux entrées libres qui bagotent. La sortie est ensuite configurée en entrée par une routine d’initialisation. Si une résistance de pull est présent, la puce va fournir du courant inutilement avant l’initialisation. Cela parait évident, mais ce n’est pas forcément une information facile à avoir sur un circuit de plusieurs centaines de pins. Les transmissions numériques basiques à base de signaux "carrés", présentes des "fronts" très raides. Ces fronts représentent des changements rapides entre les 2 tensions. Ses fronts sont donc composés de fréquences très élevées, qui peuvent rayonner ensuite dans le reste du système. Ce changement rapide de tension implique aussi un pic de courant pour remplir la capacité parasite de l’entrée numérique. Si on rajoute une résistance en série sur une telle connexion, cela créé un filtre passe-bas avec la capacité parasite de l’entrée. En effet, la présence de la résistance limite le courant qui peut être envoyé pour remplir la capacité parasite, ainsi la tension monte plus lentement, le front est moins raide et les fréquences utilisées plus faibles. Cela permet aussi de limiter les appels de courant, dans l’alimentation général. Les appels de courant sont les pointes de consommation de l’électronique CMOS. Une telle technologie consomme peu en statique mais beaucoup en dynamique surtout au niveau des entrés/sorties. Je parle des technologies accessibles aux hobbyistes, et non des derniers core i7, où la consommation de fuite devient prépondérante. Un tel appel de courant peut venir d’IO numérique de "puissance", qui communique rapidement à distance. **En capteur** En robotique ou domotique, on cherche à avoir des informations du monde extérieur. Les capteurs sont rarement parfaits, et on est toujours à la recherche d'éléments fiables et peu coûteux. Pour relier le capteur au système, je conseille d’utiliser le plus souvent des entrées convertisseurs analogique au lieu de pures entrées numériques, si cela peut éviter la création de montage complexe de détection de seuil, de comparateur ou de comparateur à hystérésis, qui ne seront même pas programmable. Ces montages impliquent souvent des amplis-op, des composants passifs et des potentiomètres pour régler les seuils. NdM: image de potars perdue En rentrant le plus vite possible dans le monde numérique, il est possible de faire des anti-rebonds et des seuils complexes de façon logiciel. Le changement d’état d’un interrupteur n’est jamais propre, il fournit une oscillation, appelé "rebond", qui pourrait être interprété comme plusieurs mouvements au lieu d’un seul. Un potentiomètre est une résistance variable mécanique montée en pont diviseur et relié à un convertisseur analogique numérique d’un microcontrôleur. La valeur numérique lue est proportionnelle à l’angle de l’axe. Un doigt de métal se déplace sur un morceau de matériaux résistant (graphite). Il existe des boîtiers multi-tours, plus précis. Pour les plus courants, la tige de sortie ne fait pas un tour complet. Cela peut être un bon moyen de faire un capteur d’angle. J’en ai utilisé pour seconder des servomoteurs dans un robot. Un servomoteur force pour faire respecter sa consigne mais, quand il ne peut pas la respecter, le robot doit le savoir. Ce genre de capteur est précieux, car peu sensible aux perturbations, peu couteux (par rapport aux roues codeuse), facile à mettre en œuvre et assez précis. La précision de la mesure provient du montage mécanique, mais aussi de la précision du potentiomètre lui-même. Il est possible de mesurer les valeurs extrêmes du potentiomètre et ne pas prendre comme référence sa valeur nominal. L’idée est que la variation de l’erreur dans le temps est faible, par rapport à l’erreur de base elle-même (dû aux moyens de fabrication). Par contre, de part la nature mécanique du montage et du frottement, un tel système ne doit pas être très durable. **Multi-boutons** Il est possible de lire l’état de 6 boutons avec une seule entrée convertisseur analogique/numérique. En mettant en série 8 résistances, on crée un grand diviseur de tension (0V, 1V, 2V, 3V, 4V, 5v par exemple). Chaque bouton poussoir met en contact un des points de l’échelle. La lecture de la valeur de la tension mesurée donne le bouton pressé. Par contre, on ne peut détecter qu’un seul bouton appuyé à la fois. Il est possible de détecter plusieurs boutons avec une échelle "R2R", qui est aussi utilisée pour faire des convertisseurs numérique analogique. L’idée est d’avoir une échelle de tension comme 0, 2.5V, 1.25V, 0.625V (avec des poids de résistance multiple de 2^n). Même avec ces tensions additionnées, on peut retrouver quels boutons sont appuyés. Par exemple, si on lit 1.875V, cela ne peut être que la connexion de 1.125V+0.625V. La limite typique est autour de 8, ensuite, il y a un problème de précision des résistances (2^8 = 256 soit une précision de 1/256 ce qui revient à une précision inférieure à 1% pour chaque résistance). **Comment choisir les valeurs** Les résistances ne sont jamais parfaites. Il y a toujours des effets inductifs parasites, tout comme un fil. Cet effet inductif est faible donc cela ne se voit qu’à haute fréquence (signal de fréquence bien au-delà du Mhz). Cela veut dire qu’une résistance voit sa valeur résistive augmenter avec la fréquence. Cette inductance parasite dépend en gros de la taille de l'élément, plus il est gros, plus l’effet est présent. Plus le courant est important et varie fortement, plus l’effet se fait sentir également (U=Ldi/dt, la tension aux bornes de la bobine est proportionnel aux variations de courant, et à l'inductance parasite). Comment choisir la valeur des résistances quand on a le choix ? On cherche à diminuer la consommation du circuit (augmentation des valeurs), diminuer l’influence de parasites (diminution des valeurs). Évitez d’avoir 36 valeurs différents pour une même carte, permet de gérer une liste de composants plus petite, il existe des "séries" de valeurs, plus ou moins courantes et donc + ou – chère. Voila pour notre petit tour dédié à l’usage des résistances dans des montages principalement numériques. En résumer, nous venons de voir que les résistances avaient une grandeur en Ohms, mais aussi une puissance de dissipation maximale, et l’existence de leur résistance/inductance parasite. Vous pouvez retrouver une activité normale (comme regarder les réseaux sociaux). (images Wikipédia et personnelle)