Die Technik hinter IoT: Arduino, Raspberry Pi & Co.

Ähnliche Dokumente
Making the Internet of Things

Python macht Embedded Linux angenehmer

Einführung in die Welt der Microcontroller

Netduino Mikroprozessor für.net Entwickler

Atmel AVR für Dummies

BLIT2008-Board. Uwe Berger

EyeCheck Smart Cameras

CU-R-CONTROL. Beschreibung zur Schaltung ATMega16-32+ISP MC-Controller Steuerung auf Basis ATMEL Mega16/32. Autor: Christian Ulrich

AVR-Mikrocontroller mit dem GCC programmieren

Mark VHS Augsburg Einführung in die Mikrocontroller-Programmierung. mark@mark-fink.de

Mikrocontroller. eine Einführung. Florian Schmitt / 34

Produktinformationen. Basis Set Atmel Atmega8 & ISP Programmer. Lieferumfang :

Software ubiquitärer Systeme

Einführung in die Arduino Programmierung am Beispiel eines Roboters.

Vorlesung Rechnersysteme II

Projekt von Sergio Staab, Niklas Abel

Embedded Linux gnublin Board Programmieren Sonstiges. Embedded Linux am Beispiel des Gnublin-Boards

Was ist Arduino? Historie Der Kern Entwicklungsumgebung Hardware Software Und wozu das Ganze? Workshop Mikrorechner 2012 A.

Steuern, Messen, Regeln - mit Mikrocontrollern im Eigenbau

Teil I: Wat isse ne Mikrokontroller?

Autonome Mobile Systeme. Dr. Stefan Enderle

Parallel-IO. Ports am ATmega128

StarterKit Embedded Control SC13 + DK51. From the electronic to the automation

Integrationsseminar und Projekt: IoT und Embedded-Workshop mit Raspberry Pi

Embedded Touch Panel PC OTP/57V

Embedded GNU/Linux mit Gnublin

Bedienung des Infineon Evaluationboards XC167

Raspberry Pi & Co. FTKL-Tagung 2013 DI Edgar Neukirchner

Johannes Kelper Universität Linz. Institut für Elektrische Messtechnik. Dokumentation. ATmeag8-USB Modul. Bernd R. Arminger ATmega8-USB Modul 1

ATMEGA Mikrocontroller Einführung TEIL 1. 4.November 2009 Mönchengladbach

Einführung in Mikrokontroller Benutzung mit dem Arduino Board. Ramon Hofer ICVR

Programmieren in C Teil 3: Mikrocontrollerprogrammierung

C++ mit dem Arduino (Uno und Mega2560)

Single Side AVR Experimentier Board. Version 1.4. erstellt von. Ulrich Radig

1 Mikrocontrollergrundlagen 1. 2 Mikrocontrollerfamilien beurteilen und auswählen 27

Mikrocontroller selbst programmieren. Uwe Berger

MSP 430. Einführung. Was kann er? Hauptthemen. Wie sieht er aus? 64 / 100 polig. Was kann er? MSP 430 1

Android + Arduino Hardware steuern mit Android. Entwicklertag Karlsruhe, Sebastian Wastl

Einführung in das Programmieren in der Sekundarstufe 1. mit einem Arduino und der Physical-Computing-Plattform

Prozessoren für mobile und. eingebettete Systeme II: Die AVR-Architektur. EMES: Eigenschaften mobiler und eingebetteter Systeme

Guten Tag. Holger Lindemann. -Selbstständiger Dienstleister im Bereich Linux. -Hauptentwickler openkonto ehemals Lx-Office

Open- Source embedded GNU/Linux Plattformen

Rechnerarchitektur Atmega Vortrag Atmega 32. Von Urs Müller und Marion Knoth. Urs Müller Seite 1 von 7

Open Source - Mikrokontroller für Mixed Signal ASIC

Das Pollin Atmel Evaluationboard Ver unter Verwendung von MyAVR_Prog Tool und der Arduino IDE ein Kurztutorial

Remote-Objekt-Überwachung. von Jan Schäfer und Matthias Merk

Entwicklungsboard 16F1824

Arduino. Die gesteuerte Open Design Revolution. UserCon Januar 2012, MfK /AXL für Hackerspace FFM

simline Technische Beschreibung simcontrol5 Version 1.07 Modulbeschreibung Eigenschaften

Jan Monsch. Donnerstag, 2. Mai 13

embedded projects GmbH

GNUBLIN - Embedded Linux für Alle

Projekt: Roboter. Florian Grohnert. Semih Kisakaya

SU Egerlandstr. 24a, Moosburg 08761/4245 oder 63708, FAX Vorteile der Cartridges

Nicht nur zum Spielen geeignet Atmels AVR und AVR32 Xplain Evalkitserie sind die ideale Hardwareplattformen für das neue AVR Studio 5

Microcontroller. Seminararbeit zum Thema. Microcontroller. bei Prof. Dr. K.O. Linn. von Benjamin Zanke 1/12

Ulrich Stein

Physical-Computing mit der Arduino Plattform

Erste Schritte. Das Arduino-Board. Ihr Fundino-Board. Programmieren für Ingenieure Sommer Andreas Zeller, Universität des Saarlandes

TBE332 Controller. Produktbeschreibung

mytinyprog MK2 USB Stefan Hoffmann

Beschaltung eines Mikrocontrollers. Jordi Blanch Sierra Steuerungsgruppe

3D-Druckserver mit 32-Bit Arm Prozessoren realisiert mit UDOO Quad und RADDS v1.1

Projekt von Sergio Staab, Niklas Abel

Steuern und Messen mit Raspberry Pi

Raspberry Pi. Einführung Pi and More 8 Nico Maas

Arduino Kurs Zusammenarbeit Bodo - Norbert Inhalte - weitere Planung - Projekte JT 65 - neue Betriebsart mit Flüsterfunk (Whispering) Projekt WSPR

Starten Sie die Arduino IDE und geben Sie den folgenden Programmcode ein:

Projekt 25 ASURO ARX-03

Der Mikrocontroller beinhaltet auf einem Chip einen kompletten Mikrocomputer, wie in Kapitel

RN-Control ARDUINO Bibliothek ATMEL 32 Version 0.2

grifo Mini Module Test 2

32-Bit Microcontroller based, passive and intelligent UHF RFID Gen2 Tag. Zürcher Fachhochschule

Physical Computing. Ralf Nolte. Bielefeld, 13. Dezember 2011

Projektarbeit: Roulette Spiel

DIY. Personal Fabrica1on. Digitale Welt. Juergen Eckert Informa1k 7

Microcontroller Kurs Microcontroller Kurs/Johannes Fuchs 1

Slow Control System SCS3000 / Midas Slow Control Bus (MSCB)

Mikrocontroller von Markus Koch April 2011

Klaus Dembowski, Mikrocontroller Der Leitfaden für Maker, dpunkt.verlag, ISBN

Raspberry Pi. Einführung Pi and More 5 Nico Maas

Umbau eines Saug- und Wisch Roboters auf ARDUINO Steuerung

Gforth EC auf dem NXT Brick

Board 1 - Teil 1. by AS. Prozessor Board 1 mit dem AT 1284 P, 3 x Ports, ISP und 2 x I 2 C Bus = Teil 1 Hardware =

Makros sind Textersetzungen, welche vom Präprozessor aufgelöst werden. Dies Passiert bevor der Compiler die Datein verarbeitet.

Raspberry Pi. Einführung Pi and More 6 Nico Maas

ICmega8 / ICmega8-USB

HelvePic32 Breadboard. Internet Data Logger

X-MAX-400 SORCUS. High Performance X-Bus Modul. Eigenschaften

analoge Ein- und Ausgänge

Mikrocontroller in eigenen Hobbyprojekten nutzen

Datenblatt: TERRA PC-GAMER ,00. Gaming-PC mit 120GB SSD + NVIDIA GTX 970 Grafik. Zusätzliche Artikelbilder IT. MADE IN GERMANY

Spezielle Aspekte des HCI: Interaction Design with Arduino

Schaltungshinweise zum Linux Control System mit DIL/NetPC DNP/7520

80C535-Mikrocontroller-Board im Streichholzschachtelformat

Mikrocontroller stromsparend. Uwe Berger

Einführung in MCU. Viktor Seib

Industrie-PC 140. msc.io. Kurzbeschreibung. Eigenschaften. Einsetzbar für

Transkript:

Die Technik hinter IoT: Arduino, Raspberry Pi & Co. Praxisbeispiele für den Hausgebrauch Uwe Steinmann MMK GmbH 25.-26. September 2017 Uwe Steinmann (MMK GmbH) Die Technik hinter IoT 25.-26. September 2017 1 / 16

Inhalt 1 Die Zutaten für IoT 2 Die Hardware 3 Die Vernetzung 4 Einige Hardware-Beispiele 5 Die Software Uwe Steinmann (MMK GmbH) Die Technik hinter IoT 25.-26. September 2017 2 / 16

Die Zutaten für IoT Internet Dinge Genaugenommen braucht man einen Zugang aus dem Internet zu den Dingen... es fehlt sicher noch ein Stück Hardware... und natürlich noch etwas Software... und letztlich noch eine Verbindung und ein Protokoll, um mit den Dingen zu reden Uwe Steinmann (MMK GmbH) Die Technik hinter IoT 25.-26. September 2017 3 / 16

Die Zutaten für IoT Netzwerkverbindung zwischen Internet und den Dingen Prozessor, Speicher, diverse Schnittstellen und Sensoren Datenerfassung, Protokolle, Dienste im Internet zum Speichern oder Abholen von Daten Das existiert schon seit mindestens 25 Jahren und doch ist das IoT kaum älter als ein paar Jahre. Nur kabelgebundene Verbindung zum Internet oder proprietäre Funkverbindungen Fehlende Minaturisierung und Integration aller notwendigen Hardware-Komponenten in einem Chip Effiziente Protokolle, die sich mit wenig Hardware-Ressourcen umsetzen lassen Fehlende Stromsparmodi Uwe Steinmann (MMK GmbH) Die Technik hinter IoT 25.-26. September 2017 4 / 16

Die Hardware mindestens 8-Bit Prozessorkern einige KB ROM (EPROM, EEPROM, Flash) einige hundert Byte RAM PIO, UART ADC, DAC, Timer, Watchdog, I2C, USB Das alles nach Möglichkeit auf einem Chip Mikrocontroller Uwe Steinmann (MMK GmbH) Die Technik hinter IoT 25.-26. September 2017 5 / 16

Die Hardware (Prozessor) Intel MCS-51 Baureihe, z.b. 8051 (On-Chip-ROM, 128B RAM, UART, Timer, 1980), Siemens 80C517 (MCS-51 kompatible, 256B RAM, ADC, 16-Bit-Arithmetik, Watchdog, Power-Modi, ca. 1990) MCS-51 kompatible MC von ATMEL, MAXIM/DALLAS mit Flash Motorola 68HC11 (512B CMOS EEPROM, 256B RAM, 8K ROM, ADC, UART, PWM, 1985) Microchip Technology PICmicro, PIC32 (8-, 16, 32-Bit Prozessoren, zunächst EPROM, später Flash, sehr viele Varianten) TI MSP430 (16-Bit RISC, niedriger Stromverbrauch, ADC, DAC, Timer, I2C, USB, etc., Anfang 1990) Atmel AVR, AVR32 (ATmega324P, ATtiny85, etc., seid 1996) STMicroelectronics STM32 (32-Bit, Cortex-M, ADC, Timer, etc., seit 2007) Uwe Steinmann (MMK GmbH) Die Technik hinter IoT 25.-26. September 2017 6 / 16

Die Hardware (Boards) Oft minimale Beschaltung der Mikrocontroller für Entwicklungszwecke und prototypische Anwendungen. Arduino mit ATmega Arduino Nano mit ATmega Digispark mit ATTiny Blue/Black Pill mit STM32 STM32 Nucleo Diverse Boards mit PIC LaunchPad mit MSP430 Uwe Steinmann (MMK GmbH) Die Technik hinter IoT 25.-26. September 2017 7 / 16

Die Vernetzung Kabelgebunden Ethernet USB Kabellos WLAN Bluetooth Mobilfunk ZigBee Z-Wave Weitere IoT-Funksysteme für spezielle Anforderungen Uwe Steinmann (MMK GmbH) Die Technik hinter IoT 25.-26. September 2017 8 / 16

Beispiele Die kleine Lösung spezielle Varianten der genannten Boards Erweiterung der Boards mittels Shields (Ethernet, WLAN, etc.) Kombination der Boards mit BlueTooth/WLAN-Modulen mit serieller Schnittstelle Die große Lösung Raspberry PI 1/2/3 Raspberry PI Zero W BeagleBone WLAN-Module, die auch programmiert werden können, z. B. ESP8266, ESP32 von Espressif Uwe Steinmann (MMK GmbH) Die Technik hinter IoT 25.-26. September 2017 9 / 16

Digispark ATtiny85 von Microchip (früher ATMEL) 8Kb Flash 512 B SRAM 512 B EEPROM max. 20 MHz, 16,5 MHz mit int. Oszillator DIP8 Gehäuse, max. 6 IO-Pins ADC, TWI, Timer Programmierbar in C/C++, Assembler Uwe Steinmann (MMK GmbH) Die Technik hinter IoT 25.-26. September 2017 10 / 16

ESP8266 Espressif 4-16 MB Flash (extern) 96 KB SRAM 80/160 MHz in der Regel als fertiges Modul verfügbar WLAN Programmierbar in C mit SDK des Herstellers, nicht vollständig freie Software, auch als Modem nutzbar ca. 20% der Rechenleistung für WLAN LUA, Python Uwe Steinmann (MMK GmbH) Die Technik hinter IoT 25.-26. September 2017 11 / 16

Raspberry PI Zero W 1 GHz Single Core CPU 512 MB RAM Steckplatz für SD-Card HDMI, USB, 40 Pin-Header Bluetooth 4.1 und Low Energy WLAN Uwe Steinmann (MMK GmbH) Die Technik hinter IoT 25.-26. September 2017 12 / 16

Die Software vollständiges Linux, oft Debian-basiert reduziertes Linux, z. B. OperWRT, busybox, ulibc MicroPython, LUA, JavaScript C-Programme unter Verwendung verschiedener SDKs Assembler Uwe Steinmann (MMK GmbH) Die Technik hinter IoT 25.-26. September 2017 13 / 16

Das Hello World des Arduino int led = 13; void setup() { pinmode(led, OUTPUT); } void loop() { digitalwrite(led, HIGH); delay(1000); digitalwrite(led, LOW); delay(1000); } Uwe Steinmann (MMK GmbH) Die Technik hinter IoT 25.-26. September 2017 14 / 16

C Es geht auch in schlichtem C, übersetzt mit avr-gcc und Upload mittels arvdude #define LED PB1 int main() { DDRB = (1 << LED); // LED as output PORTB = 0; // Init Port B } while(1) { PORTB ^= (1 << LED); // Toogle LED _delay_ms(500); wdt_reset(); // Reset Watchdog } Uwe Steinmann (MMK GmbH) Die Technik hinter IoT 25.-26. September 2017 15 / 16

C LUA auf Basis von NodeMCU wifi.setmode(wifi.station) function listap(t) -- (SSID : Authmode, RSSI, BSSID, Channel) end station_cfg={} station_cfg.ssid="dd-wrt" station_cfg.pwd="xxxxxx" wifi.sta.config(station_cfg) wifi.sta.getap(1, listap) srv=net.createserver(net.tcp) srv:listen(80,function(conn) conn:on("receive",function(conn,payload) local buf = "Hallo Welt" conn:send(buf) end) conn:on("sent",function(conn) conn:close() end) end) Uwe Steinmann (MMK GmbH) Die Technik hinter IoT 25.-26. September 2017 16 / 16