Forum: Mikrocontroller und Digitale Elektronik Schaltungs Selbsttest


von Sawyer M. (sawyer_ma)


Lesenswert?

Hi alle zusammen,

ich muss gerade eine Platine mit einem Xilinx Coolrunner CPLD aufbauen. 
Auf der Platine ist nicht viel drauf bis auf ein IC für Clock, DC DC 
Linearregler, Buchsen für Eingangs und Ausgangssignale die differentiell 
übertragen. Die Platine wird später als einschubkarte benutzt. Jetzt 
würde ich gerne eine Schaltung darauf Implementieren die die 
Hauptschaltung auf Kurzschluss und Funktion überprüft. Angezeigt sollte 
ein Fehler ueber eine LED.

Leider fehlt mir hier die Erfahrung und wollte Fragen ob Ihr mir Tipps, 
Ideen, Anregung und eigene Erfahrung mitgeben könntet.

Ist so etwas schwer in der Umsetzung?

Vielen Dank schon einmal im Vorraus

sawyer_ma

von Karl H. (kbuchegg)


Lesenswert?

Sawyer Ma schrieb:

> Ist so etwas schwer in der Umsetzung?

In den meisten Fällen: ja

Die Spannungen aus dem DC/DC Konverter zu überwachen geht ja noch (wobei 
sich natürlich die Frage stellt, wer versorgt eigentlich die 
Überwachungsschaltung mit Strom und wie wird sichergestellt, dass die 
nicht an Überspannung stirbt?).

Aber Dinge wie intrnen Kurzschluss festzustellen ist gar nicht so 
einfach, weil du ja genau genommen die Leitungen auftrennen müsstest, um 
den Widerstand zu messen.
Die korrekte Funktion zu überwachen ist auch nicht so simpel. Wie 
stellst du dir das vor, dass das gehen soll? Im Prinzip muss die 
Überwachungsschaltung eine Reihe von Testmustern auf die Eingänge legen 
und nachsehen, ob an den Ausgängen die erwarteten Ergebnisse rauskommen. 
Nur: dazu muss die Überwachungsschaltung die originalen Eingänge und 
Ausgänge abklemmen, damit eine anhängende Schaltung davon nichts 
mitkriegt und/oder stört. Was natürlich wieder nicht so simpel ist, denn 
eine anhängende Schaltung soll ja nicht einfach in der Luft hängen. Ganz 
abgesehen davon, dass jetzt plötzlich überall Umschalter in den 
Leitungen erforderlich sind.

Alles was du mittels Spannungsmessungen rauskriegen kannst, geht 
einigermassen, weil man Spannungen ohne grossartige Beeinflussung der zu 
messenden Schaltung messen kann. Sobald aber eine Strommessung im Spiel 
ist, müsste man zb einen Shuntwiderstand in den Signalpfad einschleusen, 
der allerdings jetzt seinerseits unter Umständen wieder die originale 
Charakteristik verändert.

Und dann stellt sich ja auch immer noch die Frage: Wer überwacht den 
Überwacher?

von Schaltplanleser (Gast)


Lesenswert?

Karl Heinz schrieb:
> Und dann stellt sich ja auch immer noch die Frage: Wer überwacht den
> Überwacher?

Naja, der User schaut auf die LED, und schon ist der Überwacher 
überwacht.

von Karl H. (kbuchegg)


Lesenswert?

Schaltplanleser schrieb:
> Karl Heinz schrieb:
>> Und dann stellt sich ja auch immer noch die Frage: Wer überwacht den
>> Überwacher?
>
> Naja, der User schaut auf die LED, und schon ist der Überwacher
> überwacht.

:)
Und woher weisst du, dass das kein Fehlalarm ist?

von Schaltplanleser (Gast)


Lesenswert?

Karl Heinz schrieb:
> Und woher weisst du, dass das kein Fehlalarm ist?

Weil die Überwachungsschaltung perfekt und fehlerfrei
entwickelt worden ist ;-)

von Sawyer M. (sawyer_ma)


Lesenswert?

Ok ich verstehe, die Sache wird nicht einfach. Wie machen das die 
grossen Hersteller? MAchen die so etwas?

von Karl H. (kbuchegg)


Lesenswert?

Kommt drauf an.
Für Militär und vor allen Dingen Raumfahrt ist nichts zu teuer.


'nicht einfach' ist nett ausgedrückt.
Das ganze kommt mir vor, wie in der Software.
Solange man sich um Fehlererkennung und Behandlung drücken kann, sind 
viele Dinge ganz einfach. Komplex werden sie oft erst, wenn die beiden 
genannten Bedingungen auch noch berücksichtigt werden müssen.

von Max D. (max_d)


Lesenswert?

Sawyer Ma schrieb:
> Wie machen das die
> grossen Hersteller? MAchen die so etwas?

Bei Consumer-Produkten darf der user halt einmal in der woche den 
Stecker ziehen und wieder einstecken wenn sich der Kram aufhängt.
Was wohl auch beliebt ist ein Watchdog-Timer. Der resettet dann wenn der 
µC hängt weil er irgendwo übergelaufen ist das Gerutsche und danach 
stellt sich wieder ein normaler Zustand ein.
Das ist aber alles mehr Statistik als Sicherheit (wenn 10 von 1000 user 
ihr Geld zurückwollen ist das billiger als die zusätzliche sicherung).

von Decius (Gast)


Lesenswert?

Bei sicherheitsrelevanter Software werden die Schaltungen redundant 
aufgebaut. Es laufen dann zwei in hard- und software identische 
Mikrocontroller, die sich gegenseitig überwachen. Dabei werden z.B. 
Eingaben, Ausgaben und Checksummen von Register-/Speicherinhalten 
überprüft. Werden Fehler festgestellt wird das System in einen sicheren 
Zustand gefahren. Wie der aussieht muss aber je nach Anwendung neu 
definiert werden.

von uwe (Gast)


Lesenswert?

Man kann im CPLD natürlich ein Testdesign reinladen das Pegel auf 
Leitungen legt und diese Pegel zurücklist um auf Schlüsse zu GND und VCC 
zu Prüfen. Man kann auch auf Schlüsse zwischen benachbarten Leitungen 
Prüfen. Wenn an beiden Enden eine Testsoftware bz. Design draufgeladen 
werden kann, dan kann auch auf leitungsunterbrechungen getstet werden. 
Beim Netzteil wird das schon schwieriger weil Analog und man man müßte 
ja noch ein 2. Netzteil für die Prüfschaltung haben usw. Auch 
Impedanzmessung von Leitungen usw. ist nicht so einfach möglich.

von Falk B. (falk)


Lesenswert?

@ Sawyer Ma (sawyer_ma)

>Ok ich verstehe, die Sache wird nicht einfach. Wie machen das die
>grossen Hersteller? MAchen die so etwas?

Nicht alles kann man sinnvoll mit einem internen Selbsttest erschlagen. 
Bei deiner Platine bietet sich eine einfache Prüfschaltung an. Signal 
einspeisen und die Ausgänge mit einem Oszi ansehen. Die Spannungen misst 
man manuell mit einem Multimeter. Das ist ein einfacher Funktionstest am 
Ende der Produktion. Bei der einfachen Schaltung ist es sehr 
unwahrscheinlich, dass sie im Laufe des Lebens kaputt geht. Und wenn 
doch, wird es der Anwender merken, auch ohne Selbsttest und 
Selbstüberwachung.
Und selbst die besten Tests der Profis erreichen selten eine 100% 
Testabdeckung. Die Qualität muss auch durch andere Maßnahmen 
sichergestellt werden.

von Decius (Gast)


Lesenswert?

Teste doch nicht auf Schlüsse und Anderes, sondern wie ich es oben 
schrieb einfach auf korrekter Funktion mit einer redundant aufgebauter 
Schaltung. Deren Teile sich gegenseitig überwachen. Ergeben sich 
Unterschiede liegt ein Fehler vor, der signalisiert bzw. behandelt 
werden kann. Die Fehlerursache ist im ersten Moment dabei uninteressant, 
diese wird später durch einen Servicemonteuer beseitigt. Wichtig ist 
nur, das das System durch Defekte keinen Schaden anrichtet.

von Decius (Gast)


Lesenswert?

Das ist übrigens genau der Weg den grosse Hersteller, aufgrund der 
zugrundeliegenden Normen, ab Softwaresicherheitslevel SIL3 gehen müssen.

von Falk B. (falk)


Lesenswert?

@ Decius (Gast)

>Das ist übrigens genau der Weg den grosse Hersteller, aufgrund der
>zugrundeliegenden Normen, ab Softwaresicherheitslevel SIL3 gehen müssen.

Ja EBEN! Aber die gilt garantiert nicht für einfache Schaltungen wie die 
des OP! OVERENGINEERING!

https://de.wikipedia.org/wiki/Overengineering

von Decius (Gast)


Lesenswert?

@Falk

> Ok ich verstehe, die Sache wird nicht einfach. Wie machen das die
> grossen Hersteller? MAchen die so etwas?

Nun der Threaderöffner hat gefragt wie die grossen Hersteller das 
machen. Mein letzter Post war die Antwort.

Natürlich muss man nicht alle Aspekte umsetzen, wenn man nicht zwingend 
an die Normen gebunden ist, eben nur das was einem dann als sinnvoll 
erscheint. Auf alle Fälle kann man den ganzen Papierkrieg auf eine 
Minimum reduzieren.

Aber so ungefähr in diese Richtung zu gehen, würde ich schon in Betracht 
ziehen. Immerhin sind das erprobte Verfahren.

von Decius (Gast)


Lesenswert?

Kommt eben einfach auf die gestellte Aufgabe an. Unter Umständen würde 
ja schon einfach die Anwendung einer statischen Codeanalyse und die 
Erstellung einer vernüftigen Dokumentation reichen.

Ich glaube es wurde schon oben darauf hingewiesen. Auch eine
Überwachungsschaltung kann defekt sein. Defekte allegemein treten bei 
komplexeren Schaltungen häufiger auf. Ist also wie so oft in der Technik 
die Suche nach dem sinnvollen Kompromis.

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.