Low-Cost-Hardware

Arduino als IoT-Maschine - Teil 1

5. Dezember 2014, 10:09 Uhr | Von Dr. Claus Kühnel
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 2

UDOO – zwei Welten auf einem Board

Arduino als IoT-Maschine -Bilder 1 bis 9

Arduino Ethernet Shield
© QIAGEN Instruments AG
Arduino Ethernet
© QIAGEN Instruments AG
Arduino WiFi Shield
© QIAGEN Instruments AG

Alle Bilder anzeigen (9)

Auf dem UDOO treffen zwei Welten zusammen. Bild 8 zeigt ein vereinfachtes Blockschaltbild des UDOO. Ein ausführliches Blockschema kann dem Datenblatt [3] entnommen werden. Auf der linken Seite befindet sich der Arduino-Teil auf Basis eines SAM3X8E. Die analoge I/O wird ausschließlich vom Arduino Device verwaltet. Außerdem wird durch den Arduino die digitale I/O in der gewohnten Weise zur Verfügung gestellt.

Bild 9 zeigt einen Ausschnitt aus der Pinbelegung des UDOO. Einige der Pins sind mit beiden Prozessoren verbunden. Die Initialisierung erfolgt über die Software. Es liegt in der Verantwortung des Programmierers, zu verhindern, dass zwei Ausgänge auf einen I/O-Pin geführt werden. Die komplette Pinbelegung ist unter [4] dokumentiert.

Die rechte Seite von Bild 8 nimmt das Linux Device ein – hier auf der Basis eines i.MX6 ARM Cortex-A9 Quad Core. Setzt man keinen Quad Core ein, dann reduziert sich nicht nur die CPU Performance, sondern auch die zur Verfügung stehende Peripherie. Der i.MX6 stellt mit einer Ethernet- und einer WiFi-Schnittstelle Möglichkeiten für die Einbindung in ein Netzwerk zur Verfügung. Außerdem stehen SD-Card-Schnittstelle und ein USB-Host-Anschluss zur externen Erweiterung zur Verfügung. Über eine SATA-Schnittstelle kann eine externe Festplatte betrieben werden. Alle Pins arbeiten mit 3,3-V-Pegeln, was bei der Anbindung an 5-V-Logik unbedingt beachtet werden muss.

Kommunikation

Der i.MX6 stellt mehrere Schnittstellen zur Verfügung, um mit dem Arduino Device, einem Computer oder einem anderem Mikrocontroller kommunizieren zu können. Zur Kommunikation zwischen Arduino- und Linux Device ist eine UART-Schnittstelle vorgesehen. Beide CPUs können über dieses Interface serielle Daten senden und empfangen, wenn beide mit der gleichen Baud­rate arbeiten. Wie beim Arduino üblich, ist diese Schnittstelle auch an den Anschlüssen TX0 und RX0 der Buchsenleiste abgreifbar. Vom i.MX6 wird das Interface über /dev/ttymxc3 angesteuert. Diese Schnittstellenkonfiguration ist die Standard-Konfiguration der seriellen Kommunikation, über die auf dem i.MX6 entwickelte Arduino Sketches heruntergeladen werden und das Monitorprogramm kommuniziert. Weitere Möglichkeiten sind Software-seitig konfigurierbar. Die Arduino-IDE steht auf dem i.MX6 zur Programmentwicklung zur Verfügung und es kann, etwas Geduld vorausgesetzt, auch auf einen Entwicklungs-PC verzichtet werden.

Auf die Programmierung des Arduino soll an dieser Stelle nicht im Detail eingegangen werden. Hierzu gibt es mittlerweile eine Menge an Literatur. Zwei Titel seien hier stellvertretend aufgeführt [5, 6]. Zu beachten ist, dass ab der Version 1.0 einige Änderungen eingeführt wurden, die beim Portieren von Programmen vorheriger Versionen beachtet werden müssen.

 

Literatur

[1] Weiser, M.: The Computer for the 21st Century. www.ubiq.com/hypertext/weiser/SciAmDraft3.html
[2] Why Google Choosing Arduino Matters and Is This the End of Made for iPod™? Posted by Phillip Torrone, May 12th, 2011. blog.makezine.com/archive/2011/05/why-google-choosing-arduino-matters-and-the-end-of-made-for-ipod-tm.html
[3] i.MX 6Dual/6Quad Applications Processors for Consumer Products. www.freescale.com/files/32bit/doc/data_sheet/IMX6DQCEC.pdf
[4] UDOO Pinout. http://udoo.org/download/files/pinout/Udoo_pinout_diagram.pdf. http://udoo.org/download/files/pinout/UDOO_pinout_alternate_table.pdf
[5] Brühlmann, T.: Arduino Praxiseinstieg: Behandelt Arduino 1.0. mitp-Verlag, 2012.
[6] Kühnel, C.: Arduino: Hard- und Software Open Source Plattform. Skript-Verlag Kühnel, Altendorf (CH), 2011. ISBN 978-3 907857-16-8 (Print); ISBN 978-3-8448-9134-8 (eBook)

 

Der Autor

passend zum Thema

Dr.-Ing. Claus Kühnel 
studierte und promovierte an der Technischen Universität Dresden auf dem Gebiet der Informationselektronik und bildete sich später in Biomedizintechnik weiter. Seit 2004 ist er bei der QIAGEN Instruments AG in Hombrechtikon (CH) als Director Electronic Engineering & Embedded Systems für die Entwicklung von Elektronik-Hardware und Hardware-naher Software verantwortlich.

 

info@ckuehnel.ch



  1. Arduino als IoT-Maschine - Teil 1
  2. Hardware: welches Arduino-Board?
  3. UDOO – zwei Welten auf einem Board

Lesen Sie mehr zum Thema


Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!