Main Content

このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。

thingSpeakWrite

ThingSpeakチャネルにデータを書き込む

説明

thingSpeakWrite(channelID,data,'WriteKey','channel write API key') は、指定されたチャネルにデータを書き込みます。書き込み API キーは、'WriteKey'とチャネル書き込みキーを表す文字ベクトルまたは文字列で構成されるコンマ区切りのペアとして指定します。

thingSpeakWrite(___,Name,Value) は、 1 つ以上のName,Valueペア引数で指定された追加オプションを使用します。

response = thingSpeakWrite(___) は、書き込み操作が正常に完了すると、 ThingSpeak™サーバーから提供された応答を返します。

すべて折りたたむ

単一の数値をチャネルのフィールド 1 に書き込みます。

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

チャネルの最初の 4 つの連続フィールド [1,2,3,4] に数値を書き込みます。

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

非数値データをチャネルの最初の 3 つの連続したフィールド [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')

3 つのフィールドを更新し、エントリの緯度、経度、高度のデータを書き込みます。

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)

データの行列をチャネルの最初の 3 つのフィールドに書き込みます。提供されたタイムスタンプは現地時間として解釈されます。

% 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)

データの timetable をチャネルの最初の 2 つのフィールドに書き込みます。提供されたタイムスタンプは現地時間として解釈されます。

% 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)

入力引数

すべて折りたたむ

チャネル識別番号。正の整数として指定します。

チャネルに書き込むデータ。数値スカラーまたは数値ベクトル、cell 配列、cell 配列の文字列、table、または timetable として指定します。スカラー データを指定した場合、値はチャネルの最初のフィールド (Field 1) に書き込まれます。ベクトルまたは 1 次元 cell 配列の場合、データは Field 1 から始まる連続するフィールドに書き込まれます。

例: thingSpeakWrite(17504,{2,3,'on','good'},'WriteKey','channel write api key');

チャネルの書き込み API キー。 'WriteKey'とチャネル書き込み API キーを表す文字ベクトルで構成されるコンマ区切りのペアとして指定します。データをチャネルに書き込むには、Write API キーが必要です。チャネルの書き込み API キーは、 ThingSpeakチャネルビューの [API キー] タブで見つけることができます。便宜上、チャネル書き込み API キーを変数に保存します。

例: thingSpeakRead(12397,'WriteKey','XXXXXXXXXXXXXXXX');

名前と値の引数

オプションの引数のペアをName1=Value1,...,NameN=ValueNとして指定します。ここで、 Nameは引数名、 Value は対応する値です。名前と値の引数は他の引数の後に指定する必要がありますが、ペアの順序は重要ではありません。

« R2021a より前は、各名前と値をカンマで区切って、» Name «引用符で囲みます。»

例: thingSpeakWrite(17504,[1.1,2.2],'Fields',[1,2,3],'WriteKey','channel write api key');

チャネルフィールド ID。TG 'Fields'と 1 行 n 列の正の整数値で構成されるコンマ区切りのペアとして指定します。

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

データ値'Values'と、数値スカラー、数値ベクトル、cell 配列、cell 配列の文字列、table、または timetable の値で構成されるコンマ区切りのペアとして指定します。'Fields'パラメーターで指定されたチャネルフィールドに書き込まれるデータを指定します。

例: thingSpeakWrite(17504,'Fields',[1,3,4],'Values',[1,2,3],'WriteKey','channel write api key');

チャネル内のデータの位置情報。 'Location'と数値配列で構成されるコンマ区切りのペアとして指定します。位置情報には緯度、経度、高度が含まれます。次の例では、Field 1 に指定された 3 点のそれぞれに、同じ位置情報を書き込みます。

例: thingSpeakWrite(17504,[2.3,1.2,3.2,0.1],'Location',[-40,23,200],'WriteKey',' write api key');

サーバー接続のタイムアウト期間。TG 'TimeOut'と数値で構成されるコンマ区切りのペアとして指定します。タイムアウト期間は、要求が終了するまでにthingSpeakRead がサーバーに接続するために許可される秒数です。

例: thingSpeakWrite(17504,[2.3,1.2,3.2,0.1],'WriteKey','write API key','Timeout',15);

書き込みチャネルのフィールドに書き込まれるデータ値のタイムスタンプ。 'Timestamp'と値で構成されるコンマ区切りのペアとして指定します。値はMATLAB® datetime値である必要があります。すべてのタイムスタンプは一意である必要があります。重複したタイムスタンプを送信すると、すべての更新が拒否されます。それ以外の場合は、すでにチャネル内にあるタイムスタンプを持つ更新のみが拒否されます。

メモ

timetable として'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

エントリの FieldX データ、最大 8 フィールド

Latitude

書き込み操作の許容度

Longitude

書き込み操作の経度

Channel ID

チャネル識別番号

Created

書き込み操作とフィード エントリの日時

Last EntryID

最新のチャネル更新のエントリ ID

Created

チャネル作成日の日時

Updated

チャネル設定が最後に変更された日時

Last EntryID

最新のチャネル更新のエントリ ID

Altitude

書き込み操作の標高

制限

  • すべてのタイムスタンプは一意である必要があります。チャネル内の既存のデータと一致するタイムスタンプを持つ新しいデータを書き込むことはできません。

  • チャネルに許可される更新頻度は、ライセンスの種類に基づいて制限されます。具体的な情報については、Frequently Asked QuestionsおよびHow to Buyを参照してください。table や timetable など、複数のエントリを含む更新は、より遅い更新頻度に制限されます。無料アカウントのユーザーの場合、 thingSpeakWriteへの 1 回の通話で送信できるメッセージの数は 960 メッセージに制限されています。有料アカウントのユーザーの場合、メッセージの制限は 14,400 件です。許可された制限よりも速い速度で公開しようとすると、次のエラーが返されます。要求が多すぎます。詳細については、ドキュメントの「制限事項」を参照してください。

詳細

すべて折りたたむ

ThingSpeak

ThingSpeak は、クラウド内のライブ データ ストリームを集約、視覚化、分析できる IoT 分析プラットフォーム サービスです。詳細については、License OptionsおよびCommercial Use を参照してください。

バージョン履歴

R2019a で導入

参考

関数