Main Content

このページは機械翻訳を使用して翻訳されました。元の英語を参照するには、ここをクリックします。

平均湿度を計算して表示

この例では、チャネルからデータを読み取り、データを分析し、結果を表示する方法を示します。この例では、 MATLAB AnalysisアプリとMATLAB Visualizationsアプリによって提供されるコード テンプレートの 1 つを変更します。この例では、マサチューセッツ州ナティックにある Arduino ベースの気象観測所から気象データを収集するThingSpeak channel 12397からのデータを使用します。

テンプレート コードからMATLAB Analysisスクリプトを作成する

ThingSpeakチャネルからのデータ セットの平均を計算するには、コード テンプレートを使用してMATLAB®スクリプトを作成します。

ThingSpeakのAppsタブに移動し、MATLAB Analysisを選択します。「新規」をクリックし、「平均湿度を計算して表示」を選択し、「作成」をクリックします。

データを分析する

「MATLABコード」フィールドには、湿度を計算して表示するコードが事前に入力されています。

1) ThingSpeakと通信するための変数を設定します。 readChannelID は、気象観測所からデータを収集するパブリックチャネルのチャネルID です。 humidityFieldID は、湿度値を含むチャネル内のフィールドです。プライベートチャネルからデータを読み取る場合にのみ、値を readAPIkey に割り当てます。気象観測所は公開されているため、この例では readAPIkey を設定しないでください。

readChannelID = 12397;
humidityFieldID = 3;
readAPIKey = '';

2) thingSpeakRead関数を使用して、過去 60 分間の湿度値を読み取ります。

humidity = thingSpeakRead(readChannelID,'Fields',humidityFieldID,'NumMinutes',60,'ReadKey',readAPIKey);

3) 過去 60 分間の平均湿度を計算して表示します。

avgHumidity = mean(humidity);
display(avgHumidity,'Average Humidity');
   17.8644

4) 「保存して実行」をクリックしてコードを実行します。「出力」フィールドに結果が表示されます。

データをチャネルに書き込む

1) 計算された平均湿度をプライベートチャネルに書き込むことで保存します。ThingSpeakチャネルを作成するには、チャネル タブに移動し、 マイチャネル を選択します。「新しいチャネル」をクリックします。対応するチェック ボックスを選択し、次のチャネル設定値を入力します。

  • 名前 — Average Humidity

  • フィールド 1 — Humidity

「チャネルを保存」をクリックします。

2) MATLABコード フィールドで、プライベートチャネルに書き込むための変数を設定します。writeChannelIDおよびwriteAPIKeyに指定された値を実際の値に置き換えます。ページの右側にある「チャネル情報」パネルでチャネルID を見つけて API キーを書き込むことができます。

% Replace with the ID of the channel to write data to.
writeChannelID = 17504;
% Enter the write API key between the ''.
writeAPIKey = '23ZLGOBBU9TWHG2H';

3) 平均湿度をチャネルに書き込みます。

thingSpeakWrite(writeChannelID,avgHumidity,'writekey',writeAPIKey);

4) 「保存して実行」をクリックしてコードを実行します。ThingSpeakチャネルのグラフには、平均湿度を表す 1 つの点が入力されます。ページの右側にある「チャネル情報」パネルのチャネルリンクをクリックすると、チャネルにアクセスできます。

5) 数分後にもう一度「保存して実行」をクリックし、別のデータポイントでチャネルを更新します。TimeControlアプリを使用して、コードを定期的に実行できます。

標準偏差の計算

テンプレートにコードを追加して、湿度データのさらなる分析を実行できます。たとえば、標準偏差は平均とともに計算されることがよくあります。標準偏差は、一連のデータの変動の尺度です。過去 60 分間の湿度の標準偏差を計算して表示します。このセクションはコード テンプレートには含まれていません。気象観測所のチャネルからhumidityを読み取った後、コードにこれを含めることができます。

stdHumidity = std(humidity);
display(stdHumidity,'Standard Deviation of Humidity')
    0.8602

標準偏差とともに更新された結果を「出力」フィールドに表示するには、「保存して実行」を再度クリックします。

参考

関数

関連する例

詳細