15_Blynk
BlynkからLEDを操作する
BlynkアプリからCherryIoTのLEDを遠隔操作します。
準備する
CherryIoTとモジュールを接続する
CherryIoTの指定コネクタに以下のモジュールを接続し、CherryIoTをPCのUSB-A挿入口に接続します。
LEDモジュール
接続先:A
Wi-Fiの情報を確認する
CherryIoTを接続する2.4GHz Wi-FiのSSID(ネットワーク名)とパスワードを確認します。Wi-Fiルーター本体のラベルや設定画面に記載されています。分からない場合は、ネットワークの管理者に確認してください。
Blynkを準備する
Blynkアカウントを準備する
BlynkのWebサイトを開き、右上の「Sign Up」をクリックしてアカウント作成を始めます。すでにBlynkアカウントを持っている場合は、ログインして「テンプレートを作成する」へ進んでください。

メールアドレスを登録する
メールアドレスを入力して利用規約への同意にチェックを入れ、「Sign Up」をクリックします。

確認メールを開く
Blynkから届いたメールを開き、「Complete setup」をクリックします。

パスワードを設定する
Blynkへログインするためのパスワードを入力し、「Next」をクリックします。

プロフィール名を設定する
表示名を入力して「Done」をクリックします。

利用目的を選択する
自分に近い利用目的を選択して、初期設定を完了します。

テンプレートを作成する
「Developer Zone」→「My Templates」を開き、「+ New Template」をクリックします。

テンプレートの情報を入力する
Nameは任意です。このページでは例として「CherryIoT」とします。Hardwareを「ESP32」、Connection Typeを「WiFi」に設定して「Done」をクリックします。

作成したテンプレートを開く
Templatesの一覧に表示された新しく作成したテンプレートをクリックします。

Datastreamを作成する
「Datastreams」を開き、「+ New Datastream」をクリックします。

LED用のDatastreamを作成する
「DATASTREAM NAME」に「LED」と入力し、表示された候補から「LED」を選択します。

LED用のV0を設定する
Nameを「LED」、Pinを「V0」、Data Typeを「Integer」、Minを「0」、Maxを「1」、Defaultを「0」に設定して「Create」をクリックします。

テンプレートを保存する
LEDのDatastreamが追加されたことを確認し、「Save」をクリックします。

デバイスを作成する
左側の「Devices」を開き、「+ New Device」をクリックします。

テンプレートから作成する
「From template」をクリックします。

デバイスを作成する
Templateで新しく作成したテンプレートを選択します。Device Nameは任意です。このページでは例として「CherryIoT」と入力し、「Create」をクリックします。

認証情報を確認する
デバイスが作成されると、Template ID、Template Name、Auth Tokenが表示されます。Auth Tokenはデバイスを認証するための重要な情報なので、第三者へ公開しないでください。

ダッシュボードを編集する
作成したデバイスの画面で「Edit Dashboard」をクリックします。

Switchを追加する
左側のWidget Boxにある「Switch」をドラッグして、Dashboardへ配置します。

Switchの設定を開く
追加したSwitchをクリックして「Switch Settings」を開きます。

SwitchとLEDを関連付ける
Datastreamに「LED (V0)」を選択し、ON VALUEを「1」、OFF VALUEを「0」に設定して「Save」をクリックします。

ダッシュボードを保存する
Switchの設定ができたら、「Save And Apply」をクリックします。

デバイス画面を確認する
Devicesから作成したデバイスを開き、LEDのSwitchが表示されていることを確認します。プログラムを書き込む前はデバイスが「Offline」と表示されます。

Template IDとTemplate Nameを確認する
「Developer Zone」→「My Templates」→作成したテンプレートを開き、HomeのFirmware configurationに表示されるTemplate IDとTemplate Nameを確認します。Auth Tokenとあわせて、次のサンプルコードで使用します。

Arduino IDEに必要なライブラリをインストールする
このサンプルでは、次のライブラリを追加する必要があります。
- Blynk
初めて使用する場合のみインストールしてください。
ライブラリをインストールするサンプルコード
GitHubで公開しているサンプルコードです。コードをコピーして Arduino IDEで使用します。
GitHubからコードを読み込んでいます...プログラムを書き込む
上のサンプルコードをコピーし、Arduino IDEに貼りつけます。
設定情報を書き換える
コード内の以下の箇所を、「1 準備する」で確認・取得した情報に 書き換えます。
| コード内の項目 | 入力する情報 |
|---|---|
BLYNK_TEMPLATE_ID | BlynkのテンプレートID |
BLYNK_TEMPLATE_NAME | Blynkのテンプレート名 |
BLYNK_AUTH_TOKEN | Blynkの認証トークン |
ssid | 接続するWi-FiのSSID |
pass | Wi-Fiのパスワード |
#define BLYNK_TEMPLATE_ID "ここにテンプレートIDを入力"#define BLYNK_TEMPLATE_NAME "ここにテンプレート名を入力"#define BLYNK_AUTH_TOKEN "ここに認証トークンを入力"char ssid[] = "ここにSSIDを入力";char pass[] = "ここにパスワードを入力";コードの左側にある項目名や記号は残し、例を参考に値の部分だけを 書き換えます。値を囲む"、行末の;、 証明書の開始・終了行などは削除しません。書き換えたあと、xxxxxなどの仮の文字が残っていないことを確認してください。
Wi-Fiのパスワード、APIキー、トークン、証明書などを入力したコードは、 Webサイト、SNS、GitHubなどへ公開しないでください。
ボードとポートの設定を確認し、左上の 「→(書き込みボタン)」を押してCherryIoTに書き込みます。
初めて書き込む方は「はじめてのCherryIoT」で詳しい手順を確認してください。
動作確認
Blynkで確認する
デバイスがOnlineになったことを確認する
プログラムを書き込むと、Blynkのデバイス画面で作成したデバイスが「Online」と表示されます。LEDのSwitchをON・OFFして、LEDが点灯・消灯することを確認します。

Blynkの画面からLEDを点灯・消灯できるなら成功です。
動作中、シリアルモニターにはLEDの状態に合わせて「LED ON」または「LED OFF」と表示されます。
Arduino IDEの画面右上にあるアイコンをクリックすると、 画面下にシリアルモニターが表示されます。

コードの解説
Blynkへ接続し、仮想ピンV0で受け取った値をLED出力へ反映します。
GitHubからコードを読み込んでいます...Serial.begin(115200);シリアルモニターへ文字や測定値を表示するため、通信速度を115200bpsに設定します。
#define BLYNK_AUTH_TOKEN "xxxxxx"Blynkのデバイス認証トークンを設定します。テンプレート情報も同様に設定します。
Blynk.begin(BLYNK_AUTH_TOKEN, ssid, pass);認証情報とWi-Fi情報を使ってBlynkへ接続します。
BLYNK_WRITE(V0)Blynkの仮想ピンV0の値が変わったときに自動で実行されるコールバック処理です。仮想ピンは実際のGPIO端子ではなく、Blynkアプリとプログラムの間で値を受け渡すための番号です。
int value = param.asInt();V0から受け取った値を整数として取り出します。
digitalWrite(ledPin, value);受信値をLED端子へ出力し、点灯または消灯します。
Serial.println(value ? "LED ON" : "LED OFF");受信値に応じてLEDの状態をシリアルモニターへ表示します。
Blynk.run();Blynkとの通信を維持し、アプリからの操作を受け取ります。