Obwohl Linux (und Windows für ARM) Fortschritte machen, gilt nach wie vor, dass viele Aufgaben mit X86-CPUs bequemer erledigbar sind. Als Beispiel für viele derartige „X86-Raspberry Pis“ wollen wir hier den Udoo Vision näher ansehen, der seit einigen Tagen kommerziell verfügbar ist.
Wie funktioniert es in der Theorie
Intels Versuche im Embeddedbereich verliefen wenig erfolgreich – die Quark-CPUs kündigte man bald unter Zurücklassung diverser Chippartner ab; Systeme wie der hier gezeigte Arduino Galileo dürften Seltenheitswert haben.
Bildquelle: Tamoggemon Holding k.s.
Heutige Embedded-x86-Systeme nutzen meist die aus dem Netbookbereich bekannten Atom-CPUs, die keine nennenswerten GPIO-Komplemente mitbringen. Zur Lösung des Problems, und aufgrund der extrem schlechten Echtzeiteignung von Desktop-Windows, realisieren so gut wie alle Anbieter einen kombinatorischen Prozessrechner – der Windows-Teil kommuniziert normalerweise per USB mit einem dedizierten zweiten Mikrocontroller, der sich um die Hardwarekommunikation kümmert.
Bildquelle: Udoo.
Im Fall des vorliegenden Systems gibt es derer sogar zwei: neben dem Arduino steht auch ein MEC1705 zur Verfügung, der einige weitere GPIOs und zwei serielle Busse exponiert. Sein unter https://ww1.microchip.com/downloads/aemDocuments/documents/CPG/ProductDocuments/DataSheets/MEC170x-Data-Sheet-DS00002206H.pdf bereitstehendes Datenblatt bietet mehr Informationen zum Thema an.
Inbetriebnahme…
Die Rückseite des Udoo Vision wird komplett vom Kühlkörper bestimmt; neben zwei Ethernet-Ports bringt die Platine auch zwei USB-Ports mit. Zum Installieren von Windows 10 – Windows 11 unterstützt die verwendete Atom-CPU nicht – ist ein Hub erforderlich, weil das Betriebssystemimage in Form eines von Workstation und Co bekannten USB-Stick angeliefert werden muss.
Bildquelle: Tamoggemon Holding k.s.
Für die Stromversorgung kommt zwingend ein dediziertes Netzgerät zum Einsatz, dessen Stecker nicht sonderlich zuverlässig ist. Sonst verhält sich die hier mit 8GB RAM und 64GB internem Flashspeicher ausgestattete Maschine im Allgemeinen so, wie man es von einem Windows-PC erwarten würde.
Der massive Kühlkörper katapultiert den Rechner außerdem in hohe Gewichtsklassen – siehe Abbildung.
Bildquelle: Tamoggemon Holding k.s.
… Findung unüblicher Erweiterungsmöglichkeiten …
Auf der Unterseite findet sich ein Portkomplement, das – unter Anderem – zwei USB 2.0-Ports, einen seriellen Port exponiert (siehe https://udoo.org/download/files/UDOO_VISION/Doc/UDOO_VISION_MANUAL.pdf).
Bildquelle: Tamoggemon Holding k.s.
Externe Erweiterbarkeit (Stichwort Funkmodul) steht in Form eines M2. Key B-Sockels zur Verfügung, außerdem findet sich ein gewöhnlicher SATA-Port. Außerdem ist eine externe Batterie anschließbar, die wohl die Echtzeituhr puffert.
…und Interaktion mit dem Arduino
Ein Blick auf die Unterseite der Platine zeigt – siehe auch das Makrofoto – das Echtzeitelement, das sich schaltungstechnisch streng am Arduino Leonardo orientiert.
Bildquelle: Tamoggemon Holding k.s.
Wer die Arduino IDE startet (oder in den Gerätemanager blickt), stellt fest, dass dieser Eindruck korrekt ist – der Arduno bucht sich unter Windows 10 in COM3 ein, und lässt sich von dort aus wie ein externes Board programmieren.
Kritik am vorliegenden Design
Das wichtigste Problem bei der vorliegenden Platine ist die Energieversorgung: die Verbindung zur Platine geht reproduzierbar verloren, sobald man den Rechner umdreht. Dies ist doppelt schade, weil er nur in diesem „umgedrehten“ Zustand zuverlässig steht – die Füße sind zu kurz.
Bildquelle: Tamoggemon Holding k.s.
Durch die Vibrationsempfindlichkeit disqualifiziert sich das System für die Nutzung als „mobiles Rechensystem“ – egal ob Drohne oder Fahrzeug gilt, dass Vibration zur Bewegung dazugehört.
Lohnt es sich?
x86-Boards sind schon ob der hohen Kosten – die vorliegende Planare wechselt um mehr als 300 EUR den Besitzer – nicht für jeden Einsatz geeignet. Nach Ansicht des Autors lohnt sich die Verwendung immer dann, wenn eine für x64 optimierte Applikation ausgeführt werden muss: Windows on ARM ist nun mal nicht mit allem kompatibel…
Zuerst erschienen bei Mikrocontroller.net News
Quelle: Read More