By | 31/12/2020
ESP32 Sensor Arus INA219

Sensor INA219 merupakan sensor arus DC yang dapat membaca nilai arus DC sampai 3A, selain arus juga dapat membaca tegangan. Pada tutorial kali ini kita akan belajar ESP32 mengakses dan kalibrasi sensor ina219 dengan menggunakan beban door lock yang terhubung dengan relay.

Fungsi relay disini sebagai saklar elektronik yang dapat memutus atau menyambung aliran listrik dari sumber tegangan ke beban door lock atau solenoid.

Cara merangkaian sensor arus sama seperti mengukur arus menggunakan multimeter yaitu harus dibuat rangakain seri, jika pararel tidak akan bisa mengukur arus, kecuali jika ingin mengukur tegangan bisa langsung pararel tanpa harus memutus aliran listrik terlebih dahulu.

Mengukur arus memerlukan beban, baik mikrokontroler itu sendiri ataupun perangkat lain yang ingin di jadikan bebanya. jika tanpa beban arus tidak akan pernah bisa diukur. malah akan merusak komponen karena akan mengalami hubung singkat atau kelebihan beban.

hardware yang dibutuhkan

  1. Modul Wemos D1 Mini
  2. Modul Belajar ESP32
  3. Modul Sensor INA219
  4. Door Lock 12 Volt
  5. Adaptor atau baterai

Langkah Tutorial ESP32 Mengakses Sensor Arus DC INA219

Tutorial ESP32 Sensor Arus DC INA219 Beban Relay Door Lock
  1. Siapkan terlebih dahulu alat yang dibutuhkan
  2. Rangkai semua komponen seperti pada gambar diatas
  3. Jka menggunakan modul belajar ESP32 dari anakkendali.com makan akan jauh lebih mudah rangkaianya.
  4. Download library INA219 DISINI !
  5. Buat program berikut
  6. Buka serial monitor
  7. Amati hasil yang keluar jika diberikan perintah 1 atau 0

Program Arduino IDE ESP32 Mengakses Sensor INA219

#include <Wire.h>
#include <Adafruit_INA219.h>

Adafruit_INA219 ina219;

#define pinrelay 26

void setup(void)
{
  Serial.begin(9600);
  while (!Serial) {
    // will pause Zero, Leonardo, etc until serial console opens
    delay(1);
  }

  uint32_t currentFrequency;

  pinMode(pinrelay, OUTPUT);
  digitalWrite(pinrelay, 1);

  ina219.begin();

  Serial.println("Measuring voltage and current with INA219 ...");
}

void loop(void)
{
  //kirim 1 atau 0 dari serial monitor

  float current_mA = 0;
  float loadvoltage = 0;
  float power_mW = 0;

  if (Serial.available()) {
    int d =Serial.parseInt();
    if (d == 0) {
      digitalWrite(pinrelay, 0);
      Serial.println("Relay Nyala");
    } else if (d == 1) {
      digitalWrite(pinrelay, 1);
      Serial.println("Relay Mati");
    }
    delay(100);
    current_mA = ina219.getCurrent_mA();
    power_mW = ina219.getPower_mW();
    loadvoltage = ina219.getBusVoltage_V() + (ina219.getShuntVoltage_mV() / 1000);

    Serial.print("Load Voltage:  "); Serial.print(loadvoltage); Serial.println(" V");
    Serial.print("Current:       "); Serial.print(current_mA); Serial.println(" mA");
    Serial.print("Power:         "); Serial.print(power_mW); Serial.println(" mW");
    Serial.println("");
  }

}
Tutorial ESP32 Sensor Arus DC INA219 Beban Relay Door Lock

Saat kita memberikan nilai 1 dari serial monitor maka relay akan mati dan otomatis sensor akan membaca arus serta tegangan yang masuk ke beban atau door lock, karena mati tidak ada tegangan ataupun arus yang masuk, sehingga tampil teganganya 0V dan arusnya -2mA.

tanda minus disini error pembacaan dari sensor ina219, namun hal ini bukan lah masalah besar, karena nilai toleransi error nya tidak terlalu gede.

Dan saat kita memberikan niali 0 dari serial monitor, sensor suhu juga langsung membaca tegangan dan arus yang masuk ke beban. Pada gambar diatas saat relay nyala arus door lock kisaran 780mA dan teganganya 12 V.

Jelas saja karena saya menggunakan adaptor 12V 2A sebagai suply door lock, hal ini bisa dikatakan berhasil atau akurat ya, meskipun ada perbedaan hasil ukuran ketika saya mengukur dengan multimeter, namun lagi-lagi saya ingatkan errornya lumayan kecil.

Pertanyaanya, kenapa diadaptor 12V 2A, tapi arus yang terbaca tidak sampai 1A ?

karena arus itu berdasarkan kebutuhan beban yang mengkonsumsi, meskipun adaptor nya 12V 30A, jika bebanya cuma butuh 1A, maka arus yang terukur pada beban ya 1A. semoga bisa dipahami.

jika kalian ingin membatas nilai minus, dalam artian tidak ingin ada nilai dibawah 0, maka gunakan saja program pembatasan, sederhananya gunakan if conditional.

Keyword

  1. Sensor Arus DC ESP32,
  2. Mengakses dan Kalibrasi Sensor Arus DC,
  3. Kalibrasi Sensor Arus INA219,
  4. Cara Mengkalibrasi Sensor Arus ESP32,
  5. Mengakses Sensor Arus ESP32,
  6. ESP32 Mengakses Sensor Ina219,

Leave a Reply

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