Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Internet of Things - Projektvortrag Dennis Müller Hochschule RheinMain

1. Februar 2017

Charge Monitor

Dennis Müller

1/22

Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Gliederung

1

Einführung

2

Lösungsansätze zu Problemstellungen

3

Umsetzung

4

Evaluation

Charge Monitor

Dennis Müller

2/22

Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Die Idee

Mobile Geräte benutzen USB-Kabel zum Aufladen Spezielles Kabel/Setup, um Stromverbrauch zu messen Verbrauch verschiedener Geräte speichern Weiterverarbeitung: Prädiktive Ladestation, Stromverbrauchzähler?

Charge Monitor

Dennis Müller

3/22

Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Problemstellung

Stromfluß durch ein USB-Verlängerungskabel messen? → Universelle Messtation. Geräte identifizieren? Speichern der Daten?

Charge Monitor

Dennis Müller

4/22

Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Strommessung

USB-Kabel aufschneiden und Messgerät in Reihe der VCC-Leitung schalten. ACS712 mit 5A Reichweite für einfachen Setup des Prototypen. (Nicht optimal, da USB maximal 1,5A zulässt, und das auch nur im C-Standard) Benötigt Analog-Digital-Wandler zum Auslesen.

Abbildung 1: Seziertes USB3.0Verlängerungskabel

Abbildung 2: ACS712 Charge Monitor

Dennis Müller

5/22

Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Identifikation Klassische IoT-Umsetzung zum Identifizieren von Objekten: RFID Weit verbreiteter Tag-Leser für DIY-Anwendungen: MF RC522 Kommunikation via SPI-Bus

Abbildung 3: Mifare RC522 RFID-Tag Reader

Charge Monitor

Dennis Müller

6/22

Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Datenspeicherung

Übertragung der Daten an einen Dienst Einfache Massendatenspeicherung Eventuelle integrierte Analysetools Lediglich Internetverbindung für Prototypen benötigt Für den Prototypen wird Keen.IO als Dienst verwendet, da es vollkommen dynamisch Events in verschiedenen Kanälen aufnehmen kann.

Charge Monitor

Dennis Müller

7/22

Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Internetverbindung

Ethernet-Kabel? → Weiteres Kabel, das verbunden werden muss, zusätzlich zur Versorgung des Prototypen und zum USB-Verlängerungskabel WLAN? → Lediglich AP in der Nähe benötigt, günstige Option besteht im ESP8266. Kann via serieller Kommunikation über 2 Pins mit Kommando-Set angesteuert werden. Abbildung 4: Espressif ESP8266 WLAN-Chip

Charge Monitor

Dennis Müller

8/22

Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Verbinden der Lösungsansätze

Abbildung 5: Verbinden der Ansätze? Charge Monitor

Dennis Müller

9/22

Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Arduino als Arbiter

Der Arduino Uno bietet alle benötigten Hardware-Schnittstellen. Darübehinaus gibt es viele Libraries, teilweise von Dritten, die das Prototyping erleichtern.

Abbildung 6: Arduino Uno1 1

Quelle: http://www.arduino.org/media/k2/galleries/90/A000073Arduino-Uno-SMD-1front.jpg Charge Monitor Dennis Müller

10/22

Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Umsetzung ACS712 ACS712 wird durch Arduino versorgt, da die Versorgungsspannung kritisch für das Auslesen ist. 5A Version des ACS712 hat Mess-Sensibilität von 186mV/A bei 25 Grad Celsius, der ADC des Arduino eine Auflösung von 10 Bit. 0A entsprechen beim Output des ACS712 Vcc/2(Richtung wird unterschieden). Der Stromfluss ergibt sich somit aus: volt = (A0 − 512) ∗ Vcc/1023.0 amp = volt/0.186 Amn.: 0A-Output kann von 512 abweichen, durch Mittelung der ersten Werte im Startzustand kann ein besserer Wert bestimmt werden. Charge Monitor

Dennis Müller

11/22

Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Umsetzung MFRC522 Anschließen des Tag-Readers an den SPI-Bus des Arduino. Kommunikation mittels MFRC522-Library von Miguel Balboa, welche auf der SPI-Lib von Arduino aufbaut.

Abbildung 7: Initialisierung der MFRC522 Lib

Ermöglicht Scannen nach neuen Karten in der Nähe über gekapselte Funktionen und Auslesen des ID-Blockes.

Charge Monitor

Dennis Müller

12/22

Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Umsetzung Datenspeicherung

ESP8266 wird über serielle Schnittstelle angesteuert, um mit Keen.IO zu kommunizieren. Durch die serielle Schnittstelle bieten sich GET-Requests über die REST-API an, um Daten zu pushen. Keen.IO nimmt nur JSON-Daten an, für GET-Requests werden diese in Base64 kodiert und an folgende URL verschickt: https://api.keen.io./projects//events/?api_key=&data=

Base64-Encoding kann mit Drittpartei-Libs umgesetzt werden.2

2

Hier verwendet: Base64 von Arturo Guadalupi, https://github.com/agdl/Base64

Charge Monitor

Dennis Müller

13/22

Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Abläufe

Abbildung 8: Setup des Arduino Charge Monitor

Dennis Müller

14/22

Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Abläufe

Abbildung 9: Kontinuierlicher Ablauf

Charge Monitor

Dennis Müller

15/22

Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Messgenauigkeit des ACS712

Eine gelesene Einheit am ADC des Arduino entspricht: 5[V ]/1023/0.186[

V ] = 0.26[A] A

Die Auflösung für den Anwendungsfall mit bis zu 500mA (900mA mit USB3.0) fällt somit recht gering, aber ausreichend aus. Hinzu kommt das Rauschen des ACS712, welches ±2 Leseeinheiten am ADC des Arduino ausmachen.

Charge Monitor

Dennis Müller

16/22

Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Testmessungen

Zur Evaluation der Messung und zum besseren Verstehen des Rauschverhaltens werden zusätzlich zu den Testgeräten zwei “Dummy„-Sitzungen gemessen. Daraus ergeben sich folgende 4 Testszenarien: 1

Kein Verbraucher angeschlossen, nur das Rauschen wird aufgenommen

2

0,5W 56 Ohm Widerstand

3

Testgerät: Fiio X1

4

Testgerät: Samsung S2 Galaxy

Charge Monitor

Dennis Müller

17/22

Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Dummy-Messungen

Abbildung 10: Messwerte ohne Verbraucher

Charge Monitor

Dennis Müller

18/22

Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Dummy-Messungen

Abbildung 11: Messwerte mit konstantem Verbraucher

Anm.: Spannung fiel am 56 Ohm Widerstand ab, sodass 80mA flossen. Charge Monitor Dennis Müller

19/22

Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Test-Messungen

Abbildung 12: Fiio X1

Charge Monitor

Dennis Müller

20/22

Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Test-Messungen

Abbildung 13: Samsung S2 Galaxy

Charge Monitor

Dennis Müller

21/22

Einführung

Lösungsansätze zu Problemstellungen

Umsetzung

Evaluation

Ausblick

ACS712 rauscht relativ stark, kann jedoch rausgerechnet werden Mittelung bereits im Messknoten kann Ergebnisse verbessern Besseres Ansteuern des ESP8266 für erhöhte zeitliche Auflösung NFC-fähigen Tag-Reader benutzen, Ausnutzen von Datenblöcken auf Tags Identifier an USB-Port abgreifen

Charge Monitor

Dennis Müller

22/22