Erst eins, dann zwei, dann hunderttausend

Webbasierte Software mit PHP/MySQL zur fertigungsbegleitenden Erfassung und Auswertung von Messdaten in der Großserie für einen Automobilzulieferer

Einerseits sind Zerspanungsprozesse hochgenau und dienen beispielsweise in der Motorenfertigung zur Herstellung von Präzisionsbauteilen. Anderseits unterliegen sie prinzipbedingt der Gefahr von Toleranz- und Maßschwankungen. Es addieren sich die Toleranzen in der Werkzeugmaschine, die Toleranzen des Spannmittels und die Toleranzen der Bearbeitungswerkzeuge. Zumindest eine regelmäßige Messung von Stichproben, um Warngrenzen und Eingriffsgrenzen in den Fertigungsprozess rechtzeitig zu erkennen, ist unumgänglich. Zur Analyse von Trends, zum Nachweis bei dokumentationspflichtigen Bauteilen oder zur Ursachenforschung bei Reklamationen müssen die Messdaten gespeichert und ausgewertet werden.

Für einen Automobilzulieferer, der Komponenten für Einspritzsysteme von Dieselmotoren in Großserie herstellte, wurde eine Software zur Messung, Speicherung und Auswertung von Geometriedaten entwickelt. Die Software wurde mit Webtechnologien, also zur Bedienung über gängige Webbrowser, mit serverseitigem PHP programmiert. Die Daten werden in einer MySQL-Datenbank gespeichert.

Messdaten erfassen

Die Messdaten gilt es „nur“ in Stichproben zu erfassen, so dass eine automatisierte Messung nicht erforderlich ist. Zum Einsatz kommen elektronische Messchieber, die die gemessenen Geometriemerkmale direkt auf Tastendruck an den PC und damit in das Formular der entwickelten Messsoftware übertragen. Geometriedaten, die über ein Messgerät mit Hinterleuchtungstechnik erfasst werden, übernimmt die Software über eine speziell geschaffene Schnittstelle. Alle Messdaten werden in der MySQL-Datenbank (Merkmal, Bauteil, Charge, Benutzer, etc.) gespeichert.

Messdaten speichern

Durch die große Anzahl der gefertigten Teile und gemessenen Merkmale kommen schnell siebenstellige Datensatzmengen zusammen. Im Vorfeld der Programmierung wurden umfangreiche Performance-Messungen mit der MySQL-Datenbank gemacht, um dann ein optimales Datenbankdesign zu finden. Gleichzeitig ist die Software in der Lage ältere Datensätze zu exportieren und bei Bedarf wieder zu importieren.

Messdaten auswerten

Mit der Grafik-Bibliothek GD erstellt die Software eine Reihe von graphischen Auswertungen. Abweichungen und Trends im Fertigungsprozess lassen sich dadurch schnell erkennen. Die wichtigsten statistischen Kenngrößen werden automatisch berechnet.

Überblick

Programmiersprache: PHP, MySQL

Plattform: Apache, Linux

Schnittstellen: GD-Library; ImageMagick

Know-How

  • Arbeiten mit sehr großen Datenmengen

X-Packed

Windows File Explorer in C++ verarbeitet Einzelbilder zu Clips in der Computeranimation und PostProduction

Eine Filmsekunde sind 24 Bilder. Das sind 24 Einzeldateien im Dateisystem.

Software zur Erzeugung von Bildern am Computer (CGI), wie beispielsweise Autodesks Maya oder Cinema4D von Maxon/Nemetschek legt jedes Bild in einer einzelnen Datei ab. Das Arbeiten mit diesen Dateien auf Dateisystemebene (z.B. Windows Explorer) gestaltet sich dadurch unübersichtlich und mühsam. Allein das Umbenennen eines solchen „Films“ ist aufwändig, muss doch jede Datei einzeln umbenannt werden.

In enger Zusammenarbeit mit einer Münchener Post-Production entstand die Software X-Packed. Sie ersetzt in der Vollversion den Microsoft Windows Explorer vollständig oder arbeitet als „Shell Extension“ als Plug-In in den Microsoft Windows Explorer. Die Software erkennt zusammenhängende Einzelbilder als Bildsequenz und zeigt sie als „Clip-Objekt“ an. Die Anzeige und das Abspielen als Clip, sowie das Konvertieren in andere Bildformate machen die Software zu einem kompletten Tool für den Workflow in der Computeranimation und PostProduction.

Clip Detection

Im Kern der Software erkennt eine „Clip Detection“ die Einzeldateien eines Clips anhand ihres Namens als zusammengehörig und erzeugt daraus ein internes Clip-Objekt. Dieses Clip-Objekt kann – in einstellbarer fps-Geschwindigkeit – angezeigt und abgespielt werden, es kann umbenannt werden und die Dateien können in andere Einzelbild- oder Streamingformate konvertiert werden.

Zum Einlesen der hochauflösenden Bilder ermöglicht die Multithreading-Architektur der Software das parallele Einlesen von Bildern auf mehreren Prozessor-Cores.

Das Einlesen der Bilder kann entweder über die proprietären Lesemodule der Software (BMP, IFF [Maya, Shake], JPG, RLA [3D-Max], SGI, TIF, CT (Mental Ray) geschehen oder über die integrierte Adobe Photoshop Schnittstelle, die beliebige Photoshop- oder AfterEffects PlugIns ansteuern kann.

Clip Erzeugung

Über die integrierte Apple-Quicktime-Schnittstelle können die aus den Einzelbildern bestehenden Clips in QuickTime integriert werden. Alle in QuickTime zur Verfügung stehenden Streamingformate (MOV, MPEG-2, MPEG-4) können erzeugt erden.

Überblick

Programmiersprache: C++ mit MFC

Plattform: Microsoft Windows

Schnittstellen: Adobe Photoshop, Apple Quicktime

Know-How

  • Lesen/Schreiben von 2D-Bildformaten (BMP, JPG, SGI, IFF, TGA, TIF, CT, RLA)
  • Einbindung und Ansteuerung von Adobe Photoshop, Adobe AfterEffects PlugIns
  • Schreiben von Streamingformaten (Video und Audio) über Apple QuickTime
  • Multithreading-Architektur zum Einlesen von Einzelbildern mit maximaler Performance
  • Anzeigen von Einzelbildern in Echtzeit in einstellbarer fps-Rate.

Gute Nacht, Kleine Katze

Aus Druck-Vorstufen-PDFs macht eine CAM-Software in C++ via ProfiNet Daten für die Beleimung bei Kinderbüchern.

Kinderbücher zum Entdecken

Die Seiten von Bilderbüchern für Kleinkinder bestehen aus Kartons, die an ihren Rückseiten stabil miteinander verleimt sind. Wäre es für die kleinen Leser nicht spannend, wenn man nicht flächig verleimen würde, sondern wenn es Aussparungen und Klappen gäbe? Klappen, hinter denen sich Bilder und weitere Teile der Geschichte entdecken ließen?

Solche Bücher ließen sich bisher im Hochlohnland Deutschland nicht kostendeckend produzieren, denn ein selektiver Auftrag des Klebers war bis dato nur in Handarbeit möglich. Und die automatische, flächige Verleimung verklebte die Klappen.

Eine große, überregionale Druckerei beauftragte ein darauf spezialisiertes Unternehmen mit der Entwicklung und dem Bau einer Maschine, die den Kleber auf die Buchseiten selektiv aufträgt und ausgewählte Bereiche ausspart. Damit die Maschine weiß, welche Bereiche ausgespart werden müssen, entwickelte Agent Smith hierfür eine spezielle CAD/CAM-Software.

Modul 1: Lesen der PDF-Dateien der Druckvorstufe und Berechnung von Beleimungsdaten

Druckvorstufen arbeiten – wahrscheinlich in Druckereien auf der ganzen Welt – mit dem Seitenbeschreibungsformat PDF von Adobe. Mit den DTP Programmen Adobe Indesign und Adobe Illustrator erstellt die Druckvorstufe Vektordateien. Sie beschreiben die nicht zu beleimenden Bereiche mit Linien und Splines. Diese Dateien werden im Format Adobe Acrobat PDF gespeichert. Die von Agent Smith entwickelte Software extrahiert aus den PDF Dateien – für die einzelnen Seiten des Buches – die relevanten Geometriedaten und wandelt sie in ein proprietäres Format, aus dem dann Beleimungsdaten für die Maschine generiert werden.

Modul 2: Senden der Beleimungsdaten an die Maschine über Profinet

Druckvorstufe und Produktion sind nicht nur räumlich voneinander getrennt. Ein zweites, von Agent Smith entwickeltes Modul, öffnet die o.g. proprietären Daten und berechnet daraus die Daten für die selektive Beleimung und übermittelt sie an die Maschine. Spezielle Einstellungen des Bedienungspersonals (z.B. Dichte der Beleimung) werden bei der Berechnung berücksichtigt und ebenfalls an die Maschine übermittelt. Software und Maschine kommunizieren bidirektional via ProfiNet in Echtzeit. Zustände der Maschine werden ebenfalls auf dem Industrie-PC von der entwickelten Software angezeigt.

Überblick

Programmiersprache: C++ mit MFC

Plattform: Microsoft Windows

Schnittstellen: Adobe Acrobat; ProfiNet