Arduino & IoT Academy · レッスン

クラウドからハードウェアを制御する

リモートボタンから出力を切り替えます。

レッスン 4/413 ステップ

「クラウドからハードウェアを制御する」はCoddyKit上の無料Arduino & IoT Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはArduino & IoT Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Arduino & IoT Academyコースには全4レッスンが含まれています。

方向を反転する

これまではデータをクラウドへ送っていました。ここからはコマンドを下り方向に送り、Webボタンで実際のハードウェアを動かします。💡

プル方式

シンプルな方法はポーリングです。デバイスが数秒ごとにクラウドへ、最新のコマンドは何かと問い合わせます。

フィールドにコマンドを保存する

チャンネルのフィールドを制御に再利用できます。1を書き込むとライトが点灯し、0を書き込むと消灯します。デバイス側でその値を読み取ってください。

最新の値を読み取る

デバイスは読み取りリクエストで、そのフィールドの最後のエントリを取得し、そこにある数値に応じて動作します。

long state = ThingSpeak.getFieldAsLong(1);

コマンドに応じて動作する

値を取得したら、シンプルなifでピンを制御します。1ならLEDを点灯するかリレーを作動させ、0ならオフにします。

if (state == 1) digitalWrite(LED, HIGH);
else digitalWrite(LED, LOW);

Blynkの仮想ピン

Blynkでは仮想ピンを使います。ボタンウィジェットがV0に書き込み、デバイス側の小さなハンドラーがV0の変更時に実行されます。

Blynkの書き込みハンドラー

そのピン用にBLYNK_WRITEブロックを定義します。その中で値を取得し、ハードウェアをその値に合わせて切り替えます。

BLYNK_WRITE(V0) {
  digitalWrite(LED, param.asInt());
}

ポーリングよりプッシュ

ポーリングには遅延が生じます。BlynkやMQTTなどのプラットフォームはコマンドを即座にプッシュするため、タップした瞬間にライトが反応します。⚡

常に安全なデフォルトを用意する

ネットワークが切断された場合に備えて、安全な状態を決めておきます。たとえばヒーターは、オンのままになるのではなく、デフォルトでオフにすべきです。

大きな負荷を安全に切り替える

商用電源を制御する場合、コマンドはリレーを駆動し、活線を直接制御してはいけません。ピンはスイッチを作動させるだけです。

クラウドに状態を返す

動作後、新しい状態をステータスとして送り返します。そうすればダッシュボードには、要求した内容だけでなく、デバイスが実際に行った動作が表示されます。

クイックチェック

WiFiが切断されたとき、クラウドで制御するヒーターに安全なデフォルトを設定するのはなぜですか?

まとめ

デバイスは、フィールドをポーリングするか、Blynkのピンのようなプッシュ方式でコマンドを読み取ります。ifで動作させ、大きな負荷はリレーで切り替え、安全なデフォルトを維持してください。

無料で開始

AI チューターと学ぶ C++ — 無料

ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。

コース
30
レッスン
120

よくある質問

「クラウドからハードウェアを制御する」レッスンは無料ですか?

はい。「クラウドからハードウェアを制御する」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Arduino & IoT Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Arduino & IoT Academyコースには全4レッスンが含まれています。

「クラウドからハードウェアを制御する」で何を学びますか?

リモートボタンから出力を切り替えます。 ブラウザで直接実行するハンズオンコードでArduino & IoT Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Arduino & IoT Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのArduino & IoT Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。

「クラウドからハードウェアを制御する」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このArduino & IoT Academyレッスンでコードを書いて実行できますか?

はい。すべてのArduino & IoT Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. クラウドプラットフォームを選ぶ
  2. デバイスを認証する
  3. リアルタイムデータをダッシュボードに送る
  4. クラウドからハードウェアを制御する
← Arduino & IoT Academyに戻る