Mobile Station

Eine mobile senseBox kann Daten auf die openSenseMap hochladen von überall wo du Internet hast!
Wie das funktioniert wird dir in diesem Kapitel an einem Beispiel erläutert.


Materialien

  • senseBoxMCU
  • GPS-Modul
  • senseBox JST-Adapterkabel

Grundlagen

Eine mobile senseBox hat vielerlei Anwendungsfälle. Möchtest du zum Beispiel die Konzentration von Feinstaub entlang, deiner täglichen Route zur Arbeit oder Schule messen. Das GPS-Modul empfängt die Position (Längengrad/Breitengrad/Höhe) der senseBox. Dieser Sensor ist kompatibel mit den gängingen GNS Systemen (GPS, QZSS, GLONASS, BeiDou, Galileo) und basiert auf dem u-blox CAM-M8Q Multi GNSS Modul.

Eine mobile senseBox auf der openSenseMap
Eine mobile senseBox auf der openSenseMap

Aufbau

Damit das GPS-Modul die ganze Messperiode über ein Signal hat und somit den Standort anfragen kann, musst du sicherstellen, dass das Modul durch nichts verdeckt wird. Idealerweise bringst du es für die Messperiode außerhalb des Gehäuses an.

Für die Stromversorgung während der Messperiode kannst du zum Beispiel eine Powerbank benutzen. Manche Powerbanks schalten sich ab, wird zu wenig Strom gezogen (z.B. dann wenn ein Handy voll geladen ist), dadurch kann es vorkommen, dass die Powerbank die senseBoxMCU nicht dauerhaft mit Strom versorgt. Gehe vor der Messung sicher, dass dies nicht der Fall sein wird.

Es kann sein, dass der GPS Sensor anfangs eine Weile braucht, damit korrekte Signale empfangen werden. Vorallem bei erstmaliger Benutzung kann dieser Prozess bis zu 5 Minuten dauern. Nachdem ein Netzwerk erkannt wurde, werden die Informationen dazu intern im Sensor gespeichert damit es bei der nächsten Verwendung schneller gehen kann !

Programmierung

Stelle sicher, dass du das aktuellste Board-Support-Package installiert hast, da du die korrekten Software-Bibliotheken benötigst. Wie das geht wurde dir in Schritt 2 erklärt!

Wie das GPS-Modul programmiert wird, wird hier Beispielhaft anhand einer Temperaturmessung veranschaulicht. Jeder Messwert einer mobilen Station wird zusammen mit den dazugehörigen Werten für Breiten- und Längengrad hochgeladen.

Als erstes muss eine Instanz der Sensoren angelegt werden. Zusätzlich definieren wir noch 2 zwei Variablen für Breiten- und Längengrad

#include "SenseBoxMCU.h"
HDC1080 hdc;

GPS gps;
float lat; // Geografische Breite
float lon; // Geografische Länge

In der setup-Funktion starten wir nun die beiden Sensoren.

setup() Funktion
void setup(){
    hdc.begin();
    gps.begin();
}

Die loop-Funktion fragt nun den Standort der Station ab und lädt diesem gemeinsam mit dem Wert für Temperatur auf die openSenseMap hoch.

loop() Funktion
void loop(){
    lat = gps.getLatitude();
    lon = gps.getLongitude();
    temp = hdc.getTemperature();

    osem.uploadMobileMeasurement(temp,"SensorID",lat,lon)
}

results matching ""

    No results matching ""