Mit Entwicklungskits industrielle Anwendungen entwickeln

Autor / Redakteur: Carsten Rebmann * / Margit Kuther

Entwicklungskits sind kostengünstig und bieten viele Vorteile. Das I-Pi SMARC Kit zum Beispiel beschleunigt das Prototyping und ermöglicht darüber hinaus auch die Entwicklung industrieller Anwendungen.

Firmen zum Thema

I-Pi-SMARC-Entwicklungskit: es enthält alles Erforderliche für die Entwicklung eines industriellen Prototyps.
I-Pi-SMARC-Entwicklungskit: es enthält alles Erforderliche für die Entwicklung eines industriellen Prototyps.
(Bild: Adlink)

Entwicklungskits, meist auf Basis sogenannter Einplatinencomputer, haben eine Menge zu bieten – und sind extrem kosteneffizient. Dies ist jedoch nur einer von vielen Gründen, warum viele Ingenieure und Entwickler sie für das Experimentieren und Prototyping nutzen. Ein weiteres Merkmal ist, dass sie für Anwender aller Kenntnisstände, vom Anfänger bis zum Experten, vom Schüler bis zum erfahrenen Entwickler, attraktiv sind. Aufgrund der zunehmenden Popularität des Internet der Dinge (IoT) wagen sich auch immer mehr Quereinsteiger an eigene Projekte.

Entwicklungskits wie Raspberry Pi oder Arduino Boards mit ihrem Open-Source-Charakter und einer breiten Support-Community im Internet eignen sich besonders für derartige Projekte. Der Code ist für nahezu jede Anwendung verfügbar, und das schließt auch viele Sensoren, Aktoren und Plug-in Devices (z.B. USB-Speicher, WLAN-Karten, usw.) mit ein. Je mehr Entwickler Projekte mit Entwicklungskits realisieren, umso robuster und vielfältiger werden die Tools, die verfügbaren Software Sample Codes sowie die Bausätze selbst. Daher sind die Kits selbst für den erfahrensten Ingenieur und Entwickler äußerst attraktiv.

Heute beginnen zahlreiche Entwürfe mit einem dieser Development Kits. Marktbeobachter prognostizieren, dass bis Anfang dieses Jahres weltweit mehr als 50 Mio. Raspberry Pi Kits ausgeliefert wurden, wobei momentan etwa zehn verschiedene Modelle verfügbar sind. Ein Grund dafür, dass Hersteller und Unternehmen diese Entwicklerkits so positiv beurteilen: Ingenieure und Entwickler nutzen sie nicht nur am Arbeitsplatz, sondern auch privat. Daher erlernen sie oftmals zuhause mit den Peripheriegeräten und Sensoren umzugehen und können so ihre Erfahrungen im beruflichen Umfeld einbringen, um Prototypen deutlich schneller zu konzipieren, als dies ohne Entwicklungs-Kits möglich wäre. Auch kann die Funktionsvielfalt inzwischen komplexer ausfallen.

Probleme mit Consumer- Produkten

Bei der Umsetzung von so erstellten Prototypen in kommerzielle Produkte gilt es einige Herausforderungen zu beachten: Dazu gehört beispielsweise der Temperaturbereich, der während der Entwicklung des Prototypen meist nur eine untergeordnete Rolle spielt. Typischerweise herrscht in der Umgebung des Büros oder der Wohnung eines Entwicklers eine Durchschnittstemperatur von 22 °C. Solche Umgebungen können Temperaturschwankungen von ±5 K aufweisen. Ein Temperaturbereich, der solchen Schwankungen unterworfen ist, reicht jedoch nicht für die Entwicklung professioneller Produkte nach industriellen Anforderungen aus.

Darüber hinaus gibt es weitere Anforderungen, z.B. nach Schock- und Vibration, ESD-Festigkeit, die ebenfalls berücksichtigt werden müssen. Die Entwickler wissen, dass der so entstandene Prototyp nicht mit einem versandfertigen kommerziellen Produkt vergleichbar ist. Ein weiterer Punkt, den es zu beachten gibt, ist der Austausch von Komponenten auf den Platinen über die Serie hinweg. Während erfahrene Entwickler wissen, dass sich bestimmte Bauelemente ohne (oder mit nur geringen) Risiko austauschen lassen, darf dies bei einem Produkt in Serienfertigung, das gerade mal das Prototypen-Stadium überschritten hat, nicht ohne vorhergehender Prüfung und eventueller Zulassungstest passieren. Insbesondere, wenn dieses Produkt für den Einsatz in medizinischen, industriellen oder beispielsweise militärischen Anwendungen bestimmt ist.

Ingenieure und Entwickler konnten sich bisher nur für eines der auf dem Markt erhältlichen Development Kits entscheiden. Dies ändert sich nun mit dem I-Pi SMARC Entwicklungs-Kit von ADLINK.

HALs beschleunigen die Arbeiten an Prototypen

Erfahrene Entwickler sind bereits mit Hardware Abstraction Layers (HALs) wie MRAA (Bild 1) vertraut. Diese sind für die Beschleunigung der Arbeiten an Prototypen maßgeblich mit verantwortlich und können auch bei der Betreuung von Produkten über ihren Produktlebenszyklus SW-Aufwände reduzieren.

Bild 1: High-Level-Ansicht des Software-/Hardware-Stacks einschließlich der Abstraktionsschicht.
Bild 1: High-Level-Ansicht des Software-/Hardware-Stacks einschließlich der Abstraktionsschicht.
(Bild: Adlink)

Eine HAL ist eine Abstraktionsschicht, die zwischen der physischen Hardware und der Software implementiert ist. Genauer verbirgt die HAL etwaige Unterschiede in der Hardware vor den erstellten Applikationen. Infolgedessen muss der größte Teil des erstellten Codes nicht mehr verändert werden, wenn das verwendete HW-Sub-System geändert wird. Voraussetzung ist, dass die neue HW auch eine MRAA Bibliothek mitbringt, die von den HW Herstellern gepflegt wird.

Die ursprünglich von Intel entwickelte MRAA-Bibliothek (ausgesprochen: „Em-Rah“) ist inzwischen unter die Schirmherrschaft der Eclipse Foundation gestellt worden und hat sich in den letzten Jahren weit über die ursprüngliche Welt der x86 HW entwickelt. Sie erfüllt die Rolle einer HAL und vereinfacht damit die für den Anschluss an verschiedene Sensorpins erforderliche Programmierung. Auf MRAA-APIs programmierte Software ist somit über Prozessorarchitekturen hinweg portabel, das heißt die Software kann ohne große Veränderungen des Codes auf mehreren Plattformen ausgeführt werden. Dies gilt für Programme, die in C++, Python, JavaScript oder Java aber auch anderen Programmiersprachen geschrieben wurden.

Hinsichtlich der Entwicklungsplattformen, insbesondere bei Arduino, haben Entwickler vielfach die Vorteile von der Arduino IDE und Arduino Create genutzt. Letztere ist eine integrierte Online-Plattform, mit deren Hilfe Programmierer Code schreiben, auf Support-Inhalte zugreifen und Projekte teilen und gemeinsam nutzen können. Für Raspberry Pi sind mehrere integrierte Entwicklungsumgebungen (IDEs) verfügbar, unter anderem kann auch Arduino Create verwendet werden.

Des Weiteren lässt sich MRAA sowohl für die Arduino als auch für die Raspberry Pi Plattform verwenden und sind in Arduino IDE und Arduino Create integriert. Durch die damit erreichte Verbreitung stellt MRAA eine reale Alternative für Programmierer dar. Entwickler in diesem Bereich sollten deshalb auch die UPM Bibliothek (Useful Packages & Modules), die eine Sammlung an vorprogrammierten Sensor und Aktuator APIs für MRAA zur Verfügung stellt, kennen. Sie erleichtert den Anschluss und die Verwendung gängiger Sensoren und Aktuatoren in IoT-Lösungen und greift dabei selbst auf die MRAA APIs für die Kommunikation mit der HW zurück. MRAA-Bibliotheken sind sowohl für Arduino- und RPi Plattformen, aber auch für das I-Pi SMARC Kit verfügbar, sodass Applikationen, die auf MRAA und UPM basieren, direkt auch auf dem I-Pi SMARC lauffähig sind.

SMARC Module basiertes Entwicklungskit

SMARC Module steht für Smart Mobility Architecture Module. Die SMARC-Module-Spezifikation wurde von der Standardization Group for Embedded Technologies (SGET e.V.) adaptiert und wird von vielen Herstellern unterstützt. Dieser öffentliche Standard bezieht sich auf die Definition für einen sehr kompakten Computer-On-Module Formfaktor. Dabei fokussieren sich SMARC Modules auf Anwendungen, die einen geringen Stromverbrauch und niedrige Kosten erfordern, gleichzeitig aber ein ansprechendes Leistungsniveau benötigen. Gemäß der Spezifikation des beim I-Pi SMARC Kits verwendeten SMARC Moduls kann ein erweiterter Temperaturbereich von –20 bis 85 ⁰C unterstützt werden. Dabei sind Module nach den SMARC-Module-Standard generell auch im „kommerziellen“ Temperaturbereich von 0 bis 60 °C, aber auch mit erweiterten Temperaturbereichen von bis zu –40 bis 85 °C erhältlich.

All diese Hardware- und Softwarekomponenten sind im sogenannten Industrial Pi (I-Pi) SMARC Development Kit (großes Bild oben) zusammengefasst. Das Kit besteht aus einem LEC-PX30 SMARC Modul, das auf dem I-Pi Carrier montiert ist. Ebenfalls vorhanden sind ein Netzteil, ein USB-Programmierkabel und eine SD-Speicherkarte mit aufgespieltem Linux-Betriebssystem. Bereits mit integriert ist die MRAA-Bibliothek, die für das LEC-PX30 angepasst ist. Einen gewissen Schutz bietet die transparente Acrylabdeckung um den I-Pi SMARC.

Bild 2: Zu sehen ist die Unterseite des I-PI-Trägers und das aufgesteckte SMARC-CPU-Modul.
Bild 2: Zu sehen ist die Unterseite des I-PI-Trägers und das aufgesteckte SMARC-CPU-Modul.
(Bild: Adlink)

Mittelpunkt des I-Pi SMARC (Bild 2) ist eine Trägerplatine (Carrier), die alle Schnittstellen bereitstellt. Die kleinere Platine auf der Unterseite ist das SMARC-Prozessormodul, das auf der Unterseite in den I-Pi-Träger eingesteckt ist. Das Kit enthält zusätzliche Funktionen, die oftmals für IoT-basierte Embedded-Systeme und -Geräte benötigt werden. So ist zum Beispiel eine Echtzeituhr (RTC) bereits fest integriert, die auf Plattformen wie dem Raspberry Pi erst durch Zusatzplatinen nachgerüstet werden müssen. Um das Arbeiten mit dem I-Pi SMARC Kit zu erleichtern, ist ein HDMI-Anschluss in Form eines DSI to HDMI Hat vorhanden. Eine vollständige Beschreibung der Anschlüsse, sowie verschiedene vorerstellte Betriebssystem Image und Dokumentationen sind auf www.ipi.wiki zu finden.

Consumer oder professionelle Produkte

Education- und Maker-Space-Plattformen wie Raspberry Pi und Arduino unterscheiden sich deutlich von professionellen, industriellen Anwenderprodukten, die sich mit dem SMARC I-Pi Kit erstellen lassen. Entwickler sind damit in der Lage, mit Produkten zu arbeiten, die für den industriellen Markt bestimmt sind. Komponenten können leicht nach eigenem Ermessen ausgetauscht werden.

Darüber hinaus folgt der I-Pi Carrier den in der Industrie üblichen Verfahren, Änderungen mittels ECN (Engineering Change Notice) und PCN (Process Change Notice) zu kommunizieren. Das bedeutet, dass Anwender aktiv informiert werden, wenn Änderungen am Produkt vorgenommen werden müssen, inklusive der Details zur Änderung, und sie erhalten genügend Zeit diese Veränderungen für die Anwendung zu qualifizieren. Gleiches gilt für die Berichterstattung und die Fehlerbeseitigung hinsichtlich der Produktionsqualität. Bei Raspberry Pi und Arduino ist dies bisher nicht möglich. I-Pi SMARC hingegen unterstützt diese Berichtserstattung zur Vereinfachung von Kundenprozessen.

Die Langzeitverfügbarkeit ist entscheidend

Ein Merkmal, das jedes Industrieprodukt aufweisen muss, ist eine entsprechende Langlebigkeit bzw. langfristiger Support. In einigen Fällen bedeutet dies einen Verfügbarkeitszeitraum von sieben bis zehn Jahren oder darüber hinaus. Plattformen wie Raspberry Pi und Arduino bieten dies nicht. Das wird allerdings auch nicht von ihnen erwartet. I-Pi SMARC hingegen garantiert eine zehnjährige Verfügbarkeit. Entwickler und Ingenieure, die bereits Prototypen mit Arduino oder Raspberry Pi Plattformen erstellt haben, können bestehende Sensor-Ökosysteme und Bibliotheken auch weiterhin nutzen und mit I-Pi SMARC ihre Designs und Entwicklungen in eine industrielle Umgebung, ohne Zusatzaufwand, migrieren.

Diesen Beitrag lesen Sie auch in der Fachzeitschrift ELEKTRONIKPRAXIS Ausgabe 24/2020 (Download PDF)

Gehen sie vom Prototyping zur Produktion über, kann der I-Pi Carrier als Ausgangspunkt für Entwickler dienen, die ihren eigenen Carrier erstellen möchten. Dies reduziert auch die Kosten: Carrier-Boards können mit den erforderlichen Funktionen und Schnittstellen für eine bestimmte Anwendung bestückt werden. Überflüssige Komponenten und damit verbundene Kosten werden vermieden. Es macht keinen Sinn, Funktionen an Bord zu haben, die nicht benötigt werden.

Zeit- und Kosteneffizienz sowie schnellere Time-to-Market

Entwicklungskits wie das I-Pi SMARC Kit von ADLINK beschleunigen das Prototyping und ermöglichen darüber hinaus auch die Entwicklung industrieller Anwendungen. Die Frage nach privaten versus professionellen Usern stellt sich nun nicht mehr, da alle Anwender, vom Anfänger bis zum Profi, mit dem Anspruch zur Entwicklung eines Produkts mit Industriestandard fündig werden. Mit I-Pi SMARC können Entwickler ihren bevorzugten Startpunkt selbst wählen und Anwendungen entsprechend entwickeln. Dies gewährleistet eine höhere Zeit- und Kosteneffizienz sowie eine schnellere Time-to-Market und bietet so einen Wettbewerbsvorteil für Unternehmen.

* Carsten Rebmann ist Product Manager Modules bei der Adlink Technology GmbH.

Artikelfiles und Artikellinks

(ID:47000544)