//Tambahan //Akhir tambahan Fungky Corporation: ADC (Analog Digital Converter) Pada Arduino

MAU PESAN ALAT BIDANG ELEKTRONIKA? KAMI FUNGKY CORPORATION SIAP MEMBANTU. HUBUNGI :

Email: fungkyking01@gmail.com | FB/TWITTER/YOUTUBE : FUNGKYKING |

WA (WhatsApp) Only : 0838 (Libur)


Lokasi Yogyakarta.

Thursday, 15 August 2019

ADC (Analog Digital Converter) Pada Arduino


ADC (Analog Digital Converter) Pada Arduino
ADC (Analog Digital Converter)

  1. Pendahuluan
Berbicara mengenai mikrokontroler salah satunya Arduino tentu tidak lepas dari fitur-fitur yang disediakan oleh pengembang mikrokontroler tersebut seperti fitur ADC, komunikasi serial, I2C, ataupun sinyal digital. Pada pembahasan kali ini kita akan mengenal sedikit tentang salah satu fitur mikrokontroler yaitu ADC (Analog Digital Converter) dari apa itu ADC, karakteristiknya, prinsip kerja, hingga contoh program sederhana dalam Arduino.

ADC (Analog to Digital Converter) adalah salah satu fasilitas mikrokontroler yang berfungsi untuk mengubah data analog menjadi data digital. ADC memiliki 2 karakter prinsip, yaitu kecepatan sampling dan resolusi. Kecepatan sampling suatu ADC menyatakan seberapa sering sinyal analog dikonversikan ke bentuk sinyal digital pada selang waktu tertentu. Kecepatan sampling bisanya dinyatakan dalam sample per second (SPS) (Afriansyah, 2012). Contoh ditunjukkan pada Gambar 1.

(a)                                                  (b)
Gambar 1. ADC (a) Kecepatan Sampling Rendah (b) Tinggi

Resolusi ADC menentukan ketelitian nilai hasil konversi ADC. contoh: ADC 8 bit akan memiliki output 8 bit data digital, ini berarti sinyal input dapat dinyatakan dalam 255 (2n – 1) nilai diskrit. ADC 12 bit memiliki 12 bit output data digital, ini berarti sinyal input dapat dinyatakan dalam 4096 nilai diskrit.

Prinsip kerja ADC adalah mengkonversi sinyal analog ke dalam bentuk besaran yang merupakan rasio perbandingan sinyal input dan tegangan referensi. Sebagai contoh, jika menggunakan ADC 8 bit dengan skala maksimum 255, akan didapatkan sinyal digital sebesar 60% x 255 = 153 (bentuk desimal) atau 10011001 (bentuk biner) (Afriansyah, 2012).

  1. Perancangan
ADC (Analog Digital Converter) difungsikan untuk mengkonversi keluaran analog dari sensor menjadi digital. Hal ini dilakukan dengan menghubungkan output dari sensor tersebut ke Port ADC yang tersedia pada mikrokontroler Arduino.

ADC yang digunakan pada perancangan alat biasanya menggunakan mode single input ended dimana hanya satu masukan saja yang dibaca dari port yang diaktifkan dan menggunakan model konversi ADC 10 bit. Karena menggunakan ADC 10 bit maka nilai maksimum dari pembacaan ADC itu adalah 210 = 1024, untuk dapat mengetahui hasil konversinya maka dapat dihitung dengan menggunakan rumus berikut.

    --------------------------------------------------- (b-1)



Keterangan:
ADC               :  hasil konversi sinyal kedalam bentuk sinyal digital
V sinyal          : Sinyal yang dikirimkan oleh sensor ke mikrokontroler
V ref                : Tegangan referensi dari sistem ADC
Besar kenaikan tegangan tiap step atau resolusi dari ADC ini adalah:
                                                
----------------------(b-2)


  1. Pengujian
Arduino UNO menggunakan IC ATMega328 yang merupakan tipe AVR dengan dilengkapi 6 saluran ADC internal. Sebelum melakukan pengujian, terlebih dahulu mikrokontroler diprogram dimana bertujuan untuk mengetahui respon dari konversi data ADC internal mikrokontroler.

ADC mampu mengkonversi masukan tegangan analog dari skala 0 volt sampai 5 volt menjadi keluaran biner. Data keluaran (desimal) dari ADC  menyesuaikan dengan resolusi dari ADC yang digunakan baik itu 8bit ataupun 10bit.
Berikut adalah program sederhana yang digunakan dalam pengujian ADC.

/*
Membaca data Analog dari pin 0, dengan menampilkan hasilnya kedalam serial monitor.
Test Program Dasar pembacaan Analog Serial Monitor Menggunakan Arduino
by Fungky King
*/
void setup() {
  // initialize serial communication at 9600 bits per second:
  Serial.begin(9600);
}
void loop() {
  // read the input on analog pin 0:
  int sensorValue = analogRead(A0);
  // print out the value you read:
Serial.print(ADC: );
  Serial.println(sensorValue);
  delay(1);        // delay in between reads for stability
}

Pengujian dilakukan dengan menggunakan potensio yang dijadikan sebagai masukan untuk menguji perubahan nilai ADC terhadap tegangan. Tegangan yang diberikan menggunakan prinsip pembagi tegangan yang akan melewati potensio sebagai pembatas tegangan.

Tegangan referensi akan berubah semakin besar mendekati tegangan masukan 5 volt jika potensio diputar ke kanan, begitu juga sebaliknya nilai tegangan akan mengecil mendekati 0 volt jika potensio diputar kekiri.


Gambar 2. Pengujian ADC dengan potensio
Pengamatan perubahan nilai ADC terhadap tegangan dapat terlihat di serial monitor atau menggunakan LCD seperti Gambar 3 berikut.


Gambar 3. Pengamatan Perubahan Nilai ADC
Selain mengamati perubahan nilai ADC yang diujikan melalui serial monitor atau LCD, pengujian juga dapat menggunakan LED sebagai indikator perubahan nilai ADC dimana ketika LED masih dalam keadaan redup hal ini berarti tegangan yang masuk ke LED belum menukupi untuk menyalakannya. Sedangkan untuk hasil pengujian dari respon ADC dapat dilihat pada Tabel 1 dibawah ini.

Tabel 1. Hasil Pengujian ADC Mikrokontroler

No.
Vin ADC (Volt)
Keluaran ADC (Decimal)
Kondisi LED
Perhitungan
Pengamatan
1
0
0
0

2
0.5
25
25

3
1
51
52

4
1.5
76
77

5
2
102
103

6
2.5
127
128

7
3
153
154

8
3.5
178
179

9
4
204
205

10
4.5
229
230

11
5
255
255



Keterangan Kondisi LED: 
-          Putih (LED padam)
-          Merah (LED menyala)
Mencari nilai ADC dengan referensi tegangan masukan dapat di cari menggunakan rumus:

          ------------------------------------------  (c-1)

Berdasarkan hasil pengujian pada Tabel 1, maka dapat kita hitung nilai ADC terhadap tegangan masukan dengan menggunakan persamaan (c-2) adalah:

---------------------------------------------------------(c-2)


Penyimpangan atau error pembacaan ADC sebesar:

----------------------------------------(c-3)


        
        Demikian penjabaran singkat tentang “ADC (Analog to Digital Converter) Pada Arduino”. Untuk selanjutnya, buat yang ingin mempelajari Arduino dan lebih mengenal Arduino silakan follow akun sosial media saya di facebook “fungkyking” juga diblog saya http://festyy.com/wNiBaj dan jangan lupa subscribe channel youtubenya di (fungky king) https://www.youtube.com/channel/UCWbN7TqlN68FxeFY7uCNhkA untuk melihat tulisan-tulisan serta hasil rancangan alat-alat berbasis mikrokontroler yang kami buat. Kami juga menerima pembuatan alat-alat elektronika baik untuk penelitian ataupun alat untuk syarat kelulusan.

Mohon maaf jika terdapat kesalahan dalam penulisan yang mana semua ini semata-mata hanya opini pribadi berdasarkan pengalaman. Jika ada kekurangan dan tambahan dari materi pembahasan yang dibahas silahkan dapat teman-teman sertakan pada kolom komentar tambahan materi yang ingin disampaikan, sampaikan pertanyaan dan isi kolom komentar dengan bijak.
           
Terima Kasih,
Salam Otomatisasi


Afriansyah, S.T.
(Fungky King)


Kata Kunci / Keywords: ATMEGA, Arduino, Arduino IDE, Arduino UNO, Bahasa C, fungkynotes.blogspot.co.id, fungky corporation, fungky king, microcontroller, otomatis, pemprograman, plc, NodeMCU, ESP8266, Internet of Things (IoT), Wi-Fi

Referensi / Reference:




No comments:

Post a Comment

Berfikirlah kreatif dengan komentar yang bijak. Salam Otomatisasi.!

//Tambahan //akhir