[Frage] Mehrere 16Port Relais-Karten an einem Mega

Hallo,

ich würde gerne zwei Relais-Karten wie diese
https://de.aliexpress.com/item/1pcs-12V-16-Channel-Relay-Module-for-arduino-ARM-PIC-AVR-DSP-Electronic-Relay-Plate-Belt/32589022833.html?spm=a2g0s.9042311.0.0.Qw2izT an einem Mega betreiben.
Ich hab vor ein paar Jahren mal zwei Megas bei dem Versuch geschrottet und seither die Finger davon gelassen.
Weiß jemand, wie die zu verkabeln sind, ohne etwas kaputt zu machen? Externe 12V sind vorhanden :slight_smile:

Danke im voraus,

Otto

each one needs 15 to 25 ma Driver Current

Wenn sich das auf die 5V Signal-Eingänge bezieht, wäre das schon eine Menge.

Das wäre sowohl für einen MEGA wie für 74HC595 Shiftregister in der Summe zu viel.

Kann sich aber auch auf die 12V Seite beziehen, wer weiss... *)

Wenn du die Relais - Karte schon da hast, könntest du die Eingangswiderstände der Optokoppler ansehen, oder nachmessen.

Zur Not müssten dann 32 kleine Transistoren+ Vorwiderstände oder 4 ULN2803 davor.
(Mit denen könnte man allerdings 12V Relais auch direkt ansteuern :wink: )

Nachtrag:
OK, das hat sich geklärt (#5) Die ULN2803 (im Plan als ULN 2083 bezeichnet ?) sind schon drauf.
Die Optokoppler werden über die PR1 .. PR4 Vorwiderstände angesteuert.

(deleted)

Megas bei dem Versuch geschrottet

Kann ich mir durchaus vorstellen...

Wofür brauchst du 32 Relais?

Vielleicht gibts ja ganz andere Möglichkeiten.
...viel Bessere ...

anwofis:
Ich finde das Angebot ein bisschen komisch. In der Überschrift steht 12V und in der Beschreibung 5V (Versorgungsspannung ?). Also ich habe auch so ein Relais-Modul (mit einem Relais) in Verwendung und das braucht nur 5V Versorgung.

Die Spulen sind für 12V ausgelegt.
5V reichen hier für die Betätigung nicht aus.
Der Spulenstrom ist in der Menge erheblich.
Kann ein Mega, über USB, nimmer liefern.

Übrigens: Man kann die Optokopper auch runterkneifen und die ULN direkt ansprechen.
Dann wird der Mega auch nicht überlastet.

(deleted)

anwofis:
...
Ein kurze Frage: Wie kann man sich den Mega zerschießen, wenn man das extern mit Spannung versorgt und mit dem Mega nur die Optokoppler schaltet?

Meinst du deine Frage wirklich ernst ?

Wenn du wüsstest, was da alles möglich ist.

Hallo,

bei Sainsmart gibt es Beschreibung und den Schaltplan für das Board, sofern das von Aliexpress das gleiche ist. Link: 16-Channel 12V Relay Module – SainSmart.com

Soweit ich das sehe, gibt es auf dem Board keine Vorwiderstände für LEDs in den Optokopplern. Damit werden die Ausgänge des Megas völlig überlastet und der brennt früher oder später durch. Du solltest Vorwiderstände einsetzen. Ich schätze, ca. 470Ohm bis 2kOhm sollte gut passen. Benutze möglichst große Widerstände, damit die Belastung des Megas klein bleibt. Es sind schließlich 32 Leds.

Ich sehe da im Plan PR1 usw. Wenn das nicht mehrere (4) Widerstände in einem Bauteil zusammengfefasst sind, weiß ich nicht, was das sonst sein soll.

michael_x:
Ich sehe da im Plan PR1 usw. Wenn das nicht mehrere (4) Widerstände in einem Bauteil zusammengfefasst sind, weiß ich nicht, was das sonst sein soll.

Das könnte natürlich sein. Man müsste mal den Strom durch die Koppler messen. Wenn da 20mA fließen und das mal 32, dann kann das auch den Mega überlasten.

anwofis:
Ein kurze Frage: Wie kann man sich den Mega zerschießen, wenn man das extern mit Spannung versorgt und mit dem Mega nur die Optokoppler schaltet?

Dein Irrtum liegt bei "nur die Optokoppler": 32 * 20 mA = 640 mA sind zu viel. Gilt aber nur, wenn sich die 20 mA wirklich auf die LEDs beziehen.

Wenn ich das Teil auf dem Tisch hätte, würde ich zwischen einen Arduino-Ausgang und einen Eingang ein 1 kOhm Poti schalten und dann den Widerstandswert so lange reduzieren, bis das Relais sicher reagiert. Dann den Strom messen und mit 32 multiplizieren. Beispiel: Relais schaltet bei 5 mA LED-Strom, wären in Summe 32 * 5 mA = 160 mA ein wohl akzeptabler Wert.

Meine Hoffnung wäre, der Satz "12V 16-Channel Relay interface board, and each one needs 15-20mA Driver Current" bezieht sich nicht auf die LEDs, sondern auf die Primärseite der Relais und spezifiziert den notwendigen Strom für das 12 V Netzteil. Leider gibt auch der Schaltplan darüber keine Auskunft, da weder die Widerstände noch die Optokoppler beschriftet sind.

Man müsste mal den Strom durch die Koppler messen

Mal den Widerstand zwischen Pin1 und Pin4 des ominösen PR1 Bauteils messen. Wenn das tatsächlich nur 200 Ohm sind, wäre ich vorsichtig.

Man kann auch zwischen Arduino - Pin oder GND und Karten-Eingang einen 1k Widerstand halten und prüfen, dass LED und Relais immer noch reagieren.

Man kann auch zwischen Arduino - Pin oder GND und Karten-Eingang einen 1k Widerstand halten und prüfen, dass LED und Relais immer noch reagieren.

So kann man sich eine derbe Temperaturabhängigkeit einbauen.

Eigentlich sind ja nicht die IR-LEDs im Optokoppler das Problem, sondern der Fototransistor.
Der braucht richtig Licht, und dafür muss man halt die LEDs feste bestromen.

Mein Tipp:
Datenblatt des Optokopplers lesen, und nicht unter die empfohlenen Werten gehen.

Alternativ: Ab mit den Dingern! (oder drüber weg gehen)
Die Eingänge der ULN geben sich mit wenigen mA zufrieden, und Basiswiderstände sind schon eingebaut.
(auch hier wieder: Datenblatt lesen)

Wozu die doppelte galvanische Trennung, bei diesen Relais Modulen gut sein soll, habe ich sowieso noch nicht verstanden.

combie:
Alternativ: Ab mit den Dingern! (oder drüber weg gehen)
Die Eingänge der ULN geben sich mit wenigen mA zufrieden, und Basiswiderstände sind schon eingebaut.

Allerdings müssen wohl PR3, PR5, PR6 und PR8 beachtet werden. Dürften Widerstände sein, deren Wert aber nicht angegeben ist.

Blödes Schaltbild :stuck_out_tongue_closed_eyes:

Mein Tipp:
Datenblatt des Optokopplers lesen

Immer gut.
Da gibt es meist eine Strom-"Verstärkung" von 1:1 oder auch schlechter, wodurch klar ist, dass man "richtig Licht" (also ausreichend IF) braucht, wenn der Transistor nennenswerten Strom durchschalten soll. Was wir aber im ULN2803 Eingang gar nicht brauchen. Müsste man sich auch die Widerstände auf der Ausgangsseite ansehen.

Zusätzlich zu den (angenommenen) 200 Ohm noch 1000 dazuschalten, ist sicher viel. Falls man da knapp an der Funktionsgrenze landet, kann man ja weitersehen.

Der Steuerstrom tritt übrigens nur auf, wenn der Arduino-Pin OUTPUT und LOW ist (und das Relais anzieht). Vielleicht braucht der TO ja max. 4 der 32 Relais gleichzeitig angesteuert, und die ganze Diskussion hier ist überflüssig.


Mal sehen was hier passiert, wenn der TO verrät, dass er mit seinen Relais AC 230V 10A schalten will,
also fette 2kW Motoren :wink:

Hi,

erstmal danke für die zahlreichen Antworten, die mir (als Laie) leider nur bedingt weiterhelfen.
Warum ich das möchte:
Ich hab im Zuge meine Hausautomatisierung etliche Lampen, Steckdosen etc. sternfömig verkabelt. Derzeit läuft ein Mega mit so einem 16-Kanal-Relais, Board, das aber voll ist. Da ich ein Kabel-Fan bin, habe ich das Ganze mittels Ethernet-Shield und Universal Firmata angebunden (und nicht per Wifi oder sonstiger Drahtlos-Verbindung). Das System läuft nun seit ca 2.5 Jahren stabil.

Derzeit bin ich am Überlegen, mir eine Art Universal MQTT-Sketch zu stricken, weil das offener wäre als Firmata.

Natürlich könnte ich einen zweiten Mega reinstecken in den Schaltschrank, aber irgendwie hab ich mir gedacht, bei der Menge an Ausgängen könnten die 32 Relais ja auch an einem einzigen Mega laufen.

Ich weiß nicht mehr, wie ich damals die Megas geschrottet hab, ich denke, es war ganz einfach eine Überlastung...

Cheers,

Pula