Archiv der Kategorie: Internet of Everything

Arduino MKR1000

Mit dem Arduino MKR1000 steht ein WLAN-fähiger Arduino für IoT-Projekte zur Verfügung. Das Board basiert auf einem ATSAMW25 von Microchip/Atmel mit einem ARM-Cortex-M0+-Prozessor (Atmel SAMD21) und einem WLAN-Modul, welches nach IEEE 802.11 b/g/n im 2,4 GHz-Netz arbeitet.

Der Atmel SAMD21 ist mit 48 MHz getaktet und verfügt über 256 KB Flash und 32 KB RAM.  Damit entspricht die Performance einem Arduino M0, wie mit den im Beitrag „Arduino32 – Die jungen Wilden“ verwendeten Benchmarks gezeigt werden kann.

Arduino32: Die jungen Wilden
DESIGN&ELEKTRONIK 5/2016 (Teil 1), 6/2016 (Teil 2)
Teil 1 http://www.elektroniknet.de/embedded/entwicklungstools/artikel/130493
Teil 2 http://www.elektroniknet.de/embedded/entwicklungstools/artikel/131502/

Die betreffenden Benchmarks sind unter Sieve und IOLoop zu finden.

Sieve of Eratosthenes - Arduino MKR1000
5000 iterations
303 primes.
Runtime = 5209 ms
I/O Loop - Arduino MKR1000
Measure IO frequency on Pin 2
Runtime = 5 us

Der Arduino MKR1000 kann über einen LiPo-Akku oder eine externe 5V-Spannungsquelle betrieben werden. Beim Anschluss einer externen Spannungsquelle ist das Laden des Akkus möglich. Der LiPo-Akku sollte mindestens 700 mAh besitzen, so dass auch mobile Projekte über längeren Zeitraum ohne externe Spannungsquelle betrieben werden können

Advertisements

Hochintegrierter WiFi-Chip

ist der Titel eines in Design & Elektronik 3/2018 erschienenen Beitrag zu Ledunia, einem ESP8266 High-End-Modul.

Die intelligente Analyse bestehender ESP8266 Module hat einen Ansatz geliefert, den verbreiteten ESP8266 Modulen eine Ergänzung beizustellen, die bestehende Beschränkungen aufhebt und neue Merkmale hinzufügt. Dieser Ansatz hat die Teilnehmer der Kickstarter-Kampagne überzeugt und diese zu einem erfolgreichen Abschluss geführt.

Wichtig für den Einsatz einer solchen Baugruppe sind neben der starken Arduino Community auch direkte Ansprechpartner, die bei einem in Deutschland entwickelten Produkt vorhanden sind.

Die vorliegenden Zertifizierungen (CE, FCC) für Ledunia bieten darüber hinaus Sicherheit beim Einsatz der Baugruppen.

HiGrow-Sensor: Daten erfassen und versenden

Im Post HiGrow-Sensor sorgt für das Wohl der Pflanzen hatte ich auf den HiGrow-Sensor hingewiesen, der zur Überwachung der Umweltbedingungen in Pflanzennähe eingesetzt werden kann.

Im Programm HiGrowESP32MQTT.ino werden die Sensordaten des dort eingesetzten DHT11-Sensors zur Messung von Lufttemperatur und Luftfeuchte, sowie die kapazitiv gemessene Bodenfeuchte und die Helligkeit erfasst und entsprechenden Topics von MQTT-Messages zugeordnet. Zu Kontrollzwecken werden diese Daten auch seriell ausgegeben und können durch den internen Monitor der Arduino IDE verfolgt werden. Das Programm  HiGrowESP32MQTT.ino steht auf Github zum Download zur Verfügung.

HiGrow Data

Mit einem MQTT Client können die abonnierten Mitteilungen visualisiert werden.

Screenshot_20180319-140609.png

Bei meinen Test ist mir aufgefallen, dass recht häufig nach dem Programmstart der Brownout Detector getriggert wurde und einen entsprechenden Reset ausgelöst hat.

HiGrow Brounout

Verfolgt man die Diskussion (z.B. hier https://github.com/nkolban/esp32-snippets/issues/168) dann scheint ein hoher Strombedarf während der Initialisierungsphase ein (der?) Grund für das Verhalten zu sein.

Der HiGrow-Sensor weist einen Batteriehalter für eine 18650-LiPo-Batterie auf. Bei meinen Tests war die Batterie nicht bestückt. Möglicherweise puffert eine bestückte Batterie dann diesen kurzzeitigen Strombedarf hinreichend.

 

HiGrow-Sensor sorgt für das Wohl der Pflanzen

Für das optimale Gedeihen von Pflanzen sind die Bedingungen wie Temperatur, Luft- und Bodenfeuchtigkeit, Licht u.a.m. verantwortlich.

Kommerzielle Systeme von Kärcher, Gardena, Parrot u.a. ermitteln solche Größen und steuern damit beispielsweise die Bewässerung oder stellen die ermittelten Daten einer App auf dem Smartphone zur Verfügung.

Mit dem HiGrow-Sensor kann der Maker das Thema selbst in die Hand nehmen. Der HiGrow-Sensor nutzt einen DHT11 zur Messung von Lufttemperatur und -Luftfeuchte. Die Feuchte des Bodens wird kapazitiv gemessen, da diese Variante weniger störungsanfällig als die resistive Methode ist. Außerdem wird die Helligkeit erfasst. Als CPU kommt eine ESP32-Wroom von Espressif zum Einsatz, der  in der Arduino IDE programmiert werden kann. Softwareunterstützung findet man auf Github unter https://github.com/lucafabbri/HiGrow-Arduino-Esp. In den nächsten Tagen werde ich an dieser Stelle ein Programmbeispiel zeigen, welches die ermittelten Werte über MQTT an einen MQTT-Broker übermittelt und von da bezogen werden können.

Der HiGrow-Sensor wird von Banggood zum Preis von unter € 15 angeboten.

 

 

ThingPulse gegründet

In der Maker-Szene bekannt sind Daniel “Squix” Eichhorn und Marcel “frightanic” Stör schon seit längerem.

Daniel ist in der ESP8266-Arduino-Community eine bekannte und respektierte Persönlichkeit. Er verkauft IoT-Kits und hat seit 2015 DIY-Projekte mit beeindruckender Geschwindigkeit realisiert.

Marcel ist seit Sommer 2015 einer von mehreren NodeMCU-Maintainers. NodeMCU ist eine Lua-Firmware für den ESP8266 / ESP32 WiFi SoC. Er hat auch einige Tools für die NodeMCU-Community beigesteuert: NodeMCU Cloud Builder, Docker NodeMCU Build, NodeMCU PyFlasher.

Die von Daniel und Marcel gegründete ThingPulse wird IoT-Hardware und -Software sowohl für Hersteller als auch für Verbraucher entwickeln, fördern und verkaufen. ThingPulse ist die Schnittstelle zwischen IoT-Komponenten und traditionellen Anwendungen. Mehr findet Ihr unter https://thingpulse.com/about/.

Ich wünsche an dieser Stelle einen guten Start und bin vom Erfolg schon heute überzeugt.

Beacons im Physical Web

Allgemeine Übersicht

Im Physical Web werden Objekten diese Objekte kennzeichnende URLs (= Uniform Resource Locator) zugeordnet. Das bedeutet nichts anderes, als das unter der betreffenden URL im Allgemeinen eine Website zu finden ist, die objektrelevante Daten zur Verfügung stellt.

Die zu erkennenden URLs werden von Objekten in der Umgebung gesendet, so dass dadurch die Objektbezogenheit sichergestellt ist. Jedes Objekt kann mit einem Bluetooth Low Energy (BLE) Beacon, einem leistungsstarken, batteriebetriebenen Gerät, versehen werden, das die betreffenden Inhalte über Bluetooth sendet.

Beacons, die die Eddystone-Protokollspezifikation unterstützen, können URLs und weitere Formate übertragen. Dienste auf dem Mobilgerät des Nutzers, wie Google Chrome oder Nearby Messages, können nach der Übergabe dieser URLs nach diesen suchen und diese anzeigen.

Das Physical Web sorgt unter anderem dafür, dass Nutzer nicht ständig neue Apps auf ihren Mobilgeräten installieren müssen, sondern die Nachrichten auf einer einheitlichen Oberfläche betrachten können. Es lässt sich in nahezu allen Fällen einsetzen, in denen Nutzer an Informationen über ihre Umgebung interessiert sind oder in denen eine Interaktion zwischen ihnen und smarten Objekten nötig ist.

Ausgangspunkt für die Entwicklung der Beacon-Technologie war im Jahr 2013 die Fa. Estimote mit dem ersten BLE Beacon, gefolgt von Apple, die ihre Implementierung iBeacon benannt haben. Diese Beacons senden eine BLE Advertising Message aus, deren Inhalt von einer Empfänger-App dekodiert werden und davon abgeleitet Aktionen auslösen kann

Google ist im Jahr 2015 mit seinem Physical Web Projekt in diese Thematik eingestiegen und erweitert die von den Beacons gesendeten Informationen, so dass zur Aufbereitung der gesendeten Informationen nicht zwangsläufig eine zugeordnete App erforderlich ist.

Im Alltag begegnen uns oft Situationen in denen der Einsatz von Beacons sehr von Vorteil ist.

Nicht jeder Nutzer des öffentlichen Personen-Nahverkehrs kann Informationen zur aktuellen Situation seiner gewünschten Verbindung über dynamische Fahrgastinformations-Anzeiger beziehen. In den Innenstädten werden diese zunehmend eingesetzt.

1024px-Dresden_Hauptbahnhof_-_Haltestelle_der_Straßenbahn_(7033568319)

Autor: IngolfBLN

Auf dem Land werden wohl noch weitere Zeit die traditionellen Haltestellenschilder zu sehen sein.

Haltestellenschild_Jungfernstieg_retouched

Autor: MissyWegner

Bein einem solchen Haltestellenschild, was auch im innerstädtischen Bereich durchaus noch gesehen wird, kann ein installierter Beacon die gewünschten Informationen beispielsweise über eine dynamisch aktualisierte Website mit Fahrplaninformationen bieten.

Neben diesen Anwendungen haben die Marketing-Strategen die Mächtigkeit dieser Beacon-Lösungen schon lange erkannt. So kann beispielsweise beim Betreten eines Supermarktes gezielt auf Sonderangebote hingewiesen und das Kaufverhalten beeinflusst werden.

Nach diesen eher anwendungsorientierten Bemerkungen kann sich jeder selbst Gedanken über den Einsatz von Beacons machen.

Kommerzielle Beacons

In den kommerziellen Angeboten findet man zahlreiche Beacons, bei denen leider nicht immer klar hervorgeht, ob sie auch das Eddystone Profile unterstützen. Ich habe mit zwei Beacons der chinesischen Fa. AprilBrother experimentiert.

CardBeacon

Kern des CardBeacons ist ein DA14580 SoC der Fa. Dialog – ein Cortex-M0 mit einem BLE Core. Es wird die zumindest doppelte Batterielebensdauer gegenüber den als Standard geltenden Nordic nrf51822 Chips versprochen und soll mit den Default-Einstellungen drei Jahre betragen. Eine Batterie CR3032 (500mAh) ist im CardBeacon integriert.

CardBeacon ist iBeacon-zertifiziert und unterstützt damit alle iBeacon-Funktionen. UUID, Major, Minor und das Advertising Intervall sind konfigurierbar.

cardbeacon1

CardBeacon im Scheckkartenformat

Dieser CardBeacon hat die Grundfläche einer Kreditkarte. Die Dicke der Karte beträgt allerdings 5.8 mm. Hier sind die technischen Daten des CardBeacons nachzulesen.

AprilBeacon 202

Der AprilBeacon 202 kann wie bereits der CardBeacon im iBeacon-, Eddystone-UID- oder Eddystone-URL-Mode betrieben werden.

AprilBeacon

AprilBeacon mit dem Abmessungen 40 mm x 40 mm x 15 mm

AprilBeacon App

Die AprilBeacon App ist ein herstellerspezifisches Tool zur Konfiguration der von diesem Hersteller angebotenen Beacons. Auf der Website des Herstellers findet man die Links zu Apples App Store und zu Googles Playstore.

Beacon Tools

Zur Inbetriebnahme bzw. zur Konfiguration von Beacons bedarf es in der Regel spezieller Tools, die meist herstellerspezifisch sind. Die AprilBaecon App war ein solches Tool.

Ansonsten ist es hilfreich mindestens einen BLE Scanner und die Physical Web App auf seinem Smartphone zu installieren, die für Android in Google’s Playstore zu finden sind.

In Googles Playstore findet man ausserdem zahlreiche BLE Scanner. Ich habe die Tools von Bluepixel Technology und Nordic Semiconductor ausgesucht und verwendet. Mit der Physical Web App kann man schließlich die übertragenen URL einfach sichtbar machen.

BLE Implementierungen

Es gibt derzeit ein recht breites Spektrum an Hardware, bei der bereits ein BLE Modul installiert ist. Das Spektrum reicht dabei von einfachen Mikrocontrollern bis hin zu leistungsfähigen Linux-Devices. Zu nennen sind u.a. BBC micro:bit & Calliope mini, pycom WiPy und Linux Devices , wie Raspberry Pi 3, Raspberry Pi Zero W und C.H.I.P.

Dieser Abschnitt zeigt für BBC micro:bit & Calliope mini die erforderliche Software-Installation, um einen Eddystone-URL Beacon zu erstellen. Das Ergebnis ist für alle Implementierungen identisch – eine über BLE übertragene URL, die von einem Smartphone, Tablet oder anderem BLE-tauglichen Equipment empfangen und ausgewertet werden kann.

Seit einem Jahr ist der BBC micro:bit genannte Mikrocontroller der BBC verfügbar und unter Schülern und Lehrer in Großbritannien recht verbreitet. In Deutschland hat sich die gemeinnützigen Calliope GmbH das Ziel gesteckt, mit dem Calliope mini einen für die Anforderungen der Grundschule geeigneten Mikrocontroller bereit zu stellen, wobei sich dieser am BBC micro:bit orientiert.

Beide Mikrocontroller-Boards sind technisch vergleichbar ausgestattet und weisen als Kern einen nRF51822 Mikrocontroller von Nordic Semiconductors auf.

Preise und Bezugsmöglichkeiten sind in der nachfolgenden Tabelle gelistet.

Mikrocontroller BBC micro:bit Calliope mini
Preis EUR 16,85 EUR 35,00
Lieferant http://www.exp-tech.de

Zur Programmierung der beiden Mikrocontroller-Boards stehen ein JavaScript Blocks Editor und MicroPython zur Verfügung. Will man BLE nutzen, dann steht MicroPython leider nicht zur Verfügung da der BLE-Stack zu viel RAM benötigt.

Unser micro:bit (oder Calliope mini) Beacon soll nun eine URL aussenden, die auf die verwendete Programmierumgebung, den Java Script Blocks Editor, verweist. Die URL lautet im Original https://makecode.microbit.org/ und verkürzt https://goo.gl/8Hcntr.

Die folgende Abbildung zeigt die vom Java Script Blocks Editor verwendeten Blöcke.

microbit - Eddystone URL senden

Um BLE zur Verfügung zu haben, muss über Add Package zu Beginn noch das BLE Paket nachinstalliert werden.

Da hier mit einer sicheren Webseite gearbeitet wurde, ist die versendete URL auch als (weitere) Nearby Message sichtbar und kann vom Smartphone direkt aufgerufen werden.

Nearby4

 

Grove Shield für BBC Micro:bit

Mit dem Grove Shield erschließt sich dem BBC Micro:bit Controller die ganze Familie der Grove Sensoren und Aktoren auf sehr einfache Weise.

Grove i2C Shield

Folgende Interfaces stehen nach aussen hin zur Verfügung:

DC Interfaces Micro USB x1
Grove Interface P0/P14,P1/P15,P2/P16,I2C
Grove ZERO Interface Grove ZERO x1
Logic Interface 3V3/P0/P1/P2/P8/P12/P13/GND

Mit einem Grove I2C Hub kann die Zahl der anschließbaren I2C Devices erweitert werden .