Hardware
Anforderungen¶
- Direkt Adressierbar, Gerät zu Gerät (Master/Slave), Gerät zu Smartphone/Tablet (Wearables) oder Gerät - Cloud
- Einfache Einbindung in bestehende Netzwerke (Ethernet, WLAN, Bluetooth)
- Anpassung an limitierte Ressourcen der Geräte (min. 32KB Flash, 4KB RAM) oder Wissen der Anwender
- Skalierbar von 250 - 300 Geräte in einem Haushalt
- Antwortzeiten unter 100 Millisekunden für eine typische Interaktion (z.B. im Auto)
- Nahtlose Integration mit Smartphones und Tablets
- Minimaler Stromverbrauch für lange Batterielebensdauer (ein Jahr und länger)
Quelle Bild: swisscom M2M Day 2015
Mikrocontrollerboard¶
Für die nachfolgenden Programme verwenden wird das K64F Board von Freescale:
Das Board verwendet einen ARM Cortex M4 Mikrocontroller, welche speziell für den embedded Bereich optimiert ist. Gegenstück sind ARM Cortex A Mikrocontroller welche für ein Einsatz in Smartphones, Tablets, (Raspberry Pi) optimiert sind und ein Standard Betriebssystem (Android, Linux, Windows 10) voraussetzen.
Weitere Informationen: ARM Cortex Family
Shield (Aufsatz)¶
Ergänzt wird das Board vom IoTKit (Internet of Things Kit), ein Arduino kompatibler Shield (Aufsatz):
Dieser führt die Pin's vom Board nach oben und fügt weitere Funktionalitäten hinzu.
- Sensoren: Poti (A0), Lichtsensor (A1), Hall (Magnet) Sensor (A2), Mikrophon (A3), Buttons A0 – A2, Temperator (I2C)
- Aktoren: 3 x Schrittmotortreiber (D2-D5), 2 x Motor (D2-D7), Summer (D7), 3 x MOSFET (D5-D7), 4 Digit Display (I2C), 4 LED (D10-D13)
- Anschlüsse: Servo's (D9, D10), EPS8266 WLAN Modem, MFRC522-RFID Reader, Infrarot Empfänger (A5), Funk mit 433MhZ (D9), Universelle Anschlüsse mit Signal, 5V, Ground (A0 – A5, D2-D7), 2 x I2C, 2 x SPI, 1 x Serial.
Weitere Mikrocontrollerboards https://developer.mbed.org/platforms/ und Komponenten https://developer.mbed.org/components/
IoTKit Bag (Beutel) - Workshop Edition¶
Der IoTKit Bag (Beutel) - Workshop Edition ergänzt das Board und den IoTKit um weitere Sensoren und Aktoren wie:
- RFID Reader mit 2 RFID Tag's
- Temperatur und Luftfeuchtigkeitssensor
- Ultraschall Abstandssensor
- PIR Bewegungsmelder
- Rad und entsprechender Motor
- ein Servo
- ein (SPI) RGB LED Strip
- ein RGB LED Strip (12 Volt)
- ein Schrittmotor 28BYJ-48 mit Endschalter
- USB und Ethernet Kabel
- 12 Volt Netzteil
Elektronik 1x1¶
Unter Elektronik (Lehre von der Steuerung von Elektronen) werden alle Vorgänge in Steuer-, Regel- und Verstärkerschaltungen sowie die Vorgänge in den hierfür verwendeten Bauelementen verstanden (http://de.wikipedia.org/wiki/Elektronik)
Ein Widerstand ist ein zweipoliges passives elektrisches Bauelement zur Realisierung eines ohmschen Widerstandes in elektrischen und elektronischen Schaltungen | |
Eine Diode (Leuchtdiode - LED) ist ein elektrisches Bauelement, das Strom nur in einer Richtung passieren lässt und in der anderen Richtung als Isolator wirkt. | |
Ein Transistor (MOSFET, IC Treiber, H-Brücke) ist ein elektronisches Bauelement zum Schalten und Verstärken von elektrischen Signalen, |
Installation¶
Serielle Schnittstelle (USB)¶
Gleichzeit mit dem USB Laufwerk/Mountpoint wird eine Serielle Schnittstelle für die Kommunikation mit dem PC über ein Terminalprogramm eingerichtet.
Windows | Mac | Linux |
Um den Seriellen Port (COMxx) unter Windows zu finden, ist wie folgt vorzugehen. Startmenu -> Systemsteuerung -> Hardware und Sound -> Geräte Manager. ACHTUNG: Bei Windows muss evtl. das Board entfernt und nochmals verbunden werden, damit der Serielle Treiber installiert wird. Wenn dies nicht funktioniert, muss der Treiber manuell von der Seite Windows serial configuration installiert werden. | Der Serielle Port, findet man unter Mac, in dem man auf der Kommandozeile ''ls /dev/tty.usbmodem*'' eingibt. | Der Serielle Port, findet man unter Linux, in dem man auf der Kommandozeile ''ls /dev/ttyACM*'' eingibt. |
Als Terminalprogramm unter Windows eignet sich am besten TerraTerm | Als Terminalprogramm unter Mac eignet sich am besten CoolTerm | Als Terminalprogramm unter Linux eignet sich am besten picocom |
Feintuning | ||
termpro.exe öffnen, Setup -> Serial Port ''COM von oben einstellen Setup -> Terminal -New-line Receive LF einstellen Setup -> Save Setup | Installation mittels ... CoolTerm starten Verbindungen trennen Device auswählen Verbindung herstellen. | sudo apt-get install picocom picocom - -imap lfcrlf /dev/tty''Port'' Zum beenden CTRL+a und CTRL+q drücken |
Weitere Informationen zu Terminalprogrammen sind auf der mbed Seite
Die Standardeinstellungen für den Seriellen Port (USB) sind 9600 baud, 8 bits, 1 stop bit, no parity (aka 9600-8-N-1)
Testprogramm
Import programSerial
Ausgabe auf Serieller Schnttstelle
Zusammenfassung¶
- Arduino ist wohl der erfolgreichste Mikrocontroller Board. Es Standardisierte die Art wie aufsteckbare Erweiterungsplatinen sogenannte Shields, verwendet werden. Es wird hauptsächlich für Do-it-yourself-Hobbyprojekte eingesetzt.
- Systeme, bei denen ein Mikrocontroller innerhalb eines Gerätes arbeitet, werden im professionellen Bereich eingebettete (Embedded) Systeme genannt.
- http://mbed.org mbed ist Plattform und Betriebssystem für Internet-verbundene Geräte auf Basis von 32-Bit- ARM Cortex-M -Mikrocontroller. Solche Geräte werden auch als Internet der Dinge Geräte bezeichnet.