Analisi di picco dei dati
Questo esempio mostra come eseguire un'analisi di base dei picchi di dati nel canale ThingSpeak ™. Imparerai a calcolare i picchi nei tuoi dati.
Leggi i dati dal canale ThingSpeak del contatore dell'auto
Il canale conta-auto ThingSpeak 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 conteggiate ogni 15 secondi viene inviata a ThingSpeak. Utilizzare 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 congestionata a causa del traffico nelle ore di punta o di incidenti stradali. Pertanto, la congestione del traffico in autostrada è segnalata da picchi nella densità delle auto conteggiate ogni 15 secondi. Una regola generale per i conducenti è quella di rispettare 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. Modifica 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