Halo guys, kali ini kami akan membahas rancangan perangkat menggunakaan NodeMCU dan sensor DHT11. Rancangan perangkat/device yang akan dibuat di percobaan ini kami menggunakan NodeMCU sebanyak 1 buah sebagai kontroler, DHT11 sebanyak 2 buah (indoor dan outdoor) sebagai sensor suhu yang akan digunakan, Thingspeak untuk mengolah data, dimana data dikirim dulu ke server Thingspeak. Untuk pembuatan rangkaian kami menggunakan breadboard sebagai tempat untuk merangkai dan kabel jumper sebagai penghubung tambahan. Untuk coding kami sendiri menggunakan aplikasi bernama Arduino IDE untuk memprogram controller. Percobaan ini dibuat untuk memonitoring suhu yang ada di luar dan dalam ruangan untuk mengetahui perbandingan suhu yang ada.
Sistem IoT
Sistem Sensor Temperatur (DHT11)
DHT11 adalah sensor suhu dan kelembaban udara, memiliki keluaran sinyal digital yang dikalibrasi dengan sensor suhu dan kelembaban yang kompleks. Teknologi memastikan keandalan yang tinggi dan stabilitas jangka panjang yang sangat baik. Mikrokontroler terhubung ke kinerja tinggi 8 bit. Sensor ini mencakup elemen resistif dan alat pengukur suhu NTC. DHT11 memiliki kualitas yang sangat baik, respon cepat, kemampuan anti-interferensi dan keunggulan kinerja biaya tinggi. Setiap sensor DHT11 memiliki fitur kalibrasi sangat akurat dari kelembaban ruang kalibrasi. Koefisien kalibrasi yang disimpan dalam memori program OTP, sensor internal mendeteksi sinyal dalam proses, kita harus menyebutnya koefisien kalibrasi. Sistem antarmuka tunggal-kabel serial terintegrasi untuk menjadi cepat dan mudah. Kecil ukuran, daya rendah, sinyal transmisi jarak hingga 20 meter, sehingga berbagai aplikasi dan bahkan aplikasi yang paling menuntut. Produk ini 4-pin pin baris paket tunggal. Koneksi nyaman, paket khusus dapat diberikan sesuai dengan kebutuhan pengguna.
ThingSpeak
NodeMCU ESP8266
NodeMCU adalah sebuah platform IoT opensource dengan biaya yang lebih rendah. Microcontroller ini juga sudah dilengkapi dengan module WIFI ESP8266. Istilah NodeMCU secara default sebenarnya mengacu pada firmware yang digunakan dari pada perangkat keras development kit NodeMCU bisa dianalogikan sebagai board arduino- nya.
Blok Diagram
Cara Kerja
NodeMCU mendapat arus, kemudian memberikan perintah kepada Sensor DHT 11 baik di Indoor maupun Outdoor, kemudian sensor mendeteksi suhu dan kelembaban di sekitar sensor, dan mengirimkan data ke NodeMCU yang kemudian diolah untuk dikirmkan ke Web Thingspeak.
Wiring diagram
CODING
#include <DHT.h> // Untuk memuat library dht yang sudah di download
#include <ESP8266WiFi.h>
String apiKey = "6CQ40O8UJB9ECAXF"; // Memasukkan API key dari profil ThingSpeak
const char *ssid = "DIMAS"; // Memasukkan nama router WiFi yang akan digunakan
const char *pass = "dimas321"; // Memasukkan password router WiFi yang akan digunakan
const char* server = "api.thingspeak.com";
#define DHTPIN D3 //PIN DHT yang akan digunakan (indoor)
#define DHTPIN D1 //PIN DHT yang akan digunakan (outdoor)
DHT dht(DHTPIN, DHT11);
WiFiClient client;
void setup()
{
Serial.begin(115200);
delay(10);
dht.begin();
Serial.println("Connecting to ");
Serial.println(ssid);
WiFi.begin(ssid, pass);
while (WiFi.status() != WL_CONNECTED)
{
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi connected");
}
void loop()
{
float h = dht.readHumidity();
float t = dht.readTemperature();
if (isnan(h) || isnan(t))
{
Serial.println("Failed to read from DHT sensor!");
return;
}
if (client.connect(server,80)) // "184.106.153.149" or api.thingspeak.com
{
String postStr = apiKey;
postStr +="&field1="; //Temperature indoor 1
postStr += String(t);
postStr +="&field2=";//Kelembaban indoor 1
postStr += String(h);
postStr +="&field3=";//Temperature outdoor 2
postStr += String(t);
postStr +="&field4=";//Kelembaban outdoor 2
postStr += String(h);
postStr += "\r\n\r\n";
client.print("POST /update HTTP/1.1\n");
client.print("Host: api.thingspeak.com\n");
client.print("Connection: close\n");
client.print("X-THINGSPEAKAPIKEY: "+apiKey+"\n");
client.print("Content-Type: application/x-www-form-urlencoded\n");
client.print("Content-Length: ");
client.print(postStr.length());
client.print("\n\n");
client.print(postStr);
Serial.print("Temperature: ");
Serial.print(t);
Serial.print(" degrees Celcius, Humidity: ");
Serial.print(h);
Serial.println("%. Send to Thingspeak.");
}
client.stop();
Serial.println("Waiting...");
// thingspeak needs minimum 15 sec delay between updates
delay(1000);
}
OUTPUT
Output dari percobaan ini adalah nilai temperatur suhu dan kelembaban yang diukur oleh sensor DHT 11 baik di Indoor maupun Outdoor. Juga pada web Thingspeak tercatat nilai suhu dan kelembaban dari awal sensor itu mendeteksi hingga saat ini, sehingga bisa diketahui perubahan suhu dan kelembaban pada sekitar sensor di Indoor dan Outdoor. Untuk lebih jelasnya, berikut tampilan perubahan suhu dan kelembaban menggunakan web Thingspeak :
Sekian pembahasan kali ini terkait percobaan menggunakan Nodemcu dan DHT 11 untuk membaca nilai suhu dan kelembaban. Mungkin dari kalian yang ingin belajar elektronika, bisa langsung klik Belajar Elektronika
0 Response to "Menyimpan dan Menampilkan Data Dari Sensor IoT di Web Menggunakan ThingSpeak"
Post a Comment