このページは機械翻訳を使用して翻訳されました。元の英語を参照するには、ここをクリックします。
MATLAB の TalkBack アプリを使用してコマンドをキューに入れる
TalkBack を使用すると、キューにあるコマンドに基づいてデバイスを動作させることができます。この例では、MATLAB® の TalkBack アプリを webread
や webwrite
などの組み込み MATLAB 関数と共に使用して、コマンドをキューに入れる方法を説明します。たとえば、ワイヤレス ネットワークとモーション センサーを備えたドアがある場合は、ドアの開閉を行うコマンドをキューに入れることができます。ドアが近くに来た人を感知したときに、ドアを開きます。指定した時間が経過した後、ドアを閉じます。ThingSpeak™ では、MATLAB Analysis アプリを使用して MATLAB コードを書き込みます。
TalkBack での webread
の使用
TalkBack コマンドの取得
webread
を使用して HTTP GET 要求を送信し、TalkBack コマンドを取得することができます。
TalkBack アプリの ID と TalkBack コマンドを指定します。TalkBackアプリ ID、コマンド ID、 TalkBack API キーは、 TalkBackアプリ ページで確認できます。
% TalkBack app ID TalkBack_ID = '7991'; % TalkBack command ID Command_ID = '1322093'; % TalkBack app API key TalkBack_apikey = 'I586FE13SXIN9ZET';
api_key
クエリ パラメーターを指定します。webread
は Web サービス クエリ パラメーターの名前と値を url
に付加します。
url = strcat('https://api.thingspeak.com/talkbacks/',TalkBack_ID,'/commands/',Command_ID,'.json'); data = webread(url,'api_key',TalkBack_apikey)
[ Save and Run]をクリックして、 MATLABAnalysis アプリでMATLAB コードを実行します。
webread
が、検索結果ページの JSON オブジェクトを構造体配列として返します。
data = id: 1322093 command_string: 'OPENDOOR' position: 2 executed_at: [] created_at: '2016-04-13T20:08:58Z'
コマンド 'OPENDOOR'
によって、Wi-Fi 対応のドアが開くようになりました。
TalkBack コマンドのポスト
webread
を使用して、weboptions
を使った HTTP POST 要求を送信することにより、TalkBack アプリ経由で TalkBack コマンドを追加できます。
url = strcat('https://api.thingspeak.com/talkbacks/',TALKBACK_ID,'/commands.json'); options = weboptions('RequestMethod','post'); data = webread(url,'api_key','I586FE13SXIN9ZET','command_string','OPENDOOR',options)
[ Save and Run]をクリックして、 MATLABAnalysis アプリでMATLAB コードを実行します。次の出力がOutputセクションに表示されます。
data = id: 1328190 command_string: 'OPENDOOR' position: 7 executed_at: [] created_at: '2016-04-14T18:26:45Z'
コマンド 'OPENDOOR'
によって、Wi-Fi 対応のドアが開くようになりました。
TalkBack での webwrite
の使用
TalkBack コマンドの書き込み
TalkBack アプリを使用して TalkBack コマンドを作成します。MATLAB Analysis アプリを新たに開き、webwrite
を使用して TalkBack アプリにコマンドを書き込みます。
TalkBack ID、コマンド ID、および TalkBack API キーを使用して webwrite
を呼び出します。TalkBackアプリ ID、コマンド ID、 TalkBack API キーは、 TalkBackアプリ ページで確認できます。
% TalkBack app ID TalkBack_ID = '7991'; % TalkBack command ID Command_ID = '1322093'; % TalkBack app API key TalkBack_apikey = 'I586FE13SXIN9ZET'; url = strcat('https://api.thingspeak.com/talkbacks/',TALKBACK_ID,'/commands.json'); response = webwrite(url,'api_key',TALKBACK_APIKEY,'command_string','CLOSEDOOR')
[ Save and Run]をクリックして、 MATLABAnalysis アプリでMATLAB コードを実行します。次の出力がOutputセクションに表示されます。
response = id: 1333480 command_string: 'CLOSEDOOR' position: 10 executed_at: [] created_at: '2016-04-15T13:30:42Z'
コマンド 'CLOSEDOOR'
によって、Wi-Fi 対応のドアが閉じるようになりました。
フォーム エンコードされた文字配列としての TalkBack App コマンドの書き込み
別の方法として、TalkBack API キーとコマンドを、フォーム エンコードされた文字配列としてエンコードすることもできます。
data = ['api_key=',TalkBack_apikey,'&command_string=','CLOSEDOOR']; response = webwrite(url,data)
[ Save and Run]をクリックして、 MATLABAnalysis アプリでMATLAB コードを実行します。次の出力がOutputセクションに表示されます。
response = id: 1333835 command_string: 'CLOSEDOOR' position: 11 executed_at: [] created_at: '2016-04-15T14:50:53Z'
コマンド 'CLOSEDOOR'
によって、Wi-Fi 対応のドアが閉じるようになりました。
JSON オブジェクトとしての TalkBack アプリ コマンドの書き込み
別の方法として、コマンドを JSON オブジェクトとして TalkBack アプリに書き込むこともできます。フィールドが TalkBack キーとコマンドである構造体を作成します。weboptions
を使用して、メディア タイプを 'application/json'
として指定します。
data = struct('api_key',TalkBack_apikey,'command_string','CLOSEDOOR'); options = weboptions('MediaType','application/json'); response = webwrite(url,data,options)
[ Save and Run]をクリックして、 MATLABAnalysis アプリでMATLAB コードを実行します。次の出力がOutputセクションに表示されます。
response = id: 1334587 command_string: 'CLOSEDOOR' position: 12 executed_at: [] created_at: '2016-04-15T17:45:31Z'
コマンド'CLOSEDOOR'
は、ワイヤレス ネットワーク対応ドアを閉じるようになりました。
参考
webread
(MATLAB) | webwrite
(MATLAB) | weboptions
(MATLAB)