Main Content

Esta página se ha traducido mediante traducción automática. Haga clic aquí para ver la última versión en inglés.

Agregar datos en el canal ThingSpeak

Este ejemplo muestra cómo agregar datos a una resolución temporal más baja en un canal ThingSpeak™ para eliminar irregularidades. 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 ThingSpeak 22641 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 de las últimas 3 horas desde el canal 22641 usando la función thingSpeakRead .

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 por 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. Puede utilizar la función retime para agregar los datos de cada hora en un solo valor. Puede utilizar el valor máximo para 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 ID del canal y la clave writeAPI para enviar datos a su canal.

channelID=17504;
writeAPIKey='23ZLGOBBU9TWHG2H';
thingSpeakWrite(channelID,data,'writeKey',writeAPIKey);

Consulte también

(MATLAB) | (MATLAB) | (MATLAB)