Anzeige
Embedded-Software-Design

Anforderungen entwickeln und Architekturen verfeinern

‚Predictive Maintenance‘ wird laut Experten in den nächsten fünf bis zehn Jahren bei so gut wie allen rotierende Maschinen die Norm sein. Die rasante Entwicklung der Sensortechnologie und der künstlichen Intelligenz beschleunigt dieses Tempo zusätzlich. Die hierzu mit dem Internet of Things (IoT) verbundenen Embedded-Systeme stellen immer komplexere Anforderungen an das Design. Wer im Vorfeld durchdachte Anforderungen entwickelt und die Architektur konsequent mit Software-Design verfeinert, sichert Software- und Produktqualität.

 (Bild: MicroConsult GmbH)

(Bild: MicroConsult GmbH)

Im Entwicklungsprozess ordnet sich das Software-Design nach der Software-Anforderungs- und -Architekturentwicklung und vor der Implementierung ein. Die Entwicklung arbeitet heute inkrementell und iterativ und nicht wasserfallartig. Bildlich betrachtet repräsentiert Software-Design die Brücke zwischen der Architektur und der Implementierung.

Die Systemintelligenz bei IoT- und Industrie-4.0-Produkten liegt sehr häufig in der Embedded-Software. Deren Komplexität steigt aktuell stark an. Viele Unternehmen haben inzwischen die Notwendigkeit der Embedded-Software-Anforderungserfassung und der Embedded-Software-Architekturentwicklung erkannt. Die logische Konsequenz: mithilfe von Softwaredesign das Ergebnis des Softwarearchitekten vor der Implementierung verfeinern.

Unabhängig von C++ mit objektorientiertem Ansatz

Objektorientierte Software unterstützt positive Software-Qualitätsmerkmale wie Erweiterbarkeit, Wartbarkeit, Portierbarkeit, Wiederverwendbarkeit und vieles mehr. Bei der objektorientieren Softwareentwicklung können Sie außerhalb von C++ Konstrukte wie Klassen, Objekte, Assoziationen, Aggregation, Komposition, Vererbung sowie polymorphe Interfaces auch in C programmieren.

Design-Prinzipien helfen beim Clean Code

Nicht zuletzt durch die in den letzten Jahren immer populärer gewordene ‚Clean Code Developer‘- Initiative ist das Thema ‚qualitativ hochwertige Software entwickeln‘ nach wie vor aktuell. Die Einhaltung einfacher Prinzipien wie DRY, KISS, SLA, SRP, POLS hilft Entwicklern dabei, Software von hoher Qualität zu schreiben.

Themen aus dem Embedded-Software-Design (Bild: MicroConsult GmbH)

Schneller entwickeln mit Design Patterns

Design Patterns sind praxisbewährte Lösungen zu immer wiederkehrenden Herausforderungen in der Softwarenentwicklung. Je mehr Design Patterns Sie kennen, desto schneller geht die Softwareentwicklung von der Hand. Design Patterns lassen sich in Erzeugungs-, Struktur- und Verhaltenspatterns unterteilen. Design Patterns speziell für Embedded-Software lassen sich in die folgenden Themen gruppieren: funktionale Sicherheit, Zugriffssicherheit, Zuverlässigkeit, Hardwarezugriff, Parallelisierung, Ressourcenzugriff und Multicore.

Automatenfunktionalität von der Applikation trennen

Das generische (für alle Fälle gültige) Verhalten in Embedded-Software ist sehr häufig durch Zustandsautomaten zu designen und zu implementieren. Doch wie modelliere (dokumentiere) und wie implementiere ich den Zustandsautomaten? Die spezielle Herausforderung bei der Implementierung in C besteht darin, die Automatenfunktionalität von der Applikation strikt zu trennen. Dieser Ansatz verbessert die Software-Qualitätsmerkmale erheblich.

Das könnte Sie auch interessieren

Kontron bietet ein Development Kit für die Entwicklung von Produkten basierend auf Raspberry Pi für die Industrie an. Das Kit umfasst ein Entwickler-Board nach SBC-Spezifikationen, ein Raspberry-Pi-Computermodul 3 Light sowie eine SD-Card mit Raspian Betriebssystem. Das Entwicklerkit erweitert das Compute Module des Raspberry Pi vor allem um eine Vielzahl industrietypischer Schnittstellen, darunter nicht nur USB, Ethernet 10/100MBit, RS 232 und RS 485, sondern auch eine CAN-Feldbus-Schnittstelle. Displays lassen sich über HDMI, LVDS oder DSI 4 Lanes ansteuern. Weiterhin enthalten ist der typische PiHat Connector, ein Micro SDCard Slot, ein 1-Wire-Interface zum Anschluss einfacher Sensoren, ein Smartcard Reader mit Simkartenhalter, um sichere Anwendungen zu betreiben sowie Kameraschnittstellen. Um schnell beginnen zu können, verfügt das Board auch über 24V Inputs und Outputs sowie analoge In- und Outputs.

Anzeige

Microchip stellt seine hochintegrierte LoRa System-in-Package-(SIP)-Serie (SAM-R34/35-SIP) in einem 6x6mm Gehäuse mit einem äußerst stromsparenden 32-Bit-Mikrocontroller, Sub-GHz HF-LoRa-Transceiver und einem Software-Stack vor. Zusammen mit dem Entwicklungsboard ATSAMR34-XPRO (DM320111) und dem Softwareentwicklungskit Atmel Studio 7 lassen sich damit Prototypen schnell erstellen. Die SIPs eignen sich vor allem für stromsparende IoT-Anwendungen mit geringer Baugröße und mehrjähriger Batterielebensdauer.

Mit ‚Goods Compliance‘ der Deutschen Telekom gehören handgeschriebene Protokolle der Vergangenheit an. Die Komplettlösung aus dem Internet der Dinge digitalisiert Prüfprozesse in Echtzeit und dokumentiert deren Ergebnisse lückenlos.

Siemens erweitert das Portfolio der Simatic-Ident-Kommunikationsmodule. Die ersten Geräte der neuen Reihe sind Simatic RF185C, RF186C und RF188C. An die am Ethernet/Profinet betriebenen Modelle lassen sich wahlweise ein, zwei oder vier Reader anschließen.

Zufallszahlen, die für eine sichere Verschlüsselung notwendig sind, generiert Gesa Dünnweber (17) vom Städtischen St.-Anna-Gymnasium in München jetzt selbst.

Congatec präsentierte zur Electronica World die Leistungsfähigkeit der harten Echtzeitkommunikation über GBit Ethernet. Die Demoinstallation zeigte, wie Echtzeitdaten selbst bei ausgelasteter Ethernet-Verbindung immer noch zeitsynchron übertragen werden können.

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige