Ich habe zwei 4-Relais-Module und mache wahrscheinlich etwas falsch, weil keines von ihnen zu funktionieren scheint:
Mein erster Versuch war die Verwendung eines 5-V-Netzteils für ein Steckbrett, bei dem VCC und In1 mit 5 V und GND mit GND verbunden wurden. Ich hatte erwartet, dass das erste Relais schaltet, aber nichts passierte. Ich habe es mit allen In-Pins versucht, aber nichts
Das Modul scheint einige LEDs zu haben, um anzuzeigen, wann das Relais eingeschaltet sein sollte, sie leuchten nicht.
Ich habe auch 3 V anstelle von 5 versucht und den JD-VCC an ein anderes Netzteil angeschlossen. Nichts funktioniert, was ich mit dem Multimeter getestet habe, und alle Pins, die ich angeschlossen habe, werden mit Strom versorgt, also fehlt mir entweder etwas (sehr wahrscheinlich) oder ich habe beide Platinen kaputt
Eine andere Sache, die mir aufgefallen ist, ist, dass, wenn ich 5 V und GND anlege, alle IN ungefähr 3 V zu haben scheinen
Das Relaismodell: JQC3F-5VDC-C
[BEARBEITEN]
Mein Modul ist generisch und ich konnte die offiziellen Schaltpläne nicht finden. Vielen Dank @tlfong01, dass du mich auf dieses hier hingewiesen hast, das scheint das Richtige zu sein:
Frage
Das OP verfügt über ein 4-Kanal-Relaismodul ähnlich dem unten gezeigten. Das Modul hat unten rechts einen gelben Jumper mit der Bezeichnung JD-Vcc . Was ist es und wie wird es verwendet?
Bestätigung und Aktualisierung 2020nov01hkt1609
Vielen Dank an @Circuit fantasist für den Hinweis, dass im Schema der kurzen Antwort unten "das Erdungskabel des Kurzschlusses redundant ist".
Ich stimme zu, dass dieser Kurzschluss zum Erdungskabel irreführend ist und Verwirrung stiftet.
Mein ursprünglicher Plan war, den redundanten Draht zu ziehen und ihn dann mit dem folgenden durchzustreichen:
Notiz:
(1) Normalerweise ist es bei einer externen Stromversorgung für das Relaismodul wichtig, die Arduno/Rpi-Signalmasse mit der externen Stromversorgungsmasse kurzzuschließen, damit das Rpi-Signal die gemeinsame Masse mit der externen Stromversorgungsmasse hat.
(2) Für diese „vollständige optoisolierte Konfiguration“ sollte die Rpi-Masse jedoch nicht mit der externen Stromversorgungsmasse kurzgeschlossen werden, da das Rpi den Optokoppler unabhängig von irgendeinem Teil der Elektrik des Relaismoduls verwendet. Rpi Vcc liefert Strom durch 1k zur LED, die ein optisches Signal in den Optotransistor auf der anderen Seite eingibt. Es wird keine elektrische Masse als Referenz verwendet. In einem Fall mit Rpi, der von einer Batterie gespeist wird, kann die Masse des Rpi "schwebend" sein und nicht elektrisch mit dem Relaismodul verbunden sein.
Kurze Antwort
Das 4-Kanal-Relaismodul des OP ist mit dem „ JD-Vcc-Jumper “ „ Low Logical Level Triggerable “ (Low Trigger) für unterschiedliche Konfigurationen von Relaisleistung und Steuersignalpegeln geeignet. Eine sehr einfache Verdrahtungsmethode ist unten gezeigt.
Am Beispiel des 3V3-Raspberry-Pi (oder 3V3-Arduino) wird der Songle-Relaisschalter von einer externen 5-V-Stromquelle versorgt, Vcc ist mit der 3V3-Logikleistung von Rpi verbunden und IN ist im Ausgangsmodus mit einem Rpi-GPIO-Pin verbunden.
Wenn das Signal an IN Low ist (0 V, Masse), fließt Strom (senkt) von Vcc nach IN, der Optokoppler EL817C wird aktiviert, der Songle-Schalter wird aktiviert (erregt), der Kontakt COM wird mit NO verbunden (normal offen).
Wenn das Signal hoch ist (~3 V), dann ist die Stromaufnahme zu gering, um den Optokoppler zu aktivieren, daher wird der Songle-Schalter entregt und das Relais ausgeschaltet.
Lange Antwort
Inhalt
Part A - Simple High Low Trigger Relays Without Opto Isolation
Part B - High and Low trigger relay modules with optical isolation
Part C - Boot time Relay Module Status, relay switch spec and misuse of NC terminal
Part D - Confusion between JD-Vcc jumper and High/Low Level Select Jumper Relays
Part E - Using The JD-Vcc Jumper for Total Optical Isolation / to continue, ...
Part F - Discussion and Recommendation - / to continue, ...
References - / to continue, ...
Appendices - / to continue, ...
Einführung
Die in der obigen kurzen Antwort beschriebene einfache Verdrahtung und Bedienung beinhaltet nicht den JD-Vcc-Jumper, der ein sehr cleveres elektronisches Schaltungsdesign ist. Die lange Antwort unten beschreibt die JD-Vcc-Schaltung im Detail, beginnend mit den grundlegendsten Ideen von High- und Low-Trigger-Relais mit und ohne optische Isolierung.
Teil A - Einfache High- und Low-Pegel-Trigger-Relaismodule ohne optische Isolierung
Um die Idee von Low- und High-Trigger-Relais zu erklären, beginnen wir mit der nicht optischen Methode und sehen uns die entsprechenden Schaltpläne unten an.
Teil B – High- und Low-Trigger-Relaismodule mit optischer Isolierung
Die stark vereinfachten Schemata geben einen groben Überblick über die Funktionsweise der High- und Low-Triggerschaltung. Reale Schaltungen müssen eine " Rücklaufdiode " haben, um die Energie des Rücklaufstroms beim Abschalten des Erregerstroms zu absorbieren. Ein „ optischer Isolator “ wird normalerweise verwendet, um EMI-Rauschen (elektromagnetische Interferenz) zu verhindern/zu reduzieren, das zur Signalquelle (Raspberry Rpi) zurückkehrt. Rauschen geht normalerweise auch durch die Erdungskabel. Deshalb kommt der " JD-Vcc-Jumper " herein, um "Total Optical Isolation" zu machen (mehr dazu später).
Ich vermute nur, dass das Relais des OP auf niedrigem Niveau ausgelöst wird. Es besteht eine geringe Chance, dass sein Modul tatsächlich auf High-Level getriggert wird, wie unten gezeigt. In diesem Schaltkreis aktiviert/schaltet das High-Signal den Relaisschalter ein.
Teil C – Startzeit Relaismodulstatus, Relaisschalterspezifikation und Missbrauch des NC-Anschlusses
Eine wichtige Klarstellung ist, dass unabhängig davon, ob ein Modul High- oder Low-gesteuert ist, wenn das Rpi/Arduino nicht mit Strom versorgt wird oder wenn sich der GPIO-Pin beim Booten oder auf andere Weise im Eingabemodus befindet, kein Strom angesteuert oder gesenkt wird, um den Optokoppler zu aktivieren, das Relais immer ausgeschaltet ist .
Eine verwandte Warnung für Neulinge ist, dass Sie immer den NO-Pin verwenden, niemals den NC-Pin, da sonst das Relais beim Booten oder GPIO im Eingabemodus eingeschaltet ist.
Eine weitere Verwechslung besteht zwischen dem "Relaisschalter" und dem "Relaismodul". Der kleine blaue Würfel ist der Relaisschalter, normalerweise mit "Songle" oder anderen Marken wie TongLing oder WV gekennzeichnet. Das Relaismodul hat leider fast immer keine Kennzeichnung von Marken oder Modellnummern.
Noch verwirrender ist der Optokoppler.
Es ist wichtig zu beachten, dass der Optokopplereingang nur in der Größenordnung von 5 mA liegt, der Aktivierungsstrom des Songle-Relaisschalters jedoch etwa 70 mA beträgt . Die folgenden Bilder können helfen, die Dinge ein wenig zu verdeutlichen.
Teil D - Verwechslung zwischen JD-Vcc-Jumper und High/Low-Pegel-Auswahl-Jumper-Relais
Vor einer detaillierten Untersuchung des JD-Vcc-Jumper-Relais des OP und seiner Steuerung ist es wichtig, zwischen dem JD-Vcc-Jumper und dem H/L-Level-Auswahl-Jumper zu unterscheiden. Das Schaltbild des H/L-Auswahl-Überbrückungsrelais ist unten dargestellt. Mit diesem Relais kann der Benutzer das Relais als Hochpegel- oder Niedrigpegelauslöser auswählen .
Dieser Schaltplan ist ein Test Ihres gründlichen Verständnisses der verschiedenen Arten von Relais. Hinweis - Sie müssen die Spezifikation des bidirektionalen Eingangsoptokopplers EL354 studieren, der oben in Teil C gezeigt wird.
/ weitermachen, ...
Verweise
(2) Songle SRD Serie Relaisschalter Spec
(3) Forbes-Low-Level-Trigger-Relaismodul mit JD-Vcc-Jumper Grundlagen – rpi.org.forum 2018jul14
(4) Forbes-Low-Level-Trigger-Relaismodul mit JD-Vcc-Jumper-Verdrahtung - rpi.org.forum 2018jul14
(5) Einrasten des Brat-Rpi-Beispiels 1/2
(6) Einrasten des Brat-Rpi-Beispiels 2/2
(7) Rpi GPIO EE (Spannung und Strom) Spezifikationen – Mosiac Documentation Web
(9) Verriegelung parasitärer Strukturen – Wikipedia
(10) Lastlinienanalyse von Transistoren - TutorialsPoint
(13) Verwenden von Relais und (JD-Vcc) Relaisplatinen mit dem Raspberry Pi
(14) So verwenden Sie ein Relais _ Teil 1 von 2 - DIY Smart Switch
(15) Verwendung eines Relais _ Teil 2 von 2 - DIY Smart Switch
(16) Wie man ein 5-V-Relais auf 3V3 Rpi/Arduino/Esp zum Laufen bringt
Anhänge
Anhang A – Was bedeutet die Abkürzung „ JD “ und wie wird dieser JD-Vcc/Vcc-Jumper verwendet?
Nun, Relais heißt auf Chinesisch „繼電器“, was wörtlich „Elektrizitätsgerät weitergeben“ bedeutet. In "Pinyin", der chinesischen Umschrift, heißt es:
Jì Diàn Qì
Ich denke, der Chinese, der die Schaltung entwirft, verwendet die folgende Abkürzung:
JD-Vcc ist der Pin zum Anschließen an die Stromversorgung des [externen] Relais (JD), während Vcc der Pin zum Anschließen an die Stromschiene/Versorgung des Arduino oder Raspberry Pi ist
Nun, wie man den JD-Vcc-Jumper verwendet:
(1) Wenn Sie dieselbe 5-V-Stromversorgung/Schiene von Arduino / Rpi sowohl für (a) den Steuerkreis des Relaismoduls als auch (b) den Songle-Relaisschalter verwenden, schließen Sie den JD-Vcc-Jumper ab und schließen den Vcc-Pin mit dem kurz JD-Vcc-Pin.
(2) Wenn Sie separate Netzteile verwenden, dh (a) die 3V3/5V-Stromversorgung/Schiene des Arduino/Rpi für den Steuerkreis und (b) externe 5V/12V/24V/48V (Anmerkung 1) für den Songle-Relaisschalter , dann sollten Sie den JD-Vcc-Jumper nicht verschließen, dh den Vcc-Pin vom JD-Vcc-Pin trennen, da sonst etwas schmelzen oder explodieren würde. :)
Hinweis 1 - Für industrielle Anwendungen, einschließlich Automobilanwendungen, ist es üblich, 12 V/24 V für die Relais zu verwenden, da eine höhere Spannung (a) weniger Strom und (b) weniger Rauschprobleme bedeutet.
Anhang B – Testen/Fehlerbehebung/Problemumgehung Triggerbare Relais mit niedrigem Pegel (mit oder ohne Opto-Isolation, mit oder ohne JD-Vcc-Jumper)
Einführung
Obwohl sich die Frage des OP auf sein Relais bezieht, bei dem es sich um optogekoppelte, per JD-Vcc / Vcc-Jumper konfigurierbare Netzteile mit Low-Pegel-Trigger handelt, müssen wir die Grundlagen der Vorspannung des Optokopplers (EL817C) von High / Low-Triggerschaltungen kennen.
Die sehr traurige Geschichte begann in den guten alten glücklichen Tagen, als wir Bastler mit nur 5 V Arduino spielten und alle logischen Pegel eine Art 5 V TTL sind, war das Leben einfach.
Erst als 3V3 Raspberry Pi auftauchte und später auch 3V3 Arduino (Pro Mini 328 3V3 8MHz) wurde das Leben unübersichtlich, vor allem für die Oldies/Newbies, die nur Arduino/TTL 5V Logik kennen.
Um zu verstehen, warum alle (na ja, fast) Neulinge verwirrt sind, müssen wir uns das folgende logische Pegeldiagramm genau ansehen , das die Grundursache der 3V/5V-Sorgen von Neulingen zeigt.
Konzentrieren wir uns auf die beiden Spalten ganz links, TTL und Arduino. Damals dachten meine Arduino-Freunde, dass das imperiale Arudino-Imperium glücklich bis ans Ende seiner Tage leben würde, und hätten nie gedacht, dass einige große Jungs wie Rpi bald auftauchen würden. Die Geschichte geht also dahin, dass die Arduino-Ingenieure einen neuen Standard/Spezifikation auf logischer Ebene entwickelt haben:
High level means at least 4.2V
Low level means at most 0.8V
Das Ergebnis ist, dass die meisten Geräte, z. B. Aktuatoren, einschließlich Relais, Solenoide, Summer usw., diese Spezifikation erfüllen, mit der (letzteren Rpi-Jungs beängstigenden) Anforderung, dass Sie 4,2 V oder mehr geben müssen, um etwas mit High-Pegel zu tun .
Natürlich macht das das Leben später geborener Rpis sehr elend, denn sie sind schwache 3V3-Typen, und ihr High-Pegel beträgt normalerweise 2,4 V bis höchstens 3,2 V. Dies ist, was ich normalerweise als das bezeichne
Low Trig Relay ist immer eingeschaltet, weil Rpi's High is Not High Enough Problem ist
Anhang C - Wie löst der JD-Vcc-Jumper das High-Not-High-Enough-Relay-Always-On-Can't-Turn-Off-Problem des 3V3 Arduino/Ri?
Die JD-Vcc-Schaltung mit getrennten (Vcc und JD-Vcc) Stromversorgungen löst das Problem „ Rpi's High not High enough “, was dazu führt, dass „ Relais immer eingeschaltet ist und nicht ausgeschaltet werden kann “.
Erklärung - Wenn Vcc = 5 V ist, ist Rpi's High von etwa 3 V nicht hoch genug (benötigt 3,5 V ~ 4,2 V), um den Sink-LED-Strom klein genug zu machen, um den gegenüberliegenden Fototransistor auszuschalten. Wenn Vcc auf 3V3 verringert wird, beträgt sogar Rpi High immer noch 3V, die Spannungsdifferenz 3V3 - 3V = 0,3V, wodurch der LED-Senkenstrom zu klein wird, um den gegenüberliegenden Fototransistor zu aktivieren.
Hinweis 1 - Es gibt ein paar andere Methoden, um das Problem "Rpi-High-4Not-High_Enough = Low Trig Relay Always On" zu lösen. Diese Methoden umfassen (1) das Verschieben des Rpi-High-Signals von 3 V auf 5 V durch ein NPN-BJT wie 2N2222 mit offenem Kollektor-Hochziehen (2) das Umwandeln des Rpi-GPIO-3V3-Logikpegels auf 5 V unter Verwendung von MOSFET-Paaren wie 2N7000 oder TBX010x-Logikpegel-Verschiebungsmodulen.
Die Verwendung der JD-Vcc-Schaltung löst das Problem jedoch nicht nur durch Verschieben des Logikpegels, sondern schlägt tatsächlich 4 Fliegen mit einer Klappe. Um zu erklären, wie eine Klappe 4 Fliegen töten kann, müssen wir uns die 4 Vögel ansehen, Vogel für Vogel. Der erste Vogel ist, wie man das immer eingeschaltete Relais mit einem der folgenden zwei Tricks ausschaltet:
1. Change the GPIO pin from output mode to input mode, or
2. Clean up (all) the GPIO pins.
Dieser Trick bzw. Workaround ist im folgenden Anhang beschrieben.
Anhang C - So schalten Sie ein immer eingeschaltetes Relais (Low Trig) aus (ohne den JD-Vcc-Jumper zu verwenden)
Einführung
Dies ist ein typisches Problem für Rpi/3v3-Arduino-Mini-Pro-Neulinge. Viele Neulinge kaufen fälschlicherweise ein für Arduino entwickeltes Low-Trigger-Relais und stellen fest, dass das Relais immer eingeschaltet ist. Das Folgende ist eine kurze Beschreibung einer traurigen Geschichte aus dem wirklichen Leben. (Ich verwende dieses sehr einfache Arduino-Relais, um die Problemumgehung zu erklären. Das in dieser Frage beschriebene JD-Vcc-Relais kann tatsächlich denselben Trick verwenden.)
Das Foto zeigt das Arduino-Relais, das nicht mit Rpi funktioniert.
Das Relais
Der Schaltplan (nicht genau passend, mit zusätzlicher blauer LED, PNP BJT 2N5401 ist eigentlich CS9012)
Erklärung - So schalten Sie das 5-V-Arduino-Low-Trigger-Always-On-Relais aus
Dies ist ein bekannter Neuling. Die Hauptursache ist, dass 3V3 Arduino und 3V3 Rpi's High (über 3V) nicht hoch genug sind (benötigt 3,5V ~ 4,2V), was dazu führt, dass ein gewisser Strom den PNP BJT (oder die Optokoppler-LED im JD-Vcc-Relaisgehäuse) und so aktiviert Der Songle-Relaisstrom wird nicht ausgeschaltet und immer eingeschaltet.
Jetzt ist die Problemumgehung für Anfänger eine Brute-Force-Methode, um den Aktivierungsstrom einfach zu unterbrechen, indem der GPIO-Pin vom Ausgangsmodus in den Eingangsmodus geändert wird. Im Eingangsmodus kann kein Strom in den GPIO-Pin sinken, und so wird PNP BJT (oder Foto-LED) abgeschaltet. Die Verwendung der GPIO-Bereinigung hat den gleichen Effekt wie die Rückkehr von GPIO in den Standardeingangszustand.
Es gibt jedoch ein schwerwiegendes Problem mit der Brute-Force-Problemumgehung: Es kann einen Verriegelungseffekt geben, der verursacht wird durch „Anschließen einer 5-V-Quelle über einen Widerstand an den GPIO-Pin, wie im folgenden Diagramm gezeigt (Anhang D).
Anhang D - Das Latching-Up-Problem, das den Rpi durchbrennt oder seine Lebensdauer verkürzt
Einführung
Rpi-Neulinge wurden leider nicht genug gewarnt, dass sie keinen GPIO-Pin an die 5-V-Stromschiene anschließen sollten . Wenn sie dies tun, wird der Rpi sofort frittiert.
Und das Anschließen eines GPIO-Pins an 5 V, selbst über einen Widerstand , kann fatal sein, wie im folgenden Artikel erläutert wird.
Daher sollten wir jetzt gewarnt werden, dass die Problemumgehung für Anfänger, den GPIO-Pin in den Eingangsmodus zu versetzen, um das Relais auszuschalten, auch zu einem Latch-up und einem Braten des Rpi führen kann, obwohl die Chance gering ist.
Anhang D – Relais-Klassifizierung
Wir begannen mit dem Low-Trigger-Relais des OP mit JD-Vcc-Jumper und beschrieben, wie der JD-Vcc-Jumper für die Konfiguration mit zwei Netzteilen verwendet wird, und lösten so das Rpi-High-Not-High-Enough, Low-Trig-Relais -Always-On-Cannot-Turn-Off-Problem.
Wir verwenden dann das einfache Low-Trigger-Relais als Beispiel, um zu erklären, wie die Problemumgehung von Switch-To-Input-Mode-To-Turn-Off-Relay verwendet wird. Wir erklären auch, dass diese Problemumgehung möglicherweise das Latch-up-Problem hat und den Rpi braten kann, daher nicht empfohlen.
Bisher haben wir die andere große Relaisklasse, die High-Trigger-Relais, noch nicht berührt. Um die Dinge nicht so verwirrend zu machen, habe ich das folgende Excel-Diagramm erstellt.
Anhang E – Warum haben die High-Trigger-Relais nie das Rpi-High-Not-High-Enough-and-Relay-Cannot-Turn-Off-Problem?
Wir werden das folgende High-Trigger-Relais verwenden, um zu erklären, warum es kein solches Can-Turn-Off-Relais-Problem gibt.
Das folgende Bild zeigt, warum für Arduino High (> 4,2 V) Trigger-Relais sogar Rpi's High (> 2,4 V) immer noch ausreicht, um das Relais auszulösen.
Anhang F – Warum haben Low-Trig-Relais (JD-Vcc oder andere) oft das Problem, dass Rpi High nicht hoch genug ist?
Referenz (10) Lastlinienanalyse von Transistoren – TutorialsPoint
Es ist schwer zu erklären. Sie müssen die High-Trig-NPN- und Low-Trig-PNP-Schaltkreise und VI-Eigenschaften (enger Cutoff, breites aktives/Sättigungsband) gegenüberstellen, um zu verstehen, dass es schwierig ist, das Low-Trig-Relais so vorzuspannen, dass sowohl Arduino High von 4,2 V als auch Rpi 2,4 ~ 3,2 V können das Relais abschalten.
Anhang G - Verdrahtungsbeispiel
Frage - Ich habe ein ähnliches Modul, aber mit "Total-Isolation", wo entspricht der Erdungsstift JD-VCC? Wenn Sie GND von Steuer- und Lastkreisen nicht anschließen, müssen Sie irgendwo GND der Stromversorgung für den Lastkreis anschließen - aber es gibt keinen Pin dafür?
Antwort - Ah, der Punkt ist, dass Rpi Gnd nicht mit Relais Gnd verbunden ist. Das ist die Bedeutung von "Total Opto Isolation", die RpiGnd von RelayGnd ( das große rosa X bedeutet keine physische Verbindung! ) und RpiPower von RelayPower isoliert.
Verwirrungspunkt - Rpi Gnd verbindet sich nicht mit Relaisplatine, ...
/ weitermachen, ...
TurboJ
Carlo García
Andi aka
Carlo García
Andi aka
tlfong01
Russell McMahon
Carlo García
tlfong01
Razy