Menyambungkan DHT11 ke Thinkspeak
Buat temen2 yang mau menghubungkan perangkat IoTny ke thingspeak
bisa lihat tutorial ini...
1. Buka thingspeak
2.daftar terlebih dahulu,dan verifikasi emailmu
3. klik verify email, dan tunggu sampai terverifikasi
4. bila sudah klik ok
5. pilih planning dan projekmu, kemudian klik ok
6. klik new channel
7. beri nama channel, deskripsi, dan berapa field yg dibutuhkan, karena kita pakai DHT11 maka kita butuh 2 field
8. klik save channel
9. klik API key
9. simpan Token API key
10. Buka aplikasi Arduino IDE dan install thingspeak , tools > library include > thingspeak > install
11. masukan script di bawah ini
#include <Arduino.h>
#include <ESP8266WiFi.h>
#include <ESP8266WiFiMulti.h>
#include <ESP8266HTTPClient.h>
#include <DHT.h>
#define dhtpin 5 //pin data dht11 di pin 5
#define ssid "SEKOLAH IDN" // ssid wifi
#define psswd "xxxxx"
DHT dht(dhtpin, DHT11);
ESP8266WiFiMulti WiFiMulti;
String url;
String api = "KSWGWDF9FAF*****"; //Token API
void setup() {
Serial.begin(115200);
WiFi.mode(WIFI_STA);
//WiFiMulti.addAp(ssid,psswd);//nama wifi dan psswd
WiFiMulti.addAP(ssid,NULL); //nama wifi dan tanpa psswd
dht.begin();
}
void loop() {
while(WiFiMulti.run() != WL_CONNECTED)
{
Serial.println("Connecting yo Wi-Fi...");
delay(500);
};
float temp = dht.readTemperature(); //membaca data suhu
float hum = dht.readHumidity(); // membaca data kelembapan
if(isnan(hum) || isnan(temp)){// cek data suhu dan kelembapan terbaca atau tidak
Serial.println("Gagal baca data sensor");
return;
}
if((WiFiMulti.run() == WL_CONNECTED))
{
HTTPClient http;
Serial.println("[HTTP] Memulai koneksi...");
url = "http://api.thingspeak.com/update?api_key=";
url += api;
url += "&field1=";
url += String(temp);// mengirim data suhu
url += "&field2=";
url += String(hum);// mengirim data kelembapan
Serial.println(url);
http.begin(url);// HTTP request
int httpCode = http.GET();//mengakses jawaban server
if(httpCode > 0){
Serial.printf("[HTTP] GET...code: %d\n",httpCode);
if(httpCode == HTTP_CODE_OK){
String payload = http.getString();
Serial.println(payload);//print balasan
Serial.println("\n\n");
}
} else{
Serial.println("[HTTP] GET... failed");
}
http.end();// mengakhiri request
}
delay(10000);//jeda perkoneksi 10 detik
}
12. pastikan kecepatan komunikasi serial sama
13. bila sudah konek wifi, kembali ke thingspeak dan lihat hasilnya
14. selesai, selamat mencoba
bisa lihat tutorial ini...
1. Buka thingspeak
2.daftar terlebih dahulu,dan verifikasi emailmu
3. klik verify email, dan tunggu sampai terverifikasi
4. bila sudah klik ok
5. pilih planning dan projekmu, kemudian klik ok
6. klik new channel
7. beri nama channel, deskripsi, dan berapa field yg dibutuhkan, karena kita pakai DHT11 maka kita butuh 2 field
8. klik save channel
9. klik API key
9. simpan Token API key
10. Buka aplikasi Arduino IDE dan install thingspeak , tools > library include > thingspeak > install
11. masukan script di bawah ini
#include <Arduino.h>
#include <ESP8266WiFi.h>
#include <ESP8266WiFiMulti.h>
#include <ESP8266HTTPClient.h>
#include <DHT.h>
#define dhtpin 5 //pin data dht11 di pin 5
#define ssid "SEKOLAH IDN" // ssid wifi
#define psswd "xxxxx"
DHT dht(dhtpin, DHT11);
ESP8266WiFiMulti WiFiMulti;
String url;
String api = "KSWGWDF9FAF*****"; //Token API
void setup() {
Serial.begin(115200);
WiFi.mode(WIFI_STA);
//WiFiMulti.addAp(ssid,psswd);//nama wifi dan psswd
WiFiMulti.addAP(ssid,NULL); //nama wifi dan tanpa psswd
dht.begin();
}
void loop() {
while(WiFiMulti.run() != WL_CONNECTED)
{
Serial.println("Connecting yo Wi-Fi...");
delay(500);
};
float temp = dht.readTemperature(); //membaca data suhu
float hum = dht.readHumidity(); // membaca data kelembapan
if(isnan(hum) || isnan(temp)){// cek data suhu dan kelembapan terbaca atau tidak
Serial.println("Gagal baca data sensor");
return;
}
if((WiFiMulti.run() == WL_CONNECTED))
{
HTTPClient http;
Serial.println("[HTTP] Memulai koneksi...");
url = "http://api.thingspeak.com/update?api_key=";
url += api;
url += "&field1=";
url += String(temp);// mengirim data suhu
url += "&field2=";
url += String(hum);// mengirim data kelembapan
Serial.println(url);
http.begin(url);// HTTP request
int httpCode = http.GET();//mengakses jawaban server
if(httpCode > 0){
Serial.printf("[HTTP] GET...code: %d\n",httpCode);
if(httpCode == HTTP_CODE_OK){
String payload = http.getString();
Serial.println(payload);//print balasan
Serial.println("\n\n");
}
} else{
Serial.println("[HTTP] GET... failed");
}
http.end();// mengakhiri request
}
delay(10000);//jeda perkoneksi 10 detik
}
12. pastikan kecepatan komunikasi serial sama
13. bila sudah konek wifi, kembali ke thingspeak dan lihat hasilnya
14. selesai, selamat mencoba
Komentar
Posting Komentar