- 2018-12-31
- ESP-WROOM-02, 電気工作
- コメントを書く
IoTデータ可視化サービスを使用すると、簡単にセンサーデータをグラフ化することが出来ます。
グラフはPCでもスマホでも見ることが出来るので何かと便利です。
まずはAmbientの設定を済ませます。
スマホアプリBlynkの設定方法はこちらから。
Aruduino IDEのインストールから設定方法はこちらから。
ライブラリーはこちらからダウンロードしてインストールします。
https://github.com/blynkkk/blynk-library
https://github.com/AmbientDataInc/Ambient_ESP8266_lib
https://github.com/PaulStoffregen/OneWire
https://github.com/milesburton/Arduino-Temperature-Control-Library
https://github.com/ekstrand/ESP8266wifi
ESP-WROOM-02を使う「第1回」 Arduino IDEをインストールして、ESP-WROOM-2に書き込む準備まで
スケッチを書き込みます。
#include <ESP8266WiFi.h> #include <OneWire.h> #include <DallasTemperature.h> #include <BlynkSimpleEsp8266.h> #include "Ambient.h" #define ONE_WIRE_BUS 14 //温度センサーをESP-WROOM-02の14番ピンに接続 OneWire oneWire(ONE_WIRE_BUS); DallasTemperature DS18B20(&oneWire); WiFiClient client; Ambient ambient; char auth[] = "*****************************"; //Blynkで生成されるAuth Token // ESP8266が接続するWi-Fiアクセスポイントの設定 const char* ssid = "your_SSID"; //無線ルーターのSSID const char* password = "your_PASSWORD"; //無線ルーターのパスワード // Ambientのチャネル設定 unsigned int channelId = channel_ID; //AmbientのチャネルID const char* writeKey = "writekey"; //Ambientのライトキー void setup() { Serial.begin(115200); //デバッグ用にシリアルを開く delay(10); Serial.println(); Serial.println(); Serial.print("Connecting to "); Serial.println(ssid); Blynk.begin(auth, ssid, password); while (WiFi.status() != WL_CONNECTED) { //接続が確立するまで、・・・を表示 delay(500); Serial.print("."); } //ここに来たら、接続完了している。 Serial.println(""); //改行して繋がったことをシリアルで伝える。 Serial.println("WiFi connected"); Serial.println("IP address: "); //WiFiの状態を表示 Serial.println(WiFi.localIP()); DS18B20.begin(); ambient.begin(channelId, writeKey, &client); // チャネルIDとライトキーを指定してAmbientの初期化 } int value = 0; void loop() { { Blynk.run(); } float celsius = 0; DS18B20.requestTemperatures(); celsius = DS18B20.getTempCByIndex(0); Blynk.virtualWrite(4, celsius); //BlynkアプリでV4ピンを指定する Serial.println(""); Serial.println("TEMP:" + String(celsius)); ++value; delay(10); // センサー値をAmbientに送信する ambient.set(1, celsius); ambient.send(); //ESP.deepSleep(300 * 1000 * 1000, RF_DEFAULT); //復帰までのタイマー時間設定 delay(1000 *10); }
コメント
この記事へのトラックバックはありません。
この記事へのコメントはありません。