Viele Ingenieursteams starten Designprojekte heute mit Entwicklungskits, die zentrale Systemkomponenten, eine grundlegende Firmware-Infrastruktur und eine unterstützende Dokumentation miteinander kombinieren, um den Prozess des Prototypenbaus zu beschleunigen. Und zum größten Teil sind diese Kits unglaublich günstig.
Aber auch wenn Entwicklungskits Ingenieursteams helfen können, einen Startvorteil hinsichtlich ihrer Software-Stacks zu erzielen, können sie im späteren Verlauf gewissermaßen Mehraufwand für die Entwickler von Embedded-Hardware und Firmware generieren, weil die Mehrheit der verwendeten Komponenten im finalen Design nicht eingesetzt werden, insbesondere, wenn das System für industrielle Märkte entwickelt wird. Und zudem, weil jeglicher Code, der auf dem Kit entwickelt wurde, für das entsprechende Produktionssystem individuell modifiziert werden muss.
Warum also nicht bereits im frühen Prototypenbauprozess ein System verwenden, das der Produktionsqualität entspricht?
Schneller Prototypenbau in Produktionsqualität
Die vorhergehende Frage ist nur teilweise rhetorischer Natur. Die offensichtliche Antwort lautet, dass handelsübliche Bastelhardware viel mehr an Zeitaufwand kostet, weil in der Regel die verwendete Hardware für spezifische Endanwendungen individualisiert werden muss.
Es gibt jedoch eine Hardware-Option an der Schnittstelle zwischen Produktionsqualität und Designflexibilität: den Computer-on-Module (COM). COM-basierte Systeme nutzen eine Zweiplatinenarchitektur, die aus einer anwendungsspezifischen Trägerplatine mit allen vom System benötigten Anschlüssen sowie einem Rechenmodul besteht, welches auf die Trägerplatine gesteckt wird und Prozessorleistung, Speicherplatz, I/O-Controller und dergleichen übergreifend bereitstellt.
Diese Herangehensweise bietet den Vorteil für kommerzielle Systeme, dass sie Unternehmen vor Hardware-Obsoleszenz schützt, da ein veraltetes Prozessormodul noch Jahre oder Jahrzehnte nach der ersten Inbetriebnahme durch ein neues, verbessertes Modul ersetzt werden kann. In diesen Szenarien wird die Aufwärts- und Abwärtskompatibilität durch bewährte Branchenstandards wie bei PICMG COM Express und SGET Smarc Module langfristig sichergestellt.
Aber wie ist es mit dem Prototypenbau?
Adlink I-Pi ist eine Plattform für den industriellen IoT-Prototypenbau, die Komponenten in Produktionsqualität, extreme Softwareportabilität und Raspberry-Pi-ähnliche Flexibilität und Erweiterbarkeit mit einem COM-Formfaktor zusammen verbindet. Basierend auf dem Smarc-Modul LEC-IMX8MP erfüllt das I-Pi die Smarc-Module-2.1-Spezifikation, die ein kompaktes Modul mit den Abmessungen 82 mm x 50 mm definiert.
Die Entwicklungsplattform unterstützt Betriebstemperaturen zwischen -40 und 85 °C und verfügt über Schock- und Vibrationstoleranzen im Einklang mit IEC 60068-2-27/64 und MIL-STD-202 F. Zusätzlich offeriert sie im Prozessormodul integrierte USB- und PCIe-Switches, um die Designkosten für die Trägerplatine zu reduzieren.
Portabilität für den Prototypenbau
Das LEC-IMX8MP, Herzstück des I-Pi Smarc IMX8M Plus Kit, trägt den von NXP entwickelten i.MX8M-Plus-System-on-Chip, der auf einem Quad Core Arm Cortex-A53 basiert, mit optionaler integrierter NPU und bis zu 8 GB Speicher. Die Signale von zwei GbE LANs, zwei USB-3.0-Ports, drei USB-2.0-Ports und einem USB-2.0-OTG-Port, einem MIPI DSI mit vier Lanes, einem MIPI CSI mit vier Lanes und einem MIPI CSI mit zwei Lanes sowie CAN-, SPI-, UART- und I2C-Schnittstellen, neben etlichen GPIOs, werden über den MXM-3.0-Konnektor an die beziehungsweise von der I-Pi-Trägerplatine übermittelt.
Aber der I-Pi ist auch in der Lage, Smarc-Module mit anderen fortschrittlichen Prozessoren bis hin zu den neuesten Intel-Atom-Prozessoren der sechsten Generation zu unterstützen, wodurch Entwickler einfach Module austauschen können, während sie unterschiedliche Funktionen oder Leistungsniveaus evaluieren. Dank PCIe-Entkopplungskondensatoren und -Taktsignalen, die direkt von den Smarc-Modulen zur Verfügung gestellt werden, ist es einfach, Module auszutauschen. Die Entwickler müssen lediglich sicherstellen, dass die Signalleitungen auf der Trägerplatine korrekt miteinander verbunden sind.
Die einzigen Hochgeschwindigkeitssignale auf der Trägerplatine des Kits sind PCI Express und HDMI, was die Plattformkomplexität reduziert und Entwicklern erlaubt, unterschiedliche Module einfach zu evaluieren, ohne grundlegende Hardwareinfrastruktur neu entwickeln zu müssen. Und diese Schnittstellen können mit einer optimierten, anwendungsspezifischen Trägerplatine modifiziert, erweitert oder reduziert werden, wenn die Designanforderungen sich im späteren Verlauf festigen.
Natürlich führen Modifizierungen der Hardware auch zu Modifizierungen des Softwarecodes. Der Übergang von einer Arm-basierten Rechenarchitektur zu einem Intel-basierten x86-Prozessormodul, der mit dem I-Pi möglich ist, bedeutet andererseits in der Regel eine grundlegende und vollständige Neuentwicklung der Software.
Für den I-Pi hat sich Adlink allerdings die MRAA-Hardwareabstraktionsschicht (HAL) zunutze gemacht, um auf diese Neuentwicklung verzichten zu können. MRAA ist eine quelloffene C/C++-Bibliothek mit Java-, JavaScript- und Python-Integrationen, die es ermöglicht, Software von einer Plattform zur anderen zu portieren – sogar über Smarc-Module mit unterschiedlichen Prozessortypen hinweg. MRAA wurde von Intel entwickelt und stellt Treiber und APIs bereit, die es Entwicklern ermöglichen, Module und Sensor-HATs auszutauschen und sogar Code, der in Arduino- oder Raspberry-Pi-Umgebungen geschrieben wurde, ohne jede Überarbeitung auf den I-Pi zu portieren.
Industrielle Qualität in kürzerer Zeit erreichen
Kosten und Markteinführungszeit sind bei der Entwicklung von neuen Systemen und Komponenten wesentliche Faktoren für die Elektronikbranche. So sagten 46,8 Prozent der Teilnehmer an einer kürzlichen durchgeführten Umfrage unter professionellen Entwicklern, die im Bereich der Embedded- und IoT-Technologie tätig sind, dass „ehrgeizige Zeitpläne“ und „im Budget bleiben“ die größten Herausforderungen bei ihrer täglichen Arbeit darstellen.
Der modulare Hardware- und Softwareansatz des I-Pi geht diese beiden Aspekte bereits in der Prototypenphase an, indem die Zugänglichkeit von Plattformen wie Raspberry Pi und Arduino mit der Robustheit eines industriellen COM kombiniert wird. Und indem sie von Anfang an mit einem COM in Produktionsqualität arbeiten, können Entwickler in den späteren Designphasen Zeit und Geld sparen.