Profil von Andreas Kaiser
Geboren: 02.05.1967
Familienstand: Geschieden / 4 Kinder
Meine IT-Kenntnisse und Fähigkeiten decken u.a. folgende Fachgebiete ab:
- Betriebssysteme (Programmierung, nicht Administration):
aktuell:
früher:
- Windows x32/x64 (3.11, 95, 98, NT, 2000, XP, 7)
- Windows CE, Mobile
- Mac OS X, iOS
- Datenbanken (SQL unter versch. Frameworks, nicht Administration):
aktuell:
früher:
- Programmiersprachen und Frameworks:
aktuell:
- Python (auf Microcontroller: MicroPython, CircuitPython)
- Machine Learning Frameworks: Tensorflow, scikit-learn
- Ajax/Web2.0 (HTML, PHP, jQuery, JavaScript, CSS, XML, SVG)
- Microcontroller Arduino IDE (Arduino, ESP32, IoT)
- C/C++ (Linux), Qt (Linux)
- seltener: Processing, PlatformIO
- Dokumenation mit PmWiki
früher:
- X-Code (Objective-C/C++ unter Mac OS X, Cocao, Quartz für iPhone/iPad)
- GWT (Google Web Toolkit), Java
- Oracle (OTL (Oracle, Odbc and DB2-CLI Template Library), ProC, Forms Designer (Einbindung von C/C++ über FFI (Foreign Function Interface)))
- Dokumenation mit DoxyGen und selbstprogrammiert mit Ajax
- Microsoft Visual Studio .NET 2003/2005/2010 (C++, C#, XML unter Windows 2000/XP/Vista/7 und Windows Mobile)
- C/C++ (Windows), Qt (unter Windows)
- Microsoft Visual Studio 6.0 (MFC, Win32, COM/DCOM, ATL)
- Borland C++ (OWL, Win32)
- Borland Turbo-Pascal (Win32)
- embedded Visual C++ 4.0 (PPC 2003 und Windows CE)
- Modula2 (Programieren in Modula2, konvertieren nach C, komplilieren u. debuggen unter MSVC6.0)
Meine Stärken:
- Synergieeffekte durch fundierte Erfahrung in vielen teilweise sehr unterschiedlichen Bereichen
- Rasche Auffassungsgabe / schnelle Einarbeitung in neue Bereiche
- Teamfähigkeit (Offenheit, Zuverlässigkeit, Vertrauenswürdigkeit gegenüber Kollegen und Auftraggebern)
- Technikorientierte Programmierung und grafische Oberflächen, Web-Programmierung, Grundlagen in Datenbankprogrammierung
Sprachkenntnisse
Berufsweg
1984 - 1987: Fernmeldeamt in Neustadt
Ausbildung zum Fernmeldehandwerker (heute: Kommunikationselektroniker)
1987 - 1988: Fachoberschule für Technik in Neustadt
Fachabitur Elektrotechnik
1988 - 1989: Wehrdienst in einer Richtfunk-Multiplex-Einheit auf Korpsebene in Koblenz
1989 - 1991: Höhere Berufsfachschule Informatik in Bad Bergzabern
Staatlich geprüfter Informatikassistent
1991 - 1992 Digitest GmbH, Bad Bergzabern
Techniker für Reparatur IBM-PS/2-Mainboards
1992 - 1994 Arnold EDV GmbH, Bad Bergzabern
Softwareentwickler im Bereich Automatic Test Equipment, Bilderkennung
1994 - 2019 Contron GmbH, Bad Bergzabern
Softwareentwickler in vielen Bereichen der Softwareentwicklung
Als externer Mitarbeiter von 1994 - 1999 ständig bei ABB Mannheim (Bereiche: Industrietechnik und Kraftwerkleittechnik):
- Portierung der Advant Prozessleitsystem Engineering Tools von DOS nach Windows NT 4.0
- Kontinuierliche Weiterentwicklung der Tools und Einbindung neuer Steuerungen
- Neuentwicklung redundanter Leitwerkstechnik
- Intensive Zusammenarbeit mit Schweden, Finnen, Indern.
Als externer Mitarbeiter von 1999 - 2006 ständig bei der Unternehmensgruppe Freudenberg
(Bereiche: Anlagen- und Werkzeugtechnik, Dichtungs- und Schwingungstechnik, Kraftwerktechnik, Vliesstoffe):
- Automatisierung kompletter Mischereien (auch in Frankreich und USA)
- Steuern unterschiedlichster Aggregate. Erfassen und Auswerten von Prozeß- und QS-Daten.
- Teamunterstützung durch Aufbau einer Wissensdatenbank.
Als externer Mitarbeiter von März-November 2006 ständig bei der Kopf GmbH in Landau:
- im Entwicklungsteam für diverse FIBEX (Field Bus Exchange Format) und FlexRay-Tools (Bussystem für Fahrzeuge das u.a. CAN ablösen soll).
Als externer Mitarbeiter von Dezember 2006 - Dezember 2009 ständig abgestellt für die KSB AG in Frankenthal:
- Erweiterung Kennlinienplotprogramm für Pumpen und Turbinen.
- Neuerstellung/Portierung Kennlinienplotprogramm (Datenbank (SQLServer nach Oracle) und GUI (OWL nach MFC)).
- Neuerstellung/Portierung Rasterprogramm (SVG Export)
Als externer Mitarbeiter 2010 abwechselnd bei KSB AG in Frankenthal und Kopf GmbH in Landau:
- KSB: Erweiterung/Pflege Kennlinienplotprogramm für Pumpen und Turbinen.
- Kopf GmbH: Im Testteam für VW/Audi (Modultests, Mutationentests, Dokumentation).
2011-2019 abwechselnd als externer Mitarbeiter bei KSB AG in Frankenthal und im Entwicklerteam bei Contron:
2018 als externer Mitarbeiter im Entwicklerteam bei Freudenberg in Weinheim:
- KSB: Erweiterung/Pflege Kennlinienplotprogramm für Pumpen und Turbinen.
- Contron GmbH / NiGeSo GmbH: iPhone/iPad-Entwicklung und dazugehöriges WebPortal.(ConFile, ZeitPad, ZeitPadXT)
Seit 2020 in Rente
im wohlverdienten (Un-)Ruhestand. Endlich wieder Zeit für die wirklich imteressanten Projekte.
Ausgewählte Projekte 2000-2019
ZeitPad / ZeitPadXT
Lösung um einen Arbeitsvorgang in Einzelschritten kontrolliert abzuarbeiten und zu dokumentieren.
Hierzu wird der Arbeitsablauf über Internet (Mobilfunknetz/ WLAN) auf ein iPad / iPhone übertragen,
und dort abgearbeitet. Der ganze Vorgang wird über ein WebPortal (GWT) verfolgt und dokumentiert.
Verfügbar im AppStore.
ConFile
Ablage von Bildern und Dokumenten im Internet. Zugriff über iPhone/iPad. Verfügbar in AppStore.
Risserkennung für Auspuffhalbschalen
Qualitätssicherung durch die Erkennung von Rissen, die beim Pressen von Auspuffhalbschalen entstehen können. Vorgaben waren: beliebige Lage, unterschiedlichste Größen und Formen der Halbschalen, die Schalen mussten in Echtzeit erfasst werden, Auswertezeit unter 3 Sekunden und Haarrisse ab 0,2 mm zu erkennen. Das Problem wurde unter Einsatz eines Standard-PCs, einer speziellen Blitzanordnung mit Triggerung durch eine Lichtschranke und 5 blitzsynchronen Firewire-CCD-Kameras gelöst.
Die Auswertesoftware und der Erkennungsalgorithmus wurden in C++/MFC erstellt. Die Anbindung der Kameras erfolgte über TrueImage (C++-Bibliothek).
PC-Variante des "Dalli-Klick"-Spiels
Spiel: Aufdecken eines Puzzles mit diversen Sound- und Grafikeffekten unter Ratebeteiligung der Zuschauer. (Optimiert für Beamer)
Bilder unterschiedlichster Formate können in Listen ausschnittweise verwaltet werden. Von der T-Online-Spieleredaktion zum Spiel des Tages gekürt.
Realisiert mit DirectX, MFC und ImageSource (C++-Bibliothek). Version für iPhone.
Aufbau einer Wissensdatenbank
Wichtig war die Bereitstellung unterschiedlichster Informationen (Projektbezogene Daten und Dokumentation, Ansprechpartner, Codesnippets, Herstellerdokumentationen,...) für alle Teammitglieder. Wichtig war auch der einfache weltweite Zugang zu diesen Informationen.
Realisiert als Sammlung von ASCII-Dateien die über ein Webinterface durchsucht, erweitert und abgerufen werden können. Beliebige Dateianhänge (Faxe, PDFs, Word-Dokumente, ...) können verwaltet werden. Vorbild war die Suchmaschine von Google, erweitert um die Modifizierbarkeit der Dateien.
Realisiert mit PHP und Perl.
Kraftwerk Freudenberg in Weinheim
Verbraucherdatenerfassung im Kraftwerk Freudenberg in Weinheim. In C++ erstellter OPC-Server mit MFC-GUI als Schnittstelle zwischen Verbrauchererfassung-SPS und Auswertung SCADA-PC (Blockweiser Transfer von SPS getriggert).
Anzeige- und Bedienoberfläche für elektrische Antriebe
MFC-Applikation (incl. Schnittstelle zu Transientenrecorder) für die Heidelberg Druckmaschinen AG nach VDI/VDE 2186.
Webdomain kaiserreich.de (seit 1998), scherwel.de (seit 2006) und kaiser-swe.de (seit 2009)
Knowledgebase und Testfeld für Internettechniken wie z.B. Perl, PHP, mySQL, JavaScript, CSS, HTML. Intensive Nutzung von Ajax/Web2.0-Techniken (z.B. asynchrones Nachladen von Daten, XML, Animationstechniken) und versch. APIs wie z.B. GoogleMaps.
Im Intranet erweitert um viele teilweise sehr spezielle Funktionen (u.a. realisiert mit PDA und zusätzlichem zu diesem Zweck entwickelten Webserver).
Aufbau einer Produktionslinie für O-Ringe
Automatisierung einer Mischerlinie in Montrond (Südfrankreich)
Automatisierung einer Mischerlinie in Bristol (USA)
Automatisierung mehrerer Mischerlinien in Deutschland (Weinheim, Oberwihl)
Programmierung unter Windows und Linux (C++/Qt/MFC/OPC/Oracle/...) als Bindeglied zwischen Anlage und Oracle-Datenbank (Prozeßsteuerung, Parametrierung der Anlagen über die Datenbank, Betriebs- und Prozeßdatenerfassung, Qualitätssicherung, ...). Serielle Schnittstellenprotokolle (Euromap, R3964, Profibus, ...) und OPC (OLE for Process Control). Anbindung verschiedenster Aggregate an den über die Oracle-Datenbank gesteuerten Ablauf. Diskless Linux-Bedienarbeitsplätze booten über NFS. FFIGEN unter Oracle Forms. Siemens S5/S7-Kopplungen über OPC und unter Linux. Verwiegeprogramme unter Linux (mit Hardwareanbindung: Karussell, Öl-SPS, Regalsystem, Dosiersysteme, RFID-Transponder...). Webauswertungen der Oracle-Daten mit PHP.
Tools für FIBEX und FlexRay
Erstellen diverser XML-Editoren für FIBEX (Field Bus Exchange Format) und FlexRay (neues Bussystem das u.a. CAN ablösen soll).
Busanalysetool für FlexRay. Konfiguration der Busparameter und Signale über FIBEX (XML).
Als Entwicklungstool wird Microsoft Visual Studio .NET 2005 verwendet.
Die XML-Daten werden vorverarbeitet und grafisch aufbereitet in verständlicher Form ausgegeben. Nach dem Editieren der Daten (teilweise ebenfalls grafisch) werden die Daten generiert, validiert und zurückgeschrieben. Dabei werden u.a. folgende Techniken unter .NET 2.0 benutzt: xsd.exe zum Generieren von C#-Klassen aus den Schemadateien der FIBEX-Association in die die XML-Dateien serialisiert werden. XPATH zum Suchen in den XML-Daten. Reflection zur Analyse komplexer XML-Datentypen. XMLSchema-Dateien zur Validierung der Daten, Steuerung des Serialisierungsvorgangs über XMLAttribute.
Aus Exceltabellen die wiederum aus den Datenblättern der Halbleiterherstellern erstellt werden wird mit VBA-Macros C#-Code generiert. Dieser wird zur Applikation gelinkt und genutzt um C-Sourcecode aus selektierbaren Teilen der XML-Daten zu generieren.
Dieser C-Code kann dann von den Entwicklern der Kfz-ECUs verwendet werden.
Unterstützungstool für automatisiertes Testen
Um sicherzustellen, dass sich Änderungen am Programmcode (z.B. Bugfixes, neue Funktionen, ...) nicht negativ auf die bestehende Funktionalität auswirken, kann ein Ablauf erstellt werden, der folgende Schritte automatisch ausführt:
- Vorbereiten der Tests (Dateien prüfen, löschen, kopieren,...)
- Starten der zu testenden Applikation(en)
- Funktionen des Programms prüfen (z.B. Menüpunkte und Dialoge durch simulierte Maus- und Tastatureingaben bedienen, berechnete Werte in Dialogfeldern validieren, ...)
- Ergebnisse der Tests analysieren (z.B. Dateiinhalte vergleichen, Logfiles anzeigen, ...)
Der Test kann mit wenig Zeitaufwand automatisch beliebig oft ausgeführt werden. Zur Durchführung des Tests ist dann niemand mehr erforderlich, der die Funktionalität kennt und das Programm bedienen kann. Realisierung in C#.
Erstellen diverser XML-Editoren für FIBEX (Field Bus Exchange Format) und FlexRay
Busanalysetool für FlexRay. Konfiguration der Busparameter und Signale über FIBEX (XML).
Die XML-Daten werden vorverarbeitet und grafisch aufbereitet in verständlicher Form ausgegeben.
Nach dem Editieren der Daten (teilweise ebenfalls grafisch) werden die Daten generiert, validiert und zurückgeschrieben.
Aus Exceltabellen die wiederum aus den Datenblättern der Halbleiterherstellern erstellt werden wird mit
VBA-Macros C#-Code generiert. Dieser wird zur Applikation gelinkt und genutzt um C-Sourcecode aus selektierbaren
Teilen der XML-Daten zu generieren. Dieser C-Code kann dann von den Entwicklern der Kfz-ECUs verwendet werden.
Mutationen- und Unittests für VW/Audi
Anpassen, Durchführen und Dokumentieren von Mutationentests und Unittests sicherheitsrelevanter Software (ESP).
Entwicklung Kennlinienprogramm für Pumpen und Turbinen
Entwicklung Kennlinienprogramm für Pumpen und Turbinen. Anzeige, Editieren, Drucken (incl. Mehrsprachigkeit mit Einheitenumrechnungen, grafisches Editieren,
Export nach PDF und SVG).
Es wurden unter anderem folgende Tools und Techniken verwendet: Oracle, MFC, SVG, OTL, MS Visual Studio 2005/10, DoxyGen.