Umweltdaten erfassen & visualisieren mit Arduino MKR WiFi 1010 in der IoT Cloud
Komponenten und Zubehör
- 1× Arduino MKR WiFi 1010 (SAMD21 + NINA-W10 WiFi/BLE)
- 1× Arduino MKR ENV Shield (Temperatur, Luftfeuchte, Druck, Licht, UV-A/B/Index)
- 1× Akkupack (z. B. LiPo 3,7 V) oder USB-Netzteil
Software & Dienste
- Arduino IoT Cloud (Konto erforderlich)
- Arduino IDE oder Arduino Create Web Editor
- Bibliothek:
Arduino_MKRENV
Projektübersicht
Dieses Projekt liest alle Sensoren des MKR ENV Shields aus und sendet die Daten über eine sichere Verbindung an die Arduino IoT Cloud. Dort werden sie in einem Dashboard visualisiert. Die Hardware ist minimal: MKR WiFi 1010 + ENV Shield + Stromversorgung.
Hardware-Aufbau
- MKR WiFi 1010 und ENV Shield exakt aufeinanderstecken (Pin-Belegung beachten).
- Akkupack an den JST-Anschluss des MKR WiFi 1010 anschließen.
- Keine weiteren Verdrahtungen nötig.
Code-Struktur
Der Sketch besteht aus zwei Hauptteilen:
- Auto-generierter Cloud-Code (
thingProperties.h) für WiFi-Verbindung, Authentifizierung (Crypto-Chip) und Datenaustausch. - Sensor-Logik mit der
Arduino_MKRENV-Bibliothek.
Im Cloud-„Thing“ werden sechs Properties (Variablen) angelegt: temperature, humidity, pressure, lux, uva, uvb, uvi (UV-Index). Jede Variable ist READ-only vom Board zur Cloud.
Vollständiger Sketch
#include "thingProperties.h"
#include
void setup() {
Serial.begin(9600);
delay(1500); // Zeit für Serial Monitor
initProperties(); // WiFi-Credentials aus thingProperties.h
ArduinoCloud.begin(ArduinoIoTPreferredConnection);
setDebugMessageLevel(2);
ArduinoCloud.printDebugInfo();
if (!ENV.begin()) {
Serial.println("MKR ENV Shield Initialisierung fehlgeschlagen!");
while (1);
}
}
void loop() {
ArduinoCloud.update(); // Cloud-Kommunikation
// Sensoren lesen & Properties aktualisieren
humidity = int(ENV.readHumidity());
lux = int(ENV.readIlluminance());
pressure = int(ENV.readPressure());
temperature = int(ENV.readTemperature());
uva = int(ENV.readUVA());
uvb = int(ENV.readUVB());
uvi = int(ENV.readUVIndex());
delay(1000); // 1 Sekunde Pause
}
// Leere Callback-Funktionen (READ-only Properties)
void onHumidityChange() {}
void onLuxChange() {}
void onPressureChange() {}
void onTemperatureChange(){}
void onUvaChange() {}
void onUvbChange() {}
void onUviChange() {}
Einrichtung in der Arduino IoT Cloud
- Bei Arduino IoT Cloud anmelden.
- Neues „Thing“ erstellen → Gerät hinzufügen (MKR WiFi 1010 wird automatisch erkannt).
- Sechs Properties anlegen (Namen exakt wie oben, Typ
int, PermissionREAD). - Dashboard erstellen: Für jedes Property ein Widget (z. B. Gauge, Chart, Value).
- Im Thing auf „Edit Code“ klicken → Web Editor öffnet sich → Sketch ersetzen → Hochladen.
Nach dem Hochladen verbindet sich das Board mit dem WLAN (Credentials in thingProperties.h) und sendet sekündlich Daten. Im Dashboard sind historische Verläufe und Echtzeitwerte sichtbar.
Herstellungsprozess
- Live IoT-Daten in MATLAB nutzen mit RTI Connext DDS Integration
- Cloud-Infrastruktur für Spitzenleistung und Effizienz optimieren
- Cloud Missverständnis #3: Die Cloud ist keine unverantwortliche Geschäftsentscheidung
- Wie IoT und Cloud Computing die Zukunft von Unternehmensdaten formen
- Ist Ihre Fertigungsstätte bereit für IoT? Ein praktischer Leitfaden
- IoT-Daten in Business Value verwandeln: Ein praktischer Leitfaden
- IoT-Daten für Manufacturing Excellence nutzen
- Drei Wege, wie Cloud Computing IoT-Deployments verbessert
- Cloud-Power für IoT nutzen: Nahtlose Konnektivität & Dateneinblicke freischalten
- IoT-Investitionen werden Cloud-Ausgaben überholen, neue Studie findet