Assalamu’alaikum teman teman. saatnya kita belajar lagi :nerd, kali ini kita akan coba membuat project IoT berbasiskan bahasa pemrograman Arduino lagi, kali ini kita akan coba membuat project dimana kita dapat memantau / memonitoring suhu yang dibaca arduino baik itu board arduino sungguhan (nano, uno,dll ) atau board arduino compatible lainya seperti wemos atau nodeMcu secara realtime. untuk masalah hardware saya nanti akan coba menggunakan WeMos aja, tapi bagai kalaian yg tidak punya Wemos bisa menggunakan board lain, atau modul internet lain seperti ESP8266 atau sim800l untuk mengkoneksikan arduino kalian ke internet. intinya adalah arduino kalian bisa terhubung ke Internet :thumbup
Baik langsung saja siapkan komponennya yang meliputi:
- Board Wemos (Link Tokopedia)
- Sensor Suhu LM35 (Link Tokopedia)
Setelah komponen siap, selanjutnya buat rangkaiannya seperti gambar dibawah ini
pada gambar diatas terlihat bahwa saya menggunakan sensor suhu LM35, nah setelah hardware siap maka selanjutnya kita siapkan softwarenya, buat kalian yang menggunakan wemos saya anggap kalian sudah bisa mengoprasikan wemos tersbut dengan arduino IDE, jika belum maka bisa dilihat di postingan sebelumnya di Cara Memprogram Wemos D1 Menggunakan Arduino IDE, setelah board siap maka selanjutnya ke tahap coding, uploud coding berikut ini ke wemos kalian :
#include <Arduino.h> #include <ESP8266WiFi.h> #include <ESP8266WiFiMulti.h> #include <ESP8266HTTPClient.h> ESP8266WiFiMulti WiFiMulti; String url; // string untuk menampung url String api = "XXXXXXXXXXX"; // kode API ThingSpeak Kalian (PERLU DISESUAIKAN) void setup() { Serial.begin(115200); // memulai koneksi serial dgn boudrate 115200 WiFi.mode(WIFI_STA); WiFiMulti.addAP("NAMA WIFI", "PASS WIFI"); // nama SSID dan Passwordnya (PERLU DISESUAIKAN) } void loop() { while (WiFiMulti.run() != WL_CONNECTED) { Serial.println("Connecting to Wi-Fi . ."); delay(500); }; float suhu = analogRead(A0)/9.31; // memasukan data suhu ke variabel String h 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(suhu); Serial.println(url); http.begin(url); //HTTP Request ke URL 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 / file html dari server Serial.println("\n\n"); } } else { Serial.println("[HTTP] GET... failed"); } http.end(); // mengakhiri Request } delay(10000); // jeda per koneksi 10 detik }
Dari koding diatas ada 3 komponen yang perlu kita ganti. yaitu Nama Wifi, Password wifi dan API Key dari thingSpeak, heh? apa itu api Key ThinkSpeak? :bingung API (Autoritation Public Key) key thingSpeak adalah kode yang kita miliki agar kita bisa menggunakan layanan mereka, Gimana cara mendapatkanya? caranya mudah lanjut dihalaman ke 2 ya
mas apakah ini juga berlaku untuk modul esp8266 v1, yang hitam.??
terimakasih
mas, ini bisa pake arduino mega +esp01 ga ?
bisa mas.