Main Content

Diese Seite wurde mithilfe maschineller Übersetzung übersetzt. Klicken Sie hier, um die neueste Version auf Englisch zu sehen.

Erstellen Sie eine benutzerdefinierte ThingSpeak Kanalansicht

Dieses Beispiel zeigt, wie Sie die ThingSpeak Kanalansicht in eine Live-Datenkonsole umwandeln. Das Beispiel verwendet über The Things Network gesammelte Umweltdaten, Sie können das Verfahren jedoch an Ihre eigenen Daten anpassen. ThingSpeak channel 876466 ist ein öffentlicher Kanal, der die Daten einer Drei-Sensor-Sonde mit Sensoren für Bodenfeuchtigkeit, Temperatur und GPS-Standort zeigt. Das Beispiel Collect Agricultural Data over The Things Network beschreibt detailliert, wie ein Gerät erstellt wird, das Sensordaten an diesen Kanal sendet. Sie können eine Feldwertanzeige hinzufügen, um einen Zähler anzuzeigen, und dann die Kanalstandortkarte hinzufügen. Nutzen Sie zeitabhängige Messwerte, um Sensordaten zu filtern und die zugrunde liegenden Trends leichter sichtbar zu machen. Schließlich können Sie eine Karte der Standortdaten im Kanal mit Farben und Punktbereichen zeichnen, die die Kanaldaten darstellen.

Numerisches Anzeige-Widget hinzufügen

Feld 1 auf diesem Kanal ist ein Zählerwert, der zeigt, dass das Gerät aktiv ist und Messungen inkrementiert. Durch die Anzeige des neuesten Zählerwerts in der Kanalansicht erhalten Sie einen schnellen Überblick über die Aktivität des Sensors. Sie können einen Numeric Display Widget für Ihren Kanal hinzufügen, indem Sie in Ihrer privaten Kanalansicht auf die Schaltfläche „Widgets hinzufügen“ klicken. Beachten Sie, dass Sie Daten in Ihrem Kanal benötigen, um den Feldwert in einem numerischen Anzeige-Widget anzuzeigen.

Kanalstandortkarte hinzufügen

Sie können Standortinformationen für einen Kanal und für einzelne Aktualisierungen der Kanaldaten speichern. Fügen Sie für dieses Beispiel zunächst eine Kanalstandortkarte hinzu, die sich von den Standortinformationen der Feeddaten unterscheidet. Wählen Sie in Ihrer Kanalansicht den Reiter „Kanaleinstellungen“.

Wählen Sie „Kanalstandort anzeigen“ und geben Sie die Informationen „Breitengrad“ und „Längengrad“ für Ihren Kanalstandort ein.

Klicken Sie auf „Kanal speichern“, um die Einstellungen zu aktualisieren.

Jetzt enthalten sowohl Ihre privaten als auch Ihre öffentlichen Kanalansichten die Kanalkarte.

„Einen Zwei-Serien-Plot zur Kanalansicht hinzufügen“

MATLAB Visualisierungen bieten im Vergleich zu den standardmäßigen ThingSpeak Diagrammen, die in Ihrer Kanalansicht angezeigt werden, mehr Kontrolle über die Analyse und Diagramme. Bestimmte Lizenztypen erlauben auch automatische Updates der Visualisierungen. Sie können sowohl Zeit- als auch Schwellenwertfilterung verwenden, um die Datenvisualisierung zu verbessern. Visualisieren Sie in diesem Beispiel den Zusammenhang zwischen Temperatur und Bodenfeuchtigkeit. Klicken Sie zunächst in Ihrer Kanalansicht auf die Schaltfläche „MATLAB Visualisierung“.

Wählen Sie eine benutzerdefinierte Codevorlage aus. Geben Sie den folgenden Code in das MATLAB Codefenster ein. Da die interessierenden Daten aus einem früheren Experiment stammen, verwenden Sie die Zeitfilterung, um die älteren Daten aus dem Kanal zu lesen. Legen Sie die Start- und Endzeit mit datetime fest. Dann lesen Sie die Daten mit thingSpeakRead in einen Stundenplan ein.

startTime = datetime(2019,8,23,09,15,00);
endTime=  startTime+ days(2);
sensorData = thingSpeakRead(876466,'Location',1,'dateRange',[startTime endTime],...
    'location',1,'outputformat','timetable');

Die Temperaturdaten in Spalte drei enthalten einige fehlerhafte Messwerte, die vor der Darstellung herausgefiltert werden müssen. Löschen Sie alle Zeilen, in denen der Temperaturwert größer als 100 ist.

sensorData(sensorData{:,3}>100,:)=[];

Vervollständigen Sie nun die Handlung. Verwenden Sie hold , um sicherzustellen, dass die Diagramme in der gleichen Abbildung liegen, und yyaxis , um die Bodenfeuchtigkeit auf der rechten Achse darzustellen. Fügen Sie der Klarheit halber auf jeder Seite ein ylabel hinzu und stellen Sie den Maßstab mit ylim ein.

plot (sensorData.Timestamps,sensorData.TemperatureF)
ylabel('^0F');
hold;
Current plot held
yyaxis right
plot(sensorData.Timestamps,sensorData.SoilMoisture);
ylabel('Soil Conductivity');
ylim([700 900]);
hold off;

Die Bodenfeuchtigkeitssonde misst die Leitfähigkeit im Boden, sodass feuchtere, stärker leitfähige Messungen zu niedrigeren Werten auf der Parzelle führen. Das Diagramm zeigt, dass kühlere Temperaturen mit feuchterem Boden korrelieren.

Visualisieren Sie Messungen mit Standortdaten in der Kanalansicht

Für diesen Kanal sendet der Prototyp Positionsdaten zusammen mit den Sensormessungen. Eine Anwendung besteht darin, ein großes Gebiet mit Temperatur- und Feuchtigkeitsmessungen zu vermessen und die Daten mit Standort zu visualisieren.

Fügen Sie wie im vorherigen Beispiel eine neue MATLAB Visualisierung hinzu, indem Sie auf die Schaltfläche in Ihrer Kanalansicht klicken. Lesen Sie die neuesten Punkte mit thingSpeakRead und zeichnen Sie die Standortdaten mit goescatter auf. Verwenden Sie geobasemap , um Satellitenkartendaten auszuwählen.

mapData = thingSpeakRead(876466,'ReadKey','R14RSDIMCQHDW1A8','Location',...
    1,'numpoints',37,'location',1,'outputformat','timetable');
geoscatter(mapData.Latitude,mapData.Longitude,'r');
geobasemap('satellite');

Die Karte bietet eine gute Visualisierung der Positionen. Fügen Sie Temperatur- und Feuchtigkeitsdaten in die Karte ein, um die Visualisierung zu verbessern. Wenn das Messgerät von einem Ort zum anderen bewegt wird, kann es zu einer ungenauen Feuchtigkeitsmessung kommen, bevor die Sonde wieder in den Boden eingesetzt wird. Entfernen Sie alle Daten mit Werten unter 500 in den Bodenfeuchtigkeitsdaten in Spalte zwei. Anschließend skalieren Sie die Daten neu, um sie sichtbarer zu machen. Fügen Sie die Feuchtigkeitsdaten zur Funktion goescatter hinzu, um die Größe der Kreise zu bestimmen, und die Temperaturdaten, um die Farbe zu bestimmen. Verwenden Sie die Option ‘filled’ , um die Kreise zu füllen.

mapData(mapData{:,2}<500,:)=[];
mapData.SoilMoisture=mapData.SoilMoisture-min(mapData.SoilMoisture)+1;
geoscatter(mapData.Latitude,mapData.Longitude,mapData.SoilMoisture,mapData.TemperatureF,'filled');
geobasemap('satellite');

Der subtile Effekt wärmerer Standorte vor dem Gebäude führt dazu, dass einige kleinere Kreise auf trockeneren Boden hinweisen, mit Ausnahme der rechten Seite, wo die Sprinkler gerade ihre Wirkung verloren haben.

Sie können gespeicherte Visualisierungen zu den öffentlichen und privaten Ansichten Ihres Kanals hinzufügen. Verwenden Sie in den „Anzeigeeinstellungen“ das Pluszeichen neben „Diese Visualisierung einem Kanal hinzufügen/bearbeiten“, um die Kanalliste zu erweitern.

Aktivieren Sie das Kontrollkästchen für den Kanal, dem Sie die Visualisierung hinzufügen möchten. Um private Visualisierungen hinzuzufügen, wählen Sie „Private Ansicht“. Um die URL zu teilen und die Visualisierung zur „Öffentlichen Ansicht“ hinzuzufügen, klicken Sie auf „Öffentliche URL erstellen“. Um Ihre Auswahl zu aktualisieren, klicken Sie auf „Anzeigeeinstellungen speichern“.