2016年4月7日木曜日

ubidots ESP8266ライブラリ

 ubidotsのESP8266ライブラリを使えるように書き換えてみました。


※画像はデータ取得の例です。

 動作確認したESP8266、ESP-WROOM-02のファームウェアのバージョンは以下です。

AT version:0.40.0.0(Aug  8 2015 14:45:58)
SDK version:1.3.0


○ライブラリのインストール
 ArudinoIDE(1.6.8)でライブラリをインストールするには、次のように操作します。

ESP8266ライブラリをダウンロードします。
②ArudinoIDEを起動します。
③[スケッチ]→[ライブラリをインクルード]→[.ZIP形式のライブラリをインストール]を選択します。
④ダウンロードしたESP8266ライブラリのZIPファイルを選択し、[開く]をクリックします。


○ボーレートの設定
 SoftwareSerialを使用しているので、ESP8266のボーレートを9600bpsに設定する必要があります。

 ボーレートを9600bpsに設定するには、次のATコマンドを入力します。

  AT+UART_DEF=9600,8,1,0,0

 元の115200bpsに戻すには、次のATコマンドを入力します。

  AT+UART_DEF=115200,8,1,0,0
 
 「AT+UART_DEF」の書式は、次のとおりです。

  AT+UART_DEF=<ボーレート>, <データビット数>,<ストップビット>, <パリティ>,<フロー制御>


 PCとESP8266の接続方法、端末ソフトの設定は、以下の記事を参照してください。
Arduino+ESP8266でIoT

 ESP-WROOM-02(スイッチサイエンス)の場合は、次の表のように配線します。

GNDGND
EN10kΩ抵抗経由で3.3V
RST10kΩ抵抗経由で3.3V
TXDシリアル変換ケーブル白
RXDシリアル変換ケーブル緑
VCC3.3V



○ArudinoとESP8266の接続

 ArudinoとESP8266を次のように接続します。

ArduinoESP8266
D2TXD
D3RXD
3.3VVCC
3.3VCH_PD
GNDGND


 ESP-WROOM-02の場合は、次のように接続します。

ArduinoESP-WROOM-02
D2TXD
D3RXD
GNDGND

 VCCは3.3V電源(Arudinoの3.3Vではドライブ不可)、EN、RSTは、10kΩ抵抗経由で3.3Vに接続します。


○プログラム(スケッチ)の例
 データを送信するコードは、次のように書きます。

#include <UbidotsESP8266.h>
#include <SoftwareSerial.h>
#define SSID "Your_WiFi_SSID_here"
#define PASS "Your_WiFi_PASWORD_here"
#define TOKEN "Your_token_here"
#define ID "Your_VariableID_here"
Ubidots client(TOKEN);
void setup() {
Serial.begin(9600);
client.wifiConnection(SSID,PASS);
client.tcpConnection();
}
void loop() {
float value = analogRead(A0);
client.saveValue(ID,value);
}

 その他の使い方は、README、サンプルを参照してください。



0 件のコメント:

コメントを投稿