thingSpeakRead
语法
说明
从 ThingSpeak.com 上的指定公共通道的所有字段中读取最新数据,并将数据以数值类型形式返回。data
= thingSpeakRead(channelID
)
使用一个或多个 data
= thingSpeakRead(channelID
,Name=Value
)Name=Value
对组参数指定的其他选项。要读取非数值数据,您必须指定 'OutputFormat'
。
[
还从 ThingSpeak.com 上的指定通道返回时间戳,并且可以包括上述语法中的任何输入参数。data
,timestamps
] = thingSpeakRead(___)
[
也返回通道信息。data
,timestamps
,channelInfo
] = thingSpeakRead(___)
示例
将通道中的三个数据点检索到一个时间表中
从一个公共通道的字段 1 和字段 4 中读取最后三个数据点,并将数据返回到一个时间表中。
data = thingSpeakRead(12397,'Fields',[1,4],NumPoints=3,OutputFormat='TimeTable')
data = 3×2 timetable Timestamps WindDirectionNorth0Degrees TemperatureF ____________________ __________________________ ____________ 18-Nov-2021 13:42:57 34 70.4 18-Nov-2021 13:43:57 50 70.4 18-Nov-2021 13:44:57 54 70.6
将通道中的五分钟的数据检索到一个时间表中
从一个公共通道的字段 1 和字段 4 中读取最后五分钟的数据,并将数据返回到一个表中。
data = thingSpeakRead(12397,Fields=[1,4],NumMinutes=5,OutputFormat='TimeTable')
data = 11×2 timetable Timestamps WindDirectionNorth0Degrees TemperatureF ____________________ __________________________ ____________ 18-Nov-2021 13:34:57 38 70.6 18-Nov-2021 13:35:57 42 70.6 18-Nov-2021 13:36:57 41 70.6 18-Nov-2021 13:37:57 46 70.8 18-Nov-2021 13:38:57 44 70.8 18-Nov-2021 13:39:57 37 70.8 18-Nov-2021 13:40:57 42 70.6 18-Nov-2021 13:41:57 43 70.4 18-Nov-2021 13:42:57 34 70.4 18-Nov-2021 13:43:57 50 70.4 18-Nov-2021 13:44:57 54 70.6 18-Nov-2021 13:45:57 52 70.
检索具有时间戳的最新数据
读取一个公共通道的所有字段的最新结果,包括时间戳。
[data,timestamps] = thingSpeakRead(12397)
data = 52.0000 7.6000 58.0000 70.8000 0 29.6700 4.1360 0 timestamps = datetime 18-Nov-2021 13:45:57
检索具有时间戳和通道信息的五分钟数据
从一个公共通道的字段 1 和字段 4 中读取最后五分钟的数据,包括时间戳和通道信息。
[data,timestamps,channelInfo] = thingSpeakRead(12397,Fields=[1,4],NumMinutes=5)
data = 41.0000 70.6000 46.0000 70.8000 44.0000 70.8000 37.0000 70.8000 42.0000 70.6000 43.0000 70.4000 34.0000 70.4000 50.0000 70.4000 54.0000 70.6000 52.0000 70.8000 39.0000 71.0000 timestamps = 11×1 datetime array 18-Nov-2021 13:36:57 18-Nov-2021 13:37:57 18-Nov-2021 13:38:57 18-Nov-2021 13:39:57 18-Nov-2021 13:40:57 18-Nov-2021 13:41:57 18-Nov-2021 13:42:57 18-Nov-2021 13:43:57 18-Nov-2021 13:44:57 18-Nov-2021 13:45:57 18-Nov-2021 13:46:57 channelInfo = struct with fields: ChannelID: 12397 Name: 'WeatherStation' Description: 'MathWorks Weather Station, West Garage, Natick, MA 01760, USA' Latitude: 42.2997 Longitude: -71.3505 Altitude: 60 Created: 20-May-2014 17:50:32 Updated: 18-Nov-2021 13:40:31 LastEntryID: 3638608 FieldDescriptions: {1×8 cell} FieldIDs: [1 2 3 4 5 6 7 8] URL: 'https://api.thingspeak.com/channels/12397/feed.json?'
检索特定日期范围内的数据
读取一个公共通道的字段 1 和 4 从 2018 年 8 月 9 日 11:59:01 到 2018 年 8 月 10 日 12:02:52 的数据,包括时间戳和通道信息。
[data,timestamps,channelInfo] = thingSpeakRead(12397,Fields=[1 4],...
DateRange=[datetime(2018,8,9,23,59,01),datetime(2018,8,10,0,02,52)])
data = 202.0000 83.3000 184.0000 83.2000 185.0000 83.1000 155.0000 83.1000 timestamps = 4×1 datetime array 09-Aug-2018 23:59:17 10-Aug-2018 00:00:20 10-Aug-2018 00:01:21 10-Aug-2018 00:02:22 channelInfo = struct with fields: ChannelID: 12397 Name: 'WeatherStation' Description: 'MathWorks Weather Station, West Garage, Natick, MA 01760, USA' Latitude: 42.2997 Longitude: -71.3505 Altitude: 60 Created: 20-May-2014 17:50:32 Updated: 14-May-2020 10:31:40 LastEntryID: 2853000 FieldDescriptions: {'Wind Direction (North = 0 degrees)' 'Wind Speed (mph)' '% Humidity' 'Temperature (F)' 'Rain (Inches/minute)' 'Pressure ("Hg)' 'Power Level (V)' 'Light Intensity'} FieldIDs: [1 2 3 4 5 6 7 8] URL: 'https://api.thingspeak.com/channels/12397/feed.json?'
输入参数
channelID
— 通道标识号
数值
通道标识号,指定为正整数。对于私有通道,您还必须指定 ReadKey
参数。
数据类型: double
名称-值参数
将可选的参数对组指定为 Name1=Value1,...,NameN=ValueN
,其中 Name
是参数名称,Value
是对应的值。名称-值参数必须出现在其他参数之后,但参数对组的顺序无关紧要。
在 R2021a 之前,使用逗号分隔每个名称和值,并用引号将 Name
引起来。
示例: thingSpeakRead(12397,Location=true);
thingSpeakRead(12397,'Location',true);
DateRange
— 所收集数据的时间范围
日期时间向量
要返回的所收集数据的时间范围,指定为名称-值对组,其中包含 'DateRange'
和一个值数组,其中的值在 MATLAB® datetime
值中具有 [startdate,enddate]
。ThingSpeak 服务器将返回的点数限制为最多 8000 个。如果您需要超过 8000 个数据点,请调整范围或进行多次调用。
注意
您不能将 DateRange
与 NumDays
或 NumMinutes
结合使用。
示例: thingSpeakRead(12397,DateRange=[datetime('Aug 8, 2014'),datetime('Aug 12, 2014')]);
Fields
— 通道字段
正数值标量
通道字段 ID,指定为名称-值对组,其中包含 Fields
和要从中检索数据的通道字段 ID 的数值。
示例: thingSpeakRead(12397,Fields=[1,3,4]);
Location
— 数据的位置信息
逻辑值
显示来自通道的数据位置信息的指示符,指定为名称-值对组,其中包含 Location
和一个逻辑值。位置信息包括纬度、经度和海拔。
示例: thingSpeakRead(12397,Location=true);
NumDays
— 数据的天数
正数值标量
从中提取数据的数据的天数,指定为名称-值对组,其中包含 'NumDays'
和一个数值。天数以 24 小时为度量单位。ThingSpeak 服务器将返回的点数限制为最多 8000 个。请调整您的天数,如果您需要超过 8000 个数据点,请进行多次调用。
注意
您不能将 NumDays
与 DateRange
或 NumMinutes
结合使用。
示例: thingSpeakRead(12397,NumDays=2);
NumMinutes
— 数据的分钟数
正数值标量
从中提取数据的数据的分钟数,指定为名称-值对组,其中包含 'NumMinutes'
和一个数值。要检索的数据的分钟数是从发出命令时开始度量的。ThingSpeak 服务器将返回的点数限制为最多 8000 个。请调整您的分钟数,如果您需要超过 8000 个数据点,请进行多次调用。
注意
您不能将 NumMinutes
与 DateRange
或 NumDays
结合使用。
示例: thingSpeakRead(12397,NumMinutes=20);
数据类型: double
NumPoints
— 数据点的数量
正数值标量
要提取的数据点的数量,指定为名称-值对组,其中包含 'NumPoints'
和一个数值。数据点的数量或数据的行数是从发出命令时开始计数的。ThingSpeak 服务器将返回的点数限制为最多 8000 个。
示例: thingSpeakRead(12397,NumPoints=200);
OutputFormat
— 输出数据的类
矩阵 (默认) | 表 | 时间表
输出数据的类,指定为以逗号分隔的对组,其中包含 'OutputFormat'
和一个文本值。有效值为 'matrix'
、'table'
和 'timetable'
。对数值数据使用 'matrix'
格式。对任何非数值数据可以使用 'timetable'
或 'table'
。'table'
格式输出 [data,channelInfo]
,其中 data
包含来自通道字段的时间戳和数据。'timetable'
格式输出 [data,channelInfo]
,其中 data
是时间表,包含的变量与请求的 'fields'
的数量一样多。
示例: thingSpeakRead(12397,OutputFormat='table');
示例: thingSpeakRead(12397,OutputFormat='timetable');
ReadKey
— 通道的 Read API 密钥
API 密钥的字符向量 | API 密钥的字符串标量
通道的 Read API 密钥,指定为名称-值对组,其中包含 'ReadKey'
和一个表示通道 Read API 密钥的字符向量。Read API 密钥允许您从私有通道读取数据。您可以在 ThingSpeak 通道视图的“API 密钥”选项卡上找到通道的 Read API 密钥。如果您正在从公共通道读取数据,则不需要 Read API 密钥。为了方便起见,请将您的通道 Read API 密钥保存在变量中。
示例: thingSpeakRead(12397,ReadKey='F6CSCVKX42WFZN9Y');
数据类型: char
Timeout
— 服务器连接超时期限
10 (默认) | 正数值标量
服务器连接超时期限,指定为名称-值对组,其中包含 'Timeout'
和一个数值。该值是 thingSpeakRead
连接到服务器所允许的秒数。
示例: thingSpeakRead(12397,Timeout=15);
输出参数
data
— 来自通道的数据
数组 (默认) | 表 | 时间表
来自通道的数据,以数组、表或时间表形式返回。
timestamps
— 每个数据元素的时间戳
数组 (默认)
每个数据元素的时间戳,以 datetime
值的数组形式返回。
数据类型: datetime
channelInfo
— 通道信息
结构体
通道信息,以结构体形式返回,其中的字段顺序如表中所示。
字段 | 描述 |
---|---|
ChannelID | 通道标识号 |
Name | 通道的名称 |
Description | 通道描述 |
Latitude | 通道设置中提供的通道的纬度 |
Longitude | 通道设置中提供的通道的经度 |
Altitude | 通道设置中提供的通道的高程 |
Created | 通道创建日期的日期时间 |
Updated | 上次更改通道设置的日期时间 |
Last EntryID | 最近通道更新的项 ID |
Field Descriptions | 字段名称的列表 |
Field IDs | 已启用字段的列表 |
URL | 馈送数据的 URL |
详细信息
ThingSpeak
ThingSpeak 是一种物联网分析平台服务,使您能够聚合、可视化和分析云中的实时数据流。有关详细信息,请参阅许可证选项和商业用途。
版本历史记录
在 R2019a 中推出
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)