hallo! hab wieder mal ein problem bei dem ich eure hilfe bräuchte. hab mir die schaltung wie im anhang auf ne platine aufgebaut. über den IR-empfänger möchte ich ein relais schalten. soweit funktioniert alles gut. wenn ich jetzt aber an mein relais einen verbraucher (altes radio) anschliesse dann geht das ganze nur ein paar mal, dann geht nix mehr. der µC abreitet nicht mehr. hab mir dann mal die 5V mit nem oszi angeschaut und hab da störungen beim schalten gesehen (bis zu +/- 2,5V schwankung) hat jemand nen tipp wie ich das verhintern kann? gruss michael
hmmm, wie schon im plan zu sehen hab ich einen 2200µ und einen 0,1µ direkt am stabi hängen und nen 2,2µ direkt am µC. bring es mehr wenn ich viele kleine zu entstören einlöte?
Den Plan hab ich ganz übersehen... Dann würde ich ein anderes Relais empfehlen, welches nicht so viel Strom zieht.
Das Relais vor dem Spannungsregler anschließen, wenn möglich. An den Relaiskontakt ein RC-Glied. Viele kleine C, so 100n, sind besser als ein grosser.
okay, danke für die infos, werd es am montag dann mal probieren und rückmeldung geben obs funktioniert hat. gruss michael
Ein 2,2µ am Controller ist nicht notwendig, ein 100nF am µC ist sinnvoller. Ist die Schaltung "fliegend" aufgebaut oder auf einem Breadboard oder auf einer geätzten Platine? Wie hast Du den Reset-Pin des Mega-8 beschaltet? Da sollte ein Widerstand dran (irgendetwas zwischen 3K3 und 10K funktioniert). Ist die BOD eingeschaltet (Brown-Out Detection, s. Datenblatt)?
hab mal ne frage: was bewirken die kleinen kondensatoren eigentlich immer? die großen klingt ja logisch das die kurzzeitig viel energie liefern wenn mal was viel strom schlagartig braucht. aber was bringen die kleinen? sind die um hohe störfrequenzen zu glätten?!
Sagen wir mal so: Die "Großen" Elektrolyt-Kondensatoren sind eher träge. Sie haben eine hohe Energie gespeichert, aber durch die Bauart (Anschlußdrähte, Widerstand) können sie den Strom nur langsam "liefern". Die "Kleinen" Keramik-Kondensatoren sind dagegen rattenschnell und können auch hohe Frequenzen "kurzschließen". Eingesetzt werden da i.d.R. mehrlagige Typen. Die sind zwar nicht mehr so genau, aber das interessiert nicht. Und dann gibt es diese Tantal-Kondensatoren, die beide Welten verbinden - kleine Induktivitäten bei großen Kapazitäten, aber sie sind sehr empfindlich gegen Überspannung. Im Studium waren sie darum eher verpönt. (Ganz) nah an ICs gehören immer 100nF Keramik-Kondensatoren, um die "harten" Schaltimpulse der Logikgatter zu glätten. Einen Elko könnte man hier glatt vergessen.
die kleinen können viel schneller reagieren als große, und so können höhere frequenzen gefiltert werden. besonders kleine störimpulse.
@thomas die schaltung ist auf einer platine aufgelötet und mit draht sind die pins verbunden. der reset pin liegt direkt an +5V. BOD hab ich mir im datenblatt mal durchgelesen, aber ehrlich gesagt nicht verstanden.kannst du mir vieleicht mal kurz erklären welchen zweck das hat? gruß michael
Hallo, einfach gesagt: wenn die Betriebsspannung unter den für die Funktion garantierten Wert absinkt, kann keiner mehr sagen, was der AVR wirklich macht. Einige Gatter schalten noch, ein paar andere haben keine Lust mehr... Der Zustand, den damit die Schaltung annehmen kann, ist nicht mehr vorhersagbar und unsinnge Signale ab den Ports können Schäden verursachen. Also lieber den AVR in den Reset und warten, bis die Spannung wieder ok ist und von vorn anfangen. Man sollte ohnehin immer überlegen, wie sich eine Schaltung verhält, wenn der AVR im Reset hängt. Wenn dann z.B. ein paar H-aktiv geschaltete Relais ziehen, die besser nie gleichzeitig ziehen sollten... ;) Zu den 100n-Cs: heute kann man sicher gut genug simulieren, um vorher festzustellen, welche Abblock-Cs nötig sind. Früher hat man einfach an jedem IC und an jeder kritisch aussehenden Stelle (lange Leiterbahnen für Ub z.B.) welche eingeplant. Am endgültigen Gerät wurde offenbar dann nochmal gemessen und unnötige Cs wurden nicht bestückt, einfach Kostenfrage... Wer sich (ältere) Leiterplatten darauf hin mal genauer anschaut, wird etliche unbestückte Cs finden. Ich baue auch immer zuviele ein, sicher ist sicher. TTL-Faustregel war mal: an jedem IC ein 100n und pro 10 ICs ein 10µ Tantal, am Einspeisepunkt der Leiterplatte nochmal 47µ. Es geht darum, die Cs dort zu plazieren, wo die Impulsstörungen entstehen, also direkt am AVR z.B. Wenn der umschaltet werden kurzzeitig etliche mA mehr gezogen, die müssen abgefangen werden. Es spielt sich hier ja alles im ns-Bereich ab, da hilft ein großer C nicht, weil er eine viel zu große Eigeninduktivität hat, zu weit weg hilft auch nicht, 3cm Leitung sind da auch eine merkbare Induktivität. Gruß aus Berlin Michael
>>der reset pin liegt direkt an +5V.
Das sollte er aber nicht.
Leg ihn über einen Pullup auf 5V, aber nicht direkt.
wenn du ihn direkt an 5V hängst dann bekommst du ein problem wenn du den avr per isp programmierst! weil da wird der pin benötigt! Aber wenn du ihn zum programmieren ausbaust dann müsste es doch normalerweiße gehen den pin direkt dranzuhängen?! üblich ist das aber auf kein fall! mfg Karl
ich baue den µC immer aus zum programmieren, also besser gesagt er sitzt auf einem sockel. kann morgen aber mal probieren den reset über nen pull up auf 5V zu hängen.
also, ich habe jetzt mal mehrere 47nF C´s auf der platine verteilt und siehe da, bis jetzt läuft´s ohne einzigen absturz. danke! noch mal ne frage zu BOD: gib´s auch die möglichkeit den programmablauf nur zu stoppen und an der selben stelle weiter zu machen oder geht das nur über reset und neuer programmstart?
Deine Problembeschreibung kommt mir leider sehr bekannt vor. Ich hab mal versucht, 'ne Ampel zum Start von Rennen anzusteuern und bin mit den Relais jämmerlich gescheitert. Ich nutzte damals 'n alten AVR, der noch rumlag (ich glaub 4433), um die Relais über'n ULN2003 (Relaistreiber) anzusteuren. Leider resettete sich der AVR unregelmässig. Am Ende fand 'n Freund einen Kommentar in der Errata des Chips von der HP von Atmel. Die AVR Kerne haben große Probleme mit EMV, die fangen die sich nämlich selber ein. Zwar wurde das bei der Mega-Serie überarbeitet, soll aber immer noch ein gewisses Problem darstellen. Schau mal in die Errata zu deinem ATMega (auf HP von Atmel), was die dazu schreiben. Zu deinen Relais, wenn du Leistungen schalten willst, gehört da immer parallel zur Schaltstrecke ein sog. Snubber. Les mal unter Punkt 25.1 nach in http://www.dse-faq.elektronik-kompendium.de/dse-faq.txt Vielleicht kriegst du damit deine Probleme erschlagen, muss aber wie gesagt nicht sein. Wenn das nciht funktioniert, hab ich hier irgentwo 'ne Schaltung für Triacs gesehen, Musst du dann mal suchen. Mit denen konnte ich dann meine Schwierigkeiten lösen. MfG Alex
Ich habe nur kurz überflogen, kenne auch Deine Leiterbahnführung oder Verdrahtung nicht, aber was immer wichtig ist, daß Dein Verbraucher (Relais) und der µC sowohl in der Vcc wie in der GND Leitung entkoppelt sind, also keinen gemeinsamen Strompfad in der Versorgung haben. Also zu einem Punkt hin erden.
also, nach längerer testphase stellte sich zwar heraus das es mit den C´s nun viel besser läuft, aber es trotzdem noch ab und an probleme gibt, das sich der µC aufhängt. @alex: danke für den link. auf alle fälle wird da auch bestädigt was ich am anfang wusste. ohne last funktioniert´s und auf meinen 5V gibt´s nur ne minimale störung. liegt also nicht an der spule, sondern eher am kontakt. werde das mit dem snubber glied morgen mal probieren. das müsste die lösung sein.
so, ich denke jetzt kann sich das ganze sehen lassen. durch das snubber glied am relaiskontakt, haben sich die störungen auf den 5V enorm verringert. hab heute sehr viel getestet und es hat immer funktioniert. der µC hat sich nicht mehr aufgehängt. danke nochmal´s an alle die mich mit ratschlägen unterstützten. gruß michael
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.