Nehmen Sie an unseren 15000 IMP Followern teil

elektronik-news.com
Mouser News

Embedded-Evolution: Die Embedded-Industrie wächst weiter

Dieser kurze Blogbeitrag gibt einen umfassenden und ganzheitlichen Überblick über den Entwicklungsprozess von Embedded-Systemen und darüber, wie er sich ständig verändert und anpasst.

Embedded-Evolution: Die Embedded-Industrie wächst weiter

In den letzten dreißig Jahren hat sich die Embedded-Entwicklung erheblich verändert. Auch die Software-Toolchains, die für die Programmierung, Kompilierung und das Debugging verwendet werden, haben sich weiterentwickelt. Aufgrund der immer ausgefeilteren und hochintegrierten Hardwarefunktionen und Branchentrends wie geringer Stromverbrauch, Konnektivität und Sicherheit müssen neue Toolchain-Funktionen wie Board Support Packages, Treiber und Bibliotheken integriert werden.

Evolution der Embedded-Entwicklung
Noch vor einiger Zeit gab es bei den meisten Embedded-Systemen keinerlei Konnektivität. Auch die Sicherheit spielte keine Rolle. Ihr Zweck war die Steuerung eines Geräts, z. B. einer industriellen Heizkesselsteuerung oder einer Haushaltswaschmaschine.

Viele Embedded-Entwickler lernten, wie man Mikrocontroller mit Bare-Metal-Maschinencode programmiert. Die Programmierung mit OpCodes war jedoch zeitaufwändig, umständlich und mühsam. Der Wechsel zur Assembler-Sprache erleichterte den Entwicklern der ersten Stunde die Arbeit und ebnete den Weg für die Einführung von Hochsprachen wie C.

C wurde ursprünglich in den frühen 1980er Jahren für das Unix-Betriebssystem entwickelt und wurde zum Synonym für dieses System. Die Sprache wurde entwickelt, um einen effizienten Low-Level-Zugriff auf Speicherressourcen zu ermöglichen und die Maschinencode-Befehle des entsprechenden Prozessors umzusetzen. Dadurch eignete sie sich hervorragend für eingebettete Systeme.

Um den Einsatz ihrer Mikrocontroller (MCUs) und Mikroprozessoren (MPUs) zu fördern, investierten die Chip-Hersteller in die Entwicklung von Toolchains für integrierte Entwicklungsumgebungen (IDEs). Es gab noch kein Konzept für offene Ökosysteme, so dass die meisten Entwickler ihre eigenen Bibliotheken und Funktionen entwickeln und pflegen mussten. Außerdem war die Architektur der Befehlssätze jedes Anbieters individuell und die Hersteller verkauften in der Regel Treiber, Bibliotheken und andere proprietäre IP für ihre Geräte.

Die Zeiten haben sich grundlegend geändert!

Embedded-Entwicklung heute: Wie es dazu kam
Wenn ein Entwickler für Embedded-Systeme heute seine Karriere beginnt, betritt er eine ganz andere Welt. Die Branche der Embedded-Entwickler ist im Wesentlichen offen. Die Verfügbarkeit der lizenzbasierten Architektur von Arm kam zu einem Zeitpunkt, als viele Chip-Hersteller mit den Kosten für die Weiterentwicklung, Förderung und Unterstützung ihrer proprietären Architekturen in einer zunehmend wettbewerbsorientierten Branche konfrontiert waren. Im Laufe der Jahre haben viele führende MCU- und MPU-Anbieter ihr Angebot an Produkten mit eigener Architektur reduziert und ihr Produktportfolio an Arm-basierten Komponenten erweitert. Mit einem Arm-Core-Ansatz haben die Anbieter von der wachsenden Akzeptanz der Arm-Architektur und den F&E-Investitionen von Arm profitiert. Heute grenzen diese Anbieter ihre Angebote von anderen Arm-Lizenznehmern ab, indem sie periphere Konnektivitätsblöcke, drahtlose Transceiver, Leistungsmanagement und analoge Fähigkeiten integrieren.

Mit dem Wechsel zu Arm begann auch eine Abkehr von herstellerspezifischen IDEs, da sich immer mehr unabhängige Softwareunternehmen etablierten. Herstellerspezifische IDEs gibt es nach wie vor, und in einigen Fällen haben sie durch die Übernahme von IDE-Startups ihre Leistungsfähigkeit erheblich ausgebaut.

Die Hersteller investieren nun in die Bereitstellung umfassender Board-Support-Pakete und Software-Ressourcen, um den Entwicklern die Arbeit zu erleichtern, die sich mit zunehmend komplexeren Hardware-Komponenten und Feature-Sets auseinandersetzen müssen. Beispiele hierfür sind Open-Source-Bibliotheken und Firmware, die Low-Level-Hardware-Funktionen in praktikable und unkomplizierte High-Level-Funktionsaufrufe abstrahieren.

Mit der Einführung von Arduino und ähnlichen Einplatinencomputern (SBCs) wie dem BeagleBone und dem Raspberry Pi begann eine Ära der Open-Source-Entwicklung. Durch diese Boards entstanden Ökosystem-Communities von Hardware- und Softwareunternehmen. Gleichzeitig öffneten sie die Entwicklung von Mikrocontrollern für Innovatoren und Studenten. Linux wurde zum vorherrschenden Betriebssystem auf vielen SBCs und die breite Verfügbarkeit eines Echtzeitbetriebssystems erfuhr mit der Einführung von FreeRTOS einen gewaltigen Schub.

Heute ist die Embedded-Entwicklungsbranche sehr umfassend. Um das Prototyping und die zeitlich begrenzten Entwicklungszyklen weiter zu beschleunigen, bieten die Hersteller umfangreiche Evaluierungsmodule, Entwicklungsboards, Software Development Kits und Referenzdesigns an. Angesichts von Anwendungstrends wie dem industriellen Internet der Dinge (IIoT), die den Schwerpunkt auf stromsparende, batteriebetriebene vernetzte Systeme legen, haben die Hersteller mit zusätzlichen Standby-Modi für den Prozessorkern und Peripherieblöcke reagiert. Ein ausgewogenes Verhältnis zwischen dem Standby- und dem aktiven Stromverbrauchsprofil eines Prozessors bei gleichzeitiger schneller Reaktion auf Anwendungsunterbrechungen ist zu einer zentralen Herausforderung in der Entwicklung geworden.

Mit Low-Code, ereignisgesteuerten Skripten und Sprachen wie Node-red und schlanken Kommunikationsstacks wie CoAP und MQTT wurde die Embedded-Entwicklung um einen spannenden Aspekt erweitert. Solche Ansätze eignen sich hervorragend für die Entwicklung von IoT/IIoT-Anwendungen für ressourcenschonende Mikrocontroller mit sehr geringem Stromverbrauch.


Embedded-Evolution: Die Embedded-Industrie wächst weiter

Plattform-Implementierungen und Cloud-basierte IDEs bringen die Embedded-Branche voran

Die Embedded-Branche erlebt in letzter Zeit eine Welle von integrierten Hardware- und Softwarelösungen wie Zerynth. Diese Systeme bieten eine komplette Hardwareplattform und einen Cloud-basierten Infrastrukturansatz für eine schnelle Implementierung von IoT/IIoT. Ein Anbieter von Anlagen für die Industrieautomatisierung ist beispielsweise mit der Entwicklung eines kundenspezifischen Embedded-Systems und dem Hosting einer sicheren und zuverlässigen Cloud-Computing-Infrastruktur überfordert. Dies nimmt viel Zeit in Anspruch, ist mit erheblichen Kosten verbunden und erfordert qualifiziertes Fachwissen. Durch den Einsatz von Standardhardware können Anbieter von IIoT-Anwendungen ihre Angebote mithilfe von Softwarefunktionen abgrenzen und die erforderlichen Datensicherheits- und Verschlüsselungsfunktionen integrieren.

Da viele IDEs, wie beispielsweise TI Cloud Composer und Arm mbed, zunehmend online verfügbar sind, ist eine kollaborative Embedded-Entwicklung jetzt möglich. Einige Cloud-IDEs unterstützen auch gemeinsam genutzte private und öffentliche GitHub-Code-Repositories. Dies ist ein wesentlicher Aspekt vieler Open-Source-Projekte. Plattform- und architekturübergreifende Embedded-Entwicklungsplattformen wie PlatformIO bieten mit einer kompletten IDE, einem Repository, einem Debugger und Tools für die statische Codeanalyse in einer einzigen Online-Umgebung eine praktikable kollaborative Alternative zu herkömmlichen Toolchains. Gleichzeitig entwickeln unabhängige IDE- und Tool-Anbieter wie MikroE und Segger ihre Tools immer weiter, sodass sie RTOS einbinden und neue Befehlssatzarchitekturen wie RISC-V unterstützen.

Was ist der nächste Schritt?
Während der Pandemie hat die Nutzung von Online-Entwicklungs- und Kollaborationsplattformen erheblich zugenommen, da viele Teams sich darauf eingestellt haben, von zu Hause aus zu arbeiten. Es gibt erste Anzeichen dafür, dass sich dieser Trend in absehbarer Zukunft fortsetzen wird. Denn da die Welt der Embedded-Entwicklung immer virtueller wird, ist es wahrscheinlich, dass Cloud-IDEs und Collaboration-Tools für die Entwicklung im kommenden Jahr noch mehr Funktionen und Innovationen enthalten werden.

Das Unternehmen MikroE, ein Anbieter von Embedded-Tools, brachte im September 2020 seinen Planet Debug Service auf den Markt. Dieser basiert auf der IDE Necto Studio und macht das Hardware-Zielsystem auf dem Schreibtisch des Entwicklers überflüssig. Mit Planet Debug embedded können Entwickler jederzeit und überall auf der Welt von zu Hause aus programmieren und debuggen. Innerhalb von Necto Studio sind die MikroE-Entwicklungsplattformen von MikroE verfügbar. Zudem zeigt ein Video-Feed in Echtzeit an, was auf dem Board passiert.

Wir stehen bei der Arbeit mit virtuellen Hardware-Plattformen noch am Anfang, aber Innovation ist der Kern der Embedded-Entwicklungsgemeinschaft.

www.mouser.com

  Fordern Sie weitere Informationen an…

LinkedIn
Pinterest

Nehmen Sie an unseren 15000 IMP Followern teil