Arduino: Eine kurze Einführung (Nov. 2015)

Slides:



Advertisements
Ähnliche Präsentationen
Mall GmbH Hersteller von Anlagen zur
Advertisements

Herzlich Willkommen zum Anwendertreffen 2007
Computersimulation steuert echtes Frontpanel an
Link Layer Security in BT LE.
MC WS07 J. Walter. MC Einführung Organisatorisches Einsätze – Beispiele Mikrocontroller.
Weblogs Eine Möglichkeit für selbstorganisiertes Lernen Nora Winkler
RPI-virtuell Die religionspädagogische Plattform im Internet
Was ist Rapid Technologie?
Zentrum Virtueller Maschinenbau (ZVM) Fakultät Maschinenwesen Dresden, R.J. Fischer.
Prototyping.
Vorgehensmodelle – Prototyping
ASAM ODS Daten standardisiert auswerten
Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 1 6. Tipps, Tricks, Idiome Gliederung: 1. Einführung 2. Anforderungsdefinition 3.
Digitale Bilder: Anwendungen und Trends - Prototyping Thomas Wetter 1 Digitale Bilder: Anwendungen und Trends Prototyping Thomas Wetter.
Dokumenten- und Archivsystem auf Basis kommerzieller Software Verband der Bibliotheken des Landes Dokumenten-
1 Informations- und Technikmanagement Prof. Dr.-Ing. Thomas Herrmann IMTM Gst-IS Gliederung der Vorlesung 1.Einführung (2.4.) 2.Was ist ein soziotechnisches.
Typo3 Eine Einführung.
INSTITUT FÜR DATENTECHNIK UND KOMMUNIKATIONS- NETZE 1 Harald Schrom ViEWcon08.
VS. Macintosh Windows.
Analytisch Technische Services Das neue auftragsbasierte LIMS (eLab) für die Analytisch Technischen Services der Infracor GmbH in Marl und der Industriepark.
Microsoft Business Intelligence
Präsentation von Alexander Schönfeld
Chair of Software Engineering Einführung in die Programmierung Prof. Dr. Bertrand Meyer Lecture 13: (Container-)Datenstrukturen.
SQL Azure Administration
Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Hardware / Software Codesign Hardware versus Software.
Cs104 Programmieren II Präsentation Meilenstein 5 Sommersemester 2007 Gruppenname (Gruppe Nr. x) Name 1 (Name der/des Vortragenden unterstreichen) Name.
This work is licensed under a Creative Commons Attribution 2.0 Germany License User Interface Engineering.
Ram/Rom/EPRom Abb. 3 Abb. 3 Abb. 2 Ein Referat von Xaver Schweitzer.
Paul Flora Presentation: Amina Steiner.
Übersicht Präsentation
Kostenfaktoren für einen Asic HW/SW Codesign 2007 Mark VOLCIC
Vienna University of Technology Pirker Simon 1. Überblick Definition Motivation Vorteile Entwurf von VP Pirker Simon 2.
PC Club Zürich 28. März 2011 Herzlich willkommen Roger Furter.
Infoscreen 2.0. Agenda Motivation Projektorganisation Hardware Software Zukunftsvision.
BMT 2013 cc R. Farys 2013
Modul 7 Finanzmanagement. Lernergebnisse  7.1 Einstellung zu Geld.  7.2 Einkommensquellen.  7.3 Ausgaben.  7.4 Wirkungsvolle Planung.  7.5 Soll und.
Dar es Salaam, Tansania.  Freizeitaktivitäten (Malen, Akrobatik, Tanzen, Sport,…)
X-art Premium Account password free March 2015
Mikrocomputertechnik 1 Einführung Prof. J. Walter Stand Oktober Mikrocomputertechnik Jürgen Walter „EVA-WAS-Quickie“ Eingabe – Verarbeitung - Ausgabe.
Komplexitätsmanagment
LOW-COST 3D-Printer Rapid Prototyping.
Reverse Engineering Oostdam Engineering. Reverse Engineering (anhand eines Objektes den Entwurf überprüfen) Objekt Scan Punktwolke Entwurf (CAD ) Oostdam.
Learners´Garden Community-Konzept und redaktionelle Betreuung 1 Wolfgang Neuhaus Fachbereich Physik: Didaktik der Physik, AG Nordmeier Forschungsschwerpunkt:
HST TeleMatic Fernwirktechnik und Automatisierung wachsen zusammen – für die Betriebssicherheit Ihrer Anlagen
ein Entwicklungsprojekt an der INTEC
Site optimieren von dorfmayr u. felbauer. Warum? Seiten sollen schnell geladen werden –Möglich durch Codebearbeitung –Überflüssiges löschen Website sollte.
Der Tragödie erster Teil
Digitale Bilder: Anwendungen und Trends - Prototyping Thomas Wetter 1 Digitale Bilder: Anwendungen undTrends Prototyping Thomas Wetter.
Überlagerungsempfänger
Brainwriting Methode 6-3-5
Personalmanagement II
Pet-Watch Florian Ettemeyer, Johannes Kugele, Ralf Süss, (Daniel Eiringhausen)
Technologietag Baugruppentest Wege der Standardisierung im Funktions- und EOL-Test Markus Koetterl National Instruments Germany GmbH.
A. Steininger TU Vienna 1 Multicore eleganter Work-Around um die Design-Crisis Problemverschiebung in die SW (= auf höhere Ebene) ABER: hohe Parallelität.
Hardware / Software Codesign Hardware versus Software.
Das Wiki System der Freien Universität Berlin. Vorstellungsrunde Bitte stellen Sie sich kurz vor! Wer sind Sie? Haben Sie Erfahrungen in der Nutzung.
Eine kleine Einführung in den Fluginstrumente Selbstbau
Wii - Embedded for Entertainment -
LINUX II Unit 6 RAID & LVM.
Inhaltsverzeichnis Was ist Arduino? Hardwarekomponenten
Unser Mikrocontroller – Der Arduino
Die Schule ist 91 Jahre alt.
Robotik-AG: Programmierung des Arduino
Eine kurze Vorstellung Andreas Bieri HB9TSS
Arbeitsumgebung des FPGA Boards von PLDA
Vom HW-Automaten zum Prozessor
Modell Straßenkreuzung
Verwendung Löschen Sie Linien und Text, die Sie nicht benötigen
Fuzzy Logic.
 Präsentation transkript:

Arduino: Eine kurze Einführung (Nov. 2015) Wolfgang.Keller@wobilix.de

Was ist Arduino http://www.arduino.cc Familie programmierbarer Mikro-Controller Vereinfachen des elektronischen Designs Rapid Prototyping Hacker, Maker Community DIY

Warum! „nur“ ein Mikro-Controller Ein-/Ausschalten ohne booten Billig und flexibel Direktes interagieren mit Hardware Viele Libraries verfügbar für verschiedene HW Wirklich geringer Stromverbrauch (<mA im Winterschlaf) Fun

Shields Erweiterungen Auf das Arduino Board steckbar

Arduino Uno R3 Microcontroller ATmega328 Operating Voltage 5V Input Voltage (recommended) 7-12V Input Voltage (limits) 6-20V Digital I/O Pins 14 (of which 6 provide PWM output) Analog Input Pins 6 DC Current per I/O Pin 40mA DC Current for 3.3V Pin 50mA Flash Memory 32 KB (ATmega328) of which 0.5 KB used by bootloader SRAM 2 KB (ATmega328) EEPROM 1 KB (ATmega328) Clock Speed 16MHz

Unterstützte Programmiersprachen C/C++ (C++ 11) Java Processing – auf dem Host PC zur Darstellung von Daten ...

Developement Tools Arduino IDE (1.0.6 oder 1.5.8 Beta) Atmel Studio Microsoft Visual Studio Eclipse mit Plug-in NetBeans mit und ohne Plug-in Diverse webbasierende IDE ...

Projekte

Beispiel: Blink /* Blink   Turns on an LED on for one second, then off for one second, repeatedly.     This example code is in the public domain.  */ // Pin 13 has an LED connected on most Arduino boards. // give it a name: int led = 13; // the setup routine runs once when you press reset: void setup() {                   // initialize the digital pin as an output.   pinMode(led, OUTPUT);     } // the loop routine runs over and over again forever: void loop() {   digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)   delay(1000);               // wait for a second   digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW

Beispiel: Wetterstation/Sender Arduino mit Atmega328p ersetzt Nächster Schritt des Prototyping Microcontroller mit Temperatur-, Luftdruck- und Luftfeuchtigkeitssensor Billigere Komponenten

Beispiel: Wetterstation/Sender #include "WetterStationSender.h“ #define ONE_WIRE_BUS 4 #define DHT22_PIN 3 #define CE_PIN 9 #define CSN_PIN 10 #define PRINTF_BUF 20 OneWire oneWire(ONE_WIRE_BUS); DallasTemperature sensors(&oneWire); uint8_t getDeviceCount = 0; dht DHT; RF24 radio(CE_PIN, CSN_PIN); const uint64_t pipe = 0xF0F0F0F0E1LL; Adafruit_BMP085 bmp; bool BMP085 = false; char buf[PRINTF_BUF]; char str[8]; void setup() { Serial.begin(115200); setupRF24(); setupDS18x20(); setupBMP085(); } void loop() { getDS18x20(); getDHT22(); getBMP085(); sendData("eof"); sleep(); void sleep() { radio.powerDown(); for (int i = 0; i < 10; i++) { LowPower.powerDown(SLEEP_8S, ADC_OFF, BOD_OFF); } radio.powerUp(); void setupRF24() { printf_begin(); radio.begin(); radio.setAutoAck(1); radio.setRetries(15, 15); radio.enableDynamicPayloads(); radio.openWritingPipe(pipe); void setupDS18x20() { sensors.begin(); getDeviceCount = sensors.getDeviceCount(); if (getDeviceCount != 0) { sensors.setResolution(TEMP_12_BIT); void getDS18x20() { if (getDeviceCount > 0) { sensors.requestTemperatures(); sprintf(buf, "%dx DS18x20", getDeviceCount); sendData(buf); for (int i = 0; i < getDeviceCount; i++) { dtostrf(sensors.getTempCByIndex(i), 3, 2, str); sprintf(buf, " t(%d)=%s", i, str); void getDHT22() { if (DHT.read22(DHT22_PIN) == DHTLIB_OK) { sendData("DHT22"); dtostrf(DHT.temperature, 3, 2, str); sprintf(buf, " t=%s", str); sendData(buf); dtostrf(DHT.humidity, 3, 2, str); sprintf(buf, " f=%s", str); } void setupBMP085() { if (bmp.begin()) { BMP085 = true; void getBMP085() { if (BMP085) { sendData("BMP085"); dtostrf(bmp.readTemperature(), 3, 2, str); dtostrf(bmp.readPressure() / 100, 3, 2, str); sprintf(buf, " p=%s", str); dtostrf(bmp.readAltitude(), 3, 2, str); sprintf(buf, " h=%s", str); dtostrf(bmp.readSealevelPressure() / 100, 3, 2, str); sprintf(buf, " p0=%s", str); dtostrf(bmp.readAltitude(101500), 3, 2, str); sprintf(buf, " hr=%s", str); void sendData(char *buf) { Serial << buf << endl; radio.write(buf, strlen(buf)); delay(100);

Beispiel: Wetterstation/Empfänger #include "WetterStationEmpfaenger.h“ #define CE_PIN 9 #define CSN_PIN 10 #define PRINTF_BUF 20 RF24 radio(CE_PIN, CSN_PIN); const uint64_t pipe = 0xF0F0F0F0E1LL; char buf[PRINTF_BUF]; void setup() { Serial.begin(115200); setupRF24(); } void loop() { while (radio.available()) { uint8_t len = radio.getDynamicPayloadSize(); radio.read(buf, len); buf[len] = '\0'; Serial << buf << endl; void setupRF24() { printf_begin(); radio.begin(); radio.setAutoAck(1); radio.setRetries(15, 15); radio.enableDynamicPayloads(); radio.openReadingPipe(1, pipe); radio.startListening();

Links Arduino IDE http://arduino.cc/en/Main/Software Eclipse plug-in/ suche nach Arduino im Marketplace http://www.baeyens.it/eclipse Sprachen http://arduino.cc/en/Reference/HomePage Libraries http://arduino.cc/de/Reference/Libraries Processing https://www.processing.org Boards und Shields http://arduino.cc/en/Main/Products Fritzing http://fritzing.org/home RWTH-Aachen http://hci.rwth-aachen.de/arduino http://hci.rwth-aachen.de/dorkbot