Mikrocontroller-Upgrade: Migration der Firmware von Assembly zu C

Projekt in Kürze: Wir haben die vom Kunden hergestellten Geräte auf einen neuen Mikrocontroller übertragen, um den abgekündigten zu ersetzen. Unsere Ingenieure wählten einen optimalen Mikrocontroller aus, passten die Firmware an und migrierten sie von Assembly zu C. Dadurch konnten wir mögliche Verzögerungen bei der Produktion von Berührungssensoren verhindern und die erforderliche Funktionalität beibehalten. 
über das Projekt

Kunde und Herausforderung

Ein führender Hersteller von Sensortechnologien für die industrielle Automatisierung und Steuerung stellte fest, dass ein Mikrocontroller von NXP nicht mehr hergestellt wird und daher nicht mehr in seinem Abstandssensor in Produktionsanlagen verwendet werden kann. Unser Kunde wandte sich an Promwad, um dieses Problem zu lösen und mögliche Produktionsausfälle und damit finanzielle Verluste und Reputationsrisiken zu vermeiden.

 

Wir begannen unsere Zusammenarbeit auf der Grundlage des Zeit- und Materialmodells und stellten ein Team von Fachleuten mit den richtigen Kompetenzen für die anstehende Aufgabe zusammen: 

  • ein Projektmanager;
  • zwei Softwareingenieure;
  • ein Softwarearchitekt. 

Das Promwad-Team arbeitete mit Experten auf Kundenseite zusammen: einem Hardware-Ingenieur und einem Firmware-Architekten. Um die Arbeiten zu synchronisieren und den Fortschritt zu besprechen, erstellten wir wöchentliche Berichte. 

Lösung

1. Auswahl des Mikrocontrollers

Das Projekt hatte zwei technische Hauptziele: 
  • Auswahl eines geeigneten Mikrocontrollers, der die spezifischen Anforderungen des Systems erfüllt.  
  • Umwandlung des vorhandenen Firmware-Codes von Assembler in C und Anpassung an einen neuen Mikrocontroller: Die Migration zu einer moderneren Entwicklungssprache ist notwendig, da Assembler als veraltet gilt.
Projektphasen
Bei der aktualisierten Software musste die vollständige Kompatibilität in Bezug auf die Anzahl der Impulse, die Signalperiode und das Tastverhältnis beibehalten werden. Außerdem sollten die Modi für die Objekterkennung beibehalten werden: Pump-in, Pump-out, Objektmodus, Hintergrundmodus und Annäherungsmodus. 

Das Projektteam experimentierte mit verschiedenen MCU-Modellen und entschied sich nach den Tests für die Hardwareplattform MC9S08SH8 von NXP. 

2. Softwareentwicklung

Die neue Firmware, die in C neu geschrieben wurde, musste die Anforderungen an RAM und physischen Speicher erfüllen, da C-Code in der Regel mehr Speicherplatz beansprucht als Assembler-Code. Es waren Optimierungen erforderlich, damit die Firmware effizient auf dem Mikrocontroller ausgeführt werden konnte: Wir haben die Möglichkeit konfiguriert, das ausführbare Programm in einen Flash-Speicherbereich zu verschieben, der zuvor nicht verwendet wurde. 

Die Promwad-Ingenieure verwendeten die Super-Loop-Architektur ohne Unterbrechungen mit fester Zykluszeit als Programmstruktur. Software mit einer solchen Struktur läuft kontinuierlich und führt dieselbe Reihe von Aufgaben in einer Schleife ohne Pausen aus, wodurch ein vorhersehbarer und konsistenter Systembetrieb gewährleistet wird. 

Projektherausforderungen
Während des Projekts stießen wir auf ein Problem – das Fehlen von Schaltplänen und Beschreibungen der Spezialgeräte des Kunden. Als Lösung erstellten wir ein Datenaustauschprotokoll und Konfigurationsprozesse, die den Datenaustausch zwischen den Systemen in Python aufzeichneten und analysierten, sodass das Prinzip der Interaktion deutlich wurde.  

Unsere Softwareingenieure entwickelten außerdem ein Simulationsprogramm für den Sensor, um das entwickelte Kommunikationsprotokoll zu testen und zu validieren und sicherzustellen, dass es korrekt mit dem Gerät funktioniert. 

Geschäftswert

Ergebnisse
Durch den Austausch des Mikrocontrollers und der Firmware des Entfernungssensors als Teil der Produktionsanlage konnte der Kunde den weiteren stabilen Betrieb seiner Anlage ohne Ausfallzeiten und ohne das Risiko finanzieller Verluste sicherstellen. 

 

Mehr zu unseren Leistungen im Bereich Firmware-Entwicklung

  • Firmware für einen Fahrradcomputer: Eine Fallstudie zur Entwicklung von Firmware für einen Fahrradcomputer und die AWS-Cloud-Infrastruktur für das Schweizer Start-up Jespr. 

Andere Fallstudien

Erzählen Sie uns von Ihrem Projekt

Alle übermittelten Informationen werden vertraulich behandelt.