Profilbild von Helmut Berg Softwareentwickler C#, c++ aus Darmstadt

Helmut Berg

verfügbar

Letztes Update: 06.09.2022

Softwareentwickler C#, c++

Firma: Berg & Partner
Abschluss: Dipl. -Ing Maschinenbau an der TU Darmstadt
Stunden-/Tagessatz: anzeigen
Sprachkenntnisse: deutsch (Muttersprache) | englisch (verhandlungssicher) | französisch (Grundkenntnisse)

Skills

Betriebssysteme:
· Windows 10 / 8 / 7
· Windows CORE / CE / Mobile
· plattformübergreifende Entwicklungen in C#
   (Mono/CORE)
· plattformübergreifende Entwicklungen in C++ (Qt)

Programmiersprachen:
· C#
· C++

Technologien:
· .NET Framework 1.1 – 5.0
· .NET Core
· MS Visual C++, MFC
· Qt

Spezialkenntnisse:
· Systementwurf / Systemarchitektur
· GUI Entwicklungen
· HMI Entwicklungen
· WPF, XAML, MVVM, PRISM, Controls für WPF
· SQL (MS Sql Server, Sq-Lite)
· Windows Forms
· Linq
· XML, XSD
· WCF, WF
· OLE, ActiveX, COM, DCOM, ATL, Remoting
· Open-GL (3D Animationen unter C++)
· Direct-X (3D Animationen unter WPF)
· CAN Bus, EtherCAT, RS 232 / 485, TCP/IP, ISA Bus
· Entwicklung von Windows Services
· oo-Technologien
· Multi-Threading
· boost library
· STL
· Microsoft Foundation Classes (MFC)
· Git, TFS (Team Foundation Server), Azure DevOps,
   Visual SourceSafe
· Qualitätsmanagement für Medizinprodukte
· Messdatenaufbereitung und Visualisierung in 2D Charts
   (SCI-Chart Komponente für WPF)
· Rest full services
· Unit Testing
· IOT, Industrie 4.0, PTC-ThingWorx, Symmedia, Axoom

Projekthistorie

01/2018 - bis jetzt
Entwicklung einer PC-basierten Software, um im Fahrzeug installierte Unfall-Datenspeicher zu parametrieren.
Kunde aus der Industrie, Karlsruhe (Automobil und Fahrzeugbau, 1000-5000 Mitarbeiter)

Die Software kommuniziert mit dem Datenspeicher. Sie spielt Updates der Gerätesoftware auf, parametriert diese und liest die Daten des Speichers aus.

Der Kunde besaß eine über viele Jahre gewachsene und somit sehr unstrukturierte 1.0 Version der Software. Als ihn der für diese Software verantwortliche Mitarbeiter verließ, ergab sich die Situation, dass die Software von anderen Entwicklern nicht gewartet oder gar weiterentwickelt werden konnte.

Ausgehend von diesem Softwarestand wurde von mir eine komplette Neuentwicklung durchgeführt. Die Ausgangsbasis bestand aus 5.42 MB Daten in 800 reinen Code-Files (nur *.cs, und *.xaml Dateien). Ich habe daraus eine Software mit 568 Code-Files erzeugt, die 1,98 MB Daten umfasst. Die neue Software enthält bei deutlich gesteigertem Funktionsumfang somit nur noch ca. 35% der Codelines der Ausgangssoftware.

Die Arbeit wurde komplett in unserem Büro durchgeführt, in regelmäßigem Turnus gab es TeamViewer Meetings oder auch Besprechungen beim Kunden vor Ort.

 

Verwendete Technologien:

  • C#
  • WPF, XAML, PRISM, Controls für WPF
  • Kommunikation mit den Geräten über natives-USB
  • Mehrsprach-Fähigkeit

05/2011 - bis jetzt
Mitarbeit bei der Erstellung einer Steuerungssoftware für Automobilprüfstände.
Kunde aus der Automobilbranche, Darmstadt (Automobil und Fahrzeugbau, 250-500 Mitarbeiter)

Im Rahmen dieser Aufgabe habe ich diverse Module einer komplexen Software entwickelt, über welche Automobilprüfstände konfiguriert und betrieben werden.

 

Einige Aufgaben waren:

  • Erstellung einer Fernbedienung auf einem Windows Embedded CE System zur Fernsteuerung der Prüfstandssoftware über Tcp/Ip.
  • Erstellung einer WPF basierten Software zur Erstellung von Prüfstandsdefinitionen. (Eigenverantwortliche Komplettentwicklung)
  • Erstellen eines Modules, um die Datenströme der Anlage entgegenzunehmen, aufzubereiten (downsamplen, filtern), an andere Applikationen weiterzureichen und zu speichern.
  • Entwicklung einer Kommunikationsschnittstelle, um verschiedene Prozesse über Tcp/Ip (und damit auch rechnerübergreifend) miteinander zu vernetzen (Ähnlich WCF). Über diese Schnittstelle werden auch die Microcontroller angesteuert, die die Regelung der Anlage in Echtzeit übernehmen.
  • Einbindung von externen Signalquellen, die Signale über CAN oder über EtherCAT liefern.
  • Entwicklung eines Layout-Editors, um Prüfstandsdefinitionen grafisch darzustellen, und dort Systemzustände zu visualisieren.

 

Verwendete Technologien:

  • C#
  • C++
  • WPF
  • Linq
  • COM
  • CAN / EtherCAT
  • Windows Embedded
  • Interprozesskommunikation über Tcp/Ip
  • Team Foundation Server
  • Internationalisierung
  • Bugzilla

04/2019 - 12/2019
Entwicklung einer Software um statische und dynamische Kraft-Weg Analysen von elastischen Bauteilen durchzuführen.
Kunde aus der Automobilbranche, Wolfsburg (Automobil und Fahrzeugbau, >10.000 Mitarbeiter)

Während der Festigkeitsprüfung von Bauteilen verändern diese über die Zeit ihre Charakteristik. Die Software dient dazu, solche Veränderungen zu erkennen, und in Form von Kraft-Weg Diagrammen darzustellen. Als Diagramm-Modul kam die SCI Chart Komponente für WPF zum Einsatz.

 

Verwendete Technologien:

  • C#
  • WPF, XAML, PRISM
  • SCI Chart für WPF

10/2017 - 03/2018
Anbindung einer Maschine an die Symmedia IOT-Plattform.
Kunde aus der Industrie, Bellheim (Industrie und Maschinenbau, 250-500 Mitarbeiter)

Nachdem festgestellt wurde, dass die ThingWorx Plattform (siehe nächstes Projekt) nicht alle Anforderungen an die Anbindung der Maschinen zufriedenstellend erfüllt, wurde ein anderer Anbieter (Symmedia) evaluiert, und eine analoge Anbindung über dessen Schnittstellen implementiert.

Die Kommunikation mit dieser Plattform erfolgt über mehrere Soap-Schnittstellen.

 

Verwendete Technologien:

 

  • C#
  • Mono
  • Soap Kommunikation
  • SOA  (Service Oriented Architecture)
  • Autofac  (Dependency injection)
  • Symmedia IOT Plattform
  • Tunneling VPN, SSH
  • Git
  • Confluence

11/2017 - 12/2017
Entwicklung einer Dateischnittstelle zum Datentransport von Filebasierten Daten in die IOT-Plattform von Axoom.
Kunde aus der Industrie, Karlsruhe (Industrie und Maschinenbau, 10-50 Mitarbeiter)

Verwendete Technologien:

  • C#
  • Verzeichnisüberwachung auf Dateiänderungen
  • Axoom Developer Framework zur Kommunikation mit der IOT Plattform

05/2017 - 09/2017
Anbindung einer Maschine an die ThingWorx IOT-Plattform von PTC.
Kunde aus der Industrie, Bellheim (Industrie und Maschinenbau, 250-500 Mitarbeiter)

Ein vollautomatisiertes Hochregallager soll seinen Zustand in der Cloud widerspiegeln. Dafür müssen ca. 200 verschiedene Parameter an die Plattform übertragen werden. Weiterhin soll es einem Servicetechniker über die Cloud ermöglicht werden, Fernwartung, Diagnose und Software-Updates durchzuführen. Hierzu wurde von mir eine Anbindung der Maschinen an die Iot-Plattform entwickelt. Die Kommunikation erfolgt über eine bidirektionale REST Kommunikationsschnittstelle. Somit wurde sowohl ein REST-Service implementiert, als auch eine REST-Client Schnittstelle. Die ausgetauschten Datenpakete sind Json formatiert.

 

Verwendete Technologien:

 

  • C#
  • Mono
  • REST-Full Kommunikation
  • Json, Newtonsoft
  • SOA  (Service Oriented Architecture)
  • Autofac  (Dependency injection)
  • ThingWorx IOT Plattform
  • Tunneling VPN, SSH
  • Git
  • Confluence

10/2016 - 04/2017
Entwicklung einer Auswertesoftware zur grafischen Darstellung von Messreihen in 2D Diagrammen und zur Durchführung von Berechnungen auf diesen Datenreihen.
Kunde aus der Medizintechnik, Hofheim (Pharma und Medizintechnik, 50-250 Mitarbeiter)

Eine Chromatografie-Anlage liefert im Rahmen einer Messung unterschiedliche Datenreihen. Diese Daten werden unter Verwendung eines OPC Servers von den Micro-Controllern der Anlage entgegengenommen, und in einer SQ-Lite Datenbank gespeichert.

Verschiedene Kurvenzüge von Messungen auf einer Messanlage können dann anderen Messreihen in einem XY Diagramm gegenübergestellt werden.

Messreihen werden numerisch differenziert oder integriert, um zum Beispiel die Flächen zwischen verschiedenen Kurvenzügen zu ermitteln.

Aufgrund dieser Datenbasis werden Berechnungen durchgeführt wie:

Peak Integration, Konzentrationsbestimmung, HETP-Bestimmung oder Transitionsanalyse.

 

Verwendete Technologien:

  • C#
  • WPF, XAML, PRISM, Controls für WPF
  • XML
  • SCI Chart Modul für WPF
  • OPC Server
  • Sq-Lite Datenbank
  • Kommunikation über Tcp/Ip mit der C++ Software eines Embedded Systems

06/2016 - 09/2016
Entwicklung eines graphischen Editors, um beliebige XML Files zu editieren.
Kunde aus der Industrie, Rödermark (Industrie und Maschinenbau, 250-500 Mitarbeiter)

Um eine komplexe Software zur Maschinensteuerung zu parametrieren, müssen Einträge in ca. 60 verschiedenen XML Files vorgenommen werden. Die Files unterliegen dabei keinem Schema. Entwickelt wurde eine XML basierte Beschreibungssprache, um die Struktur der verschiedenen Files aufzuschlüsseln, und ein graphischer Editor, der es ermöglicht, die verschiedenen Inhalte über Bedienelemente verschiedenen Typs zu editieren. Hierfür mussten WPF Editoren (Controls) geschaffen werden, um Eingaben verschiedenen Typs zu ermöglichen.

 

Folgende Bedienelemente wurden angeboten:

  • Texteingabe
  • numerische Eingabe, (double, int) mit Range-Definition
  • Checkbox
  • Combobox
  • File Selector
  • Liste
  • Tabelle

 

Über die Software ist es möglich, ausgewählte Inhalte aller XML-Files auszulesen, zu editieren und die Änderungen zurückzuschreiben.

 

Verwendete Technologien:

  • C#
  • WPF, XAML, PRISM
  • XML

03/2016 - 06/2016
Entwicklung einer Client-Server Applikation, um hereinkommende E-Mails und Faxe in den kundeneigenen Workflow der Dokumentenverarbeitung zu integrieren.
Kunde aus der Krankenversicherungsbranche, Frankfurt Main (Versicherungen, 250-500 Mitarbeiter)

Es wurde eine klassische Client-Server Anwendung entwickelt, die hereinkommende Mails entgegennimmt, und nach Ansicht durch die Benutzer entsprechend weiterverarbeitet.

Anhänge wurden aus sämtlichen gängigen Image-  sowie Office-  Formaten in PDFs und in Tiffs gewandelt.

Eine beliebige Anzahl von Clients kann sich an dem Server anmelden, um hereinkommende Mail zu analysieren, und eine Abarbeitungsregel festzulegen.

Entsprechend dieser Regel verarbeitet der Server dann die jeweilige Mail, und protokolliert sie in einer SQL Datenbank.

 

Verwendete Technologien:

  • C#
  • WPF, XAML, PRISM
  • WCF
  • MS Sql Server 2008
  • Microsoft Exchange Server

01/2016 - 03/2016
Machbarkeitsstudie, um wechselnde Slaves, die an einem EtherCAT Bus hängen zu erkennen, und dynamisch in das Gesamtsystem zu integrieren.
Kunde aus der Industrie, Darmstadt (Automobil und Fahrzeugbau, 500-1000 Mitarbeiter)

Verwendete Technologien:

  • C#
  • EtherCAT
  • Acontis / Beckhoff / König

09/2015 - 12/2015
Entwicklung einer Software, um Unit Tests von PLCs durchzuführen.
Kunde aus der Automobilbranche, Bietigheim-Bissingen (Automobil und Fahrzeugbau, 5000-10.000 Mitarbeiter)

Es wurde eine Software entwickelt, um für beliebige PLCs Unit Tests durchführen zu können. Dazu wird die Schnittstellenbeschreibung zur SPS aus AWL Dateien ausgelesen. Es können Sequenzen mit einer beliebigen Anzahl von Steps definiert werden. In jedem Step werden auf der SPS Variablen gesetzt, und es wird überprüft, ob andere Variablen ihren Wert daraufhin wie vorgesehen ändern.

 

Verwendete Technologien:

  • C#
  • WPF, XAML, PRISM
  • Linq
  • OPC Automation


12/2014 - 08/2015
Entwicklung einer Software, um Regelkreise zu optimieren.
Kunde aus der Automobilbranche, Darmstadt (Automobil und Fahrzeugbau, 250-500 Mitarbeiter)

Es wurde eine Software entwickelt, um in einem Regelkreis Soll-Signale mit Ist-Signalen zu vergleichen. Aus den gemessenen Signalströmen wurden über eine in MatLab entwickelte Komponente die Übertragungsfunktion ermittelt und in einem Bode-Diagramm (Amplituden-Phasen Diagramm) dargestellt. Durch Veränderung der PID Anteile des Reglers, kann dieser Regler nun so getunt werden, dass dieser in der Lage ist, über einen hohen Frequenzbereich hinweg das Sollsignal mit entsprechender Güte nachzufahren. Im Rahmen der Aufgabe wurden auch unterschiedliche WPF Controls entwickelt, so zum Beispiel ein Range-Control um Teilbereiche einer Achse darzustellen.

 

Verwendete Technologien:

  • C#
  • WPF
  • Linq
  • COM
  • Team Foundation Server
  • Internationalisierung
  • Bugzilla
  • SCI Chart Modul für WPF

07/2014 - 11/2014
Entwicklung einer Software um Belastungen, die während einer Messfahrt auf einer Teststrecke an verschiedenen Sensoren auftreten, miteinander zu vergleichen
Kunde aus der Automobilbranche, Wolfsburg (Automobil und Fahrzeugbau, >10.000 Mitarbeiter)

Es werden die Datenströme der verschiedenen Kanäle analysiert, und aus ihnen werden Belastungskennziffern für verschiedene Fahrabschnitte ermittelt.

Die Ergebnisse der Messfahrt werden in einer SQ-Lite Datenbank abgelegt.

 

Die Datenströme werden in einem Diagrammmodul visualisiert.

Über Whisker-Plots können die Ergebnisse der neuesten Messfahrt mit bestehenden Ergebnissen anderer Fahrten verglichen werden. Dadurch ist es möglich, die im Rahmen der Testfahrt aufgezeichneten Ergebnisse sofort auf ihre Plausibilität hin zu untersuchen.

 

Verwendete Technologien:

  • C#
  • Linq
  • SQ-Lite
  • Microsoft Chart Modul
  • Microsoft Solver Foundation

09/2010 - 04/2011
Entwicklung einer Bediensoftware zur Ansteuerung und Parametrierung von Mess-Sensoren über den CAN Bus.
Kunde aus der Messtechnik, Darmstadt (Industrie und Maschinenbau, 250-500 Mitarbeiter)

Ziel der Aufgabe war die Erstellung einer Software, die mit einem Messwert-Erfassungssystem kommuniziert. Die Software soll den momentan anliegenden Messwert anzeigen, die Sensoren konfigurieren und Messwerte einzelner Sensoren in zugeordneten Messwertdateien abspeichern.

Großen Wert wurde bei dieser Aufgabe auf die Entwicklung einer allgemeingültigen (abstrakten) Schnittstelle gelegt, weil am CAN Bus die unterschiedlichsten Gerätetypen angeschlossen sein können, die alle angesprochen werden sollen.

 

Verwendete Technologien:

  • C#
  • WPF
  • Linq
  • Kommunikation mit CAN Bus über PCan
  • Internationalisierung
  • Reflection
  • Interfaces
  • Print Routine

04/2010 - 10/2010
Entwicklung eines Navigationssystems für Piloten.
Kunde aus der Avionik, Neu Isenburg (Industrie und Maschinenbau, >10.000 Mitarbeiter)

Im Rahmen der Aufgabe wurde eine Applikation als HMI Interface entwickelt, die mit einer Hintergrundanwendung kommuniziert, welche OpenGL Grafiken und diverse weitere für die jeweilige Flugphase relevante Informationen bereitstellt.

Bei diesem Projekt konnte ich meine Erfahrungen in Systementwurf, Systemarchitektur und anspruchsvoller Gui Entwicklung (HMI) voll ausspielen, wurde doch die Aufgabe von mir umfassend und eigenverantwortlich bearbeitet.

Verwendete Technologien:

  • C++
  • Qt
  • Qt Stylesheets
  • Qt QDesignerCustomWidgetInterface (Designer Plugins)
  • Qt Animationen
  • XML
  • Open-GL
  • Multithreading
  • Steuerung der Bedienoberfläche über Gestures (Touch)
  • Git/Tortoise

04/2008 - 04/2010
Entwicklung eines Systems zur Festigkeitsanalyse sicherheitskritischer Bauteile im Fahrzeug. (Wöhler Analyse)
Kunde aus der Automobilbranche, Wolfsburg (Automobil und Fahrzeugbau, >10.000 Mitarbeiter)

In der Wöhleranalyse werden eine Reihe von gleichen Bauteilen mit unterschiedlicher Last beaufschlagt. Gemessen wird die Anzahl der Lastwechselspiele bis zum Bruch. Aus diesen Messwerten wird über ein statistisch sehr aufwändiges Verfahren eine Aussage über das Ausfallverhalten der Bauteile im Einsatz gewonnen. Einige Schlagworte zur implementierten Mathematik sind:

 

  • Inverse lineare Regression
  • Treppenstufenverfahren
  • Lineare Schadensakumulation
  • Maximum Likelihood Methode
  • Kaplan Meier Methode
  • Einbinden von Lastkollektiven
  • Berechnen von Sicherheitsfaktoren

 

Die statistischen Ergebnisse werden in Form von 2D Diagrammen und charakteristischen Kennwerten in Wertefeldern dargestellt.

Als Container wird hierzu Excel verwendet.

So können die Testwerte in Excel Tabellen gehalten werden, und sind dynamisch mit der Analyse verknüpft. (Ähnlich wie Excel Diagramme) Statistische Kennwerte werden wieder zu Excel übertragen, und können dort als Ausgangsdaten für weitere Berechnungen verwendet werden.

Zur Berechnung der sehr komplexen statistischen Zusammenhänge wurde die boost library verwendet.

 

Verwendete Technologien:

  • C++
  • boost library (Release 1.37.0)
  • MFC
  • ATL
  • XLL (Excel Add-In)
  • Named-Pipe (Ähnlich Tcp/Ip)
  • prozessübergreifend zugängliche Speicherblöcke
  • Microsoft .NET Office Tools ( Einbettung in Excel)
  • Excel Automation Interface in (C# und in c++)

04/2007 - 10/2009
Entwicklung einer Bediensoftware zur Ansteuerung von Mess-Sensoren über ein Windows Mobile System.
Kunde aus der Messtechnik, Darmstadt (Industrie und Maschinenbau, 250-500 Mitarbeiter)

Ziel der Aufgabe war die Erstellung einer Software, die mit einem Messwert-Erfassungssystem kommuniziert. Die Software soll den momentan anliegenden Messwert anzeigen, die Sensoren konfigurieren und Messwerte einzelner Sensoren in zugeordneten Messwertdateien abspeichern.

Verwendete Technologien:

  • C# .NET Compact Framework für Windows Mobile Devices
  • Kommunikation über Buetooth

Entwicklung einer API zur Messwerterfassung

Ziel der Aufgabe war die Erstellung einer C++ Dynamic Link Library, die folgende Aufgaben übernimmt.

  • CAN Bus Kommunikation zu verschiedenen Mess-Sensoren herstellen.
  • Für die Kommunikation notwendige Parametrierungen dieser Sensoren vornehmen.
  • Messungen starten/stoppen und Messwerte in Echtzeit empfangen, puffern und auf Anfrage herausreichen.

Die Schnittstelle ist in ein ATL Objekt eingebettet, damit die Funktionalität auch von C# Projekten aus genutzt werden kann.


Verwendete Technologien:

  • CAN Bus Kommunikation
  • C++, ATL, STL
  • C#
  • Multithreading

Software-Assistent für digitale Ladungsverstärker

Ziel der Aufgabe ist die Erstellung einer Software, die mit einem digitalen Ladungsverstärker über TCP/IP kommuniziert. Die Software soll die Konfigurierung des verbundenen Gerätes ermöglichen, den momentan anliegenden Messwert anzeigen (Einzelwert und als Linienschreiber), und die Messwerte mit einer festen Frequenz in Messwert-Dateien abspeichern.


Verwendete Technologien:

  • C#, WPF
  • TCP/IP, UDP
  • Multithreading

01/2003 - 10/2009
Automatisierung von medizinischen Analysegeräten
Kunde aus der Medizintechnik, Wiesbaden (Pharma und Medizintechnik, 250-500 Mitarbeiter)

Für diesen Kunden war ich insgesamt 7 Jahren in diversen Projekten im Einsatz. Für Entwicklungen im Bereich Medizintechnik (gerade auch für den amerikanischen Markt) gelten strenge Vorgaben der FDA. Sämtliche Projekte, die ich hier durchgeführt habe, unterlagen der Zertifizierung als Medizinprodukte, und sind daher an einen entsprechenden QM Prozess gebunden.

Exemplarisch seien hier die folgenden Projekte gesondert erwähnt:

Mitarbeit an der hauseigenen Automatisierungssoftware zur Definition und Durchführung von komplexen biochemischen Analyseverfahren.

Im Rahmen der Entwicklung konnte ich mein Know-How in der Automatisierungstechnik und auch in der Entwicklung von komplexen GUI Komponenten mit der MFC einbringen.

 

Verwendete Technologien

 

  • MS Visual C++
  • MFC
  • XML

3D Simulation der Pipettier-Roboter

Diese wird, wie der echte Roboter, von der Automatisierungssoftware  über RS-232 Kommandos angesteuert und reagiert in allen Details identisch. Nur so war es möglich, die Automatisierungssoftware auf effiziente Weise zu entwickeln und zu testen.

Die Simulation wurde ursprünglich unter MCF mittels OpenGL entwickelt, sie wurde aber inzwischen von mir  auf C# portiert, wobei als Grafikengine jetzt WPF (Direct-X) verwendet wurde.

 

Verwendete Technologien

  • C#
  • WPF
  • Direct-X
  • C++
  • MFC
  • RS-232
  • TCP/IP
  • Named Pipe
  • OpenGL

Einbindung von ca. 40 verschiedenen Laborgeräten von Fremdfirmen in die Automatisierungssoftware

Um komplizierte biochemische Analysen durchzuführen, ist es je nach Aufgabenstellung oftmals unumgänglich, Spezialgeräte auch von Fremdfirmen in den Prozessablauf zu integrieren.

Unter anderem wurde von mir die Ansteuerung sämtlicher Analysegeräte zur vollautomatischen Erstellung eines genetischen Fingerabdrucks realisiert. (Inclusive der Ansteuerung der Roboter, die die Proben  zu den verschiedenen Arbeitsstationen transportieren)
 

Hierzu bedurfte es eines vielfältigen Wissens über die unterschiedlichsten Kommunikationsprotokolle wie beispielsweise:

 

  • Direkte Einbettung einer C++ oder C# DLL als Beistellung des Hardwarelieferanten
  • TCP/IP
  • RS 232 / 485
  • USB
  • COM, DCOM, COM+, Remoting

 

Weiterhin wurden von mir Mitarbeiter aus den USA geschult, um selber solche Integrationsaufgaben vornehmen zu können.

 

Verwendete Technologien

  • C#
  • Diverse Kommunikationstechnologien
  • Zertifizierung der Treiber als sogenannte „General Purpose“ Anwendungen für den medizinischen Sektor

01/2002 - 02/2004
Berechnungsmodule
Kunde aus der Automobilbranche, Darmstadt (Automobil und Fahrzeugbau, 50-250 Mitarbeiter)

Erstellen einer Rainflow-Engine

Erstellt wird eine Software, die über mehrere Kanäle Rainflow - Matrizen berechnet und die Berechnungsergebnisse in Form von Files auf den Datenträger schreibt.

 

Verwendete Technologien

  • C++
  • ATL

Erstellen eines Programmes zur Durchführung von Koordinatentransformationsberechnungen

Gegeben sind die Beschleunigungskurven a1(t), a2(t), a3(t) von drei in einer Ebene liegenden Sensoren.

Berechnet werden die Beschleunigungskurven für n beliebige auf dieser Ebene liegenden Punkten.

Um Schwingungen eines Motors zu simulieren, soll ein im Motorschwerpunkt angebrachtes Koordinatensystem um eine seiner Achsen oszillieren. Diese Schwingung ergibt bezogen auf ein anderes Koordinatensystem, welches an anderer Stelle beliebig im Raum liegt (z.B. an der Motoraufhängung angebracht ist) eine Schwingung um alle 6 Freiheitsgrade. Diese 6 Schwingungsanteile sollen berechnet werden, wenn die Lage der beiden Koordinatensysteme zueinander vorgegeben ist

 

Verwendete Technologien

  • C++
  • MFC

Modul zur Berechnung der Stellkurven der Hydraulikzylinder eines Prüfstandes um eine Masse (Fahrzeug) in vorgegebener Weise zu beschleunigen.

Bei der Iteration an einem realen Katapult wird die Soll - Ist Abweichung über einen tatsächlichen Testlauf am Katapult ermittelt. Bei der Iteration am Modell wird das Katapult durch ein mathematisches Modell beschrieben, und der Ist - Wert wird über dieses Modell bestimmt. In beiden Fällen wird aus dem Soll - Wert über ein inverses Modell ein Drive - File berechnet.

 

Das eigentliche Rechenmodell wird in Matlab (Simulink) definiert. Matlab erzeugt für das Modell C Sourcen, die in das Modul eingebunden werden. Dieses Rechenmodell berücksichtigt alle maschinendynamisch relevanten Faktoren von Katapult und Prüfkörper. Dazu notwendige variable Parameter werden aus einem File ausgelesen und an das Rechenmodell übergeben.

 

Verwendete Technologien

  • C++
  • MFC
  • Einbindung von MathLab Code

01/1999 - 07/2003
Ansteuerung von Karten-Personalisierungs-Maschinen
Kunde aus der Industrie, Darmstadt (Industrie und Maschinenbau, 10-50 Mitarbeiter)

Es wurde von mir für drei Produktlinien der Chipkartenpersonalisierungsmaschinen die komplette PC Programmierung realisiert.

Die entwickelte Software besteht aus 6 verschiedenen Modulen, die auf unterschiedlichen PCs laufen und über TCP/IP kommunizieren und synchronisiert werden müssen.

 

einige Teilaufgaben der Software sind:

  • Mensch - Maschine Interface 
  • Transport der Karten durch die Maschine
  • Datenbereitstellung und Verteilung
  • Aufbereiten der Daten für die Laserbeschriftung
  • Bildbearbeitung
  • Bedrucken
  • Chip-Personalisierung
  • Magnetstreifen Personalisierung
  • Security-Management
  • Vision Systeme für OCR Read, Kartenpositionierung und Nachkontrolle

 

Verwendete Technologien

  • C++
  • TCP/IP
  • ISA Kommunikation

Entwicklung eines Layoutsystems für Chipkartenlayouts

Entwickelt wurde ein CAD-ähnliches Layoutsystem.
Mit diesem System können Kartenlayouts auf komfortable Weise
erstellt, und mit den für den Personalisierungsprozess
notwendigen individuellen Daten verbunden werden.

 

Verwendete Technologien

  • C++
  • MFC
  • ODBC

01/2001 - 12/2002
Mitarbeit am Multimedia Terminal
Kunde aus der Telekommunikationsbranche, Frankfurt (Telekommunikation, 50-250 Mitarbeiter)

In diesem Projekt habe ich Teilmodule für das Multi-Media Terminal "WEB 4000" entwickelt.

 

einige Teilbereiche der Aufgabe sind:

  • Ansteuern der Soundkarte
  • Ansteuern einer Karte mit proprietären Hardwarekomponenten über den ISA Bus
  • Ansteuern des Paymentdevices als Teil des Billing Systems über RS 232

 

Das Terminal ist schon in der zweiten Generation fertiggestellt,

die erste Version wurde für die Telekom Deutschland entwickelt.

Auch da war ich für die entsprechenden Module zuständig.

 

Verwendete Technologien

  • C++
  • TCP/IP
  • ISA Kommunikation
  • Kernel Device Driver Entwicklung (DDK)

Reisebereitschaft

Verfügbar in den Ländern Deutschland
Natürlich entwickele ich auch oft auf Tagesbasis bei meinen Kunden vor Ort, meist aber handelte es sich bei den Projekten um abgeschlossene Aufgaben, die ich in unserem Büro hier in Darmstadt in Eigenregie durchführten. So konnte ich neben der eigentlichen Softwareentwicklung meine Fähigkeiten im Systementwurf, Projektmanagement und im Qualitätsmanagement ausspielen.

Sonstige Angaben

EIne Betriebshaftpflichtversicherung ist vorhanden
Profilbild von Helmut Berg Softwareentwickler C#, c++ aus Darmstadt Softwareentwickler C#, c++
Registrieren