Archiv der Kategorie: IoT

Ledunia

Gratulation zur erfolgreichen Kickstarter-Kampagne. 

b869c7b701372a7d631d0ef86ba71c33_original

Ich freue mich, meine Programmbeispiele (https://www.amazon.de/Building-IoT-Node-less-than-ebook/dp/B018J1OVC4/) auf der neuen Plattform zu testen.

Auf den erweiterten Speicher und die Vorkehrungen für die Deep Sleep Option bin ich gespannt. Die RGB-LEDs sind eine gelungene Erweiterung in Verbindung mit dem semi-transparenten Gehäuse.

 

 

C.H.I.P. als Sensor-Knoten

Wegen seiner Kompaktheit kann C.H.I.P.  dann sehr gut als Sensor-Knoten eingesetzt werden, wenn es nicht auf minimalen Stromverbrauch ankommt.

Für erste Tests habe ich mit dem Program chiplog.py  die CPU-Last, den verfügbaren Speicher und die Boardtemperatur abgefragt und über Thingspeak visualisiert. Ausserdem wird beim Überschreiten der Temperatur eine Push-Message versendet. Mit dem Programm stress habe ich die CPU-Last erhöht, um die Auswirkungen auf die Boardtemperatur zur verdeutlichen.

CPU_Load

Mem_avail

PMU_Temp

Um einen externen Sensor abfragen zu können, bedarf es nur noch weniger zusätzlicher Zeile Code, die für einen Temperatur- und Feuchtigkeitssensor SHT31 noch folgen.

Das Programm BatStatus.py zeigt den Status der Batterie in den ersten Minuten nach dem Anschliessen an den C.H.I.P.  Controller.

BatStatus

Die Programme chiplog.py und BatStatus.py sind auf Github abgelegt. Im Wiki sind Installationshinweise nach einem Flashen des Betriebssystems und dem erforderlichen Python-Setup aufgeführt.

 

TMP36 LoRa Node

architecture

Die aus einem Arduino Uno und Dragino LoRa Shield V1.2. aufgebaute TMP36 LoRa Node misst die Aussentemperatur und überträgt die Messdaten (drahtlos) an das im Inneren platzierte LoRa Gateway.

Über dieses Gateway ist die TMP36 LoRa Node  in das TTN LoRaWAN integriert. Das LoRa Gateway besteht aus einem Raspberry Pi 3 mit einem Dragino LoRa /GPS HAT.

Dieses einkanalige LoRa Gateway hat nicht die Möglichkeiten eines voll ausgebauten LoRa Gateways, trotzdem ist es für diese einfache Aufgabenstellung geeignet. Das TTN Gateway ist bestellt und wird erwartet.

Die gemessenen Daten werden vom LoRa Gateway via Internet an den TTN Server übertragen. Zugriff auf die Daten ist über die TTN Console möglich.

Um die Daten auch anderen Anwendungen zur verfügung zu stellen, kann auf diese via MQTT zugegriffen werden. Ich verwende Mosquitto auf einem anderen Raspberry Pi, um die Daten zu abonnieren und zur Visualisierung an den Thingspeak Server zu senden. In die Website ckuehnel.ch/TMP36_LoRa_Node.html habe ich diese Grafik eingebunden.

Die für dieses Anwendungsbeispiel verwendete Software ist auf  Github abgelegt.

IoT und Privatsphäre

Mit den Möglichkeiten, die uns das IoT oder besser sogar das IoE (Internet of Everythings) bietet, müssen wir uns über die Interpretationsmöglichkeiten der öffentlich zur Verfügung gestellten Daten im Klaren sein. Eine recht eindrückliche Story mit dem Titel „Burglars invited“ (Einbrecher eingeladen) habe ich auf lucstechblog gefunden.

Einfache Wetterstation für € 20

sht31chip

Mit dem $ 9 C.H.I.P. und einem Grove SHT31 ($ 11.90) kann man schon für € 20 Temperatur und relative Luftfeuchtigkeit erfassen und in der Cloud visualisieren.

Vorbedingung ist die Installation der folgenden Pakete:

sudo apt-get install build-essential libi2c-dev i2c-tools python-dev libffi-dev

Drei sehr überschaubare Scripte übernehmen die Abfrage des Sensors und das Versenden der Daten.

Mit dem Python Script SHT31.py werden von dem über den I2C-Bus angeschlossene Sensor Temperatur und relative Luftfeuchtigkeit abgefragt und zwischengespeichert. Das Shell Script thingspeak.sh sendet die erhobenen Messwerte an den Thingspeak-Server, während das Shell Script mqtt.sh die gleichen Daten an einen MQTT Broker sendet. Mit dem Script weather.sh werden diese drei Scripte gekapselt und in die Crontab eingetragen.

# m h dom mon dow command
*/5 * * * * /home/weather.sh

Durch diesen Eintrag erfolgt ein Aufruf des Scripts weather.sh alle fünf Minuten.

Die Scripte stehen wieder in meinem CHIP Repository zum Download zur Verfügung. Hier können die Ergebnisse der Messungen verfolgt werden.