• Arduino
    • Sensor
    • program Arduino
  • Project
  • Produk
  • IOT
Kamis, Oktober 2, 2025
mikroavr.com
No Result
View All Result
  • Login
  • Arduino
    • Sensor
    • program Arduino
  • Project
  • Produk
  • IOT
  • Arduino
    • Sensor
    • program Arduino
  • Project
  • Produk
  • IOT
No Result
View All Result
mikroavr
No Result
View All Result
Home Arduino

Monitoring Suhu dan Kelembaban dengan Arduino Menggunakan GSM SIM800v2 dan Blynk

Jimmi Sitepu by Jimmi Sitepu
April 24, 2019
0 0
2
Monitoring Suhu dan Kelembaban dengan Arduino Menggunakan GSM SIM800v2 dan Blynk

monitoring sensor DHT21

85
SHARES
2.5k
VIEWS
Share on FacebookShare on Twitter

Monitoring

Monitoring suhu dan kelembaban adalah kata yang populer dalam sistem kontrol, apalagi monitoring berbasis web atau smartphone. Sesuatu yang bisa dilihat, di tracking atau di pantau sambil minum kopi kesukaan dan beberapa cake di tangan.

Tentu saja monitoring ini akan memudahkan kita, tidak perlu berada ditempat yang mau di ukur, apalagi misalnya device yang mau di monitoring berada di tempat extrime, berbahaya, tentu meninjau langsung membutuhkan effort yang jauh lebih besar. yah mungkin itu kenapa akhir-akhir di gaungkan industri 4.0, salah satu nya adalah monitoring.

READ ALSO

4G GSM Modul Arduino SIM7600 Cocok Untuk ESP32, STM32 atau Arduino Mega

Tutorial Menggunakan Weather Station DFRobot SEN0186 dengan Arduino ESP32

Blynk

Blynk adalah sebuah layanan aplikasi yang universal yang bisa di custome sendiri atau di rubah-rubah untuk di gunakan sebagai monitoring atau kendali berbasis internet. Jadi untuk sistem sederhana bisa menggunakan aplikasi ini, dengan sedikit pengaturang di Arduino nya dan di aplikasi blynk nya, kita bisa memonitoring suhu dan kelembaban berbasis internet di smartphone kita. lengkap nya bisa rujuk ke website official ya langsung

https://www.blynk.cc/

Persiapan Monitoring

Install Blynk

Sebelum kita monitoring Suhu dan kelembaban dari sensor DHT21 maka silahkan download dulu aplikasi blynk nya, cukup search blynk di playstore dan install. Setelah registrasi, kemudian login ke blynk nya.

setelah berhasil di register dan login, langkah selanjut nya adalah membuat form aplikasi di blynk nya, apakah yang akan kita tampilkan? untuk lebih jelas nya cara pembuatan form di aplikasi ini, bisa langsung lihat video di singkat bawah ini.

Install Library

Setelah kita buat form aplikasi monitoring di aplikasi blynk nya langkah selanjut nya adalah install atau ada library arduino pendukung nya, silahkan download 3 link library berikut ini.

  1. Library TinyGSM
  2. Library sensor kelembaban dan Suhu DHT.h
  3. Library adafruit sensor
  4. Autoscan I2C LCD arduino

Pastikan semua Library di atas sudah di add di Arduino teman-teman, jika tidak akan banyak program yang error ketika di compile.

Ganti Bautrate SIM800

Karena kita akan menggunakan SIM800v2 sebagai akses internet nya, maka untuk koneksi yang lebih stabil di anjurkan ganti bautrate ke 38400. Sementara bautrate default SIM800v2 adalah mode Auto. Bagaimana kah cara merubah nya?

SoftwareSerial problems


When using SoftwareSerial (on Uno, Nano, etc), the speed 115200 may not work.
Try selecting 57600, 38400, or even lower – the one that works best for you.
In some cases 9600 is unstable, but using 38400 helps, etc.
Be sure to set correct TX/RX pins in the sketch. Please note that not every Arduino pin can serve as TX or RX pin.

Sebelum kita ganti baut rate dengan printah at-command, silahkan hubungkan sim800v2 dan usb to ttl seperti pada gambar di bawah ini,

ganti bautrate sim800

Pastikan hal berikut jika ingin ganti bautrate nya sim800v2

  1. Hubungkan TXD usb to TTL ke RXD sim800v2
  2. Hubungkan RXD usb to TTL ke TXD sim800v2
  3. Hubungkan GND usb to TTL ke GND sim800v2
  4. Hubungkan vcc/+5v ke sumber tegangan +5v/2A, gunakan sumber tegangan external dengan tegangan +5V dan besar Arus minimal 2A, bisa gunakan modul LM2596 atau buat power supply sendiri dengan menggunakan regulator LM2596 +5v atau LM2576 +5v

Setelah di atas sudah terpenuhi, connectkan usb to ttl ke laptop, bukan Arduino IDE, cocokan di com berapa kemudian buka serial monitor ganti bautrate ke 9600. langkah selanjut nya seperti berikut

AT <enter>

akan muncul respon OK jika berhasil

AT+IPR = 38400 <enter>

akan muncul respon OK dan bautrate telah berhasil di ganti, sekarang coba ganti bautrate ke 38400 di serial monitor nya, kemudian kita check dengan perintah berikut.

AT+IPR? <enter>

akan muncul respon. Untuk lebih mudah nya, teman-teman bisa download ebook nya dengan klik tombol di bawah ini

Downloa Ebook sim800

Uji Sensor DHT21

Langkah selanjut nya untuk project monitoring suhu dan kelembaban ini adalah uji sensor DHT21, sensor ini adalah sensor yang mampu membaca kelembaban dan suhu di ruangan sekitar. Bagaiamanakah cara menguji sensor ini? Sebelum menguji nya, coba perhatikan rangkaian sederhana di gambar di bawah ini.

wiring dht21 arduino

Pastikan wiring sensor DHT21, LCD i2C sudah tepat seperti gambar, ada resistor 10k sebagai pull up di pin data sensor kelembaban dan suhu nya. setelah itu kita coba masukkan program berikut ini.

#include <Wire.h> 
#include <LiquidCrystal_I2C.h>
#include "DHT.h"

#define DHTPIN 15     // what digital pin we're connected to

// Uncomment whatever type you're using!
//#define DHTTYPE DHT11   // DHT 11
//#define DHTTYPE DHT22   // DHT 22  (AM2302), AM2321
#define DHTTYPE DHT21   // DHT 21 (AM2301)

DHT dht(DHTPIN, DHTTYPE);
LiquidCrystal_I2C lcd(16, 2);

float h,t,f;
float hic, hif;

void setup() {
  Serial.begin(9600);
  Serial.println("DHTxx test!");
  lcd.autoAddress();
  lcd.begin();
  dht.begin();
}

void loop() {
  lcd.setCursor(0,0);
  lcd.print("Humidity & Themp");
  lcd.setCursor(0,1);
  lcd.print("H:");
  lcd.print(h,1);
  lcd.print("% ");
  lcd.print("T:");
  lcd.print(t,1);
  lcd.print("C");
  baca_sensor();
}

void baca_sensor(){
  
  // Wait a few seconds between measurements.
  delay(2000);
  // Reading temperature or humidity takes about 250 milliseconds!
  // Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor)
  h = dht.readHumidity();
  // Read temperature as Celsius (the default)
  t = dht.readTemperature();
  // Read temperature as Fahrenheit (isFahrenheit = true)
  f = dht.readTemperature(true);

  // Check if any reads failed and exit early (to try again).
  if (isnan(h) || isnan(t) || isnan(f)) {
    Serial.println("Failed to read from DHT sensor!");
    return;
  }

  // Compute heat index in Fahrenheit (the default)
  hif = dht.computeHeatIndex(f, h);
  // Compute heat index in Celsius (isFahreheit = false)
  hic = dht.computeHeatIndex(t, h, false);

  Serial.print("Humidity: ");
  Serial.print(h);
  Serial.print(" %\t");
  Serial.print("Temperature: ");
  Serial.print(t);
  Serial.print(" *C ");
  Serial.println("");
  lcd.clear();
}

Final Program

Final program, sebenarnya banyak step lagi yang harus di uji sebelum memaparkan program ini, mulai dari uji sim800v2 nya apakah sudah bekerja atau tidak, uji blynk apakah sudah bisa nampil atau tidak di aplikasi android kita nya,

Baca Pelan-pelan kemudian praktekan

Perbedaan tahu dengan mengerti adalah di praktek, aplikasi

Untuk mempersingkat nya, berikut program final nya,

#include "DHT.h"
#include <Wire.h> 
#include <LiquidCrystal_I2C.h>
#include <SoftwareSerial.h>

#define BLYNK_PRINT Serial
// Select your modem:
#define TINY_GSM_MODEM_SIM800
//#define TINY_GSM_MODEM_SIM900
//#define TINY_GSM_MODEM_M590
//#define TINY_GSM_MODEM_A6

// Default heartbeat interval for GSM is 60
// If you want override this value, uncomment and set this option:
//#define BLYNK_HEARTBEAT 30

#include <TinyGsmClient.h>
#include <BlynkSimpleSIM800.h>

// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "YourAuthBlynk";

// Your GPRS credentials
// Leave empty, if missing user or pass
char apn[]  = "Internet";
char user[] = "";
char pass[] = "";

// Hardware Serial on Mega, Leonardo, Micro
//#define SerialAT Serial1

// or Software Serial on Uno, Nano

SoftwareSerial SerialAT(4, 3); // RX, TX
TinyGsm modem(SerialAT);
BlynkTimer timer; 
LiquidCrystal_I2C lcd(20, 4);
String line1, line2, line3, line4;
#define DHTPIN 15     
#define DHTTYPE DHT21   // DHT 21 (AM2301)

DHT dht(DHTPIN, DHTTYPE);
float ThempC, ThempF, Hum;

void setup()
{
  // Debug console
  Serial.begin(9600);
  lcd.autoAddress();
  lcd.begin();
  
  delay(10);

  // Set GSM module baud rate
  SerialAT.begin(38400);
  delay(3000);

  // Restart takes quite some time
  // To skip it, call init() instead of restart()
  line1 = "init modem";
  update_lcd();
  Serial.println("Initializing modem...");
  modem.restart();
  line2 = "ok";
  update_lcd();
  delay(2000);
  lcd.clear(); line1 = ""; line2 = "";
   
  Blynk.begin(auth, modem, apn, user, pass);
  timer.setInterval(1500L, readDHT); 
}

void loop()
{
  Blynk.run();
  timer.run();
}

void update_lcd(){
  lcd.setCursor(0,0);
  lcd.print(line1);
  lcd.setCursor(0,1);
  lcd.print(line2);
  lcd.setCursor(0,2);
  lcd.print(line3);
  lcd.setCursor(0,3);
  lcd.print(line4);
}

void readDHT(){
  //delay(1500);
  Hum = dht.readHumidity();
  ThempC = dht.readTemperature();
  ThempF = dht.readTemperature(true);
  if (isnan(Hum) || isnan(ThempF) || isnan(ThempC)) {
    lcd.setCursor(0,0);
    lcd.print("DHT Fail");
    return;
  }
  line1 = F("blynk sensor DHT21");
  line2 = String("HUM  : ") + Hum;
  line3 = String("Themp: ") + ThempC;
  Blynk.virtualWrite(V0, Hum);
  Blynk.virtualWrite(V1, ThempC);
  
  update_lcd();
}

hal yang penting dari program di atas adalah dua line program berikut?

 Blynk.virtualWrite(V0, Hum); Blynk.virtualWrite(V1, ThempC); 

V0 dan V1 adalah alamat display yang dituju pada aplikasi blynk nya. V0 dan V1 di sebut juga sebagai virtual pin.

nah sekian dulu tulisan kita yah, semoga bermanfaat. Jangan lupa share jika tulisan ini bisa membantu orang banyak

Thanks

Tags: dht21SIM800L
Share85Tweet
Previous Post

Frekuensi Meter PLN Untuk Pembangkit dengan Akurasi

Next Post

4 Langkah Burn Bootloader Arduino MEGA 2560 dengan USBasp, Cepat dan Mudah

Jimmi Sitepu

Jimmi Sitepu

Hobbyist Embedded System, Robotic, IOT and write all about them. So we have nice quote "Learning and Sharing"

Related Posts

4G GSM Modul Arduino SIM7600 Cocok Untuk ESP32, STM32 atau Arduino Mega
Arduino

4G GSM Modul Arduino SIM7600 Cocok Untuk ESP32, STM32 atau Arduino Mega

Juni 13, 2022
Tutorial Menggunakan Weather Station DFRobot SEN0186 dengan Arduino ESP32
Arduino

Tutorial Menggunakan Weather Station DFRobot SEN0186 dengan Arduino ESP32

Maret 9, 2022
ethernet arduino
Arduino

Arduino Ethernet Tutorial, Project dengan Arduino Uno dan Mega

Februari 24, 2022
solder i2c arduino lcd
Arduino

Tutorial Program Arduino Lcd i2c dan Library nya

Februari 24, 2022
tft lcd arduino shield
Arduino

Tutorial Mudah TFT lcd Arduino untuk Membuat Jam Digital

Februari 24, 2022
jangka sorong arduino
Arduino

Sensor Pengukur Jarak dengan Jangka Sorong Digital Presisi 0.01mm

Februari 24, 2022
Next Post
4 Langkah Burn Bootloader Arduino MEGA 2560 dengan USBasp, Cepat dan Mudah

4 Langkah Burn Bootloader Arduino MEGA 2560 dengan USBasp, Cepat dan Mudah

Download Aja Library Eagle Ethernet Mini W5500 ini, Free

Download Aja Library Eagle Ethernet Mini W5500 ini, Free

Please login to join discussion

Tulisan Terbaru

sensor URM14 Arduino

Membaca Sensor URM14 RS485 dengan ESP32 Arduino

Juli 7, 2022
4G GSM Modul Arduino SIM7600 Cocok Untuk ESP32, STM32 atau Arduino Mega

4G GSM Modul Arduino SIM7600 Cocok Untuk ESP32, STM32 atau Arduino Mega

Juni 13, 2022
Mendapatkan Waktu Akurat dengan NTP GPS

Mendapatkan Waktu Akurat dengan NTP GPS

Mei 8, 2022
Custome GPS Logger Arduino dengan Akeses Internet SIM7600 4G

Custome GPS Logger Arduino dengan Akeses Internet SIM7600 4G

April 14, 2022
Tutorial Menggunakan Weather Station DFRobot SEN0186 dengan Arduino ESP32

Tutorial Menggunakan Weather Station DFRobot SEN0186 dengan Arduino ESP32

Maret 9, 2022
ethernet arduino

Arduino Ethernet Tutorial, Project dengan Arduino Uno dan Mega

Februari 24, 2022

Browse by Category

  • Arduino
  • Ebook
  • ESP32
  • IOT
  • jasa
  • Komponen
  • PCB
  • Produk
  • program Arduino
  • Project
  • Rangkaian
  • Sensor
  • Tips
  • Uncategorized

Recent News

sensor URM14 Arduino

Membaca Sensor URM14 RS485 dengan ESP32 Arduino

Juli 7, 2022
4G GSM Modul Arduino SIM7600 Cocok Untuk ESP32, STM32 atau Arduino Mega

4G GSM Modul Arduino SIM7600 Cocok Untuk ESP32, STM32 atau Arduino Mega

Juni 13, 2022
  • About US
  • Blog
  • MIKROAVR

© 2020 mikroavr.com - Learning and sharing.

Welcome Back!

Sign In with Google
OR

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In

Add New Playlist

No Result
View All Result
  • About US
  • Blog
  • MIKROAVR

© 2020 mikroavr.com - Learning and sharing.