Bild 1: Rapid Prototyping und Produktentwicklung von smarten, verteilten und vernetzten Embedded-Systemen mit LabVIEW auf Mikroprozessoren.

Bild 1: Rapid Prototyping und Produktentwicklung von smarten, verteilten und vernetzten Embedded-Systemen mit LabVIEW auf Mikroprozessoren.Schmid Elektronik

Im Mittelpunkt smarter Embedded Systeme stehen Informationen: aus physikalischen Vorgängen gewonnen, in Echtzeit berechnet, via Netzwerk überall verfügbar und Teil dynamischer Steuerungs- oder Regelprozesse. Das geforderte Echtzeitverhalten und dynamische Prozessmodellierung bedeutet zwangsläufig eine höhere Komplexität. Wie aber diese bewältigen? Die Entwickler sind meist ausgelastet, Teams, vor allem im mittelständischen Bereich, lassen sich nicht von heute auf morgen vergrößern, der Termindruck nimmt eher zu als ab. Ein Weg aus dieser Schere: eine neue Methode, die vom schnellen Rapid Prototyping bis zur Serienentwicklung eingesetzt werden kann und bei drei empfindlichen „Problembereichen“ Lösungen bietet. Der Entwicklungsprozess wird so um das zwei- bis vierfache beschleunigt:

  • Ideen umsetzen: es ist erwiesen, dass wir dank grafischer Programmierung das Kreative in uns sehr effizient nutzen und damit unsere Gehirnleistung gezielt verstärken können.
  • Komplexität: durch Programmierung mit LabVIEW bleibt diese überschaubar. Hardware, RTOS, Tools und Softwarekomponenten werden komfortabel abstrahiert, sodass sich der Programmierer auf das Wesentliche, die Anwendungsentwicklung, konzentrieren kann.
  • „Zeitfresser“ beim Implementieren: Im LabVIEW-Blockschaltbild lassen sich mehrere Programmiermodelle integrieren, je nachdem welche Notation für eine bestimmte Aufgabe die Passende ist.

LabVIEW C-Code-Generator auf Mikroprozessoren

Auf einen Blick

Klassischen Embedded Systemen kommen meistens ganz spezifische Mess-, Steuer- und Regelaufgaben zu. Diese erfüllen sie auch im rauen Industriebetrieb zuverlässig. Schwerpunkte sind Hardwareschnittstellen, Interrupts, RTOSs, Multitasking, Codeoptimierung und Memorymanagement. In den letzten Jahren hat sich der Aufgabenbereich deutlich erweitert, zum Beispiel durch verteilte, dezentrale intelligente Knoten, welche auch Internet-Dienste nutzen können. Im Mittelpunkt steht eine Design- und Entwicklungsmethode, bei der ein Entwickler die grafische Systemsprache LabVIEW auf kundenspezifischer Hardware nutzen und diese dank flexiblem Lizenzmodell selber fertigen oder herstellen lassen kann.

In der Embedded-Welt der Mikrocontroller, Mikroprozessoren und DSPs ist die Sprache C heute der Quasi-Standard. Genau hier setzt National Instruments (NI) ANSI-C-Code-Generator an. Er übersetzt ein grafisches LabVIEW-Diagramm/-Blockschaltbild inklusive Mathematik- und Signalverarbeitungs-VIs in neutralen ANSI-C-Code. Dieser wird üblicherweise in übergeordnete C- oder C++ -Applikationssoftware eingebettet und auf eine beliebige Mikroprozessorplattform portiert. Schmid Elektronik (NI Electronic Design Specialty Allianzpartner) geht einen entscheidenden Schritt weiter und kombiniert den NI-C-Code-Generator mit dem ZBrain-SDK (Software Development Kit) und flexiblen Hardwareplattformen unterschiedlicher Leistungsklassen. Damit werden nicht nur die Algorithmen und Bibliotheksaufrufe übersetzt, sondern auch die komplette Applikationslogik inklusive Multitasking und Hardwarezugriffen, welche direkt im grafischen Code erfolgen, zum Beispiel analoges und digitales I/O, Embedded Filesysteme, Kommunikation über Ethernet und eine Multi-Touch-Bedienoberfläche. Der so erzeugte Embedded-Applikations-C-Code wird mit dem Quellcode eines sehr schlanken RT-Kernels verlinkt und mit den gängigen Tools (Compiler, Linker, Loader) in eine echtzeitfähige Stand-alone-Firmware überführt. Diese gelangt über JTAG oder Bootloader direkt ins Flash-Memory der Zielhardware. Von dort startet die Anwendung direkt ohne Betriebssystem innerhalb einer Sekunde, geht in einen zuverlässigen 24/7-Betrieb mit µs-Echtzeit inklusive Fehlerbehandlung über und ist gegen Einflüsse von außen weitgehend unempfindlich.

Scheckkarten- oder Briefmarken-Rechner?

Bild 2: Prozess- und Daten-I/O inklusive Ethernet, Filesystem und Color-TFT mit Multitouch auf Scheckkartenformat und mit LabVIEW programmierbar.

Bild 2: Prozess- und Daten-I/O inklusive Ethernet, Filesystem und Color-TFT mit Multitouch auf Scheckkartenformat und mit LabVIEW programmierbar.Schmid Elektronik

LabVIEW-Scheckkartenrechner (Bild 2), auch bekannt als COMs (Computer on Modules) bieten neben dem Mikroprozessor und seinem Chipsatz ein umfangreiches Analog-, Digital- und Kommunikations-I/O Onboard. Die „nackten“ 3,3-V-TTL-Signale sind auf 2,0-mm- oder 2,54-mm-Stecker geführt. Eine Anpassung an den individuellen Signalpegel der Aufgabe erfolgt auf einem Baseboard. Die Komplexität dieses Baseboards ist gering, denn die kritischen Schaltungsteile sind schon auf dem Einsteckmodul realisiert. Die Speisungen können einfach gehalten und die Signale müssen meistens nur noch konditioniert werden. Je nach Anforderung wählt der Designer das passende, von LabVIEW unterstützte Einsteckmodul, entweder im Format einer Scheckkarte, Streichholzschachtel oder Briefmarke.

Rechner im Briefmarkenformat (Bild 3) sind auch bekannt als Coremodule. Sie bestehen meistens nur aus Prozessor und Chipsatz, integriert auf einem miniaturisierten Multilayersubstrat. Die Prozessorpins inklusive Adress/Datenbus sind auf Stecker mit hoher Packungsdichte geführt. Die Aufwände zur Entwicklung dieser Baseboards sind deshalb deutlich höher als bei der Scheckkarte. Dank des Prozessorbusses ist die Flexibilität bei der Auswahl der I/O-Bausteine jedoch höher.

Bild 3: Einsteckbare, grafisch programmierbare Briefmarkenrechner als Multichip-Modul (MCM) für miniaturisierte, komplexe Mess-, Steuer- und Regelaufgaben.

Bild 3: Einsteckbare, grafisch programmierbare Briefmarkenrechner als Multichip-Modul (MCM) für miniaturisierte, komplexe Mess-, Steuer- und Regelaufgaben.Schmid Elektronik

Ob ein Scheckkarten- oder Briefmarken-Format gewählt wird, hängt von den Anforderungen an I/O, Formfaktor und Stückzahl ab. Der Vorteil dieses Ansatzes, speziell beim Rapid Prototyping: zu Beginn der Entwicklung müssen noch nicht alle Anforderungen in Stein gemeißelt sein, denn Baseboards lassen sich schnell ändern.

LabVIEW im Serienprodukt

Sind nach dem Prototyping mittels Scheckkarten- oder Briefmarkenrechner alle Anforderungen bekannt, lässt sich das Einsteckboard mit dem Baseboard verheiraten. Das Ergebnis: ein kundenspezifisches, voll integriertes Mikroprozessorboard, das in mittleren und großen Stückzahlen zu üblichen Bestückungspreisen hergestellt werden kann. Seine spezifische LabVIEW-Hardware kann der Kunde bei Schmid Elektronik entwickeln, testen und produzieren lassen oder dies dank eines flexiblen Lizenzmodells selber tun.

Bild 4: Ein integriertes Mikroprozessorboard (Bild 1 rechts) vom NI Electronic Design Specialty Allianzpartner mit Know-how in Hard- und Softwareentwicklung und High-Tech-Maschinenpark.

Bild 4: Ein integriertes Mikroprozessorboard (Bild 1 rechts) vom NI Electronic Design Specialty Allianzpartner mit Know-how in Hard- und Softwareentwicklung und High-Tech-Maschinenpark.Schmid Elektronik

Selbst entwickeln und produzieren ist sicher ein interessanter Schritt, vorher sollten jedoch einige kritische Fragen geprüft werden: Habe ich Entwicklungsaufwände von mehreren Monaten einkalkuliert? Verfüge ich über das nötige Hardware-Entwickler-Know-how (Bild 4: BGA, 8- bis 10-Layer, Signalintegrität)? Was, wenn zum Beispiel ein Baustein abgekündigt wird? Gerade dieser letzte Punkt bedeutet ein Redesign des integrierten Prozessorboards. Bei Einsteckkarten entfällt dieser kostspielige Schritt, da diese in „Form, Fit und Function“ kompatibel sind und einfach ausgetauscht werden können.

Beliebige I/O-Bausteine ansteuern

Nahezu jeder am Markt verfügbare I/O-Baustein lässt sich an das System anbinden und mit LabVIEW ansteuern, zum Beispiel über digitales I/O, synchrone (SPI) und asynchrone (UART) serielle Schnittstellen oder parallele High-Speed-Bussysteme. Typische Beispiele sind Analog-I/O bis 5 MHz, PWM, Counter, Encoder und Digital-I/O, USB, UART, Ethernet, Wireless/WLAN, CAN, RFID, GSM/GPRS, GPS, Zigbee, I²C, SPI, Micro-SD und Color-TFT‘s mit CAP-/Multi-Touch. Das Anbindungskonzept ist unabhängig von der Rechnerplattform: Hardwareentwickler schließen die externen I/O-Bausteine an die Prozessor-Pins an und sorgen für Schutz der fragilen 3,3-V-Signale gegenüber der rauen Außenwelt. In der LabVIEW-Umgebung steht für jede dieser Hardwarefunktionen ein Funktionsblock oder ein Virtuelles Instrument (VI) zur Verfügung (Treiber).

Angewendet in der Praxis

Bild 5: (v.l.n.r) Radnabensensor, Langzeit-Struktur-Monitoring, Drucksteamersteuerung, Ultraschallmessung und Smart-Metering sind erfolgreiche Projekte mit LabVIEW auf Mikroprozessoren.

Bild 5: (v.l.n.r) Radnabensensor, Langzeit-Struktur-Monitoring, Drucksteamersteuerung, Ultraschallmessung und Smart-Metering sind erfolgreiche Projekte mit LabVIEW auf Mikroprozessoren.Schmid Elektronik

Neben dem großen Funktionsumfang sind speziell Qualitätsmerkmale wie schnelle Bootzyklen von weniger als 1 s, Determinismus in Mikrosekunden, Arbeiten ohne Betriebssystem, skalierbarer Stromverbrauch bis mW und stabiler Dauerbetrieb wichtige Gründe, welche die Methode LabVIEW-auf-Mikroprozessoren für den Embedded-Bereich so interessant machen. Der Einsatzbereich ist vielfältig: 1000 m unter dem Meer, auf Schienen, im 19″-Rack, in der Analysen- und Medizintechnik, in der Küche wie im Abwasser. Aufgrund des geringen, skalierbaren Stromverbrauchs eignen sie sich auch sehr gut für mobile und batteriegestützte Aufgaben oder als Mess-Handhelds.

Auf der Embedded World 2014 in Nürnberg wird die Schmid-Elektronik AG diese und weitere Produkte in Halle 4, Stand 426 zeigen.