Analisi di picco dei dati
Questo esempio mostra come eseguire l'analisi di base dei picchi dei dati nel tuo canale ThingSpeak™ . Imparerai come calcolare i picchi nei tuoi dati.
Leggi i dati dal canale ThingSpeak del contatore auto
Il canale ThingSpeak del contatore di auto utilizza un Raspberry Pi™ e una webcam per contare le auto su un'autostrada trafficata. Sul Raspberry Pi è in esecuzione un algoritmo di conteggio delle auto e la densità delle auto contate ogni 15 secondi viene inviata a ThingSpeak. Utilizza la funzione thingSpeakRead
per leggere gli ultimi 60 punti dati per il traffico in direzione est dal canale 38629.
data = thingSpeakRead(38629,'NumPoints',60,'Fields',1,'outputFormat','table');
Trova picchi
L'autostrada spesso presenta rallentamenti a causa del traffico delle ore di punta o di incidenti stradali. Pertanto, l'aumento del traffico è indicato in autostrada dai picchi di densità delle auto conteggiate ogni 15 secondi. Una regola generale per i conducenti è quella di seguire la regola dei tre secondi rispetto alla vettura che li precede. Calcola il numero di volte in cui la densità delle auto è stata superiore a 15 al secondo negli ultimi 60 punti dati.
[peakValues, peakLocations] = findpeaks(data.DensityOfWestboundCars,data.Timestamps,'MinPeakHeight',10);
numOccurences = length(peakValues);
disp(numOccurences);
11
Invia il numero di occorrenze di picco a ThingSpeak
Invia il valore numOccurences
a un canale ThingSpeak utilizzando la funzione thingSpeakWrite
. Cambia channelID
e writeAPIKey
per inviare dati al tuo canale.
channelID=17504; writeAPIKey='23ZLGOBBU9TWHG2H'; thingSpeakWrite(channelID,numOccurences,'WriteKey',writeAPIKey);
Vedi anche
Funzioni
thingSpeakWrite
|findpeaks
(Signal Processing Toolbox) |thingSpeakRead