Weltweit tätiger Schweizer Kaffeemaschinenhersteller setzt auf LabVIEW
500 Testsysteme. Eine gemeinsame Softwarebasis in LabVIEW.
Wie ein weltweit tätiger Schweizer Kaffeemaschinenhersteller mit einem modularen LabVIEW-Framework seine End-of-Line-Tests standardisiert, beschleunigt und langfristig wartbar macht.
Von gewachsener Testsoftware zu einer wartbaren Plattform
Ein Schweizer Unternehmen, das zu den weltweit grössten Herstellern von Kaffeemaschinen zählt, betreibt rund 500 End-of-Line-Testsysteme an Produktionsstandorten weltweit. Die Systeme testen die Kaffeemaschinen am Ende der Fertigung und stellen sicher, dass die definierten Funktionen und Qualitätsanforderungen vor der Auslieferung erfüllt sind.
Das Ziel des Kunden war nicht einfach die Entwicklung einer neuen Testsoftware. Gesucht war eine langfristig wartbare Plattform mit einer klaren Trennung zwischen dem stabilen Framework und den produktspezifischen Tests.
Das Framework sollte weltweit eine einheitliche Softwarebasis bereitstellen und unterschiedliche Produkte,
Hardwarekonfigurationen, Testabläufe und Sprachen unterstützen. Gleichzeitig sollten die Produktexperten des Kunden in der Lage sein, neue Testschritte und Testsequenzen selbstständig zu entwickeln, ohne dafür den Kern der Plattform verändern zu müssen.
Da beim Kunden bereits LabVIEW-basierte Testsysteme und entsprechende Erfahrung vorhanden waren, sollte die neue Plattform vollständig in LabVIEW umgesetzt werden. Zusätzlich sollte das interne Team sein Wissen in LabVIEW und Software Engineering gezielt ausbauen, um neue Testsysteme langfristig selbst betreuen und erweitern zu können.
Wenn jede Erweiterung neue Abhängigkeiten erzeugt
Die bestehende Testsoftware war über viele Jahre organisch gewachsen. Neue Anforderungen wurden häufig dort umgesetzt, wo eine Anpassung kurzfristig am einfachsten erschien. Dadurch gelangte produktspezifischer Testcode teilweise direkt in das eigentliche Framework.
Anpassungen für einzelne Produkte oder Produktionslinien wurden dauerhaft mitgeführt, obwohl sie für andere Systeme nicht benötigt wurden. Mit jeder zusätzlichen Ausnahme entstanden neue Abhängigkeiten. Gleichzeitig entwickelten sich die Softwarestände der verschiedenen Testsysteme auseinander.
Auch die Testschritte und Testsequenzen waren direkt im kompilierten Code hinterlegt. Für spezifische Systeme musste deshalb jeweils eine eigene ausführbare Anwendung erstellt und verteilt werden. Änderungen an einem Testablauf konnten somit eine Anpassung und erneute Bereitstellung der gesamten Anwendung erfordern.
Teile des bestehenden Codes hatten mit der Zeit keinen klar erkennbaren Zweck mehr. Bei verschiedenen Abhängigkeiten war nicht mehr zuverlässig nachvollziehbar, weshalb sie ursprünglich eingeführt worden waren oder welche Folgen ihre Entfernung haben würde. Gleichzeitig fehlte das vertiefte LabVIEW-Know-how, um die gewachsene Architektur grundlegend und ohne zusätzliches Risiko zu bereinigen.
Mit steigenden Anforderungen nahmen zudem die Testzeiten zu. Um die geforderte Taktzeit an den Produktionslinien trotzdem einzuhalten, wurden zusätzliche Testsysteme eingesetzt. Damit konnte der Kapazitätsengpass kurzfristig entschärft werden. Die eigentlichen Ursachen blieben jedoch bestehen: eine schwer wartbare Softwarearchitektur, unterschiedliche Systemstände und eine überwiegend sequenzielle Ausführung der Testschritte.
Der zentrale Schmerzpunkt: Mehr Testsysteme erhöhten zwar kurzfristig die Kapazität. Sie reduzierten aber weder die Softwarekomplexität noch die unnötigen Abhängigkeiten zwischen Framework und produktspezifischen Tests.
Ein modulares LabVIEW-Framework mit klaren Verantwortlichkeiten
KUBES nahm gemeinsam mit dem Kundenteam die Anforderungen an die neue Plattform auf, entwickelte die Softwarearchitektur und realisierte das neue End-of-Line-Testframework vollständig in LabVIEW.
Im Requirements Engineering wurden nicht nur die bekannten Standardabläufe untersucht. Gemeinsam mit dem Kunden wurden auch Linienvarianten, Benutzerrollen, unterschiedliche Hardwarekonfigurationen, produktspezifische Ausnahmen und die erforderlichen Reaktionen auf Fehlerzustände erfasst.
Dabei zeigte sich, dass eine schrittweise Überarbeitung der bestehenden Software weitere Risiken und Abhängigkeiten erzeugt hätte. Deshalb fiel gemeinsam mit dem Kunden die Entscheidung, die Plattform auf Basis einer neuen, modularen Architektur aufzubauen.
Die neue Architektur basiert konsequent auf LabVIEW Object-Oriented Programming, kurz LabVIEW OOP. Sie trennt den stabilen Plattformkern klar von den produktspezifischen Testschritten.
Das Framework stellt die wiederverwendbare Infrastruktur bereit:
- Ausführung und Koordination der Testsequenzen
- Benutzeroberfläche und Benutzerberechtigungen
- Fehlerbehandlung
- Reporting und Dokumentation
- Mehrsprachigkeit
- Hardwareabstraktion
- Treiber für Mess- und Stimuli-Hardware
- Schnittstellen zu den getesteten Kaffeemaschinen
- Wiederholung einzelner Testschritte abhängig von der Benutzerberechtigung
Die Produktexperten des Kunden entwickeln dagegen die konkreten Testschritte für neue Kaffeemaschinen, Produktvarianten und Funktionen. Die Testabläufe werden über Konfigurationsdateien zusammengestellt und beim Start durch das Framework eingelesen. Dadurch kann dieselbe ausführbare LabVIEW-Applikation auf unterschiedlichen Testsystemen eingesetzt werden.
Für verschiedene Hardwarevarianten werden die Treiber als Plugins geladen. So lassen sich beispielsweise unterschiedliche Ein- und Ausgangsmodule oder Messgeräte verwenden, ohne die übergeordnete Ablaufsteuerung neu entwickeln zu müssen.
Eine besondere technische Herausforderung war die parallele Ausführung von Testschritten. Dabei musste nicht nur definiert werden, welche Tests gleichzeitig ausgeführt werden können. Entscheidend war insbesondere die Reaktion auf Fehler- und Sicherheitszustände:
- Was geschieht, wenn einer von mehreren parallel laufenden Tests fehlschlägt?
- Dürfen die übrigen Testschritte weiterlaufen?
- Müssen sie kontrolliert beendet werden?
- Wann ist ein sofortiger Abbruch erforderlich?
- Wie wird mit sicherheitsrelevanten Tests umgegangen?
- Welche Hardware-Ressourcen dürfen parallel verwendet werden?
Diese Ablauflogik wurde gemeinsam mit dem Kunden definiert und in der LabVIEW-OOP-Architektur umgesetzt. Das Framework koordiniert die parallelen Prozesse, verwaltet Fehlerzustände und erstellt gleichzeitig einen vollständigen Report über den Testablauf und die Resultate.
Parallel zur Entwicklung schulte KUBES die Mitarbeitenden des Kunden in der vertieften Anwendung von LabVIEW und in Software-Engineering-Grundlagen. Das Ziel war bewusst keine Blackbox. Das Kundenteam sollte die produktspezifischen Tests selbstständig und strukturiert entwickeln können.
Eine gemeinsame Plattform für rund 500 Testsysteme weltweit
Mit dem neuen End-of-Line-Testframework verfügt der Kunde über eine gemeinsame Softwarebasis für rund 500 Testsysteme weltweit.
Unterschiedliche Produkte, Testsequenzen, Hardwarekonfigurationen und Sprachen können auf derselben Plattform abgebildet werden. Die Benutzeroberfläche lässt sich lokalisieren und unterstützt auch chinesische Sprachversionen für internationale Produktionsstandorte.
Statt für einzelne Testsysteme spezifische Anwendungen zu erstellen, verwendet die neue Lösung eine einheitliche LabVIEW-Applikation. Die jeweils benötigte Testsequenz und Systemkonfiguration werden beim Start eingelesen.
Die klare Trennung zwischen Framework und Testcode reduziert unnötige Abhängigkeiten und schafft eindeutige Verantwortlichkeiten. Das Kundenteam entwickelt neue Testschritte auf Basis seines Produktwissens. Der stabile Plattformkern muss dafür nicht verändert werden.
Durch die parallele Ausführung geeigneter Testschritte lässt sich die verfügbare Testzeit besser nutzen. Gleichzeitig können unterschiedliche Mess- und Stimuli-Komponenten über Plugin-basierte Hardwaretreiber eingebunden werden.
Mindestens ebenso wichtig ist der Know-how-Transfer: Die Mitarbeitenden des Kunden können neue Tests selbst entwickeln und verfügen über eine klar strukturierte, wartbare Grundlage für zukünftige End-of-Line-Testsysteme.
Damit entstand nicht nur eine neue Testsoftware, sondern eine langfristige Arbeitsweise für den weltweiten Aufbau, Betrieb und die Weiterentwicklung der End-of-Line-Tests.
Das Projekt auf einen Blick
- Rund 500 End-of-Line-Testsysteme weltweit
- Gemeinsame Softwarebasis in LabVIEW
- Modulare Architektur auf Basis von LabVIEW OOP
- Klare Trennung zwischen Framework und Testcode
- Konfigurierbare Testsequenzen
- Parallele Ausführung von Testschritten
- Plugin-basierte Treiber für Mess- und Stimuli-Hardware
- Benutzerabhängige Wiederholung einzelner Testschritte
- Automatische Reporterstellung
- Mehrsprachige Benutzeroberfläche
- Requirements Engineering, Architektur, Entwicklung und Schulung durch KUBES