Forum: Mikrocontroller und Digitale Elektronik Fehlfunktion bei Entladung (ESD)


von Frank1986 (Gast)


Lesenswert?

Hallo Leute,

ich habe hier ein Problem mit einer selbst gebauten Platine. Auf dem 
Teil sitzt ein kleiner Mikrocontroller und ein paar Schnittstellen. das 
Problem was ich nun habe, ist dass wenn ich mit den Socken am Boden 
reibe (Teppich), ich mich so auflade und das Teil bei einer Entfernung 
zu meinem Körper von ca. 30cm einfach gnadenlos neu startet. Wenn ich 
dann mein Fuß an die Heizung halte, hört man die Entladung (durch einen 
"knall", wie man's kennt)...genau in diesem Moment in dem der 
Funkenüberschlag stattfindet, führt der Prozessor erneut einen Reset 
durch.

Nun stellt sich mir die Frage was da für ein Mechanismus dahinter steckt 
und wie ich ihn beseitigen kann.

Vor allem komisch finde ich, dass es genau in dem Moment passiert in dem 
ich mich entlade. Genau in dem Moment der Entladung kann ich mit dem 
Oszi auf der Versorgungsspannung auch ordentliche Verzerrungen erkennen, 
die scheinbar ausreichen um den Prozessor zum Reset zu bringen.

Ich habe schon haufenweise Kondensatoren von der Versorgungsspannung 
gegen Ground gemacht, gebracht hat bis jetzt alles nichts.

Hat jemand schonmal so ein Phänomen bei sich beobachtet ?

Viele Grüße,
Frank

von Hubert G. (hubertg)


Lesenswert?

Jede Menge Kondensatoren am falschen Platz helfen nichts.
Zeig mal deinen Schaltung und das Layout dazu, dann kann man dir 
vielleicht einen Rat geben.

von T. roll (Gast)


Lesenswert?

Das Verhalten ist Standard wenn man nichts, oder nicht das Richtige 
macht. An allen Kabeln, die die Leiterplatte verlassen muessen 
kondensatoren gegen GND, resp gegen das Gehaeue. Bei Dc kann man 100nF, 
bei seriellen Verbindungen vielleicht 1nF, bei Analogsignalen vielleicht 
10nF.

von T. roll (Gast)


Lesenswert?

Eine GND Plane wuerd ich auch als Standard betrachten.

von Karlheinz (Gast)


Lesenswert?

Hallo,

interesant hier ist nicht warum es passiert, sondern warum die Schaltung 
nachher noch immer funktioniert !!?

von Reinhard Kern (Gast)


Lesenswert?

Karlheinz schrieb:
> sondern warum die Schaltung
> nachher noch immer funktioniert !!?

Wieso denn nicht? Sie wird GEstört, aber nicht ZERstört.

Gruss Reinhard

Frank1986 schrieb:
> genau in diesem Moment in dem der
> Funkenüberschlag stattfindet, führt der Prozessor erneut einen Reset
> durch.

Mit einem billigen Teppich machst du jede ungeschützte Elektronik 
nieder. Bei direkter Berührung wahrscheinlich sogar für immer.

Probier doch mal deine Schaltung in einem Metallgehäuse. Ist günstiger 
als ein echter Perser.

Gruss Reinhard

von Peter D. (peda)


Lesenswert?

Wie ist der Resetpin beschaltet?

Ein häufiger Fehler ist auch, daß Anfäger Eingänge mit externen 
Interrupts abfragen. Neben der hohen Störemfindichkeit können auch 
leicht Race-Conditions auftreten.

von Karlheinz (Gast)


Lesenswert?

An
Reinhard Kern

Sag mal: denkst du auch mal von 12 Uhr bis Mittag ???
Du erklärst mit ganz grossspurig

> Sie wird GEstört, aber nicht ZERstört.

und schreibst dann nur wenige Zeilen später

> ...Bei direkter Berührung wahrscheinlich sogar für immer.

Ist das dann eine "Störung für immer" oder was ???

von Reinhard Kern (Gast)


Lesenswert?

Karlheinz schrieb:
> Sag mal: denkst du auch mal von 12 Uhr bis Mittag ???
> Du erklärst mit ganz grossspurig

Bitte lesen. Der TO erklärt, dass er 30 cm von der Schaltung entfernt 
ist, damit macht man Elektronik nicht kaputt. Aufgeladen und bei 
Berührung sehr wohl. Was bitte ist daran jetzt grossspurig?

Dass eine µProzessorschaltung nach einem durch eine Störung erzeugten 
Reset wieder korrekt läuft, ist der Normalfall - genau deshalb sind 
Watchdog-Schaltungen sinnvoll. Aber die muss man natürlich auch 
verstehen können.

Worum es geht haben alle hier begriffen ausser dir, da kann man wohl 
nichts dran ändern, du musst halt dumm sterben.

Gruss Reinhard

von Stefan (Gast)


Lesenswert?

Oh, Oh

bei dem Spielchen des TO sollte man ihm besser sagen dass er mit einer 
"dauerhaften Störung" rechnen muss!!!

von Paul B. (paul_baumann)


Lesenswert?

El Pico -der Mann, der barfuß Funken schlug....
;-)
MfG Paul

von Frank1986 (Gast)


Angehängte Dateien:

Lesenswert?

Huch....so viele antworten :)

Danke an Alle für die Hilfe!

Der Reset PIN ist nur auf den JTAG gelegt (der Controller (ein PSoC) hat 
interne Pull Widerstände). Aber das sollte nicht zu einem Problem 
führen. So deutlich wie man die Störungen auf dem Oszi sieht, muss der 
Controller einfach neu starten.

Es handelt sich um eine relativ große Platine (20x20cm) mit großen 
Masseflächen (auf das das Signal ja gut einkoppeln könnte).

Gibt es irgendwo eine Sammlung von Tipps & Tricks die man gegen solche 
Störungen anwenden kann ? So oft wie die Auftreten muss sich das 
irgendwie verbessern lassen. Meine Geräte die ich hier noch so hab 
starten ja auch nicht alle neu wenn ich mich auflade.

Und wie geht man denn mit einem unvermeidbaren Problem um ? Wenn das 
ganze durch geeignete Maßnahmen gebessert hat und doch einmal ein Reset 
auftritt, dann muss ich ja das Gerät irgenwie wieder in den alten 
Zustand bringen.

Bleibt der RAM Inhalt bei solchen Resets erhalten und wie erkenne ich in 
der Software ob es ein regulärer Reset war oder eine Störung ?

Viele Grüße aus Starnberg,
Frank

von spontan (Gast)


Lesenswert?

Störfest machen, nicht rumdoktern!

Weg mit den Antennen am Board. Poste doch mal ein Foto des Aufbaus.

von Nachtaktive (Gast)


Lesenswert?

Vielleicht löst die Brown-Out Detection von den Mikrocontroller aus und 
startet diesen danch wieder neu.

In deien Diagramm kann man erkennen das Aufgrund der Störung die 
Versorgungsspannung kurzzeitig auf 4.68V abfällt - Zufällig sind auch 
4.7V ein Einstellbarer Schwellenwert für diese Unterspanungserkenung.

Auf welchen Wert ist das entsprechende Fusebit gesetzt? Probiere mal 
2.7V als Schwellwert aus und versuche den Fehler wieder zu 
reproduzieren. Falls der Fehler nicht mehr Auftritt kennst du zumindest 
die Ursache für diese Resets.



Für dein Problem gibt es keine so einfachen Tipps& Tricks da man sowas 
(sehr früh) in der Entwicklungsphase der Baugruppe einplanen muss. (z.B 
beim Entwurf der Leiterkarte oder des Schaltungstechischen Aufbau) Du 
hast aber schon die Implementierung abgeschlossen und bist somit 
mindestes 2-Projektphasen zu spät dran.

Alles andere ist nur Pfuscherei und bekämpft den eigetlichen Fehler 
nicht. Zeig doch einfach mal Bilder von deinen Aufbau!

von Apfelkopf (Gast)


Lesenswert?

Nachtaktive schrieb:
> In deien Diagramm kann man erkennen das Aufgrund der Störung die
> Versorgungsspannung kurzzeitig auf 4.68V abfällt - Zufällig sind auch
> 4.7V ein Einstellbarer Schwellenwert für diese Unterspanungserkenung.

Mir scheint du hast das Bild falsch abgelesen...Die Spannung fällt 
kurzfristig auf ca 0.7 Volt ab und das ist für den Betrieb natürlich ein 
wenig zu wenig :)
Also eher nicht die BrownOut Detection.


was ist eigentlich ein TO ? Tzzz...immer diese Abk.s :)

von Nachtaktive (Gast)


Lesenswert?

Apfelkopf schrieb:
> Nachtaktive schrieb:
>> In deien Diagramm kann man erkennen das Aufgrund der Störung die
>> Versorgungsspannung kurzzeitig auf 4.68V abfällt - Zufällig sind auch
>> 4.7V ein Einstellbarer Schwellenwert für diese Unterspanungserkenung.
>
> Mir scheint du hast das Bild falsch abgelesen...Die Spannung fällt
> kurzfristig auf ca 0.7 Volt ab und das ist für den Betrieb natürlich ein
> wenig zu wenig :)
> Also eher nicht die BrownOut Detection.
> was ist eigentlich ein TO ? Tzzz...immer diese Abk.s :)


Uff. Tatsache - Danke für den Hinweis!
Hatte V(max1) und mir beim zweiten das V(min) einfach dazugedacht... =D

Somit ist das Gedankenkonstrukt mit der BOD natürlich hinfällig.

von Wusel D. (stefanfrings_de)


Lesenswert?

Die Leitung vom Reset Pin zum JTAG Connector ist eine Antenne (wie alle 
Leitungen). Der Eingangswiderstand des AVR ist grob geschätzt 50k Ohm - 
das ist sehr sehr viel. Fernseher haben ca. 1000 mal weniger Ohm am 
Antenneneingang.

Die Funkentladung zwischen Deinem Fuß und dem Heizkörper erzeugt eine 
breitbandige elektromagnetische Welle, die von praktisch allen Antennen 
empfangen wird.

Du kannst Leitungen unempfindlicher machen, indem Du sie mit 
Widerständen und/oder Kondensatoren belastest.

Beim Reset-Eingang nimmt man üblicherweise einen zusätzlichen externen 
10k Ohm Widerstand und einen Kondensator mit 1 - 10µF.

Bedenke, dass alle anderen Leitungen ebenfalls (unerwünschte) Antennen 
sind. Wenn Dein Reset Problem behoben ist, könnte sich gleich das 
Nächste Problem offenbaren.

Funken-Entladungen sind schon ziemlich nervig.

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
Noch kein Account? Hier anmelden.