News

News Testsysteme

Wie überprüft man den Prüfprozess? Automatisierte Gegenprüfung des Testprograms

Die sogenannte Prüfmittelfähigkeit gibt die Eignung eines Prüfmittels für eine spezielle Prüfung oder Messaufgabe an. Anders als bei einfachen mechanischen Bauteilen, wo nur ein Messschieber einen Durchmesser eines Drehteils messen soll und damit die Parameter für eine Prüfmittelfähigkeit sehr übersichtlich sind, sind elektronische Prüfungen mittels einem In-Circuit Tester weitaus komplexer. Denn neben dem eigentlichen Prüfmittel, dem Testsystem, haben der Adapter sowie das Prüfprogramm selbst großen Einfluss auf die Prüfmittelfähigkeit und können somit nur zusammen betrachtet werden.

Diese Berechnungen sind aber sehr komplex, da sie sich auch gegenseitig beeinflussen. Ob das Testsystem, der Adapter und das Prüfprogramm die gewünschte Testtiefe und Fehlerabdeckung stabil erbringen, hängt von vielen Parametern ab. Testsysteme sind parametrierbar, d.h. verschiedene Einstellungen können verändert werden, um das Messergebnis zu erreichen. Üblicherweise wird ein Programmgenerator anhand einer Stück- und Verbindungsliste eine Schaltungsanalyse vornehmen und daraus ein Prüfprogramm mit allen notwendigen Parametern, wie Stimulus, Guardpunkten, Integrationszeiten, Delays und Kelvin-Messungen erstellen. Der Programmgenerator kennt die parasitären versteckten Bauteile in komplexen IC’s nicht und kann diese in seiner Berechnung nicht berücksichtigen. Daher hat das Ergebnis nicht immer den erwünschten Erfolg. Das wird dann beim sogenannten „Debugging“ erkannt und Parameter werden modifiziert, d.h. die Parameter des automatisch erzeugten Prüfprogramms werden angepasst und verändert, bis der gewünschte Messwert stabil dargestellt wird. Durch diese Manipulationen ist es durchaus möglich einen Messwert zu „erzwingen“, ohne dass dabei wirklich etwas Vernünftiges gemessen wird. 

Im schlimmsten Fall kann es vorkommen, dass ein Bauteil gemessen wird, obwohl es gar nicht oder falsch bestückt ist. Das bedeutet, dass der erwartete „Faultcoverage“, d.h. die Fehlerabdeckung nur theoretisch stimmt. Wie ließe sich das vermeiden? Man manipuliert jedes einzeln zu messende Bauteil und ersetzt es gegen Bauteile mit anderen Werten, d.h. aus- und einlöten ist gefordert. Um festzustellen, was wirklich erkannt wird, wird dabei jede vorgenommene Änderung mit dem Prüfprogramm verifiziert. Dieser Vorgang ist schon bei einer kleinen Baugruppe mit 100 Bauteilen sehr zeitintensiv und nicht frei von Fehlern. Bei den heute verwendeten kleinen Bauteilformen und hohen Packungsdichten eine zusätzliche echte Herausforderung.

Wäre es nicht besser, durch vorgetäuschte „falsche Bauteile“ auf den Baugruppen  einen Fehler zu provozieren, um dann zu erkennen, ob der Komplex „Testsystem-Adapter-Prüfprogramm“ in der Lage ist diesen Fehler zu finden?

Welcher Lösungsweg erscheint hier sinnvoll?

Digitaltest hat dafür ein spezielles Verfahren entwickelt, das es während der Messung ermöglicht, weitere Bauteile parallel oder seriell dem zu messenden Bauteil zuzuschalten und so den Nominalwert des Messobjektes selbst zu verändern. Wird nun ein zusätzlicher Widerstand parallel zu dem zu messenden Widerstand geschaltet, so sollte das Messergebnis kleiner bzw. bei einem Kondensator mit zugeschalteter paralleler Kapazität, entsprechend größer ausfallen. Wenn der manipulierte Bauteilwert nun auch als außerhalb der eingetragenen Messtoleranz liegend gemessen wird, sollte ein Fehler erkannt und angezeigt werden.
Wenn dies nicht der Fall ist muss davon ausgegangen werden, dass ein Fehler bei diesem Bauteil nicht erkannt wird. Dadurch bietet sich die Chance, die Parameter dieser Messung so zu verändern, dass Fehler erkannt werden oder die Messung komplett aus der Prüfung heraus zu nehmen und durch andere Maßnahmen zu ersetzen. Dieses Verfahren ist als „FailSim“-Modul in unseren Testsystemen einsetzbar. Ein neues Board mit einer Reihe von Widerständen und Kondensatoren wird auf die AMU05 (Analog Measurement Unit) gesteckt und ist während der In-Circuit Messungen entweder seriell oder parallel in den Messbus zuschaltbar. Somit können diese Bauteile bei jeder Messung den zu messenden Bauteilen zugeschaltet und Fehler simuliert werden. Die Software errechnet automatisch nach der ersten Messung des Bauteils ausgehend vom tatsächlichen Wert des Bauteils den zuzuschaltenden Widerstand oder Kondensator um die Messung so zu manipulieren, dass sie in beiden Richtungen außerhalb der Toleranz liegen wird. Diese Werte werden nun zugeschaltet und somit die gewünschten Fehler provoziert und überprüft. Anhand einer Auswertesoftware werden die aufgezeichneten Messwerte verglichen und hinsichtlich der festgestellten tatsächlichen Fehlerabdeckung bewertet. Das Ergebnis ist eine klare Aussage über stabile und zuverlässige Messungen, die auch in der Lage sind, Fehler zu finden.

Es bleibt festzuhalten: Das Testen von Software ist ein wichtiger Faktor für den Erfolg eines Systems. Entsprechend existieren heute eine Vielfalt von Techniken und Werkzeugen, um diesen Prozess zu vereinfachen. Getestet wird, um verschiedene Ziele zu verifizieren: Anforderungen, Wirtschaftlichkeit, Benutzbarkeit – oder eben Fehlerfreiheit. Und besser als mit FaliSim lässt sich ein Testprogramm und Testsystem nicht verifizieren. Quod erat demonstrandum!

Das FailSim Modul ist, neben vielen zusätzlichen Erweiterungsmodulen, für alle Digitaltest-Systeme verfügbar.

Zum Beispiel für den Sigma MTS 300: Einfach im Reiter "Module" die passende Erweiterung für Ihre Teststrategie finden.

Neuheiten rund um World of Testing – bleiben Sie informiert

Digitaltest-Newsletter abonnieren