ThingSpeak offers a very easy way to create visualizations and even integrate them into your own homepage. This is done using widgets that are called with a line of code.
Part 1: Creating Simple Visualizations in ThingSpeak
This article describes what standard display types are available in ThingSpeak and how easy it is to create these widgets.
Part 2: Creating Individual Diagrams with MATLAB Visualization
A second article provides some examples of individual plots.
Part 3: Embedding ThingSpeak Widgets in Jimdo-Homepage
Finally, you can read in a third article how easy it is to integrate individual display elements into your Jimdo homepage.
On my honey page you can find some examples how this can look like.
I would be happy if further interesting analyses could be shared by others here.
Translated 19.10.2019 by JK
Ich habe einige Umrechnungen von meterologischen Messdaten auf andere Parameter in MATLAB umgesetzt:
% Channel ID of Testscale
readChannelID = xxxxxxxx;
%Fields:
% 1: Interne Temperatur
% 2: Temperatur
% 3: Luftfeuchte
% 4: Luftdruck
% 5: Waage 1
% 6: HX711 Waage 1
% 7: Hive Temp Sensor
% 8: Supply Voltage
% Elevation of hive
e = 175;
%
%
data = thingSpeakRead(readChannelID);
T = data(2)
rH = data(3)
p = data(4)
%****************************************
% Luftdruck auf Meereshöhe umgerechnet (“reduziert”
%
pred = SeaLevelReduction (T, rH , e, p)
%**************************************
% Partialdruck des Wasserdampfs in hPa
ppartw = H2Oppart ( T , rH );
%
%**************************************
%
% Wassergehalt in g/m³
absWass = CH2O (T, rH)
%
%**************************************
%
% Taupunkttemperatur in °C
taupunkt = DewPoint ( T, ppartw)
%
%**************************************
%
% partial pressure of water vapor
function wppart = H2Oppart ( T , rH )
wppart = rH /100 * H2Opsat (T);
end
% dew point iteration
function dwp = DewPoint ( T, ppartw)
td = T;
while (H2Opsat (td) >= ppartw)
td = td – 0.01 ;
end
dwp = td;
end
%
%**************************************
%
% absolute water vapor concentration
function Mass_conc_H2O = CH2O (T, rH)
% Universal gas constant
R = 8.31446261815324;
% molar mass of water
M = 18.01528;
% ratio for formula
MdivR = M/R;
if (T50)
Mass_conc_H2O = NaN;
end
end
%
%***************************************
%
% saturation water vapor pressure
function satvappress = H2Opsat (T)
%The Computation of Saturation Vapor Pressure
%Paul R. Lowe, et al
%Environmental Prediction Research Facility (Navy)
%Monterey, California
%March 1974
%https://apps.dtic.mil/sti/citations/AD0778316
% over water Coefficients
a0 = 6.107799961;
a1 = 4.436518521E-1;
a2 = 1.428945805E-2;
a3 = 2.650648471E-4;
a4 = 3.031240396E-6;
a5 = 2.034080948E-8;
a6 = 6.136820929E-11;
% over ice Coefficients
b0 = 6.109177956;
b1 = 5.034698970E-1;
b2 = 1.886013408E-2;
b3 = 4.176223716E-4;
b4 = 5.824720280E-6;
b5 = 4.838803174E-8;
b6 = 1.838826904E-10;
%
sat_vap_press_w =a0 + T*(a1 + T*(a2 + T*(a3 + T*(a4 + T*(a5 + T*a6)))));
sat_vap_press_i =b0 + T*(b1 + T*(b2 + T*(b3 + T*(b4 + T*(b5 + T*b6)))));
satvappress = min(sat_vap_press_w, sat_vap_press_i);
end
%
%***************************************************
%
function result = SeaLevelReduction (T, rH , e, p)
%”Atmospheric pressure at a place, reduced to MSL using
%the actual temperature at the time of observation as
%the mean temperature.”
%
%calculation per
%
%DWD, Vorschriften und Betriebsunterlagen 3, BEOBACHTERHANDBUCH, Page 6-11
%VuB 3 BHB – Dezember 2015
g = 9.80665; % gravitation constant standard value
R = 287.05; % gas constant dry air (= R/M)
alpha = 0.0065; % vertical temperature gradient
Ch = 0.12; % factor for E
h = e; % adapt to local value
ThC = T; % Temperature in °C measured value
Hum = rH; % Humidity in % r.H. measured value
ph = p; % in hPa measures value
Pp = H2Oppart(ThC, Hum); % partial water vapor pressure
ThK = ThC + 273.15; % Temperature in K
x = g/(R*(ThK + Ch*Pp+alpha*h/2))*h; % calculation of exponent
P0 = ph * exp(x);
result=P0;
end
Ich habe diese mit Daten von meiner Waage die sich grad im Test (ohne Bienen) befindet getestet.
Um das zu nutzen, muss man noch die Zuordnung der Eingangsdaten (data()) vornehmen sowie die wahre Höhe (Elevation) der Waage eintragen. Die Formel gilt nicht im Hochgebirge.
Ich sehe grad dass das Kopieren einiges verschluckt hat……
Hallo, ich versuche mich auch gerade an einer Waage, Temperatur, Luft usw. Messeinrichtung.
Ich verwende eine Raspberry Pi 2. Gilt für den auch die aktuelle download Datei 1.0?
Irgendwie sah es erst gut aus, aber er kommt nicht zum Abschluss. Er loggt bei HoneyPi ein, aber irgendwie geht der WiFi nicht und deshalb bekommt ThinkSpeak keine Daten.
Im Moment bin ich ratlos.
Habt ihr eine Idee?
Ich hatte zum Test auch ein festes Netz angelegt, ändert aber auch nichts.
Wenn du im Wartungsmodus im Reiter Protokoll nachliest, siehst du warum keine Daten übertragen werden. Schau dort mal.
Ventuell ist einfach kein Übertragungsintervall eingestellt.
Grüße
Hallo zusammen,
Wie ist den der Update Status ?
Hallo Heiner, was genau ist Deine Frage?
Vielen Dank für die drei Kapitel über die Darstellung von Daten.
Ich möchte etwas ähnliches im technischen Bereich machen.
Kann man die Daten, die man auf eine Homepage einbetten will auch von einem privaten Kanal beziehen.
Herzlichen Dank für einen kurzen Kommentar.
Beste Grüsse aus der Schweiz
– Beim Nutzen der ThingSpeak API: Wenn der Channel “privat” ist, muss man beim Aufruf der REST-API von ThingSpeak noch einen Authentifizierungs Key mitschicken.
– Einbetten der Visualisierungen bspw. als iFrame: Nur wer den Channel auf “public” stellt, dann ist ein öffentliches Einbinden möglich.
Hallo Johannes,
sehr schöne Visualisierungen hast Du da erstellt. Habe gleich ein paar davon auf meinem Thingspeak-Channel https://thingspeak.com/channels/624932 übernommen.
Ergänzen mit weiteren Visualisierungen ist ja fast nicht möglich…Du hast ja alle interessante Visualisierungen quasi bereits hier veröffentlicht ;-).
Übrigens konnte ich den Code für die Visu zur Darstellung der “täglichen Gewichtsveränderung” hier nicht finden. Würdest Du den Code dazu auch veröffentlichen? Die Darstellung finde ich nämlich toll.
Viele Grüsse
Friedrich
Hallo Friedrich, danke für die Blumen 🙂
Habe den Artikel mit dem Matlab-Code ergänzt.
Sonnige Grüße aus Heilbronn
Johannes
Vielen Dank Johannes!
Funktioniert und sieht toll aus 🙂
Mein Vorzeigevolk auf der Waage spielt auch perfekt mit.
Prima, dass Du deine Arbeit hier den anderen zur Verfügung stellst!
Viele Grüsse
Friedrich
Hallo Friedrich,
den Dank gebe ich gerne an Javan und das Honey-Pi Team weiter. Sie haben dieses großartige Projekt entwickelt und der Imkerschaft zur Verfügung gestellt! Das steckt an, da lege ich gerne meine 2 ct noch mit dazu 🙂
Sonnige Grüße aus Heilbronn
Johannes