atmega328p + 5V 2 Channel Relay

Hallo,

ich habe hier im Forum gesucht nach diesen Thema aber leider nichts passendes gefunden bzw. gesehen.
Ich will ein 2 Kanal Relay ansteuern über den atmega328p, daß mit dem Arduino UNO Bootloader ausgestatet ist.
Das Relay soll einfach 2 LEDs ein- und ausschalten.
Das Problem dabei ist, das das Relay nicht durchschaltet. Es erhält nicht ausreichend Strom.
Meine Überlegung ist, das Stromproblem durch ein BC547B Transistoren pro Kanal zu lösen.
Ich weiss leider nicht wie ich das Relay an den Transistoren anschliessen soll :frowning:

Die Basiswiederstände habe ich ausgerechnet und auf 2K Ohm.

Könnt ihr bitte einen Anfänger helfen ?

Basiswiederstand_Rechnung_Transistor.pdf (96 KB)

Hier noch ein kleiner Plan ( unvollständig ) was ich mir vorstelle.
Es handelt sich um dieses Relay: http://www.exp-tech.de/Shields/5V-2-Channel-Relay-Shield.html

PS: Eingangsspannung ist 9 Volt an der Diode und fällt dann auf 5 Volt über den Spannungsregler.

Das sollte eigentlich auch so gehen. Diese Relais haben den Transistor schon auf der Platine integriert. Zusätzlich hängt ein Optokoppler dazwischen. Du treibst im Prinzip eine LED mit dem Prozessor - keinen Transistor.

Hast du beachtet, dass diese Schaltung Low-aktiv ist?

Habe ich. So sieht der code aus.

#define RELAY_ON 0
#define RELAY_OFF 1

#define Relay1  7                      
#define Relay2  8                        

void setup()
{    
  digitalWrite(Relay1, RELAY_OFF);
  digitalWrite(Relay2, RELAY_OFF);
  
  pinMode(Relay1, OUTPUT);       
  pinMode(Relay2, OUTPUT);
}

 void loop()
{
  digitalWrite(Relay1, RELAY_ON);
  delay(1000);            
  digitalWrite(Relay2, RELAY_ON);
  delay(1000);     

  digitalWrite(Relay1, RELAY_OFF);
  delay(1000);             
  digitalWrite(Relay2, RELAY_OFF);
  delay(1000);
}

Wie verbinde ich das Relay an die Transistoren an ?

Die LED des Optokopplers kannst du auch direkt ansteuern. Die braucht nur 20-30mA. Da ist sonst irgendwo ein Fehler.

Ist der Jumper von JD-VCC nach VCC gesteckt? Sowie ich das sehe wird dann das Relais mit der Spannung versorgt die auch am VCC Pin rechts anliegt, wobei die galvanische Trennung aufgehoben ist. Mann kann den Jumper auch entfernen. Dann muss man aber an JD-VCC und GND links ein extra Netzteil anschließen.

Der Jumper steckt auf JD-VCC und VCC. GND ist offen.
Die LEDs am Relay leuchten ( Arduino code funktioniert ).
Die externen LEDs auf das Steckbrett reagieren nicht und das typische “klacken” des Relays fehlt.
In COM habe die Stromverbindung vom Steckbrett angeschlossen ( 4,75 Volt ).
An NO ist die Anode der LED verbunden. Dazwischen ist ein 220 Ohm Wiederstand für die LED.

r1.jpg

tron3x:
GND ist offen.

GND vom Relais-Board muß mit GND vom Arduino verbunden sein.

Ansonsten: Zeige Deine tatsächliche Schaltung!

Habe genau dieselben Relais in Verwendung, funktionieren ohne Probleme.
Wenn die jeweilige LEd auf der Seite leuchtet und das Relais nicht klackt, dann ist es defekt oder ein bauteil dazwischen ist defekt.
Manchmal gibts eine kalte Lötstelle (nicht vergessen, woher die Dinger kommen), die kann man (manchmal) erkennen weil sie nicht so schön glänzt wie die Anderen.

Ansonsten Reklamation !

Wenn Du den Oberen und Mittleren Anschluss (des jeweiligen Relais) benutzt, schaltet das Relais den Verbaucher AUS, wenn du den Mittleren und Unteren Anschluss verwendet schaltet es den Verbraucher AN.

Ich glaube es ist eher was jurs sagt. Das Relais muss schon eine Verbindung zu GND haben damit es geht.

Habe genau dieselben Relais in Verwendung, funktionieren ohne Probleme.

Und NATÜRLICH müssen GND und VCC verbunden sein mit dem RelaisBoard !

Die Sache ist halt dass es zwei GND Anschlüsse gibt. Der eine ist für die Eingangsseite des Optokopplers. Und der andere ist für die Ausgangsseite. Wäre vielleicht praktisch wenn es dafür auch einen Jumper gäbe.

Wo sind denn da 2 GND - Anschlüsse ?

Urk, sorry. Das war doof gedacht. Da war auch etwas verwirrt. :s

Es gibt schon zwei GND Pins. Aber die sollten intern eigentlich schon verbunden sein. Die LED liegt ja über IN1/2 an GND.

Weil da Optokoppler verbaut sind gibt es 2 verschiede Versorgungen.

http://www.exp-tech.de/service/schematic/2%20Channel%20Relay%20Schematic.pdf

Am 4 poligen Anschluß ist GND, Vcc und IN1 und IN2. Da muß Vcc an die 5V des Arduino angeschlossen werden. Das Relais schaltet durch auf Masse schalten (LOW) von IN1 bzw IN2.

Die Spannungsversorgung der Relais erfolgt durch:

  • Anschluß von 5V und Masse an JD-VCC und GND oder
  • Anschluß von 5V und Masse an GND und VCC an 4 poliger Stiftleiste und Jumper zwischen VCC und JD-VCC an anderer Stiftleiste.
    Grüße Uwe

Wohl auch eine Dritte:
ich habe Vcc und GND vom Board, und auch natürlich die beiden Leitungen für IN1 und IN2.

Am Relais1 habe ich einen Heizlüfter (220 V~) und an Relais2 einen Ventilator (220V~).
An den Relais habe ich beide an die jeweils rechte und mittlere der drei Klemmen angeschlossen: so schalten die Verbraucher sich EIN wenn das Relais anzieht.
An die linke und mittlere Klemme angeschlossen, sind die Verbraucher an und schalten sich AUS wenn das Relais anzieht.

Mag sein, dass ihr Profis da noch andere Anschlussmöglichkeiten findet, aber für mich ist ein Relais ein Schalter, sonst nüscht :wink:

A.R.Ty:
Wohl auch eine Dritte:
ich habe Vcc und GND vom Board, und auch natürlich die beiden Leitungen für IN1 und IN2.
....
Mag sein, dass ihr Profis da noch andere Anschlussmöglichkeiten findet, aber für mich ist ein Relais ein Schalter, sonst nüscht :wink:

Das ist meine 2. Variante.
Ich bezog mich ausschließlich auf die Spannungsversorgung der Relais und nicht auf das was an der Kontakten angeschlossen ist.
Grüße Uwe

Hoi Uwe,

Sorry, Mistverständnis :wink:

ist jetzt geklährt 8) 8)

Mahlzeit,

habe das Problem jetzt selber gelöst.
Was ich machen wollte ist auf dem Bild zu sehen.
Der Fehler war,daß der Basiswiederstand auf den NPN zu hoch gewählt wurde.
Das Relay hatte nicht ausreichend Strom erhalten um durchzuschalten.
Habe alles weggelassen, ohne NPN. Funktioniert und das Relay “klackt” auch wie ich es kenne.
Probieren geht doch über Studieren. ]:smiley:

Danke