Softwareentwicklung für Embedded Systems, Industrie 4.0 und Automotive
Aktualisiert am 11.09.2024
Profil
Freiberufler / Selbstständiger
Remote-Arbeit
Verfügbar ab: 01.11.2024
Verfügbar zu: 100%
davon vor Ort: 10%
C, C++, Embedded
Vector Tools
V-Modell
Agile Entwicklung
DOORS
Functional Safety
Unit-Tests
Tessy
C
C++
C#
Deutsch
Englisch
gut in Wort und Schrift

Einsatzorte

Einsatzorte

Tübingen (+100km) Titisee-Neustadt (+75km) München (+100km) Mindelheim (+100km) Erlangen (+100km) Deggendorf (+75km)

bevorzugt Home-Office !!!

ansonsten südliches BaWü, Bodensee, Allgäu, Vorarlberg

möglich

Projekte

Projekte

2019-Q4 - heute: Entwicklung der Applikation für ein Video-Nachfahrsystem mit Qt


Kunde: Haberl Electronic GmbH & Co.KG


Aufgaben:
Die Hardware für ein neues Video-Nachfahrsystem des Kunden basiert auf ei-nem Xilinx SoC. Als Betriebsystem kommt Embedded-Linux zum Einsatz, als Bootloader U-Boot. Bediengeräte sind über CAN angeschlossen. Zwei Kameras werden über Ethernet angeschlossen. Die Bilder der Kameras werden über ein FPGA aufbereitet und gespeichert. Die Ansteuerung der Kameras erfolgt über TCP/IP unter Verwendung der SphinxLib/LibGigE C++ Bibliotheken von Sensor-ToImage. Für die Bedienung des Systems und die Darstellung der aktuellen Messdaten soll eine Applikation mit Qt entwickelt werden.

  • Steuerung des Gerätes über Tasten (wie z.B. Start/Stop der Aufzeich-nung)
  • Einstellbare Optionen über eine Menüstruktur
  • Replay Funktion (Anzeige aufgezeichneter Videos)
  • weitgehende Flexibilität bzgl. Funktionsumfang und Sprache für den internationalen Markt
  • Die Entwicklung erfolgt mit Qt für Embedded-Systems


Kenntnisse:

Xilinx SoC, Qt 5.x, Embedded Linux, Sphinx SDK, LibGigE, Ubuntu, CAN Lauterbach ICD, Git


2016-Q1 - heute: Entwicklung der Basis-Software für ein Sicherheits-Schaltersystem


Kunde: NeEns GmbH


Aufgaben:

Das Steuergerät für die neue Sicherheits-Schalter Serie der Firma Euchner ba-siert auf einem ARM Cortex-A7 Controller (Broadcom). Als Betriebssystem ist Embedded-Linux (Yocto) vorgesehen. Die Aufgaben umfassen zunächst die grundlegende Softwarekonfiguration.

  • Anpassungen von BSP und Bootloader (U-Boot).
  • Erstellung von Boot- und Updatekonzepten.
  • Konfiguration und Erstellung des Linux-Kernels.
  • Optimierung und Anpassung von Gerätetreibern (Device Driver).
  • Optimierung der Tool-Chain


Kenntnisse:

Embedded Linux (Yocto), ARM Cortex-A7, Eclipse, GCC, BitBake


2015-Q4 - heute: Masterprozessor zum Anschluss mehrerer Encoder als Slave


Kunde: Eigenentwicklung


Aufgaben:

Prozessorboard zum Anschluss von bis zu 5 Drehwinkelgebern (position enco-der) als Slave. Anbindung an Industrie-Feldbus

  • Die neue Generation Drehwinkelgeber (Encoder) der Firma Hengstler besitzen eine S4W (Save4Wire) Schnittstelle. Dies ist eine Entwicklung der Firma Hengst-ler auf Basis von RS485. Zur Anbindung an die in der Industrie verbreiteten Feldbussysteme ist deshalb für jeden Encoder ein entsprechender Umsetzer erforderlich.
  • Mit dem zu entwickelnden Prozessorboard ist es möglich bis zu 5 Encoder zu-sammen zentral angeschlossen und in Feldbussysteme integriert werden. Zu-sätzlich zu S4W, ist auch die Unterstützung von anderen, auf RS485 basieren-den Protokollen (wie z.B. PROFIBUS) und auch die BiSS-Schnittstelle vorgese-hen.
  • Auf der Feldbus Seite ist zunächst die Unterstützung von PROFIBUS, Ether-Net/IP und EtherCAT geplant.
  • Die Hardware basiert auf dem SAMA5D3 Xplained Board mit Atmel 32bit Microcontroller SAMA5D3 (ARM Cortex A5).
  • Als Betriebssystem wird Embedded-Linux (Yocto) verwendet, welches hierfür entsprechend konfiguriert wurde


Kenntnisse:

Atmel Studio, ARM Cortex-A5, Yocto, PROFIBUS, Industrial Ethernet


2015-Q3 - heute: Firmware für Protokollumsetzer-Board von AquiTronic Sonden auf industrielle Feldbusse


Kunde: AquiTronic Umweltmesstechnik GmbH


Aufgaben:

  • Die digitalen Hydrometrie-Messsonden/Datenlogger der Firma AquiTronic verfü-gen über eine RS485 Schnittstelle. Für den Datenaustausch mit den Sonden wird ein spezielles firmeneigenes Protokoll verwendet. Der Einsatz der Sonden in stationäre Anlagen (Kläranlagen, Wasserwerke, Mineralbrunnen, usw.) erfordert zunehmend eine Integration in dort vorhandene Feldbussysteme.
  • Ziel der Entwicklung war ein möglichst universell einsetzbarer Protokollkonverter, der es ermöglicht Daten der Messsonden in RS485 basierende (PROFIBUS) und Ethernet basierende (PROFINET, EtherCAT) Feldbusse einzuspeisen
  • Die Hardware basiert auf dem BeagleBone Referenzdesign mit einem TI Sitara AM3358 (ARM Cortex A8) Prozessor. Betriebssystem ist Yocto Linux, Program-miersprache C, Compiler ist GCC.
  • Zunächst wurde eine vorhandene Funktionsbibliothek für die Kommunikation mit den AquiTronic Sonden weiterentwickelt. Diese beinhaltet auch das Anlegen pas-sender Datenstrukturen zum temporären Ablegen der Sondendaten und gespei-cherter Messwerte aus der Sonde. Außerdem die Umsetzung der erforderlichen Befehlsabläufe zum Auslesen der Daten und die Aufbereitung der Messdaten.
  • Zunächst ist eine Anbindung an den PROFIBUS geplant. Anschließend die Ethernet basierenden Feldbusse (PROFINET, EtherCAT


Kenntnisse:

GCC, Eclipse Embedded Linux (Yocto), BitBake


2020-Q2 - 2020-Q3: Unit-Testing mit Razorcat TESSY


Kunde: Hengstler GmbH


Aufgaben:

Das Projekt ACURO AD38s befindet sich in einer fortgeschrittenen Entwick-lungsphase. Der Code ist in C geschrieben. Zur Sicherung der Code-Qualität sollen Code-Reviews und Unit-Tests durchgeführt werden.

  • Durchführung von Code-Reviews.
  • Durchführung von Unit-Tests mit TESSY 4.

Kenntnisse:

Unit-Testing, C, Tessy


2019-Q1 - 2019-Q2: Optimierung der Kommunikation über SPI zwischen einem NetX und einem IO-Controller


Kunde: Belden Deutschland GmbH


Aufgaben:

Die Schnittstellenmodule des Kunden (Serie LioN-P) verfügen über zwei Control-ler. Der NetX-51B der Firma Hilscher ist für die Anbindung an verschiedene Feldbusse (Profinet, EtherCAT, Ethernet/IP) und die eigentliche Funktionalität (Datenaustausch, Konfiguration, usw.) zuständig. Ein ARM STM32 übernimmt die Ansteuerung der digitalen Ein- und/oder Ausgänge. Beide Controller kommu-nizieren über SPI miteinander. Die Firmware des NetX verwendet das Hilscher-eigene Betriebssystem rcX und dessen Task Modell (TLR). Im Rahmen dieses Projekts wurde die Kommunikation zwischen NetX und STM32 optimiert, im Hinblick auf:

  • weniger Ressourcenverbrauch
  • höhere Übertragungsraten
  • Modularer Aufbau
  • Unterstützung anderer Übertragungswege außer SPI


Kenntnisse:

NetX, Hilscher Tools, Hilscher rcX, TLR, STM32, SPI, GNU C Compiler und Tools, Lauterbach ICD, SVN, Gira


2019-Q1 - 2019-Q1: Unit-Testing mit Google Test Framework


Kunde: Hengstler GmbH


Aufgaben:

Das Projekt ACURO AD38ex befindet sich in einer frühen Entwicklungsphase. Aufgrund geänderter Anforderungen und dem Wechsel auf die Programmier-sprache C++, soll ein geeignetes Testframework gefunden werden. In der engeren Auswahl stehen:

  • Tessy
  • gTest


Schwerpunkt gTest

  • eine geeignete Testumgebung aufgesetzt werden.
  • Die Instrumentierung an einigen repräsentativen Beispielfunktionen durchgeführt werden.
  • Die Testläufe zu starten und die Ergebnisse auszuwerten.
  • Die Konfiguration, Möglichleiten, Abläufe, usw. dokumentiert und dem Entwicklungsteam vorstellt werden.


Kenntnisse:

Google Test Framework, C++, gTest, Eclipse


2018-Q1 - 2018-Q4: Entwicklung einer Windows Applikation zur Simulation einer SPS


Kunde: Carl Zeiss SMT GmbH


Aufgaben:

Die AIMS? EUV Maschine ist eine hochkomplexe Messmaschine, welche seit 2009 von der Firma ZEISS SMT GmbH am Standort Oberkochen entwickelt wird. Die Maschine wird von den weltweit führenden Halbleiterherstellern in Zukunft eingesetzt werden, um die Herstellung der neuesten Generation von Mikrochips zu ermöglichen. Dazu untersucht sie die für den Fotolithografie-Prozess benötig-ten Fotomasken mit Hilfe von extrem ultravioletten Licht (EUV) auf Defekte. Da dies aufgrund der kurzen Wellenlänge des EUV Lichts von 13,5 Nanometern nur unter Vakuum und unter Zuhilfenahme verschiedener Gase geschehen kann, benötigt die Maschine eine komplexe Vakuum- und Prozessgasinfrastruktur. Die Steuerung der Maschine erfolgt über eine SPS (Siemens S7).

  • Entwicklung einer Windows Applikation zur Simulation einer SPS, welche Teil einer komplexe Prüfmaschine für Fotomasken in der Chipherstellung ist
  • Entwicklung eines Simulationsprogramms für die SPS der Maschinensteuerung.
  • Nachbildung der wichtigsten Abläufe, wie z.B. Schrittketten, in der Simulation.
  • Nachbildung der Kommunikationsabläufe.
  • Visualisierung wichtiger Statusdaten und Systemparameter.
  • Möglichkeit zur Manipulation von Daten durch den Anwender für Test-zwecke.
  • Die Entwicklung erfolgte mit Visual-C# unter MS Windows.


Kenntnisse:

Visual C#, Siemens S7


2017-Q3 - 2018-Q2: Firmware Entwicklung für ein Steuerungssystem in C unter VxWorks


Kunde: Bachmann elektronic GmbH


Aufgaben:

Das Steuerungssystem der Firma Bachmann bietet den Kunden zahlreiche Ein-/Ausgabe-Module, Feldbusanbindungen und auch kundenspezifische Spezialmo-dule. Die Programmierung erfolgt mit Hilfe einer leistungsstarken IDE in C, C++ oder gängigen Sprachen aus dem Automatisierungsbereich. Durch die zukünftige Verwendung von Multicore Prozessoren soll das System noch leistungsfähiger gemacht werden. Im Rahmen dieses Projekts ging es u.a. darum die Firmware für den Einsatz auf Multicore Prozessoren anzupassen.

  • Überarbeitung von Device-Treibern von Ein-/Ausgabe Modulen.
  • IO-Tests und Performancemessung unter verschiedenen Core Konfigurationen
  • Treiber für ModBus Anbindung überarbeiten.
  • Unit-Tests für IEC 60870 Fernwirk-Protokoll anpassen

Kenntnisse:

C, Bachmann SolutionCenter, VxWorks 5 + 7, ModBus, IEC 60870


2017-Q1 - 2017-Q4: Entwicklung der System-Software für eine komplexe Messmaschine


Kunde: Carl Zeiss SMT GmbH


Aufgaben:

Die AIMS? EUV Maschine ist eine hochkomplexe Messmaschine, welche seit 2009 von der Firma ZEISS SMT GmbH am Standort Oberkochen entwickelt wird. Die Maschine wird von den weltweit führenden Halbleiterherstellern in Zukunft eingesetzt werden, um die Herstellung der neuesten Generation von Mikrochips zu ermöglichen. Dazu untersucht sie die für den Fotolithografie-Prozess benötig-ten Fotomasken mit Hilfe von extrem ultravioletten Licht (EUV) auf Defekte. Da dies aufgrund der kurzen Wellenlänge des EUV Lichts von 13,5 Nanometern nur unter Vakuum und unter Zuhilfenahme verschiedener Gase geschehen kann, benötigt die Maschine eine komplexe Vakuum- und Prozessgasinfrastruktur.

  • Unterstützung bei der Entwicklung der System-Software für eine komplexe Messmaschine für Fotomasken in der Chipherstellung
  • Entwicklung / Erweiterung der Schnittstelle zwischen der SPS und dem Master-Controller für größere Datenmengen.
  • Integration eines Datenmanagement-Moduls zur Bereitstellung relevanter Daten im Gesamtsystem.
  • Erstellen von Ablaufplänen mit Enterprise-Architect


Kenntnisse:

VxWorks Real-Time OS, WindRiver Workbench, Siemens S7, ACCON AGLink, Enterprise-Architect (EA), SVN


2016-Q4 - 2016-Q4: Entwicklung von Software für ein Feldbusmodul für die Realisierung sicherer Digitalausgänge nach SIL


Kunde: Murr Elektronik GmbH


Aufgaben:

Das PLASMA Feldbusmodul ist für raue Umgebungsbedingungen bestimmt. Durch die Schutzart IP67 eignet sich das Modul besonders für den Einsatz direkt in der Nähe des Prozesses. Dort stellt das Modul, über steckbare Leitungen, die Verbindung von Sensoren und Aktoren mit einer Steuerung her. Der Einsatz der Module erfolgt im Allgemeinen im Maschinenbau, Werkzeugma-schinen, Bearbeitungszentren, Umformtechnik, Blechbearbeitung, Gießereianla-gen, Transfer und Fördertechnik sowie in Schweiß- und Roboterapplikationen. Das Modul ist besonders geeignet für sicherheitsrelevanten Applikationen (SIS ? Safety Instrumented System), bei denen bis zu SIL3 und 1oo2 Hardwarearchi-tektur gefordert sind. Im Rahmen dieses Projekts ist ein Softwaremodul für 2 bis 4 sichere digitale Ausgänge zu realisieren.

  • Erstellen von Ablaufplänen mit Enterprise-Architect
  • Abgesicherte Kommunikation zwischen Controllern über SPI und UART.
  • Gegenseitige Absicherung und Überwachung (redundante CPU?s)
  • Ansteuerung der Ausgangsschalter.
  • Rücklesen von charakteristischen Messwerten zur Verifikation.
  • Funktionstests im laufenden Betrieb. Zyklische Abschalttests


Kenntnisse:

STM32 Prozessoren, Keil C Compiler, Lauterbach ICD, SVN, Enterprise-Architect, EN 61508


2016-Q2 - 2016-Q4: Entwicklung der System-Software für einen Automotive Ladeadapter


Kunde: Bebro GmbH


Aufgaben:

Bei dem System geht es um einen intelligenten Ladeadapter für Hybrid- bzw. Elektrofahrzeuge. Endkunde ist ein namhafter deutscher Automobilhersteller. Das Design des Steuergerätes basiert auf dem iMX6 Dual-Core Cortex-A9 + Cortex-M4 Prozessor von NXP. Als Betriebssystem dient Yocto Linux.

  • Konfiguration, Optimierung des Linux Kernels (Yocto).
  • Entwicklung, Anpassung und Integration von Gerätetreibern.
  • Entwicklung eines Performance Monitors mit Qt.
  • Integration von Tools/Funktionenaus dem Themenbereich:
    • Watchdog, Perfor-mancemessung, W-LAN, DHCP, EEPROM, Connection-Manager, System-Updates, usw.
  • Integration des ConnMan Connection Managers. Managementaufgaben als Schnittstelle zwischen Entwicklung und Fertigung wie z.B. Koordination, Festlegung der Abläufe, Bereitstellung von Daten, usw.


Kenntnisse:

Embedded Linux (Yocto), ARM Cortex-A9 / M4, Git / SVN, Eclipse, Qt, CodeBeamer, ConnMan


2015-Q4 - 2015-Q4: Überwachung von rutschenden Kupplungen in Lastschaltgetriebe zur Vermei-dung von Getriebeschäden


Kunde:


Aufgaben:

  • Ziele der Rutschüberwachung sind:
    • Verhinderung von Beschädigungen an den Kupplungen.
    • Verhinderung unerwartetes Anfahren nach durchrutschenden Kupplungen.
    • Vermeidung von Fehlbedienungen durch Warnmeldung.

  • Um die Belastung der Kupplung im Inchbetrieb zu bestimmen wird die Reibleis-tung über der schleifenden Kupplung integriert. Nach Erreichen eines ersten Grenzwertes erfolgt eine Warnmeldung. Bei weiterer Zunahme eine Fehlermel-dung und ein Eingriff in die Motorsteuerung. Die aktuelle Reibleistung, die in die Kupplung eingeht, hängt von folgenden Größen ab:
    • Differenzdrehzahl über der Kupplung
    • Drehmoment das die Kupplung überträgt
    • Bauartbedingte Parameter der Kupplung
  • Wird eine vollständig geöffnete oder geschlossene Kupplung erkannt, so erfolgt eine Regeneration (Abkühlphase), die abhängig von der zuvor eingebrachten Reibarbeit unterschiedlich lange andauern kann.
  • Der erste Schritt war die Bereitstellung und Aufbereitung der für die Berechnung erforderlichen Größen (Drehzahlen, Kupplungsgeometrie usw.). Anschließend wurden die Algorithmen zur Berechnung der Reibleistung für jede Kupplung und deren zyklischen Integration implementiert. Eine besondere Schwierigkeit war dabei, dass aus Performancegründen keine Fließkommazahlen verwendet wer-den konnten. Das Zusammenspiel von Rutschen und Abkühlen bzw. der Über-wachung der entsprechenden Randbedingungen erfolgte in Form eines Zu-standsautomaten.
  • Erste Tests erfolgten in einer reinen Simulationsumgebung (SIL). Im fortgeschrit-tenen Stadium am HIL Prüfstand bzw. im realen Fahrzeug. Gemäß dem V-Modell wurden alle Prozessschritte in ClearQuest lückenlos do-kumentiert. Die Dokumentation wurde mit Doors erstellt.


Kenntnisse:

Embedded-C, Visual Studio, Lauterbach Debugger, Doors, ClearCase, ClearQuest, Vector CANoe, Vector CANalyzer


2015-Q1 - 2015-Q2: Kommunikations-Schnittstelle für digitale Messsonden über GPRS Modem zu FTP Server


Kunde: AquiTronic Umweltmesstechnik GmbH


Aufgaben:

  • Die digitalen Hydrometrie-Messsonden/Datenlogger der Firma AquiTronic verfü-gen über eine RS485 Schnittstelle. Für den Datenaustausch mit den Sonden wird ein spezielles firmeneigenes Protokoll verwendet.
  • Ziel der Entwicklung war es eine Fernabfrage der Sonden über ein GPRS Mo-dem zu ermöglichen. Dabei ging es zum einen um die Anzeige aktueller Mess-werte, zum anderen um die Konfiguration des Datenloggers, sowie das Auslesen gespeicherter Messdaten und den regelmäßigen automatischer Upload von Messdaten auf einen FTP Server.
  • Das von AquiTronic entwickelte Hardwaremodul basiert auf der OEM Modem Engine Q268x von Sierra-Wireless. Die Umsetzung erfolgte mit der Entwicklungsumgebung von Sierra-Wireless unter Verwendung der Open-AT Bibliothek (Programmiersprache C).
  • Die Umsetzung erfolgte in zwei Stufen.
  • Zunächst wurde eine Funktionsbibliothek für die Kommunikation mit den AquiT-ronic Sonden entwickelt. Diese beinhaltet auch das Anlegen passender Datenstrukturen zum temporären Ablegen der Sondendaten und gespeicherter Mess-werte aus der Sonde. Außerdem die Umsetzung der erforderlichen Befehlsabläufe zum Auslesen der Daten und die Aufbereitung der Messdaten (z.B. Umwandlung Rohdaten in ASCII).
  • Die zweite Stufe umfasste die Kontaktaufnahme zum FTP Server (mit Authentifizierung), das Ablegen der Messdaten auf dem Server, sowie die Entgegennahme von Konfigurationsanweisungen vom Server.


Kenntnisse:

Embedded C, Sierra-Wireless Airline Q268x, Open-AT, Developer Studio


2015-Q1 - 2015-Q2: Ansteuerung der Messgeräte, Kommunikation mit Anlagen-Steuerung (SPS)


Kunde: Robert Bosch GmbH


Aufgaben:

Wafer werden in zwei Kassetten der Anlage zugefügt, wobei jede Kassette bis zu 9 Wafer trägt. Jeder Wafer kann dabei mehrere Hundert Sensoren tragen. Ein Roboter entnimmt den Wafer und legt ihn auf eine Bearbeitungsträgerplatte (Chuck), die den Wafer hält und temperiert, ab. Zeitgleich erfolgt vom Leitsystem ein Datenaustausch mit den Daten der Wafer. Dabei werden für jeden Wafer in einem Verzeichnis auf der Festplatte des Mess-rechners zwei Datenfiles abgelegt. Eine Datei enthält den Aufbau des Wafers u.a. mit Fehlstellen im Wafer, Positionsangaben der einzelnen Sensoren und weitere Grunddaten. Die andere Datei enthält Messungen aus vorlaufenden Messstationen welche im Folgenden Arbeitsprozess der Anlage für Verrechnun-gen verwendet werden. Im Verlauf der Bearbeitung werden Messdaten zu jedem einzelnen Sensor er-zeugt und zwischengespeichert sowie bewertet. Nach Bearbeitung des Wafers auf dem Chuck werden diese Einzelmessungen in die Dateien übernommen. Die Messung erfolgt dabei mittels einem Kontaktwerkzeug (Spinne) das bis zu vier Sensoren gleichzeitig kontaktieren kann. Diese Spinne wird von der SPS positioniert. Nach dem Ausrichten erfolgt ein Kommandoaustausch mit der SPS. Diese er-wartet nun vom Messrechner Positionsdaten zum Anfahren der ersten Position der Spinne. Der Messrechner sendet Positionierdaten und entsprechende Kom-mandos über ein Softwareinterface (TCP-IP Socket Kommunikation) an die SPS, die SPS positioniert und meldet die erfolgreiche Positionierung zurück. Bei auftre-tenden Fehlern bei der Sensorvermessung sendet der Messrechner ein Reini-gungs-kommando worauf beim nächsten Sensorwechsel die Spinne von der SPS auf ein Klebepad gesetzt wird und damit gereinigt wird und danach auf die gefor-derte Position zurückfährt. Die Anforderung der Reinigung soll dabei paramet-rierbar sein. Ebenso war ein Halt für eine Bedienerentscheidung parametrierbar vorzusehen. Nach dem Aufsetzten der Spinne erfolgt eine Vermessung gemäß einem Messprogramm welches Wafer-Typ-abhängig ist. Die Vermessung erfolgt dabei über eine zweite Ethernet-Verbindung über TCP-IP fähige Messgeräte. Der Messrechner übernimmt auch die Visualisierung und Teile der Bedienung des Systems. Diese beiden Funktionen unterteilen sich in:

  • Ansteuerung der Messgeräte, Kommunikation mit Anlagen-Steuerung (SPS), Grafische Benutzeroberfläche, Auswertung und Visualisierung der Messergebnisse
  • Visualisierung der Kassetten mit den Wafern mit Abbildung des Bearbei-tungsfortschritts und der voraussichtlichen Bearbeitungszeit der Kassette, sowie eine Fehlerstatistikdarstellung.
  • Visualisierung des aktuell in Bearbeitung befindlichen Wafers als Map, d.h. geografische Darstellung der einzelnen Sensoren ähnlich einer Matrixorien-tierten Landkarte.
  • Bedienung über virtuelle Tasten auf dem Touchscreen Monitor wobei der Tastendruck an die SPS als Kommando gesendet wird.


Funktional waren folgende Aufgaben zu erledigen:

  • Kommandoaustausch mit der SPS (Kontrollfunktion).
  • Datenaustausch mit der SPS (z.B. Positionsdaten).
  • Datenverwaltung (Einlesen der Datensätze und Speichern der geänderten Datensätze).
  • Auswertung der Prüfvorschriften und Ansteuerung der Messtechnik.
  • Aufbereitung und Darstellung der Messdaten.


weiteres:

Die Umsetzung erfolgte in C++ unter Verwendung der Klassenbibliothek Qt. Da zum Zeitpunkt der Softwareentwicklung weder die Anlage selbst, noch eine funktionierende SPS vorhanden war, mussten zu Beginn alle Anlagenfunktionen durch von uns entwickelte Hilfsprogramme simuliert werden.


Weitere besondere Herausforderungen waren:

  • Durch variable Wafer- und Sensorgrößen musste die grafische Darstellung skalierbar sein.
  • Das Abfangen aller möglichen Fehlerzustände und daraus folgende Aktionen.
  • Für das optimale Durchlaufen des Wafers musste ein selbstoptimierender Algorithmus entwickelt werden.
  • Softwaretechnische Berücksichtigung einer späteren Erweiterung der Anlage.
  • Das Fehlen grundlegender Informationen, wie z.B. Dateiformate.
  • Die Überschätzung der Möglichkeiten der SPS, was zahlreiche Anpassungen im Gesamtkonzept der Anlage erforderte.
  • Zahlreiche Änderungen der Anforderungen durch den Endkunden.


Kenntnisse:

TCP/IP Sockets, Multi-Threading, C++, Qt V5.4, QT-Creator


weitere Projekte gerne auf Anfrage

Aus- und Weiterbildung

Aus- und Weiterbildung

1995
Studium der Elektrotechnik, Fachrichtung Ingenieur-Informatik
Abschluss: Diplom Ingenieur 


Kompetenzen

Kompetenzen

Top-Skills

C, C++, Embedded Vector Tools V-Modell Agile Entwicklung DOORS Functional Safety Unit-Tests Tessy C C++ C#

Produkte / Standards / Erfahrungen / Methoden

Erfahrungen im Bereich

  • Embedded Systems
  • Systemprogrammierung
  • Entwicklung nach SIL, ASIL, PLe Standards
  • Unit-Tests, Testautomatisierung, Tessy (Razorcat)
  • Hardwarenahe Programmierung in C++ und C, Mikrocontroller
  • Lauterbach ICD (InCircuitDebugger) mit Trace32 Software
  • Konzeptionierung, Spezifikation, Programmierung, Testing, Support
  • Objektorientiertes Design und Programmierung
  • Ereignisgesteuerte Programmierung
  • GUI auf Windows
  • WEB Design
  • MFC, Borland VCL
  • Steuerungstechnik im Sondermaschinenbau
  • Software zur Verwaltung, Auswertung und Visualisierung von Messdaten
  • Digitale Bildverarbeitung
  • Internationalisierung (I18N) und Lokalisierung (L10N) von Software
  • Smart Plug-Ins
  • Gira
  • SVN, Git
  • ClearCase
  • ClearQuest
  • CanAlyzer
  • CanApe
  • Tessy

Betriebssysteme

Embedded Linux
Yocto
HPUX
gute Kenntnisse V 10.20, 11.x
OSEK Betriebssystem
RTOS (Real Time OS)
VxWorks, FreeRTOS
Unix
AIX, Linux
VxWorks
Versionen 5 und 7
Windows
gute Kenntnisse
Embedded Linux (Yocto, QNX), OSEK

Programmiersprachen

Assembler
ARM Controller, PIC
Basic
C
sehr gute Kenntnisse
C#
umfangreiche Projekterfahrung
C++
diverse embedded, Visual C++
Delphi
sehr gute Kenntnisse
HPGL, HP PCL
Imake, GNU-Make, Make-Maker etc...
Imake
Java
JavaScript
Pascal
Borland
Perl
PIC
Psion OPL
Qt
umfangreiche Projekterfahrung
Shell
TeX, LaTeX

Datenbanken

Access
Grundkenntnisse
BDE
gut
MS SQL Server
Grundkenntnisse
MySQL
Oracle
Grundkenntnisse
Paradox
Grundkenntnisse
SQL
Grundkenntnisse

Datenkommunikation

Bus
SPI, CAN, I2C, MOST, Flexray, BISS, RS485, PROFIBUS, Ethernet
Ethernet
Industrielles Ethernet (PROFINET, EtherCAT)
Fax
FDDI
Grundkenntnisse
Internet, Intranet
WWW, HTTP
ISDN
Novell
parallele Schnittstelle
Gerätetreiber programmiert
PC-Anywhere
Proprietäre Protokolle
zahlreiche Eigenentwicklungen
RS232
Gerätetreiber programmiert
TCP/IP
Windows Netzwerk

Hardware

Bus
CAN, Flexray, PROFIBUS, PROFINET, Sercos, EtherCat
CD-Writer / Brenner
Debugger
Lauterbach ICD und andere
Digitale Signalprozessoren
Drucker
Echtzeitsysteme
embedded Systeme
Hardware entwickelt
Messgeräte
HP
PA-RISC Workstations, PC
Messgeräte
Oszilloskope und alle Standardmessgeräte bei Hardwareentwicklung
Mikrocontroller
STM32, NetX (Hilscher) TI AM335 Sitara Cortex A8, SAMA5D3 Cortex-A5, MPC5000 Serie (PowerPC), Hitachi SH7709, ST10, 8051 und Derivate (insb. DALLAS), PIC (versch. Ausführungen), HC11, 8096
Modem
Analog, ISDN, D-Netz, TAPI
Motorola
68000, HC11
PC
umfangreiche Kenntnisse
Scanner
Sensoren
Druck, Temperatur, Leitfähigkeit, pH-Wert und viele andere
SPS
Beckhoff SPS, Siemens S7
Steuer und Regelsysteme
Bachmann
SUN
Workstations

Berechnung / Simulation / Versuch / Validierung

dSPACE
Vector Tools (CanAlyzer, CanOe, Candela usw.)

Branchen

Branchen

  • Industrie 4.0
  • Automotiv
  • Software- und Hardwarehersteller
  • Umweltmesstechnik
  • Automatisierung
  • Anlagentechnik
  • Messtechnik
  • Maschinenbau

Einsatzorte

Einsatzorte

Tübingen (+100km) Titisee-Neustadt (+75km) München (+100km) Mindelheim (+100km) Erlangen (+100km) Deggendorf (+75km)

bevorzugt Home-Office !!!

ansonsten südliches BaWü, Bodensee, Allgäu, Vorarlberg

möglich

Projekte

Projekte

2019-Q4 - heute: Entwicklung der Applikation für ein Video-Nachfahrsystem mit Qt


Kunde: Haberl Electronic GmbH & Co.KG


Aufgaben:
Die Hardware für ein neues Video-Nachfahrsystem des Kunden basiert auf ei-nem Xilinx SoC. Als Betriebsystem kommt Embedded-Linux zum Einsatz, als Bootloader U-Boot. Bediengeräte sind über CAN angeschlossen. Zwei Kameras werden über Ethernet angeschlossen. Die Bilder der Kameras werden über ein FPGA aufbereitet und gespeichert. Die Ansteuerung der Kameras erfolgt über TCP/IP unter Verwendung der SphinxLib/LibGigE C++ Bibliotheken von Sensor-ToImage. Für die Bedienung des Systems und die Darstellung der aktuellen Messdaten soll eine Applikation mit Qt entwickelt werden.

  • Steuerung des Gerätes über Tasten (wie z.B. Start/Stop der Aufzeich-nung)
  • Einstellbare Optionen über eine Menüstruktur
  • Replay Funktion (Anzeige aufgezeichneter Videos)
  • weitgehende Flexibilität bzgl. Funktionsumfang und Sprache für den internationalen Markt
  • Die Entwicklung erfolgt mit Qt für Embedded-Systems


Kenntnisse:

Xilinx SoC, Qt 5.x, Embedded Linux, Sphinx SDK, LibGigE, Ubuntu, CAN Lauterbach ICD, Git


2016-Q1 - heute: Entwicklung der Basis-Software für ein Sicherheits-Schaltersystem


Kunde: NeEns GmbH


Aufgaben:

Das Steuergerät für die neue Sicherheits-Schalter Serie der Firma Euchner ba-siert auf einem ARM Cortex-A7 Controller (Broadcom). Als Betriebssystem ist Embedded-Linux (Yocto) vorgesehen. Die Aufgaben umfassen zunächst die grundlegende Softwarekonfiguration.

  • Anpassungen von BSP und Bootloader (U-Boot).
  • Erstellung von Boot- und Updatekonzepten.
  • Konfiguration und Erstellung des Linux-Kernels.
  • Optimierung und Anpassung von Gerätetreibern (Device Driver).
  • Optimierung der Tool-Chain


Kenntnisse:

Embedded Linux (Yocto), ARM Cortex-A7, Eclipse, GCC, BitBake


2015-Q4 - heute: Masterprozessor zum Anschluss mehrerer Encoder als Slave


Kunde: Eigenentwicklung


Aufgaben:

Prozessorboard zum Anschluss von bis zu 5 Drehwinkelgebern (position enco-der) als Slave. Anbindung an Industrie-Feldbus

  • Die neue Generation Drehwinkelgeber (Encoder) der Firma Hengstler besitzen eine S4W (Save4Wire) Schnittstelle. Dies ist eine Entwicklung der Firma Hengst-ler auf Basis von RS485. Zur Anbindung an die in der Industrie verbreiteten Feldbussysteme ist deshalb für jeden Encoder ein entsprechender Umsetzer erforderlich.
  • Mit dem zu entwickelnden Prozessorboard ist es möglich bis zu 5 Encoder zu-sammen zentral angeschlossen und in Feldbussysteme integriert werden. Zu-sätzlich zu S4W, ist auch die Unterstützung von anderen, auf RS485 basieren-den Protokollen (wie z.B. PROFIBUS) und auch die BiSS-Schnittstelle vorgese-hen.
  • Auf der Feldbus Seite ist zunächst die Unterstützung von PROFIBUS, Ether-Net/IP und EtherCAT geplant.
  • Die Hardware basiert auf dem SAMA5D3 Xplained Board mit Atmel 32bit Microcontroller SAMA5D3 (ARM Cortex A5).
  • Als Betriebssystem wird Embedded-Linux (Yocto) verwendet, welches hierfür entsprechend konfiguriert wurde


Kenntnisse:

Atmel Studio, ARM Cortex-A5, Yocto, PROFIBUS, Industrial Ethernet


2015-Q3 - heute: Firmware für Protokollumsetzer-Board von AquiTronic Sonden auf industrielle Feldbusse


Kunde: AquiTronic Umweltmesstechnik GmbH


Aufgaben:

  • Die digitalen Hydrometrie-Messsonden/Datenlogger der Firma AquiTronic verfü-gen über eine RS485 Schnittstelle. Für den Datenaustausch mit den Sonden wird ein spezielles firmeneigenes Protokoll verwendet. Der Einsatz der Sonden in stationäre Anlagen (Kläranlagen, Wasserwerke, Mineralbrunnen, usw.) erfordert zunehmend eine Integration in dort vorhandene Feldbussysteme.
  • Ziel der Entwicklung war ein möglichst universell einsetzbarer Protokollkonverter, der es ermöglicht Daten der Messsonden in RS485 basierende (PROFIBUS) und Ethernet basierende (PROFINET, EtherCAT) Feldbusse einzuspeisen
  • Die Hardware basiert auf dem BeagleBone Referenzdesign mit einem TI Sitara AM3358 (ARM Cortex A8) Prozessor. Betriebssystem ist Yocto Linux, Program-miersprache C, Compiler ist GCC.
  • Zunächst wurde eine vorhandene Funktionsbibliothek für die Kommunikation mit den AquiTronic Sonden weiterentwickelt. Diese beinhaltet auch das Anlegen pas-sender Datenstrukturen zum temporären Ablegen der Sondendaten und gespei-cherter Messwerte aus der Sonde. Außerdem die Umsetzung der erforderlichen Befehlsabläufe zum Auslesen der Daten und die Aufbereitung der Messdaten.
  • Zunächst ist eine Anbindung an den PROFIBUS geplant. Anschließend die Ethernet basierenden Feldbusse (PROFINET, EtherCAT


Kenntnisse:

GCC, Eclipse Embedded Linux (Yocto), BitBake


2020-Q2 - 2020-Q3: Unit-Testing mit Razorcat TESSY


Kunde: Hengstler GmbH


Aufgaben:

Das Projekt ACURO AD38s befindet sich in einer fortgeschrittenen Entwick-lungsphase. Der Code ist in C geschrieben. Zur Sicherung der Code-Qualität sollen Code-Reviews und Unit-Tests durchgeführt werden.

  • Durchführung von Code-Reviews.
  • Durchführung von Unit-Tests mit TESSY 4.

Kenntnisse:

Unit-Testing, C, Tessy


2019-Q1 - 2019-Q2: Optimierung der Kommunikation über SPI zwischen einem NetX und einem IO-Controller


Kunde: Belden Deutschland GmbH


Aufgaben:

Die Schnittstellenmodule des Kunden (Serie LioN-P) verfügen über zwei Control-ler. Der NetX-51B der Firma Hilscher ist für die Anbindung an verschiedene Feldbusse (Profinet, EtherCAT, Ethernet/IP) und die eigentliche Funktionalität (Datenaustausch, Konfiguration, usw.) zuständig. Ein ARM STM32 übernimmt die Ansteuerung der digitalen Ein- und/oder Ausgänge. Beide Controller kommu-nizieren über SPI miteinander. Die Firmware des NetX verwendet das Hilscher-eigene Betriebssystem rcX und dessen Task Modell (TLR). Im Rahmen dieses Projekts wurde die Kommunikation zwischen NetX und STM32 optimiert, im Hinblick auf:

  • weniger Ressourcenverbrauch
  • höhere Übertragungsraten
  • Modularer Aufbau
  • Unterstützung anderer Übertragungswege außer SPI


Kenntnisse:

NetX, Hilscher Tools, Hilscher rcX, TLR, STM32, SPI, GNU C Compiler und Tools, Lauterbach ICD, SVN, Gira


2019-Q1 - 2019-Q1: Unit-Testing mit Google Test Framework


Kunde: Hengstler GmbH


Aufgaben:

Das Projekt ACURO AD38ex befindet sich in einer frühen Entwicklungsphase. Aufgrund geänderter Anforderungen und dem Wechsel auf die Programmier-sprache C++, soll ein geeignetes Testframework gefunden werden. In der engeren Auswahl stehen:

  • Tessy
  • gTest


Schwerpunkt gTest

  • eine geeignete Testumgebung aufgesetzt werden.
  • Die Instrumentierung an einigen repräsentativen Beispielfunktionen durchgeführt werden.
  • Die Testläufe zu starten und die Ergebnisse auszuwerten.
  • Die Konfiguration, Möglichleiten, Abläufe, usw. dokumentiert und dem Entwicklungsteam vorstellt werden.


Kenntnisse:

Google Test Framework, C++, gTest, Eclipse


2018-Q1 - 2018-Q4: Entwicklung einer Windows Applikation zur Simulation einer SPS


Kunde: Carl Zeiss SMT GmbH


Aufgaben:

Die AIMS? EUV Maschine ist eine hochkomplexe Messmaschine, welche seit 2009 von der Firma ZEISS SMT GmbH am Standort Oberkochen entwickelt wird. Die Maschine wird von den weltweit führenden Halbleiterherstellern in Zukunft eingesetzt werden, um die Herstellung der neuesten Generation von Mikrochips zu ermöglichen. Dazu untersucht sie die für den Fotolithografie-Prozess benötig-ten Fotomasken mit Hilfe von extrem ultravioletten Licht (EUV) auf Defekte. Da dies aufgrund der kurzen Wellenlänge des EUV Lichts von 13,5 Nanometern nur unter Vakuum und unter Zuhilfenahme verschiedener Gase geschehen kann, benötigt die Maschine eine komplexe Vakuum- und Prozessgasinfrastruktur. Die Steuerung der Maschine erfolgt über eine SPS (Siemens S7).

  • Entwicklung einer Windows Applikation zur Simulation einer SPS, welche Teil einer komplexe Prüfmaschine für Fotomasken in der Chipherstellung ist
  • Entwicklung eines Simulationsprogramms für die SPS der Maschinensteuerung.
  • Nachbildung der wichtigsten Abläufe, wie z.B. Schrittketten, in der Simulation.
  • Nachbildung der Kommunikationsabläufe.
  • Visualisierung wichtiger Statusdaten und Systemparameter.
  • Möglichkeit zur Manipulation von Daten durch den Anwender für Test-zwecke.
  • Die Entwicklung erfolgte mit Visual-C# unter MS Windows.


Kenntnisse:

Visual C#, Siemens S7


2017-Q3 - 2018-Q2: Firmware Entwicklung für ein Steuerungssystem in C unter VxWorks


Kunde: Bachmann elektronic GmbH


Aufgaben:

Das Steuerungssystem der Firma Bachmann bietet den Kunden zahlreiche Ein-/Ausgabe-Module, Feldbusanbindungen und auch kundenspezifische Spezialmo-dule. Die Programmierung erfolgt mit Hilfe einer leistungsstarken IDE in C, C++ oder gängigen Sprachen aus dem Automatisierungsbereich. Durch die zukünftige Verwendung von Multicore Prozessoren soll das System noch leistungsfähiger gemacht werden. Im Rahmen dieses Projekts ging es u.a. darum die Firmware für den Einsatz auf Multicore Prozessoren anzupassen.

  • Überarbeitung von Device-Treibern von Ein-/Ausgabe Modulen.
  • IO-Tests und Performancemessung unter verschiedenen Core Konfigurationen
  • Treiber für ModBus Anbindung überarbeiten.
  • Unit-Tests für IEC 60870 Fernwirk-Protokoll anpassen

Kenntnisse:

C, Bachmann SolutionCenter, VxWorks 5 + 7, ModBus, IEC 60870


2017-Q1 - 2017-Q4: Entwicklung der System-Software für eine komplexe Messmaschine


Kunde: Carl Zeiss SMT GmbH


Aufgaben:

Die AIMS? EUV Maschine ist eine hochkomplexe Messmaschine, welche seit 2009 von der Firma ZEISS SMT GmbH am Standort Oberkochen entwickelt wird. Die Maschine wird von den weltweit führenden Halbleiterherstellern in Zukunft eingesetzt werden, um die Herstellung der neuesten Generation von Mikrochips zu ermöglichen. Dazu untersucht sie die für den Fotolithografie-Prozess benötig-ten Fotomasken mit Hilfe von extrem ultravioletten Licht (EUV) auf Defekte. Da dies aufgrund der kurzen Wellenlänge des EUV Lichts von 13,5 Nanometern nur unter Vakuum und unter Zuhilfenahme verschiedener Gase geschehen kann, benötigt die Maschine eine komplexe Vakuum- und Prozessgasinfrastruktur.

  • Unterstützung bei der Entwicklung der System-Software für eine komplexe Messmaschine für Fotomasken in der Chipherstellung
  • Entwicklung / Erweiterung der Schnittstelle zwischen der SPS und dem Master-Controller für größere Datenmengen.
  • Integration eines Datenmanagement-Moduls zur Bereitstellung relevanter Daten im Gesamtsystem.
  • Erstellen von Ablaufplänen mit Enterprise-Architect


Kenntnisse:

VxWorks Real-Time OS, WindRiver Workbench, Siemens S7, ACCON AGLink, Enterprise-Architect (EA), SVN


2016-Q4 - 2016-Q4: Entwicklung von Software für ein Feldbusmodul für die Realisierung sicherer Digitalausgänge nach SIL


Kunde: Murr Elektronik GmbH


Aufgaben:

Das PLASMA Feldbusmodul ist für raue Umgebungsbedingungen bestimmt. Durch die Schutzart IP67 eignet sich das Modul besonders für den Einsatz direkt in der Nähe des Prozesses. Dort stellt das Modul, über steckbare Leitungen, die Verbindung von Sensoren und Aktoren mit einer Steuerung her. Der Einsatz der Module erfolgt im Allgemeinen im Maschinenbau, Werkzeugma-schinen, Bearbeitungszentren, Umformtechnik, Blechbearbeitung, Gießereianla-gen, Transfer und Fördertechnik sowie in Schweiß- und Roboterapplikationen. Das Modul ist besonders geeignet für sicherheitsrelevanten Applikationen (SIS ? Safety Instrumented System), bei denen bis zu SIL3 und 1oo2 Hardwarearchi-tektur gefordert sind. Im Rahmen dieses Projekts ist ein Softwaremodul für 2 bis 4 sichere digitale Ausgänge zu realisieren.

  • Erstellen von Ablaufplänen mit Enterprise-Architect
  • Abgesicherte Kommunikation zwischen Controllern über SPI und UART.
  • Gegenseitige Absicherung und Überwachung (redundante CPU?s)
  • Ansteuerung der Ausgangsschalter.
  • Rücklesen von charakteristischen Messwerten zur Verifikation.
  • Funktionstests im laufenden Betrieb. Zyklische Abschalttests


Kenntnisse:

STM32 Prozessoren, Keil C Compiler, Lauterbach ICD, SVN, Enterprise-Architect, EN 61508


2016-Q2 - 2016-Q4: Entwicklung der System-Software für einen Automotive Ladeadapter


Kunde: Bebro GmbH


Aufgaben:

Bei dem System geht es um einen intelligenten Ladeadapter für Hybrid- bzw. Elektrofahrzeuge. Endkunde ist ein namhafter deutscher Automobilhersteller. Das Design des Steuergerätes basiert auf dem iMX6 Dual-Core Cortex-A9 + Cortex-M4 Prozessor von NXP. Als Betriebssystem dient Yocto Linux.

  • Konfiguration, Optimierung des Linux Kernels (Yocto).
  • Entwicklung, Anpassung und Integration von Gerätetreibern.
  • Entwicklung eines Performance Monitors mit Qt.
  • Integration von Tools/Funktionenaus dem Themenbereich:
    • Watchdog, Perfor-mancemessung, W-LAN, DHCP, EEPROM, Connection-Manager, System-Updates, usw.
  • Integration des ConnMan Connection Managers. Managementaufgaben als Schnittstelle zwischen Entwicklung und Fertigung wie z.B. Koordination, Festlegung der Abläufe, Bereitstellung von Daten, usw.


Kenntnisse:

Embedded Linux (Yocto), ARM Cortex-A9 / M4, Git / SVN, Eclipse, Qt, CodeBeamer, ConnMan


2015-Q4 - 2015-Q4: Überwachung von rutschenden Kupplungen in Lastschaltgetriebe zur Vermei-dung von Getriebeschäden


Kunde:


Aufgaben:

  • Ziele der Rutschüberwachung sind:
    • Verhinderung von Beschädigungen an den Kupplungen.
    • Verhinderung unerwartetes Anfahren nach durchrutschenden Kupplungen.
    • Vermeidung von Fehlbedienungen durch Warnmeldung.

  • Um die Belastung der Kupplung im Inchbetrieb zu bestimmen wird die Reibleis-tung über der schleifenden Kupplung integriert. Nach Erreichen eines ersten Grenzwertes erfolgt eine Warnmeldung. Bei weiterer Zunahme eine Fehlermel-dung und ein Eingriff in die Motorsteuerung. Die aktuelle Reibleistung, die in die Kupplung eingeht, hängt von folgenden Größen ab:
    • Differenzdrehzahl über der Kupplung
    • Drehmoment das die Kupplung überträgt
    • Bauartbedingte Parameter der Kupplung
  • Wird eine vollständig geöffnete oder geschlossene Kupplung erkannt, so erfolgt eine Regeneration (Abkühlphase), die abhängig von der zuvor eingebrachten Reibarbeit unterschiedlich lange andauern kann.
  • Der erste Schritt war die Bereitstellung und Aufbereitung der für die Berechnung erforderlichen Größen (Drehzahlen, Kupplungsgeometrie usw.). Anschließend wurden die Algorithmen zur Berechnung der Reibleistung für jede Kupplung und deren zyklischen Integration implementiert. Eine besondere Schwierigkeit war dabei, dass aus Performancegründen keine Fließkommazahlen verwendet wer-den konnten. Das Zusammenspiel von Rutschen und Abkühlen bzw. der Über-wachung der entsprechenden Randbedingungen erfolgte in Form eines Zu-standsautomaten.
  • Erste Tests erfolgten in einer reinen Simulationsumgebung (SIL). Im fortgeschrit-tenen Stadium am HIL Prüfstand bzw. im realen Fahrzeug. Gemäß dem V-Modell wurden alle Prozessschritte in ClearQuest lückenlos do-kumentiert. Die Dokumentation wurde mit Doors erstellt.


Kenntnisse:

Embedded-C, Visual Studio, Lauterbach Debugger, Doors, ClearCase, ClearQuest, Vector CANoe, Vector CANalyzer


2015-Q1 - 2015-Q2: Kommunikations-Schnittstelle für digitale Messsonden über GPRS Modem zu FTP Server


Kunde: AquiTronic Umweltmesstechnik GmbH


Aufgaben:

  • Die digitalen Hydrometrie-Messsonden/Datenlogger der Firma AquiTronic verfü-gen über eine RS485 Schnittstelle. Für den Datenaustausch mit den Sonden wird ein spezielles firmeneigenes Protokoll verwendet.
  • Ziel der Entwicklung war es eine Fernabfrage der Sonden über ein GPRS Mo-dem zu ermöglichen. Dabei ging es zum einen um die Anzeige aktueller Mess-werte, zum anderen um die Konfiguration des Datenloggers, sowie das Auslesen gespeicherter Messdaten und den regelmäßigen automatischer Upload von Messdaten auf einen FTP Server.
  • Das von AquiTronic entwickelte Hardwaremodul basiert auf der OEM Modem Engine Q268x von Sierra-Wireless. Die Umsetzung erfolgte mit der Entwicklungsumgebung von Sierra-Wireless unter Verwendung der Open-AT Bibliothek (Programmiersprache C).
  • Die Umsetzung erfolgte in zwei Stufen.
  • Zunächst wurde eine Funktionsbibliothek für die Kommunikation mit den AquiT-ronic Sonden entwickelt. Diese beinhaltet auch das Anlegen passender Datenstrukturen zum temporären Ablegen der Sondendaten und gespeicherter Mess-werte aus der Sonde. Außerdem die Umsetzung der erforderlichen Befehlsabläufe zum Auslesen der Daten und die Aufbereitung der Messdaten (z.B. Umwandlung Rohdaten in ASCII).
  • Die zweite Stufe umfasste die Kontaktaufnahme zum FTP Server (mit Authentifizierung), das Ablegen der Messdaten auf dem Server, sowie die Entgegennahme von Konfigurationsanweisungen vom Server.


Kenntnisse:

Embedded C, Sierra-Wireless Airline Q268x, Open-AT, Developer Studio


2015-Q1 - 2015-Q2: Ansteuerung der Messgeräte, Kommunikation mit Anlagen-Steuerung (SPS)


Kunde: Robert Bosch GmbH


Aufgaben:

Wafer werden in zwei Kassetten der Anlage zugefügt, wobei jede Kassette bis zu 9 Wafer trägt. Jeder Wafer kann dabei mehrere Hundert Sensoren tragen. Ein Roboter entnimmt den Wafer und legt ihn auf eine Bearbeitungsträgerplatte (Chuck), die den Wafer hält und temperiert, ab. Zeitgleich erfolgt vom Leitsystem ein Datenaustausch mit den Daten der Wafer. Dabei werden für jeden Wafer in einem Verzeichnis auf der Festplatte des Mess-rechners zwei Datenfiles abgelegt. Eine Datei enthält den Aufbau des Wafers u.a. mit Fehlstellen im Wafer, Positionsangaben der einzelnen Sensoren und weitere Grunddaten. Die andere Datei enthält Messungen aus vorlaufenden Messstationen welche im Folgenden Arbeitsprozess der Anlage für Verrechnun-gen verwendet werden. Im Verlauf der Bearbeitung werden Messdaten zu jedem einzelnen Sensor er-zeugt und zwischengespeichert sowie bewertet. Nach Bearbeitung des Wafers auf dem Chuck werden diese Einzelmessungen in die Dateien übernommen. Die Messung erfolgt dabei mittels einem Kontaktwerkzeug (Spinne) das bis zu vier Sensoren gleichzeitig kontaktieren kann. Diese Spinne wird von der SPS positioniert. Nach dem Ausrichten erfolgt ein Kommandoaustausch mit der SPS. Diese er-wartet nun vom Messrechner Positionsdaten zum Anfahren der ersten Position der Spinne. Der Messrechner sendet Positionierdaten und entsprechende Kom-mandos über ein Softwareinterface (TCP-IP Socket Kommunikation) an die SPS, die SPS positioniert und meldet die erfolgreiche Positionierung zurück. Bei auftre-tenden Fehlern bei der Sensorvermessung sendet der Messrechner ein Reini-gungs-kommando worauf beim nächsten Sensorwechsel die Spinne von der SPS auf ein Klebepad gesetzt wird und damit gereinigt wird und danach auf die gefor-derte Position zurückfährt. Die Anforderung der Reinigung soll dabei paramet-rierbar sein. Ebenso war ein Halt für eine Bedienerentscheidung parametrierbar vorzusehen. Nach dem Aufsetzten der Spinne erfolgt eine Vermessung gemäß einem Messprogramm welches Wafer-Typ-abhängig ist. Die Vermessung erfolgt dabei über eine zweite Ethernet-Verbindung über TCP-IP fähige Messgeräte. Der Messrechner übernimmt auch die Visualisierung und Teile der Bedienung des Systems. Diese beiden Funktionen unterteilen sich in:

  • Ansteuerung der Messgeräte, Kommunikation mit Anlagen-Steuerung (SPS), Grafische Benutzeroberfläche, Auswertung und Visualisierung der Messergebnisse
  • Visualisierung der Kassetten mit den Wafern mit Abbildung des Bearbei-tungsfortschritts und der voraussichtlichen Bearbeitungszeit der Kassette, sowie eine Fehlerstatistikdarstellung.
  • Visualisierung des aktuell in Bearbeitung befindlichen Wafers als Map, d.h. geografische Darstellung der einzelnen Sensoren ähnlich einer Matrixorien-tierten Landkarte.
  • Bedienung über virtuelle Tasten auf dem Touchscreen Monitor wobei der Tastendruck an die SPS als Kommando gesendet wird.


Funktional waren folgende Aufgaben zu erledigen:

  • Kommandoaustausch mit der SPS (Kontrollfunktion).
  • Datenaustausch mit der SPS (z.B. Positionsdaten).
  • Datenverwaltung (Einlesen der Datensätze und Speichern der geänderten Datensätze).
  • Auswertung der Prüfvorschriften und Ansteuerung der Messtechnik.
  • Aufbereitung und Darstellung der Messdaten.


weiteres:

Die Umsetzung erfolgte in C++ unter Verwendung der Klassenbibliothek Qt. Da zum Zeitpunkt der Softwareentwicklung weder die Anlage selbst, noch eine funktionierende SPS vorhanden war, mussten zu Beginn alle Anlagenfunktionen durch von uns entwickelte Hilfsprogramme simuliert werden.


Weitere besondere Herausforderungen waren:

  • Durch variable Wafer- und Sensorgrößen musste die grafische Darstellung skalierbar sein.
  • Das Abfangen aller möglichen Fehlerzustände und daraus folgende Aktionen.
  • Für das optimale Durchlaufen des Wafers musste ein selbstoptimierender Algorithmus entwickelt werden.
  • Softwaretechnische Berücksichtigung einer späteren Erweiterung der Anlage.
  • Das Fehlen grundlegender Informationen, wie z.B. Dateiformate.
  • Die Überschätzung der Möglichkeiten der SPS, was zahlreiche Anpassungen im Gesamtkonzept der Anlage erforderte.
  • Zahlreiche Änderungen der Anforderungen durch den Endkunden.


Kenntnisse:

TCP/IP Sockets, Multi-Threading, C++, Qt V5.4, QT-Creator


weitere Projekte gerne auf Anfrage

Aus- und Weiterbildung

Aus- und Weiterbildung

1995
Studium der Elektrotechnik, Fachrichtung Ingenieur-Informatik
Abschluss: Diplom Ingenieur 


Kompetenzen

Kompetenzen

Top-Skills

C, C++, Embedded Vector Tools V-Modell Agile Entwicklung DOORS Functional Safety Unit-Tests Tessy C C++ C#

Produkte / Standards / Erfahrungen / Methoden

Erfahrungen im Bereich

  • Embedded Systems
  • Systemprogrammierung
  • Entwicklung nach SIL, ASIL, PLe Standards
  • Unit-Tests, Testautomatisierung, Tessy (Razorcat)
  • Hardwarenahe Programmierung in C++ und C, Mikrocontroller
  • Lauterbach ICD (InCircuitDebugger) mit Trace32 Software
  • Konzeptionierung, Spezifikation, Programmierung, Testing, Support
  • Objektorientiertes Design und Programmierung
  • Ereignisgesteuerte Programmierung
  • GUI auf Windows
  • WEB Design
  • MFC, Borland VCL
  • Steuerungstechnik im Sondermaschinenbau
  • Software zur Verwaltung, Auswertung und Visualisierung von Messdaten
  • Digitale Bildverarbeitung
  • Internationalisierung (I18N) und Lokalisierung (L10N) von Software
  • Smart Plug-Ins
  • Gira
  • SVN, Git
  • ClearCase
  • ClearQuest
  • CanAlyzer
  • CanApe
  • Tessy

Betriebssysteme

Embedded Linux
Yocto
HPUX
gute Kenntnisse V 10.20, 11.x
OSEK Betriebssystem
RTOS (Real Time OS)
VxWorks, FreeRTOS
Unix
AIX, Linux
VxWorks
Versionen 5 und 7
Windows
gute Kenntnisse
Embedded Linux (Yocto, QNX), OSEK

Programmiersprachen

Assembler
ARM Controller, PIC
Basic
C
sehr gute Kenntnisse
C#
umfangreiche Projekterfahrung
C++
diverse embedded, Visual C++
Delphi
sehr gute Kenntnisse
HPGL, HP PCL
Imake, GNU-Make, Make-Maker etc...
Imake
Java
JavaScript
Pascal
Borland
Perl
PIC
Psion OPL
Qt
umfangreiche Projekterfahrung
Shell
TeX, LaTeX

Datenbanken

Access
Grundkenntnisse
BDE
gut
MS SQL Server
Grundkenntnisse
MySQL
Oracle
Grundkenntnisse
Paradox
Grundkenntnisse
SQL
Grundkenntnisse

Datenkommunikation

Bus
SPI, CAN, I2C, MOST, Flexray, BISS, RS485, PROFIBUS, Ethernet
Ethernet
Industrielles Ethernet (PROFINET, EtherCAT)
Fax
FDDI
Grundkenntnisse
Internet, Intranet
WWW, HTTP
ISDN
Novell
parallele Schnittstelle
Gerätetreiber programmiert
PC-Anywhere
Proprietäre Protokolle
zahlreiche Eigenentwicklungen
RS232
Gerätetreiber programmiert
TCP/IP
Windows Netzwerk

Hardware

Bus
CAN, Flexray, PROFIBUS, PROFINET, Sercos, EtherCat
CD-Writer / Brenner
Debugger
Lauterbach ICD und andere
Digitale Signalprozessoren
Drucker
Echtzeitsysteme
embedded Systeme
Hardware entwickelt
Messgeräte
HP
PA-RISC Workstations, PC
Messgeräte
Oszilloskope und alle Standardmessgeräte bei Hardwareentwicklung
Mikrocontroller
STM32, NetX (Hilscher) TI AM335 Sitara Cortex A8, SAMA5D3 Cortex-A5, MPC5000 Serie (PowerPC), Hitachi SH7709, ST10, 8051 und Derivate (insb. DALLAS), PIC (versch. Ausführungen), HC11, 8096
Modem
Analog, ISDN, D-Netz, TAPI
Motorola
68000, HC11
PC
umfangreiche Kenntnisse
Scanner
Sensoren
Druck, Temperatur, Leitfähigkeit, pH-Wert und viele andere
SPS
Beckhoff SPS, Siemens S7
Steuer und Regelsysteme
Bachmann
SUN
Workstations

Berechnung / Simulation / Versuch / Validierung

dSPACE
Vector Tools (CanAlyzer, CanOe, Candela usw.)

Branchen

Branchen

  • Industrie 4.0
  • Automotiv
  • Software- und Hardwarehersteller
  • Umweltmesstechnik
  • Automatisierung
  • Anlagentechnik
  • Messtechnik
  • Maschinenbau

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.