Hello Sahabat Anak Kendali.
Tulisan kali ini akan melanjutkan tentang cara menggunakan ESP8266, kali ini saya akan mencoba mengirim sebuah data yang didapat dari sebuah sensor dan dikirimkan ke web https://thingspeak.com/
sebelum kita membahas program arduinonya marilah bersama sama menyimak cara bagaimana mengkonfigurasi website thingspeak sehingga kita dapat mengirim data dari arduino ke website thingspeak
terlebih dahulu silahkan buka link nya, https://thingspeak.com/
setelah membukan sobat pasti akan menjumpai tampilan seperti gambar dibawah ini
selanjutnya silahkan sobat terlebih dahulu login dengan akun thingspeak nya, jika belum mempunyai akun silahkan daftar terlebih dahulu,
dengan cara klik menu sign up nantinya sobat akan diarahkan untuk mengisi data registrasi
setelah log in harus membuat sebuah chanel terlebih dahulu dengan cara memilih tab menu New Chanel.
lihatlah gambar dibawah ini
isikan kolom “Name” sesuai keinginan sobat dan centang field 1, deskripsi boleh diisi atau tidak.
selanjutnya akan tampil seperti gambar berikut. dan disinilah data dari arduino yang dikirim akan ditampilkan
pada menu Api Key terdapat Key yang nantinya akan digunakan pada prograam di Arduino
jika sudah selesai sekaang mari kita coba membuat rangkaian arduino dengan esp nya,
jika sobat belum bisa merangkainya silahkan baca artikel sebelumnya
di
konfigurasi ESP8266 dengan AT command
cara Arduino dan ESP8266 mengirim data ke webserver
Cara mengontrol Relay dengan ESP8266
kemudian silakan sobat membuat kode sebagaimana berikut :
#define wifiSSID “Nama_wifi”
#define passwordWifi “Pass”
#define ipThingspeak “184.106.153.149”
#define TS_key “6DF6NAS6A7QZXN0N”
#define sensorPin A0
int nilai_sensor;
boolean connected=false;
void setup(){
Serial1.begin(115200);
Serial1.setTimeout(5000);
Serial.begin(9600);
Serial.println(“ESP8266 send data to thingspeak”);
Serial1.println(“AT+RST”);
delay(1000);
if(Serial1.find(“WIFI GOT IP”))
{
Serial.println(“Modul Siap”);
}
else
{
Serial.println(“modul tidak merespon”);
while (1);
}
for (int i=0;i<5;i++){
connect_to_wifi();
if (connected)
{
break;
}
}
if (!connected){
while(1);
}
delay (5000);
Serial1.println(“AT+CIPMUX=0”);
delay(1000);
}
void loop()
{
String cmd = “AT+CIPSTART=”TCP”,””;
cmd +=ipThingspeak;
cmd += “”,80″;
Serial1.println(cmd);
Serial.println(cmd);
if(Serial1.find(“Eror”))
{
Serial.println(Koneksi error.”);
return;
}
nilai_sensor =analogRead(sensorPin);
cmd = “GET /updute?key=”;
cmd += TS_key;
cmd +=”&field1=”;
cmd += nilai_sensor;
cmd += “rn”;
Serial1.print(“AT+CIPSEND=”);
Serial1.println(cmd.length());
if(Serial1.find(“>”))
{
Serial.print(“>”);
}
else
{
Serial1.println(“AT+CIPCLOSE”);
Serial.println (“koneksi timeout”);
delay(1000);
return;
}
Serial1.print(cmd);
delay(2000);
while(Serial1.available()){
char c = serial1.read();
Serial.write(c);
if(c==’r’) Serial.print(‘n’);
}
Serial.println(“—–end”);
delay(10000);
}
void connect_to_wifi(){
Serial1.println(“AT+CWMODE=1”);
String cmd=”AT+CWJAP=””;
cmd+=wifiSSID;
cmd+=””,””;
cmd+=passwordWifi;
cmd+=”””;
Serial.println(cmd);
Serial1.println(cmd);
delay(2000);
if(Serial1.find(“OK”)){
Serial.println(“suksek terkoneksi”);
connected =true;
}
else{
Serial.println(“gagal terkoneksi”);
connected=false;
}
}
Selamat mencoba dan sukses terus !
jika ada kritik, saran ataupun pertanyaan silahkan di kolom komentar !
Arduino Mega mengirim data ke thingspeak ESP8266
Nice artikel gan.. sangat bermanfaat
Nice gan , menambah wawasan…
Ini dia yang gue cari cari dari tadi, nice artikel gan
boleh gan mantep
Mksh
.. sangat bermanfaat
Mantap jiwa
Kalau boleh tau..fungsinya apa gan? Newbie nih..hehe
[2]
#hapus ini juga gpp.
Komen back 🙂 –
rulyade.web.id
gan, kok punya saya eror dibagian yg ini ya, solusinya gimana ya?
"Serial1.println("AT+CWMODE=1");"
eror muncul notifnya "'Serial1' was not declared in this scope"
mas pasti bukan make arduino mega atau due, serial1 untuk arduino mega atau due mas,, kalo nano, uno, promini, silahkan baca artikel yang ini : https://www.anakkendali.com/2018/03/esp8266-mengirim-data-arduino-uno-ke-thingspeak.html
kalo mas udah pake mega atau due tapi masih belum ke deklarasi serial1 nya mungkin pengaturan di tool nya board belum di set jadi arduino mega atau due
assalamualikum mas selamat siang, saya amau tanya mas semua program yg mas kasih oke smua tpi kok di channel saya gak ada muncul grafiknya yah? mohon pencerahannya terimakasih
Api key nya sudah sesuai ?
field nya juga perlu di perhatikan 😀
semoga sukses, untuk lebih jelas bisa langsung kirimkan email atau no hp di halam contact us pada blog anakkendali.com, kemudian akan saya kirimkan video tutorial artikel ini 😀
sebelumnya, apakah sudah ada respon di serial monitor arduino ?
sdh mas saya suda email di contact us blog ini
Bang mau nanya, kan saya butuh 3 field, tapi saat dicoba selalu keluar koneksi timeput, kenapa ya bang? makasih