Projekte - Softwareentwicklung .Net/C# / C/C++

Auszug von bisher bearbeiteten Projekten:

Aufnahmeprogramm für 3D-Daten über 3D-Lasertriangulations-Kamera

  • Ansteuerung 3D-Kamera und Datenablage
  • Berücksichtigung der Lagedaten von 3D-Kamera, die von KUKA-Roboterarm bewegt wird (Kommunikation mit KUKA-Roboter über TCP/IP)
  • Bereinigung der 3D-Daten von Aufnahme-Artefakten (Noise-Filterung)
  • Datenübergabe an CAD-System

Systementwicklung zur Aufnahme und Auswertung von Stahlplatten

  • Implementierung der Aufnahme von Stahlplatten über Zeilenkamera
  • Implementierung einer Bild-Datenbank auf Basis von PostgreSQL
  • Auswertung der Stahlplatten hinsichtlich Fehlstellen
  • Visualisierung der Fehlstellen

Projektleitung für umfangreiche Mikroskopie-Software

  • Spezifikation von Modulen in Zusammenarbeit mit Produktmanager-Team und Entwickler-Team
  • Planung und Überwachung der Softwareentwicklung auf Basis Microsoft TFS (Team Foundation Server)
  • Mitentwicklung bei speziellen Bildverarbeitungs-Algorithmen, z.B. Software-Autofokus und Fokussteuerung über Fokusmap, Stitching, Extended Depth of Focus (EDF), Topographie

Applikation für Produktions-Management von Röntgenbild-Aufnahmegeräten

  • Benutzerverwaltung, Spezifikationsdaten-Verwaltung, Messergebniss-Verwaltung
  • Flexible Möglichkeiten für den Auftraggeber neue Messvorschriften und Spezifikationen für die Geräte-Produktion einzuführen
  • Offenes System mit Integrationsmöglichkeit verschiedener Auswerte-Unterprogramme: IDL (Interactive Data Language, ITT VIS), C#-Routinen, LabView
  • Weiterentwicklung und Pflege diverser IDL-Auswerte-Unterprogramme

Systementwicklung zur Stahlseilkontrolle (Drahtbrüchen, Durchmesserschwankungen, Schlaglängenänderungen)

  • Implementierung der Stahlseilaufnahme über 4 Zeilenkameras
  • Auswertungs-Algorithmus zur Detektion von Drahtbrüchen, sonst. Fehlstellen, Durchmesserverlauf und Schlaglängenverlauf
  • Visualisierung des Ergebnisses
  • GUI zur finalen Bewertung durch geschulten Anwender
  • PDF-Report

Kontur-Matching-Algorithmus zum Vergleich von reellen Werkstück-Maßen mit CAD-Daten

  • Entwicklung eines geeigneten Kontur-Matching-Algorithmus
  • Bereitstellung des Algorithmus für CAD-Programm über externe DLL (Dynamic Link Library)

Weiterentwicklung Systemsoftware zur Aufzeichnung und Auswertung von Radarbildaufnahmen für Überwachung von Seegangsparametern

  • Einbindung neue Hardware zur Digitalisierung der Radarsignale über TCP/IP
  • Trennung in Server und Client-Prozess
  • Implementierung verschiedener Aufzeichnungsmodi zur Datenreduktion

Entwicklung einer Applikation zur Detektion von Verunreinigungen in hochreinen Siliziumblöcken

  • Einbindung einer Infrarot-Kamera
  • Maschinen-Steuerung über SPS-Anbindung (Drehteller, Beleuchtung, Scheibetüre, Alarm, etc.)
  • Bildauswertung zur Detektion von Verunreinigungen
  • 3D-Visualisierung des Siliziumblockes und Lage der Verunreinigungen
  • Ausgabe eines PDF-Berichts

Entwicklung einer Applikation zur Auswertung von Hautteststreifen:

  • Einbindung einer geeigneten USB-Kamera
  • Bild-Auswertung für diverse Hauttest-Streifen (Kosmetik-Industrie)
  • Implementierung eines konfigurierbaren Fragenkatalogs
  • Flexibel vom Auftraggeber konfigurierbare Logik zur Empfehlung von Kosmetik-Pflegeprodukten

Entwicklung einer Prüfsoftware zur Vermessung des Taumelschlags eines rotierenden Spiegelpolygons:

  • Schnelle Bildaufnahme und Detektion des abgelenkten Laserspots (bis zu 900 Frames pro Sekunde)
  • Komfortable Benutzerverwaltung und Prüfteileverwaltung mit Audit-Trail.
  • Prüfbericht als PDF-Dokument

Entwicklung eines Bilderkennungs-Algorithmus zur Online-Vermessung des Schleifspiegels von Oberleitungsdrähten:

  • Detektion möglicher Schleifspurkanten (Oberflächeninspektion) über eine hochoptimierte Hough-Transformation.
  • Erkennung von prototypischen Situationen über Analyse von Cluster- Strukturen in hochdimensionalen Merkmalsräumen (Vektorquantisierung).

Entwicklung diverser Bilderkennungs-Algorithmen (industrielle Bildverarbeitung) für Flaschen- und Kasten-Sortieranlagen:

  • hocheffiziente Algorithmen zur Mustererkennung von
  • Kreisformen und anderen frei definierbare Formvorlagen.
  • Fehlstellenerkennung bei Flaschenmündung, Flaschenboden und Gewindekontrolle.
  • Flaschenform und Flaschenfarberkennung im Kasten.
  • Bügelflaschenerkennung im Kasten
  • schnelle Belichtungszeit-Steuerung über TTL-Signale (Pulsweiten-Modulation). Fehlstellenerkennung im Glas.

Software zur Visualisierung und Analyse von aus Radarbildern gewonnenen Seegangsparametern zur Langzeitüberwachung:

  • Steuerung des automatischen Transfers von Radar-Bildern (standard marine X-band) über A/D-Wandler.
  • Datenübernahme von NMEA-Geräten über serielle Schnittstelle (RS 232).
  • Variable Darstellung von Ergebnisbildern, Zeitserien und aktuellen Observablen (Radar-Bildauswertung, Radar-Überwachung, Bildanalyse).
  • Konfigurierbare Alarmbedingungen bei kritischem Seegang.

Auswertesoftware für Interferometrie-Bilder für die Optikindustrie und Glasherstellungsindustrie:

  • Pflege und Weiterentwicklung eines Programms zur Qualitätskontrolle von Quarzglas (Interferometer-Bild, Interferometrie, Wellenfront).
  • Berechnung von Zernike-Koeffizienten, Gradienten, Rest-PV und Rest-RMS mit Anbindung an Produktionsdaten-Datenbank (Microsoft SQL Server) (Homogenitätsmessung, Wellenfront-Verzerrung).

Videoüberwachungssystem zur Prozess-Steuerung (Machine Vision):

  • Überwachung und meßwertgeführte Regelung eines Quarzglas-Herstellungsprozesses mittels einer Videokamera durch Online-Videobild-Auswertung (Onlineüberwachung, PID-Steuerung).
  • Steuerung des Prozesses online durch digitale und analoge Signale über SPS Simatic (S5 und S7).

Video-Inspektionssystem zur Qualitätskontrolle (Machine Vision):

  • Überprüfung des Taumelschlages von Anodenspitzen.
  • Steuerung des Aufnahmeprozesses durch TTL-Signale
  • an SPS Simatic S5.

Bildanalyse-Softwarepaket (z.B. für Mikroskopie, Makroskopie, Qualitätskontrolle, Dokumentation):

  • Erstellung und stetige Weiterentwicklung eines umfangreichen Bildanalyse-Programms zur Auswertung von Mikroskopie-Bildern, Videobildern und Scanneraufnahmen.
  • Einsatzgebiet vor allem in der Mikroskopie, Metallographie, Biologie und Qualitätskontrolle.
  • Stichworte: Videodigitalisierung, Bildvermessung, Bildverarbeitung, Bilderkennung, Bildverbesserung, Tiefenschärfe-Bildmontage, Schliffanalyse, Korngrenzenrekonstruktion, Blobanalyse, Watershed, Mosaik-Bildzusammensetzung, Erosion, Dilation, statistische Bildmerkmale, Mikroskop.

Messgerät für Längen und Rillhöhenvermessung:

  • Programm zur Ansteuerung und Auswertung eines Messgerätes zur Längenvermessung von Verpackungsmittelzuschnitten (Getränkekartons).
  • Rillenhöhenvermessung von Faltungskanten mittels Laserdistanzsensor.
  • Datenübernahme über Analog/Digital-Messkarte.
  • Datenauswertung und Visualisierung.

Messgerät für Spannungsdoppelbrechung zur Qualitätskontrolle von Quarzglas-Produkten:

  • Programm zur Ansteuerung und Auswertung eines Messgerätes für die Bestimmung der Spannungsdoppelbrechung (birefringance) in Quarzglas.
  • Konzept-Entwicklung für den Messprozess.
  • Datenübernahme über Analog/Digital Messkarte und Signalverarbeitung.
  • Messdatenauswertung und Messdatenvisualisierung.

Auswertungsprogramm für Thermographie-Bilder (IR-Thermographie):

  • Erstellung und Weiterentwicklung eines Programms zur Auswertung von IR-Wärmebildern im Auftrag eines japanischen Herstellers für Thermographie-Kameras (Thermographie-Bildauswertung).
  • Ansteuerung diverser Kameramodelle über GPIB und SCSI. IR-Bilder, (IR-Kamera, Infrarot-Kamera, Infrarot-Bilder, Infrarot-Bildauswertung).

Forschung im Rahmen von Diplomarbeit und Dissertation:

  • Parallelisiertes Molekulardynamik-Simulationsprogramm EGO.
  • Unterstützte Parallelisierungsbibliotheken: MPI, PVM und PARIX
  • Komplette Neuentwicklung eines Programms zur Simulationen von Biomolekülen, insbesondere von Proteinen.
  • Verteiltes Rechnen auf Unix-Workstationclustern und diversen Vektorcomputern und Parallelrechnern (Fujitsu VPP700, IBM SP2, Cray T3D, Parsytec CC). (Parallelcomputer, Parallelisierung, C/C++)
  • Codeoptimierung zeitkritischer Programmabschnitte.
  • Programmiert in C und Fortran unter diversen UNIX-Systemen.
  • Weitere Information: EGO-Homepage

Hardwarenahe Programmierung im Rahmen verschiedener Projekte:

  • Ansteuerung diverser analogen und digitalen Videodigitalisierungskarten (Framegrabber-Karten).
  • Ansteuerung diverser Geräte über GPIB, SCSI und RS232, etc.
  • Assemblerprogrammierung (z.B. Z80, 8086 und Motorola DSP-Board).
  • Ansteuerung von Linearachsen und Drehachsen über Servomotoren oder Schrittmotoren.
  • Programmierung und Ansteuerung verschiedener Digital-IO-Karten, Analog-Wandler-Karten, Zählerkarten, Watch-Dog-Karten, Multifunktionskarten, Achsensteuerung für Servo-Motoren und Schrittmotoren, Multifunktionszählerkarten.