Kategorien
Koordinatenmesstechnik

Einfluss der Software

Du misst nur mit einem Messschieber? – Dann kannst du diesen Post ignorieren. Alle anderen sollten weiterlesen. Die Software hat natürlich nur Einfluss auf dein Messergebnis, wenn eine Software bei der Messung beteiligt ist.

Mein Fokus gilt wieder der Verzahnungsmessung mit Koordinatenmessgerät (KMG) bzw. Verzahnungsmessmaschine (VMM). Hier ist Software im Einsatz.

Aufgaben der Software

Die Software hat dabei verschiedene Aufgaben:

  • Definition des Messablaufs
  • Steuerung des Messgerätes
  • Berechnung der Abweichungen
  • Vergleich gegen Toleranzen
  • Protokollierung der Messergebnisse
  • Statistische Weiterverarbeitung der Daten

Einflussfaktoren

Schauen wir uns an, welche Faktoren bei der Software Einfluss auf das Messergebnis haben können:

Ursache-Wirkungs-Diagramm: Einfluss der Software auf das Messergebnis
Einfluss der Software auf das Messergebnis

Wir können die Aspekte nach allgemeinen Faktoren und messtechnik-spezifischen Faktoren aufteilen.

Die allgemeinen Faktoren (Bedienbarkeit, Anpassbarkeit, Normkonformität) gelten für jede Software, egal ob wir sie in der Messtechnik einsetzen oder z.B. in der Buchhaltung. Diese Faktoren sind in den Normen zum Thema „Softwarequalität“ beschrieben. 

Softwarequalität

Die Beurteilung der Qualität von Software wird in den ISO-Normen ISO 9126 (alt) bzw. ISO 25010 (neu) behandelt.

  • ISO 9126 (2001-06): „Software-Engineering – Qualität von Software-Produkten – Teil 1: Qualitätsmodell“
  • ISO 25010  (2011-03): „Software-Engineering – Qualitätskriterien und Bewertung von Softwareprodukten“

ISO 9126 ist zurückgezogen und durch ISO 25010 ersetzt worden.

Definition der Qualität

Bevor wir ins Detail gehen, sollten wir uns darüber klar werden, wie Qualität überhaupt definiert ist.

Definition: „Qualität ist die Übereinstimmung mit den Anforderungen.“

Diese Definition ist bewusst allgemein gehalten, damit sie auf alles angewendet werden kann. Trotz der Definition ist Qualität etwas Subjektives. Ein Produkt, das in meinen Augen eine gute Qualität hat, kann in deinen Augen ein schlechtes Produkt sein. Warum ist das so?

Das liegt an den o.g. Anforderungen. Man könnte Anforderungen auch mit Erwartungen bezeichnen. Du hast wahrscheinlich andere Erwartungen an das Produkt als ich.

Beispiel: Flugzeug (aus IT-Berufe-Podcast von Stefan Macke: Softwarequalität nach ISO 9126 für die IT-Berufe)

Die Qualität des Flugzeugs hängt von der Übereinstimmung mit den Anforderungen ab. Der Pilot hat jedoch andere Anforderungen an das Flugzeug als der Passagier.

  • Der Pilot erwartet
    • Gute Sicht
    • Einen funktionierenden Autopiloten
    • Gute Bedienbarkeit der Instrumente
  • Der Passagier erwartet
    • Genügend Beinfreiheit
    • Bequeme Sitze
    • Video-Streaming
    • Internet-Zugang

Qualitätsmerkmale

Beide ISO-Normen definieren Qualitätsmerkmale mit deren Hilfe man die Anforderungen an die Software festlegen kann Dadurch wird die Beurteilung der Qualität objektiver:

Qualitätsmerkmale einer Software
Qualitätsmerkmale einer Software

Funktionalität

Man denkt immer zuerst an die Funktionalität. Macht die Software das, was sie soll oder nicht. Im schlimmsten Fall rechnet die Software falsch. Es kann aber auch sein, dass die Software etwas nicht kann, was ich benötige (z.B. Maximale Materialbedingung mit drei Bezügen). Die anderen Aspekte sind aber genauso wichtig.

Benutzbarkeit

Angenommen die Software kann alles, was ich brauche und alle Berechnungen sind korrekt. Die Software ist jedoch so kompliziert zu bedienen, dass ich Funktionalität nicht finde. oder ich bediene die Software falsch, weil die Angaben in der Oberfläche unverständlich/nicht eindeutig sind, kann das zu falschen Ergebnissen führen.

Unterstützt die Software den Bediener bei seiner Arbeit, z.B. durch Assistenten oder Online-Hilfe.

Software sollte mehrere Wege bieten, um eine Aufgabe zu erfüllen. Ein einfaches Beispiel „Daten speichern“. Gute Software bietet mir mehrere Wege an:

  • Befehl aufrufen über einen Menüeintrag (z.B. Datei -> Speichern)
Datei speichern: Menüeintrag
Menüeintrag: Datei speichern
  • Befehl aufrufen über eine Toolbar oder ein Ribbon
Datei speichern: Toolbarbutton
Toolbar: Datei speichern
  • Befehl aufrufen über ein Tastaturkürzel: „STRG + S“

Änderbarkeit

Software erhält mit jeder Version neue Funktionalität. Das ist gut für den Anwender und den Hersteller.

Je größer eine Software ist, umso komplexer ist sie. Jede Erweiterung steigert die Komplexität.

Irgendwann kann man an den Punkt kommen, dass die interne Struktur der Software so komplex ist, dass sie sich jeder Änderung oder Erweiterung wiedersetzt. Das führt dann dazu, dass eine Erweiterung dazu führt, dass irgendwo anders in der Software etwas nicht mehr funktioniert. Das ist ein Dilemma für die Entwickler: Jede Erweiterung ist sehr aufwändig, weil viele Tests notwendig sind. Das ist ein Dilemma für die Anwender: Bei jeder neuen Softwareversion funktioniert plötzlich etwas nicht mehr, was vorher noch ging.

Zuverlässigkeit

Wie fehlertolerant ist die Software? Arbeitet die Software nach dem Prinzip „Fehlbedienung wird mit Absturz bestraft!“?  – Hoffentlich nicht. Besser wäre, wenn die Software den Anwender vor Fehlbedienung schützt. Zum Beispiel kann sie Eingabedaten überprüfen, ob diese im gültigen Bereich sind (Zähnezahl und Eingriffswinkel dürfen nicht null sein!) und den Anwender darauf hinweisen.

Ein anderer Aspekt ist, ob Daten wieder hergestellt werden können, wenn die Software doch einmal abstürzt. Bei Microsoft Word funktioniert das mittlerweile gut und zuverlässig.

Effizienz

Zeigt die Software angemessene Reaktionszeiten? Wenn ich bei jedem Klick in einem Dialogfenster mehrere Sekunden warten muss, bis die Software reagiert, dann wird mir das sehr schnell nerven. Gefühlt blockiert die Software mich dabei, meine Arbeit zu tun anstatt mich dabei zu unterstützen.

Die Grafische Oberfläche (= GUI) soll nicht einfrieren. Die Software sollte Berechnungen in angemessener Zeit durchführen. Der Rechner soll bedienbar bleiben, belegt die Software so viel Speicher, dass nichts mehr geht, das ist das ebenfalls problematisch..

Übertragbarkeit

Jede Software hat einen Lebenszyklus. Es erscheinen in regelmäßigen Abständen neue Versionen mit neuer Funktionalität. Die Erwartung des Anwenders ist, dass die neue Version die Daten der alten Version einlesen kann. Die gleiche Erwartung hat der Anwender, wenn ein Hersteller die bisherige Software nicht weiterentwickelt, aber ein Nachfolgeprodukt anbietet. Der Bestandskunde benötigt die Möglichkeit, die Daten aus der alten Software in die neue Software zu übernehmen.

Kompatibilität

Eine Software wird nicht isoliert eingesetzt. Jede Software muss mit anderer Software zusammenarbeiten. Im einfachsten Fall ist diese andere Software das Betriebssystem. Jeder weiß aber, dass es nicht die eine Software gibt, die alles kann (Stichwort „Eierlegende Wollmilchsau“). Allein das Office-Paket besteht aus mehreren Programmen: Textverarbeitung, Tabellenkalkulation, Präsentationssoftware, E-Mail-Programm. Diese einzelnen Software-Programme sind zueinander kompatibel, so dass Daten ausgetauscht werden können.

Messtechnik-Software

Das waren die allgemeinen Aspekte. Schauen wir uns an, was bei der Software wichtig ist, die wir am KMG einsetzen. Im Fischgrätendiagramm (s.o.) sind Normkonformität, Ersatzelement und Filter genannt. Schauen wir uns eins nach dem anderen an.

Normkonformität

Die Koordinatenmesstechnik arbeitet auf der Grundlage einiger nationaler und internationaler Normen. Das ist gut so. Nur so sind vergleichbare Messergebnisse gewährleistet. Ich könnte an dieser Stelle jede Menge Normen aufführen, die relevant sind (ISO 1101, ISO 8015, ISO 5459, ASME Y14.5) das führt jedoch zu weit.

Deshalb gehe ich nur beispielhaft darauf ein, dass es wichtig ist, dass jeder unter der Auswertung einer Rundheit oder einer Rechtwinkligkeit das gleiche versteht und es identisch berechnet.

Beispiel: Rundheit

Die Rundheit ist in ISO 1101 definiert. Es legt einen Kreis als Symbol für die Rundheit fest:

Zeichnung mit Rundheitstoleranz
Zeichnung mit Rundheitstoleranz

Definition: Die Rundheit definiert zwei konzentrische Kreise mit radialem Abstand T (= Toleranzwert). Diese begrenzen die Toleranzzone. Der dadurch entstandene Kreisring gibt an, in welchem Bereich sich die Umfangslinie des gemessenen Elements befinden darf.

Toleranzzone für Rundheit
Toleranzzone für Rundheit

Beispiel: Rechtwinkligkeit

Die Rundheit ist in ISO 1101 definiert. Es legt zwei senkrecht aufeinander stehende Linien als Symbol für die Rechtwinkligkeit fest:

Zeichnung mit Rechtwinkligkeitstoleranz
Zeichnung mit Rechtwinkligkeitstoleranz

Die ISO schreibt vor, dass das Bezugselement (hier der Zylinder mit d=25.0 mm) als Pferchzylinder ausgewertet werden muss (s. ISO 5459). Die Fläche, für die die Rechtwinkligkeitstoleranz  angegeben ist, muss rechtwinklig zu der Achse dieses Pferchzylinders stehen. Wobei die Toleranzzone aus zwei parallelen Ebenen besteht, die einen Abstand T (= Toleranzwert) von einander haben und rechtwinklig zum Bezugselement stehen.

Toleranzzone für Rechtwinkligkeit
Toleranzzone für Rechtwinkligkeit

Ersatzelement

Das Ersatzelement „ersetzt“ die Messpunkte eine gemessenen Elementes. Es steht quasi stellvertretend für diese Punkte bzw. für das reale Element.

Beispiel: Kreismessung mit 100 Punkten

Die 100 Messpunkte bilden den realen Kreis gut ab. Der Kreis ist allerdings nicht wirklich rund. Es gibt Abweichungen. Wie stellt man den realen Kreis jetzt dar? – Man berechnet aus den Messpunkten ein Ersatzelement. Das Ersatzelement wird als ein ideales Element berechnet, z.B. Kreis mit dem Durchmesser = 14.874 mm und der Position X = 50.112 mm, Y = 72.504 mm. Zusätzlich dazu wird die maximale Abweichung der Punkte zu diesem Ersatzelement angegeben.

Berechnet wird das Ersatzelement mit einem Ausgleichsverfahren (engl. Best Fit oder Fit Algorithmus). Es gibt verschiedene Ausgleichsverfahren, die in der Längenmesstechnik angewendet werden:

  • Gauß (= Summe der kleinsten Fehlerquadrate) berechnet ein mittleres Ersatzelement,
  • Hüll (= minimum circumscribed) berechnet das kleinste Ersatzelement, das alle Punkte einschließt,
  • Pferch (= maximum inscribed) berechnet das größte Ersatzelement, so dass alle Punkte außen liegen,
  • Minimum Zone (Chebyshev) ist eine Kombination aus Hüll- und Pferch; dieses Verfahren wird speziell für die Berechnung der Formabweichung angewendet.

Eine sehr gute Gegenüberstellung der genannten Ausgleichsverfahren zeigt AUKOM am Beispiel einer Kreismessung.

Software-Test

Die Berechnung der Ersatzelemente ist die Grundlage für alle weiteren Berechnungen in der Koordinatenmesstechnik: Größen, Abstände, Winkel, Form- und Lageabweichungen.

Um die Messunsicherheit der Software möglichst gering halten und um das Messunsicherheitsbudget nicht noch weiter zu belasten, haben große Metrologieinstitute wie die PTB in Deutschland und NIST in den USA Software-Tests etabliert, um die Ausgleichsberechnungen zu überprüfen (Test der PTB, Test der NIST).

Der Softwarehersteller fordert Testdatensätze bei der PTB bzw. bei der NIST an. Diese müssen ausgewertet werden und die Ergebnisse an PTB oder NIST zurückgeschickt werden. Das Metrologieinstitut vergleicht diese gegen die Referenzergebnisse und stellt ein Zertifikat aus, wenn die notwendige Genauigkeit erreicht wurde.

Geprüft und Zertifiziert
Geprüft und zertifiziert

Gängig sind Tests für Gauß (= Least-Squares-Bestfit). Diese existieren schon einige Jahrzehnte. Deshalb kann man sich auf diese Auswertung verlassen. Die Messgeräte-Hersteller können dies mit entsprechenden Zertifikaten von PTB und NIST nachweisen. Die geforderte Toleranz ist kleiner als ein Mikrometer (PTB: 0.1 Mikrometer).

Die PTB bietet mittlerweile auch einen Software-Test für die Ausgleichsberechnung nach Chebyshev (Minimum Zone) an, siehe TRACIM.

Die Überprüfung der Algorithmen und das daraus resultierende Zertifikat ist eine Möglichkeit den Einfluss der Software auf das Messergebnis zu reduzieren.

Filter

Die Filterung der Messdaten ist bisher ein Thema das stiefmütterlich behandelt wird. Es wird in Zukunft jedoch immer wichtiger werden. Das spiegelt auch die Normung wieder. Neuere Normen berücksichtigen nicht nur das Filtern, sondern schreiben die Art des Filters und die Filterparameter vor (vgl. ISO 1328-1, AGMA 2015-A01, VDI 2612-1).

Profildiagramme: Filter mit Grenzwellenlänge 0.250 mm
Profildiagramme: Filter mit Grenzwellenlänge 0.250 mm

Bisher war es bei einem Messvergleich schwierig, wenn gefiltert wurde. Es war nicht klar, ob gefiltert wurde oder nicht, wenn ja, war fraglich wie gefiltert wurde. Das Protokoll enthielt keine Angaben zur Filterung, die Abweichungen ließen aber erkennen, dass die Messdaten geglättet wurden. Man hatte keine Informationen über die Art des Filters oder welche Grenzwellenlänge verwendet wurde. Die vorgeschriebene Filterung in den o.g. Normen macht dem ein Ende.

Profildiagramme: Messdaten ungefiltert
Profildiagramme: Messdaten ungefiltert

Selbst wenn man wusste, dass gefiltert wurde, konnte man nicht sicher sein, dass dies vergleichbar war. Jeder Hersteller programmierte seine eigenen Filter. So konnte z.B. ein so genannter Spline-Filter, der von zwei Herstellern programmiert wurde, zu unterschiedlichen Ergebnissen führen.

Die Vereinheitlichung der Filterung wird durch die Normierung der Filter vorangetrieben. Die Norm ISO 16610 beschreibt in ihrer Reihe die verschiedenen Filter. Teil 21 behandelt z.B. den Gauß-Filter, Teil 22 den Spline-Filter.

Probleme, wie die Endeffekte, die durch das Filtern hervorgerufen werden, werden in ISO 16610 Teil 28 thematisiert.

Fazit

Wir haben gesehen, dass einige Qualitätsmerkmale für die Software die Korrektheit meiner Messergebnisse beeinflussen können.

Ein Zertifikat, das die Korrektheit der Algorithmen bestätigt, ist eine gute Möglichkeit, um die Messunsicherheit zu reduzieren.

Es ist leider nicht damit getan, dass die Software richtig rechnet und zertifiziert ist. Sie muss auch richtig bedient werden. Der Erfolg hängt dabei u.a. von der Benutzbarkeit ab.

Ein weiterer Aspekt ist das Knowhow des Bedieners. Das führt an dieser Stelle zu weit. Diesen Aspekt werde ich in einem meiner nächsten Posts ausführlich behandeln.

Von Klaus Stein

Ich bin seit 20 Jahren in der Softwareentwicklung und in der Koordinatenmesstechnik tätig.
Die Verzahnungsmesstechnik ist mein Schwerpunkt.