ESP32 Project#-Esp32 with SHT20 Humadity and Temperature Sensor

Sensor SHT20 (XY-MD02) adalah sensor suhu dan kelembapan digital yang dikembangkan oleh Sensirion, sebuah perusahaan yang mengkhususkan diri dalam teknologi sensor. Sensor ini dirancang untuk memberikan pengukuran akurat dan stabil terhadap suhu dan kelembapan di berbagai lingkungan aplikasi.

Alat dan bahan yang digunakan

Ads Jadwal Training bisaioti Offline
NoMateriTanggalWaktuHargaLokasiViewAction
1IOT PLC SCADA Siemens7-8 Juni 202508.00 - 16.002000000SurabayaSilabusDaftar Sekarang
2IOT PLC SCADA Omron14 - 15 Juni 202508.00 - 16.002000000SurabayaSilabusDaftar Sekarang
3IOT PLC SCADA Schneider21-22 Juni 202508.00 -16.002000000SurabayaSilabusDaftar Sekarang
4IOT PLC SCADA Allen Bradley28-29 Juni 202508.00-16.002000000SurabayaSilabusDaftar Sekarang
  • Sensor SHT20 ( XY-MD02)
  • Converter TTL to RS485
  • ESP32 Devkit V1
  • Power Supply
Wiring Diagram komponen

sht20 with esp32

Sensor SHT20:

Sensor SHT20 adalah sensor digital yang dikembangkan oleh Sensirion untuk mengukur suhu dan kelembapan dengan tingkat akurasi tinggi. Sensor ini dirancang dengan teknologi yang canggih untuk memberikan pengukuran yang stabil dan andal dalam berbagai kondisi lingkungan. Dengan antarmuka RS485, sensor SHT20 dapat diintegrasikan dengan sistem komunikasi yang memungkinkan transfer data yang handal dan jarak jauh. Sensor ini cocok untuk aplikasi di industri, otomasi bangunan, pertanian, dan pengawasan lingkungan.

Converter TTL to RS485:

Converter TTL to RS485 adalah perangkat yang mengonversi sinyal TTL (Transistor-Transistor Logic) menjadi sinyal RS485. Converter ini umumnya digunakan untuk menghubungkan perangkat-perangkat digital yang menggunakan TTL ke jaringan RS485 yang lebih luas dan robust. RS485 adalah standar komunikasi yang sering digunakan dalam sistem kontrol industri karena kemampuannya untuk mentransmisikan data secara reliabel pada jarak yang jauh dan dengan kecepatan yang tinggi.

ESP32 DevKit V1:

ESP32 DevKit V1 adalah papan pengembangan berbasis modul ESP32 yang kuat, yang dirancang untuk aplikasi IoT (Internet of Things). Modul ESP32 memiliki prosesor dual-core Xtensa 32-bit, WiFi dan Bluetooth Low Energy (BLE) terintegrasi, serta berbagai antarmuka I/O yang memungkinkan integrasi yang mudah dengan berbagai sensor dan perangkat lainnya. ESP32 DevKit V1 sering digunakan dalam proyek-proyek IoT untuk mengumpulkan data dari sensor, mengontrol perangkat, dan mentransmisikan data ke cloud atau server.

Install library di Arduino IDE

untuk komunikasi data antara sensor sht20 dan esp32 menggunakan modbus RTU, kemudian supaya komunikasi bisa terjadi maka butuh library DFROBOT_RTU.h yang harus kita install di arduino IDE

.

code program
#include “HardwareSerial.h”
#include “DFRobot_RTU.h”
#include <WiFi.h>
#define RXD2 16
#define TXD2 17
DFRobot_RTU Modbus_Master(/*s =*/&Serial2);
uint16_t Read_Holding_Reg_5;
uint16_t Read_Holding_Reg_4;
void setup() {
  Serial.begin(115200);
  Serial2.begin(9600, SERIAL_8N1, RXD2, TXD2);
 /*
  WiFi.begin(ssid, pass);
  Serial.println(“Connecting”);
  while(WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(“.”);
  }
  Serial.println(“”);
  Serial.print(“Connected to WiFi network with IP Address: “);
  Serial.println(WiFi.localIP());
  */
}
void loop() {
/*
if(WiFi.status() != WL_CONNECTED){
      Serial.print(“Attempting to connect”);
      while(WiFi.status() != WL_CONNECTED){
        WiFi.begin(ssid, pass);
        delay(5000);
      }
      Serial.println(“\nConnected.”);
    }*/
  //—————————————————————————————————————————————–
  //– Coil M0 dan PLC FX3U Mitsubishi
 /* int aa = random(1, 2);
  int bb = random(3,5);
  int cc = random(7,9);
  Modbus_Master.writeHoldingRegister(1, 0x01, aa);
  Modbus_Master.writeHoldingRegister(1, 0x02, bb);
  Modbus_Master.writeHoldingRegister(1, 0x03, cc);
  */
  Read_Holding_Reg_4 = Modbus_Master.readInputRegister(1, 1) ;//(1 = Slave ID:1 , 0 = Address : 0 (D0) what is the value)
 // float nil1 = Read_Holding_Reg_3 ;
  float nil2 = Read_Holding_Reg_4 ;
  float a = 10;
  float temperature = nil2 / a ;
  Serial.print(“Temperature = “); Serial.println(temperature);
  delay(500);
  Read_Holding_Reg_5 = Modbus_Master.readInputRegister(1, 2) ;//(1 = Slave ID:1 , 0 = Address : 0 (D0) what is the value)
  float b = 10;
  float nil3 = Read_Holding_Reg_5 ;
  float humidity = nil3 / a;
  Serial.print(“Humadity= “); Serial.println(humidity);
  delay(500);
 }

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Daftar Sekarang