powered by CADENAS

Social Share

Amazon

Arduino (Plattform) (12379 views - Computer)

Arduino ist eine aus Soft- und Hardware bestehende Physical-Computing-Plattform. Beide Komponenten sind im Sinne von Open Source quelloffen. Die Hardware besteht aus einem einfachen E/A-Board mit einem Mikrocontroller und analogen und digitalen Ein- und Ausgängen. Die Entwicklungsumgebung basiert auf Processing und soll auch technisch weniger Versierten den Zugang zur Programmierung und zu Mikrocontrollern erleichtern. Die Programmierung selbst erfolgt in einer C bzw. C++-ähnlichen Programmiersprache, wobei technische Details wie Header-Dateien vor den Anwendern weitgehend verborgen werden und umfangreiche Bibliotheken und Beispiele die Programmierung vereinfachen. Arduino kann verwendet werden, um eigenständige interaktive Objekte zu steuern oder um mit Softwareanwendungen auf Computern zu interagieren (z. B. Adobe Flash, Processing, Max/MSP, Pure Data, SuperCollider, diversen Skriptsprachen, Terminal, vvvv etc.). Arduino wird beispielsweise auch an Kunsthochschulen genutzt, um interaktive Installationen aufzubauen. Das Arduino-Projekt wurde im Rahmen des Prix Ars Electronica 2006 mit einer Anerkennung in der Kategorie Digital Communities ausgezeichnet.
Go to Article

Explanation by Hotspot Model

Arduino (Plattform)

Arduino (Plattform)

Arduino (Plattform)
Arduino

Screenshot der Arduino-IDE (Version 1.6.0)
Basisdaten
Entwickler Arduino
Aktuelle Version 1.8.5[1]
(2. Oktober 2017)
Betriebssystem Windows, Linux, macOS
Programmiersprache C und C++ und AVR-Assembler (IDE: Java)
Kategorie Freie Hardware
Lizenz LGPL/GPL (freie Software)
www.arduino.cc arduino.org

Arduino ist eine aus Soft- und Hardware bestehende Physical-Computing-Plattform. Beide Komponenten sind im Sinne von Open Source quelloffen. Die Hardware besteht aus einem einfachen E/A-Board mit einem Mikrocontroller und analogen und digitalen Ein- und Ausgängen. Die Entwicklungsumgebung basiert auf Processing und soll auch technisch weniger Versierten den Zugang zur Programmierung und zu Mikrocontrollern erleichtern. Die Programmierung selbst erfolgt in einer C bzw. C++-ähnlichen Programmiersprache, wobei technische Details wie Header-Dateien vor den Anwendern weitgehend verborgen werden und umfangreiche Bibliotheken und Beispiele die Programmierung vereinfachen. Arduino kann verwendet werden, um eigenständige interaktive Objekte zu steuern oder um mit Softwareanwendungen auf Computern zu interagieren (z. B. Adobe Flash, Processing, Max/MSP, Pure Data, SuperCollider, diversen Skriptsprachen, Terminal, vvvv etc.). Arduino wird beispielsweise auch an Kunsthochschulen genutzt, um interaktive Installationen aufzubauen.

Das Arduino-Projekt wurde im Rahmen des Prix Ars Electronica 2006 mit einer Anerkennung in der Kategorie Digital Communities ausgezeichnet.[2]

Geschichte

Das erste Board wurde 2005 von Massimo Banzi und David Cuartielles entwickelt. Der Name „Arduino“ wurde von einer Bar in Ivrea übernommen, in der sich einige der Projektgründer gewöhnlich trafen. (Die Bar selbst wurde nach Arduin von Ivrea benannt, der von 1002 bis 1014 auch König von Italien war.)[3] David Mellis entwickelte die auf C/C++ basierende Diktion dazu. Das Schema wurde im Netz veröffentlicht und unter eine Creative-Commons-Lizenz gestellt. Die erste Auflage betrug 200 Stück, davon gingen 50 an eine Schule. Bis 2008 wurden etwa 50.000 Boards verkauft.[4]

Rechtsstreit um die Marke Arduino

Vom Januar 2015 bis Ende August 2016[5] befanden sich die Gründergruppe der Arduinoplattform (Arduino LLC) und die Produzenten der offiziellen Arduinoboards (Arduino S.r.l.) in einem Rechtsstreit um die Inhaberschaft des Markenrechtes von Arduino. Demnach habe die Arduino S.r.l. die Marke Arduino für die Nizza-Klassen 9 und 42 registriert, während die Arduino LLC die Marke zeitgleich in den USA nur für die Nizza-Klasse 9 registrierte. Nun war unklar, ob diese parallelen Markenrechtseintragungen legitim waren bzw. wem nun die Marke Arduino gehörte.[6]

Im März 2015 gab der Arduino-Gründer Massimo Banzi bekannt, dass der Hersteller der Arduinoboards Arduino S.r.l. seit einem Jahr keine Lizenzgebühren mehr an die Arduino LLC zahle,[7] mit denen jedoch zuvor die relativ hohen Preise der Arduinoboards begründet wurden.

Zeitweise existierten zwei Webpräsenzen von Arduino: arduino.org, die von der Arduino S.r.l. betreut wird, sowie arduino.cc, die von der Arduino LLC aufgebaut wurde. Auf diesen Websites wurden seit dem Rechtsstreit verschiedene Varianten der Arduino IDE mit unterschiedlichen Versionsangaben zum Download angeboten.[8] Diese waren nicht vollständig mit der Hardware des jeweils anderen Unternehmens kompatibel. Mit Version 1.8 wurden beide Varianten wieder zusammengefügt. Seitdem gibt es wieder eine offizielle Version, die die Boards beider Unternehmen unterstützt.[9]

Entstehung der Marke Genuino

Bei einer Veranstaltung des US-amerikanischen Magazins Make im kalifornischen San Mateo am 16. Mai 2015 stellte Massimo Banzi einen neuen Markennamen für das Arduino-Projekt vor, der Genuino lautet.[10] Dieser neue Markenname soll in solchen Situationen genutzt werden, wo die Markenrechte der eigentlichen Marke Arduino ungeklärt sind.[11] Außerdem kündigte er an, zukünftig Boards von mehreren Herstellern herstellen zu lassen, anstatt von einem einzigen, wie es bisher der Fall war. Banzi nannte die Firma Adafruit Industries als ersten offiziellen Hersteller.[10][11][12] Die Gründerin von Adafruit Industries Limor Fried bestätigte die Zusammenarbeit.[13] Damit macht sich die Arduino LLC unabhängig von den eigentlichen Hersteller der Arduinoboards Arduino S.r.l.

Im Juni 2015 gab Banzi in Shenzhen die Zusammenarbeit mit dem Hersteller Seeedstudio bekannt, der die Microcontroller-Boards mit der neu erschaffenen Marke Genuino herstellen soll. Mit den von Seeedstudio hergestellten Boards soll der asiatische Markt, insbesondere der chinesische Markt, bedient werden.[14]

Auf der Maker Faire Rom im Oktober 2015 wurden zum ersten Mal Genuino Boards aus europäischer Produktion verkauft. Die Boards wurden von Watterott electronic aus Deutschland und AXEL Elettronica aus Italien gefertigt.[15]

Die Marke Genuino soll nun für jene Microcontroller-Boards verwendet werden, die außerhalb der Vereinigten Staaten verkauft werden. Außer der neuen Marke sollen die verkauften Boards sich nicht von den ehemaligen Arduino-Boards unterscheiden.[16] Anscheinend ist die Rechtslage um die Markenrechte von Arduino nur in den Vereinigten Staaten eindeutig.[17][18]

Bei der World Maker Faire 2016 in New York haben sich die Arduino S.r.l. und die Arduino LLC darauf geeinigt, die Streitigkeiten beizulegen, dafür sollen alle Produkte einzig über eine neu gegründete kommerzielle Arduino Holding vertrieben werden. Außerdem soll die gemeinnützige Arduino Foundation gegründet werden, die als not-for-profit Organisation die weitere Entwicklung der Open-Source Software Arduino Desktop IDE vorantreibt.[19][20] Deswegen sind Arduino S.r.l. und Arduino LLC Ende 2016 in der Arduino AG aufgegangen. Allerdings wurde selbige nach Betrugsvorwürfen gegen den Geschäftsführer und Hauptanteilseigner Federico Musto von der von Gründern des Arduino-Projekts gegründeten BCMI aufgekauft.[21]

Hardware

Die Hardware eines typischen Arduinoboards basiert auf einem Atmel-AVR-Mikrocontroller aus der megaAVR-Serie wie dem ATmega328. Abweichungen davon gibt es unter anderem bei den Arduinoboards Arduino Due (ARM Cortex-M3 32-Bit-Prozessor vom Typ Atmel SAM3X8E), Yún, Tre, Gemma und Zero, wo andere Mikrocontroller von Atmel eingesetzt werden. Eine Besonderheit stellen zudem die Arduinoboards Yún und Tre dar, die zusätzlich zum Mikrocontroller einen stärkeren Mikroprozessor besitzen. Alle Boards werden entweder über USB (5 V) oder eine externe Spannungsquelle (7–12 V) versorgt und verfügen über einen 16-MHz-Schwingquarz. Es gibt auch Varianten mit 3,3 V-Versorgungsspannung und Varianten mit abweichendem Takt. Über Erweiterungen können auch andere Mikrocontroller, etwa der ESP8266 über die Arduino-IDE programmiert werden.

Konzeptionell werden alle Boards über eine serielle Schnittstelle programmiert, wenn Reset aktiviert ist. Der Mikrocontroller ist mit einem Bootloader vorprogrammiert, wodurch die Programmierung direkt über die serielle Schnittstelle ohne externes Programmiergerät erfolgen kann. Bei älteren Boards wurde dafür die RS-232-Schnittstelle genutzt. Bei aktuellen Boards geschieht die Umsetzung von USB nach seriell über einen eigens entwickelten USB-Seriell-Konverter, basierend auf dem ATmega8u2. Zuvor wurde das mit dem populären Baustein FT232RL von FTDI realisiert. Die Version Arduino Leonardo verwendet als Prozessor den ATmega32u4, der die USB-Unterstützung nativ bereitstellt und sich damit auch als Tastatur oder Maus gegenüber einem PC ausgeben kann.

Alle Arduinoboards, bis auf den Arduino Esplora, stellen digitale Input- und Output-Pins (kurz: I/O-Pins) des Mikrocontrollers zur Nutzung für elektronische Schaltungen zur Verfügung. Üblich ist auch, dass eine bestimmte Anzahl dieser Pins PWM-Signale ausgeben können. Zusätzlich stehen dem Benutzer eine bestimmte Anzahl an analogen Eingängen zur Verfügung. Für die Erweiterung werden vorbestückte oder teilweise unbestückte Platinen – sogenannte „Shields“ – angeboten, die auf das Arduino-Board aufsteckbar sind. Es können aber auch z. B. Steckplatinen für den Aufbau von Schaltungen verwendet werden.

Software

Arduino bringt eine eigene integrierte Entwicklungsumgebung (IDE) mit, die auf Wiring IDE basiert. Dabei handelt es sich um eine Java-Anwendung, die für die gängigen Plattformen Windows, Linux und MacOS kostenlos verfügbar ist. Sie basiert auf der IDE von Processing, einer auf die Einsatzbereiche Grafik, Simulation und Animation spezialisierten Entwicklungsumgebung. Die Arduino-IDE bringt einen Code-Editor mit und bindet gcc als Compiler ein. Zusätzlich werden die avr-gcc-Library und weitere Arduino-Librarys eingebunden, die die Programmierung in C und C++ stark vereinfachen.

Für ein funktionstüchtiges Programm genügt es, zwei Funktionen zu definieren:

  • setup() – wird beim Start des Programms (entweder nach dem Übertragen auf das Board oder nach Drücken des Reset-Tasters) einmalig aufgerufen, um z. B. Pins als Eingang oder Ausgang zu definieren.
  • loop() – wird durchgehend immer wieder durchlaufen, solange das Arduino-Board eingeschaltet ist.

Hier ein Beispiel für ein Programm (in der Arduino-Diktion: Sketch), das eine an das Arduino-Board angeschlossene LED blinken lässt:

int ledPin = 13;               // Die LED ist an Pin 13 angeschlossen, was in der Integer-Variable ledPin gespeichert ist.
                               // Bei vielen Boards ist auf der Platine eine LED integriert, welche sich über diesen Pin 13 ansteuern lässt.

void setup() {
  pinMode(ledPin, OUTPUT);     // legt den LED-Pin als Ausgang fest
}

void loop() {
  digitalWrite(ledPin, HIGH);  // LED anschalten
  delay(1000);                 // 1000 Millisekunden warten
  digitalWrite(ledPin, LOW);   // LED ausschalten
  delay(1000);                 // weitere 1000 Millisekunden warten
}

Mit S4A (Scratch for Arduino) und mblock (basierend auf scratch) gibt es Scratch-Modifikationen, die freie visuelle Programmiersprache mit Programmierumgebung für den Arduino-Mikrocontroller zur Verfügung stellt.[22]

Weiterhin bietet Arduino mit Arduino Create eine webbasierte Lösung an, um im Browser zu programmieren. Geschriebene Sketche werden online in einer Cloud abgelegt.[23] Die Kommunikation zwischen Browser und Arduinoboard wird über Plugins für das jeweilige Betriebssystem ermöglicht. Arduinoboards können über USB und Netzwerkverbindung angesprochen werden. Die Nutzung von Arduino Create erfordert eine kostenlose Registrierung bei diesem Dienst. Betrieben wird die Plattform durch Amazon Web Services.[24]

Galerie

Ähnliche Geräte

Siehe auch



This article uses material from the Wikipedia article "Arduino (Plattform)", which is released under the Creative Commons Attribution-Share-Alike License 3.0. There is a list of all authors in Wikipedia

Computer

Computer, Hardware, Software