Hallo, ich habe ein Problem. Mir sterben an einem ATMega-32 reihenweise die Eingänge des Controllers und ich bin auf der Suche nach dem Grund dazu. Das besondere an diesem Eingang ist, dass er durch ein Relais geschaltet wird. Als Relais kommt ein KFZ-Relais zur Verwendung, welche massenweise in Autos eingesetzt werden. Diese Schaltung wird aber nicht im Auto betrieben. Stromversorgung erfolgt über ein Steckernetzteil 12V, einem 7805 inkl. der Standardbeschaltung wie im Tutorial. Was muss man beachten, wenn man ein Relais an den Eingang eines µC hängt? Meiner Überlegung nach ist das ja eigentlich nur ein normaler Schalter, der halt durch einen Magneten bewegt wird. Von daher habe ich ihn wie jeden anderen Taster auch angeschlossen (siehe 1. Bild). So geht der Eingang nach wenigen Schaltvorgängen (< 10) kaputt und liefert dann nur noch zufällige Werte. Dann war meine Überlegung, dass man, wenn man ein Relais schaltet, ja eine Freilaufdiode einsetzt um den induzierten Strom zu vernichten. (2. Bild) Also habe ich auch das gemacht. Hat mir aber auch nicht weitergeholfen, der Eingang geht trotzdem kaputt. Bei den Bilder hab ich es natürlich auf das Wesentliche reduziert. In Wirklichkeit habe ich in dem 12V-Teil keinen Taster, sondern einen kapazitiven Näherungssensor, der mir, je nachdem, ob geschaltet, 12V liefert, oder halt nicht. Vielen Dank! Jens
Geordnet nach Wichtigkeit: 1. Lege direkt in die Leitung zu PA3 einen Widerstand (1k - 3k3) 2. Füge Ableitdioden an PA3 hinzu. Eine Diode gegen Vcc und eine Diode gegen GND, natürlich beide in Sperrichtung. Der AVR hat sowas aber auch schon intern. Das ist wahrscheinlich auch das, was immer putt geht. + | --- / \ --- 1k - 3k3 MCIn | ------ o-------o-----| |-----o vom Kontakt | ------ | --- / \ --- | GND | --------o------------------ 3. Wenns immer noch nicht reicht, füge noch einen 'Funkenlösch-C' in der Grösse von 5n - 47n hinzu, parallel zur unteren Diode. Das kann aber den Puls ein wenig schwammiger machen. Wenns allerdings auf ein paar 10uS nicht ankommt, macht das nix.
moinsen, deine eingezeichnet "freiluf diode" muss dirrekt ans relais!!! die maßnahmen von Matthias Sch. (Firma: Matzetronics) sind voll i.o. falls das immer noch net war, kann man die schaltung ja durchaus noch aufblähen und mit nem OP arbeiten.... ansosnten würde ich mir mal die spannungsquelle näher betrachen!!! mfg timo
Wo bekommt das Relais seine Spulenspannung her? Aus dem gleichen Netzteil? Freilaufdionde ueber die Relaisspule waere mein erster Gedanke. citb
Jens T. schrieb: > Dann war meine Überlegung, dass man, wenn man ein Relais schaltet, ja > eine Freilaufdiode einsetzt um den induzierten Strom zu vernichten. (2. > Bild) Also habe ich auch das gemacht. Hat mir aber auch nicht > weitergeholfen, der Eingang geht trotzdem kaputt. ohh - die närrischen Tage....oder fehlen wohl noch ein paar Grundlagen??? Frage 1: Wo kommt die "Freilaufdiode" hin? Antwort a () => an die Spule Antwort b () => an den Kontakt Frage 2: Bist du sicher das du den Port nicht per SW setzt und dann mit dem harten Schalten gegen GND in den "Stromtot" treibst??? nitraM
verdrahtung und Relaisbelegung überprüft? Leitungslänge vom RelaisKontakt zum Pin? Du hast keinen Hund in der SW ?
Hallo Matthias, vielen Dank für die schnelle Antwort. Nur, um sicherzugehen, dass ich alles richtig verstanden habe. Mein Pullupwiderstand bleibt und ich schalte gegen GND? Ich hab das mal in den Schaltplan eingefügt. Ist das richtig so? Vielen Dank! Jens
Oha, die Antworten kommen ja Schlag auf Schlag. @citb: die Spulenspannung kommt aus dem selben Netzteil. @Martin: Mit närrischen Tagen hab ich hier nichts am Hut. Von daher ist das zweite der Fall, mir fehlen Grundlagen auf dem Gebiet. Richtig. Zu Frage 1: wenn Du so fragst, hab ich es vermutlich falsch gemacht und die Diode würde über die Spule gehören. Zu Frage 2: Ja, da bin ich sicher. @Winfried: Dass ich keinen Hund oder Käfer in der Software habe, da bin ich sicher. Verdrahtung geprüft. Leitungslänge zum Relais < 15 cm. Vielen Dank für die Antworten bis hier her. Jens
Den 10k Pullup würde ich direkt am Kontakt lassen, sonst erreicht du mit 3k3 in der Portleitung evtl. nicht mehr einen richtigen Low Pegel. Sonst sieht das sehr gut aus. Ich würde allerdings nicht die langsamen 4004 nehmen, sondern den Klassiker 4148 oder 4151. citb schrieb: > Wo bekommt das Relais seine Spulenspannung her? > Aus dem gleichen Netzteil? Das kann ich mir nicht vorstellen, dann wär ein Relais ja völlig überflüssig und ein Optokoppler bzw. ein Spannnungsteiler die richtige Wahl.
Danke Dir. Wir haben das Relais genommen, weil es halt gerade verfügbar war. Und es so einfach schien. Aber man lernt immer dazu.
Jens T. schrieb: > Dass ich keinen Hund oder Käfer in der Software habe, da bin > ich sicher. In der realen Welt stimmt diese Aussage leider zu geschätzten 75% leider nie... BUGHUNTER
Die beschaltung mit den zwei Dioden kannst du die sparen, das hat der ATMEGA bereits drin. Allerdings würde ich einen 100nf Parallel zum Eingang (gegen Masse) und der Spule vom Relais eine Freilaufdiode gönnen.
Jens T. schrieb: > Wir haben das Relais genommen, weil es halt gerade verfügbar > war. Dann rate ich dir zum Optokoppler. Das ist problemlos und es wird nichts mehr kaputtgehen. Auf der 12 Volt Seite beschränkt sich das dann auf das Ausrechnen des Vorwiderstands für eine LED und auf der Portseite fällt alles bis auf den 10k weg :-) Da ich begeisterter Recycler bin: Optokoppler sind in alten Telefonen, Faxgeräten und Schaltnetzteilen leicht zu finden.
Hm, Jungs, Vorwiderstand, Ableitdioden, Funkenlöschkondi? Das alles für einen Kontakt, der einen 10k Pullup von 5V nach Masse zieht? Gegen die Freilaufdiode an der Spule ist ja nichts zu sagen, aber der Rest? Ich tippe auch mal da drauf, daß da im Programm was nicht stimmt. Oliver
Die Eingänge/Ausgänge vom Mikrocontroller sind in der Regel wenig belastbar und nicht für eine raue Umgebung ausgelegt. Hier gibt es einige Applikationshinweise zur Anbindung an die Industrielle Umgebung: http://www.ichaus.com/mcu_interface. Leider nur in Englisch, aber die Datenblätter gibt es auch in Deutsch.
Hallo, ich habe einen ähnlichen Fall. Ich möchte ein Relais (Schließer) als Input am AVR nutzen. Ich hätte diesen einfach gegen GND mit dem Portpin geschalten und den internen Pullup. Nun habe ich aber diesen Thread gelesen und habe Angst, dass ich damit meinem AVR kille. Muss ich denn noch was beachten oder dürfte da nichts passieren?
ich spendiere einen Pin immer einen Widerstand. So kann man die internen Dioden schützen damit diese ihre Aufgabe erfüllen können, außerdem verhindert man einen Überlastung des Pins wenn man etwas falsch konfiguriert. Ein Relais als Eingang ist schon ein komisches vorhaben, weil der Kontakt beim Öffnen auch Müll erzeugen kann, wenn das ohne Schutzmaßnahmen auf den Pin kommt himmelts den. Die Diode muss antiparallel zur Magnetspule des Relais im die Induktionsspannung nochmals durch die Spule zu schicken, dadurch wird die dann abgebaut. Dieser Impuls kommt meist durch den 7805 durch deswegen dem noch einen kleinen LC Filter am Eingang spendieren.
Naja das Relais hat auch 2 Spulen eine zum schließen und eine zum öffnen und diese sollen dann einfach einen Pin schalten, da ich vom KFZ ein Signal hab auf 2 Leitungen wo dann entweder Leitung 1 + und Leitung 2 - oder andersrum herrscht. Diese Leitungen an das Relais und dann hab ich für diese Zeit den Pin high und beim anderen Fall den Pin low und spare mir sogar noch irgendwelche Schutzbeschaltung vom KFZ Signal und galvanisch getrennt ist dies auch noch.
Thomas O. schrieb: > geht es um Tür auf/zu Erkennung? nicht ganz aber nah dran ... Hintergrund ist eine Coming / Leaving Home Function nachzurüsten. An dem Auto wurde Funk nachgerüstet. Dabei sind jedoch nur 3 von 4 Servos angeschloßen (Auto ist dreitürer) und somit wäre der vierte zur Erkennung ob offen oder nicht. Würde das mit dem Relais als Eingang gehen oder brauche ich noch Schutzbeschaltung? Abgesehen von der Freilaufdiode
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.