Anda di halaman 1dari 9

MODUL 1 ADC dan PWM

Hilmi Mahfudi (2020200023)


Asisten : Kak Septian
Tanggal Percobaan : 6 Ooktober, 2021
TE1220 – Sistem Microprocesor
Laboratorium Teknik Elektro - Politeknik PGRI Banten.

Abstrak
Pada percobaan ini, digunakan beberapa jenis
peralatan, antara lain arduino uno sebagai
mikrokontroler, LED sebagai cahaya yang dideteksi, PWM adalah salah satu teknik modulasi dengan
Potensiometer sebagai pengendali resistansi sehingga mengubah lebar pulsa (duty cylce) dengan nilai
berpengaruh pada intensitas cahaya LED, resistor amplitudo dan frekuensi yang tetap. Satu siklus
sebagai hambatan dalam rangkaian, kabel jumper pulsa merupakan kondisi high kemudian berada
untuk menghubungkan setiap komponen dalam di zona transisi ke kondisi low. Lebar pulsa
rangkaian, Laptop untuk input program software PWM berbanding lurus dengan amplitudo
Arduino dan project board sebagai tempat sinyal asli yang belum termodulasi. . Duty Cycle
perangkaian alat. Setelah data diperoleh maka
merupakan representasi dari kondisi logika high
dilakukan Langkah Langkah penerapan
dalam suatu periode sinyal dan di nyatakan
menggunakan alat-alat praktikum yang telah di
sediakan. Fungsi utama dari percobaan dalam bentuk (%) dengan range 0% sampai
menggunakan Arduino ini adalah supaya ADC 100%, sebagai contoh jika sinyal berada dalam
dapat mengubah sinyal masukan yang masih dalam kondisi high terus menerus artinya memiliki
bentuk sinyal analog menjadi sinyal digital dengan duty cycle sebesar 100%. Jika waktu sinyal
bentuk kode-kode digital melalui proses keadaan high sama dengan keadaan low maka
Pencuplikan,Pengkuantisasian dan Pengkodean. sinyal mempunyai duty cycle sebesar 50%.
PWM sangatlah berguna sebagai sistem pengatur
atau sistem kontrol, diantaranya untuk mengatur
intensitas LED bahkan mengatur signal
telekomunikasi yang sering kita gunakan. Percobaan 2. STUDI PUSTAKA
terkait PWM ini dilakukan dengan tujuan untuk
mengetahui pengaruh Pulse Width Modulation
(PWM). Hasilnya Arduino dapat membaca inputan 2.1 ARDUINO
analog Arduino adalah pengendali mikro single-
board yang bersifat open-source,
diturunkan dari Wiring platform,
Kata kunci : ADC,PWM, Arduino dirancang untuk memudahkan
penggunaan elektronik dalam berbagai
1. PENDAHULUAN bidang. Arduino tidak hanya sekedar
sebuah alat pengembangan, tetapi ia adalah
ADC atau Analog to Digital Converter
kombinasi dari hardware, bahasa
merupakan salah satu perangkat elektronika
pemrograman dan (IDE) yang canggih.
yang digunakan sebagai penghubung dalam
IDE itu merupakan kependekan dari
pemrosesan sinyal analog oleh sistem digital.
Integrated Developtment Enviroenment,
Fungsi utama dari fitur ini adalah mengubah
atau secara bahasa mudahnya merupakan
sinyal masukan yang masih dalam bentuk sinyal
lingkungan terintegrasi yang digunakan
analog menjadi sinyal digital dengan bentuk
untuk melakukan pengembangan. Disebut
kode-kode digital.
sebagai lingkungan karena melalui
software inilah Arduino dilakukan
pemrograman untuk melakukan fungsi-
fungsi yang dibenamkan melalui sintaks
pemrograman.
Arduino IDE dibuat dari bahasa
pemrograman JAVA. Arduino IDE juga
dilengkapi dengan library C/C++ yang
biasa disebut Wiring yang membuat
operasi input dan output menjadi lebih
mudah. Arduino IDE ini dikembangkan
dari software Processing yang dirombak
menjadi Arduino IDE khusus untuk Gambar 1.1 Arduino
pemrograman dengan Arduino.
Seperti Mikrokontroler yang banyak
jenisnya, Arduino lahir dan berkembang, 2.3 SUMBER DAYA / POWER
Arduino Uno dapat diaktifkan melalui
kemudian muncul dengan berbagai jenis.
eksternal. Sumber daya dipilih secara
Diantaranya :
otomatis. Untuk sumber daya Eksternal
• Arduino Uno • Arduino Duemilanove (non-USB) dapat berasal baik dari adaptor
• Arduino Leonardo • Arduino AC-DC atau baterai. Adaptor ini dapat
Mega2560 • Arduino Intel Galile • dihubungkan dengan memasukkan 2.1mm
Arduino Pro Micro AT • Arduino Nano jack DC kecolokan koneksi USB atau
R3 • Arduino mini Atmega • Arduino dengan catu daya listrik board. Baterai
Mega ADK • Arduino Esplora. dapat dimasukkan pada pin header Gnd
dan Vin dari konektor daya.Board dapat
2.2 PIN DIGITAL DAN ANLOG beroperasi pada pasokan eksternal dari 6
Pada Arduino terdapat dua buah jenis pin, sampai 20 volt. Jika Anda menggunakan
yaitu analog dan digital. Pin digital tegangan kurang dari 6 volt mungkin tidak
memiliki dua buah nilai yang dapat ditulis akan stabil. Jika menggunakan lebih dari
kepadanya yaitu High (1) dan  Low (0). 12V, regulator tegangan bisa panas dan
Logika high adalah 5 Volt dikirim ke pin merusak papan. Rentang yang dianjurkan
baik itu oleh mikrokontroler atau dari adalah 7 sampai 12 volt.
komponen. Low berarti pin tersebut
bertegangan 0 Volt. Dari logika ini, Anda Pin listrik yang tersedia adalah sebagai
dapat membayangkan perumpamaan: berikut:
start/stop, siap/tidak siap, on/off, dsb.
Pin-pin analog memiliki karakteristik yang  Vin
berbeda dari pin digital. Informasi yang Input tegangan ke board Arduino ketika
dapat ditulis atau dibaca sangat lebar. menggunakan sumber daya eksternal.
Misalnya saja untuk write, nilai dari 0-255 Anda dapat menyediakan tegangan melalui
dapat ditulis (0V – 5V). Sedangkan untuk pin ini, atau, jika Anda ingin memasok
read, nilai dari 0-1023 (0V – 5V dengan tegangan melalui colokan listrik, gunakan
setiap kenaikan sebesar 0,005V) dapat pin ini. Pin ini merupakan output 5V yang
direpresentasikan telah diatur oleh regulator papan Arduino.
. Board dapat diaktifkan dengan daya, baik
dari colokan listrik DC (7-12V), konektor
USB (5V), atau pin VIN board (7-12V).
Jika Anda memasukan tegangan melalui
pin 5V atau 3.3V secara langsung (tanpa
melewati regulator) tidak disarankan dan
dapat merusak papan Arduino. Tegangan
pada pin 3V3. 3.3Volt dihasilkan oleh
regulator on-board. Menyediakan arus 2.5 ADC (ANALOG TO DIGITAL
maksimum 50 mA. CONVERTER)
ADC atau Analog to Digital Converter
 GND merupakan salah satu perangkat
Pin ground elektronika yang digunakan sebagai
penghubung dalam pemrosesan sinyal
 IOREF analog oleh sistem digital. Fungsi utama
Pin ini di papan Arduino memberikan dari fitur ini adalah mengubah sinyal
tegangan referensi ketika mikrokontroler masukan yang masih dalam bentuk
beroperasi. Sebuah shield yang sinyal analog menjadi sinyal digital
dikonfigurasi dengan benar dapat dengan bentuk kode-kode digital.
membaca pin tegangan IOREF sehingga
dapat memilih sumber daya yang tepat Proses yang terjadi dalam ADC adalah:
agar dapat bekerja dengan 5V atau 3.3V. 1. Pencuplikan
2. Pengkuantisasian
3. Pengkodean
2.4 INPUT DAN OUTPUT
Masing-masing dari 14 pin digital Uno
dapat digunakan sebagai input atau output,
menggunakan fungsi pinMode(),
digitalWrite(), dan digitalRead(). Mereka
beroperasi pada tegangan 5 volt. Setiap pin
dapat memberikan atau menerima
maksimum 40 mA dan memiliki resistor
Gambar 1.2 Diagram Blok Proses dalam
pull-up internal (terputus secara default)
ADC
dari 20-50 KOhm. Selain itu, beberapa pin
memiliki fungsi spesial:
 Serial = Pin 0 (RX) dan 1 (TX)
1. Pencuplikan
Digunakan untuk menerima (RX) dan
Pencuplikan  adalah proses
mengirimkan (TX) data serial TTL. Pin
mengambil suatu nilai pasti (diskrit)
ini terhubung dengan pin
dalam suatu data kontinu dalam
ATmega8U2.
satu titik waktu tertentu dengan
 USB-to-Serial TTL
periode yang tetap. Untuk lebih
 Eksternal Interupsi = Pin 2 dan 3 dapat jelasnya dapat dilihat pada ilustrasi
dikonfigurasi untuk memicu interrupt gambar berikut:
pada nilai yang rendah (low value),
rising atau falling edge, atau
perubahan nilai. Lihat fungsi
attachInterrupt() untuk rinciannya.
 Analog = Pin A0-A5 menyediakan 10-bit
ADC dengan fungsi analogRead().
 PWM = Pin 3, 5, 6, 9, 10, dan 11
menyediakan 8-bit PWM dengan
fungsi analogWrite().
 SPI = Pin 10 (SS), 11 (MOSI), 12 (MISO),
13 (SCK) mendukung komunikasi SPI
dengan menggunakan perpustakaan Gambar 1.3  Proses Pen-cuplik-an
SPI. dalam ADC
 LED = Pin 13. Built-in LED terhubung
ke pin digital 13. LED akan menyala Semakin besar frekuensi
ketika di berinilai HIGH. pencuplikan, berarti semakin
banyak data diskrit yang
didapatkan, maka semakin cepat
ADC tersebut memproses suatu ADC: X1 = 11, X2 = 11, X3 = 10, X4 =
data analog menjadi data digital. 01, X5 = 01, X6 = 10.
Secara matematis, proses ADC
2. Pengkuantisasian dapat dinyatakan dalam persamaan:
Pengkuantisasian adalah proses Data_ADC = (Vin/Vref) x
pengelompokan data diskrit yang Maksimal_Data
didapatkan pada proses pertama ke
dalam kelompok-kelompok data. Pada Arduino, resolusi yang
Kuantisasi dalam matematika dan dimiliki adalah 10 bit atau rentang
pemrosesan sinyal digital, adalah nilai digital antara 0 - 1023. Dan
proses pemetaan nilai input seperti pada Arduino tegangan referensi
pembulatan nilai. yang digunakan adalah 5 volt, hal
ini berarti ADC pada Arduino
mampu menangani sinyal analog
dengan tegangan 0 - 5 volt.

Fungsi yang kita gunakan untuk


membaca nilai analog pada
Arduino adalah
analogRead([nomorPin]).

Gambar 1.4 Proses Pen-kuantisasi-


an dalam ADC

Semakin banyak kelompok-


kelompok dalam proses kuantisasi,
berarti semakin kecil selisih data
diskrit yang didapatkan dari data
analog, maka semakin teliti ADC
tersebut memproses suatu data Gambar 1.6 Nama label dan Nilai
analog menjadi data digital. ADC

3. Pengkodean
Pengkodean  adalah mengkodekan
data hasil kuantisasi ke dalam
bentuk digital (0/1) atau dalam
suatu nilai biner. 2.6 PWM (PULSE WIDTH MODULATION)
PWM adalah salah satu teknik modulasi
dengan mengubah lebar pulsa (duty cylce)
dengan nilai amplitudo dan frekuensi yang
tetap. Satu siklus pulsa merupakan kondisi
high kemudian berada di zona transisi ke
kondisi low. Lebar pulsa PWM berbanding
lurus dengan amplitudo sinyal asli yang
belum termodulasi. Duty Cycle merupakan
representasi dari kondisi logika high dalam
suatu periode sinyal dan di nyatakan dalam
bentuk (%) dengan range 0% sampai 100%,
Gambar 1.5 Proses Peng-kode-an sebagai contoh jika sinyal berada dalam
dalam ADC kondisi high terus menerus artinya
memiliki duty cycle sebesar 100%. Jika
waktu sinyal keadaan high sama dengan 2.7 POTENSIOMETER
keadaan low maka sinyal mempunyai duty potensiometer adalah salah satu jenis
cycle sebesar 50%. Resistor yang Nilai Resistansinya dapat
Untuk PWM adalah pin yang diberi tanda diatur sesuai dengan kebutuhan Rangkaian
tilde (~), yaitu pin 3, 5, 6, 9, 10, dan pin 11.  Elektronika ataupun kebutuhan
Jika akan menggunakan PWM pada pin ini, pemakainya. Potensiometer merupakan
bisa dilakukan dengan perintah
Keluarga Resistor yang tergolong dalam
analogWrite();.
Kategori Variable Resistor. Secara struktur,
PWM pada arduino bekerja pada frekuensi
500Hz, artinya 500 siklus/ketukan dalam Potensiometer terdiri dari 3 kaki Terminal
satu detik. Untuk setiap siklus, kita bisa dengan sebuah shaft atau tuas yang
memberi nilai dari 0 hingga 255.  Ketika berfungsi sebagai pengaturnya
kita memberikan angka 0, berarti pada pin Sebuah Potensiometer (POT) terdiri dari
tersebut tidak akan pernah bernilai 5 volt sebuah elemen resistif yang membentuk
(pin selalu bernilai 0 volt). Sedangkan jika jalur (track) dengan terminal di kedua
kita memberikan nilai 255, maka sepanjang ujungnya. Sedangkan terminal lainnya
siklus akan bernilai 5 volt (tidak pernah 0 (biasanya berada di tengah) adalah
volt). Jika kita memberikan nilai 127 (kita Penyapu (Wiper) yang dipergunakan untuk
anggap setengah dari 0 hingga 255, atau menentukan pergerakan pada jalur elemen
50% dari 255), maka setengah siklus akan resistif (Resistive). Pergerakan Penyapu
bernilai 5 volt, dan setengah siklus lagi (Wiper) pada Jalur Elemen Resistif inilah
akan bernilai 0 volt. Sedangkan jika jika yang mengatur naik-turunnya Nilai
memberikan 25% dari 255 (1/4 * 255 atau Resistansi sebuah Potensiometer.Elemen
64), maka 1/4 siklus akan bernilai 5 volt, Resistif pada Potensiometer umumnya
dan 3/4 sisanya akan bernilai 0 volt, dan ini terbuat dari bahan campuran Metal (logam)
akan terjadi 500 kali dalam 1 detik. Untuk dan Keramik ataupun Bahan Karbon
visualisasi siklus PWM, bisa Anda lihat (Carbon).
gambar berikut:

Gambar 1.7 Siklus sinyal PWM pada Gambar 1.7 design potensio.
Arduino
Resistor bekerja sebagai komponen pasif dalam mikrokontroler, LED sebagai cahaya
rangkaian elektronika. Dilansir dari Circuit yang di deteksi, , Potensiometer sebagai
Globe, konstruksi potensiometer dikategorikan pengendali resistansi sehingga
menjadi bagian geser yag disebut wiper dan berpengaruh pada intensitas cahaya
bagian non geser. Kedua ujung terminal paling LED, resistor sebagai hambatan dalam
pinggir dihubungkan dengan kedua ujung rangkaian, kabel jumper untuk
elemen resistif sehingga resistansinya seragam, menghubungkan setiap komponen
ini adalah bagian non-geser dari potensiometer. dalam rangkaian, Laptop untuk input
Dilansir dari Electrical Shouters, seluruh program software Arduino dan project
tegangan input diterapkan di seluruh panjang board sebagai tempat perangkaian alat
resistor dalam potensiometer. Adapun terminal b. Langkah Langkah
di tengah dihubungkan pada wiper atau kenop
yang dapat digeser maupun diputar untuk 1. ADC
mengubah level resistansinya, konstruksi ini 1.1 Buatlah rangkaian menggunakan
adalah bagian geser dalam potensiometer. potensio seperti gambar dibawah ini:
Pergeseran kenop yang terhubung pada
terminal tengah potensiometer menimbulkan
penurunan tegangan dan memberikan tegangan
output yang berbeda. Pada kondisi memutar
maksimal, potensiometer memberikan resistansi
atau hambatan keseluruhan (maksimal).
Adapun jika kenop tidak diputar sama sekali,
potensiometer tidak memberikan hambaran
sama sekali (hambatan minimal) pada rangkaian
listrik.

2.8 LED 1.2 Buka aplikasi arduino IDE untuk


LED adalah singkatan dari Light Emiting Diode, membuat program  pembacaan ADC.
yang merupakan sebuah dioda yang dapat Setelah itu, pada void setup() ketik
mengubah energi listrik menjadi cahaya, dan Serial.begin(9600); untuk mengaktifkan
seperti halnya dioda LED juga mempunyai port serial (digunakan untuk melihat
polaritas kaki positif dan kaki negatif. Maka dari nilai ADC di layar serial arduino).
itu pada penggunaanya kaki-kaki LED harus
1.3 Buat program pembacaan ADC
sesuai (tidak terbalik), jika terbalik LED akan selanjutnya pada void loop(), seperti
rusak/hangus. Yang perlu diperhatikan juga pada kodingan dibawah ini.
adalah dalam pemasangan ke rangkaian, salah
satu kaki LED harus diberi/sambung dengan
hambatan yaitu resistor. Nilai resistansi yang
disarankan adalah 220/330 Ohm. Semakin besar
nilai hambatan maka semakin redup nyala
lampu LED-nya.

3. METODOLOGI

a. Perlatan
Pada percobaan kali ini digunakan
beberapa jenis peralatan. Adapun alat
yang di gunakan pada percobaan ini
antara lain Arduino uno sebagai
1.4 Untuk mengecek kodingan berhasil

atau ada error dengan mengeklik ,


bila kodingan tidak ada masalah error
dilanjutkan dengan mengupload
kodingan ke arduino dengan mengklik 

1.5 Buka serial monitor untuk melihat


nilai ADC dari potensiometer tersebut
2.2  Buka aplikasi arduino IDE untuk
melalui Tools > Serial Monitor.
pembuatan program fading  LED.
Setelah itu, untuk inisialisasi pin PWM
Arduino yang ingin di gunakan diatas
void setup(). Kemudian untuk
menentukan pin mana sebagai input
dan outputnya ketik pada bagian void
setup() seperti gambar di bawah. Pada
pin menuju rangkaian LED dibuat
sebagai OUTPUT. 

  

1.6 Maka akan keluar jendela baru Serial


Monitor. Silahkan putar
potensiometernya untuk melihat nilai
ADCnya
2.3  Buat kodingan fading LED dibawah
ini

2. PWM

2.1 Buatlah rangkaian menggunakan


LED dan Resistor seperti gambar di
bawah ini
ketika sinyal berada di bawah (0V). Duty cycle
adalah persentasi panjang pulsa HIGH dalam
satu periode sinyal. Ketika duty cyclenya 0%
atau sinyal LOW penuh, maka nilai analog yang
dikeluarkan adalah 0V atau setara dengan GND.
Ketika duty cyclenya 100% atau sinyal HIGH
penuh maka sinyal yang dikeluarkan adalaah
5V.Untuk mengatur nilai duty cycle, kita
gunakan fungsi analogWrite([nomorPin],
[nilai]). Nilai pada parameter kedia berkisar
antara 0 hingga 255. Bila kita hendak mengeset
duty cycle ke 0%, maka kita set nilai parameter
ke 0, dan untuk duty cycle 100%, maka kita set
nilai parameter ke 255. Jadi bila misalkan kita
hendak mengeset duty cycle ke 50%, berarti nilai
yang harus kita set adalah 127 (50% x
255).Sebenarnya berdasarkan konsep PWM, kita
2.4 Untuk mengecek kodingan berhasil dapat mensimulasikan PWM pada semua pin
digital. Tapi khusus penggunaan fungsi
atau ada error dengan mengklik . digitalWrite() kita hanya bisa menggunakannya
Bila kodingan tidak ada masalah error pada pin-pin PWM. Seperti pada Arduino Uno,
dilanjutkan dengan mengupload pin yang dapat menggunakan fungsi ini hanya
kodingan ke arduino dengan mengeklik pin 3, 5, 6, 9, 10 dan 11. Biasanya pin PWM
disimbolkan dengan karakter
dan akan terjadi fading LED pada
rangkaian.
ADC.
nilai ADC dapat dilakukan dengan
menggunakan potentiometer. Potentiometer
4. HASIL DAN ANALISIS bekerja dengan prinsip pembagi tegangan,
dimana terdapat kaki untuk sumber tegangan
dihubungkan ke Vcc 5 volt Arduino, ground
Hasil percobaan yang telah dilakaukan yaitu
dihubungkan ke ground Arduino, dan data
potesiometer dapat merepresentasikan input
tegangan dihubungkan ke pin analog A3
sensor karena potesiometer bekerja sebagai
Arduino. Nilai ADC menunjukkan ratio
pembagi tegangan.
perbandingan dengan tegangan yang terbaca.
PWM
Berikut persamaannya ialah nilai ADC terukur
Analog input dihasilkan PWM atau Pulse Width
ialah nilai ADC maximum dikalikan tegangan
Modulation. PWM memanipulasi keluaran
terbaca, kemudian dibagi dengan nilai tegangan
digital sedemikian rupa sehingga menghasilkan
sumber. Nilai ADC tergantung dengan tegangan
sinyal analog. Mikrokontroler mengeset output
yang menjadi catu daya sistem mikrokontroler.
digital ke HIGH dan LOW bergantian dengan
Untuk board Arduino biasa menggunakan
porsi waktu tertentu untuk setiap nilai
sumber tegangan 5 volt. Cara mencari nilai
keluarannya. Durasi waktu untuk nilai HIGH
ADC, dengan menerapkan persamaan yang ada
disebut pulse widthatau panjang pulsa. Variasi
dan tegangan terbaca sebesar 2,12 volt pada
nilai output analog didapatkan dari perubahan
board Arduino Uno.  Board Arduino Uno
panjang pulsa yang diberikan pada satu periode
memiliki resolusi 10 bit, dengan nilai terbesar
waktu dan dilakukan berulang-ulang. Untuk
1023  Tegangan sumber 5 volt dan tegangan
lebih jelasnya perhatikan gambar flowchat 1.7
terbaca ialah 2,12 volt  Nilai ADC terukur ialah
Kondisi HIGH adalah kondisi ketika sinyal
nilai ADC maximum dikalikan tegangan
berada di atas grafik (5V) dan LOW adalah
terbaca, kemudian dibagi dengan nilai tegangan 5. KESIMPULAN
sumber  Sehingga diperoleh nilai ADC sebesar
434 Dengan demikian diperoleh nilai ADC ADC dapat mengubah sinyal masukan yang
sebesar 434 dari tegangan terukur 2,12 volt. masih dalam bentuk sinyal analog menjadi
Untuk setiap unit ADC tersebut memiliki sinyal digital dengan bentuk kode-kode digital
perbandingan tegangan sebesar 4,9 mV. melalui proses. Analog input dihasilkan PWM
atau Pulse Width Modulation. PWM
memanipulasi keluaran digital sedemikian rupa
sehingga menghasilkan sinyal analog.

DAFTAR PUSTAKA

[1]
https://teknikelektronika.com/pengertia
n-fungsi-potensiometer/, 10 oktober,
2021. 13.00
[2] http://widi.lecturer.pens.ac.id/ 11
oktober 2021,21.00.
[3]http://rezazafik.blogspot.com/2018/12/
pwm-pada-arduino.html, 12 oktober
2021,13.00.
[4]https://docs.google.com/document/d/
1RES0voY6NW8Er8_zxOFl8OtOBffDqig
H/edit, 12. Oktober 2021.21.00

Anda mungkin juga menyukai