Thursday, April 8, 2021

IoT dengan NodeMCU dan Sensor LM35 serta DHT11

Kali ini, saya akan membahas tentang sesuatu yang diluar dari pekerjaan kantor. Pada dasarnya ini sebuah tugas dari perkuliahan. Hal ini menarik saya untuk membuat catatan ini sebagai pengingat dan sebagai sebuah hal yang menarik. Mengingat kedepan perkembangan Internet of Things akan semakin maju dan akan ada banyak sensor yang akan diterapkan.

Persiapan
Lalu apa saja yang akan dipakai dalam pembahasan ini? Pastinya ada beberapa hal yang dipersiapkan
  1. NodeMCU
  2. Sensor LM35
  3. Sensor DHT11
  4. Breadboard
  5. Kabel jumper male to male
  6. Software Arduino IDE untuk melakukan coding

Langkah Awal untuk LM35
Untuk pertama kali kita akan menyusun board sesuai gambar berikut
Keterangan dari gambar
- Pin pertama sensor LM35 terhubung ke +3v NodeMCU
- Pin kedua sensor LM35 terhubung ke pin A0 NodeMCU
- Pin ketiga sensor LM35 terhubung ke pin Ground NodeMCU



Setelah rangkaian terbentuk sesuai gambar diatas maka board sudah siap untuk dilakukan coding atau memasukan kode program. Setelah instalasi Arduino maka buka tab File -> Preferences, isikan http://arduino.esp8266.com/stable/package_esp8266com_index.json pada bagian Additional Boards Manager URLs: 

Kemudian kita buka tab Tools->Board->Board Manager. Akan muncul tab baru dan kita cari

Kembali lagi kita tekan Tool->Board dan pilih sesuai gambar dibawah

Jangan lupa pilih port yang terhubung dengan NodeMCU


Buka Arduino ide nya dan masukkan kode program sebagai berikut :

float vref = 3.3;
float resolution = vref/1023;

void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);  /* Define baud rate for serial communication */
}

void loop() {
  // put your main code here, to run repeatedly:
  float temperature = analogRead(A0); 
  temperature = (temperature*resolution); 
  temperature = temperature*100; 
  Serial.println(temperature);
  delay(1000);
}

Jika sudah simpan kode itu dan lakukan verify dengan menekan tombol 

Jika berhasil lakukan upload dengan menekan tombol 

Untuk melihat hasil kita bisa menekan tombol kaca pembesar yang ada di kanan atas dan akan diperoleh hasil sebagai berikut

Langkah Awal untuk DHT11
Sama seperti dengan sebelumnya, kita siapkan board sebagai berikut :

Disini kita akan menambahkan library dari DHT 11 dengan cara pilih tab Sketch->Include Library->Library Manager
Nanti akan muncul sebagai berikut :
Jika sudah terinstal sesuai gambar diatas, kita siapkan kode program sesuai dengan kode dibawah ini:
#include <DHT.h>
DHT dht(D1,DHT11);
void setup()
{  
  Serial.begin(9600);  
  Serial.println(); 
  Serial.println("Status\tHumidity (%)\tTemperature (C)\t(F)");
  dht.begin();  
  //dht.setup(D1);          
  /* D1 is used for data communication */
}
void loop()
{  
  //delay(dht.getMinimumSamplingPeriod());   
  /* Delay of amount equal to sampling period */ 
  float humidity = dht.readHumidity();    
  /* Get humidity value */ 
  float temperature = dht.readTemperature(); 
  /* Get temperature value */  
  //Serial.print(dht.getStatusString()); 
  /* Print status communication */
  Serial.print("\t");  
  Serial.print(humidity, 1);  
  Serial.print("\t\t");  
  Serial.print(temperature, 1);  
  Serial.print("\t\t");  
  Serial.println(dht.convertCtoF(temperature), 1);
  delay(1000);  
  /* Convert temperature to Fahrenheit units */
}

Selanjutkannya kita verify dan upload ke NodeMCU, nanti akan diperoleh hasil

Kesimpulan
Pemanfaatan dari sensor suhu diatas bisa dipakai untuk berbagai macam aplikasi monitor suhu. Di DHT11 dapat kita manfaatkan untuk memantau ruangan data center yang nantinya pun bisa kirim datanya ke cloud, karena NodeMCU sudah dibekali dengan wifi.

Sumber

No comments:

Post a Comment