Main Content

本页采用了机器翻译。点击此处可查看最新英文版本。

计算并显示平均湿度

此示例演示如何从通道读取数据、分析数据并显示结果。在示例中,您修改 MATLAB Analysis 和 MATLAB Visualizations App 提供的代码模板之一。该示例使用来自 ThingSpeak channel 12397 的数据,该数据从位于马萨诸塞州纳蒂克的基于 Arduino 的气象站收集天气数据。

从模板代码创建 MATLAB 分析脚本

要计算 ThingSpeak通道中一组数据的平均值,您可以使用代码模板编写 MATLAB® 脚本。

转到 ThingSpeak 中的 App 选项卡并选择“MATLAB 分析”。点击“新建”,选择“计算并显示平均湿度”,然后点击“创建”。

分析您的数据

“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 代码”字段中,设置用于写入您的私有通道的变量。将 writeChannelIDwriteAPIKey 的给定值替换为您的值。您可以在页面右侧的“通道信息”面板中找到通道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通道中的图表填充了代表平均湿度的单个点。您可以通过点击页面右侧“通道信息”面板中的通道链接来访问您的通道。

5) 几分钟后再次点击“保存并运行”,以使用另一个数据点更新您的通道。您可以使用 TimeControl App 定期执行代码。

计算标准差

您可以向模板添加代码以对湿度数据进行进一步分析。例如,标准差通常与平均值一起计算。标准差是一组数据变异的度量。计算并显示过去 60 分钟内湿度的标准偏差。此部分不包含在代码模板中。从气象站通道读取 humidity 后,您可以将其包含在您的代码中。

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

要在“输出”字段中显示带有标准差的更新结果,请再次点击“保存并运行”。

另请参阅

函数

相关示例

详细信息