- Kontext
- Fachprojekt 3.–4. Semester, FHNW
- Zeitraum
- 09.2024 – 08.2025
- Auftraggeber
- Industriepartner aus der Sanitärindustrie
- Technologien
- ABB-Roboter, Industriekameras, Python
Aus Gründen der Vertraulichkeit sind Auftraggeber, Produkte und Bilder auf dieser Seite nicht aufgeführt.
Ausgangslage
Presswerkzeuge für die Sanitärinstallation werden beim Hersteller manuell montiert. Dabei kommt es immer wieder zu Montage- und Fertigungsfehlern. Dazu zählen beispielsweise fehlende Sicherungsringe, falsch verbaute Varianten sowie fehlerhafte oder fehlende Beschriftungen. Solche Fehler bleiben häufig unentdeckt und werden teilweise erst beim Kunden festgestellt. Die manuelle Sichtprüfung durch Mitarbeitende ist zudem zeitaufwendig, ermüdend und nur bedingt reproduzierbar.
Im Fachprojekt entwickelte ich gemeinsam mit einem Teamkollegen eine Machbarkeitsstudie mit funktionsfähigem Prototyp: Ein Roboter nimmt ein Werkzeug auf, mehrere Kameras prüfen es von beiden Seiten und die Software entscheidet automatisch, ob das Teil in Ordnung ist. Ziel war die Antwort auf die Frage, ob eine bildbasierte, roboterunterstützte Endprüfung technisch realisierbar ist.
Anforderungen
Die Anlage muss pro Teil folgende Merkmale automatisch prüfen:
- Variante und Grösse: Bestimmung per bildbasierter Messung
- Beschriftung: Vorhandensein, Typ, Verdrehung und Inhalt (OCR)
- Sicherungsringe: Vorhandensein und korrekte Position
- Masshaltigkeit: Pressmass und Kontur
- Erweiterbarkeit: Neue Produktlinien sollen ohne Umbau der Software integrierbar sein
Systemaufbau
Das Prüfteil wird auf eine Eingabefläche eingelegt, vom Roboter aufgenommen, vor den Kameras präsentiert und anschliessend nach dem Prüfergebnis in «bestanden» oder «nicht bestanden» abgelegt. Damit auch die Rückseite beurteilt werden kann, wird das Teil zwischendurch gewendet.
- Handling: ABB-IRB-1300-Roboter mit selbstgebautem Elektromagnet-Greifer.
- Wendestation: Eigenentwickelte Dreh- und Spannvorrichtung mit Servoantrieben. Das Teil wird eingespannt und um 180° gedreht, ohne dass es dabei die Lage verlässt.
- Bildverarbeitung: Drei Industriekameras (Basler): eine zur Lokalisierung der Teile auf der Eingabefläche, eine für die Gesamtaufnahme beider Seiten und eine für die Nahaufnahme von Details. Die Eingabefläche ist eine Plexiglasscheibe mit Diffusorfolie und LED-Durchlicht, wodurch die Kontur der Teile kontrastreich abgebildet wird.
- Steuerung: Ein PC mit Python koordiniert alle Komponenten. Der Roboter wird über TCP/IP angesprochen und führt ein Programm in ABB RAPID aus.
Software und Prüfverfahren
Die Prüfung läuft für jedes Teil nach demselben Schema ab. Ein Zustandsautomat (SFC) führt es durch die Schritte Position erfassen, aufnehmen, fotografieren, wenden, Rückseite prüfen und ablegen. Die Vorderseite wird bereits während des Wendens ausgewertet, um Zeit zu sparen.
- Lokalisierung: Die gespeicherte Referenzkontur eines Teils wird mit der Kontur im Kamerabild verglichen. Daraus ergeben sich Position und Drehlage, mit denen der Roboter das Teil präzise greift.
- Merkmalserkennung: Wo klassische Bildverarbeitung an Grenzen stösst, kommt maschinelles Lernen zum Einsatz. So werden die Sicherungsringe mit einem neuronalen Netz (CNN) erkannt, das lernt, korrekt montierte von fehlerhaft montierten oder fehlenden Ringen zu unterscheiden.
- Inspektionsmodule: Für jedes Produkt existiert ein Prüfskript mit einheitlicher Schnittstelle, das auf gemeinsame Bausteine wie Konturvergleich, Texterkennung und Ringkontrolle zurückgreift.
- Bedienung: Die Oberfläche in PyQt5 bietet die Bereiche «Prüfen» und «Teachen». Ein Assistent führt Schritt für Schritt durch das Einlernen eines neuen Produkts, ohne dass programmiert werden muss.