Deutschland: Profil von Wolfgang Petroschka aus Trossingen, Software-Architekt & -Entwickler, Schwerpunkte C++ und C# | IT Freiberufler, Selbständige, Unternehmens-Profile
Wolfgang Petroschka, Software-Architekt & -Entwickler, Schwerpunkte C++ und C# aus Trossingen
Wolfgang Petroschka
Dipl.-Mathematiker (FH)
Seadex GmbH
Software-Architekt & -Entwickler, Schwerpunkte C++ und C#
78647 Trossingen
teilweise verfügbar
Stunden-/Tagessatz:
k.A.
Letztes Update: 03.03.2012 16:56
Datei-Anlagen
- keine -
Sprachkenntnisse
englisch (verhandlungssicher)französisch (Grundkenntnisse)
Fähigkeiten, Kenntnisse, Erfahrungen:
Fachlicher Schwerpunkt
------------------------------------
Software-Architekt & -Entwickler (Neu- und Weiterentwicklung, Refactoring, Prozesssteuerung, Mathematik, Algorithmen, Feuerwehreinsätze), Mathematiker, Schwerpunkte C++ und C#
Key-Skills
----------------
Mathematiker/Spezialist für C++ (weiterer Schwerpunkt C#) mit besonderem Erfahrungsschatz in der Erweiterung, im nachhaltigen Refactoring und in der Restrukturierung von großen, gewachsenen Projekten (Umfang von 20-100+ Personenjahren). In diesem Umfeld ist auch die Fähigkeit zur schnellen Orientierung in "fremdem" Code gereift.
Ebenso große Erfahrung in der Neuentwicklungen, davon in 2 Projekten mit signifikantem Umfang (Teamgröße 5 - 10 Mitarbeiter, Laufzeit 1 und 3+ Jahre).
Technische Skills
---------------------------
Programmiersprachen
- C++ (Experte)
- C# (Sehr gut)
- C (Experte)
- Delphi (Experte)
- Pascal (Sehr gut)
- JavaScript (Grundkenntnisse)
- Perl (Grundkenntnisse)
- PHP (Grundkenntnisse)
- Basic (Grundkenntnisse)
- NC-Programmierung/G-Code
- PostScript
- Maple
Bibliotheken/Frameworks/APIs
- Qt 4
- STL
- Boost
- MFC
- VCL
- WinAPI
- .NET 3.0, 3.5, 4.0
- WCF
- nHibernate
- OpenGL
- WPF
- Grit 2.6
Dokumentbeschreibungssprachen
- XML
- (X)HTML & CSS
Datenbanken
- Access (Gut)
- BDE (Grundkenntnisse)
- MS SQL Server (Sehr gut)
- MySQL (Gut)
- ODBC (Grundkenntnisse)
- SQL (Sehr gut)
- Sybase (SQL Anywhere Grundkenntnisse)
- ORM nHibernate
Methodiken
- Objektorientierte Analyse (OOA)
- Objektorientiertes Design (OOD)
- Objektorientierte Programmierung (OOP)
- Methoden der agilen Entwicklung (XP, Scrum)
- UML2
Tools
IDEs
- Microsoft Visual Studio 6/2003/2005/2008/2010
- Borland C++ Builder 4/5
- Borland Delphi 5/7
- Borland C++
- Turbo Pascal
Revision Control Systeme
- Subversion (svn)
- Visual Source Safe 6.0 (VSS)
- Perforce
- PVCS
Unit tests
- Microsoft UnitTest-Framework
- NUnit
Sonstige
- BugZilla
- Jira
- Team Foundation Server
- Altova XML Spy
- Visual Paradigm
- SparxSystems Enterprise Architect
- Code Smith
- T4 text templates
Branchen
----------------
- Maschinenbau
- Sondermaschinenbau
- Anlagenbau
- Robotersteuerung
- Automatisierungstechnik
- Softwarehersteller
- Automotive
- Autobranche
- Unterhaltungselektronik
Ausbildung
------------------
03/1998 – 02/2003
Fachhochschule Stuttgart – Hochschule für Technik
Studium Mathematik
Abschluss als Dipl.-Math. (FH)
Referenzen:
Zeitraum: 01/2011 - 06/2012
Branche: Maschinenbau
Projekt: Pflege, Wartung & Erweiterung eines Programmiersystems für Werkzeugmaschinen (Stanzen & Laser), Mentoring & Coaching von Nachwuchsentwicklern
Beschreibung:
An einem grafischen Programmiersystem für Stanz- und Lasermaschinen mussten laufend Wartungsarbeiten und Weiterentwicklung betrieben werden. Dabei lag mein Schwerpunkt fachlich im Bereich Werkzeuge und Technologien, technisch im Bereich Algorithmen, Datenbanken und Oberflächen.
Eine große Aufgabe war die Konsolidierung der Anbindung eines Systems mittels WCF, eine andere die Entwicklung und Implementierung eines komplexen Algorithmus zum Einsatz von Rollenwerkzeugen. Weiterhin war ich für diverse Themen im Gebiet Werkzeuge und NC-Code-Generierung verantwortlich.
Ebenso habe ich andere Entwickler laufend bei Refactoring- und Debugging-Aufgaben unterstützt.
Außerdem habe ich bei der Einarbeitung und Förderung junger Entwickler (zumeist Universitäts-Absolventen im Fach Informatik) Wissen und Praxiserfahrung übertragen und saubere Vorgehensweisen und Anti-Patterns an einem realen System erläutert. Dabei habe ich auch meinen tiefen Kenntnisse im Bereich C++ weitergegeben und für eine steilen Lernkurve bei den Entwicklern gesorgt.
Als Vorgehensmodell in der Entwicklung wurde hier Scrum eingesetzt.
Projektmetrik:
Laufzeit: 9 Monate
Umfang: > 100 Personenjahre
Position: Entwickler & Consultant
Teamgröße: 15
Technologien:
Sprachen:
- C++
- C#
Bibliotheken/Frameworks/APIs:
- STL
- Boost
- Grit 2.6
- Qt
- ODBC
- .Net 4.0
- WCF
Datenbanken:
- Microsoft SQL Server 2005 & 2008
- Microsoft Access
Tools:
- Visual Studio 2008 & 2010
- Perforce
- PVCS
- SparxSystems Enterprise Architect
- make
- Jira
- Code Smith
Sonstiges:
- NC-Programmierung/-Generierung, G-Code
- cygwin
- yacc/lex
Besonderheiten:
- sehr großes, über 2 Jahrzehnte gewachsenes System
- Mischung von unmanaged und managed Code (C++, managed C++, C#)
- Verwendung/Entwicklung von Asynchronous State Machines (ASM)
Plattform:
- Windows XP, Vista, 7
-------------------------------------------------------
Zeitraum: 11/2010 - 12/2010
Branche: Maschinenbau & Automation
Projekt: Produktentwicklung Archiv-Recovery-Tool
Beschreibung:
Software-Tool mit den Features Analyse, Recovery und Extrahierung für ein properitäres Archivierungssystem. Es ermöglicht Batch-Prüfung und Recovery der Archivstruktur und eine Detailprüfung archivierter Daten.
Zu den Aufgaben gehörte die Analyse des Archivierungsformates, Abschätzung rettbarer Zustände (auch für teilweise Wiederherstellung) und die Entwicklung einer intuitiven Oberfläche zur leichten Handhabung von vielen Archiven und deren Inhalt.
Dabei wurde u.a. ein Checksummen-Algorithmus mittels statistischer Methoden analysiert und implementiert. Weiterhin wurde für das Tool eine Testumgebung für automatische Extraktionstests erstellt.
Projektmetrik:
Laufzeit: 1,5 Monate
Umfang: 6 Personenmonate
Position: Entwickler & Architekt
Teamgröße: 2
Technologien:
Sprachen:
- C# (Endprodukt)
- C++ (für die ersten Prototypen)
- PHP (für Analyse Extraktionslogs)
Bibliotheken:
- .Net 4.0
- WPF
Tools:
- Visual Studio 2010
- Subversion
- HxD Hexeditor
- WinMerge
Besonderheiten:
- Multi-Threading in Extraktions- und Analyselogik sowie in GUI
Plattform:
- Windows 7
-------------------------------------------------------
Zeitraum: 10/2010 - 11/2010
Branche: Automation
Projekt: Erstellung einer Beobachtungs- und Logging-Applikation für eine Produktionsanlage
Beschreibung:
Konsolidierung der Überwachung einer Produktionsanlage (z.B. Betriebsmittel- und Rohstoffverbrauch, Produktionskennzahlen), die bisher durch diverse unabhängige Software-Pakete durchgeführt wurde. Ersetzt wurde die bisher genutzte Software durch eine Lösung mit einer Client-Server-Architektur.
Folgende Aufgaben werden durch die neue Software abgedeckt:
* Erfassung von Parametern und Kennzahlen von Siemens S7 PLCs
* Betriebsdatenerfassung (BDE)-Rückmeldung an PPS-System
* Logging in MS SQL Server
* Visualisierung der erfassten Daten
Projektmetrik:
Laufzeit: 1,5 Monate
Umfang: 4 Personenmonate
Position: Architekt & Entwickler
Teamgröße: 4
Technologien:
Sprachen:
- C#
Bibliotheken/Frameworks/APIs:
- .Net 4.0
- WPF
- Silverlight
- WCF
- ADO.NET
- ACCON-AGLink
- log4net
Datenbanken:
- Microsoft SQL Server 2008 Express
- SQL Anywhere 9
Tools:
- Visual Studio 2010
- Subversion, TortoiseSvn
Sonstiges:
- XML (Konfiguration des Servers)
- EVOlite PPS-System
Besonderheiten:
- Analyse der aktuellen Lösung und Entwicklung einer Migrationsstrategie
- SOA
- Multithreading
- PLC/SPS
Plattform:
- Windows 7
-------------------------------------------------------
Zeitraum: 09/2010
Beschreibung: siehe unten Zeitraum: 10/2009 - 07/2010
-------------------------------------------------------
Zeitraum: 08/2010
Branche: Automation
Projekt: Erstellung eines Prototyps für die Kernfunktionalität eines Prozessüberwachungs- und -steuerungs-Frameworks inkl. Hardware-Anbindung und Demo-UI
Beschreibung:
Ziel des Frameworks ist die Bereitstellung einer Client-Server-Architektur, die es ermöglicht, eine beliebige Anzahl von Systemen (z.B. PLC, SAP-System, Datenbank, Anwendung, ...) über eine einheitliche Schnittstelle zu überwachen, zu steuern und zu vernetzen. Dabei ist eine Hohe Skalierbarkeit bezüglich der Menge der gesteuerten Systeme essentiell.
Für diese Aufgabenstellung musste eine grundlegende Architektur entworfen werden und ein Proof of concept-Prototyp erstellt werden, der einen vertikalen Durchstich durch das System darstellt (vom UI bis zur Hardware).
Projektmetrik:
Laufzeit: 1 Monat
Umfang: 2 Personenmonate
Position: Architekt & Entwickler
Teamgröße: 2
Technologien:
Sprachen:
- C#
Bibliotheken/Frameworks/APIs:
- .Net 4.0
- WPF
- ACCON-AGLink
Datenbanken:
- Microsoft SQL Server 2008 Express
Tools:
- Visual Studio 2010
Besonderheiten:
- Analyse der Anforderung
- Analyse der abzulösenden Software
- Entwurf der Architektur
- Multithreading
- Überwachung und Steuerung u.a. von Siemens S7
Plattform:
- Windows 7
-------------------------------------------------------
Projekte aus Berufserfahrung
-------------------------------------------------------
Zeitraum: 10/2009 - 07/2010
Branche: Software-Systemhaus
Projekt: Neuentwicklung, Organisations-, Facility- und Zutritts-Management
Beschreibung:
Entwicklung einer Web-basierten Lösung mit SOA. Die Kommunikationsschicht wurde mit WCF umgesetzt. Implementiert wurde mit C# unter Visual Studio 2008, später unter Visual Studio 2010. Für das User Interface wurden einerseits HTML, CSS und Javascript sowie andererseits Silverlight eingesetzt. Als Webserver kam IIS 6 und 7 zum Einsatz. Server Betriebssysteme waren Windows 2003 und Windows 2008. Konsequentes Unit-Testing mit dem Microsoft UnitTest-Framework.
Position: Architekt/Projekt-Manager/Entwickler
Meine primäre Aufgabe bestand in der Analyse (OOA) der Anforderungen und dem Objektorientierten Design (OOD) der Logik-Schicht. Ebenso war ich für das Projekt-Management verantwortlich und habe hier ein agiles Entwicklungsmodell, das an XP und Scrum angelehnt war, eingeführt. Weiterhin war ich für die Umsetzung von Teilen der Service-Logik in C#, Bereitstellung des WCF-Webservice und der Anbindung der Service Logik an einen Microsoft SQL Server 2005 und 2008 mittels nHibernate zuständig. Zusätzlich habe ich diverse Imports implementiert.
Projektmetrik:
Laufzeit: 1 Jahr
Umfang: 5 Personenjahre
Teamgröße: 6
Technologien:
Sprachen:
- C#
Bibliotheken/Frameworks/APIs:
- .NET 3.5, .NET 4.0
Kommunikation:
- SOAP
- WCF
Datenbanken:
- MS SQL Server 2008
- nHibernate
- SQL
Tools:
- Visual Studio 2008 & 2010
- Subversion
- TFS 2010
- Visual Paradigm
Sonstiges:
- XML
- IIS 6, 7
- Internet Explorer 6, 7
- WWF
- KWD
- Enterprise Library, Unity
- T4
- Unity
Besonderheiten:
- SOA
- Dependency injection
- Code-Generierung (C#)
- Unit-Tests
Plattform:
Windows Vista, Windows 7, Windows Server 2003, Windows Server 2008
-------------------------------------------------------
Zeitraum: 01/2007 - 09/2009
Branche: Maschinenbau, Sondermaschinen
Projekt: Neuentwicklung Anlagensteuerungs-Framework
Beschreibung:
Die Kernfunktionaliät der Software ist die Erzeugung von NC-Code für 5- und 6-achsige CNC-Maschinen (mit Siemens Sinumerik 840D und Siemens S7). Auf der Bedienerseite sind die Anlagen mit einem Industrie-PC (PCU 50) mit Windows Embedded-Betriebssystem ausgestattet. Anwendung findet die Software ebenso auf externen Arbeitsplatz-PCs zur Arbeitsvorbereitung und zur Simulation.
An die Software werden höchste Ansprüche an Stabilität, Usability und Genauigkeit gestellt.
Weitere Details siehe „Weiterentwicklung und Pflege Anlagensteuerungs-Framework“.
Position: Projektleiter/Architekt/Entwickler
Meine Hauptaufgabe bestand in der Vorgabe der Anforderungen sowie deren Umsetzung in Analyse (OOA) und Design (OOD). Ebenso war ich für das Projekt-Management zuständig.
Zusätzlich habe ich bei der Implementierung von Kernkomponenten mit C++ mitentwickelt. Hierbei handelte es sich hauptsächlich um Algorithmen im mathematisch/kinematischen/simulatorischen Bereich. Ebenso habe ich das Grundkonzept für ein dynamisches, aus dem Modell generierten GUI unter Anwendung von Qt4 erarbeitet.
Projektmetrik:
Laufzeit: 3 Jahre
Umfang: 10 Personenjahre
Teamgröße: 5
Technologien:
Sprachen:
- C++
- PHP
- G-Code
Bibliotheken/Frameworks/APIs:
- Boost
- STL
- Qt 4
- SQLApi
- dxflib
- SINUMERIK HMI programming package
Kommunikation:
- COM
- OPC
- DDE
- Profibus
Datenbanken:
- MySQL
- PostgreSQL
- SQL
Tools:
- Visual Studio 2005
- Subversion
- yWorks yEd
Sonstiges:
- XML
- UML
- Excel
Besonderheiten:
- frei programmierbarer Bearbeitungsablauf- Multithreading
- State machines
- Persistenz
- Adynerisches GUI
- Code-Generierung (C++ & G-Code)
- Mathematik (Bewegungsalgorithmen, Kinematik)
- Scheduling
- Plattformübergreifende Prozesskontrolle
- Naked objects-Pattern
- Multithreading
Plattform:
- Windows XP (Embedded) auf PCU50
- Sinumerik 840D CNC Power/Solution Line
- Simatik SPS
-------------------------------------------------------
Zeitraum: 03/2003 - 09/2009
Branche: Maschinenbau, Sondermaschinen
Projekt: Weiterentwicklung und Pflege Anlagensteuerungs-Framework
Beschreibung:
Die Kernfunktionaliät der Software ist die Erzeugung von NC-Code für die 5- und 6-achsigen CNC-Schleifmaschinen aus eigener Produktion. Dabei wird auf eine Drei-Säulen-Strategie gesetzt: Die Produkte, die geschliffen werden können, kommen aus den drei Bereichen Werkzeuge (z.B. Stufenbohrer, Fräser, Abwälzfräser, Schnecken), Medizinaltechnik (z.B. Knieimplantate, Hüftimplantate, Raspeln) und Sonderanwendungen (z.B. Automobil, Luftfahrt, Abrichtschleifscheiben).
An die Software werden höchste Ansprüche an Stabilität, Usability und Genauigkeit gestellt. Oft werden vom Kunden Toleranzen im Mikrometerbereich gefordert. Plattform für die Anwendungen sind Steuerungen aus dem Hause Siemens, die auf Bedienerseite mit einem Industrie-PC mit Windows-Betriebssystem ausgestattet sind. Anwendung findet die Software ebenso auf externen Arbeitsplatz-PCs zur Arbeitsvorbereitung und zur Simulation.
Um das Kernprodukt zur NC-Code-Erzeugung mit ca. 200 Plug-Ins existiert ein breites Umfeld von Tools. Darunter sind unter anderem eine Datenbankanwendung zur Verwaltung der eingesetzten Werkzeuge (z.B. Schleifscheiben und Fräser), ein 2,5D-CAD-System, eine 2D-Grafik für die Nutprogrammierung, das Kinematikdefinitionsmodul, ein NC-Code-Editor und diverse Konfigurationsprogramme vorhanden.
Ein weiteres Highlight der Software-Palette ist die eigenentwickelte 3D-Simulation, mit welcher die Kinematik der Maschine, der Abtrag am Werkstück sowie Kollisionsproblematiken betrachten werden können.
Ebenso wird die Software zur Steuerung von Automatisierungslösungen für den mannlosen Betrieb der Anlagen entwickelt. Automatisierungen umfassen z.B. Lösungen mit Robotern, Stößel-Handlings oder Kettenmagazinen.
Großer Wert wird auch auf die Automatisierung der Software-Entwicklung selbst gelegt.
Es existiert eine breitgefächerte Tool-Chain zur Qualitätssicherung, zur Erstellung der Software und von Installern.
Ältere Software-Versionen wurden mit Object Pascal mit der Delphi-IDE erstellt. Die neue Generation wird mit C++ mit Visual Studio entwickelt. Ein besonderes Augenmerk wurde diesmal auch auf die Portabilität gelegt, um auch Steuerungen mit einem Nicht-Windows-Betriebssystem (z.B. Linux) bedienen zu können.
Besonders an der neuen Software sind die Definition der Software-Module mit einer Meta-Sprache aus der C++-Code generiert wird. Datenspeicherung, GUI und andere Konzepte entstehen automatisch aus der Modul-Definition, es ist keine manuelle Programmierung von Rahmen-Code nötig.
Projektmetrik:
Laufzeit: 10+ Jahre
Umfang: 30+ Personenjahre
Position: Projektleiter/Architekt/Entwickler
Teamgröße: ca. 10
Technologien:
Sprachen:
- Object Pascal
- G-Code
Bibliotheken/Frameworks/APIs:
- VCL
- SINUMERIK HMI programming package
Kommunikation:
- DDE
- COM
- OPC
Datenbanken:
- Access
- SQL
- ADO
- Jet
Tools:
- Delphi 5
- Delphi 7
- Visual SourceSafe 6.0
Sonstiges:
- Excel
Besonderheiten:
- Refactoring: Umstrukturierung Plug-in-System, Extrahieren, reimplementieren und reintegrieren der Kommunikationsschnittstelle, Konsolidierung, Performance-Optimierung
- Code-Generierung (G-Code)
- Mathematik (Bewegungsalgorithmen, Kinematik)
- Plug-in basiertes Framework
Plattform:
- Windows NT 4.0 (Embedded), Windows XP (Embedded) auf PCU50
- Sinumerik 840D CNC Power Line
- Simatik SPS
-------------------------------------------------------
Zeitraum: 03/2007 - 09/2007
Branche: Maschinenbau, Sondermaschinen, Automation, Zuführungssysteme
Projekt: Neuentwicklung konfigurierbare Scheduling-Software zur Zuführungssteuerung und Produktionsanlagenbestückung
Beschreibung:
Mit dieser Software wird in einem GUI grafisch die Belegung von unterschiedlichen Paletten mit verschiedenen Werkstücken und den entsprechenden Bearbeitungsprogrammen konfiguriert.
Von den Paletten werden die Werkstücke dann via Roboter in die Schleifmaschine geladen und nach der Bearbeitung wieder entladen. Die Software kommuniziert mit dem Fanuc Roboter und der Siemens Sinumerik 840D und steuert damit den vollautomatischen Beladungs- und Fertigungsprozess. Dabei wird erreicht, dass der Großteil der Automatisierungsvorgänge hauptzeitparallel abläuft.
Zusätzlich kann in der Software die Abarbeitungsreihenfolge definiert werden und auch Besonderheiten wie das Weitertakten von Werkstücken in Zusammenarbeit von Maschine und Roboter, wenn die Teile nicht in einer Aufspannung bearbeitet werden können, werden abgebildet.
Die Software gibt es in einer Ausführung für einkanalige und zweikanalige NCs. Die zweikanalige Variante ist in der Lage noch mehr Vorgänge zu parallelisieren. In der zweikanaligen Variante läuft das steuernde System auch multithreaded, um die parallelen Vorgänge optimal bedienen zu können.
Die Steuerungslogik wird durch State Machines abgebildet.
Projektmetrik:
Laufzeit: 0,5 Jahre
Umfang: 1 Personenjahr
Position: Architekt/Entwickler
Teamgröße: 2
Technologien:
Sprachen:
- Object Pascal
- G-Code
Bibliotheken/Frameworks/APIs:
- VCL
- SINUMERIK HMI programming package
Kommunikation:
- Profibus
- COM
- OPC
Datenbanken:
- Access
- ADO
- SQL
Tools:
- Delphi 7
- Visual SourceSafe 6.0
Sonstiges:
Besonderheiten:
- Fanuc Roboter
- State machine
- 1- und mehrkanalige Variante
- Multithreading
Plattform:
- Windows XP (Embedded) auf PCU50
- Sinumerik 840D CNC Power/Solution Line
- Simatik SPS
-------------------------------------------------------
Zeitraum: 10/2002 - 02/2003
Branche: Automotive
Projekt: Integration einer Bluetooth-Schnittstelle
Beschreibung:
Voranalyse und Start einer prototypischen Entwicklung für die Integration einer Bluetooth-Schnittstelle in ein KFZ-Kombiinstrument. Über die Bluetooth-Schnittstelle sollte ein Mobiltelefon angebunden werden, um Informationen aus dem Internet zu laden.
Projektmetrik:
Laufzeit: 5 Monate
Umfang: 5 Personenmonate
Position: Entwickler
Teamgröße: 1
Technologien:
Sprachen:
- C
Bibliotheken/Frameworks/APIs:
- WinAPI
Tools:
- Visual C++ 6
- Greenhill Compiler
Besonderheiten:
- Windows Demo-Client
Plattform:
- Ercosek (32-Bit Micro-Controller)
- Windows 2000/XP (Demo-Client)
-------------------------------------------------------
Zeitraum: 07/2001 - 1/2003
Branche: Informationssysteme
Projekt: Mifare-Kartenanwendung
Beschreibung:
Die Anwendung dient dazu, Studentenausweise auszulesen und zu beschreiben. Dazu gehört ein mit VCL entwickeltes GUI, die Datenbankanbindung via BDE und die Anbindung der Hardware über RS232. Teil der Aufgabenstellung war die Entwicklung eines Abstraktions-Layers für das Protokoll der Hardware, um die Kommunikation mit dem Leser zu kapseln.
Projektmetrik:
Laufzeit: 1,5 Jahre
Umfang: 4 Personenmonate
Position: Entwickler
Teamgröße: 1
Technologien:
Sprachen:
- C++
Bibliotheken/Frameworks/APIs:
- VCL
- STL
Datenbanken:
- BDE
Tools:
- Borland C++ Builder 5
Sonstiges:
- RS232
Besonderheiten:
- Hardware-Anbindung
- Abstraktions-Layer
Plattform:
- Windows 95/98/NT4.0
-------------------------------------------------------
Zeitraum: 05/2001 - 06/2001
Branche: Automotive
Projekt: Ansteuerung eins Mobiltelefons über RS232
Beschreibung:
Ansteuerung eines Siemens-Mobiltelefons, um aus einer Windows-Anwendung wählen zu können. Zusätzlich stehen andere über AT-Befehle zur Verfügung stehende Funktionen wie z.B. das Auslesen des Telefonbuchs zur Auswahl.
Dazu wurde das Telefon über eine RS232-Schnittstelle an das System angebunden und über AT-Befehle gesteuert.
Projektmetrik:
Laufzeit: 2 Monate
Umfang: 2 Personenmonate
Position: Entwickler
Teamgröße: 1
Technologien:
Sprachen:
- C
Bibliotheken/Frameworks/APIs:
- WinAPI
Tools:
- Visual C++ 6
Sonstiges:
- AT-Befehle
Plattform:
- Windows NT 4.0
-------------------------------------------------------
Zeitraum: 05/2001
Branche: Medizintechnik
Projekt: Code-Review
Beschreibung:
Review von Defibrilator-Software. Die bisher nur auf dem deutschen Markt vertriebenen Geräte sollten auch auf dem amerikanischen Markt eingeführt werden. Daher musste die Software gewisse QS- und Zertifizierungsmaßnahmen durchlaufen. Dazu gehörte ein Code-Review durch unabhängige Experten. Dieses habe ich zusammen mit eine Kollegin durchgeführt.
Projektmetrik:
Laufzeit: 2 Wochen
Umfang: 1 Personenmonat
Position: Reviewer
Teamgröße: 2
Technologien:
Sprachen:
- C
Sonstiges:
- PC-Lint
-------------------------------------------------------
Zeitraum: 04/2001 - 05/2001
Branche: Unterhaltungselektronik
Projekt: Signalanalyse-Tool
Beschreibung:
Für die Halbleiterproduktion wurde ein Tool benötigt, das eine Signalanalyse mit Hilfe einer FFT (Fast Fourier Transform) durchführte.
Dazu wurde von einer Kollegin ein GUI mit C und Tcl/Tk entwickelt. Ich habe hierzu die darunterliegenden Algorithmen implementiert:
- Portierung von bestehendem C-Code zur FFT von einem Solaris-System
- Druckausgabe der Kurven mit PostScript
- Histogramm-Analyse
Projektmetrik:
Laufzeit: 6 Monate
Umfang: 8 Personenmonate
Position: Entwickler
Teamgröße: 2
Technologien:
Sprachen:
- C++
- PostScript
Tools:
- Visual C++ 6
- Borland Builder 5
- gcc
Besonderheiten:
- FFT (Schnelle Fourier-Transformation, Fast Fourier Transform)
- Multiplattform-Entwicklung
Plattform:
- Windows NT 4.0
- Linux
- Solaris
-------------------------------------------------------
Zeitraum: 03/2001
Branche: Unterhaltungselektronik
Projekt: Grafische Debugging-Tools für TV-Geräte
Beschreibung:
Für ein neu entwickeltes TV-Geräte wurden folgende Debugging-Tools benötigt:
1. Speicherfragmentierungs- und Memory-Leak-Analyse: Anzeige des Hauptspeichers als Grafik, die bestimmte Speicherblöcke als Rechtecke darstellt. Jedes Subsystem bekommt eine eigene Farbe zugewiesen. So kann anhand des „Kachelmusters“ untersucht werden, welche Subsysteme den Speicher fragmentieren und welche Memory-Leaks verursachen.
2. Analyse des internen Message-Systems: Alle internen Messages des Systems werden in Binärdateien gedumpt. Diese Dateien können eingelesen werden und als sortier- und filterbare Tabellen dargestellt werden (Quelle, Ziel, Nachrichtentyp, Zeitstempel, usw.).
Dabei muss auch eine Big-endian Little-endian Konvertierung durchgeführt werden.
Projektmetrik:
Laufzeit: 1 Monat
Umfang: 1 Personenmonat
Position: Entwickler
Teamgröße: 1
Technologien:
Sprachen:
- C++
Bibliotheken/Frameworks/APIs:
- VCL
- STL
Tools:
- Borland Builder 4
Besonderheiten:
- Big-Endian-/Little-Endian-Problematiken
Plattform:
- Windows NT 4.0
-------------------------------------------------------
Zeitraum: 09/2000 - 02/2001
Branche: Ingenieurbüro
Projekt: C++-Code-Analyse-Tool
Beschreibung:
Tool, das auf Grund von Source-Code-Analyse unter anderem diese Features bietet:
- im Projekt enthaltene Source-Dateien
- Aufruf-Graphen (inkl. Rekursionserkennung)
- Klassenhierarchien (inkl. Member-Funktionen)
Dabei können makefiles, Visual C++ 6-Projekte und Borland C++ Builder 4/5-Projekte als Startpunkt gewählt werden.
Projektmetrik:
Laufzeit: 0,5 Jahre
Umfang: 0,5 Personenjahre
Position: Entwickler
Teamgröße: 1
Technologien:
Sprachen:
- C++
Bibliotheken/Frameworks/APIs:
- MFC
- STL
Tools:
- Visual C++ 6
Plattform:
- Window NT 4.0, Windows 2000
Zeitliche und räumliche Verfügbarkeit:
Fachlicher Schwerpunkt
------------------------------------
Software-Architekt & -Entwickler (Neu- und Weiterentwicklung, Refactoring, Prozesssteuerung, Mathematik, Algorithmen, Feuerwehreinsätze), Mathematiker, Schwerpunkte C++ und C#
Key-Skills
----------------
Mathematiker/Spezialist für C++ (weiterer Schwerpunkt C#) mit besonderem Erfahrungsschatz in der Erweiterung, im nachhaltigen Refactoring und in der Restrukturierung von großen, gewachsenen Projekten (Umfang von 20-100+ Personenjahren). In diesem Umfeld ist auch die Fähigkeit zur schnellen Orientierung in "fremdem" Code gereift.
Ebenso große Erfahrung in der Neuentwicklungen, davon in 2 Projekten mit signifikantem Umfang (Teamgröße 5 - 10 Mitarbeiter, Laufzeit 1 und 3+ Jahre).
Technische Skills
---------------------------
Programmiersprachen
- C++ (Experte)
- C# (Sehr gut)
- C (Experte)
- Delphi (Experte)
- Pascal (Sehr gut)
- JavaScript (Grundkenntnisse)
- Perl (Grundkenntnisse)
- PHP (Grundkenntnisse)
- Basic (Grundkenntnisse)
- NC-Programmierung/G-Code
- PostScript
- Maple
Bibliotheken/Frameworks/APIs
- Qt 4
- STL
- Boost
- MFC
- VCL
- WinAPI
- .NET 3.0, 3.5, 4.0
- WCF
- nHibernate
- OpenGL
- WPF
- Grit 2.6
Dokumentbeschreibungssprachen
- XML
- (X)HTML & CSS
Datenbanken
- Access (Gut)
- BDE (Grundkenntnisse)
- MS SQL Server (Sehr gut)
- MySQL (Gut)
- ODBC (Grundkenntnisse)
- SQL (Sehr gut)
- Sybase (SQL Anywhere Grundkenntnisse)
- ORM nHibernate
Methodiken
- Objektorientierte Analyse (OOA)
- Objektorientiertes Design (OOD)
- Objektorientierte Programmierung (OOP)
- Methoden der agilen Entwicklung (XP, Scrum)
- UML2
Tools
IDEs
- Microsoft Visual Studio 6/2003/2005/2008/2010
- Borland C++ Builder 4/5
- Borland Delphi 5/7
- Borland C++
- Turbo Pascal
Revision Control Systeme
- Subversion (svn)
- Visual Source Safe 6.0 (VSS)
- Perforce
- PVCS
Unit tests
- Microsoft UnitTest-Framework
- NUnit
Sonstige
- BugZilla
- Jira
- Team Foundation Server
- Altova XML Spy
- Visual Paradigm
- SparxSystems Enterprise Architect
- Code Smith
- T4 text templates
Branchen
----------------
- Maschinenbau
- Sondermaschinenbau
- Anlagenbau
- Robotersteuerung
- Automatisierungstechnik
- Softwarehersteller
- Automotive
- Autobranche
- Unterhaltungselektronik
Ausbildung
------------------
03/1998 – 02/2003
Fachhochschule Stuttgart – Hochschule für Technik
Studium Mathematik
Abschluss als Dipl.-Math. (FH)
Referenzen:
Zeitraum: 01/2011 - 06/2012
Branche: Maschinenbau
Projekt: Pflege, Wartung & Erweiterung eines Programmiersystems für Werkzeugmaschinen (Stanzen & Laser), Mentoring & Coaching von Nachwuchsentwicklern
Beschreibung:
An einem grafischen Programmiersystem für Stanz- und Lasermaschinen mussten laufend Wartungsarbeiten und Weiterentwicklung betrieben werden. Dabei lag mein Schwerpunkt fachlich im Bereich Werkzeuge und Technologien, technisch im Bereich Algorithmen, Datenbanken und Oberflächen.
Eine große Aufgabe war die Konsolidierung der Anbindung eines Systems mittels WCF, eine andere die Entwicklung und Implementierung eines komplexen Algorithmus zum Einsatz von Rollenwerkzeugen. Weiterhin war ich für diverse Themen im Gebiet Werkzeuge und NC-Code-Generierung verantwortlich.
Ebenso habe ich andere Entwickler laufend bei Refactoring- und Debugging-Aufgaben unterstützt.
Außerdem habe ich bei der Einarbeitung und Förderung junger Entwickler (zumeist Universitäts-Absolventen im Fach Informatik) Wissen und Praxiserfahrung übertragen und saubere Vorgehensweisen und Anti-Patterns an einem realen System erläutert. Dabei habe ich auch meinen tiefen Kenntnisse im Bereich C++ weitergegeben und für eine steilen Lernkurve bei den Entwicklern gesorgt.
Als Vorgehensmodell in der Entwicklung wurde hier Scrum eingesetzt.
Projektmetrik:
Laufzeit: 9 Monate
Umfang: > 100 Personenjahre
Position: Entwickler & Consultant
Teamgröße: 15
Technologien:
Sprachen:
- C++
- C#
Bibliotheken/Frameworks/APIs:
- STL
- Boost
- Grit 2.6
- Qt
- ODBC
- .Net 4.0
- WCF
Datenbanken:
- Microsoft SQL Server 2005 & 2008
- Microsoft Access
Tools:
- Visual Studio 2008 & 2010
- Perforce
- PVCS
- SparxSystems Enterprise Architect
- make
- Jira
- Code Smith
Sonstiges:
- NC-Programmierung/-Generierung, G-Code
- cygwin
- yacc/lex
Besonderheiten:
- sehr großes, über 2 Jahrzehnte gewachsenes System
- Mischung von unmanaged und managed Code (C++, managed C++, C#)
- Verwendung/Entwicklung von Asynchronous State Machines (ASM)
Plattform:
- Windows XP, Vista, 7
-------------------------------------------------------
Zeitraum: 11/2010 - 12/2010
Branche: Maschinenbau & Automation
Projekt: Produktentwicklung Archiv-Recovery-Tool
Beschreibung:
Software-Tool mit den Features Analyse, Recovery und Extrahierung für ein properitäres Archivierungssystem. Es ermöglicht Batch-Prüfung und Recovery der Archivstruktur und eine Detailprüfung archivierter Daten.
Zu den Aufgaben gehörte die Analyse des Archivierungsformates, Abschätzung rettbarer Zustände (auch für teilweise Wiederherstellung) und die Entwicklung einer intuitiven Oberfläche zur leichten Handhabung von vielen Archiven und deren Inhalt.
Dabei wurde u.a. ein Checksummen-Algorithmus mittels statistischer Methoden analysiert und implementiert. Weiterhin wurde für das Tool eine Testumgebung für automatische Extraktionstests erstellt.
Projektmetrik:
Laufzeit: 1,5 Monate
Umfang: 6 Personenmonate
Position: Entwickler & Architekt
Teamgröße: 2
Technologien:
Sprachen:
- C# (Endprodukt)
- C++ (für die ersten Prototypen)
- PHP (für Analyse Extraktionslogs)
Bibliotheken:
- .Net 4.0
- WPF
Tools:
- Visual Studio 2010
- Subversion
- HxD Hexeditor
- WinMerge
Besonderheiten:
- Multi-Threading in Extraktions- und Analyselogik sowie in GUI
Plattform:
- Windows 7
-------------------------------------------------------
Zeitraum: 10/2010 - 11/2010
Branche: Automation
Projekt: Erstellung einer Beobachtungs- und Logging-Applikation für eine Produktionsanlage
Beschreibung:
Konsolidierung der Überwachung einer Produktionsanlage (z.B. Betriebsmittel- und Rohstoffverbrauch, Produktionskennzahlen), die bisher durch diverse unabhängige Software-Pakete durchgeführt wurde. Ersetzt wurde die bisher genutzte Software durch eine Lösung mit einer Client-Server-Architektur.
Folgende Aufgaben werden durch die neue Software abgedeckt:
* Erfassung von Parametern und Kennzahlen von Siemens S7 PLCs
* Betriebsdatenerfassung (BDE)-Rückmeldung an PPS-System
* Logging in MS SQL Server
* Visualisierung der erfassten Daten
Projektmetrik:
Laufzeit: 1,5 Monate
Umfang: 4 Personenmonate
Position: Architekt & Entwickler
Teamgröße: 4
Technologien:
Sprachen:
- C#
Bibliotheken/Frameworks/APIs:
- .Net 4.0
- WPF
- Silverlight
- WCF
- ADO.NET
- ACCON-AGLink
- log4net
Datenbanken:
- Microsoft SQL Server 2008 Express
- SQL Anywhere 9
Tools:
- Visual Studio 2010
- Subversion, TortoiseSvn
Sonstiges:
- XML (Konfiguration des Servers)
- EVOlite PPS-System
Besonderheiten:
- Analyse der aktuellen Lösung und Entwicklung einer Migrationsstrategie
- SOA
- Multithreading
- PLC/SPS
Plattform:
- Windows 7
-------------------------------------------------------
Zeitraum: 09/2010
Beschreibung: siehe unten Zeitraum: 10/2009 - 07/2010
-------------------------------------------------------
Zeitraum: 08/2010
Branche: Automation
Projekt: Erstellung eines Prototyps für die Kernfunktionalität eines Prozessüberwachungs- und -steuerungs-Frameworks inkl. Hardware-Anbindung und Demo-UI
Beschreibung:
Ziel des Frameworks ist die Bereitstellung einer Client-Server-Architektur, die es ermöglicht, eine beliebige Anzahl von Systemen (z.B. PLC, SAP-System, Datenbank, Anwendung, ...) über eine einheitliche Schnittstelle zu überwachen, zu steuern und zu vernetzen. Dabei ist eine Hohe Skalierbarkeit bezüglich der Menge der gesteuerten Systeme essentiell.
Für diese Aufgabenstellung musste eine grundlegende Architektur entworfen werden und ein Proof of concept-Prototyp erstellt werden, der einen vertikalen Durchstich durch das System darstellt (vom UI bis zur Hardware).
Projektmetrik:
Laufzeit: 1 Monat
Umfang: 2 Personenmonate
Position: Architekt & Entwickler
Teamgröße: 2
Technologien:
Sprachen:
- C#
Bibliotheken/Frameworks/APIs:
- .Net 4.0
- WPF
- ACCON-AGLink
Datenbanken:
- Microsoft SQL Server 2008 Express
Tools:
- Visual Studio 2010
Besonderheiten:
- Analyse der Anforderung
- Analyse der abzulösenden Software
- Entwurf der Architektur
- Multithreading
- Überwachung und Steuerung u.a. von Siemens S7
Plattform:
- Windows 7
-------------------------------------------------------
Projekte aus Berufserfahrung
-------------------------------------------------------
Zeitraum: 10/2009 - 07/2010
Branche: Software-Systemhaus
Projekt: Neuentwicklung, Organisations-, Facility- und Zutritts-Management
Beschreibung:
Entwicklung einer Web-basierten Lösung mit SOA. Die Kommunikationsschicht wurde mit WCF umgesetzt. Implementiert wurde mit C# unter Visual Studio 2008, später unter Visual Studio 2010. Für das User Interface wurden einerseits HTML, CSS und Javascript sowie andererseits Silverlight eingesetzt. Als Webserver kam IIS 6 und 7 zum Einsatz. Server Betriebssysteme waren Windows 2003 und Windows 2008. Konsequentes Unit-Testing mit dem Microsoft UnitTest-Framework.
Position: Architekt/Projekt-Manager/Entwickler
Meine primäre Aufgabe bestand in der Analyse (OOA) der Anforderungen und dem Objektorientierten Design (OOD) der Logik-Schicht. Ebenso war ich für das Projekt-Management verantwortlich und habe hier ein agiles Entwicklungsmodell, das an XP und Scrum angelehnt war, eingeführt. Weiterhin war ich für die Umsetzung von Teilen der Service-Logik in C#, Bereitstellung des WCF-Webservice und der Anbindung der Service Logik an einen Microsoft SQL Server 2005 und 2008 mittels nHibernate zuständig. Zusätzlich habe ich diverse Imports implementiert.
Projektmetrik:
Laufzeit: 1 Jahr
Umfang: 5 Personenjahre
Teamgröße: 6
Technologien:
Sprachen:
- C#
Bibliotheken/Frameworks/APIs:
- .NET 3.5, .NET 4.0
Kommunikation:
- SOAP
- WCF
Datenbanken:
- MS SQL Server 2008
- nHibernate
- SQL
Tools:
- Visual Studio 2008 & 2010
- Subversion
- TFS 2010
- Visual Paradigm
Sonstiges:
- XML
- IIS 6, 7
- Internet Explorer 6, 7
- WWF
- KWD
- Enterprise Library, Unity
- T4
- Unity
Besonderheiten:
- SOA
- Dependency injection
- Code-Generierung (C#)
- Unit-Tests
Plattform:
Windows Vista, Windows 7, Windows Server 2003, Windows Server 2008
-------------------------------------------------------
Zeitraum: 01/2007 - 09/2009
Branche: Maschinenbau, Sondermaschinen
Projekt: Neuentwicklung Anlagensteuerungs-Framework
Beschreibung:
Die Kernfunktionaliät der Software ist die Erzeugung von NC-Code für 5- und 6-achsige CNC-Maschinen (mit Siemens Sinumerik 840D und Siemens S7). Auf der Bedienerseite sind die Anlagen mit einem Industrie-PC (PCU 50) mit Windows Embedded-Betriebssystem ausgestattet. Anwendung findet die Software ebenso auf externen Arbeitsplatz-PCs zur Arbeitsvorbereitung und zur Simulation.
An die Software werden höchste Ansprüche an Stabilität, Usability und Genauigkeit gestellt.
Weitere Details siehe „Weiterentwicklung und Pflege Anlagensteuerungs-Framework“.
Position: Projektleiter/Architekt/Entwickler
Meine Hauptaufgabe bestand in der Vorgabe der Anforderungen sowie deren Umsetzung in Analyse (OOA) und Design (OOD). Ebenso war ich für das Projekt-Management zuständig.
Zusätzlich habe ich bei der Implementierung von Kernkomponenten mit C++ mitentwickelt. Hierbei handelte es sich hauptsächlich um Algorithmen im mathematisch/kinematischen/simulatorischen Bereich. Ebenso habe ich das Grundkonzept für ein dynamisches, aus dem Modell generierten GUI unter Anwendung von Qt4 erarbeitet.
Projektmetrik:
Laufzeit: 3 Jahre
Umfang: 10 Personenjahre
Teamgröße: 5
Technologien:
Sprachen:
- C++
- PHP
- G-Code
Bibliotheken/Frameworks/APIs:
- Boost
- STL
- Qt 4
- SQLApi
- dxflib
- SINUMERIK HMI programming package
Kommunikation:
- COM
- OPC
- DDE
- Profibus
Datenbanken:
- MySQL
- PostgreSQL
- SQL
Tools:
- Visual Studio 2005
- Subversion
- yWorks yEd
Sonstiges:
- XML
- UML
- Excel
Besonderheiten:
- frei programmierbarer Bearbeitungsablauf- Multithreading
- State machines
- Persistenz
- Adynerisches GUI
- Code-Generierung (C++ & G-Code)
- Mathematik (Bewegungsalgorithmen, Kinematik)
- Scheduling
- Plattformübergreifende Prozesskontrolle
- Naked objects-Pattern
- Multithreading
Plattform:
- Windows XP (Embedded) auf PCU50
- Sinumerik 840D CNC Power/Solution Line
- Simatik SPS
-------------------------------------------------------
Zeitraum: 03/2003 - 09/2009
Branche: Maschinenbau, Sondermaschinen
Projekt: Weiterentwicklung und Pflege Anlagensteuerungs-Framework
Beschreibung:
Die Kernfunktionaliät der Software ist die Erzeugung von NC-Code für die 5- und 6-achsigen CNC-Schleifmaschinen aus eigener Produktion. Dabei wird auf eine Drei-Säulen-Strategie gesetzt: Die Produkte, die geschliffen werden können, kommen aus den drei Bereichen Werkzeuge (z.B. Stufenbohrer, Fräser, Abwälzfräser, Schnecken), Medizinaltechnik (z.B. Knieimplantate, Hüftimplantate, Raspeln) und Sonderanwendungen (z.B. Automobil, Luftfahrt, Abrichtschleifscheiben).
An die Software werden höchste Ansprüche an Stabilität, Usability und Genauigkeit gestellt. Oft werden vom Kunden Toleranzen im Mikrometerbereich gefordert. Plattform für die Anwendungen sind Steuerungen aus dem Hause Siemens, die auf Bedienerseite mit einem Industrie-PC mit Windows-Betriebssystem ausgestattet sind. Anwendung findet die Software ebenso auf externen Arbeitsplatz-PCs zur Arbeitsvorbereitung und zur Simulation.
Um das Kernprodukt zur NC-Code-Erzeugung mit ca. 200 Plug-Ins existiert ein breites Umfeld von Tools. Darunter sind unter anderem eine Datenbankanwendung zur Verwaltung der eingesetzten Werkzeuge (z.B. Schleifscheiben und Fräser), ein 2,5D-CAD-System, eine 2D-Grafik für die Nutprogrammierung, das Kinematikdefinitionsmodul, ein NC-Code-Editor und diverse Konfigurationsprogramme vorhanden.
Ein weiteres Highlight der Software-Palette ist die eigenentwickelte 3D-Simulation, mit welcher die Kinematik der Maschine, der Abtrag am Werkstück sowie Kollisionsproblematiken betrachten werden können.
Ebenso wird die Software zur Steuerung von Automatisierungslösungen für den mannlosen Betrieb der Anlagen entwickelt. Automatisierungen umfassen z.B. Lösungen mit Robotern, Stößel-Handlings oder Kettenmagazinen.
Großer Wert wird auch auf die Automatisierung der Software-Entwicklung selbst gelegt.
Es existiert eine breitgefächerte Tool-Chain zur Qualitätssicherung, zur Erstellung der Software und von Installern.
Ältere Software-Versionen wurden mit Object Pascal mit der Delphi-IDE erstellt. Die neue Generation wird mit C++ mit Visual Studio entwickelt. Ein besonderes Augenmerk wurde diesmal auch auf die Portabilität gelegt, um auch Steuerungen mit einem Nicht-Windows-Betriebssystem (z.B. Linux) bedienen zu können.
Besonders an der neuen Software sind die Definition der Software-Module mit einer Meta-Sprache aus der C++-Code generiert wird. Datenspeicherung, GUI und andere Konzepte entstehen automatisch aus der Modul-Definition, es ist keine manuelle Programmierung von Rahmen-Code nötig.
Projektmetrik:
Laufzeit: 10+ Jahre
Umfang: 30+ Personenjahre
Position: Projektleiter/Architekt/Entwickler
Teamgröße: ca. 10
Technologien:
Sprachen:
- Object Pascal
- G-Code
Bibliotheken/Frameworks/APIs:
- VCL
- SINUMERIK HMI programming package
Kommunikation:
- DDE
- COM
- OPC
Datenbanken:
- Access
- SQL
- ADO
- Jet
Tools:
- Delphi 5
- Delphi 7
- Visual SourceSafe 6.0
Sonstiges:
- Excel
Besonderheiten:
- Refactoring: Umstrukturierung Plug-in-System, Extrahieren, reimplementieren und reintegrieren der Kommunikationsschnittstelle, Konsolidierung, Performance-Optimierung
- Code-Generierung (G-Code)
- Mathematik (Bewegungsalgorithmen, Kinematik)
- Plug-in basiertes Framework
Plattform:
- Windows NT 4.0 (Embedded), Windows XP (Embedded) auf PCU50
- Sinumerik 840D CNC Power Line
- Simatik SPS
-------------------------------------------------------
Zeitraum: 03/2007 - 09/2007
Branche: Maschinenbau, Sondermaschinen, Automation, Zuführungssysteme
Projekt: Neuentwicklung konfigurierbare Scheduling-Software zur Zuführungssteuerung und Produktionsanlagenbestückung
Beschreibung:
Mit dieser Software wird in einem GUI grafisch die Belegung von unterschiedlichen Paletten mit verschiedenen Werkstücken und den entsprechenden Bearbeitungsprogrammen konfiguriert.
Von den Paletten werden die Werkstücke dann via Roboter in die Schleifmaschine geladen und nach der Bearbeitung wieder entladen. Die Software kommuniziert mit dem Fanuc Roboter und der Siemens Sinumerik 840D und steuert damit den vollautomatischen Beladungs- und Fertigungsprozess. Dabei wird erreicht, dass der Großteil der Automatisierungsvorgänge hauptzeitparallel abläuft.
Zusätzlich kann in der Software die Abarbeitungsreihenfolge definiert werden und auch Besonderheiten wie das Weitertakten von Werkstücken in Zusammenarbeit von Maschine und Roboter, wenn die Teile nicht in einer Aufspannung bearbeitet werden können, werden abgebildet.
Die Software gibt es in einer Ausführung für einkanalige und zweikanalige NCs. Die zweikanalige Variante ist in der Lage noch mehr Vorgänge zu parallelisieren. In der zweikanaligen Variante läuft das steuernde System auch multithreaded, um die parallelen Vorgänge optimal bedienen zu können.
Die Steuerungslogik wird durch State Machines abgebildet.
Projektmetrik:
Laufzeit: 0,5 Jahre
Umfang: 1 Personenjahr
Position: Architekt/Entwickler
Teamgröße: 2
Technologien:
Sprachen:
- Object Pascal
- G-Code
Bibliotheken/Frameworks/APIs:
- VCL
- SINUMERIK HMI programming package
Kommunikation:
- Profibus
- COM
- OPC
Datenbanken:
- Access
- ADO
- SQL
Tools:
- Delphi 7
- Visual SourceSafe 6.0
Sonstiges:
Besonderheiten:
- Fanuc Roboter
- State machine
- 1- und mehrkanalige Variante
- Multithreading
Plattform:
- Windows XP (Embedded) auf PCU50
- Sinumerik 840D CNC Power/Solution Line
- Simatik SPS
-------------------------------------------------------
Zeitraum: 10/2002 - 02/2003
Branche: Automotive
Projekt: Integration einer Bluetooth-Schnittstelle
Beschreibung:
Voranalyse und Start einer prototypischen Entwicklung für die Integration einer Bluetooth-Schnittstelle in ein KFZ-Kombiinstrument. Über die Bluetooth-Schnittstelle sollte ein Mobiltelefon angebunden werden, um Informationen aus dem Internet zu laden.
Projektmetrik:
Laufzeit: 5 Monate
Umfang: 5 Personenmonate
Position: Entwickler
Teamgröße: 1
Technologien:
Sprachen:
- C
Bibliotheken/Frameworks/APIs:
- WinAPI
Tools:
- Visual C++ 6
- Greenhill Compiler
Besonderheiten:
- Windows Demo-Client
Plattform:
- Ercosek (32-Bit Micro-Controller)
- Windows 2000/XP (Demo-Client)
-------------------------------------------------------
Zeitraum: 07/2001 - 1/2003
Branche: Informationssysteme
Projekt: Mifare-Kartenanwendung
Beschreibung:
Die Anwendung dient dazu, Studentenausweise auszulesen und zu beschreiben. Dazu gehört ein mit VCL entwickeltes GUI, die Datenbankanbindung via BDE und die Anbindung der Hardware über RS232. Teil der Aufgabenstellung war die Entwicklung eines Abstraktions-Layers für das Protokoll der Hardware, um die Kommunikation mit dem Leser zu kapseln.
Projektmetrik:
Laufzeit: 1,5 Jahre
Umfang: 4 Personenmonate
Position: Entwickler
Teamgröße: 1
Technologien:
Sprachen:
- C++
Bibliotheken/Frameworks/APIs:
- VCL
- STL
Datenbanken:
- BDE
Tools:
- Borland C++ Builder 5
Sonstiges:
- RS232
Besonderheiten:
- Hardware-Anbindung
- Abstraktions-Layer
Plattform:
- Windows 95/98/NT4.0
-------------------------------------------------------
Zeitraum: 05/2001 - 06/2001
Branche: Automotive
Projekt: Ansteuerung eins Mobiltelefons über RS232
Beschreibung:
Ansteuerung eines Siemens-Mobiltelefons, um aus einer Windows-Anwendung wählen zu können. Zusätzlich stehen andere über AT-Befehle zur Verfügung stehende Funktionen wie z.B. das Auslesen des Telefonbuchs zur Auswahl.
Dazu wurde das Telefon über eine RS232-Schnittstelle an das System angebunden und über AT-Befehle gesteuert.
Projektmetrik:
Laufzeit: 2 Monate
Umfang: 2 Personenmonate
Position: Entwickler
Teamgröße: 1
Technologien:
Sprachen:
- C
Bibliotheken/Frameworks/APIs:
- WinAPI
Tools:
- Visual C++ 6
Sonstiges:
- AT-Befehle
Plattform:
- Windows NT 4.0
-------------------------------------------------------
Zeitraum: 05/2001
Branche: Medizintechnik
Projekt: Code-Review
Beschreibung:
Review von Defibrilator-Software. Die bisher nur auf dem deutschen Markt vertriebenen Geräte sollten auch auf dem amerikanischen Markt eingeführt werden. Daher musste die Software gewisse QS- und Zertifizierungsmaßnahmen durchlaufen. Dazu gehörte ein Code-Review durch unabhängige Experten. Dieses habe ich zusammen mit eine Kollegin durchgeführt.
Projektmetrik:
Laufzeit: 2 Wochen
Umfang: 1 Personenmonat
Position: Reviewer
Teamgröße: 2
Technologien:
Sprachen:
- C
Sonstiges:
- PC-Lint
-------------------------------------------------------
Zeitraum: 04/2001 - 05/2001
Branche: Unterhaltungselektronik
Projekt: Signalanalyse-Tool
Beschreibung:
Für die Halbleiterproduktion wurde ein Tool benötigt, das eine Signalanalyse mit Hilfe einer FFT (Fast Fourier Transform) durchführte.
Dazu wurde von einer Kollegin ein GUI mit C und Tcl/Tk entwickelt. Ich habe hierzu die darunterliegenden Algorithmen implementiert:
- Portierung von bestehendem C-Code zur FFT von einem Solaris-System
- Druckausgabe der Kurven mit PostScript
- Histogramm-Analyse
Projektmetrik:
Laufzeit: 6 Monate
Umfang: 8 Personenmonate
Position: Entwickler
Teamgröße: 2
Technologien:
Sprachen:
- C++
- PostScript
Tools:
- Visual C++ 6
- Borland Builder 5
- gcc
Besonderheiten:
- FFT (Schnelle Fourier-Transformation, Fast Fourier Transform)
- Multiplattform-Entwicklung
Plattform:
- Windows NT 4.0
- Linux
- Solaris
-------------------------------------------------------
Zeitraum: 03/2001
Branche: Unterhaltungselektronik
Projekt: Grafische Debugging-Tools für TV-Geräte
Beschreibung:
Für ein neu entwickeltes TV-Geräte wurden folgende Debugging-Tools benötigt:
1. Speicherfragmentierungs- und Memory-Leak-Analyse: Anzeige des Hauptspeichers als Grafik, die bestimmte Speicherblöcke als Rechtecke darstellt. Jedes Subsystem bekommt eine eigene Farbe zugewiesen. So kann anhand des „Kachelmusters“ untersucht werden, welche Subsysteme den Speicher fragmentieren und welche Memory-Leaks verursachen.
2. Analyse des internen Message-Systems: Alle internen Messages des Systems werden in Binärdateien gedumpt. Diese Dateien können eingelesen werden und als sortier- und filterbare Tabellen dargestellt werden (Quelle, Ziel, Nachrichtentyp, Zeitstempel, usw.).
Dabei muss auch eine Big-endian Little-endian Konvertierung durchgeführt werden.
Projektmetrik:
Laufzeit: 1 Monat
Umfang: 1 Personenmonat
Position: Entwickler
Teamgröße: 1
Technologien:
Sprachen:
- C++
Bibliotheken/Frameworks/APIs:
- VCL
- STL
Tools:
- Borland Builder 4
Besonderheiten:
- Big-Endian-/Little-Endian-Problematiken
Plattform:
- Windows NT 4.0
-------------------------------------------------------
Zeitraum: 09/2000 - 02/2001
Branche: Ingenieurbüro
Projekt: C++-Code-Analyse-Tool
Beschreibung:
Tool, das auf Grund von Source-Code-Analyse unter anderem diese Features bietet:
- im Projekt enthaltene Source-Dateien
- Aufruf-Graphen (inkl. Rekursionserkennung)
- Klassenhierarchien (inkl. Member-Funktionen)
Dabei können makefiles, Visual C++ 6-Projekte und Borland C++ Builder 4/5-Projekte als Startpunkt gewählt werden.
Projektmetrik:
Laufzeit: 0,5 Jahre
Umfang: 0,5 Personenjahre
Position: Entwickler
Teamgröße: 1
Technologien:
Sprachen:
- C++
Bibliotheken/Frameworks/APIs:
- MFC
- STL
Tools:
- Visual C++ 6
Plattform:
- Window NT 4.0, Windows 2000
Zeitliche und räumliche Verfügbarkeit:
- Vor-Ort Einsätze in D7 und Schweiz und
- Vor-Ort Einsätze in ganz Deutschland, Österreich und Liechtenstein bei Laufzeiten bis ca. 3 Monate oder bei teilweiser Remote-Tätigkeit
Jetzt registrieren
Profil Navigation
Neues Profil
Kundenecho
Ramon KupperEin herzliches Dankeschön
Ein herzliches Dankeschön aus Saarbrücken Schon nach wenigen Tagen Mitgliedschaft haben sich wertvolle und fruchtbare Kontakte ergeben, die sehr schnell zu konkreten Verhandlungen geführt haben. Dafür bedanke ich mich beim gesamten Team von freelancermap.
Neue Firmenprofile
Aktuelles
Statistik
Der durchschnittliche Tagessatz unserer Freelancer beträgt 504 €, der Stundensatz 63 €.
Neue Projekte
RSS Projekt-Feeds
Erhalten Sie die neuesten Projekte als RSS News-Feed, um sie bequem in Ihrem Feed-Reader zu lesen.
Deutschland | Österreich | Schweiz | United Kingdom | USA | Russian Federation | España | Italy | Ukraine | Liechtenstein | Hungary | New Zealand | France | Slovakia | India | United Arab Emirates
Themenrelevante Websites :









































