GPS
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. Der GPS-Sensor wird an die I2C-Ports angeschlossen.
Programmierung
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)
}