Percobaan ADC dan DAC pada Arduino Mega

Pendahuluan

Arduino Mega 2560 merupakan salah satu board mikrokontroler populer yang digunakan dalam berbagai proyek elektronika dan otomasi. Dua fungsi penting dalam sistem elektronika analog dan digital adalah ADC (Analog to Digital Converter) dan DAC (Digital to Analog Converter). Artikel ini akan mengupas secara praktis bagaimana memanfaatkan fitur ADC dan mengimplementasikan DAC menggunakan Arduino Mega.

  1. Pengertian ADC dan DAC

1.1 ADC (Analog to Digital Converter)

ADC adalah proses mengubah sinyal analog (tegangan kontinyu) menjadi sinyal digital (nilai diskrit). Arduino Mega memiliki fitur ADC internal yang dapat membaca tegangan analog pada pin dan mengubahnya menjadi nilai digital antara 0 hingga 1023 (10-bit).

1.2 DAC (Digital to Analog Converter)

DAC adalah proses kebalikan dari ADC, yaitu mengubah sinyal digital menjadi sinyal analog. Arduino Mega tidak memiliki DAC bawaan, tetapi kita bisa mensimulasikan output analog menggunakan teknik PWM (Pulse Width Modulation).

  1. Spesifikasi ADC pada Arduino Mega
    • Resolusi: 10-bit (nilai 0-1023)
    • Tegangan referensi default: 5V
    • Jumlah kanal ADC: 16 kanal (A0 sampai A15)
    • Waktu konversi: sekitar 100 mikrodetik per pembacaan
  1. Membaca Data Analog (ADC) pada Arduino Mega

3.1 Rangkaian Dasar

Komponen:

      • Arduino Mega
      • Potensiometer (10K ohm)
      • Kabel jumper

Skema:

      • Hubungkan salah satu ujung potensiometer ke 5V
      • Ujung lainnya ke GND
      • Pin tengah (wiper) ke pin A0 Arduino Mega

3.2 Contoh Program ADC

void setup() {

  Serial.begin(9600); // Inisialisasi komunikasi serial

}




void loop() {

  int nilaiADC = analogRead(A0); // Membaca nilai analog dari pin A0

  float tegangan = (nilaiADC * 5.0) / 1023.0; // Konversi ke tegangan

  Serial.print("Nilai ADC: ");

  Serial.print(nilaiADC);

  Serial.print(" | Tegangan: ");

  Serial.println(tegangan);

  delay(500);

}
  1. Mengimplementasikan DAC pada Arduino Mega

4.1 Menggunakan PWM sebagai DAC

Karena tidak ada DAC internal, kita gunakan PWM untuk menghasilkan sinyal analog semu.

4.2 Prinsip PWM

PWM bekerja dengan mengatur siklus kerja (duty cycle) pulsa digital. Dengan menambahkan filter low-pass (kapasitor), kita dapat memperoleh sinyal tegangan analog rata-rata.

4.3 Rangkaian DAC dengan PWM

Komponen:

      • Arduino Mega
      • LED
      • Resistor 220 ohm
      • Kapasitor 10uF (untuk filter low-pass)

Skema:

      • LED ke pin PWM (misalnya pin 9) melalui resistor
      • Kapasitor dari pin PWM ke GND (untuk menyaring sinyal PWM)

4.4 Contoh Program DAC menggunakan PWM

void setup() {

  pinMode(9, OUTPUT);

}




void loop() {

  for (int i = 0; i <= 255; i++) {

    analogWrite(9, i); // Nilai PWM dari 0 ke 255

    delay(10);

  }

  for (int i = 255; i >= 0; i--) {

    analogWrite(9, i); // Nilai PWM dari 255 ke 0

    delay(10);

  }

}
  1. Menyinkronkan ADC dan DAC

Kombinasi ADC dan DAC berguna untuk berbagai aplikasi seperti kontrol motor, pengaturan lampu, atau sistem audio sederhana.

Contoh Proyek:

Menggunakan potensiometer untuk mengatur kecerahan LED dengan pembacaan ADC dan pengendalian PWM.

void setup() {

  pinMode(9, OUTPUT);

}




void loop() {

  int sensorValue = analogRead(A0); // Baca potensiometer

  int pwmValue = map(sensorValue, 0, 1023, 0, 255); // Mapping ke PWM

  analogWrite(9, pwmValue); // Tulis PWM ke pin 9

  delay(10);

}
  1. Tips Praktis
    • Gunakan analogReference() jika ingin menggunakan referensi tegangan eksternal
    • Tambahkan kapasitor 0.1uF dekat pin analog untuk mengurangi noise
    • Gunakan analogReadResolution() pada board yang mendukung (tidak berlaku untuk Mega)
  1. Kesimpulan

Arduino Mega memberikan kemudahan dalam membaca sinyal analog menggunakan ADC internalnya. Meskipun tidak memiliki DAC asli, dengan memanfaatkan PWM dan filter sederhana kita dapat menghasilkan sinyal analog untuk banyak aplikasi. Dengan pemahaman dasar ini, pengguna dapat mengembangkan sistem kontrol dan monitoring yang lebih kompleks.

  1. Pengembangan Lanjutan
    • Gunakan IC DAC eksternal seperti MCP4725 via I2C
    • Kombinasikan sensor analog dan output audio
    • Gunakan OLED/LCD untuk menampilkan hasil pembacaan

Dengan latihan dan eksperimen lebih lanjut, kemampuan ADC dan DAC bisa dioptimalkan dalam sistem embedded yang nyata.

 

Related Articles

Leave a Reply

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