Hallo, Ich komme mit einer Relais-Schaltung gerade nicht weiter, und ich kann leider auch nur auf gefährliches Halbwissen zurückgreifen :-/ Ich möchte mit einem Raspberry Pi das Relais aus dem Anhang schalten. Das Ding ist imho etwas eigenartig: Wenn ich 5V VCC und GND anschliesse, schaltet es durch wenn ich IN1 respektive IN2 auf Ground(!) ziehe. Als ersten Ansatz habe ich nun IN1 und GND auf Ground gezogen und will jetzt mit 5V an VCC das erste Relais durchschalten (klappt "von Hand" auch erwartunsgemäss). Also habe ich mir eine kleine Transistorschaltung (NPN BC 337-16) gebaut: GPIO Pin über 100kOhm an Basis, 5V an Collector, Emitter auf Ground. Das funzt, d.h. mit dem GPIO Pin vom Raspberry Pi schaltet der NPN durch (mit ein paar LEDs getestet). Und nun steh ich fürchterlich auf dem Schlauch: Wie kriege ich diese 5V nun an den VCC Port des Relais? Eigentlich wollte ich mich an diesem Beispiel orienteieren: http://www.franksteinberg.de/IMG/ERELPLAN.GIF Viele Grüsse Freddi
:
Verschoben durch Moderator
Freddi N. schrieb: > Also habe ich mir eine kleine Transistorschaltung (NPN BC 337-16) > gebaut: GPIO Pin über 100kOhm an Basis, 5V an Collector, Emitter auf > Ground. Das funzt, d.h. mit dem GPIO Pin vom Raspberry Pi schaltet der > NPN durch (mit ein paar LEDs getestet). 1) Wo ist der strombegrenzende Emitter/Kollektorwiderstand? 2) 100kOhm? Welches Beta soll denn der Transistor haben? Ich habe hier für eine PWM an LEDs 220 Ohm. Bei einem Beta von 100 (wäre schon viel) und 100kOhm Basiswiderstand kommt heraus: Ic = Beta * Ib = Beta * Ub/Rb = 100 * 5V / 100kOhm = 5mA. Damit bekommst Du kein Relais geschaltet.
Hallo, Wenn mich mein Auge nicht täuscht, sind auf diesem "Relais" bereits 2 Transistoren verbaut. Miss mal den Strom durch INx, der fließt, wenn Du INx mit GND verbindest. (Oder mal in das Datenblatt des Relais schauen). Vermutlich kommst Du ohne Transistorgerödel aus. Die 5V nimmst Du aus Deiner Schaltung. Gruß Andreas
Hi, Erstmal danke für die schnellen Antworten! @Klecksian: Laut Datenblatt hat der 337-16 ein hfe von 100-250. Mit dem Multimeter gemessen habe ich 193, macht also 9 mA. Hhhhmmm, nach etwas rumgegoogle habe ich in einer Ebayauktion eine ähnliche Platine gefunden, dort sind 15-20 mA Schaltstrom angegeben. Thema Strombegrenzender E-C-Widerstand: Ich glaube den hab ich mir gspart ... ausgehend von diesem Bild:http://www.franksteinberg.de/IMG/ERELPLAN.GIF Wäre das R1? @Andreas B.: Du hast Recht, da ist sowohl ein Transistor als auch eine Diode pro Relais auf der Platine. Ohne Transistor usw. wär natürlich super. Hier hab ich das Datenblatt des Relais gefunden, werde aus diesem aber nicht ganz schlau http://img.alibaba.com/img/pb/069/053/492/492053069_490.jpg Das mit der Strommessung ist aktuell schwierig, mein Multimeter scheint nen Hau weg zu haben ... Ich hab gerade noch was getestet, aus dem Raspberry Pi GPIO Port hab ich nur 3,3V, die reichen nicht, um das Relais zu schalten ... ich brauch wohl 5 Volt und damit ein Relais, oder? Ist es denn prinzipiell korrekt, IN1 + GND auf Ground zu schalten und dann einfach mit der Spannung an VCC zu gehen? Kommt mir merkwürdig vor. Vielen Dank schonmal, ich bastel mal weiter und meldem ich wieder. Grüsse Freddi
Freddi N. schrieb: > Das Ding ist imho etwas eigenartig: Wenn ich 5V VCC und GND anschliesse, > schaltet es durch wenn ich IN1 respektive IN2 auf Ground(!) ziehe. Und was soll daran jetzt das Problem sein? Dass Steuereingänge low-aktiv sind ist doch nichts ungewöhnliches. Du musst das doch nur entsprechend in der Software berücksichtigen: Port-Pin auf Low für Ein, und auf High für Aus.
Freddi N. schrieb: > Ist es denn prinzipiell korrekt, IN1 + GND auf Ground zu schalten und > dann einfach mit der Spannung an VCC zu gehen? Kommt mir merkwürdig vor. Wie gesagt, das scheint irgendeine Schaltung bereits enthalten zu sein. Das was Du gepostest hast, beschreibt nur das eigentliche Relais auf der Platine, nicht die komplette Schaltung auf diesem Board. Das ist aber so gedacht, daß Vcc und GND fest verdrahtet werden. INx kommt dann an den Raspberry. Sieh mal zu, daß Du Dein Multimeter wieder hin bekommst... Gruß Andreas
Stefan Ernst schrieb: > Und was soll daran jetzt das Problem sein? Dass Steuereingänge low-aktiv > sind ist doch nichts ungewöhnliches. Hi, Ok, war mir neu ... da kommt dieses Halbwissen wieder ins Spiel.. Ich habs gerade mal getestet: 5V an VCC, GND an Ground, IN1 direkt mit dem Port verbunden. Ergebnis: Die Kontroll LEDs auf der Platine leuchtet auf wenn ich den GPIO Port auf LOW schalte und geht aus wenn ich auf HIGH schalte (also 3,3V draufgebe). Das Relais "klickt" aber nicht. Sieht auf den ersten Blick so aus, als ob der nicht wirklich auf Ground geht wenn ich den GPIO Pin auf LOW schalte. Ich hab gerade mal rumgegoogelt, LOW kann irgendwas zwischen 0V und 0,3V sein ... Andreas B. > Das ist aber so gedacht, daß Vcc und GND fest verdrahtet werden. INx > kommt dann an den Raspberry. > Sieh mal zu, daß Du Dein Multimeter wieder hin bekommst... :) Das wär ja fast schon zu einfach wenn man einfach so Strom messen könnte um den Fehler zu finden! Spass beiseite, du hast natürlich Recht ... Das mit dem low-aktiv, d.h. GPIO Port doch direkt an IN1, war auf jedenfall schonmal ein super Hinweis ... ich wär sonst ziellos weiter Richtung immer komplizierterer Transistorschaltung gelaufen, nun versuch ich mal ein ordentliches Ground hinzukriegen. Allen Beteiligten vielen Dank! Viele Grüsse Freddi
Sei vorsichtig: Das Raspberry hat vermutlich nur 3,3V Ausgänge. Das Relais aber 5V!. Miss vorher lieber mal ohne den Raspberry was Sache ist: Eingangspannung an INx und Eingangsstrom. Vorher laß das Raspberry mal aus dem Spiel. Gruß Andreas
Hi, Hu, du hattest Recht! An I1 und I2 liegen laut Multimeter 4,3 Volt an. Der Port hats überstanden wie es aussieht. Ich habe gerade mal ausprobiert: Aus dem GPIO Port kommen 3,25V wenn HIGH. Wenn ich am I1 Port 250 kOhm anschliesse, hab ich dort auch 3,25V. Also miteinander verbunden, Multimeter angeschlossen. Wenn ich nun die GPIO Port auf LOW schalte, geht die Spannung runter auf 0 ... das Relais schaltet aber nicht. Also hab ich nochmal mit GND rumgespielt: Verbinde ich I1 direkt mit GND, schaltet es. Verbinde ich es hinter dem 250kOhm mit GND, gehts nicht ... Hast du noch nen Tipp für mich? Grüsse Freddi
Freddi N. schrieb: > Hast du noch nen Tipp für mich? Also, jetzt mal nochmal ganz deutlich: Was für Relais hast du vor dir? Haben die eine Schaltung mit dran? Eine EXAKTE Typenbezeichnung MUSS sein, sonst ist hier alles Gerate. Jeder hier kann Relais per GPIO schalten - aber nicht mit deinen gestammelten Infos. Freddi N. schrieb: > Eigentlich wollte ich mich an diesem > Beispiel orienteieren: > http://www.franksteinberg.de/IMG/ERELPLAN.GIF "Orientieren" ist eine schlechte Idee. Der Plan funktioniert - aber nur mit den da angegebenen Werten und Typen.
Hi > Also, jetzt mal nochmal ganz deutlich: > Was für Relais hast du vor dir? Haben die eine Schaltung mit dran? Ja, haben sie. Siehe Foto ganz oben. > Eine EXAKTE Typenbezeichnung MUSS sein, sonst ist hier alles Gerate. > Jeder hier kann Relais per GPIO schalten - aber nicht mit deinen > gestammelten Infos. Siehe Foto: Aufschrift ist SRD-05VDC-SL-C. > "Orientieren" ist eine schlechte Idee. Der Plan funktioniert - aber nur > mit den da angegebenen Werten und Typen. Tja, so macht man das als Anfänger: Man sucht nach ähnlichen Problemen, die vielleicht irgendwo schonmal diskutiert worden, und wenn man dann immer noch nicht weiter kommt fragt man :-/
Freddi N. schrieb: >> Also, jetzt mal nochmal ganz deutlich: >> Was für Relais hast du vor dir? Haben die eine Schaltung mit dran? > Ja, haben sie. Siehe Foto ganz oben. Sehr gut. Woher stammt die Platine? Da muss auch eine Beschreibung dabeisein, wie man die schaltet.
Nochmal 'ne kurze Frage. Hast Du GND von Deiner Relais-Platine mit GND des Raspberry Pi verbunden? Also VCC der Relais-Platine an 5V. GND an - der 5V Versorgung. Und beide GNDs verbunden (5V Versorgung und Raspberry PI). Dann den GPIO an IN1 bzw. IN2. Murkser
Freddi N. schrieb: > schaltet es durch wenn ich IN1 respektive IN2 auf Ground(!) ziehe. Freddi N. schrieb: > An I1 und I2 liegen laut Multimeter 4,3 Volt an. Lässt auf high-side Emitterschaltung schließen, wie sie scheinbar oft bei solchen Relais-Modulen vorkommt. http://www.ebay.com/itm/Two-Channel-5V-Relay-Module-Expansion-Board-For-Arduino-ARM-PIC-AVR-MCU-DSP-/150906090717?pt=LH_DefaultDomain_0&hash=item2322b434dd Sowas kriegst du mit 3V3 ohne Zusatzschaltung gar nicht geschaltet. Aber mit einem BC337 und einem Widerstand geht das schon. Aber lass erst mal sehen, was du wirklich vor dir liegen hast.
Hi, > Sehr gut. Woher stammt die Platine? Da muss auch eine Beschreibung > dabeisein, wie man die schaltet. Ein Qualitätsprodukt aus China :-/ Keine Beschreibung, nur ne Info dass VCC 5V ist und die Daten oben auf dem Relais. > Hast Du GND von Deiner Relais-Platine mit GND des Raspberry Pi > verbunden? Also VCC der Relais-Platine an 5V. GND an - der 5V > Versorgung. Und beide GNDs verbunden (5V Versorgung und Raspberry PI). > Dann den GPIO an IN1 bzw. IN2. Ich habe Vcc der Relais Platine mit 5V vom Rasperry Pi verbunden. GND der Relaisplatine mit GND vom Pi. Den 3,3V liefernden GPIO Port an einen IN Port der Relaisplatine geht nicht so ohne weiteres: An IN liegen 4 Volt an. Die hab ich versucht mit 250 kOhm auf 3,25V zu drücken und dann mit GPIO verbunden, aber beim Switch auf LOW geht nur die Relais-Kontrolllampe an, es schaltet aber nicht. Gute Nachrichten, ich habe gerade eine Lösung gefunden: Ich habe den IN mit dem Collector meines NPN Transistors (BC337-16) verbunden, Emitter auf Masse. Wenn der GPIO jetzt auf HIGH geht, schaltet der Transistor den IN1 auf Masse, und das Relais schaltet. Den Widerstand zwischen GPIO und NPN-Basis ist 100kOhm. .--------------------. Pi |GND 5V GPIO 3,3V | |o o o | ')----)----)---------' | | | | | | | | .-. | | | | .------. | | | | R = 100kOhm | GND o)------| | '-' | | | | | | Vcc o)------)----' | | | | | | IN1 o)------)---------)---| | | | | |/ | IN2 o| | '-| NPN '------' | |> '-------------' ` Relais Platine Das funktioniert, hat da jemand Bedenken? Schmort mir hier demnächst etwas durch? Die 100 kOhm sind eigentlich doppelt so hoch wie nötig, meine ich. Ich hab folgendes gerechnet: 20 mA (Durchhaltstrom Relais) = 193 (gemessene Verstärkung Transistor) * 5V / R So komme ich auf R = 49 kOhm. Sicherheitshalber aber erstmal mit nem 100 kOhm angefangen und siehe da, es funktioniert. Grüsse Freddi
Freddi N. schrieb: > Das funktioniert, hat da jemand Bedenken? Keine. Genau so gehört sichs. > Schmort mir hier demnächst > etwas durch? Die 100k halte ich für etwas übertrieben. So schmalbrüstig sind die GPIO dann auch wieder nicht. 47k oder eher 10k hätte ich aus dem Bauch raus genommen.
>Ein Qualitätsprodukt aus China :-/ Keine Beschreibung, nur ne Info dass >VCC 5V ist und die Daten oben auf dem Relais. Daas reicht völlig aus. Die Platine ist an den wichtigen Stellen ja auch beschriftet. Den Rest macht der Ohmpiepser. >Den Widerstand zwischen GPIO und NPN-Basis ist 100kOhm. Cooles deutsch. Und: Bitte das nächste mal die Platine nicht wieder mit einem Taschenrechner fotografieren. Man kann die Leiterbahnen gerade noch erahnen und man sieht verschwommen die Bezeichnungen auf allen Widerständen: 102. Das bedeutet: 10 * 10^2 Ohm = 1kOhm. Deine Schaltskizze kann so nicht stimmen. Die Transistoren sind nicht als Kollektor-Basis-Emitter von oben nach unten oder von rechts nach links bedrahtet wie man assozieren mag. Beispielsweise ist der universellste aller universellen Universaltransistoren in SMD Bauform, der BC817, folgendermaßen angeschlossen (Draufsicht): Oben in der Mitte: Kollector Links unten: Basis Rechts unten: Emitter Wahrscheinlich ist einfach nur die Versorgungsspannung etwas knappi; häufig sind das nur 4.9V und über den Spannungsabfall der dünnen Drähte zur Platine im bestromten Zustand des Relais plus Spannungsabfall über die C-E Strecke des Transistors liegen dann nur noch um die 4,5V am Relais an.
den beitrag über mir kannst du komplett vergessen. geht mit jeder zeile zu 100% am thema vorbei - da wurde nichts verstanden.
Soo, ich hab das ganze jetzt mal für das 2. Relais mit einem 2. Transistor erweitert und auf eine Platine gelötet. Der links ausgeführte schwarze ist GND vom Pi, Gelb ist 5V vom Pi und Rot und Schwarz am kleinen Stecker sind 2 GPIOs. Das ganze wird übrigens benutzt, um ein Magnetventil zu schalten (stark induktive Last, ich weiss...), das die Luftzufuhr einer Wasser-Blubberblasen-Säule steuert (d.h. es blubbert wenn das Relais schaltet). Ich arbeite in der Touristik, und ich visualisiere damit Reisebuchungen an meinem Arbeitsrechner, neben dem die Säule steht :) Bisher hab ich das Ventil über eine USB-Relaiskarte von meinem Arbeitsrechner aus geschaltet, d.h. es blubberte nur wenn mein Rechner lief ... mit einem Raspberry Pi mit WLAN, versteckt im Sockel der Säule, ist das ganze natürlich unabhängig. Vielen Dank nochmal allen, die mir geholfen haben! Viele Grüsse Freddi
@ Freddi N. (freddi80) > IMG_20111107_204408.jpg > 1,4 MB, 8 Downloads Hmmmm. >Das ganze wird übrigens benutzt, um ein Magnetventil zu schalten (stark >induktive Last, ich weiss...), das die Luftzufuhr einer Relais mit Logik ansteuern.
Hallo Ihr Spezis, ich habe ein Megaproblem! Mein Rasberry hat mittels Optokopplern und nachfolgenden Relais einen Gleichstrommotor anzusteuern. Nachdem dieses lange Zeit funktioniert hat, habe ich die Lastrelais durch bessere ersetzt. Jetzt mein Problem: Immer wenn ich den Motor ansteuere bleibt mein bewährtes Programm stehen und ich muss den Rasberry neu starten. Obwohl ich die Spulen der Relais bereits mit Löschdioden versehen habe, passiert es doch immer wieder. Hat einer eine Erklärung für mich??
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.