Dipl.-Ing. Robotics Systems Engineering (MSc.), BSc. Mechatronical Engineering
- Verfügbarkeit einsehen
- 0 Referenzen
- 100‐115€/Stunde
- 68259 Mannheim
- Europa
- de | en | fr
- 15.11.2024
Kurzvorstellung
-Programmierung von Roboter- und Automatisierungssystemen (SPS, Standalone)
-Entwicklung von Bildverarbeitungsalgorithmen und Anwendungen
-Inbetriebnahme
-C++, C, Python, Java, ROS
Qualifikationen
Projekt‐ & Berufserfahrung
11/2023 – 5/2024
Tätigkeitsbeschreibung
Innerhalb des bereits vorher abgeschlossenen Projekts Flexivision wurde der Kunde beauftragt die Entwicklungsumgebung nachträglich noch auf die neueste Version von OpenSSL zu updaten.
Tätigkeiten innerhalb des Projekts:
-Entwicklung mit C++
-Migration und Änderungen der Softwareschnittstelle von OpenSSL1.0.2 hin zu OpenSSL 3x
-Integration der Änderungen in die Test-GUI und beim Simulationsserver
-Tests der Änderungen
-Kommunikation und Übergabe der Änderungen an die Testabteilung
Im Projekt Disco 3D Endoskop Unterstützung bei der Entwicklung der Software und Durchführen von Tests, sowie aufarbeiten der Dokumentation. Das Endoskop besteht hardwareseitig aus zwei identischen Videoverarbeitungsplattformen mit jeweils einem ARM64 FPGA zur Bildverarbeitung, bei dem jeweils eine der beiden Plattformen die Verarbeitung je eines Kanals der beiden Kanäle des 3D-Stereobildes übernimmt.
Tätigkeiten innerhalb des Projekts:
-Entwicklung mit C++
-Weiterentwickeln der CMakeLists des Projekts
-Entwicklung von Shell-Scripten
-Integration und Überarbeitung von Scripten in der CICD-Pipeline
-Entwicklung und Weiterentwicklung von im Build- und Dokumentations-Prozess genutzten Docker Containern
-Überarbeitung und Erweiterung der Dokumentation
-Entwicklung von Scripten zur automatischen Generierung von UML-Graphen aus dem Quellcode für die Dokumentation mit ClangUML, PlantUML und basierend auf Doxygen
-Übernehmen von Tasks/Tickets im jeweiligen Scrum-Sprint zur Anpassung der Software des Geräts, Weiterentwicklung der Software, Analysieren und Fixen von gemeldeten Bugs
-Testen der Software
-Abstimmung mit dem Entwicklungsteam im Scrum-Meeting
Während dem Projekt genutzte Tools und Keywords:
-CPPCheck
-CPPLint
-GoogleTests (für Unittests)
-Flake8
-VSCode
-Clang Compiler
-aarch64-linux-gnu-Compiler
-ClangUML
-compdb
-compile_commands
-Doxygen
-PlantUML
C++
4/2023 – 10/2023
Tätigkeitsbeschreibung
Aufgrund einer Prozessänderung in der Übertragung der neuen Produktdaten von der Abteilung ins Produkt-Daten-Management-System musste die Schnittstelle des PDM an den neuen Prozess angepasst werden.
Tätigkeiten innerhalb des Projekts:
-Analyse und Dokumentation des IST-Zustandes
-Entwurf und Implementierung der Logik für den neuen Prozess
-Entwicklung mit JAVA und JYTHON (Python-Code ausführbar mit JAVA)
Java (allg.), Python
4/2023 – 10/2023
Tätigkeitsbeschreibung
found in reference description 4
Für neue Züge der Metro Berlin wird bei Cegelec AS in Tschechien in Zusammenarbeit mit Stadler AG aus der Schweiz ein Wechselumrichter entwickelt, der auf die aktuelle vorhandene Stromversorgung reagiert und gegebenenfalls einen Inverter betreibt, über den sowohl der Antrieb als auch das Bordnetz des Zuges betrieben wird und auch in Hinblick auf etwaige kurzzeitige Stromausfälle während der Fahrt eine Batterie geladen wird von der im Fall des Stromausfalls oder schwankender Stromversorgung das Fahrzeugnetz betrieben wird (750V Streckennetz, 400V-dreiphasiges Antriebsnetz und 110V Bordnetz und Batterie). Das System basierte auf zwei SOC FPGA mit FreeRTOS10 und C++17, die untereinander über Modbus kommunizierten und verschiedene Aufgaben übernahmen, wie das Messen und Steuern verschiedener Stellgrößen im Wechselrichter. Weiterhin kommunizierte das System nach außen hin über Profinet und einer unter Codesys laufenden PLC.
Tätigkeiten innerhalb des Projekts:
-Softwareseitige Leitung und Durchführung der technischen Umsetzung des Projekts
-Ableitung der Software-Requirements und Testcases aus den Customer Requirements und System Requirements
-Unterstützung bei der Durchführung von Integrationstests und Unit-Tests
-Abgleich der Software-Requirements mit den bereits implementierten Funktionen und dokumentieren von fehlender Implementierung
-Implementierung von fehlenden Funktionalitäten des Algorithmus
Eingesetzte Technologien und Tools: Xilinx Vitis 2020.1 für FPGA Zynq-7010, C++, VSCode, Git, Azure Cloud DevOps für Requirements-tracking und Task-tracking sowie Test-Durchführung
Entwicklung und Test des Systems nach DIN EN 50155:2022-06, DIN EN 50160:2020-11, DIN EN 50533:2012-04
-Entwicklung einer GUI in Python und QT zum Auslesen von synchronisierten Oscilloskop-Messungen zwecks Qualitätskontrolle des Systemverhaltens, dabei auch implementierung einer Ansteuerung eines Arduino zur Durchführung verschiedener Systemintegrationstests des Wechselrichters.
-ab 8. August 2023 in der Rolle als Haupt-Requirements-Engineer: Einpflegen der Requirements in Azure, aufarbeiten und aufteilen der Requirements zur Nachverfolgung des Status der Detail-Requirements und Software-Requirements unter Berücksichtigung der System-Requirements während der weiterführenden Projektarbeit
Forschung & Entwicklung
2/2023 – 7/2023
Tätigkeitsbeschreibung
Entwicklung von Bildverarbeitungsalgorithmen für die Qualitätsprüfung bei der Scheibenproduktion von schaltbar intransparenten Scheiben mit verschiedenen Durchlässigkeitsstufen (für die Automobilbranche).
Unterstützung bei der Entwicklung von Prototypen
Aufsetzen der Softwareumgebung und -projekte sowie Entwicklung der Bedienoberfläche der Messsysteme.
Eingesetzte Technologien und Tools: Python, C++, CMake, msys2 für mingw_64, OpenCV, QT6, VSCode, GitTea, TortoiseGit, Arduino, Manjaro, Kubuntu, LumiCam, ProtoPie, Schrittmotoren
C++, Opencv, Python, Qt (Software)
6/2022 – 2/2023
Tätigkeitsbeschreibung
Embedded C Software Developer für Projektarbeit für Fachbereich Traffic Sign Recognition bzw. Traffic Sign Interpretation im ADAS Bereich. Hauptsächlich abarbeiten von Tasks und Implementierung sowie Testen des Codes (meistens simuliert, teilweise auch HIL)
Das System war ein Embedded Controller auf einer Kamera mit begrenzten Ressourcen und entsprechender Begrenzung verfügbarer statischer und dynamischer Variablen im Speicher, bei dem aufgrund des nötigen Echtzeitverhaltens ein optimierter Laufzeitzyklus eingehalten werden musste.
• Visual Studio Code (Development und Performance Profiler für Optimisierung)
• C
• Git
• Integrity
• DOORS
• Helix QAC
• CMAKE
• Navifusion mit Kameradaten
• Umsetzen von Algorithmen anhand Requirements
• Analyse von Bugs anhand von Logdateien
• SILTests
• Auswertung HILLogs
• Abarbeiten, Tracken von OpenPoints und Rücksprache mit Tests und Requirements Engineers
• Entwicklung von Algorithmen zur Erkennung der Straßensituation
• Europäische GSR
• MisraC
• Autosar
• EuroNCAP Safety Assist
Auszug aus Aufgaben:
-Analysieren von HIL-Logs des Tests, bei dem zunächst nicht zu unterscheiden war, ob das System einen Fehler (True Positive) oder das Test-Setup einen Fehler (False Positive) enthält. In diesem Zuge dann analysieren des Codes mithilfe einer Simulationsumgebung zur Nachanalyse des HIL-Logs und Debugging des Codes, bis der Fehler gefunden war (teilweise war auch das Test-Setup falsch, da Signale fehlten)
-Untersuchen der Europäischen GSR und abgleichen des Verhaltens des Systems mit dem geforderten Verhalten der GSR
-Implementierung von fehlenden Funktionalitäten auf Basis der Requirements in Doors, dabei Rücksprache mit den Kollegen wenn Requirements nicht ausreichend exakt formuliert wurden und anschließendes Pushen der Änderungen in Integrity
C
8/2019 – 9/2021
Tätigkeitsbeschreibung
Software Lead Developer für 2D bildbasierte Programmierung von Roboterpfaden für unikate Werkstücke und Kleinstserienproduktion. Wissenschaftliche Publikation über selbiges Thema am 10. September 2021 bei FAIM2021 (Flexible Automation and Intelligent Manufacturing International Conference --- Referenz: -Hyperlink entfernt- ).
• RoboDK
• KUKA IIWA
• Python
• QT GUI
• OpenCV
• Numpy
• Git
• Jenkins
Entwicklung, Aufbau und Inbetriebnahme eines kollaborative Universal Robot UR5 mit Ansteuerung einer Linearachse auf dem der Roboter befestigt war. Entwicklung der Roboteranwendung nach DIN ISO/TS 15066 mit Entwicklung einer Sicherheitskonzeptionierung der Roboterzelle nach DIN EN ISO 10218. Der Prototyp wurde entwickelt zur Durchführung von Prozessschritten an unikaten Werkstücken auf Basis vorangegangener Publikation und bei einem Kunden in Betrieb genommen.
Entwicklung von Computer Vision Software im Bereich Zero Defect Quality Control mithilfe von Thermographie Systemen zur zerstörungsfreien Fehlerdetektion von Bauteilen.
Entwicklung von Computer Vision Software für das EU Forschungsprojekt „SPIRIT Inspection Robots“ im Rahmen des EU Kommission finanzierten HORIZON 2020 Framework Program (-Hyperlink entfernt-).
• Visual Studio (Development und Performance Profiler für Optimisierung)
• C++
• Git
• SVN
Forschungsbeiträge und Software Lead Developer bei Robot based Additive Inkjet Printing (-Hyperlink entfernt-).
• Matlab für simulations
• Visual Studio (Development and Debugging)
• C++
• Python
• QT GUI
• OpenCV
• SVN
• Git
Subversion, C++, Git, Jenkins, Simulink, Opencv, Python, Qt (Software), Microsoft Visual Studio
2/2018 – 8/2019
Tätigkeitsbeschreibung
Teil eines Software-Entwickler-Teams zur Entwicklung und Entwicklungsdokumentation der Software-Plattform der Motoransteuerung von Brushless-DC-Motoren als Kühlpumpen für die Fahrzeugserienfertigung (Stückzahlen >1.000.000) an Kunden wie VW, Audi, BMW, Tesla, auf Basis von Software einer anderen Abteilung (Reusability & Reengineering). Außerdem später auch in der Abteilung für die „Applikationen“ der Kühlpumpenplattform als Quality-Control/Integrationstester bevor die Pumpe mit Software als Muster zum Kunden rausgeht bzw. in die Serienfertigung überführt wird
• Arduino µController mit Bosch-internem Shield: Programmierung eines Testmodulbaukastens in C/C++ und Python für die Automatisierung von Grey-Box-Tests der Kühlpumpen
• Durch das Projekt vertieftes Wissen über Motorelektronik zur Ansteuerung von Drei-Phasen-Motor mit calculated-Back-EMF, sowie über weitere dazugehörige elektronische Komponenten wie Charge Pump, Verpolschutz, EMV-Themen (ich habe als Software-Entwickler häufiger mit dem Hardware-Entwickler-Team zusammengearbeitet)
• Arbeiten mit Matlab-Modell für Motoransteuerung (wegen cBEMF)
• Ansi-C, MISRA, AutoSpice
• Entwicklung nach dem V-Modell
• Infineon TLE98xx Microcontroller
• Keil uVision5
• LIN-Bus, PWM-Ansteuerung
• IBM-Rational (Requirements- und Quality-Management-Tool) & IBM-Rhapsody (UML-Tool)
• VectorCast (dynamische Codeanalyse) und QAC (statische Codeanalyse)
• Python 3.6 (Entwicklung verschiedener kleiner Tools für Dokumentationszwecke und Dokumentenprüfungen)
• Eclipse AEEE (Bosch-Eclipse)
• Beyond Compare
Beispiele für durchgeführte Aufgaben:
-Aufgrund dem nötigen Echtzeit-Verhalten der Pumpe, wurden Laufzeit-Cyclen-Messungen implementiert und mithilfe eines Debug-Pins am Oszilloskops durchgeführt.
-Wegen begrenzter Ressourcen auf dem Embedded Controller wurden Fehler analysiert und Anpassungen an den statisch hinterlegten Variablen im EEPROM durchgeführt
-Testen und neu Flashen der Embedded Controller, um Fehler zu analysieren die während externer Tests berichtet wurden
-Unterstützung der Tester beim Aufbau und durchführen der Tests um Hardware-In-Loop Analysen durchzuführen, anschließendes Fixen der Bugs und zugehörige Kommunikation und Tracking des aktuellen Standes im Ticketsystem
-Kommunikation mit der Abteilung für Elektrotechnik welche die Elektronik des Embedded Systems entwickelt, hierbei bezogen auf falsches Verhalten eines Interrupts des Embedded Controllers, hervorgerufen durch ein falsches Verhalten der Elektronik bei dem anschließend die Elektronik für das nächste Muster geändert werden musste.
C++
Ausbildung
Wels, Österreich
Mannheim
Über mich
Weitere Kenntnisse
• Visual Programming / Computer Vision / Machine Vision / OpenCV / Halcon
• C++ / Visual C++ / Visual Studio
• Embedded Systems / Embedded Linux / Embedded Microcontroller
• Robot operating system (ROS) / RVIZ / Gazebo / Autonomous Guided Vehicles (AGVs)
• Python / Scipy / NumPy
• MatLab / MatLab Programming
• Thermography
• RoboDK
• Collaborative Robots
• Complex Sensor Systems / Sensor Fusion
• Visual Studio Code
• Spyder
• Eclipse
• CAD / CAM / AutoCAD / Siemens NX5
• Jenkins
• Kubernetes
• NextCloud
• Docker
• Ansible
• SIMATIC S7 / STEP7
• Linux
• Atmel ARM / PIC / STM8 / TLE Infineon
• TARGET 3001!
• Java
• JavaScript
• MS Office / Excel / VBA / VB.net
• HTML
• Soldering
• CSS
• Apache Wicket
• jQuery
• MySQL
• PHP
• Hydraulic and Pneumatic Systems
• UML / Enterprise Architect / IBM Rational Software Architect / IBM Rhapsody
• Vector Cast
• Visio
• LINBus 2.1
• Pulse Width Modulation
• Motorelectronics, Brushless DC Motors (calculated back EMF)
• Maven
• Change Management
• Safety - / Control Technics
• Statistics
• Modern User Interface Design
• Software Architecture
Persönliche Daten
- Deutsch (Muttersprache)
- Englisch (Fließend)
- Französisch (Grundkenntnisse)
- Europäische Union
Kontaktdaten
Nur registrierte PREMIUM-Mitglieder von freelance.de können Kontaktdaten einsehen.
Jetzt Mitglied werden