www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Versorgung / Ungebung des AVR


Autor: Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Tag

Ich hab nun schon einige Schaltungen mit AVRs aufgebaut und habe da ein 
immer wiederkehrendes Problem: Die Dinger "stürzen ab". Bzw springen sie 
an eine undefinierte Stelle im Programm.
Ein Beispiel: Mein ASURO (kleiner Kaufroboter) wird mit einem 
Selbsttestprogramm ausgeliefert. Nachdem alles aufgebaut und getestet 
war, flashte ich ihn mit meiner eigenen Software. Er läuft auch, bis man 
eines seiner Räder wie wild dreht :) Denn dann springt das Programm 
irgendwo hin und ist wieder bei Teilen des Selbsttests die nicht 
überschrieben wurden.
Auch in KFZ-Anwendungen hatte ich oft dieses Phänomen. Da dimmt dann 
eben die Innenraumbeleuchtung nicht mehr sondern bleibt einfach stehen. 
Die Interupts laufen ordnungsgemäß weiter. Denn die PWM funzt dann noch.
Derzeit habe ich eine I2C/TWI-Anwendnug mit viel zu langem Kabel, über 
welches auch die Stromversorgung kommt. Ich vermute, dass sich immer 
wieder irgendwelche Störungen auf die Versorgungsspannung überlagern, 
die dann den ARV ausrasten lassen.
Den Entkopplungskondensator hab ich natürlich drin. Auch nach bestem 
Wissen in Sachen Layout-Design. Und die Brown-out detection habe ich 
auch schon bei 4V aktiviert. Denn ein Reset bei schlechter Versorgung 
wäre mir lieber als ein Stillstand. Und dennoch hängt sich der Mega16 
immer wieder (manchmal erst nach Stunden) auf.
Also was bitte ist das Problem und was kann ich dagegen tun?

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aktiviere mal den Watchdog und lösche dessen Timer zyklisch in Deinem 
Programm. Springt der Controller an nicht definierte Stellen oder hängt 
sich auf, sorgt der Watchdog für einen definierten Reset.

>Denn dann springt das Programm
>irgendwo hin und ist wieder bei Teilen des Selbsttests die nicht
>überschrieben wurden.

Vor dem Flashen eigener Programme sollte eigentlich immer ein Chip-Erase 
ausgeführt werden. Sollte der ASURO mit Bootloader arbeiten, gilt dies 
natürlich nicht ;-)

Autor: Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok, das ist ne brauchbare Notlösung.
Aber was ist der Grund für dieses Verhalten?
Es ware ja auch nicht schön wenn man sich die Mühe macht eine Dimmer ins 
Auto zu basteln, der dann immer schlagartig aus geht.

Der ASURO arbeitet mit Bootloader.

Autor: Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach kommt.

Das kann doch nicht sein, dass das so ein seltenes Problem ist, dass 
niemand von Euch eine Antwort hat. Ich hatte mir erhofft dass es da ne 
einfache Filterschaltung gibt oder dass es reicht wenn man den AVR in 
ein Metallgehäse packt.

Also bitte, nicht so zaghaft!

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das wahrscheinlichste ist, dass dein Versorgungsspannung
mies ist.
Meine AVR stürzen nämlich nicht ab. Allerdings betreibe ich
sie auch nicht im Auto. Im Auto bzw. mit Motoren an der
Versorgungsspannung braucht es schon wesentlich mehr Aufwand
um die Versorgungsspannung sauber zu kriegen.

Autor: Karl-j. B. (matrixman)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wie machst du denn die versorgungs spannung immer für deine AVR?

Autor: Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit dem "L200", einem einstellbarem Festspannungsregler. (Davon hab ich 
hier noch ein paar rum liegen)
Oder mit "78L05 SMD" wenn ich nicht so viel Strom brauche.

Autor: Karl-j. B. (matrixman)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hm ok und wie glättest du die spannung? hast du ein 100nF kondensator am 
AVR? dann solltest du vor und hinterm Spannungsregler noch Kondensatoren 
hinhängen.

Wenn du ein Oszi hast kannst du ja mal den genauen Spannungsverlauf 
ankucken und was für störfrequenzen du hast!

Wenn das nix bringt dann kannst du noch ein tiefpass filter zwischen AVR 
und Spannungsregler hängen. (Dazu findest du im Internet einiges)

Allgemein wenn du solche "empfindlichen" Schaltungen in der Nähe von 
störungen betreibst wäre ein Abgeschirmtes Gehäuse bestimmt nicht 
falsch! In deim Auto könnte es sein das dein Handy das verursacht.

mfg Karl

Autor: Εrnst B✶ (ernst)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die 100nF am AVR sind übrigens nicht dafür da, den AVR vor externen 
Störungen zu schützen, deren Hauptaufgabe ist, ihn vor Störungen zu 
schützen, die er selbst erzeugt, z.B. bei internen Schaltvorgängen, 
Port-Änderungen, etc.

Versuch mal die Betriebsspannung durch ein LC-Glied zu glätten, und 
halte die Leistungsteile weit weg vom µC. Motor-Masse und µC Masse nur 
an einem Punkt verbinden, etc...

Autor: Johannes A. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast Du schon mal an den Brown-Out-Reset gedacht bzw. damit probiert?

Mir riechen speziell die Jumps "ins Nirwana" ganz heftig nach Irrtümern 
infolge zwischenzeitlich zu niedriger VCC.

Gruß Johannes

Autor: Johannes A. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry, ich hatte nicht weit genug zurückgelesen - daran gedacht hattest 
Du schon. Trotzdem bleibt meine Frage, ob Du damit auch schon probiert 
hast.

Ich meine, Du kannst im MCUSR ja auslesen, ob ein und wenn ja welcher 
Reset abgelegen hat...

Gruß Johannes

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
es liegt definitiv nicht am AVR selbst. Ich setze die in Autos und auch 
in Industrieumgebungen ein, beides nicht gerade Kuschelwiesen für 
empfindliche Elektronik. Da gibts keine Probleme. Es immer wieder 
dasselbe: richtige Schaltung, richtiges Layout, tolerante Software.
Problematisch waren früher die classic-AVR (und aus der Zeit stammt wohl 
auch das Vorurteil, dass PICs damit besser fertig werden), mit den Megas 
sieht es viel besser aus. Hatte mal eine Messachaltung an einer 400kw 
elektrischen Bremse, das war mit dem 90S8535 eine einzige Katastrophe, 
ist nie richtig gelaufen :-)
Hauptprobleme sind die Stromversorgung (wobei 1N4007, 100µ, 78L05, 4µ7, 
100n selbst im Auto schon ziemlich gut funktioniert), Drosseln und 
TVS-Dioden bewirken fast Wunder.

Autor: Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein Oszy hab ich leider nicht.
Die Brown-out-detektion hab ich per fuse-Bits auf 4V eingestellt und 
aktiviert. Nur wird der Reset ja gar nicht ausgelöst.
Die Kondensatoren sind natürlich auch drin. Nur derzeit ist, wie gesagt, 
noch ein langes Kabel dazwischen.

Könntet ihr mir die Vorschläge Tiefpass, Drossel und TVS-Diode noch 
etwas näher erläutern?

Die Drosseln kommen doch mit 47µH in Reihe vor und nach dem AVR. 
(Richtig?) Würden die da nicht Hochohmig werden und mir meine Spannung 
weiter senken?

Zum Tiefpass findet man zwar viel im Internet, aber nicht als Entstörung 
für die Spannungsversorgung. Wie wird der denn dimensioniert und wie 
viel Verluste bleiben an ihm hängen?

Die TVS-Diode wird als Blitzschutz (???) beworben. Trägt die denn zur 
Stabilität bei?

Autor: Karl heinz Buchegger (kbucheg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Ludwig Wagner (lordludwig)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
http://www.dse-faq.elektronik-kompendium.de/dse-faq.htm#F.23

so sollte das zumindest im auto kein problem sein...

kannst du dir die versorgungsspannung vlt. mit nem oszi anschaun? du 
wirst bestimmt erschrecken!!!

hatte noch nie solche probleme mit den AVR's (obwohl... doch: ein 
AT90S1200 an nem netzteil mit sehr hoher restwelligkeit hat absolut 
nicht getan was er sollte. mit entsprechender beshaltung liefs dann doch 
einigermasen stabil. Inzwischen mach ein Tiny2313 seinen dienst in der 
schaltung, keine probleme!)

Autor: Ludwig Wagner (lordludwig)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
argh zu langsam... GRML

Autor: Johannes A. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> kannst du dir die versorgungsspannung vlt. mit nem oszi anschaun? du
> wirst bestimmt erschrecken!!!

Oh, StraBa-Netz ist noch viel spannender :-)

Autor: Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach wie peinlich:
> Würden die Drosseln da nicht Hochohmig werden und mir meine Spannung
> weiter senken?
Nein, es ist ja genau anders rum. Mit sinkender Frequenz werden die 
immer niederohmiger. (Man merkt es ist Feiertag :) )

Ich hab jetzt auf jeden Fall mal ein paar antike Drosseln aus der 
Ramschkiste eingelötet und bin jetzt sehr gespannt wie sich die Sache 
weiter verhält.

Auf der Suche bei Reichelt nach geeigneter Neuware bin ich schon wieder 
voll überfordert :) 6 Kategorien! Woher soll ich denn wissen was ich da 
brauche? Da ich SMD bevorzugen würde, würde ich die hier nehmen:
http://www.reichelt.de/?SID=27lRASvKwQARsAAEh-LsQ2...
Sind die dafür gut oder muss es eine "Funkentstördrossel" sein?

@ Johannes A. Wenn ich dann doch irgendwann mal ein Oszy hab, werde ich 
sofort einen Staßenbahn-Mast rauf klettern und mal gucken was du meinst.

Autor: Johannes A. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Och, es reicht schon, mal in nem "Dienstwagen" mitzufahren und das Oszi 
einfach auf die 24V-Bordversorgung zu hängen :-o

Autor: Marco S. (masterof)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Geh mal in die nehe von einem Amerteurefunkeantenne wenn der mit 750W 
Senderleistung und Morse arbeite.
Da kannst dan die Led's im Morsecode blinken sehn

Autor: Johannes A. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Marco, das ist zwar auch "witzig", aber halt noch kalkulierbare HF und 
damit immer noch harmlos gegen die Spikes, die auf dem internen 24V-Netz 
von Bahnen herumvagabundieren. Ich mein, da wirst Du schon mal mit 
10-15kV Peaks von unter 100ns Dauer konfrontiert - da lacht die Qualle, 
oder so ;-)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.