switch + resistance

bonjour a tous , je commence juste dans l’electronique et j’essaye de comprendre une chose ,

pourquoi ajouter une résistance quand on branche des Switch ?

Switch ?
C'est quoi cette bête ?
Et si on parlait en français ?
Parles tu d'un interrupteur manuel ou d'un relai électromécanique ?

Le plus simple c'est encore de lire le message épinglé "Règles du forum francophone" qui donne des conseils pour fournir les renseignements indispensables pour qu'on puisse aider.
Là tu es trop vague.

Un lien (cliquable avec l'icone en forme de chaîne) vers le matériel dont tu parles et tu aura une réponse rapide et adaptée à ton besoin.

Bonsoir

Ca dépend de ce que tu appelles "toujours".

Dans le cas ou tu veux faire une entrée qui vaut 0 ou 1, tu ne peux pas te contenter de brancher une borne de l'interrupteur à 5V et l'autre à 0 V. Sinon tu créerais un court circuit dès que tu appuies sur l'interrupteur. C'est pour ça qu'il te faut une résistance en pull up (entre 5V et l'interrupteur) ou pull down (entre l'interrupteur et 0V). C'est un des montages les plus courants avec arduino.

Mais en général, tu n'as pas besoin de résistance. Par exemple, sur une lampe de chevet, tu branches directement ton interrupteur entre un fil de la prise et la douille de l'ampoule.

Bref ca depend beaucoup de ce que tu veux que fasse ton circuit.

Je te conseille de lire :
OpenClassRoom bouton poussoir

(Et bien sur de suivre un cours en ligne sur arduino, voire l'électronique)

je vais voir ca .j'ai vraiment un problème de logique Electronique
j'ai lu l'article , et je comprend mieux , et surtout avec le pull up et down integré de l'arduino , en fait c'est pas trop pour une question de cour circuit mais plus de courant qui ce balade et qui n'est pas franc pour de la lecture sur l'arduino !

en gros c'est pour 2 contacteurs fin de course sur un moteur .

https://images-na.ssl-images-amazon.com/images/I/61X5Me72seL.SL1100.jpg

Déjà dans les microcontrôleurs qui équipent les cartes arduino il n'y a pas de résistance de tirage à la masse (Pull-down) mais que des résistances de tirage à l'alimentation (Pull-up).

Ensuite les pull-up des microcontrôleurs font entre 30k et 70k selon le lot de fabrication.

Utilité de ces résistances :

Quand l'interrupteur est ouvert s'il n'y a pas de résistance qui fixe un potentiel le câble de liaison avec le micro est "en l'air", il fait antenne de réception et capte wifi, 3 et 4G, sans oublier le micro onde de la cuisine et c'est complètement instable.
La résistance placée entre l'interrupteur et l'alimentation fixe un potentiel (Vcc) et le système devient stable.

Dans l'exemple Openclassroom la del (Led) c'est du gadget. En pratique quand on n'utilise pas les pull-up du micro on met une résistance de 10k.
Coté courant aucune inquiétude: le bouton au repos il n'en passe pas, le bouton appuyé il passe 0,5 mA.

Par contre il y a un autre problème : les rebonds.
Ben oui un contact c'est de la mécanique et il va y avoir des rebonds qui sont à traiter sinon ce sera le foutoir.

Solution 1, celle de l'électronicien : on ajoute un condensateur de 100 nF en parallèle des contacts.
Au repos (contact ouvert) le condensateur est chargé. Le condensateur se charge lentement à travers la 10k (ou la pull-up du micro).
A l'appui sur le bouton il se décharge rapidement car le contact le court-circuite. Puis il y a un rebond et le contact s'ouvre et le condensateur commence à se recharger mais lentement à cause de la 10k puis la lame refait contact et le condensateur se décharge. Les rebonds étant rapprochés il n'a pas le temps de recharger que le rebond suivant le décharge.
(Voir charge et décharge d'un circuit RC)
L'information est disponible immédiatement.

Solution 2 , celle du programmeur qui n'aime pas ajouter des composants électroniques : des bibliothèques logicielles existes, elles sont toutes basées sur le même principe : on retarde la prise d'information le temps que les rebonds se terminent.

Ma solution préférée : je suis un retraité de l'électronique :grin: .

68tjs:
Solution 2 , celle du programmeur qui n'aime pas ajouter des composants électroniques : des bibliothèques logicielles existes, elles sont toutes basées sur le même principe : on retarde la prise d'information le temps que les rebonds se terminent.

Non! Ce sont les programmes mal foutus qui font ça.
On prend l'information immédiatement et on ne prend plus d'information pendant un certain temps (le temps maximal des rebonds).

Ok mais ne faut-il pas dans ce cas utiliser les interruptions (à part un programme simple on ne peut pas se baser sur un temps de loop court) ?
Si oui il faut en avoir autant de disponibles que de boutons poussoir.
C'est possible avec un simple 328p et les interruptions sur les ports (PCINT) disponibles sur toutes les E/S mais leur traitement n'est pas direct.

C'est valable aussi bien sur interruption que par polling.
Bien sur dans le cas du polling on a un retard qui est au maximum la période du polling, mais qui est exactement le même si on a un anti-rebond hard.

mais la on parle d'une tres faible unité de temp sur le rebond non ?

Genre moi pour arrêter un moteur ça na pas trop d'incidence , c'est plus pour des choses très précises je pense ?

Tu as raison, en général on n'est pas à 10 ou 20 ms près.
Par contre si le switch sert à faire un zéro du moteur par exemple, il faut avoir le temps de contact précisément et surtout très répétitif.

moi pour ma fonction j'aurais un capteur Haut et Bas , pour le faire stopper et repartir dans l'autre sens , donc je ne pense pas que cela affecte quelque chose .