Main Content

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

MATLAB の TalkBack アプリを使用してコマンドをキューに入れる

TalkBack を使用すると、キューにあるコマンドに基づいてデバイスを動作させることができます。この例では、MATLAB® の TalkBack アプリを webreadwebwrite などの組み込み 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' は、ワイヤレス ネットワーク対応ドアを閉じるようになりました。

参考

(MATLAB) | (MATLAB) | (MATLAB)

関連するトピック