transistor als Relaiersatz aber welche

  • Hallo an alle,


    aktuell schalte ich meine Lüfter mit Relais. 3x120er Lüfter diese sind temperaturgesteuert. Deswegen kann es vorkommen das sie mehrfach am Tag ein und ausgeschaltet werden. Das ist auf dauer nicht so "gesund" für die Relais. Heute ist mir wieder eins ausgefallen. Deswegen habe ich mich etwas belesen und bin über Transistoren gestolpert die dies ja ebenfalls übernehmen können. Aktuell nutze ich einen Pi und schalte die Relais. In Zukunft soll der Pi Transistoren schalten.


    Aber welche nimmt man dafür? Da ich aktuell überhaupt keine im Hause habe, dachte ich mir ich könnte vielleicht ein Sortiment besorgen Link zu Amazon (Affiliate-Link)


    Was haltet ihr von sowas? Oder schlagt ihr was besseres vor?


    Oder doch lieber wieder zurück zu Relais ;) ?!

  • Welche Du nimmst, hängt etwas von der Spannung und den Strom ab, die Du schalten möchtest.

    Nimm jedenfalls einen 1K Basis Vorwiderstand, damit dem PI der Strom am GPIO nicht zu viel wird.

    Am besten Du schaltest die Masse und verwendest dazu einen NPN Transistor.

    Der BC337, der in dem Set dabei ist könnte passen. Der kann bis 800mA schalten.

    Anders als beim Relais müssen die GND der Spannungsquellen (des PI und des Lüfters) verbunden werden.


    Das Set ist nicht schlecht - aber vermutlich wirst Du einen Großen Teil der Transistoren nie verwenden. BC327/337 sind gängige, die auch kenne und verwende.

    ...wenn Software nicht so hard-ware ;) ...

    Freue mich über jeden like :thumbup:

  • Die Spannung ist vermutlich bekannt, messe also zuerst den Widerstand des Lüfters.

    und berechne nach der Formel I = U / R den Strom durch den Lüfter.

    Dann musst du nur noch einen Transistor finden, der diesen (Kollektor) Strom aushält und parallel zum Lüfter eine Freilaufdiode schalten.

    Und wie mein Vorredner schon schrieb, einen Basiswiderstand einbauen...

  • Ein ULN 2003 Transistorarray ist bis 500 mA je Kanal belastbar. Es können auch 2 Kanäle zusammengeschaltet werden, das schafft dann bis 1 A. Ausserdem sind die Freilaufdioden schon im Chip eingebaut, genauso wie die Vorwiderstände zum Pi Pin. Die 7 Kanäle könnten 7 induktive Verbraucher schalten, oder 3 bis 1 A und einen mit 0,5 A


    Servus !


    PS: Leistung/Spannung/Stromverbrauch sind am Lüfter ablesbar.

    RTFM = Read The Factory Manual, oder so

  • Wenn die Lüfter eh schon temperaturgesteuert laufen warum diese dann noch ein und ausschalten, dass sollte doch die Lüftersteuerung übernehmen. Je nach Schaltspannung, gibt auch fertige Module mit MosFET's welche man für sowas verwenden könnte.

  • Fliegenhals die Lüfter drehen erst bei einem gewissen Schwellwert und der Pi + Relais ist die "Lüftersteuerung".

    Die Relais sollen aber eben weg.


    Erstmal danke an alle. Ich werde wohl mal ein solches Set bestellen. Nebenbei habe ich noch einen TIP120 Link zu Transistor gefunden.

    Dieser benötigt aber 12V an der Basis und das wiederum bekomme ich ja nicht aus meinen kleinen Pi. Von daher müssen nun endgültig neue Transistoren her.

  • Delta09 Oh da habe ich doch glatt einen "klizekleinen" Fehler im System, oder kurz um es war alles falsch ;) . Jetzt macht der Aufbau auch Sinn! Vielen Dank!


    Wie kann ich denn jetzt das mit dem Pi steuern? Einfach einen Ausgang am Pi auf High stellen? Dann müssten doch 3,3 V anliegen. Mit einem Wiederstand könnte ich das ja auf ca. 1,2V runterziehen oder?

  • Auch das kannst du ganz einfach ausrechnen, der Pi gibt 3,3V Spannung aus und darf mit maximal 16mA belastet werden.

    IBE 0 des TIP120 ist 2mA

    Da UBE = 1,4V fällt der Rest am Basis Vorwiderstand ab, also 3,3V - 1,4V = 1,9V

    Der Widerstand wäre dann 950 Ohm, denn 1,9V / 0,002A = 950

    Einen 950 Ohm gibt es aber nicht, da würde ich einen 1kOhm einbauen.

  • irgendwie habe ich hier noch einen Denkfehler, ich habe das ganze gerade mal mit einem ESP8266 getestet. Dessen Pin habe ich mit digitalwrite(LOW) auf 1,7V im LOW gezogen.


    Durch den Wiederstand von 1kOhm komme ich dann auf ca. 1,4 Volt. Damit bin ich höher als 1,2 Volt und der Transistor arbeitet immer.


    Warum geht mit digitalwrite die Volt nicht wesentlich weiter runter? Oder ist das ein Fehler bei mir?

    Edited once, last by tutter: Vergiss die Frage! Fehler gefunden! Ich war faul und habe in der void setup() den Pin nicht auf Output gesetzt. Das habe ich nun getan und in der void loop() setze ich den Pin von high auf low und wieder zurück! Sehr schön es funzt ().

  • Ich kenne den ESP nicht, aber wenn du parallel zu B-E einen weiteren 1k Widerstand einbaust wird die Spannung an der Basis halbiert und der Transistor wird sperren.

    Welche Spannung gibt der ESP bei H aus?

    Ev muss der Vorwiderstand angepasst werden.

  • Ich beführworte ja Deine Idee, Transistoren zu nehmen.

    Aber wenn Du schreibst "...heute ist mir wieder ein Relais ausgefallen.....", dann ist da was nicht in Ordnung.

    Auch bei Billigdingern sind es min. 100.000 Schaltspiele. Wenn Die 30 mal am Tag schalten, dann kommst Du aus 10 Jahre Mindestlaufzeit.

  • irgendwie habe ich hier noch einen Denkfehler, ich habe das ganze gerade mal mit einem ESP8266 getestet. Dessen Pin habe ich mit digitalwrite(LOW) auf 1,7V im LOW gezogen.


    Durch den Wiederstand von 1kOhm komme ich dann auf ca. 1,4 Volt. Damit bin ich höher als 1,2 Volt und der Transistor arbeitet immer.


    Warum geht mit digitalwrite die Volt nicht wesentlich weiter runter? Oder ist das ein Fehler bei mir?

    Da kann irgendwas nicht stimmen - 1,7 V ist nicht low.

    Mit einem einfachen Widerstand kann man auch keine Spannung reduzieren.

    Vbe 1,4 V erscheint mir hoch. Ich hab ein Datenblatt gesehen, aus dem aber nicht viel ersichtlich ist. Normalerweise liegt dieser Wert um 0,7 V.


    Der ESP müsste den Pin auf einen Wert nahe 0 V ziehen. Hast du irgendwelche weiteren Widerstände (Pullups oder sowas) angeschlossen außer dem strombegrenzenden 1K-Widerstand?
    Welche Einstellungen hast du für interne Pullups/downs programmiert? Ist dein Pin überhaupt korrekt als Output programmiert?

    Oh, man kann hier unliebsame Nutzer blockieren. Wie praktisch!

  • Einmal editiert, zuletzt von tutter (16. November 2021) aus folgendem Grund: Vergiss die Frage! Fehler gefunden! Ich war faul und habe in der void setup()
    den Pin nicht auf Output gesetzt. Das habe ich nun getan und in der void loop() setze ich den Pin von high auf low und wieder zurück! Sehr schön es funzt

    ...wenn Software nicht so hard-ware ;) ...

    Freue mich über jeden like :thumbup:

  • Ah, das Kleingedruckte muss man auch lesen? Unauffälliger gehts nicht - ich hab das für die Signatur gehalten.

    Oh, man kann hier unliebsame Nutzer blockieren. Wie praktisch!

  • Naja, andererseits ist es so beschämend... da ist es verständlich, dass es in 6 Punkt hellgrau auf weiß steht... :lol:

    Oh, man kann hier unliebsame Nutzer blockieren. Wie praktisch!

  • Vbe 1,4 V erscheint mir hoch. Ich hab ein Datenblatt gesehen, aus dem aber nicht viel ersichtlich ist. Normalerweise liegt dieser Wert um 0,7 V.

    Normale Transistoren (Silizium) haben 0,7V Basisspannung, der Transistor ist aber ein Darlington hat somit 1,4V Basisspannung,

    Wenn ein weiterer Widerstand parallel zur Basis eingebaut wird, ist das ein Spannungsteiler,

    bei 2 gleichen Widerständen halbiert sich dann die Spannung.

    Wenn der ESP 1,7V bei Low ausgibt, kommen dann etwa 0,85V an der Basis an, die parallelen Ströme wurden nicht berücksichtigt. Der Transitor wird somit sperren.

  • Darlington macht natürlich Sinn mit 1,4 V.

    Der ESP gibt aber nicht 1,7 V bei low aus. Wenn das der Fall ist, muss man dort nach dem Fehler suchen und nicht hinten einen Spannungsteiler dran bauen, um die Spannung zu halbieren - das ist eher eine zweifelhafte Lösung. Tatsächlich lag der Fehler ja auch an der Pinkonfiguration.

    Oh, man kann hier unliebsame Nutzer blockieren. Wie praktisch!