Forum: Mikrocontroller und Digitale Elektronik EEPROM gelöscht - EMV und Zuleitungen


von Sebastian F. (sfrank)


Lesenswert?

Hallo an das Forum!

Ich habe eine Schaltung mit einem ATmega644 entworfen, welche die 
Signale von Durchfluss-Sensoren erfasst und Magnetventile entsprechend 
schaltet (Abfüllanlage). Die Spannungsversorgung der Schaltung erfolgt 
mit einem geregelten Netzteil direkt auf der Platine. Die Spulen der 
Magnetventile werden über Relais (ebenfalls auf der Platine - MIT 
FREILAUFDIODE und KONDENSATOR!) geschaltet (Spulenspannung 230V AC). Die 
Sensoren haben einen NPN-Ausgang und werden mit 5V ebenfalls aus meiner 
Schaltung heraus mit Spannung versorgt. Da die Anlage zentral bis zu 4 
Stellen steuern soll, habe ich zum Teil 5m lange (abgeschirmte CAT6) 
Zuleitungen zu/von den Sensoren und den Ventilen.

Jetzt zum eigentlichen Problem: Einige Programmparameter sind im EEPROM 
abgelegt. Werden diese nicht korrekt geladen hängt sich der ATmega auf. 
Jetzt kommt es sporadisch vor, dass der EEPROM scheinbar gelöscht wird. 
Um das Gerät wieder in Betrieb zu nehmen, muss ich das gesamte Programm 
(inkl. EEPROM-File) neu flashen. Nach mehreren neuen Platinen-Layouts 
(riesige Masseflächen, galvanische Trennung mit Optokopplern und 
DC-DC-Wandlern, Snubber, ...) trat der Fehler weiterhin, mal häufiger, 
mal seltener auf. Ganz lies er sich nicht beheben. Deshalb entschloss 
ich mich schweren Herzens meine Platine als Schrott zu deklarieren und 
habe sündhaft teure Zählermodule für den industriellen Einsatz gekauft. 
Eine Woche lang funktionierte das ganze. Gestern fiel nun der erste 
Zähler aus und heute der zweite. Die Beschreibung der Fehlermeldung beim 
Kundendienst des Herstellers ergab, "... dass die Firmware irgendwie 
gelöscht sein worden muss ..." (Meine Idee: Auch der EEPROM?).

Jetzt meine Frage an das Forum: Was kann ich noch tun, um dem Problem 
auf die Spur zu kommen? Sind es Störungen im Netz oder Störungen auf den 
Zuleitungen. Allerdings sollte ein namhafter Hersteller doch 
entsprechende Schutzschaltungen integriert haben.
Ich bin dankbar für jeden neuen Denkanstoß.

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Sebastian Frank schrieb:
> Ich bin dankbar für jeden neuen Denkanstoß.

Poste die Schaltung.

von Peter D. (peda)


Lesenswert?

Sebastian Frank schrieb:
> Jetzt zum eigentlichen Problem: Einige Programmparameter sind im EEPROM
> abgelegt.

Dann muß das Brownout-Reset enabled sein!

> Werden diese nicht korrekt geladen hängt sich der ATmega auf.

Das nennt sich schlechtes Softwaredesign.
Üblich ist, einen Gültigkeitstest zu machen (CRC o.k., Min-, Max-Werte 
eingehalten) und eine Fehlerbehandlung zu machen, z.B. Fehlermeldung und 
Default-Werte reinschreiben.

> Jetzt kommt es sporadisch vor, dass der EEPROM scheinbar gelöscht wird.

Wenn das trotz Brownout enabled passiert, dann zeig die Schaltung.


Peter

von Anja (Gast)


Lesenswert?

Sebastian Frank schrieb:
> Was kann ich noch tun, um dem Problem
> auf die Spur zu kommen? Sind es Störungen im Netz oder Störungen auf den
> Zuleitungen.

Die üblichen Schwachstellen sind:

- Reset-Leitung am Prozessor. Ich mache generell noch einen 1-10nF 
Filterkondensator mit getrennter (Sternverdrahtung), kurzer Leitung an 
den nächsten Massepin des Prozessors.

- Quarz-Leitungen. Der Quarz stellt eine relativ große Streukapazität 
zur Umgebung dar und die Leitungen sind auf Grund der geringen Pegel 
relativ empfindlich. Eine kurze Anbindung der Kondensatoren an den 
benachbarten Massepin (Sternverdrahtung) ist wichtig. Unter Umständen 
verschlimmert eine Massefläche in dem Bereich die Streukapazität.

- Prozessor-Versorgung. Ungenügende Anzahl und Plazierung von 
Abblockkondensatoren an Prozessor und Spannungsregler!!! führt zu 
erhöhter Empfindlichkeit gegenüber Störungen.

Weitere Sünden sind:
- zu häufige Schreibzugriffe aufs EEPROM.
- Fehlende Doppelablage und keine alternierenden Schreibzugriffe auf 
Originalwert und Doppelablage.
- Falsche Anordungskonzepte z.B. Netzzuleitung auf der linken Seite des 
Prozessors und I/O-Leitungen auf der rechten Seite. Damit müssen alle 
Störungen genau durch den Prozessor laufen.

> Sind es Störungen im Netz oder Störungen auf den
> Zuleitungen.
Vermutlich beides: um es zu unterscheiden hilft ein gutes EMV-Labor mit 
den entsprechenden Meßmöglichkeiten.

Gruß Anja

von Sebastian F. (sfrank)


Lesenswert?

Danke für die schnellen Antworten, die ich mit Interesse überdenken 
werde. Ich sehe aber, dass ich mein Anliegen nochmal präzisieren muss. 
Es geht mir in erster Linie nicht darum meine eigene Schaltung zum 
Laufen zu bringen. Den Anspruch habe ich als Fachfremder 
(Maschinenbauer) mittlerweile nicht mehr. Ich bin aber davon 
ausgegangen, dass ein Anbieter industrieller Messtechnik all die oben 
gemachten Punkte bedacht hat (Brown-Out, Software-Design, EMV-Test,...). 
Zumal die Geräte laut Referenzliste in weitaus (elektromagnetisch) 
rauherer Umgebung eingesetzt werden (Schweißroboter).
Daher möchte ich zuerst mal wissen welche Störungen auf dem Netz sind. 
Gibt es da Messgeräte mit denen man Spannung, Frequenz, ... über einen 
längeren Zeitraum mit entsprechend kurzen Messintervallen aufnehmen 
kann? Welche Möglichkeiten der Entkopplung gibt es (Solid-State-Relais, 
Optokoppler)? Möglichst als Fertiggerät für die Hutschine. Wo schließe 
ich Masse, Schirm und Schutzleiter an, wenn die Geräte nur zwei Klemmen 
für die Versorgungsspannung haben und die Gehäuse aus Kunststoff sind? 
Wie entkopple ich die Sensoren (Frequenz des Messsignals ca. 5-10KHz, 
TTL)? Kann eine USV abhilfe schaffen?
Danke schon mal für die neuen Antworten.

von slw (Gast)


Lesenswert?

Sebastian Frank schrieb:
> Ich bin aber davon
> ausgegangen, dass ein Anbieter industrieller Messtechnik all die oben
> gemachten Punkte bedacht hat (Brown-Out, Software-Design, EMV-Test,...).

wovon träumst Du nachts. Eine wirklich EMV robuste HW für die 
Industrieumgebung? Gibt's so eine überhaupt? wenn ja, bitte posten.

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.