Friday, 27 January 2017

Memuat Data Menggunakan ESP 8266 In Cloud


Dalam posting ini adalah tentang bagaimana untuk pergi tentang modul ESP 8266 WLAN *dapat mengukur dan data Arduino Uno melalui sensor dan kemudian dapat meng-upload ke Sparkfun Phant awan.

The Sparkfun Cloud

Produsen perangkat keras Sparkfun telah mendirikan layanan cloud gratis di mana Anda dapat meng-upload ke awan menggunakan nya ESP 8266 dan Phant Perpustakaan Sparkfun sebuah perintah singkat atau pengukuran data.

Ada juga situs web di mana Anda mendapatkan ditampilkan pembacaan untuk setiap aliran data. Saat ini Anda bisa hingga 50 MB data per aliran upload. Setelah itu, masing-masing catatan tertua akan dihapus.

Untuk membuat aliran baru, seseorang harus pertama di bawahdata.sparkfun.com"Create" tombol, dan tentukan nama dan deskripsi dan berbagai bidang data. Sekarang kita mendapatkan "URL Polling", serta pribadi dan kunci publik. Dengan demikian aliran ini selesai dibuat.

Sekarang Anda memilikidi siniuntuk ESP 8266 download isi terkompresi dari file .zip di dalam folder Perpustakaan dari Arduino IDE Copy Perpustakaan Phant. Setelah restart IDE perpustakaan Phant harus terdaftar di bawah Sketch> Sertakan Perpustakaan.

Untuk mengujinya, Anda dapat menggunakan sampel Sketch ini untuk ESP 8266 dari Sparkfun:


// Include the ESP8266 WiFi library. (Works a lot like the
// Arduino WiFi library.)
#include<ESP8266WiFi.h>
// Include the SparkFun Phant library.
#include<Phant.h>
//////////////////////
// WiFi Definitions //
//////////////////////
constcharWiFiSSID[] ="WiFi_Network";
constcharWiFiPSK[] ="WiFi_Password";
/////////////////////
// Pin Definitions //
/////////////////////
constintLED_PIN =5;// Thing's onboard, green LED
constintANALOG_PIN = A0;// The only analog pin on the Thing
constintDIGITAL_PIN =12;// Digital pin to be read
////////////////
// Phant Keys //
////////////////
constcharPhantHost[] ="data.sparkfun.com";
constcharPublicKey[] ="wpvZ9pE1qbFJAjaGd3bn";
constcharPrivateKey[] ="wzeB1z0xWNt1YJX27xdg";
/////////////////
// Post Timing //
/////////////////
constunsignedlongpostRate =30000;
unsignedlonglastPost =0;
voidsetup()
{
initHardware();
connectWiFi();
digitalWrite(LED_PIN, HIGH);
}
voidloop()
{
if(lastPost + postRate <=millis())
{
if(postToPhant())
lastPost =millis();
else
delay(100);
}
}
voidconnectWiFi()
{
byte ledStatus = LOW;
// Set WiFi mode to station (as opposed to AP or AP_STA)
WiFi.mode(WIFI_STA);
// WiFI.begin([ssid], [passkey]) initiates a WiFI connection
// to the stated [ssid], using the [passkey] as a WPA, WPA2,
// or WEP passphrase.
WiFi.begin(WiFiSSID, WiFiPSK);
// Use the WiFi.status() function to check if the ESP8266
// is connected to a WiFi network.
while(WiFi.status() != WL_CONNECTED)
{
// Blink the LED
digitalWrite(LED_PIN, ledStatus);// Write LED high/low
ledStatus = (ledStatus == HIGH) ? LOW : HIGH;
// Delays allow the ESP8266 to perform critical tasks
// defined outside of the sketch. These tasks include
// setting up, and maintaining, a WiFi connection.
delay(100);
// Potentially infinite loops are generally dangerous.
// Add delays -- allowing the processor to perform other
// tasks -- wherever possible.
}
}
voidinitHardware()
{
Serial.begin(9600);
pinMode(DIGITAL_PIN, INPUT_PULLUP);
pinMode(LED_PIN, OUTPUT);
digitalWrite(LED_PIN, LOW);
// Don't need to set ANALOG_PIN as input,
// that's all it can be.
}
intpostToPhant()
{
// LED turns on when we enter, it'll go off when we
// successfully post.
digitalWrite(LED_PIN, HIGH);
// Declare an object from the Phant library - phant
Phantphant(PhantHost, PublicKey, PrivateKey);
// Do a little work to get a unique-ish name. Append the
// last two bytes of the MAC (HEX'd) to "Thing-":
uint8_tmac[WL_MAC_ADDR_LENGTH];
WiFi.macAddress(mac);
String macID =String(mac[WL_MAC_ADDR_LENGTH -2], HEX) +
String(mac[WL_MAC_ADDR_LENGTH -1], HEX);
macID.toUpperCase();
String postedID ="Thing-"+ macID;
// Add the four field/value pairs defined by our stream:
phant.add("id", postedID);
phant.add("analog",analogRead(ANALOG_PIN));
phant.add("digital",digitalRead(DIGITAL_PIN));
phant.add("time",millis());
// Now connect to data.sparkfun.com, and post our data:
WiFiClient client;
constinthttpPort =80;
if(!client.connect(PhantHost, httpPort))
{
// If we fail to connect, return 0.
return0;
}
// If we successfully connected, print our Phant post:
client.print(phant.post());
// Read all the lines of the reply from server and print them to Serial
while(client.available()){
String line = client.readStringUntil('\r');
//Serial.print(line); // Trying to avoid using serial
}
// Before we exit, turn the LED off.
digitalWrite(LED_PIN, LOW);
return1;// Return success
}
view rawexample_DataSparkfunCom.inohosted with ? byGitHub

Di sini Anda hanya memiliki jaringan WLAN dan password wifi yang sesuai dengan jaringan WiFi Anda dan mengubah password Anda. Setelahupload Arduino sketsa pada ESP 8266dapatdi siniuntuk melihat data nya upload. Untuk sekarang menggunakan aliran Anda sendiri, Anda hanya memiliki Public Key dan Swasta digantikan oleh Anda sendiri.


Karena ESP 8266 Versi 01 hanya memiliki 2 GPIOs, masuk akal baginyauntuk terhubung dengan Arduinountuk mendapatkan lebih banyak pin.

Kesimpulan

The PhantCloudSparkfun dalam kombinasi denganESP 8266 *adalah, berkat perpustakaan Arduino, cara yang sangat mudah untuk memuat bacaan dari Arduino di awan.


reff : http://arduinoach.blogspot.com/2015/12/memuat-data-menggunakan-esp-8266-in.html


Video yang berkaitan dengan Memuat Data Menggunakan ESP 8266 In Cloud


0 comments:

Post a Comment