Hallo liebe Community,
ich bin neu hier im Forum und hätte mal eine Frage über den ESP8266.
Ich habe momentan ein Projekt bei dem ich mithilfe des ESP8266 zwei 230V Relais ansteuern möchte, dies habe ich erstmal über Blynk probiert und da ist das Problem die Ausgänge schalten ganz normal aber wenn ich ein Relais Anstecke wird dieses sofort erregt obwohl der Pin ausgeschaltet ist. Das komische daran ist jetzt nur das es nur bei den Pins passiert, die ich in der App verwende. Solange der Pin nicht in der App deklariert wird bleibt das Relais inactiv.
Vielen Dank schonmal an eure Hilfe
Da unsere Kristallkugeln alle zum D-Check sind, musst Du uns leider Deinen Sketch zeigen.
Setze ihn bitte in Codetags (</>-Button oben links im Forumseditor oder [code] davor und [/code] dahinter ohne *).
Ebenfalls ist es wichtig uns einen Link zu Deinen Relais zu geben und eine Schaltung, wie Du sie versorgst und an den ESP8266 anschließt.
Gruß Tommy
Die meisten (chinesischen Billig)-Relais die ich in den Fingern hatte schalten mit logisch '0'.
Wenn der IO-Pin nicht initialisiert ist ist er hochohmig. Als Output geschaltet ist er erst mal auf LOW (0).
Und damit zieht das Relais dann an. Setze deinen Pin auf HIGH und das Relais wird abfallen (invertierte Logic).
Ulli
Hier mein Code(ohne meine Wlan-Daten):
#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "YourAuthToken";
// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "YourNetworkName";
char pass[] = "YourPassword";
void setup()
{
// Debug console
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
}
void loop()
{
Blynk.run();
}
Hier der Link zum Relais:
5V Netzteil an dem ich am Ende auf den Vcc Eingang vom Relais und auf Vin am Arduino +5V gesteckt habe und den Ground mit den 0V verbunden habe.
Das Problem ist, dass das Relais dauerhaft ein eins Signal führt egal ob der Pin ein- oder ausgeschaltet ist.
Lg x3pt0n
Das ist eine URL, kein Link. Damit haben die Nutzer mobiler Systeme Schwierigkeiten. Du bekommst so weniger Helfende.
Normalerweise sind diese Module LOW-aktiv, d.h. das Relais zieht an, wenn Din auf GND liegt.
Ob die 3,3V vom ESP8266 ausreichen, um das Relais auszuschalten, kann ich Dir nicht sagen.
Probier mal folgenden Sketch zum Testen:
byte status = HIGH;
const byte relPin = D4; // das anpassen auf Dein Pin, wo das Relais dran hängt.
void setup() {
Serial.begin(9600);
Serial.println("\nStart");
digitalWrite(relPin,status);
pinMode(relPin,OUTPUT);
}
void loop() {
Serial.print("Relais auf: ");
Serial.println(status);
delay(1000); // 1 s warten
status = !status;
digitalWrite(relPin,status);
}
Damit kannst Du erst mal sehen, wie das Relais reagiert.
Gruß Tommy
Vielen Dank Für deine Hilfe Hab durch das Programm gesehen das die 3.3V nicht ausreichen um es auszuschalten.
a) irgendwie kann ich es nicht glauben, dass der ESP nicht in der Lage sein soll, den (Optokoppler-)-Eingang auf 0 zu ziehen. Da würden mich aussagekräftige Bilder des Aufbaus interessieren.
b) wenn ich ESP und 230V Relais lese, dann empfehle ich dir mal nach Sonoff Dual 2ch zu suchen https://www.aliexpress.com/wholesale?catId=0&initiative_id=SB_20180720074039&SearchText=sonoff+Dual+2ch
inkl. Netzteil, inkl. Gehäuse, mit einem ESP zum selber flashen(!)
Hi
Das Problem ist hier, daß der Eingang nicht weit genug von der Null weg kommt - quasi Dauer-EIN (LOW) ist.
Bei 230V und den ganz günstigen Relais sollte man wissen, was man tut - selbst, wenn die ganzen Abstände passen, ist die Platine während des Betrieb rund herum 'bissig'!!
MfG
x3pt0n:
Vielen Dank Für deine HilfeHab durch das Programm gesehen das die 3.3V nicht ausreichen um es auszuschalten.
Wenn das nicht klappen sollte hast du entweder noch einen Schaltungsfehler, oder setze einfach noch einen NPN-Transistor dazwischen. Dann schaltest du das Relais mit HIGH.
E gibt auch 3,3V-Relaismodule.
Das Problem bei den 5V-Modulen liegt meist daran, dass die IR-Led des Optokopplers und die grüne SignalLed in Reihe geschaltet sind und da genügen 3,3V nicht mehr zum Durchsteuern.
Mit genügend Elektronikkenntnissen kannst Du das umbauen oder einen NPN-Transistor davor schalten, der die 5V aufschaltet.
Ansonsten nimm ein 3V (3,3V) Modul.
Gruß Tommy
Und ob dein Relaismodul tatsächlich für 230 Volt geeignet ist, kann ich nicht bestätigen, da du keinen Link sondern nur eine URL gepostet hast. Das können die mobilen User meist nicht öffnen.
Das nicht schaltende 5V-Modul hatte gefräste Abstände.
Ich weiß schon, warum ich am PC sitze. Aber den Unterschied zwischen URL und LINK verstehen höchstens 10% der Bevölkerung, wenn überhaupt so viele.
Gruß Tommy
Tommy56:
Das nicht schaltende 5V-Modul hatte gefräste Abstände.Ich weiß schon, warum ich am PC sitze. Aber den Unterschied zwischen URL und LINK verstehen höchstens 10% der Bevölkerung, wenn überhaupt so viele.
Gruß Tommy
Danke Tommy, dann sollte es zumindest geeignet sein.
Was URL und LINK betrifft, kann ich nicht verstehen.
Die heutigen PC-Benutzer wissen doch immer alles, so kommt mir das jedenfalls immer vor.
Ach was PC und Tablet betrifft....ich sitze halt lieber gemütlich auf der Couch.
HotSystems:
Die heutigen PC-Benutzer wissen doch immer alles, so kommt mir das jedenfalls immer vor.
Das ist ein Trugschluss, die wissen eigentlich nix.
Gruß Tommy
PS: Ich habe ja schon ein Tablett aber ich nutze es kaum
Bei meinem Tablett wird je nach Browser (Safari url und Icab Link) die url als klickbarer Link dargestellt.
Nabend.
Ich hoffe ich darf das Thema noch mal aufgreifen.
Also ich habe selbiges Problem.
Aufgrund des Threads habe ich mal etwas gemessen.
Also anschalten tut er bei 0 und wenn er auf 3,3v schaltet, reicht das nicht für das Relais.
Nun stand oben etwas mit der grünen LED. Diese habe ich mal gebrückt, was ja eigentlich dann wie ausgelötet sein sollte.
Dann stand da etwas von einem NPN Transistor. Ich hatte in meiner Krimskramskiste so etwas auch gefunden, meine ich zumindest. 2n2222 a331 steht drauf.
Also Arduino Ausgang dran, dann 5V kommend und das andere Beinchen zum Relais. Geht nicht.
Welches ist denn der richtige/passende Transistor dafür? Geht ja sonst auch mit einem IC wie ich das sehe.
Aber das ist Neuland für mich.
Kann mir das eventuell einer erklären so dass ich da mal bei reichelt einkaufen kann???
Nach meinem Verständnis: Basis = Esp-Ausgang
Kollektor = 5V aus dem Netzteil etc
Emitter = Schaltausgang, sollte die 5V an das Relais abgeben.
Habe ich die Funktionsweise richtig erkannt???
Oder Mosfet IRF520 habe ich auf solch Adapter Platinchen gesehen.
Ob und wie dein Relais angeschlossen wird, kann ich nicht sagen, da ich es nicht kenne.
Was Transistorschaltungen betrifft, kannst du hier nachlesen.
So wie du ihn anschließen willst, funktioniert es nicht.
Das Relais bekommt dauerhaft 5V und hat GND selbst.
Pin3 ist zur Steuerung. Masse schaltet an und lege ich 5V auf den Pin, schaltet es ab.
Mit dem Arduino kann ich 0V und 3,3V
In der Schaltung gibt es 5V.
Es bedarf also den Transistor, der aus den 3,3V wenn diese anliegen es so durchschaltet, dass am Relais 0V und 5V anliegen
Habe ich die Funktionsweise richtig erkannt???
Ein npn-Transistor wie dein 2N2222 als Schalter hat üblicherweise den Emitter auf GND, die Basis über einen Widerstand am Controller-Signalpin und den Kollektor an der Last (Relais-Spule), die auf der anderen Seite an der Versorgungsspannung hängt.
Das 3.3V Signal ist bequem ausreichend, den Transistor durchzuschalten.
Da die Relais-Spule eine induktive Last darstellt, ist eine sog. Freilaufdiode sinnvoll.
Da sagst du mir nix neues, nur ob das mit deinem Relais auch so funktioniert weiß ich immer noch nicht.
Evtl. solltest du es mit einem Levelshifter der für I2C geeignet ist, mal probieren.