Datos agregados en el canal ThingSpeak
Este ejemplo muestra cómo agregar datos a una resolución de tiempo más baja en un canal ThingSpeak™ para eliminar la irregularidad. La irregularidad en los datos puede deberse a varios factores, como la detección impulsada por eventos, el mal funcionamiento de los sensores o las latencias de la red.
Leer datos
El canal 22641 de ThingSpeak contiene datos meteorológicos y de mareas medidos una vez por minuto en Ockway Bay, Cape Cod. El campo 2 del canal contiene datos de temperatura del aire. Lea los datos de temperatura del aire durante las últimas 3 horas desde el canal 22641 usando el thingSpeakRead
función.
datetimeStop = dateshift(datetime('now'),'start','hour'); datetimeStart = dateshift(datetime('now'),'start','hour') - hours(3); data = thingSpeakRead(22641,'DateRange',[datetimeStart,datetimeStop],... 'Fields',2,'outputFormat','timetable');
Agregar los datos
Los datos se miden una vez cada minuto. Sin embargo, debido a la latencia de la red asociada con el sistema de medición, las marcas de tiempo reales pueden tener una diferencia de más o menos de un minuto. Además, para la aplicación de interés, la frecuencia de los datos medidos cada minuto es alta. Los datos con una resolución horaria son suficientes. Puedes usar el retime
para agregar los datos de cada hora a un solo valor. Puede utilizar el valor máximo de cada hora para agregar los datos. Obtenga una vista previa de los primeros cuatro valores de los datos con head
.
dataHourly = retime(data,'hourly','max'); head(dataHourly,4)
ans = 3×1 timetable Timestamps AirTemperatureC ____________________ _______________ 03-Jan-2019 14:00:00 7.5 03-Jan-2019 15:00:00 6.9 03-Jan-2019 16:00:00 6.4
Enviar datos a ThingSpeak
Cambie el channelID y el writeAPIKey para enviar datos a su canal
channelID=17504; writeAPIKey='23ZLGOBBU9TWHG2H'; thingSpeakWrite(channelID,data,'writeKey',writeAPIKey);
Consulte también
thingSpeakRead
(MATLAB) | thingSpeakWrite
(MATLAB) | retime
(MATLAB)