ThingSpeak

TimeControl アプリ

TimeControl は他の ThingSpeak アプリと連携して、特定の時間に、または定期的なスケジュールに基づいてアクションを実行します。以下のように使用できます。

  • TimeControl を ThingHTTP と共に使用して、デバイス、Web サイトまたは Web サービスと通信

  • ThingTweet を使用して Twitter からアラートを送信

  • TalkBack を使用してデバイス用のコマンドをキューに追加

たとえば、Twilio を介した電話発信、デバイスの制御、HTTP 要求を受け付けるサーモスタットへの接続などを行う ThingHTTP 要求を作成できます。

TimeControl アプリの紹介

TimeControl アプリは、MATLAB Analysis アプリ、ThingHTTP アプリ、ThingTweet アプリまたは TalkBack アプリを将来の特定の時間に、または定期的にトリガーします。アクションを指定してから、TimeControl アプリを使用してスケジュールを作成します。次に例を示します。

  • MATLAB® Analysis をトリガーしてデータに基づいてアクションを実行する。

  • Twilio の HTTP ベースの API を使用して誰かに電話を掛ける ThingHTTP を作成する。

  • 特定の時間にツイートを送信する。

  • デバイスに対する TalkBack にコマンドを追加し、特定の時間にトリガーして動作させる。

TimeControl でアクションをスケジュール

  1. ThingSpeak にサイン インします。

  2. [Apps][TimeControl] を選択します。

  3. [New TimeControl] をクリックします。

  4. TimeControl の設定を編集します。

    • Name: この TimeControl の一意の名前を入力します。

    • Time Zone: タイム ゾーンはアカウントの設定に基づいています。変更するには、[edit] をクリックします。

    • Frequency: TimeControl を 1 回実行するか、定期的に繰り返すかを選択します。

    • Recurrence: 繰り返しパターンを選択します。

      • Week: 毎週指定の曜日

      • Day: 毎日指定の時刻

      • Hour: 指定した時間間隔

      • Minute: 指定した分間隔

    • Time: TimeControl を実行する時刻を入力します。

    • Fuzzy Time: TimeControl を実行するスケジュールされた時刻を中心としたランダムな分の数値を入力します。

    • Action: 指定したパラメーターが満たされたときにトリガーするアクションを選択します。

      • MATLAB Analysis: スケジュールされたコードを実行します。

      • ThingHTTP: Web サーバーに接続してデータの読み取りまたは書き込みを行います。

      • ThingTweet: 指定した Twitter アカウントにツイートします。

      • TalkBack: デバイスに送信するコマンドをキューに入れます。

TimeControl の実行

ThingSpeak サーバーはユーザーのタイム ゾーンに基づき、指定した時刻に TimeControl を自動的に実行します。ThingSpeak アカウントでタイム ゾーンが正しく指定されていることを確認してください。

    ヒント:   TimeControl は厳密に 24 時間の周期で実行されます。夏時間による時刻の変更を適用するには TimeControl を変更します。

TimeControl の置き換え

TimeControl は他の ThingSpeak アプリをトリガーできます。置き換えキーを使用して時間データとチャネルの値にアクセスし、ThingHTTP の本文または ThingTweet メッセージの値を置き換えます。

時間データ

  • %%datetime%%: 完全な日付と時刻。例: 2014-09-24 5:32 p.m.

  • %%day%%: 曜日の名前。例: Wednesday

  • %%day_index%%: 日曜日から始まる 0 を基準とした曜日インデックス。例: 3

  • %%hour%%: 時。例: 5 p.m.

  • %%minute%%: 分。例: 32

  • %%time%%: 時刻。例: 5:32 p.m.

最後のチャネル値

ThingSpeak チャネル フィールドから最後の値を取得するには、TimeControl フォーム フィールドに以下を含めます。

%%channel_CHANNEL_ID_field_FIELD_NUMBER%%

たとえば、チャネル 1417、フィールド 1 の最後の値を置き換えるには、以下を使用します。

%%channel_1417_field_1%% 

ThingHTTP を使用したチャネル ステータスの更新

この例では、ThingSpeak チャネル "field1" を更新する方法を説明します。この例では、TimeControl を使用して、指定した時刻にステータス メッセージとタイムスタンプでチャネル データを更新する ThingHTTP 要求をトリガーします。

ThingHTTP 要求の作成

ThingHTTP で、[ThingSpeak Channel Updater] という名前と以下のパラメーターを入力します。

  • URL: http://api.thingspeak.com/update

  • Method: POST

  • Body:

    api_key=THINGSPEAK_WRITE_KEY&field1=TimeControl%20test&status=Executed at %%time%%.

TimeControl の作成

TimeControl に名前を付けて、以下のパラメーターを入力します。

  • [One Time] チェック ボックスをオンにします。

  • 今日の日付を選択します。

  • 近い将来の時と分を選択します。

  • アクションとして [ThingHTTP] を選択します。

  • [then perform ThingHTTP] フィールドで、この TimeControl をトリガーするために作成した ThingHTTP を選択します。

  • TimeControl を保存します。

指定した時刻に、チャネルが自動的に更新されることを確認します。

TimeControl アプリと MATLAB Analysis コード エラー

コードにエラーがあると、MATLAB Analysis に関連付けられている TimeControl は実行されません。MATLAB Analysis アプリの [Notify me via email if this MATLAB Analysis fails when triggered by TimeControl or React] チェック ボックスをオンにすると、電子メールでアラートを受け取ることができます。

関連する MATLAB コードに含まれるエラーが解消されると TimeControl が再開されます。

この情報は役に立ちましたか?