Menggunakan Sensor Berat Loadcell dengan Arduino Uno

Loadcell adalah sensor yang digunakan untuk mengukur berat atau tekanan. Sensor ini banyak digunakan dalam berbagai aplikasi seperti timbangan digital dan pengukuran berat pada sistem industri. Prinsip kerja Loadcell berdasarkan pada perubahan resistansi yang terjadi akibat tekanan atau beban yang diberikan pada sensor.

Komponen yang Dibutuhkan

  1. Arduino Uno
  2. HX711: Modul penguat sinyal untuk Loadcell yang digunakan untuk membaca sinyal analog dari sensor Loadcell dan mengubahnya menjadi sinyal digital yang bisa dibaca oleh mikrokontroler.
  3. Loadcell: Sensor berat yang akan dihubungkan ke HX711.

Koneksi Hardware

  • LOADCELL_DOUT_PIN (DT): Pin data yang mengirimkan sinyal dari Loadcell ke HX711.
  • LOADCELL_SCK_PIN (SCK): Pin clock yang digunakan untuk menyinkronkan data antara HX711 dan mikrokontroler.
  • HX711: Modul ini memiliki dua pin utama, yaitu DT (data) dan SCK (clock), yang harus dihubungkan ke pin ESP32.

Kode Program

Berikut adalah contoh kode untuk membaca nilai berat menggunakan sensor Loadcell dengan Arduino.

#include "HX711.h"

// Pin connection
const int LOADCELL_DOUT_PIN = A0; // DT pin on HX711
const int LOADCELL_SCK_PIN = A1;  // SCK pin on HX711

HX711 scale;

void setup() {
  Serial.begin(9600);
  
  // Initialize HX711
  scale.begin(LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN);
  
  Serial.println("Loadcell Initialization...");
  delay(1000);
  
  // Set calibration factor (adjust this value according to your Loadcell)
  scale.set_scale(2280.f); // Calibration value, change accordingly
  scale.tare(); // Reset scale to 0
  Serial.println("Calibration done.");
}

void loop() {
  // Read the weight value from Loadcell
  float weight = scale.get_units(10); // Read average of 10 samples
  Serial.print("Weight: ");
  Serial.print(weight);
  Serial.println(" kg");
  
  delay(1000); // 1 second delay between readings
}

Penjelasan Kode

  1. Inisialisasi HX711:
    • Pin data (DT) dan clock (SCK) dari HX711 dihubungkan ke pin Arduino yang sesuai (dalam contoh ini adalah pin A0 dan A1).
    • Pada setup(), kita menginisialisasi HX711 dan memastikan bahwa serial monitor dimulai dengan baud rate 9600.
  2. Kalibrasi dan Tare:
    • Kalibrasi dilakukan dengan set_scale(), yang menggunakan faktor kalibrasi (nilai 2280.f dalam contoh ini bisa disesuaikan dengan Loadcell yang digunakan).
    • Fungsi tare() digunakan untuk menyetel skala ke 0 sebelum pengukuran.
  3. Pembacaan Berat:
    • Fungsi get_units(10) digunakan untuk mendapatkan pembacaan rata-rata dari 10 pembacaan. Nilai berat yang diperoleh kemudian dicetak di serial monitor.

Proses Kalibrasi

Setiap Loadcell memiliki karakteristik yang berbeda, sehingga Anda perlu mengkalibrasi sistem Anda agar pembacaan berat yang diperoleh akurat. Kalibrasi dilakukan dengan mengubah faktor skala menggunakan metode eksperimen, yaitu menggunakan benda dengan berat yang diketahui dan menyesuaikan nilai hingga pembacaan dari Loadcell sesuai dengan nilai berat yang diketahui.

Output

Program ini akan menampilkan hasil pembacaan berat di serial monitor setiap detik. Berikut adalah contoh output yang akan ditampilkan:

Loadcell Initialization...
Calibration done.
Weight: 5.62 kg
Weight: 5.63 kg
Weight: 5.64 kg

Penyempurnaan

  • Penggunaan LCD: Hasil pembacaan berat dapat ditampilkan pada layar LCD untuk aplikasi yang lebih praktis.

Kesimpulan

Menggunakan Arduino dengan sensor Loadcell memungkinkan Anda untuk membuat sistem timbangan digital dengan pengukuran yang akurat dan hasil yang dapat diakses secara real-time. Dengan memanfaatkan HX711 sebagai penguat sinyal, kita dapat membaca berat dengan presisi yang tinggi dan mengintegrasikan sistem ini ke dalam berbagai aplikasi.

Kalau ingin menghubungi lebih lanjut bisa hubungi nomor dibawah:

By Ilham

Mau Konsultasi & Diskusi ?