HS

Hubert Schorr

verfügbar

Letztes Update: 06.09.2022

Embedded Software Engineering

Firma: Ingenieur Büro Schorr
Abschluss: Dipl. Ing(FH) Elektrotechnik
Stunden-/Tagessatz: anzeigen
Sprachkenntnisse: deutsch (Muttersprache) | englisch (verhandlungssicher)

Dateianlagen

Berufliches_Profil_Hubert_Schorr.pdf

Skills

Branchen:
    Automatisierungstechnik und Feldbusanbindung
    Embedded Software Engineering und Realtime Betriebssystem
    Hardwarenahe Software Entwicklung, Protocol Stack Entwicklung
    Treiber Framework Design
    Simulation von Materialflusssystemen
    Postlogistik
    Flughafenlogistik
    Erfahrung in Großprojekten
    Erfahrung im agilen Umfeld


Linux, embedded Linux:
    C, C++11/17, STL
    GNU Toolchain, Eclipse
    Kernel Treiber Entwicklung, PCI Express, UIO, DMA, Physical Memory
    C++ User Space Treiber Entwicklung
    U-Boot Bootloader Anpassungen für BSP

Microsoft Windows:
   COM/COM, .NET Technologie
   Windows Kernel Mode Treiber Entwicklung
   User Mode Treiber Entwicklung
   Kommunikationssoftware in C#, GUI basierte Testtool Entwicklung in C#

Allgemein:
    UML
    OOA, OAD
    Design Pattern
    Treiber Framework Design
    Kundenspezifische Realtime Betriebssysteme
    Systemnahe Software Entwicklung im SOC Umfeld
    Industrielle Feldbusse


Projekthistorie

10/2013 - bis jetzt
Embedded System Engineering
SICK AG Sensor Technik

System Software Design und Entwicklung für einen 3D Kamerasensor in der
Automatisierungstechnik in C++11 und C#.NET

System Software Engineering unter Microsoft Windows in folgenden Bereichen:
* Kommunikationssoftware für Sensor Anbindung und HMI Client
* Sensor seitiges Protokoll Stack Refactoring (firemeneigener RPC Stub) für verbesserte
Performance
* C#.NET basierter Proxy Implementierung(HMI Client) für Kommunikation mit den
Stub Funktionen des Sensor Industrie PCs
* C# GUI für den Test des Proxy/Stub Systems (Windows Forms) und für die
Visualisierung der Kamerabilder
* ProfiNet und ProfiSafe Feldbusanbindung des Sensor PCs
* Anbindung der Sensor Software and Hilscher ProfiNet Netx PCI Hardware
* Implementierung eines Visualisierungssystems für die von der SPS empfangenen
Sensor Daten und Anbindung an Siemens SPS
* Erstellen einer SPS Spezifikation für die Sensor Signale sowie Implementierung
eines Datenübertragungsprotokolls (Command/Response Mechanismus mittels
I/O Signalen) für den zyklischen Datenaustausch zwischen Sensor und SPS
* Treiberentwicklung für die PCIe FPGA Hardware des Kamera Sensors unter Windows
7 mit späterer Portierung auf Windows 10
* PCIe Windows Kernel Mode Treiber sowie User Mode Treiber für
Applikationsanbindung für DMA Streaming von Kamera Images
* Windows Kernel Mode Treiber für die Bereitstellung von physikalischem
uncached Memory für DMA Streaming
* User Mode Treiber Stack und Image Streaming Library für Bildaufnahme mittels
DMA, sowie Treibern für Kamera Trigger, Beleuchtungszeit und -dauer und
Treiber für geometrische Korrektur der Linsen Optik der Kamera. Verwendung
von speziellen C++ Compiler Intrinsics für den Zugriff auf memory mapped
Register der FPGA Hardware für die Vermeidung der "Out of Order Execution"
der Intel Prozessoren
* Aufbau eines Labor Transition Systems(LTS) für Treiberanbindung an FPGA Hardware
unter Windows
* Erstellen einer Win32 DLL (LTS System) mit DMA Streaming Library und User
Mode Treiber Stack und Anbindung an TCL als Software Basis für die
Weiterentwicklung der Kamera Hardware (PCIe FPGA Hardware)
* Erstellen des Marshalling Frameworks zwischen TCL und C++ Laufzeitsystem
mittels SWIG Codegenerators
* MATLAB Anbindung des Labor Transition Systems für Optikmessungen
* Anbindung der LTS Win32 DLL an MATLAB für Image Streaming und Recording für
Optik Messungen

System Software Engineering unter in folgenden Bereichen:
* Ubuntu LinuxPortierung der Sensor Applikation von Windows nach Ubuntu Linux
*




* Entwicklung eines Linux PCIe Kernel Treibers für die FPGA Kamera Hardware
* Entwicklung eines Physical Memory Kernel Treibers für das Allokieren von
physikalischem noncached Memory für DMA Transfers der FPGA Kamera
Hardware
* Entwicklung eines Labor Transition Systems als Linux Shared Library mit
folgenden Komponenten:
* Integration des PCIe Kernel Treibers und des Physical Memory Treibers
* Portierung der Windows basierten User Mode Treiber Stacks nach Ubuntu
Linux und Portierung der Win32 System Calls nach Posix sowie von speziellen
Compiler Intrinsics des GNU C++ Compilers für die Vermeidung der "Out of
Order Execution" der Intel Prozessoren bei memory mapped Register
Zugriffen
* Anbindung der LTS Shared Library an Linux TCL Interpreter als Software Basis
für die Weiterentwicklung der PCIe FPGA Kamera Hardware

System Software Engineering unter in folgenden Bereichen:
* Embedded Linux(Yocto) von NXP für QorIQ SOC LS1046 Reference Design Board auf
ARM7 Basis
* Installation einer Vagrant Virtual Machine mit Ubuntu Linux 14.04
* Installation, Setup des Linux Yocto SDK von NXP und Cross Compiler Toolchain
Setup
* Portierung des Ubuntu PCIe Kernel Treibers der FPGA Hardware nach Yocto Linux,
Erweiterung auf 32 MSI Interrupts und Integration in das Yocto Build System
* Portierung des Ubuntu Physical Memory Kernel Treibers nach Yocto Linux und
Integration in das Yocto Build Systems
* U-Boot Bootloader Erweiterung für das PCIe Root Complex und Endpoint Setup
* Software Entwicklung für die PCIe Crosslink Kommunikation von zwei LS1046
Boards als Zweikanaliges System, Datenübertragung über PCI Express und MSI
Interrupt Handling
* Integration der Hilscher ProfiNet PCIe Feldbus Hardware
* Integration des Hilscher Linux Kernel Treibers in das Linux Image
* Integration des User Space Hilscher CIFX Toolkits als Linux Applikation
* Entwicklung einer ProfiNet Applikation in C++11 und Anbindung and den
Hilscher Toolkit für den zyklischen Datenaustausch mit Siemens SPS
* Übergang von PCIe Hilscher ProfiNet Anbindung zu Anbindung des Hilscher
Evaluation Boards an Interface des LS1046 Flash Controllers (gemultiplexter
Daten- und Adressbus) und DPM Interface des Hilscher Eval Boards
* Parametrierung des Hilscher Second Stage Bootloaders für das DPM Setup
* Entwicklung eines Linux IFC Flash Treibers mit UIO Treiberframework für die
Anbindung an die Hilscher Eval Board Hardware

Umstieg von Yocto Linux auf Ubuntu Flexbuild Linux von (NXP) mit Umstieg vom LS1046
Reference Designboards von NXP auf eigner Hardware Platform mit NXP SOCs:
* Portierung aller bisherigen implementierten Linux Kernel Treiber, Bootloader
Modifikationen und Streaming Library nach Ubuntu Flexbuild Linux.
* Anbindung der Hilscher Feldbus Hardware an die neue Hardware Platform über Flash
Controller Interface(IFC) der SOC Hardware über Dual Port Memory(DPM)
* Modifikation des Second Stage Bootloaders der Hilscher Hardware für das Setup der
DPM (Dual Port Memory) Register.
* Implementierung eines Linux Kernel Treibers (UIO Treiber) für die Steuerung der
Hilscher Hardware(Interrupt Betrieb) und die Anbindung an die Hilscher Toolkit
Software (User Level Software)




* Implementierung von Bare Metal Software für die Hilscher Hardware für das Testen
der DPM Verbindung und des Setups mit dem SOC(Validierung der Memory Zugriffe
auf das DPM)
* Implementierung von Software für die Hilscher Hardware(Hilscher RcX OS) für das
zyklische Setzen von I/O Pins(1ms Takt), die mit Interrupt Eingängen des SOC
verbunden sind für das zyklische Generieren von Interrupts von der Feldbusseite.
* Implementierung eines Linux Kernel Treibers für Bearbeitung der zyklischen
Interrupts und Messung von Jitter Zeiten sowie das Erfassen von nicht erhaltenen
Interrupts

DMA Treiber Entwicklung für TOF Platform ZCU102 von Xilinx
* Integration und Device Tree Konfiguration des generischen Linux UIO Treibers für die
Addressbereich Bereitstellung und Interrupt Handling des FPGA
* Entwicklung der dazugehörigen Linux User Space Treiber in C++

09/1991 - 10/2013
Siehe Profil Datei

Reisebereitschaft

Verfügbar in den Ländern Deutschland, Österreich und Schweiz
Deutschland weit, Englisch sprachiges Ausland
Profilbild von Hubert Schorr Embedded Software Engineering aus ZeilamMain Embedded Software Engineering
Registrieren