Problème tension résiduelle Arduino nano

Bonjour, j'ai un problème de tension résiduelle sur ma carte Arduino Nano.
Je souhaite piloter un relais via les information d'un potentiomètre jusque là pas de problème le programme est fait.
Par contre quand je suis sur la plage du potentiomètre où je veux que le relais ce coupe cela ne fonctionne pas car j'ai une tension sur le pin13 alors que je lui demande d’être en "Low".
Avez vous une solution pour cela ?

Voici mon programme :

void setup() {
 pinMode(A0, INPUT);
 pinMode(13, OUTPUT);
}

void loop()  {
 while (1)   {
   if 
   (analogRead(A0) < 370) {
     digitalWrite(13, LOW);
   }
   else {
     digitalWrite(13, HIGH);
   }
   if (analogRead(A0) > 778) {
     digitalWrite(13, LOW);
   }
   else {
     digitalWrite(13, HIGH);
   }

 }


}

Merci de votre aide

Bonjour

Donner le schéma montrant comment le relais est raccordé
Il me semble que la diode electroluminescente de la carte Nano est aussi raccordée en 13

Bonjour,

Sur une nano la pin 13 est reliée à une led avec une résistance au GND, mais ça ne devrait pas perturber la sortie, surtout à LOW.
Je rejoins al1fch, sans le schéma impossible de te répondre.

al1fch:
Bonjour

Donner le schéma montrant comment le relais est raccordé
Il me semble que la diode electroluminescente de la carte Nano est aussi raccordée en 13

Il me semble qu'utiliser cet pin 13 peu poser des soucis a cause de la presence de la led,
Déplace cet entrée sur une autre pin, ca devrait aller mieux.

Borne S du relais -> Pin D13 arduino
Borne + du relais -> Alimentation 5 V (la même que l'Arduino)
Borne - du relais -> Masse ( la meme que l'Arduino)

Signal potentiomètre -> Pin A0

Arduino Alimentation 5 V

Quand tu parles relais c'est un composant ou un module relais?

Une sortie ne peut fournir que 20mA. Tu es sur que ton relais consomme moins de 20mA? De plus il faut une diode de roue libre.

J'ai essayé sur le pin D12, j'ai toujours le même problème je n'arrive pas a un tension de 0V j'ai toujours une tension de 1.720V présente. De ce fait mon relais ne coupe pas.

Mon relais est un module relais, et la diode de roue libre irait a quel niveau ?

Merci

La diode de roue libre est au niveau du relais. Si c'est un module relais elle est déjà intégrée.

Tu as un lien vers ton module relais?

voici le lien du module relais :

Il y a des choses bizarres dans ton programme
Par exemple si digitalRead(A0) est < 370 le premier if met la sortie à LOW et le 2eme if met la sortie à HIGH.

Je souhaite commander mon relais que sur une certaine plage de mon potentiomètre donc entre 370 et 778, en dessous et au dessus de ces valeurs je veux que mon relais ne soit pas alimenté.

Tout simplement:

void loop()  {
  int val = analogRead(A0);
  if (val >= 370 && val <= 778)
    digitalWrite(13, HIGH);
  else
    digitalWrite(13, LOW);
}

D'accord, j'essaye ça et je te dis le résultat merci .

Apres essai cela fonctionne.
Merci beaucoup pour votre aide.
A bientôt

Super! :slight_smile:

J'éviterais de mettre le 230V sur ce relais. L'isolement entre la partie puissance et la partie basse tension me semble assez faible.
Le contact central du bornier de sortie flirte dangereusement avec les broches d'entrée, il me semble.

je confirme, j'ai la même impression que toi sur l'isolement. Ce pcb est mal fichu, ils ont voulu gagner trop de place...