このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。
データのピーク解析
この例では、ThingSpeak ™チャネルのデータの基本的なピーク解析を実行する方法を示します。データのピークを計算する方法を学びます。
車両カウンタThingSpeakチャネルからデータを読み取る
車両カウンター ThingSpeakチャネルは、Raspberry Pi™ とウェブカメラを使用して、交通量の多い高速道路上の車両をカウントします。Raspberry Pi 上で車のカウントアルゴリズムが実行され、15 秒ごとにカウントされた車の密度が ThingSpeak に送信されます。thingSpeakRead
関数を使用して、チャネル38629 からの東方向トラフィックの最後の 60 個のデータ ポイントを読み取ります。
data = thingSpeakRead(38629,'NumPoints',60,'Fields',1,'outputFormat','table');
ピークの検索
高速道路はラッシュアワーの交通渋滞や交通事故で頻繁に渋滞します。したがって、高速道路での交通渋滞は、15 秒ごとにカウントされる車の密度のピークによって示されます。ドライバーの一般的なルールは、前の車に対して 3 秒ルールに従うことです。過去 60 のデータ ポイントで、車の密度が 1 秒あたり 15 台を超えた回数を計算します。
[peakValues, peakLocations] = findpeaks(data.DensityOfWestboundCars,data.Timestamps,'MinPeakHeight',10);
numOccurences = length(peakValues);
disp(numOccurences);
11
ピーク発生回数をThingSpeakに送信
thingSpeakWrite
関数を使用して、numOccurences
値を ThingSpeakチャネルに送信します。channelID
と writeAPIKey
を変更して、データをチャネルに送信します。
channelID=17504; writeAPIKey='23ZLGOBBU9TWHG2H'; thingSpeakWrite(channelID,numOccurences,'WriteKey',writeAPIKey);
参考
関数
thingSpeakWrite
|findpeaks
(Signal Processing Toolbox) |thingSpeakRead