Hard- und Softwareentwicklung im Embedded - Bereich
Aktualisiert am 17.06.2024
Profil
Freiberufler / Selbstständiger
Verfügbar ab: 17.06.2024
Verfügbar zu: 75%
davon vor Ort: 50%
C/C++
Embedded Systems (RTOS oder Bare Metal)
Konzepte
Komunikation (Ethernet/CAN)
Teamfähigkeit
RealTime (OS/bare metal)
FPGA/VHDL
Messtechnik analog/digital
Hardware analog/digital
Deutsch
Englisch
Wort und Schrift, Dokumentations- und Vortragserfahrung
Spanisch
Wort und Schrift, techn. Übersetzung

Einsatzorte

Einsatzorte

Tübingen (+100km) Titisee-Neustadt (+75km) München (+100km) Mindelheim (+100km) Erlangen (+100km) Deggendorf (+75km)
Österreich, Schweiz
nicht möglich

Projekte

Projekte

1 Jahr 3 Monate
2023-01 - 2024-03

FPGA-Entwicklung: Filterung und Auswertung von Prozessdaten

  • Einsatz von VHDL zur Implementierung einer Auswertekette für Ultraschall-Daten,
  • Erarbeitung der Hardware in Zusammenarbeit mit dem Auftraggeber (PCB Schaltplan/Layout, KICad)
  • Simulation und Implementierung auf dem FPGA für zwei FPGA-Hersteller (Portabilität), 
  • Erarbeitung und Implementierung des System-Setups (z.B. Übertragen von Filter-Koeffizienten) mit STM32- MCU und SPI in der Progtrammiersprache C/C++
Maschinenhersteller-Zulieferer, Schweiz
1 Jahr
2023-01 - 2023-12

Erarbeitung und Erstellung einer grundlegenden SW-Basis-Architektur

Software-Architekt/-Programmierung
Software-Architekt/-Programmierung
  • Erarbeitung und Erstellung einer grundlegenden SW-Basis-Architektur (?BikeOS?) mit Schwerpunkt auf komponenten-interner Kommunikation und Bearbeitung von Flash-Zugriffen. 
  • Einsatz von FreeRTOS als grundlegendes Mittel zur Priorisierung von Aufgaben, Vereinheitlichung von Schnittstellen und eindeutige Regelung von Zugriffen auf Hardware-Ressourcen, Programmierung des Proof of-Concept in C/C++17 und Python
Fa. Bosch
Reutlingen
1 Jahr 2 Monate
2021-11 - 2022-12

Nutzung von Methoden des Software-Engineering

Software-Architekt
Software-Architekt
  • Untersuchung der Machbarkeit von neuen Software-Architekturen, Nutzung von Methoden des Software-Engineering, Analyse von Anforderungen und der Moglichkeit des Einsatzes neuer Technologien im Rahmen des eBikes, Einsatz von Jama / Jira / Confluence als Hilfsmittel des  Engineering. Analyse von bestehenden Implementierungen in Bezug auf deren Verbesserungspotential Entwicklung eines Tracers für den Lauterbach-Debugger und FreeRTOS-Systeme mit C/C++ und Python, lauffähig auf PowerPC- und ARM-MCUs.
Fa. Bosch
Reutlingen
9 Monate
2021-02 - 2021-10

Portierung von bestehenden Software-Systemen

Portierung von bestehenden Software-Systemen auf neue Hardware,
Implementierung eines Test- und Initialisierungssoftware (PC), Entwicklung

eines neuen Drehrichtungssensor auf Basis einer existierenden Software

  • Portierung von Software, Anpassung auf neue Hardware, Ergänzung von Funktionen.
  • Nutzung der Programmiersprache C für Microchip-Controller
  • Nutzung von C# zur Entwicklung einer Test- und Kalibrierumgebung auf dem PC. 
  • Einsatz Visual Studio
  • Entwicklung eines neuartigen Drehrichtungssensors (Magnetfeldsensorik), Dokumentation, Tests

Sicherheitstechnik
Augsburg
1 Jahr
2020-04 - 2021-03

Erstellung eines Programms zur Applikation von Sensorsystemen am CAN-Bus

  • Entwicklung der Adaptierung eines bestehenden und neu zu definierenden Sensorsystems, Kommunikation über RS232 (altes System) und komplexes SPI (neues System).
  • Implementierung komplexer Synchronisationsmechanismen.
  • Anwendung ATMEL-SAM Controller und ATMEL Studio. 
  • BareMetal C-Implementierung.
Industrielle Sensorsysteme
1 Jahr 8 Monate
2019-04 - 2020-11

Umarbeiten eines flexiblen Regelsystems für verschiedene Einsatzbereiche

  • Umarbeitung des existierenden Systems auf nächste Controller-Generation.
  • Grund: Übernahme von Freescale durch NXP. Umstellung des Projekts auf neue Kommunikationsbibliothek, neues Betriebssystem (FreeRTOS) und aktuellen Controller von NXP, Portierung von existierenden Regelsystemen auf die neue Hardware.
  • Test des Gesamtsystems, funktionale Erweiterung der Kommunikationsbibliothek
Industrielle Testsysteme
3 Jahre 11 Monate
2015-08 - 2019-06

Entwicklung eines neuartigen, flexiblen Regelsystems

  • Erarbeitung einer neuen Hardware-Architektur mit höherwertigerem Controller (ARM CortexM4F). 
  • Erweiterung und Flexibilisierung der bestehenden analogen und digitalen Peripherie.
  • Erarbeitung der analogen Eigenschaften des Systems.
  • Einstellbarkeit verschiedener HW Konfigurationen für die Eingänge. Erweiterbarkeit der analogen IOs durch eine "analogseitige Kopie" der Grundplatine möglich, ohne neue Hardware-Entwicklung.
  • Aufbau einer komplett neuen Software - Basis, die flexibel konfigurierbar und damit den gestiegenen Anforderungen an Skalier- und Konfigurierbarkeit gerecht wird. Einbau eines FPGA zur Entlastung und Erweiterung des Microcontrollers. 
  • Das FPGA ist in der Lage, sämtliche IOs abzuarbeiten, auch für die Erweiterungsplatine. Einarbeitung neuer Mitarbeiter ins Projekt. 
  • Einsatz von MQX und C/C++ für die Programmierung des Systems. 
  • Socket-Einsatz für die komplexe Internet- Anbindung. SD-Card- und Filesystem-Einsatz. 
  • Kommunikation über Ethernet / CAN / RS232. Erstellung des kompletten PCB mit eagle

Industrielle Testsysteme
1 Jahr 7 Monate
2017-09 - 2019-03

Mitentwicklung eines neuartigen Logistik-Prozesses (color picking)

  • zunächst Anpassung des Programmes des komplexen Lagerautomaten für den Colorpick-Prozess. 
  • Unterstützung bei Untersuchungen zur Positionserkennung.
  • Entwicklung eines Farb-Indikators zur Unterstützung des ColorPickings, Einsatz eines Netduino WLAN-Moduls und eines selbstenwickelten PCB. 
  • Umarbeitung und Anpassung der STM32-Libraries für den Microcontroller.
  • Benutzung von Atollic TrueStudio. 
  • Erstellung einer Windows-DLL zur Kommunikationserleichterung. 
  • Die DLL wird unter C# benutzt. 
  • Ausführung der gesamten Projektarchitektur von der Hardware bis zur PC-Kommunikation.
Lagerausstattung und -logistik
8 Monate
2017-01 - 2017-08

Steuerung eines komplexen Lagerautomaten mittels Embedded Linux und C#

  • Steuerung der Hardware über Ethernet und CAN, Dekodierung der Befehle aus der Datenbankanbindung und Ausführen der Ein- und Auslagerungsabläufe.
  • Programmierung in C# / Benutzung der Mono-Bibliothek auf dem Linux-Rechner.
  • Einsatz von VisualStudio für Vortests auf dem PC.
Lagerausstattung und -logistik
10 Monate
2016-04 - 2017-01

Unterstützung der Entwicklung einer neuen Generation des Vorwuchtprogramms

  • Mitarbeit bei der Erarbeitung einer Software- und Projektarchitektur für die Programmierung eines Vorwuchtprogramms, das auf drei verschiedenen Hardware-Plattformen zum Einsatz kommen soll. 
  • Erarbeitung der Entwicklungsumgebung für zwei unterschiedliche Embedded-Linux Systeme.
  • Erstellung des Projektrahmens, derzeit Programmierung der Interfaces. 
  • Einsatz von Enterprise Architect zur Erzeugung der State Machines, Programmierung in C++ unter Linux inclusive Xenomai-Echtzeiterweiterung.   

Maschinenbau-Zulieferer
Landsberg
1 Jahr 3 Monate
2015-02 - 2016-04

Entwicklung der Software für einen zertifizierten Rauchmelder

  • Entwicklung von Software, Erarbeitung der System-Architektur und daraus resultierend der Software-Eigenschaften, Entwicklung des C-Programms, Unterstützung bei Inbetriebnahme des Systems. 
  • Anwendung eines PIC 16F-Microcontrollers mit C-Compiler, Programmierung der Digitalisierung und Auswertung, Kommunikation zum PC, Erstellung der Zertifizierungs-Dokumentation.

Sicherheitstechnik
Augsburg
3 Jahre 3 Monate
2013-01 - 2016-03

Unterstützung der Entwicklung einer neuen Messgerätefamilie

  • Einarbeitung in Embedded-Linux-System und in die Systemarchitektur der Software, Erweiterung des Systems um neue Geräteanteile. Einsatz der PowerPC-Architektur. 
  • Das Gerät steuert die angeschlossene Spezial-Hardware (Wuchten/Körperschall) bzw. verarbeitet ihre Messdaten vor, bevor diese an den PC zur Visualisierung weitergeleitet werden. 
  • Einsatz objektorientierter Methoden und Eclipse für die Entwicklung der Software. Einführung der Xenomai-Realtime-Extension für Linux, um Echtzeit-Anforderungen an die Software erfüllen zu können. Design und Aufbau einer neuen Task-Architektur, Programmierung neuer und Portierung bestehender Software in den damit gegebenen Rahmen. 
  • Die Grundkommunikation im System, d.h.zwischen dem Hauptrechner und dem Messkarten erfolgt über CAN- und USB-Bus
  • Erweiterung des Systems um eine Spezial-Messkarte für Körperschallsignale. Diese führt die grundlegenden Messungen und Datenaufbereitungen für die Prozessüberwachung durch. 
  • Die Daten werden über USB an den PowerPC übergeben. EMV-Untersuchungen und Inbetriebnahme der Hardware, Verbesserungen eingebracht. 
  • Die Software läuft auf einem Kinetis K60 (ARM-Cortex-M4) mit dem MQX-Echtzeit-Betriebssystem als funktionale Basis.
  • Dies Software wurde komplett in Eigenregie designt und programmiert. Überarbeitung der Hardware wegen EMV/Kanalübersprechen.
  • Erstellung des kompletten Schaltplans und Teile des Layouts für das PCB.

Maschinenbau-Zulieferer
Landsberg
3 Jahre 11 Monate
2011-09 - 2015-07

Entwicklung verschiedener Druckregelsysteme

  • Aufbau einer flexiblen Softwarearchitektur, mit der verschiedene Regelsysteme aufgebaut werden können. 
  • Komplettes Neuaufsetzen des Softwaresystems, Einführung eines Echtzeitbetriebssystems (FreeRTOS auf dsPIC33), Einsatz von fertigen Bibliotheken für die Ethernet Kommunikation. 
  •  Regelungsalgorithmen für verschiedene Anwendungssysteme festlegen, implementieren und auf Tauglichkeit testen. 
  • Anleitung und Unterstützung interner Mitarbeiter.
  • Programmierung mehrerer Druck- und Temperaturregelsysteme auf Basis der erarbeiteten Grundarchitektur. 
  • Echtzeit-Debug-Unterstützung über CAN-Bus

Industrielle Testsysteme
1 Jahr 1 Monat
2012-02 - 2013-02

Entwicklung eines Messgeräts zur hochgenauen Durchmesserbestimmung während des Bearbeitungsprozesses

  • Präzisions-Durchmesserbestimmung mittels LVDT: Komplette Hard- und Software Entwicklung, Projektleitung. 
  • Das Projekt wurde wegen Firmenübernahme eingestellt.
  • Erarbeitung des kompletten Konzepts (analoge und digitale Elektronik und Erstellung aller PCBs), wobei das System aus zwei Messköpfen und einer Zentralbox besteht. 
  • Einsatz von Actel/Microsemi FPGAs, synchron arbeitende, hochauflösende AD-Wandler (16 bit), ARM Cortex-M4-Microcontrollers (Freescale Kinetis). 
  • Im FPGA erfolgt eine PWM-basierte Erzeugung des Sinus-Ansteuersignals und die Ansteuerung der AD-Wandlung. Kommunikation erfolgt über CAN-Bus. 
  • Ein Prototyp ist bereits lauffähig und wurde vorgestellt. 

Maschinenbau-Zulieferer
Landsberg
1 Jahr 3 Monate
2011-01 - 2012-03

Entwicklung eines neuen Körperschallmessgeräts

Entwicklung eines neuen Körperschallmessgeräts und eines Simulators zur hochgenauen Generierung mehrkanaliger Signale


Körperschallmessgerät: 

  • Komplette Hard- und Software-Entwicklung (PCB), Entwicklung einer neuen Leiterkarte gemischt analog / digital mit ORCAD und Spice. 
  • Einsatz von Microcontroller und FPGA.
  •  Aufwendige analoge Schaltungen für mehrkanalige Bearbeitung von Signalen im µV-Bereich. 
  • Berücksichtigung von EMV. Darüber hinaus überwacht die Karte noch weitere analoge und digitale Signale für die Implementierung erweiterter Funktionen. 
  • Digitalisierung der Signale mit 40MSps per FPGA.
  • Erzeugung von FFT der Signale im FPGA ist vorgesehen


Simulator: 

  • komplett Hard- und Softwareentwicklung, Signalerzeugung per FPGA, Einführung eines neuen Microcontrollers (Cortex-M4-basiert), Kommunikation per CAN mit dem  Hauptrechner, Erzeugung hochgenauer Signale per FPGA und DAC. Anbindung des FPGA über Prozessorbus an den Microcontroller. Leiterkartenentwicklung mit ORCAD. 
  • Simulationen mit ModelSim und Spice. 
  • Programmierung des Systems in VHDL (Quartus II)und C/C++ (Eclipse), Einsatz eines Echtzeit-Betriebssystems (MQX). 
  • Steuerung des Systems über CAN-Bus

Maschinenbau-Zulieferer
Landsberg

Aus- und Weiterbildung

Aus- und Weiterbildung

5 Jahre 4 Monate
1985-11 - 1991-02

Studium der Elektrotechnik

Dipl.-Ing. Elektrotechnik, TU München
Dipl.-Ing. Elektrotechnik
TU München
Diplomarbeit: gern auf Anfrage
3 Jahre 6 Monate
1981-09 - 1985-02

Ausbildung zum Funkelektroniker

Funkelektroniker, Firma Schneider, Türkheim
Funkelektroniker
Firma Schneider, Türkheim
8 Jahre 10 Monate
1971-09 - 1980-06

Schüler

Abitur, Gymnasium Krumbach
Abitur
Gymnasium Krumbach

Kompetenzen

Kompetenzen

Top-Skills

C/C++ Embedded Systems (RTOS oder Bare Metal) Konzepte Komunikation (Ethernet/CAN) Teamfähigkeit RealTime (OS/bare metal) FPGA/VHDL Messtechnik analog/digital Hardware analog/digital

Schwerpunkte

  • Hard- und Softwareentwicklung im technischen Umfeld für Echtzeitsysteme
  • FPGAs
  • PC-Systeme
  • Microcontroller-Systeme
  • Echtzeit-Betriebssysteme

Produkte / Standards / Erfahrungen / Methoden

EDV-Erfahrung 

seit 1985


selbständig

seit 1999


Methoden des Software Engineering

  • Objektorientierte Programmentwicklung (OOA/OOD/OOP/UML), Einsatz von RealTime Studio und Enterprise Architect
  • Strukturierte Analyse und Design (SA/SD)
  • Versionsverwaltung (Visual Source Safe, PerForce, GIT)
  • Dokumentationstools (Microsoft Office, LaTex, OpenOffice, LibreOffice)
  • DOORS, Dimensions, Jama, Jira, Confluence, BitBucket, Git


Regelungssysteme

  • Aufbau verschiedener Regelsysteme für Druck- und Temperaturregelungen 


Entwicklungsstandards

  • RTCA DO-178B und DO-254 (Luftfahrt, Software und Hardware),
  • EN54-5 (Brandschutz)


Technologien:

  • Prozesse im Maschinenbau-Umfeld
  • Prozesse in der Luftfahrt
  • Automobilbau
  • Allgemeine Steuerungs- und Regelungssoftware in ANSI - C (ARM Cortex, TriCore, Hitachi, PIC, NIOS II)
  • Embedded Linux Projekte in C++ (auch Xenomai Realtime Extension)
  • Datenkommunikation (Ethernet, USB 2.0 Full - Highspeed)
  • PC - Applikationen in Microsoft Visual Studio (C/C++/C#)
  • Softwaremodellierung mit UML, Objektorientierung (OOA/OOD) für PC- und Echtzeitsysteme.
  • Steuerungssoftware nach IEC 61131


beruflicher Werdegang

10/1999 ? heute

Rolle: Selbständige Tätigkeit


04/1998 - 09/1999

Rolle: Entwicklungsingenieur für Hard- und Software 

Kunde: Fa. Walter Dittel GmbH, Abt. Meßtechnik, Landsberg


10/1991 - 03/1998 

Rolle: Software-Ingenieur 

Kunde: Firma Siemens, München


04/1988 - 10/1990 

Rolle: Teilzeittätigkeit am Lehrstuhl für Landmaschinen

Kunde: TU München


Aufgaben:

Bearbeitung eines eigenständigen Projekts im Bereich Maschinensteuerungen: 

  • Regelung eines Versuchsfahrzeuges
  • Programmierung in C und Assembler für Z80-CPU und Design digitaler Hardware


03/1986 - 02/1988

Kunde: Firma GammaData, Germering


Aufgaben:

  • Zum Studium parallele Teilzeittätigkeit zunächst in Fertigung und Prüflabor, dann im Ingenieurbüro
  • Mitarbeit in der Hardwareentwicklung, Herstellung von Meßmitteln.


03/1985 - 10/1985 

Kunde: Firma Schneider, Türkheim

Rolle: Elektroniker, 


Aufgaben:

  • Erfahrung in analoger und digitaler Elektronik, Mechanik

Betriebssysteme

Echtzeitbetriebssysteme
MQX, FreeRTOS, VxWorks/pSOS, µC/OSII
Embedded Linux
Windows
Erstellung von PC - Applikationen
Applikationen
Board Support Packages
Linux-Applikationen
Windows - Systeme

Programmiersprachen

Assembler
diverse Microcontroller
C
diverse Compiler / Microcontroller
C#
Borland / VisStudio / Mikrocontroller (Hitachi und Altera Nios II)
C++
langjährige Erfahrung in OO-Programmierung
Delphi
verschiedene Applikationen für Mess- und Testaufgaben
Maschinensprachen
diverse Microcontroller (NXP, Hitachi, Microchip, ...)
MATLAB / Simulink
Programmierung Simulationsprogramm nichtlineare Regelung; Einsatzz für Entwicklungs- und Verifikationsaufgaben
PL/SQL
Datenbankanwendungen
Tcl/Tk
Grundanwendungen
TeX, LaTeX
Anwendung für diverse Dokumentationsaufgaben

Datenbanken

BDE
Anwendung in verschiedenen Projekten
SQL
MS SQL Server Mobile Edition, SQL allgem.
ODBC
Paradox
Microsoft Access

Datenkommunikation

Bus
CAN, CanOpen, Ethernet (TCP/IP), USB,
Ethernet
TCP/IP UDP/IP
HDLC
Langjährige Anwendung
Internet, Intranet
ISO/OSI
diverse Kommunikationsprotokolle
parallele Schnittstelle
Druckeranbindungen für Microcontroller
Proprietäre Protokolle
Anbindung spez. Subsysteme, seriell, CAN, TCP/IP
RS232
Lesesysteme, Zugangskontrollsysteme
TCP/IP
Anbindung Microcontroller /SPS/ Steuerungen an Hostsysteme
Winsock
unter Visual Studio

  • RS232-Kommunikation: Treiberentwicklung für Echtzeit- und Windowssysteme, speziell auch für Echtzeit-Betriebssystem-Anbindung (Board-Support-Packages)
  • HDLC-Kommunikation: Treiber für Echtzeit-Betriebssystem im Rahmen eines Multiprozessorsystem
  • TCP/IP: Anwender- und Systemkenntnisse, verschiedene Implementierungen im PC, im Microcontroller und mit FPGA (SOC), Anpassen von verschiedenen Bibliotheken
  • CAN/CANFD: Einsatz auf verschiedensten Systemen
  • USB: Entwicklung eines kompletten MemoryStick-Treibers für ein proprietäres Betriebssystem, USB 2.0 High Speed: Anwendung sowohl für den USB-Host als auch für den Device; USB 2.0 Full Speed: Mehrere Anwendungen mit PIC-Microcontrollern (Device) und Freescale-Controllern
  • I2C, SPI, LVDS: Anwendungen in diversen Hardware-Systemen
  • Entwicklung einer proprietären Kommunikationsarchitektur für ein Steuerungssystem; Anlehnung an das ISO/OSI-Schichtenmodell. Implementierung des Protokollstacks, Einbindung ins Betriebssystem

Hardware

Bus
CAN, Ethernet, USB - Detailerfahrungen, RS232, RS422
Echtzeitsysteme
WindRiver, uC-OS I und II, u.a.
embedded Systeme
diverse z.T. auch selbst entwickelte
Emulatoren
Lauterbach, 68k, Hitachi, Altera Nios II
Hardware entwickelt
Analog- und Digitalentwicklung
Messgeräte
Oszilloskope, Analyzer, etc
Mikrocontroller
ARM Cortex, C167, TriCore, Renesas, Nios II, 68000, Intel, Microchip
PC
für Anwendungsprogrammierung
PLD, FPGA
Altera, Xilinx, Microsemi
Proprietäre HW
versch. Mikrocomputer mit ver
Sensoren
Verarbeiten von Signalwerten analoger und digit. Sensoren
Siemens-SPS STEP x
SPS
Mikrocontroller mit IEC 1131 Laufzeitsystem
Steuer und Regelsysteme
Mikrocomputer zur Steuerung / Regelung versch. Applikationen
  • Mikrocomputer (ARM/C167/ Tricore / Renesas) im Umfeld Automotive, Nutzfahrzeuge und Automation
  • PC - für die Programmierung von Windows Applikationen

Berechnung / Simulation / Versuch / Validierung

Scilab / Matlab
Anwendung für diverse Tests / Verifikationen

Design / Entwicklung / Konstruktion

EAGLE / ORCAD
diverse Schaltpläne und Layouts
Orcad-Layout und Schaltplansystem
Multisim-Erfahrung

Branchen

Branchen

  • Steuerungshersteller
  • Bau: Telematik - Lösungen
  • Landwirtschaft: Telematik - Lösungen
  • Luft- und Raumfahrt
  • Maschinenbau
  • Softwarehersteller

Einsatzorte

Einsatzorte

Tübingen (+100km) Titisee-Neustadt (+75km) München (+100km) Mindelheim (+100km) Erlangen (+100km) Deggendorf (+75km)
Österreich, Schweiz
nicht möglich

Projekte

Projekte

1 Jahr 3 Monate
2023-01 - 2024-03

FPGA-Entwicklung: Filterung und Auswertung von Prozessdaten

  • Einsatz von VHDL zur Implementierung einer Auswertekette für Ultraschall-Daten,
  • Erarbeitung der Hardware in Zusammenarbeit mit dem Auftraggeber (PCB Schaltplan/Layout, KICad)
  • Simulation und Implementierung auf dem FPGA für zwei FPGA-Hersteller (Portabilität), 
  • Erarbeitung und Implementierung des System-Setups (z.B. Übertragen von Filter-Koeffizienten) mit STM32- MCU und SPI in der Progtrammiersprache C/C++
Maschinenhersteller-Zulieferer, Schweiz
1 Jahr
2023-01 - 2023-12

Erarbeitung und Erstellung einer grundlegenden SW-Basis-Architektur

Software-Architekt/-Programmierung
Software-Architekt/-Programmierung
  • Erarbeitung und Erstellung einer grundlegenden SW-Basis-Architektur (?BikeOS?) mit Schwerpunkt auf komponenten-interner Kommunikation und Bearbeitung von Flash-Zugriffen. 
  • Einsatz von FreeRTOS als grundlegendes Mittel zur Priorisierung von Aufgaben, Vereinheitlichung von Schnittstellen und eindeutige Regelung von Zugriffen auf Hardware-Ressourcen, Programmierung des Proof of-Concept in C/C++17 und Python
Fa. Bosch
Reutlingen
1 Jahr 2 Monate
2021-11 - 2022-12

Nutzung von Methoden des Software-Engineering

Software-Architekt
Software-Architekt
  • Untersuchung der Machbarkeit von neuen Software-Architekturen, Nutzung von Methoden des Software-Engineering, Analyse von Anforderungen und der Moglichkeit des Einsatzes neuer Technologien im Rahmen des eBikes, Einsatz von Jama / Jira / Confluence als Hilfsmittel des  Engineering. Analyse von bestehenden Implementierungen in Bezug auf deren Verbesserungspotential Entwicklung eines Tracers für den Lauterbach-Debugger und FreeRTOS-Systeme mit C/C++ und Python, lauffähig auf PowerPC- und ARM-MCUs.
Fa. Bosch
Reutlingen
9 Monate
2021-02 - 2021-10

Portierung von bestehenden Software-Systemen

Portierung von bestehenden Software-Systemen auf neue Hardware,
Implementierung eines Test- und Initialisierungssoftware (PC), Entwicklung

eines neuen Drehrichtungssensor auf Basis einer existierenden Software

  • Portierung von Software, Anpassung auf neue Hardware, Ergänzung von Funktionen.
  • Nutzung der Programmiersprache C für Microchip-Controller
  • Nutzung von C# zur Entwicklung einer Test- und Kalibrierumgebung auf dem PC. 
  • Einsatz Visual Studio
  • Entwicklung eines neuartigen Drehrichtungssensors (Magnetfeldsensorik), Dokumentation, Tests

Sicherheitstechnik
Augsburg
1 Jahr
2020-04 - 2021-03

Erstellung eines Programms zur Applikation von Sensorsystemen am CAN-Bus

  • Entwicklung der Adaptierung eines bestehenden und neu zu definierenden Sensorsystems, Kommunikation über RS232 (altes System) und komplexes SPI (neues System).
  • Implementierung komplexer Synchronisationsmechanismen.
  • Anwendung ATMEL-SAM Controller und ATMEL Studio. 
  • BareMetal C-Implementierung.
Industrielle Sensorsysteme
1 Jahr 8 Monate
2019-04 - 2020-11

Umarbeiten eines flexiblen Regelsystems für verschiedene Einsatzbereiche

  • Umarbeitung des existierenden Systems auf nächste Controller-Generation.
  • Grund: Übernahme von Freescale durch NXP. Umstellung des Projekts auf neue Kommunikationsbibliothek, neues Betriebssystem (FreeRTOS) und aktuellen Controller von NXP, Portierung von existierenden Regelsystemen auf die neue Hardware.
  • Test des Gesamtsystems, funktionale Erweiterung der Kommunikationsbibliothek
Industrielle Testsysteme
3 Jahre 11 Monate
2015-08 - 2019-06

Entwicklung eines neuartigen, flexiblen Regelsystems

  • Erarbeitung einer neuen Hardware-Architektur mit höherwertigerem Controller (ARM CortexM4F). 
  • Erweiterung und Flexibilisierung der bestehenden analogen und digitalen Peripherie.
  • Erarbeitung der analogen Eigenschaften des Systems.
  • Einstellbarkeit verschiedener HW Konfigurationen für die Eingänge. Erweiterbarkeit der analogen IOs durch eine "analogseitige Kopie" der Grundplatine möglich, ohne neue Hardware-Entwicklung.
  • Aufbau einer komplett neuen Software - Basis, die flexibel konfigurierbar und damit den gestiegenen Anforderungen an Skalier- und Konfigurierbarkeit gerecht wird. Einbau eines FPGA zur Entlastung und Erweiterung des Microcontrollers. 
  • Das FPGA ist in der Lage, sämtliche IOs abzuarbeiten, auch für die Erweiterungsplatine. Einarbeitung neuer Mitarbeiter ins Projekt. 
  • Einsatz von MQX und C/C++ für die Programmierung des Systems. 
  • Socket-Einsatz für die komplexe Internet- Anbindung. SD-Card- und Filesystem-Einsatz. 
  • Kommunikation über Ethernet / CAN / RS232. Erstellung des kompletten PCB mit eagle

Industrielle Testsysteme
1 Jahr 7 Monate
2017-09 - 2019-03

Mitentwicklung eines neuartigen Logistik-Prozesses (color picking)

  • zunächst Anpassung des Programmes des komplexen Lagerautomaten für den Colorpick-Prozess. 
  • Unterstützung bei Untersuchungen zur Positionserkennung.
  • Entwicklung eines Farb-Indikators zur Unterstützung des ColorPickings, Einsatz eines Netduino WLAN-Moduls und eines selbstenwickelten PCB. 
  • Umarbeitung und Anpassung der STM32-Libraries für den Microcontroller.
  • Benutzung von Atollic TrueStudio. 
  • Erstellung einer Windows-DLL zur Kommunikationserleichterung. 
  • Die DLL wird unter C# benutzt. 
  • Ausführung der gesamten Projektarchitektur von der Hardware bis zur PC-Kommunikation.
Lagerausstattung und -logistik
8 Monate
2017-01 - 2017-08

Steuerung eines komplexen Lagerautomaten mittels Embedded Linux und C#

  • Steuerung der Hardware über Ethernet und CAN, Dekodierung der Befehle aus der Datenbankanbindung und Ausführen der Ein- und Auslagerungsabläufe.
  • Programmierung in C# / Benutzung der Mono-Bibliothek auf dem Linux-Rechner.
  • Einsatz von VisualStudio für Vortests auf dem PC.
Lagerausstattung und -logistik
10 Monate
2016-04 - 2017-01

Unterstützung der Entwicklung einer neuen Generation des Vorwuchtprogramms

  • Mitarbeit bei der Erarbeitung einer Software- und Projektarchitektur für die Programmierung eines Vorwuchtprogramms, das auf drei verschiedenen Hardware-Plattformen zum Einsatz kommen soll. 
  • Erarbeitung der Entwicklungsumgebung für zwei unterschiedliche Embedded-Linux Systeme.
  • Erstellung des Projektrahmens, derzeit Programmierung der Interfaces. 
  • Einsatz von Enterprise Architect zur Erzeugung der State Machines, Programmierung in C++ unter Linux inclusive Xenomai-Echtzeiterweiterung.   

Maschinenbau-Zulieferer
Landsberg
1 Jahr 3 Monate
2015-02 - 2016-04

Entwicklung der Software für einen zertifizierten Rauchmelder

  • Entwicklung von Software, Erarbeitung der System-Architektur und daraus resultierend der Software-Eigenschaften, Entwicklung des C-Programms, Unterstützung bei Inbetriebnahme des Systems. 
  • Anwendung eines PIC 16F-Microcontrollers mit C-Compiler, Programmierung der Digitalisierung und Auswertung, Kommunikation zum PC, Erstellung der Zertifizierungs-Dokumentation.

Sicherheitstechnik
Augsburg
3 Jahre 3 Monate
2013-01 - 2016-03

Unterstützung der Entwicklung einer neuen Messgerätefamilie

  • Einarbeitung in Embedded-Linux-System und in die Systemarchitektur der Software, Erweiterung des Systems um neue Geräteanteile. Einsatz der PowerPC-Architektur. 
  • Das Gerät steuert die angeschlossene Spezial-Hardware (Wuchten/Körperschall) bzw. verarbeitet ihre Messdaten vor, bevor diese an den PC zur Visualisierung weitergeleitet werden. 
  • Einsatz objektorientierter Methoden und Eclipse für die Entwicklung der Software. Einführung der Xenomai-Realtime-Extension für Linux, um Echtzeit-Anforderungen an die Software erfüllen zu können. Design und Aufbau einer neuen Task-Architektur, Programmierung neuer und Portierung bestehender Software in den damit gegebenen Rahmen. 
  • Die Grundkommunikation im System, d.h.zwischen dem Hauptrechner und dem Messkarten erfolgt über CAN- und USB-Bus
  • Erweiterung des Systems um eine Spezial-Messkarte für Körperschallsignale. Diese führt die grundlegenden Messungen und Datenaufbereitungen für die Prozessüberwachung durch. 
  • Die Daten werden über USB an den PowerPC übergeben. EMV-Untersuchungen und Inbetriebnahme der Hardware, Verbesserungen eingebracht. 
  • Die Software läuft auf einem Kinetis K60 (ARM-Cortex-M4) mit dem MQX-Echtzeit-Betriebssystem als funktionale Basis.
  • Dies Software wurde komplett in Eigenregie designt und programmiert. Überarbeitung der Hardware wegen EMV/Kanalübersprechen.
  • Erstellung des kompletten Schaltplans und Teile des Layouts für das PCB.

Maschinenbau-Zulieferer
Landsberg
3 Jahre 11 Monate
2011-09 - 2015-07

Entwicklung verschiedener Druckregelsysteme

  • Aufbau einer flexiblen Softwarearchitektur, mit der verschiedene Regelsysteme aufgebaut werden können. 
  • Komplettes Neuaufsetzen des Softwaresystems, Einführung eines Echtzeitbetriebssystems (FreeRTOS auf dsPIC33), Einsatz von fertigen Bibliotheken für die Ethernet Kommunikation. 
  •  Regelungsalgorithmen für verschiedene Anwendungssysteme festlegen, implementieren und auf Tauglichkeit testen. 
  • Anleitung und Unterstützung interner Mitarbeiter.
  • Programmierung mehrerer Druck- und Temperaturregelsysteme auf Basis der erarbeiteten Grundarchitektur. 
  • Echtzeit-Debug-Unterstützung über CAN-Bus

Industrielle Testsysteme
1 Jahr 1 Monat
2012-02 - 2013-02

Entwicklung eines Messgeräts zur hochgenauen Durchmesserbestimmung während des Bearbeitungsprozesses

  • Präzisions-Durchmesserbestimmung mittels LVDT: Komplette Hard- und Software Entwicklung, Projektleitung. 
  • Das Projekt wurde wegen Firmenübernahme eingestellt.
  • Erarbeitung des kompletten Konzepts (analoge und digitale Elektronik und Erstellung aller PCBs), wobei das System aus zwei Messköpfen und einer Zentralbox besteht. 
  • Einsatz von Actel/Microsemi FPGAs, synchron arbeitende, hochauflösende AD-Wandler (16 bit), ARM Cortex-M4-Microcontrollers (Freescale Kinetis). 
  • Im FPGA erfolgt eine PWM-basierte Erzeugung des Sinus-Ansteuersignals und die Ansteuerung der AD-Wandlung. Kommunikation erfolgt über CAN-Bus. 
  • Ein Prototyp ist bereits lauffähig und wurde vorgestellt. 

Maschinenbau-Zulieferer
Landsberg
1 Jahr 3 Monate
2011-01 - 2012-03

Entwicklung eines neuen Körperschallmessgeräts

Entwicklung eines neuen Körperschallmessgeräts und eines Simulators zur hochgenauen Generierung mehrkanaliger Signale


Körperschallmessgerät: 

  • Komplette Hard- und Software-Entwicklung (PCB), Entwicklung einer neuen Leiterkarte gemischt analog / digital mit ORCAD und Spice. 
  • Einsatz von Microcontroller und FPGA.
  •  Aufwendige analoge Schaltungen für mehrkanalige Bearbeitung von Signalen im µV-Bereich. 
  • Berücksichtigung von EMV. Darüber hinaus überwacht die Karte noch weitere analoge und digitale Signale für die Implementierung erweiterter Funktionen. 
  • Digitalisierung der Signale mit 40MSps per FPGA.
  • Erzeugung von FFT der Signale im FPGA ist vorgesehen


Simulator: 

  • komplett Hard- und Softwareentwicklung, Signalerzeugung per FPGA, Einführung eines neuen Microcontrollers (Cortex-M4-basiert), Kommunikation per CAN mit dem  Hauptrechner, Erzeugung hochgenauer Signale per FPGA und DAC. Anbindung des FPGA über Prozessorbus an den Microcontroller. Leiterkartenentwicklung mit ORCAD. 
  • Simulationen mit ModelSim und Spice. 
  • Programmierung des Systems in VHDL (Quartus II)und C/C++ (Eclipse), Einsatz eines Echtzeit-Betriebssystems (MQX). 
  • Steuerung des Systems über CAN-Bus

Maschinenbau-Zulieferer
Landsberg

Aus- und Weiterbildung

Aus- und Weiterbildung

5 Jahre 4 Monate
1985-11 - 1991-02

Studium der Elektrotechnik

Dipl.-Ing. Elektrotechnik, TU München
Dipl.-Ing. Elektrotechnik
TU München
Diplomarbeit: gern auf Anfrage
3 Jahre 6 Monate
1981-09 - 1985-02

Ausbildung zum Funkelektroniker

Funkelektroniker, Firma Schneider, Türkheim
Funkelektroniker
Firma Schneider, Türkheim
8 Jahre 10 Monate
1971-09 - 1980-06

Schüler

Abitur, Gymnasium Krumbach
Abitur
Gymnasium Krumbach

Kompetenzen

Kompetenzen

Top-Skills

C/C++ Embedded Systems (RTOS oder Bare Metal) Konzepte Komunikation (Ethernet/CAN) Teamfähigkeit RealTime (OS/bare metal) FPGA/VHDL Messtechnik analog/digital Hardware analog/digital

Schwerpunkte

  • Hard- und Softwareentwicklung im technischen Umfeld für Echtzeitsysteme
  • FPGAs
  • PC-Systeme
  • Microcontroller-Systeme
  • Echtzeit-Betriebssysteme

Produkte / Standards / Erfahrungen / Methoden

EDV-Erfahrung 

seit 1985


selbständig

seit 1999


Methoden des Software Engineering

  • Objektorientierte Programmentwicklung (OOA/OOD/OOP/UML), Einsatz von RealTime Studio und Enterprise Architect
  • Strukturierte Analyse und Design (SA/SD)
  • Versionsverwaltung (Visual Source Safe, PerForce, GIT)
  • Dokumentationstools (Microsoft Office, LaTex, OpenOffice, LibreOffice)
  • DOORS, Dimensions, Jama, Jira, Confluence, BitBucket, Git


Regelungssysteme

  • Aufbau verschiedener Regelsysteme für Druck- und Temperaturregelungen 


Entwicklungsstandards

  • RTCA DO-178B und DO-254 (Luftfahrt, Software und Hardware),
  • EN54-5 (Brandschutz)


Technologien:

  • Prozesse im Maschinenbau-Umfeld
  • Prozesse in der Luftfahrt
  • Automobilbau
  • Allgemeine Steuerungs- und Regelungssoftware in ANSI - C (ARM Cortex, TriCore, Hitachi, PIC, NIOS II)
  • Embedded Linux Projekte in C++ (auch Xenomai Realtime Extension)
  • Datenkommunikation (Ethernet, USB 2.0 Full - Highspeed)
  • PC - Applikationen in Microsoft Visual Studio (C/C++/C#)
  • Softwaremodellierung mit UML, Objektorientierung (OOA/OOD) für PC- und Echtzeitsysteme.
  • Steuerungssoftware nach IEC 61131


beruflicher Werdegang

10/1999 ? heute

Rolle: Selbständige Tätigkeit


04/1998 - 09/1999

Rolle: Entwicklungsingenieur für Hard- und Software 

Kunde: Fa. Walter Dittel GmbH, Abt. Meßtechnik, Landsberg


10/1991 - 03/1998 

Rolle: Software-Ingenieur 

Kunde: Firma Siemens, München


04/1988 - 10/1990 

Rolle: Teilzeittätigkeit am Lehrstuhl für Landmaschinen

Kunde: TU München


Aufgaben:

Bearbeitung eines eigenständigen Projekts im Bereich Maschinensteuerungen: 

  • Regelung eines Versuchsfahrzeuges
  • Programmierung in C und Assembler für Z80-CPU und Design digitaler Hardware


03/1986 - 02/1988

Kunde: Firma GammaData, Germering


Aufgaben:

  • Zum Studium parallele Teilzeittätigkeit zunächst in Fertigung und Prüflabor, dann im Ingenieurbüro
  • Mitarbeit in der Hardwareentwicklung, Herstellung von Meßmitteln.


03/1985 - 10/1985 

Kunde: Firma Schneider, Türkheim

Rolle: Elektroniker, 


Aufgaben:

  • Erfahrung in analoger und digitaler Elektronik, Mechanik

Betriebssysteme

Echtzeitbetriebssysteme
MQX, FreeRTOS, VxWorks/pSOS, µC/OSII
Embedded Linux
Windows
Erstellung von PC - Applikationen
Applikationen
Board Support Packages
Linux-Applikationen
Windows - Systeme

Programmiersprachen

Assembler
diverse Microcontroller
C
diverse Compiler / Microcontroller
C#
Borland / VisStudio / Mikrocontroller (Hitachi und Altera Nios II)
C++
langjährige Erfahrung in OO-Programmierung
Delphi
verschiedene Applikationen für Mess- und Testaufgaben
Maschinensprachen
diverse Microcontroller (NXP, Hitachi, Microchip, ...)
MATLAB / Simulink
Programmierung Simulationsprogramm nichtlineare Regelung; Einsatzz für Entwicklungs- und Verifikationsaufgaben
PL/SQL
Datenbankanwendungen
Tcl/Tk
Grundanwendungen
TeX, LaTeX
Anwendung für diverse Dokumentationsaufgaben

Datenbanken

BDE
Anwendung in verschiedenen Projekten
SQL
MS SQL Server Mobile Edition, SQL allgem.
ODBC
Paradox
Microsoft Access

Datenkommunikation

Bus
CAN, CanOpen, Ethernet (TCP/IP), USB,
Ethernet
TCP/IP UDP/IP
HDLC
Langjährige Anwendung
Internet, Intranet
ISO/OSI
diverse Kommunikationsprotokolle
parallele Schnittstelle
Druckeranbindungen für Microcontroller
Proprietäre Protokolle
Anbindung spez. Subsysteme, seriell, CAN, TCP/IP
RS232
Lesesysteme, Zugangskontrollsysteme
TCP/IP
Anbindung Microcontroller /SPS/ Steuerungen an Hostsysteme
Winsock
unter Visual Studio

  • RS232-Kommunikation: Treiberentwicklung für Echtzeit- und Windowssysteme, speziell auch für Echtzeit-Betriebssystem-Anbindung (Board-Support-Packages)
  • HDLC-Kommunikation: Treiber für Echtzeit-Betriebssystem im Rahmen eines Multiprozessorsystem
  • TCP/IP: Anwender- und Systemkenntnisse, verschiedene Implementierungen im PC, im Microcontroller und mit FPGA (SOC), Anpassen von verschiedenen Bibliotheken
  • CAN/CANFD: Einsatz auf verschiedensten Systemen
  • USB: Entwicklung eines kompletten MemoryStick-Treibers für ein proprietäres Betriebssystem, USB 2.0 High Speed: Anwendung sowohl für den USB-Host als auch für den Device; USB 2.0 Full Speed: Mehrere Anwendungen mit PIC-Microcontrollern (Device) und Freescale-Controllern
  • I2C, SPI, LVDS: Anwendungen in diversen Hardware-Systemen
  • Entwicklung einer proprietären Kommunikationsarchitektur für ein Steuerungssystem; Anlehnung an das ISO/OSI-Schichtenmodell. Implementierung des Protokollstacks, Einbindung ins Betriebssystem

Hardware

Bus
CAN, Ethernet, USB - Detailerfahrungen, RS232, RS422
Echtzeitsysteme
WindRiver, uC-OS I und II, u.a.
embedded Systeme
diverse z.T. auch selbst entwickelte
Emulatoren
Lauterbach, 68k, Hitachi, Altera Nios II
Hardware entwickelt
Analog- und Digitalentwicklung
Messgeräte
Oszilloskope, Analyzer, etc
Mikrocontroller
ARM Cortex, C167, TriCore, Renesas, Nios II, 68000, Intel, Microchip
PC
für Anwendungsprogrammierung
PLD, FPGA
Altera, Xilinx, Microsemi
Proprietäre HW
versch. Mikrocomputer mit ver
Sensoren
Verarbeiten von Signalwerten analoger und digit. Sensoren
Siemens-SPS STEP x
SPS
Mikrocontroller mit IEC 1131 Laufzeitsystem
Steuer und Regelsysteme
Mikrocomputer zur Steuerung / Regelung versch. Applikationen
  • Mikrocomputer (ARM/C167/ Tricore / Renesas) im Umfeld Automotive, Nutzfahrzeuge und Automation
  • PC - für die Programmierung von Windows Applikationen

Berechnung / Simulation / Versuch / Validierung

Scilab / Matlab
Anwendung für diverse Tests / Verifikationen

Design / Entwicklung / Konstruktion

EAGLE / ORCAD
diverse Schaltpläne und Layouts
Orcad-Layout und Schaltplansystem
Multisim-Erfahrung

Branchen

Branchen

  • Steuerungshersteller
  • Bau: Telematik - Lösungen
  • Landwirtschaft: Telematik - Lösungen
  • Luft- und Raumfahrt
  • Maschinenbau
  • Softwarehersteller

Vertrauen Sie auf Randstad

Im Bereich Freelancing
Im Bereich Arbeitnehmerüberlassung / Personalvermittlung

Fragen?

Rufen Sie uns an +49 89 500316-300 oder schreiben Sie uns:

Das Freelancer-Portal

Direktester geht's nicht! Ganz einfach Freelancer finden und direkt Kontakt aufnehmen.