Projektsbeschreibung:
Softwareentwicklung in C++ mit FreeRTOS als Realtime OS für die Steuerung eines x-Ray Scanners:
- Hardware-Review.
- Software-Architektur im Team festlegen.
- •Test-Skript in Bash und Python schreiben um das Zusammenspiel zwischen dem IO-Controller (NXP-MCU arm-basiert) und dem System-Controller (Intel-MCU).
- Einsetzen von Lightweight IP Libs für die Konfiguration der Ethernet-Schnittstelle und das Erzeugen von UDP- und TCP-Sockets auf IO-Controller.
- Benutzen von Tools wie Wireshark und tcpdump für das Debuggen.
Projektsbeschreibung:
Softwareentwicklung in C für die Torsteuerung:
- Code schreiben für die Steuerung eines Frequenzumrichters für das Betreiben von einphasigen oder dreiphasigen Wechselstrom-Motoren.
- Schreiben von Linker-Skript und Bootloader-Code für einen neuen Prototyp. Eingesetztes Toolchain armcc.
- Softwareerweiterung für den neuen Prototyp.
- Software-Erweiterung, um ein neues Libs (Fatfs) zu integrieren. Fatfs ist ein generic File-System-Modul für embedded Systeme.
Projektsbeschreibung:
Softwareentwicklung in C für die Steuerung von Anlagen für Zugspannungsmessung:
- Mit der Arduino IDE wurde die Software für das Arduino Uno Board mit dem Zusatzmodul Motor Shield erstellt.
- Mit einem Stepper-Motor wird die Positionierung des Ultraschallsensors angesteuert.
- Das Messergebnis auf einer LCD-Anzeige anzeigen. Die Anzeige wird per I2C gesteuert.
Projektsbeschreibung:
Softwareentwicklung in C und C++ für ein Dialysegerät. Die Entwicklung geschieht unter Windows anhand eines Docker Container (Ubuntu):
-
Die Software sollte unter anderem die Pumpen (Stepper-Motoren) steuern.
-
Programmiert wurden die MCU STM32H735ZGT von ST und MIMXRT1062DVL6B von NXP.
-
Als Kommunikationsbus kam FD-CAN zum Einsatz.
-
Hardware-Inbetriebnahme, Schnittstellenkonfiguration und Erstellung von Softwaremodulen.
-
Durchführung von Integrationstests an der Maschine.
Projektsbeschreibung:
Softwareentwicklung in C++ unter Linux für Testautomatisierung von Auto-Batterien:
- Entwicklung von Drivern für die Klimakammer.
- Ersetzen des Bootloaders durch GRUB2, um einen EFI-fähigen Bootloader zu erhalten.
Projektsbeschreibung:
Softwareentwicklung in C und C++ unter Windows für die Konfiguration und Steuerung von Anleger, Falteinheit und Ausleger:
- Softwareentwicklung anhand des redCase-Tools.
- Konfigurationsanalyse und Steuerung der Einheiten mit PCAN-View.
- Softwaretests an den Maschinen.
Projektsbeschreibung:
Softwareentwicklung in C++ (Bug Fixing und Softwareerweiterung) unter Linux für die Konfiguration von Wäge Zellen und Steuerung von Fließbändern:
- Softwareentwicklung auf der virtuellen Maschine (Ubuntu) im Host-PC mit Visual Studio als IDE.
- Remote Debugging der Software mit GDB.
- Analyse des Datenverkehrs zwischen Host und Target mit Wireshark.
- Softwaretests an der Fließbandnachbildung.
Projektsbeschreibung:
Softwareentwicklung (Bug Fixing und Softwareerweiterung) in C++ mit QT unter Embedded Linux für die Steuerung von Anzeigen in Bus und Bahn anhand des
Kommunikationsprotokolls IBIS:
-
Bugfix und Softwareerweiterung.
-
Remote Debugging der Software mit GDB.
-
Manuelle Tests der Kommunikation zwischen den Modulen mit Linux-Commands wie Netcat, tcpdump für interne Kommunikation und Wireshark für externe
Kommunikation.
-
Softwaretest mit der Fahrzeugnachbildung.
Projektsbeschreibung:
Embedded Softwareentwicklung mit Embedded Linux als Betriebssystem für einen Batterie-Ergreifer. Die zur Verfügung gestellte Hardware war das Iris-Board von Toradex mit dem Modul Colibri imx6:
- Konfiguration der Hardware anhand des Device-Tree.
- Initialisierung der Sensoren und Code schreiben für die Sensorfunktionen.
- Konfiguration der GPIO.
- Implementierung der State-Maschine.
- Software-Testen.
- Implementierung der State-Maschine.
- Software-Testen.
Projektsbeschreibung:
Projekt Mikrocontroller- und ASIC-Verifikation bei Robert Bosch GmbH:
Mikrocontroller-Verifikation:
- Inbetriebnahme der für den Test benötigten Hardware.
- Die für den Test benötigten Codes in C und C++ schreiben.
- Durchführung verschiedener Messungen wie Rds_On, Current injection und Leakage_current.
ASIC- Verifikation:
- Testen der Stromregelung der Kanäle.
- Testen des Verhaltens des Sync-Units.
- Rds_On von LS-Switches Messen.
Für die Messungen werden Test-Skripte erstellt, um die Tests zu automatisieren und die Messgeräte zu konfigurieren.
Projekt I:
Softwareimplementierung in C/C++ zum Testen der Funktionalität von einem Device. Für den Test wird eine Testbox mit zwei Platinen eingesetzt. Jede Platine enthält einen Mikrocontroller (Stellaris
LM3s9b81 und LM3s9b96), der mit DUT per CAN kommuniziert. Auf dem DUT sind zwei Mikrocontroller (iMx6 und SPC560b54).
Folgende Funktionalitäten wurden getestet:
- Wake-Up des DUTs durch CAN-Message und External Wake-Up.
- Bild- und Videoprocessing.
- GPS-Kommunikation.
- Overcurrent detection.
- CAN-Kommunikation zwischen den vier CAN-Schnittstellen auf dem DUT und den CAN-Schnittstellen in der Testbox sowie die UART-Kommunikation.
- Audio-processing.
Software für die zwei Mikrocontroller in der Testbox erstellen, die Platinen in Betrieb nehmen und Testdurchführung.
Projekt II:
Softwareimplementierung für das Power-Management-Chip PF0100 von iMx6. Die Registers im Chip PF0100 (PMIC) wurden per I2C mit den entsprechenden Werten
gefüllt, um die Output-Spannungen und Start-Up-Sequenzen von 6 Buck-Regulatoren, einem Boost-Regulator und 6 LDOs zu konfigurieren.
Softwareerstellung, sowie Messung der Output-Spannungen und Start-Up Sequenz mit dem Oszilloskop
Projekt I:
Prüfsystem (verzögerte Parkstelle) für Steuerung eines Wischermotors mit dem Mikrocontroller STM32 und Halbleiterschalter für Ströme bis 100 A:
- Schaltplanentwurf
- Layouterstellung
- Leiterplattenbestückung
- Code für Steuerung des Motors in C/C++ erstellt
- Steuergerät in Betrieb genommen
Projekt II:
Entwicklung eines Leistungsmesssystems für Memorydrähte. Synchrones Messen von 2 A/D-Kanälen mit 1 MHz Samplerate auf einem STM32 sowie Berechnung der mittleren Leistung und Filterung im gleichen
Zeitraster 1 μs.
Die berechnete Leistung wird an einen externen DAC geschickt. Wobei die Kommunikation zwischen dem Mikrocontroller und dem DA-IC anhand des SPI erfolgt.
- Schaltplanentwurf.
- Layouterstellung.
- Leiterplattenbestückung.
- Code für Berechnung der mittleren Leistung in C/C++ erstellt.
- Messsystem in Betrieb genommen.
Projekt III:
Dauerlauftest für Ventile mit SMA-Technologie. Dafür werden die Ventile bei einer Temperatur von -70 bis 80 Grad Celsius auf Funktion und Stromaufnahme getestet.
- Entwicklung von Prüfgeräten.
- Aufbau von Prüfgeräten.
- Code für die Ventilsteuerung in C/C++ erstellt.
- Test bei verschiedenen Temperaturen und mit unterschiedlichen Testdauern durchgeführt.
- Dokumentation des Dauerlaufes.
Projekt IV:
Implementierung einer FFT als PC-Konsolenanwendung. Die Berechnung der FFT erfolgte anhand des Algorithmus von Cooley und Tukey, um das Programm auf einen Mikrocontroller laufen zu lassen.
- Programm für Berechnung von der FFT in C erzeugt.
Projektsbeschreibung:
Realisierung eines digitalen Funktionsgenerators auf FPGA-Basis in VHDL mit dem Board DE 2 von Altera:
- Generieren der Signale nach dem direkten digitalen Syntheseverfahren in den Formen Sinus, Dreieck, Sägezahn und Rechteck
- Erstellung der Testbenches für die Module und Durchführung der Gate-level- und RTL-Simulation mit Modelsim.
- Umwandlung der erzeugten Signale in analoge Signale nach der Sigma-Delta-Modulation.