主要内容

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

thingSpeakRead

读取存储在 ThingSpeak 通道中的数据

说明

data = thingSpeakRead(channelID) 读取 ThingSpeak.com 上指定公开通道的所有字段的最新数据,并以数值类型返回数据。

示例

data = thingSpeakRead(channelID,Name=Value) 使用一个或多个 Name=Value 对参量指定的附加选项。要读取非数值数据,必须指定 'OutputFormat'

示例

data = thingSpeakRead(___,ReadKey='channel Read API key') 使用 ThingSpeak™ 读取 API 密钥从私有通道读取。

示例

[data,timestamps] = thingSpeakRead(___) 还从 ThingSpeak.com 上的指定通道返回时间戳,并且可以包含先前语法中的任何输入参量。

示例

[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?'

读取某个公共通道 2018 年 8 月 9 日 11:59:01 至 2018 年 8 月 10 日 12:02:52 期间第 1 和第 4 个字段的数据,包括时间戳和通道信息。

[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?'

输入参数

全部折叠

通道标识号,指定为正整数。对于私有通道,您还必须指定 ReadKey 参量。

数据类型: double

名称-值参数

全部折叠

Name1=Value1,...,NameN=ValueN 的形式指定可选参量对组,其中 Name 是参量名称,Value 是对应的值。名称-值参量必须出现在其他参量之后,但对各个参量对组的顺序没有要求。

如果使用的是 R2021a 之前的版本,请使用逗号分隔每个名称和值,并用引号将 Name 引起来。

示例: thingSpeakRead(12397,Location=true); thingSpeakRead(12397,'Location',true);

收集数据返回的时间范围,指定为由 'DateRange' 和具有 [startdate,enddate] 和 MATLAB® datetime (MATLAB) 值的值数组组成的名称-值对。ThingSpeak 服务器将返回的点数限制为最多 8000 个。如果您需要超过 8000 个数据点,请调整范围或多次调用。

注意

不能将 DateRangeNumDaysNumMinutes 一起使用。

示例: thingSpeakRead(12397,DateRange=[datetime('Aug 8, 2014'),datetime('Aug 12, 2014')]);

通道字段 ID,指定为由 Fields 和要从中检索数据的通道字段 ID 的数值组成的名称-值对。

示例: thingSpeakRead(12397,Fields=[1,3,4]);

用于显示来自通道的数据的位置信息的指示器,指定为由 Location 和逻辑值组成的名称-值对。位置信息包括纬度、经度和海拔。

示例: thingSpeakRead(12397,Location=true);

要从中提取数据的天数,指定为由 'NumDays' 和数值组成的名称-值对。天数以 24 小时为单位进行计算。ThingSpeak 服务器限制返回的积分数量最多为 8000。如果您需要超过 8000 个数据点,请调整天数或多次拨打电话。

注意

不能将 NumDaysDateRangeNumMinutes 一起使用。

示例: thingSpeakRead(12397,NumDays=2);

要从中提取数据的分钟数,指定为由 'NumMinutes' 和数值组成的名称-值对。从发出命令时开始测量要检索的数据的分钟数。ThingSpeak 服务器限制返回的积分数量最多为 8000。如果您需要超过 8000 个数据点,请调整您的分钟数或多次拨打电话。

注意

不能将 NumMinutesDateRangeNumDays 一起使用。

示例: thingSpeakRead(12397,NumMinutes=20);

数据类型: double

要提取的数据点的数量,指定为由 'NumPoints' 和数值组成的名称-值对。数据点数或行数是从发出命令时开始计算的。ThingSpeak 服务器限制返回的积分数量最多为 8000。

示例: thingSpeakRead(12397,NumPoints=200);

输出数据的类,指定为由 'OutputFormat' 和文本值组成的逗号分隔的对。有效值为 'matrix''table''timetable'。对数值数据使用 'matrix' 格式。您可以将 'timetable''table' 用于任何非数值数据。'table' 格式输出 [data,channelInfo],其中 data 包含时间戳和来自通道字段的数据。'timetable' 格式输出 [data,channelInfo],其中 data 是一个时间表,包含与请求的 'fields' 一样多的变量。

示例: thingSpeakRead(12397,OutputFormat='table');

示例: thingSpeakRead(12397,OutputFormat='timetable');

通道的读取 API 密钥,指定为由 'ReadKey' 和表示通道读取 API 密钥的字符向量组成的名称-值对。读取 API 密钥允许您从私有通道读取数据。您可以在 ThingSpeak 通道视图的 API 密钥选项卡上找到通道的读取 API 密钥。如果您从公共通道读取数据,则不需要读取 API 密钥。为了方便起见,请将您的通道读取 API 密钥保存在变量中。

示例: thingSpeakRead(12397,ReadKey='F6CSCVKX42WFZN9Y');

数据类型: char

服务器连接超时时间,指定为由 'Timeout' 和数值组成的名称-值对。该值是允许 thingSpeakRead 连接服务器的秒数。

示例: thingSpeakRead(12397,Timeout=15);

输出参量

全部折叠

来自通道的数据,以数组、表或时间表的形式返回。

每个数据元素的时间戳,以 datetime 值数组的形式返回。

数据类型: datetime

通道信息,以表中所示顺序的字段结构形式返回。

字段描述
ChannelID

通道识别号

Name

通道名称

Description

通道描述

Latitude

通道设置中提供的通道纬度

Longitude

通道设置中提供的通道经度

Altitude

通道设置中提供的通道高度

Created

通道创建日期的日期时间

Updated

通道设置上次更改的日期时间

Last EntryID

最新通道更新的条目 ID

Field Descriptions

字段名称列表

Field IDs

启用字段列表

URL

源数据的 URL

详细信息

全部折叠

版本历史记录

在 R2019a 中推出

另请参阅

函数