Relais klicken beim einschalten

Hallo,

ich bastel mir grade eine Steuerung in der ich letzten Ende 3 Relais steuern werde, habe mir dafür schon eine Leiterplatte geätzt und alles soweit aufgebaut, habe aber ein kleines Problem:

Immer wenn ich der Schaltung Strom gebe höre ich ein oder mehrere Relais klicken (Akustisch kaum zu differenzieren…). Das selbe passiert wenn im laufenden Betrieb der Reset Schalter gedrückt wird.

Auf der Platte befindet sich ein mit Arduino Bootloader geladener Atmega328 der mithilfe eines USB2Serial Light programmiert wird. Da hier alles funktioniert schließe ich mal eine Fehlerquelle hier aus.

Die Relais haben einen Widerstand von 400 Ohm und werden bei ca 12V über BC547C Transistoren, deren Basis wiederum über 1k Ohm direkt an den Atmega Pin gehen, geschaltet. Die Relais lassen sich direkt und problemlos über digitalwrite ansteuern, also ist prinzipiell alles ok. Die Transistoren die die Relais steuern sind an Pin 11, 12 und 13.

Erwähnenswert ist vielleicht das ich in Eile die Freilaufdioden verpennt habe und deswegen in den nächsten Tagen eine neue Platte ätze. Dank dem niedrigen Strom von unter 30mA scheint dies zumindest beim experimentieren kein Ausfall der Transistoren zu bringen… Dennoch will ich das “ausbügeln” und dabei auch wenn möglich das klicken beseitigen… :wink:

Also, irgendeiner eine Idee woher das Klicken kommt und wie ich es verhindern kann?

Ich könnte mir denken, dass in deinem Code die Serial-Library verwendet wird und eines der Relais von einem Serial-Port gesteuert wird...

Möglicherweise ein kurzzeitig undefinierter Zustand beim Einschalten bzw. Reset, Dein Programm startet ja gerade erst. Könnte mir vorstellen, daß es sich mit jeweils einem entsprechend dimensionierten Kondensator abfangen lässt.

Gruß, mmi.

Also ich hab bisher nur Codefetzen draufgespielt um die einzelnen Hardwarekomponenten zu testen, es muss irgendwas mit dem Chip selbst sein, wie mmi schrieb.

Mir ist grade eingefallen das beim Einschalten meines Unos und Duemilanoves immer die LED auf Pin 13 einmal blinkt. Könnte dies die Ursache sein das der Bootloader Pin 13 irgendwie als LED Pin ansieht und deswegen kurz "blinken" lässt?

Jetzt ist es ein bisschen zu früh, aber ich werde wohl morgen meine arme kleine Platine wieder "zerlegen" um das zu überprüfen, also mal je nur ein Relais laufen lassen um zu sehen welches da rumklickt. :)

Das LED an pin 13 wird als "Anzeige" verwendet. Der Bootloader läßt es beim Einschalten oder nach einem Reset 2 mal kurz blinken. Hast Du das Relais an Pin 13 angeschlossen? Die 2 Quelle dieses Problem könnte sein, daß beim Einschalten oder nach einem Reset alle Pins als Ausgang geschaltet sind und deswegen die Transistoren kurz durchschalten. Man verhindert das mit einem 10kOhm Widerstand zwischen Masse und Basis des Transistors. Grüße Uwe

Ich habe eins der drei Relais tatsächlich an Pin 13, also scheint das das Problem zu sein.

Ich nehme an da der Bootloader ihn blinken lässt lässt sich das ganze softwaretechnisch nicht umgehen?

Du müßtest den Bootloader umschreiben und der ist in Assembler.
Da ist es einfacher ein anderes Pin zu verwenden.
Grüße Uwe

Also als kleines Update:

Habe heute nachdem die Platine fertig durchgetestet wurde mal das Relai an Pin 13 "abgeklemmt" und das war wirklich die Fehlerquelle. Da ich sowieso eine neue Platine ätze hab ich die ganze Geschichte aufm Layout angepasst, wobei eine bisher nur als Notreserve eingeplante LED weichen musste. Naja da ich ohnehin ein LCD verwende wird eine LED mehr oder weniger wohl kein Weltuntergang.

Vielen Dank für die schnelle Hilfe hier!

Das ausgerechnet Pin 13 nun leer steht macht doch einen etwas abergläubigen Eindruck :P

Das ausgerechnet Pin 13 nun leer steht macht doch einen etwas abergläubigen Eindruck

Du kannst ja dort das wegratonalisierte LED hingeben: Daß es am Anfang 2 mal blinkt ist ja kein Problem. Grüße Uwe

Pin 13 sitzt in meinem Layout so bescheiden das es 2 Brücken bräuchte, wovon ich nur eine mithilfe des Widerstands lösen könnte - Und da der LED Anschluss sowieso nur weil "Gerade so gut gepasst hat" angelegt wurde und ich bisher nichtmal eine einplane (Und nebenbei bemerkt urprünglich 2 Möglichkeiten für eine LED auf dem Layout vorgesehen waren) verzichte ich lieber auf sie als das Layout weiter zu verunstalten.

Du kannst ja 2 Widerstände nehmen und die als Brücken mißbrauchen. Die Summe der beiden Widerstände entspricht dem notwedigen Vorwiderstand des LEDs. Grüße Uwe