Tak Berkategori

Kenalan dengan INA219: Sensor Kecil yang Jago Pantau Arus dan Tegangan!

“Pernah bikin proyek IoT tapi penasaran berapa sih sebenarnya konsumsi daya baterainya? Atau takut rangkaian Anda kelebihan arus (overcurrent)? Jangan ditebak-tebak! Di artikel kali ini, kita akan bedah INA219, sensor super ringkas yang bisa membaca tegangan, arus, hingga daya secara bersamaan dengan sangat akurat.”

Pengertian tentang Ina 219

Sensor INA219 adalah modul elektronik pintar yang berfungsi untuk mengukur arus listrik (Ampere), tegangan (Volt), dan sekaligus menghitung daya (Watt) pada suatu rangkaian arus searah (DC).

Sensor ini sangat populer di dunia elektronika dan IoT (Internet of Things) karena tingkat akurasinya yang tinggi dan ukurannya yang ringkas. Jika sensor biasa hanya bisa membaca satu fungsi (misalnya hanya tegangan), INA219 langsung memberikan tiga data sekaligus.

Bagaimana Cara Kerjanya?

Di dalam modul INA219, terdapat sebuah komponen kunci bernama Shunt Resistor (biasanya bernilai sangat kecil, sekitar 0.1 Ohm, ditandai dengan komponen kotak hitam bertuliskan “R100”).

1.Arus Melewati Resistor:Tahap Fisik.

Arus listrik dari sumber daya (misalnya baterai) mengalir melewati shunt resistor sebelum menuju ke beban (lampu, motor, atau sensor lain).

2.Terjadi Hambatan Kecil (Drop Voltage):Tahap Sensor.

Saat arus lewat, terjadi sedikit penurunan tegangan (drop voltage) di antara kedua ujung resistor tersebut. Penurunan ini sangat kecil sehingga tidak mengganggu kinerja rangkaian.

3.Konversi Data Digital:Tahap Internal.

Chip INA219 membaca drop voltage tersebut menggunakan ADC (Analog to Digital Converter) 12-bit internalnya, lalu menghitung berapa nilai arus yang lewat menggunakan Hukum Ohm ($I = \frac{V}{R}$).

4.Pengiriman via I2C:Tahap Komunikasi.

Data matang berupa nilai Volt, Ampere, dan Watt dikirimkan ke mikrokontroler (seperti Arduino atau ESP32) melalui jalur komunikasi I2C hanya dengan menggunakan 2 kabel data (SDA dan SCL).

1. Batasan Elektrik Utama (Operating Ratings)

Parameter ini menunjukkan batas aman sirkuit yang bisa dipantau oleh modul INA219 standar:

  • Tegangan Beban (Bus Voltage): 0V sampai +26V DC (Batas aman tegangan baterai/sumber daya yang diukur).
  • Arus Maksimal Standar: ±3.2 Ampere (Batas arus bawaan jika menggunakan resistor shunt 0.1 Ohm).
  • Tegangan Operasi VCC: 3.0V sampai 5.5V DC (Tegangan input untuk menyalakan chip sensor, bisa dari pin 3.3V atau 5V Arduino/ESP32).
  • Konsumsi Arus Chip: Hanya sekitar 1 mA (Sangat hemat daya, cocok untuk proyek bertenaga baterai).

2. Akurasi & Sensor Internal

Data ini sangat penting untuk pembaca blog yang ingin tahu seberapa presisi sensor ini:

  • Resolusi ADC: 12-bit internal. Artinya, sensor mampu membagi rentang pembacaan menjadi 4.096 tingkatan presisi.
  • Tegangan Shunt Maksimal: ±320 mV. Ini adalah batas penurunan tegangan maksimal yang boleh terjadi di resistor internalnya.
  • Tingkat Akurasi: Toleransi kesalahan (error) maksimal hanya sekitar 1%.
  • Offset Voltage: Maksimal 10 µV (mikroVolt). Menandakan gangguan internal yang sangat kecil saat membaca arus mendekati nol.

3. Komunikasi & Alamat (I2C Interface)

INA219 berkomunikasi secara digital menggunakan protokol I2C, sehingga hemat kabel:

  • Kecepatan Data: Mendukung mode standar (100 kHz), mode cepat (400 kHz), hingga mode kecepatan tinggi (3.4 MHz).
  • Alamat I2C Bawaan: 0x40 (Kondisi standar pabrik).
  • Modifikasi Alamat: Alamatnya bisa diubah-ubah hingga 16 alamat berbeda dengan cara menyolder pin jumper (A0 dan A1) di boardnya. Jadi, Anda bisa memasang sampai 16 sensor INA219 sekaligus dalam satu mikrokontroler.

4. Komponen Fisik pada Modul (Hardware On-Board)

  • Resistor Shunt: Di boardnya sudah tertanam resistor presisi berukuran besar dengan kode R100 (nilainya 0.1 Ohm, berkekuatan 2 Watt).
  • Bisa Di-upgrade: Jika pembaca blog Anda ingin mengukur arus yang lebih besar (misal sampai 30 Ampere), mereka tinggal mengganti resistor fisik ini dengan nilai yang lebih kecil (misal 0.01 Ohm) dan menyesuaikan kodenya di Arduino.

Kenapa Harus Pakai INA219? Ini 5 Keunggulannya!

1. Fitur 3-in-1 (Ukur Volt, Ampere, dan Watt Sekaligus)

Kebanyakan sensor di pasaran hanya bisa membaca satu fungsi (misalnya sensor tegangan saja, atau sensor arus saja). INA219 ini sangat praktis karena dalam satu modul kecil, Anda langsung mendapatkan tiga data sekaligus: Tegangan (Volt), Arus (Ampere), dan Daya (Watt). Rangkaian jadi lebih ringkas dan hemat tempat.

2. Komunikasi I2C yang Sangat Hemat Pin

Sensor ini berkomunikasi menggunakan protokol I2C. Artinya, Anda hanya membutuhkan 2 kabel data saja (SDA dan SCL) untuk dihubungkan ke Arduino atau ESP32. Fitur ini sangat menguntungkan jika Anda sedang membuat proyek besar yang menggunakan banyak sensor lain, karena pin mikrokontroler tidak akan habis terkuras.

3. Akurasi Jauh Lebih Tinggi dibanding Sensor Analog

Jika dibandingkan dengan sensor arus analog populer seperti ACS712, INA219 punya akurasi yang jauh lebih superior. ACS712 bekerja menggunakan sensor magnet (Hall Effect) yang gampang terganggu oleh magnet sekitar dan hasilnya sering “melompat-lompat” (noisy).

Sementara INA219 memiliki chip ADC (Analog to Digital Converter) 12-bit internal. Data yang dikirim ke Arduino sudah berbentuk data digital yang stabil, presisi, dan minim gangguan.

4. Bisa Dipasang Banyak Sekaligus (Up to 16 Sensor)

Di papan modul INA219, terdapat pin jumper alamat (A0 dan A1). Dengan mengubah kombinasi solderan di pin tersebut, Anda bisa mengubah alamat sirkuitnya hingga 16 kombinasi berbeda. Jadi, dalam satu Arduino, Anda bisa memantau 16 jalur baterai atau sirkuit yang berbeda secara bersamaan!

5. Pengukuran High-Side yang Aman

INA219 mendukung pengukuran High-Side. Artinya, sensor dipasang di jalur positif sirkuit (antara kutub positif baterai dan beban). Kelebihannya, jika terjadi korsleting (short circuit) pada beban, sirkuit mikrokontroler Anda tetap aman dan sensor bisa mendeteksinya tanpa merusak mendiang ground sirkuit.

Tabel Lengkap Wiring (Arduino Uno + INA219 + LCD I2C + Beban LED)

Komponen Asal & PinMenuju ke Komponen & PinFungsi / Keterangan
Arduino Uno – 5VINA219 – Vcc
LCD I2C – VCC
Jalur tegangan positif untuk menyalakan sensor dan layar LCD (Paralel)
Arduino Uno – GNDINA219 – Gnd
LCD I2C – GND
Jalur Ground utama untuk sistem data sensor dan LCD (Paralel)
Arduino Uno – A4INA219 – Sda
LCD I2C – SDA
Jalur data komunikasi I2C (Paralel)
Arduino Uno – A5INA219 – Scl
LCD I2C – SCL
Jalur clock komunikasi I2C (Paralel)
Arduino Uno – Pin 13INA219 – Vin+ (Terminal)Output setrum dari Arduino dimasukkan ke input pengukuran sensor
INA219 – Vin- (Terminal)Resistor 200 $\Omega$ – Kaki 1Arus yang sudah diukur keluar dari sensor menuju resistor pembatas
Resistor 200 $\Omega$ – Kaki 2LED – Kaki Panjang (Anoda)Aliran arus aman masuk ke kutub positif lampu LED
LED – Kaki Pendek (Katoda)Arduino Uno – GNDJalur akhir beban kembali ke Ground Arduino untuk menutup sirkuit
#include <Wire.h>
#include <Adafruit_INA219.h>
#include <LiquidCrystal_I2C.h>

Adafruit_INA219 ina219;
// Set alamat I2C LCD ke 0x27 dengan ukuran 16 kolom x 2 baris
LiquidCrystal_I2C lcd(0x27, 16, 2); 

void setup(void) {
  // Inisialisasi LCD
  lcd.init();
  lcd.backlight();
  
  lcd.setCursor(0, 0);
  lcd.print("Menginisialisasi");
  lcd.setCursor(0, 1);
  lcd.print("INA219 Sensor...");
  delay(2000);

  // Inisialisasi INA219
  if (!ina219.begin()) {
    lcd.clear();
    lcd.setCursor(0, 0);
    lcd.print("Sensor Gagal!");
    lcd.setCursor(0, 1);
    lcd.print("Cek Kabel I2C");
    while (1) { delay(10); }
  }

  lcd.clear();
}

void loop(void) {
  float tegangan_V = 0;
  float arus_mA = 0;

  // Mengambil data dari sensor
  tegangan_V = ina219.getBusVoltage_V();
  arus_mA = ina219.getCurrent_mA();

  // Menampilkan data Tegangan di Baris 1 LCD
  lcd.setCursor(0, 0);
  lcd.print("Volt : ");
  lcd.print(tegangan_V, 2); // 2 angka di belakang koma
  lcd.print(" V  ");       // Spasi tambahan untuk menghapus sisa karakter lama

  // Menampilkan data Arus di Baris 2 LCD
  lcd.setCursor(0, 1);
  lcd.print("Arus : ");
  lcd.print(arus_mA, 1);   // 1 angka di belakang koma
  lcd.print(" mA ");

  delay(1000); // Update layar setiap 1 detik
}

“Nah, itu dia panduan lengkap merakit sistem monitoring arus dan tegangan menggunakan sensor INA219 dan LCD I2C. Lewat proyek sederhana dengan beban LED ini, kita jadi tahu kalau protokol I2C itu beneran praktis karena nggak bikin pin Arduino kita habis terkuras.

Sekarang giliran Anda: kira-kira proyek IoT atau sistem monitoring apa yang mau Anda bangun pakai sensor INA219 ini? Kalau Anda punya kendala atau error saat mencoba code di atas, langsung saja tulis di kolom komentar di bawah, ya! Jangan lupa bagikan artikel ini ke grup atau teman-teman maker Anda. Sampai jumpa di tutorial berikutnya!”

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *