-1
votes

Je ne peux pas contrôler le relais en utilisant Wemos D1 Mini

Relais de contrôle d'essais im en utilisant Wemos D1 Mini.

J'étais essayé de contrôler le relais Utilisation de Wemos D1 Mini I Connectez la broche D1 à la broche, GND à GND et 5V PIN à VCC PIN comme celui-ci mais ne fonctionne pas. Voici mon code: P>

 int relaypin = D1;
 void setup() {
     Serial.begin(9600);
     pinMode(relaypin, OUTPUT); // Make LED pin D7 an output pin
     pinMode(relaypin, LOW);
     pinMode(LED_BUILTIN, OUTPUT);
 }
 void loop() {
      digitalWrite(relaypin, LOW); // LED off
      digitalWrite(LED_BUILTIN, LOW);
      Serial.println("LED On");
      delay(3000); // Wait 3 seconds
      digitalWrite(relaypin, HIGH); // LED on
      digitalWrite(LED_BUILTIN, HIGH);
      Serial.println("LED Off");
      delay(1000); // Wait 1 second
 }


0 commentaires

3 Réponses :


1
votes

Le problème réside dans votre configuration de votre . Après avoir déclaré le relaisPin comme de sortie (qui est 0x01), vous l'avez immédiatement déclaré comme faible (qui est 0x00) qui est égal à la section

Je suppose que vous étiez censé écrire: denadewrite (relaispin, faible) à la place.

(Vous pouvez voir les définies dans ./ Matériel / ARDUINO / AVR / CORE / ARDUINO / ARDUINO.H )


1 commentaires

Comme ça? void configuration () {série.begin (9600); Pinmode (relaispin, sortie); // marque la broche LED D7 une pique-née de sortie (relaispin, faible); Pinmode (LED_Builtine, sortie); }



0
votes

Ce qui suit pourrait être les raisons:

  • Le Wemos D1 Mini fonctionne sur 3.3V . Ainsi, la tension du signal d'entrée à la carte de relais pourrait ne pas être suffisante. L'optocoupleur sur la carte relais nécessite une tension typique de 1,2 V pour déclencher le circuit de sortie. Mais dans votre circuit, même à une sortie élevée des Wemos, la tension à l'optocoupleur est de 1,7 V . Donc, votre relais est verrouillé au même état (le plus probable)
  • Le courant d'alimentation 5V peut ne pas suffire à utiliser le relais

    Comment résoudre ces ..?

    • Vous avez besoin d'un convertisseur de niveau de tension pour convertir les signaux de 3,3 V du Wemos en 5V pour le tableau de relais
    • Utilisez une alimentation évaluée à des courants plus élevés

      Aussi, dans votre code: Dans Configuration () Vous avez défini Pinmode (relaispin, faible) que je suppose avoir été denawrite (relaispin, faible)


0 commentaires

0
votes

Utiliser Pinmode (relaispin, sortie_open_drain); au lieu de la page pince (relaispin, sortie);

Et vous gagnez comme un champion!


1 commentaires

Bienvenue à Stackoverflow! @Odairbonin, veuillez élaborer votre réponse et expliquer pourquoi vous avez mentionné cette ligne de code particulière.