exponenta event banner

thingSpeakWrite

Запись данных в канал ThingSpeak

Описание

пример

thingSpeakWrite(channelID,data,'WriteKey','channel write API key') записывает данные в указанный канал. Ключ API записи указывается как разделенная запятыми пара, состоящая из 'WriteKey' и символьный вектор или строку, представляющую ключ записи канала.

пример

thingSpeakWrite(___,Name,Value) использует дополнительные параметры, указанные одним или несколькими Name,Value аргументы пары.

пример

response = thingSpeakWrite(___) возвращает ответ, предоставленный сервером ThingSpeak™ при успешном завершении операции записи.

Примеры

свернуть все

Запишите одно числовое значение в поле 1 канала.

thingSpeakWrite(17504,2.3,'WriteKey','23ZLGOBBU9TWHG2H')

Запишите числовые значения в первые четыре последовательных поля [1,2,3,4] канала.

response = thingSpeakWrite(17504,[2.3,1.2,3.2,0.1],'WriteKey','23ZLGOBBU9TWHG2H')

Запишите нечисловые данные в первые три последовательных поля [1,2,3] канала.

thingSpeakWrite(17504,{2.3,'on','good'},'WriteKey','23ZLGOBBU9TWHG2H')

Запись смешанных значений в несектутивные поля [1,4,6] канала.

thingSpeakWrite(17504,'Fields',[1,4,6],'Values',{2.3,'on','good'},'WriteKey','23ZLGOBBU9TWHG2H')

Обновите три поля и запишите данные о широте, долготе и высоте для записи.

thingSpeakWrite(17504,[1.1,2.3,4],'Location',[-40,23,35],'WriteKey','23ZLGOBBU9TWHG2H')

Запись данных о широте, долготе и высоте в канал без добавления значений в поля.

thingSpeakWrite(17504,'Location',[-40,23,3500],'WriteKey','23ZLGOBBU9TWHG2H')

Запишите метку времени для значения, записываемого в канал. Предоставленная временная метка интерпретируется как местное время.

tStamp = datetime('now')
thingSpeakWrite(17504,[2.3,1.2,3.2,0.1],'WriteKey','23ZLGOBBU9TWHG2H','TimeStamp',tStamp)

Запишите матрицу данных в первые три поля канала. Предоставленные временные метки интерпретируются как местное время.

% Generate Random Data
data = randi(10,10,3);

% Generate timestamps for the data
tStamps = datetime('now')-minutes(9):minutes(1):datetime('now');

channelID = 17504; % Change to your Channel ID
writeKey = '23ZLGOBBU9TWHG2H'; % Change to your Write API Key

% Write 10 values to each field of your channel along with timestamps
thingSpeakWrite(channelID,data,'TimeStamp',tStamps,'WriteKey',writeKey)

Запишите расписание данных в первые два поля канала. Предоставленные временные метки интерпретируются как местное время.

% Generate random data
dataField1 = randi(10,10,1);
dataField2 = randi(10,10,1);

% Generate timestamps for the data
tStamps = [datetime('now')-minutes(9):minutes(1):datetime('now')]';

% Create timetable
dataTable = timetable(tStamps,dataField1,dataField2);
channelID = 17504; % Change to your channel ID
writeKey  = '23ZLGOBBU9TWHG2H'; % Change to your Write API Key

% Write 10 values to each field of your channel along with timestamps
thingSpeakWrite(channelID,dataTable,'WriteKey',writeKey)

Входные аргументы

свернуть все

Идентификационный номер канала, указанный как положительное целое число.

Данные для записи в канал, указанные как числовой скалярный или числовой вектор, массив ячеек, строка массивов ячеек, таблица или расписание. При указании скалярных данных значение записывается в первое поле канала (поле 1). Для вектора или массива 1-D ячеек данные записываются в последовательные поля, начиная с поля 1.

Пример: thingSpeakWrite(17504,{2,3,'on','good'},'WriteKey','channel write api key');

Ключ API записи канала, заданный как разделенная запятыми пара, состоящая из 'WriteKey' и вектор символов, представляющий ключ API записи канала. Для записи данных в канал требуется ключ API записи. Ключ API записи для канала можно найти на вкладке Ключи API представления канала ThingSpeak. Для удобства сохраните ключ API записи канала в переменной.

Пример: thingSpeakRead(12397,'WriteKey','XXXXXXXXXXXXXXXX');

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: thingSpeakWrite(17504,[1.1,2.2],'Fields',[1,2,3],'WriteKey','channel write api key');

Идентификаторы полей канала, определенные как пара, разделенная запятыми, состоящая из 'Fields' и положительное целое значение 1 на n.

Пример: thingSpeakWrite(17504,[2.3,1.2,3.2,0.1],'Fields',[1,2,3,4],'WriteKey','channel write api key');

Значения данных, указанные как пара, разделенная запятыми, состоящая из 'Values' и числовой скаляр, числовой вектор, массив ячеек, последовательность массивов ячеек, значения таблицы или расписания. Укажите данные для записи в поля канала, указанные 'Fields' параметр.

Пример: thingSpeakWrite(17504,'Fields',[1,3,4],'Values',[1,2,3],'WriteKey','channel write api key');

Позиционная информация данных в канале, определяемая как разделенная запятыми пара, состоящая из 'Location' и числовой массив. Информация о местоположении включает широту, долготу и высоту. В этом примере записывается одна и та же информация о местоположении для каждой из трех точек, предоставленных в поле 1.

Пример: thingSpeakWrite(17504,[2.3,1.2,3.2,0.1],'Location',[-40,23,200],'WriteKey',' write api key');

Время ожидания соединения с сервером, указанное как пара, разделенная запятыми, состоящая из 'TimeOut' и числовое значение. Период тайм-аута - это количество секунд, разрешенное для thingSpeakRead для подключения к серверу до завершения запроса.

Пример: thingSpeakWrite(17504,[2.3,1.2,3.2,0.1],'WriteKey','write API key','Timeout',15);

Временная метка значений данных, записанных в поля в канале записи, заданная как пара, разделенная запятыми, состоящая из 'Timestamp' и значение. Значение должно быть MATLAB ®datetime значение. Все метки времени должны быть уникальными. При отправке повторяющихся меток времени все обновления отклоняются, в противном случае отклоняются только обновления с метками времени, уже находящимися в канале.

Примечание

Не указывать 'Timestamp' если вы указали 'Values' в качестве расписания.

Пример: thingSpeakWrite(17504,[2.3,1.2,3.2,0.1],'WriteKey','channel write api key','Timestamp',[datetime('2/6/2018 9:27:12','format','MM/dd/uuuu HH:mm:ss')]);

Типы данных: datetime

Выходные аргументы

свернуть все

Отклик канала операции записи, возвращаемый в виде структуры с полями в порядке, указанном в таблице. Поля структуры указывают значения, записанные в поля канала:

ОбластьОписание
FieldX

Данные для записи, до восьми полей

Latitude

Широта для операции записи

Longitude

Долгота для операции записи

Channel ID

Идентификационный номер канала

Created

Дата и время операции записи и записи канала

Last EntryID

Идентификатор записи для последнего обновления канала

Created

Дата и время создания канала

Updated

Дата и время последнего изменения параметров каналов

Last EntryID

Идентификатор записи для последнего обновления канала

Altitude

Отметка для операции записи

Ограничения

  • Все метки времени должны быть уникальными. Нельзя записывать новые данные с отметками времени, соответствующими существующим данным в канале.

  • Разрешенная частота обновления для канала ограничена в зависимости от типа лицензии. Для получения дополнительной информации см. Часто задаваемые вопросы и Способы покупки. Обновления с несколькими записями, например, в таблице или расписании, ограничены более низкой частотой обновления. Для пользователей бесплатных учетных записей - количество сообщений в одном вызове thingSpeakWrite ограничено 960 сообщениями. Для пользователей платных аккаунтов лимит составляет 14 400 сообщений. Попытки публикации со скоростью, превышающей разрешенный предел, вернут следующую ошибку: слишком частые запросы. Дополнительные сведения см. в разделе Ограничения в документации.

Подробнее

свернуть все

ThingSpeak

ThingSpeak - это сервис платформы аналитики Интернета вещей, который позволяет агрегировать, визуализировать и анализировать потоки оперативных данных в облаке. Дополнительные сведения см. в разделе Параметры лицензии и коммерческое использование.

См. также

Функции

Представлен в R2019a