Hallo,
ich habe so ein Relais an einem ESP32 (GPIO27). Das Relais zieht bei LOW am Dateneingang an.
Leider ist der GPIO nicht HIGH genug (3.3V reichen scheinbar nicht), damit es auch wieder abfällt.
Im Setup setze ich den GPIO auf OUTPUT und LOW
Wenn man "Ansteuerung mit ... TTL" glauben darf, dann müßten 2,4V als HIGH reichen.
Wie sieht es denn mit dem Strom aus, den die Pins liefern können? Wenn ein ESP die erforderlichen 15-20mA nicht liefern kann, ist der Ausgang vermutlich schon lange durchgebrannt.
Hast Du das gemacht? Ansteuerung durch einen Raspi ist im Prinzip dasselbe wie bei eienm ESP32.
Hab 5V von VIN des ESP an VCC des Relais.
ESP GND auf Relais GND
Relais IN in der Luft-> Relais aus.
Relais IN gegen GND -> Relais zieht an.
Relais IN am GPIO -> Relais zieht an und bleibt an, egal welcher Level am GPIO ist.
Sollte der Vorwiderstand auf dem Relais zu hoch sein, dass es unter 5V an IN nicht abschaltet?
Habe eben mal so ein 2-Kanal Relais-Bord mit Optokopplern an den ESP gesteckt.
->funktioniert hervorragend
Weil das in der Beschreibung des Relais ausdrücklich drin steht. Das es bei dem im Tutorial funktioniert kann Zufall sein - Exemplarstreuungen.
Ich würde mich eher an die Beschreibung halten. Der Hinweis steht sicher nicht umsonst da.
Da ist aber keine Logik dahinter.
Der Widerstand verringert doch die Spannung an der Basis den Transistors noch weiter.
1k gegen +5V würde die Spannung hochziehen aber wahrscheinlich auch den ESP killen.
Ich habe diesen Tipp in einer Raspi-Relay Anleitung gefunden:
The modification is simple - just replace 1K R2 with a smaller resistor, say 510R.
freddy64:
Da ist aber keine Logik dahinter.
Der Widerstand verringert doch die Spannung an der Basis den Transistors noch weiter.
Kennst Du die Schaltung auf dem Board, dass Du so eine Aussage machen kannst? Hast Du es mit dem Widerstand versucht? Wenn das Relais bei 'IN = Gnd' anzieht, ist es keine einfache Emitterschaltung. Letztendlich dürfte es ein Spannungsteilerverhältnis sein. Und das kann man auch durch einen vorgeschalteten Widerstand beeinflussen, nicht nur indem man einen Widerstand auf dem Board austauscht.
Und hier ist das ganze Übel detailliert beschrieben.
Das Relais ist für Arduino Pegel.
Also Levelshifter oder Transistor dazwischen, damit der IN Pin am Relais auf 5V kommt.
Hab jetzt einen I2C Levelschifter dazwischen gefummelt.
Was soll ich sagen: Es klickt und klackt, wie es sich gehört. Bei 4.7V am IN des Relais, fällt es ab.
Ist zwar etwas Verschwendung, aber wenn sonst keine Teile da sind, muss das halt so gehen.
Transistorsammlung (300 Stück) habe ich gerade bestellt, damit ich in Zukunft für solche Fälle gerüstet bin.
Ansonsten hätte man mal die interne Schaltung des Relaismodul gebraucht um selbst analysieren zu können was geht und was nicht.
Während der Fehlersuche bin ich über eine Seite "Beefcake Relay" mit Schaltung gestolpert.
Ich finde die Seite ums verrecken nicht mehr.
Die Schaltung kommt schon soweit hin, nur dass auf meinem Board alle Widerstände 1K haben und es bei LOW aktiv ist.
Ich bin fast grün vor Wut geworden, weil diese Relais an 2 anderen meiner ESP32 Konstruktionen funktionieren.
Kein Wunder, an denen schaltet ist ein PCF8574 die Relais.
Aber egal, die Lösung für diesen Baustein ist: +5V am IN Pin lassen das Relais erst abfallen.
Am Arduino kein Problem, am ESP oder Raspi muss der Pegel hoch genug sein. 3.6V reichen nicht, um das Relais auszuschalten.
Eigentlich müßte es reichen, die Verbindung zu Gnd aufzutrennen. Sonst könnte Strom über die Schutzdioden des Ausgangs fließen und das Relais einschalten. Auf jeden Fall ist dieses Modul nicht TTL-kompatibel, die Beschreibung ist schlicht falsch.