- 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);
}
コメント
この記事へのトラックバックはありません。









この記事へのコメントはありません。