Main Content

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

Análisis de pico de datos

Este ejemplo muestra cómo realizar un análisis básico de picos de datos en su canal ThingSpeak™. Aprenderá a calcular los picos en sus datos.

Leer datos del canal ThingSpeak del contador de automóviles

El canal ThingSpeak del contador de automóviles utiliza una Raspberry Pi™ y una cámara web para contar los automóviles en una carretera concurrida. Se ejecuta un algoritmo de conteo de automóviles en Raspberry Pi, y la densidad de automóviles contados cada 15 segundos se envía a ThingSpeak. Utilizar el thingSpeakRead función para leer los últimos 60 puntos de datos para el tráfico en dirección este desde el canal 38629.

data = thingSpeakRead(38629,'NumPoints',60,'Fields',1,'outputFormat','table');

Encuentra picos

La carretera a menudo se atasca debido al tráfico en las horas pico o a incidentes de tráfico. Por lo tanto, el atasco de tráfico se indica en la carretera mediante picos en la densidad de automóviles que se cuentan cada 15 segundos. Una regla general para los conductores es seguir la regla de los tres segundos con respecto al automóvil que les precede. Calcule la cantidad de veces en que la densidad de automóviles fue superior a 15 por segundo en los últimos 60 puntos de datos.

[peakValues, peakLocations] = findpeaks(data.DensityOfWestboundCars,data.Timestamps,'MinPeakHeight',10);
numOccurences = length(peakValues);
disp(numOccurences);
    11

Enviar el número de ocurrencias máximas a ThingSpeak

Envía el numOccurences valor a un canal de ThingSpeak usando el thingSpeakWrite función. Cambiar el channelID y el writeAPIKey para enviar datos a tu canal.

channelID=17504;
writeAPIKey='23ZLGOBBU9TWHG2H';
thingSpeakWrite(channelID,numOccurences,'WriteKey',writeAPIKey);

Consulte también

Funciones