SuperTest von Solid Sands ist ein Tool, mit dem Unternehmen die Compiler oder Bibliotheken qualifizieren können, die sie bereits verwenden. Kuka nutzt SuperTest zudem als Entscheidungshilfe, um auf Projektbasis festzulegen, welcher C/C++-Compiler und welche Standardbibliothek verwendet werden soll.
Kuka mit Sitz in Augsburg ist ein Anbieter intelligenter Automatisierungslösungen, die Roboter, mobile Roboter, Fertigungszellen und vollautomatische vernetzte Robotersysteme für Bereiche wie Automotive, Elektronik, Metall & Kunststoff, Consumer, E-Commerce/Einzelhandel und Gesundheitswesen umfassen. Das Unternehmen verfügt über zahlreiche Entwicklungsteams, die an verschiedenen Projekten arbeiten, wobei jedes Projekt seine besonderen Anforderungen an Hardware/Software und funktionale Sicherheit hat. Diese Teams bei ihrer Entscheidung zu unterstützen, welche Kombination aus C- oder C++-Sprachversion, Compiler und Bibliothek verwendet werden soll, ist eine der Aufgaben des Kompetenzzentrums für funktionale Sicherheit bei Kuka.
»Ändert man die CPU-Architektur, müssen meist Software-Anpassungen erfolgen, um die neuen Compiler-Backends zu unterstützen«, erläutert Robert Bertossi, Teamleiter für die Sicherheitsplattform bei Kuka. »SuperTest hilft uns dabei, die verfügbaren Compiler zu bewerten.« Ein Teil dieser Bewertung hat mit der Sicherstellung von Safety zu tun, die für alle Arten von Robotern sehr wichtig und auch bei der Entwicklung kollaborativer Roboter, die mit Menschen interagieren, von entscheidender Bedeutung ist.
Christian Hartmann, Leiter des Kuka-Kompetenzzentrums für funktionale Sicherheit, fügt hinzu: »Wir müssen Normen wie die IEC 62061 und IEC 61508 für die funktionale Sicherheit von Maschinen und sicherheitsbezogenen Systemen einhalten, die sich zwar von denen im Automotive-Bereich unterscheiden, aber in Bezug auf die erforderlichen Qualitätsmaßnahmen und die Qualifizierung der Tools ähnlich sind.« Um diese Standards für ein konkretes Projekt zu erfüllen, muss Kuka die ausgewählten Compiler qualifizieren.
»SuperTest hilft uns bei der Entscheidung, ob wir einem Projektteam empfehlen, beispielsweise GCC oder Clang zu verwenden, oder ob wir auf eine neuere Version des Compilers umsteigen«, führt Christian Hartmann aus. »Wird eine neue GCC- oder Clang-Version veröffentlicht, die einige Funktionen enthält, die das Projektteam gerne nutzen möchte, können wir die Neuauflage mit SuperTest prüfen, um herauszufinden, ob sie Nachteile mit sich bringt. Wenn es darum geht, eine neue Standardbibliothek zu evaluieren, können wir mit SuperTest feststellen, ob das Verhalten der neuen Bibliothek der Bibliothek ähnelt, die wir zuvor verwendet haben.« Kuka nutzt SuperTest auch, um Empfehlungen zu geben, welche C- oder C++-Sprachvariante ein Projekt mit dem ausgewählten Compiler verwenden sollte.
»Wir können mit SuperTest prüfen, ob es Probleme beim Umstieg auf einen neueren Sprachstandard gibt, etwa beim Wechsel von einer älteren C++-Version mit einem bestimmten Compiler auf eine neuere Version, die mehr Funktionen bietet«, legt Robert Bertossi dar. »Wir erfahren damit, wie gut der Compiler mit dem neuen Standard abschneidet oder ob es irgendwelche Probleme gibt, die wir vorher beheben müssen.« SuperTest ist eines von vielen verschiedenen Tools, die Kuka in seine Compiler-Qualifizierungs-Toolkette integriert hat. »Ich war sehr zufrieden mit der Möglichkeit, SuperTest zu integrieren, weil man einfach Skripte darum herum schreiben und alle ausführbaren Dateien von der Befehlszeile aus aufrufen kann. Man muss lediglich die Konfigurationsdaten bereitstellen«, so Robert Bertossi. »Dadurch ist der Prozess selbst stark automatisiert. Der größte Teil der manuellen Arbeit besteht in der Analyse der Ergebnisse.«
Solid Sands, in Amsterdam ansässig, ist ein Anbieter von Software für Test und Qualifizierung von Compilern und Bibliotheken. Das Unternehmen bietet seinen Kunden umfassende Unterstützung bei der Anwendung seiner Produkte.