Archiv der Kategorie: JSON

Arduino-Sensorknoten

Auf der Basis eines ESP8266-Mikrocontrollers von Espressif hatte ich gezeigt, dass man einen WiFi-tauglichen IoT-Knoten zu sehr geringen Kosten (es waren 15 US$) aufbauen kann [Building an IoT Node for less than 15 $: NodeMCU & ESP8266].

Dass WiFi auf Grund der geringen Reichweite und des doch recht hohen Stromverbrauchs für einen batteriebetriebenen IoT-Knoten allerdings nur unter bestimmten Bedingungen geeignet ist, war auch durch eigene Untersuchungen gezeigt worden [IoT Button (5th)].

Der hier betrachtete Sensorknoten soll deshalb neben der Anbindung verschiedener Sensoren auch unterschiedliche Kommunikationsmöglichkeiten (WiFi, LoRaWAN, BLE, GSM) aufweisen. Damit wird es möglich werden, einen konkreten IoT-Sensor baukastenartig zusammenstellen.

Sensorknoten

Der Beitrag „Arduino-Sensorknoten“ wird im Sammelwerk „Messen, Steuern, Regeln mit IBM-kompatiblen PCs“ des Weka-Verlags veröffentlicht.

ISBN 978-3824549009

Die Programmbeispiele werden auf Github abgelegt und stehen zum Donload zur Verfügung.

Der erste Teil des Beitrags ist in der Ausgabe 170 im Februar 2019 erschienen.

JSON-Daten im Shell-Script filtern

Das JSON-Format dient an vielen Stellen als lesbares Format zum Datenaustausch zwischen unterschiedlichen Anwendungsprogrammen. JSON-Dateien sind einfache Textdateien, die sich in jedem Texteditor öffnen lassen. Bei grösseren Dateien kann jedoch die Übersicht schnell verloren gehen.

Bei Anfragen an Webserver werden die Daten häufig im JSON-Format zur Verfügung gestellt. Es dient praktisch als Alternative zu XML.

Um nun in einem Shell-Script auf die Daten einfach zugreifen zu können, bietet sich der Einsatz eines JSON-Prozessors für die Kommandozeile an.

Unter Debian, und damit auch für den Raspberry Pi, steht das Paket jq zur Verfügung. Die Installation kann folgendermaßen vorgenommen werden:

sudo apt-get install jq

Zur Vertiefung zu Installation und Anwendung sei auf das Howto und die jq-Website verwiesen.