计算高温和低温
此示例演示如何读取数据、识别某些元素并显示结果。在示例中,您修改 MATLAB Analysis 和 MATLAB Visualizations App 提供的代码模板之一。该示例使用来自 ThingSpeak channel 12397 的数据,该数据从位于马萨诸塞州纳蒂克的基于 Arduino® 的气象站收集天气数据。
从模板代码创建 MATLAB 分析脚本
要计算 Natick 气象站的每日最高和最低温度,请使用提供的代码模板编写 MATLAB® 脚本。
转到 ThingSpeak 中的 App 选项卡并选择“MATLAB 分析”。点击“新建”,选择“计算高温和低温”,然后点击“创建”。
分析您的数据
“MATLAB 代码”字段预先填充了计算过去 24 小时内最高和最低温度的代码。
1) 设置与 ThingSpeak 通信的变量。readChannelID
是从气象站收集数据的公共通道的通道ID。temperatureFieldID
是通道中包含温度值的字段。仅当您从专用通道读取数据时才为 readAPIkey 分配值。气象站是公共的,因此对于本示例,不要设置 readAPIkey。
readChannelID = 12397;
temperatureFieldID = 4;
readAPIKey = '';
2) 使用 thingSpeakRead
函数读取过去 24 小时的温度值。
[tempF,timeStamp] = thingSpeakRead(readChannelID,'Fields',temperatureFieldID,'numDays',1,'ReadKey',readAPIKey);
3) 使用 max
和 min
计算华氏度的最高和最低温度。然后,识别相应的时间戳并显示结果。
[maxTempF,maxTempIndex] = max(tempF);
[minTempF,minTempIndex] = min(tempF);
timeMaxTemp = timeStamp(maxTempIndex);
timeMinTemp = timeStamp(minTempIndex);
display(maxTempF,'Maximum temperature for the past 24 hours is');
102
display(minTempF,'Minimum temperature for the past 24 hours is');
81
4) 点击“保存并运行”执行代码。“输出”字段显示您的结果。
将数据写入通道
1) 将您的最高或最低温度计算结果写入私有通道来存储。要创建 ThingSpeak通道,请转至“通道”选项卡并选择“我的通道”。点击“新建通道”。选择相应的复选框,然后输入以下通道设置值:
名称 —
Temperature Measurement
字段 1 —
Temperature (F)
点击“保存通道”。
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) 取消注释以下行,将最高温度读数写入您的通道。要保存最小温度值,请将 maxTempF
更改为 minTempF
。
% thingSpeakWrite(writeChannelID,maxTempF,'timestamp',timeMaxTemp,'Writekey',writeAPIKey);
4) 点击“保存并运行”执行代码。ThingSpeak通道中的图表填充有一个点,代表记录时的最高温度读数。您可以通过点击页面右侧“通道信息”面板中的通道链接来访问您的通道。
另请参阅
函数
thingSpeakRead
|thingSpeakWrite
|max
(MATLAB) |min
(MATLAB)