home Home wifi_tethering IoT precision_manufacturing Robotic flight Drone
Materi 4

Sensor Reading & Calibration

Menguasai teknik membaca data Analog (ADC) dan Digital, serta cara melakukan kalibrasi agar sensor memberikan data yang akurat.

sensors

Analog vs Digital Reading

Dalam dunia IoT, sensor berkomunikasi dengan mikrokontroler melalui dua cara utama:

Digital (0 atau 1)

Hanya memiliki dua kondisi: Ada tegangan atau tidak ada. Contoh: Sensor gerak (PIR), Sensor sentuh.

Analog (Range)

Memiliki nilai bertahap (0-1023 pada Uno, 0-4095 pada ESP32). Contoh: Potensiometer, LDR (cahaya), Sensor Kelembaban Tanah.

straighten Mengapa Kalibrasi Penting?

Sensor seringkali memiliki "noise" atau rentang nilai yang berbeda-beda tergantung kondisi lingkungan. Kalibrasi adalah proses memetakan nilai mentah (*raw value*) sensor ke unit yang manusia mengerti (seperti persen atau Celcius).

Teknik Kalibrasi Utama: map() function

Fungsi map(value, fromLow, fromHigh, toLow, toHigh) adalah senjata utama kita.

int persen = map(raw, 0, 4095, 0, 100);

Langkah-langkah Kalibrasi Lapangan:

  • 1 Cari nilai Minimum saat sensor dalam kondisi paling ekstrim (misal: sensor tanah di dalam air).
  • 2 Cari nilai Maksimum saat sensor dalam kondisi kering total.
  • 3 Gunakan nilai tersebut sebagai batasan dalam fungsi map().

Skrip Kalibrasi Sensor Tanah

language: C++
// Materi 4: Membaca Sensor Analog & Kalibrasi
const int pinSensor = 34; // GPIO34 pada ESP32

// Nilai kalibrasi hasil percobaan (berbeda tiap sensor)
const int NILAI_KERING = 3200; 
const int NILAI_BASAH = 1200;

void setup() {
  Serial.begin(115200);
}

void loop() {
  int rawValue = analogRead(pinSensor);
  
  // Mengonversi raw ke persentase (0-100%)
  int kelembaban = map(rawValue, NILAI_KERING, NILAI_BASAH, 0, 100);
  
  // Membatasi nilai agar tidak melampaui 0-100
  kelembaban = constrain(kelembaban, 0, 100);

  Serial.print("Raw: "); Serial.print(rawValue);
  Serial.print(" | Kelembaban: "); Serial.print(kelembaban);
  Serial.println("%");

  delay(500);
}

smart_display Praktik Lapangan

Tantangan Kalibrasi #4

Hubungkan sensor cahaya (LDR) ke pin Analog. Buatlah program yang menyalakan LED jika nilai cahaya di bawah 30%. Anda harus mengkalibrasi nilai gelap total dan terang total di ruangan Anda terlebih dahulu!

settings_input_component