Anda di halaman 1dari 9

LAPORAN PRAKTIKUM I

Pembacaan ADC Pada Mikrokontroller

Nama Anggota:
1. Nova Diharmi (4232101014)
2. Adam Ferrari Docherty (4232101021)
3. Sabrina Diniyah (4232101029)

PROGRAM STUDI D4 TEKNOLOGI REKAYASA PEMBANGKIT ENERGI


JURUSAN TEKNIK ELEKTRO
POLITEKNIK NEGRI BATAM
2023
I. Pendahuluan
1.1 Latar Belakang

Pada saat ini, mikrokontroler telah menjadi sangat populer dalam berbagai aplikasi
elektronik, dari sistem kontrol otomatis hingga perangkat IoT (Internet of Things). Salah satu
fitur utama dari mikrokontroler adalah kemampuan untuk memproses sinyal analog dan
digital. Namun, sinyal analog harus dikonversi ke dalam bentuk digital sebelum dapat
diproses oleh mikrokontroler. Inilah sebabnya mengapa pembacaan Analog to Digital
Converter (ADC) pada mikrokontroler sangat penting. ADC adalah suatu perangkat
elektronik yang mengubah representasi bentuk analog kebentuk digital (biner, desimal,
heksadesimal) sehingga dapat diproses oleh mikrokontroler. Penting untuk memahami
bagaimana ADC bekerja dan bagaimana menggunakannya pada mikrokontroler untuk
memperoleh hasil yang akurat.
Dalam praktikum mengenai pembacaan ADC pada mikrokontroler ini, kami
mempelajari prinsip dasar dari ADC, jenis-jenis ADC yang tersedia, dan cara menggunakan
ADC pada mikrokontroler. Kami juga belajar tentang faktor-faktor yang mempengaruhi
akurasi pembacaan ADC, seperti resolusi dan kecepatan sampel. Praktikum ini akan
membantu peserta memahami bagaimana mengambil data dari sensor analog dan
mengonversinya menjadi nilai digital yang dapat diproses oleh mikrokontroler.

1.2 Tujuan

 Mahasiswa dapat memahami pola pemrograman ADC pada Arduino


 Mahasiswa mampu merangkai dan mengapklikasikan pemograman yang telah dibuat
 Mahasiswa mampu memahami cara kerja dan mengoperasikan ADC (analog to
digital converter) pada mikrokontroler, serta mengenal berbagai parameter dan
konfigurasi yang dapat mempengaruhi hasil konversi analog ke digital
 Membantu untuk mempelajari cara menggunakan data yang dihasilkan oleh ADC
dalam program mikrokontroler, seperti melakukan pemrosesan data dan
pengambilan keputusan berdasarkan nilai ADC.

II. Dasar Teori

Arduino Uno.

Arduino Uno adalah board mikrokontroler berbasis ATmega328. Uno memiliki 14 pin digital
input / output (dimana 6 dapat digunakan sebagai output PWM), 6 input analog, resonator
keramik 16 MHz, koneksi USB, jack listrik, header ICSP, dan tombol reset. Uno dibangun
berdasarkan apa yang diperlukan untuk mendukung mikrokontroler, sumber daya bisa
menggunakan power USB (jika terhubung ke komputer dengan kabel USB) dan juga dengan
adaptor atau baterai.
Gambar 1. Arduino Uno

Tidak semua pin Arduino dapat digunakan untuk mengolah signal analog. Pada board
Arduino Uno, terdapat enam pin analog, yakni mulai dari A0 hingga A5. Huruf A pada awal
nama pin Arduino menandakan pin tersebut dapat digunakan untuk mengolah signal analog.
Seberapa tepat nilai signal analog yang dipetakan secara digital, ditentukan oleh seberapa
besar resolusi ADC. Semakin besar resolusi ADC, maka semakin mendekati nilai analog
dari signal tersebut. Untuk resolusi ADC pada board Arduino Uno ialah 10 bit, yang berarti
mampu memetakan hingga 1024 discrete analog level. Beberapa jenis mikrokontroler lain
memiliki resolusi 8 bit, 256 diskrit analog level, bahkan ada yang memiliki resolusi 16 bit,
65536 diskrit analog level.

Sketch Membaca ADC.

Tutorial sederhana untuk belajar membaca nilai ADC dapat dilakukan dengan menggunakan
potentiometer. Potentiometer bekerja dengan prinsip pembagi tegangan, dimana terdapat
kaki untuk sumber tegangan dihubungkan ke Vcc 5 volt Arduino, ground dihubungkan ke
ground Arduino, dan data tegangan dihubungkan ke pin analog A3 Arduino.

Gambar 2.Rangkaian Arduino dengan input ADC


III. Percobaan

3.1 Alat dan Bahan


 Projectboard 1 buah
 Arduino uno 1 buah
 Potensiometer 1 buah
 Led dan resistor 1 buah
 Kabel jumper secukupnya

3.2 Langkah Kerja


Susunlah komponen-komponen praktikum seperti gambar di atas, caranya :
1. Hubungkan kaki potensiometer ke Pin VCC dan Ground pada Arduino
menggunakan kabel jumper.
2. Hubungkan sisa kaki pada potensiometer ke pin ADC Arduino menggunakan
kabel jumper.
3. Hubungkan board Arduino Uno dengan Komputer menggunakan kabel USB.
4. Bukalah IDE Arduino, kemudian ketikkan kode program/sketch.
5. Compile menggunakan verify button (tanda ceklist pada IDE arduino) untuk
mengecek ada atau tidaknya error/kesalahan dalam pengetikan.
6. Upload program ke arduino dengan cara, pilih File > Upload to I/O board, atau tekan
tombol tanda panah pada jendela IDE arduino.

PROGRAM PERCOBAAN
1. Membaca data analog (Mengatur kecerahan lampu dengan input data ADC)
const int analogInPin = A0;
const int analogOutPin = 9;
int sensorValue = 0;
int outputValue = 0
void setup() {
Serial.begin(9600);
}
void loop() {
sensorValue = analogRead(analogInPin);
outputValue = map(sensorValue, 0, 1023, 0, 255);
analogWrite(analogOutPin, outputValue);
Serial.print("sensor = ");
Serial.print(sensorValue);
Serial.print("\t output = ");
Serial.println(outputValue);
delay(2);
}

2. Data ADC di konversi Kembali menjadi data analog


const int analogInPin = A0;
const int analogOutPin = 9;
int sensorValue = 0;
int outputValue = 0;
int Tegangan = 0;
void setup() {
Serial.begin(9600);
}
void loop() {
sensorValue = analogRead(analogInPin);
outputValue = map(sensorValue, 0, 1023, 0, 255);
analogWrite(analogOutPin, outputValue);
float Tegangan = sensorValue * (5.0 / 1023.0);
Serial.print("sensor = ");
Serial.print(sensorValue);
Serial.print("\t Tegangan = ");
Serial.println(Tegangan);
delay(2);
}

3. Mengatur Nilai Delay sesuai dengan Input ADC

Int sensorPin=A0;
Int ledPin=9;

Int sensorValue=0;
void setup(){

pinMode(ledPin,OUTPUT);

void loop(){

sensorValue=analogRead(sensorPin);

digitalWrite(ledPin,HIGH);
delay(sensorValue);

digitalWrite(ledPin,LOW);

delay(sensorValue)
3.3 Gambar Rangkaian

Gambar 3.3.1 Rangkaian Potensio Meter


Gambar 3.1.2 Gambar Rangkaian LED
IV. Hasil dan Analisa

4.1 Tabel Hasil Percobaan dan Perhitungan

Tabel hasil pengukuran Tabel hasil pada komputer


Sensor Output Sensor
Tegangan Tegangan
NO (integer) Analog NO (integer)
(V) (V)
Analog read write Analog read
1 99 24 0,47 1 96 0,47
2 112 27 0,8 2 117 0,57
3 132 33 0,9 3 131 0,64
4 266 66 1,25 4 264 1,29
5 307 76 1,5 5 305 1,49
6 309 77 1,45 6 310 1,52
7 368 91 1,7 7 368 1,8
8 388 95 1,8 8 387 1,89
9 409 101 2,02 9 405 1,98
10 445 110 2,2 10 443 2,16
11 499 128 2,43 11 499 2,44
12 531 132 2,5 12 534 2,61
13 563 140 2,8 13 567 2,77
14 568 143 2,8 14 568 2,78
15 640 157 3,1 15 636 3,11
16 644 160 3,2 16 642 3,14
17 682 170 3,3 17 680 3,32
18 699 178 3,4 18 698 3,41
19 790 184 3,6 19 739 3,61
20 806 201 3,9 20 806 3,94
21 872 217 4,2 21 870 4,26
22 932 233 4,6 22 932 4,55
23 980 244 4,8 23 983 4,8
24 1012 225 4,9 24 1014 4,96
25 1023 255 5 25 1023 5

4.2 Analisa

Setelah dilakukan praktikum ADC terlihat bahwa pada arduino uno yang mana board
ini berbasis ATMega memiliki fitur untuk mengubah data analog menjadi digital,
terbukti pada hasil praktikum didapatkan nilai tegangan output yang terbaca pada
komputer hampir sama dengan yang diukur menggunakan multimeter. Karena nilai
tegangan inilah hasil konversi pada data integer atau sensor. Ketika potensio diputar
maka ia akan mengubah nilai tegangan pada rangkaian menjadi naik atau turun.

 Resolusi ADC: Resolusi ADC pada mikrokontroler menentukan jumlah bit yang
digunakan dalam konversi sinyal analog menjadi sinyal digital. Semakin banyak
bit yang digunakan, semakin tinggi resolusi ADC dan semakin akurat nilai digital
yang dihasilkan. Pemilihan resolusi ADC harus disesuaikan dengan kebutuhan
sistem, baik untuk kecepatan maupun akurasi.

 Jumlah saluran ADC: Jumlah saluran ADC pada mikrokontroler menentukan


jumlah sinyal analog yang dapat diukur secara bersamaan. Pemilihan jumlah
saluran ADC harus disesuaikan dengan jumlah sinyal analog yang perlu diukur
pada sistem.

 Tegangan referensi ADC: Tegangan referensi ADC pada mikrokontroler


menentukan tegangan maksimum yang dapat diukur oleh ADC. Pemilihan
tegangan referensi ADC harus disesuaikan dengan rentang tegangan sinyal analog
yang diukur.

4.3 kesimpulan
Kesimpulan yang didapat setelah melakukan prakrikum ini didapat bahwa
untuk mengubah data analog ke data digital salah satunya dapat menggunakan
arduino uno, untuk resolusi ADC pada board arduino uno ialah 10 bit, yang berarti
mampu memetakan hingga 1024 discrete analog level. Semakin besar resolusi ADC,
maka semakin mendekati nilai analog dari signal tersebut.
Pemilihan ADC yang tepat pada mikrokontroler sangat penting untuk
memastikan keakuratan, kecepatan, dan kesesuaian dengan kebutuhan sistem.
Beberapa faktor yang perlu diperhatikan dalam pemilihan dan pengaturan
ADC pada mikrokontroler antara lain resolusi ADC, kecepatan konversi, jumlah
saluran ADC, dan tegangan referensi ADC. Selain itu, pemilihan mikrokontroler yang
tepat juga harus diperhatikan untuk memastikan kinerja yang optimal dari ADC.
ADC pada mikrokontroler merupakan komponen penting yang dapat
menentukan kualitas dan kinerja dari sistem. Oleh karena itu, pemilihan dan
pengaturan ADC pada mikrokontroler harus dilakukan secara cermat untuk
memastikan keakuratan, kecepatan, dan kesesuaian dengan kebutuhan sistem.

Daftar Pustaka

K Risandriya, S. (2022) “Sensor dan Tranduser,” Analog to Digital Converter (ADC),


7, p. 7.
Idrus (2020) Arduino Pemula : Pembacaan Analog (ADC) Potensiometer - Idrus
Project. Available at: https://blog.idrusproject.com/arduino-pemula-
pembacaan-analog-adc-potensiometer/ (Accessed: March 19, 2023).
Yourname (2017) Arduino Untuk Pemula - Bagian 3 (Pengenalan ADC
Menggunakan Potensiometer). Available at:
https://candraherdianto.blogspot.com/2017/01/arduino-untuk-pemula-bagian-
3.html (Accessed: March 19, 2023).

Anda mungkin juga menyukai