Lompat ke konten Lompat ke sidebar Lompat ke footer

Cara Akses Sensor INA219 Arduino Modul Sensor Arus Tegangan Daya

Sensor INA219 Arduino

Cara Akses Sensor INA219 Arduino Modul Sensor Arus Tegangan Daya  - Modul Sensor INA219 adalah sebuah sensor yang ber fungsi untuk mengukur arus, tegangan dan daya. Cara kerja sensor ina219 adalah dengan membaca tegangan shunt, tegangan bus dan tegangan load. 

Cara Akses Sensor INA219 Arduino Modul Sensor Arus Tegangan Daya
INA219 Sensor Board

Spesifikasi sensor INA219

Sensor INA219 ini memiliki ADC internal 12-bit. Ini akan cukup membuat pembacaan arus yang presisi. Dengan nilai ADC 12-bit, sensor arus ini dapat mengukur arus maksimal ±3.2A dengan range resolusi 0.8mA. Adapun tegangan maksimal yang dapat di baca adalah hingga ±26VDC meskipun modul ini hanya menggunakan tegangan sumber VCC 3 atau 5V. 

Untuk komunikasi dengan mikrokontroller, sensor ini  menggunakan komunikasi I2C yang dapat dihubungkan dengan Arduino. Dengan ini kita hanya menggunakan 2 pin saja yaitu, SDA pada pin A4 dan SCL pada pin A5.

Sebuah resistor shunt dengan nilai 0.1 Ohm 1% 2W digunakan dalam papan modul ini. INA219 sensor modul memiliki dua pin input IN+ dan IN- yang terhubung ke resistor shunt. Untuk dapat menggunakan modul ini, kita membutuhkan sebuah library yang akan mempermudah pemrograman Arduino.

 

INA219 Skematik

Untuk rangkaian antara Arduino Uno dan INA219 adalah sangat sederhana, anda hanya menghubungkan:

  • VCC ke 5V atau 3V.
  • SCA ke pin A4
  • SCL ke pin A5
  • serta GND ke GND.

Perhatikan gambar berikut, dalam contoh beban disini adalah mengukur arus yang mengalir ke motor DC, anda dapat menggantikan beban ini kedalam perangkat yang lain seperti LED, Lampu, Perangkat Elektronik lain dan sebagainya:

Cara Akses Sensor INA219 Arduino Modul Sensor Arus Tegangan Daya
INA219 Skematik

 

INA219 Arduino Library Download

Library INA2019 Sensor telah tersedia di library manager Arduino IDE. Silahkan tambahkan ke Arduino IDE anda dengan cara klik menu Sketch > Include Library > Manage Libary.

Kemudian silahkan cari Adafruit INA219, dan klik install.

Sedikit merujuk ke library ini, secara dasarnya alamat I2C yang ditetapkan didalam library adalah 0x40. Ini dalam arti jumper A0 dan A1 dalam kondisi terbuka.

Jika jumper A0 terhubung dan A1 terbuka, gunakan alamat 0x41. Jika jumper A0 terbuka dan A0 terhubung, gunakan alamat 0x44. Jika kumper A0 dan A1 terhubung, gunakan alamat 0x45.

Library ini, selain untuk mengukur arus pada resistor shunt, dapat juga untuk membaca tegangan shunt, tegangan load dan tegangan bus. Perbedaan tegangan ini dapat anda lihat pada gambar berikut:

Cara Akses Sensor INA219 Arduino Modul Sensor Arus Tegangan Daya

 


Program Arduino INA219

Setelah program dirangkai dengan beban (terserah anda, bisa lamu, LED, motor dan sebagainya), sedikit saya memberikan gambaran dalam artikel ini saya menggunakan alamat I2C dari modul sensor adalah 0x41. Pada fisik modul saya menghubungkan jumper A0.

Teman-teman boleh menghubungkan jumper-jumper tersebut, boleh juga tidak karena semua kondisi memiliki alamat tersendiri. Alamat tersebut tinggal di tentukan saja dari program.

  • Jika jumper A0 dan A1 terbuka, maka gunakan alamat 0x40
  • Jika jumper A0 terhubung dan A1 terbuka, gunakan alamat 0x41
  • Jika jumper A0 terbuka dan A0 terhubung, gunakan alamat 0x44
  • Jika kumper A0 dan A1 terhubung, gunakan alamat 0x45

Berikut adalah kode yang saya sediakan dansilahkan upload ke arduino program berikut sebagai berikut.

//by Arduino32

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

// Adafruit_INA219 ina219; // Alamat default adalah 0x40, jumper A0 dan A1 terbuka
Adafruit_INA219 ina219 (0x41); // jika jumper A0 dihubungkan
// Adafruit_INA219 ina219 (0x44); // jika jumper A1 dihubungkan
// Adafruit_INA219 ina219 (0x45); // jika jumper A0 and A1 dihubungkan


void setup(void)
{
Serial.begin(9600);

if (! ina219.begin()) {
Serial.println("Gagal mendapatkan modul INA219");
while (1) {
delay(10);
}
}

// Secara default, kalibrasi ada pada (32V, 2A).

// Jika ingin lebih presisi pembacaan arus, Gunakan setingan 32V, 1A
// ina219.setCalibration_32V_1A();

// Jika ingin lebih presisi lagi, Gunakan setingan 16V, 400mA
// ina219.setCalibration_16V_400mA();

}

void loop(void)
{
float tegangan_shunt = 0;
float tegangan_bus = 0;
float arus = 0;
float tegangan_load = 0;
float daya = 0;

tegangan_shunt = ina219.getShuntVoltage_mV();
tegangan_bus = ina219.getBusVoltage_V();
arus = ina219.getCurrent_mA();
daya = tegangan_bus * arus;
tegangan_load = tegangan_bus + (tegangan_shunt / 1000);

Serial.print("BUS: ");
Serial.print(tegangan_bus);
Serial.print(" V ");

Serial.print("SHUNT: ");
Serial.print(tegangan_shunt);
Serial.print(" mV ");

Serial.print("LOAD: ");
Serial.print(tegangan_load);
Serial.print(" V ");

Serial.print("ARUS: ");
Serial.print(arus);
Serial.print(" mA ");

Serial.print("DAYA: ");
Serial.print(daya);
Serial.print(" mW");
Serial.print(" atau ");
Serial.print(daya / 1000);
Serial.println(" W");

delay(100);
}

 Setelah program selesai di upload, silahkan buka serial monitor. Maka anda akan mendapatkan hasil pembacaan sebagai berikut:


Cara Akses Sensor Arus INA219 Modul Menggunakan Arduino

INA219 Datasheet Download


Demikian tutorial dasar sensor arus INA219, silahkan dimodifikasi programnya dan semoga bermanfaat.

Tags:

Posting Komentar untuk "Cara Akses Sensor INA219 Arduino Modul Sensor Arus Tegangan Daya"