Modul 2 PWM,ADC, dan Interrupt
2.1 Pendahuluan
a) Asistensi dilakukan 1x
b) Praktikum dilakukan 1x
2.2 Tujuan
a) Memahami prinsip kerja PWM pada mikrokontroler
b) Memahami prinsip kerja ADC pada mikrokontroler
c) Memahamai prinsip Interupt pada mikrokontroler
d) Menggunakan PWM dan ADC pada Arduino
2.3 Alat dan Bahan
a) Modul Arduino
b) Motor DC
c) Servo
d) Stepper Motor
e) Driver Motor L293D
f) Seven Segment
g) Dipswitch
h) Keypad
i) Dot Matrix
j) Sensor Infrared
2.4 Dasar Teori
2.4.1 Pulse Width Modulation
PWM (Pulse Width Modulation) 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 adalah perbandingan antara waktu ON (lebar pulsa High) dengan perioda. Duty Cycle biasanya dinyatakan dalam bentuk persen (%).
Gambar 1. Duty Cycle
Duty Cycle = tON / ttotal
tON = Waktu ON atau Waktu dimana tegangan keluaran berada pada posisi tinggi (high
atau 1)
tOFF = Waktu OFF atau Waktu dimana tegangan keluaran berada pada posisi rendah
(low atau 0)
ttotal = Waktu satu siklus atau penjumlahan antara tON dengan tOFF atau disebut
jugadengan “periode satu gelombang”
Pada board Arduino Uno, pin yang bisa dimanfaatkan untuk PWM adalah pin yang diberi
tanda tilde (~), yaitu pin 3, 5, 6, 9, 10, dan pin 11. Pin-pin tersebut merupakan pin yang bisa
difungsikan untuk input analog atau output analog. Oleh sebab itu, jika akan menggunakan
PWM pada pin ini, bisa dilakukan dengan perintah analogWrite();
PWM pada arduino bekerja pada frekuensi 500Hz, artinya 500 siklus/ketukan dalam
satu detik. Untuk setiap siklus, kita bisa memberi nilai dari 0 hingga 255. Ketika kita
memberikan angka 0, berarti pada pin tersebut tidak akan pernah bernilai 5 volt (pin selalu
bernilai 0 volt). Sedangkan jika kita memberikan nilai 255, maka sepanjang siklus akan bernilai
5 volt (tidak pernah 0 volt). Jika kita memberikan nilai 127 (kita anggap setengah dari 0 hingga
255, atau 50% dari 255), maka setengah siklus akan bernilai 5 volt, dan setengah siklus lagi
akan bernilai 0 volt. Sedangkan jika jika memberikan 25% dari 255 (1/4 * 255 atau 64), maka
1/4 siklus akan bernilai 5 volt, dan 3/4 sisanya akan bernilai 0 volt, dan ini akan terjadi 500 kali
dalam 1 detik.
2.4.2 Analog to Digital Converter
ADC atau Analog to Digital Converter merupakan salah satu perangkat elektronika yang
digunakan sebagai penghubung dalam pemrosesan sinyal analog oleh sistem digital. Fungsi
utama dari fitur ini adalah mengubah sinyal masukan yang masih dalam bentuk sinyal analog
menjadi sinyal digital dengan bentuk kode-kode digital. Ada 2 faktor yang perlu diperhatikan
pada proses kerja ADC yaitu kecepatan sampling dan resolusi.
Kecepatan sampling menyatakan seberapa sering perangkat mampu mengkonversi sinyal
analog ke dalam bentuk sinyal digital dalam selang waktu yang tertentu. Biasa dinyatakan dalam
sample per second (SPS). Sementara Resolusi menyatakan tingkat ketelitian yang dimilliki.
Pada Arduino, resolusi yang dimiliki adalah 10 bit atau rentang nilai digital antara 0
- 1023. Dan pada Arduino tegangan referensi yang digunakan adalah 5 volt, hal ini berarti ADC
pada Arduino mampu menangani sinyal analog dengan tegangan 0 - 5 volt. Pada Arduino,
menggunakan pin analog input yang diawali dengan kode A( A0- A5 padaArduino Uno). Fungsi
untuk mengambil data sinyal input analog menggunakan analogRead(pin);
2.4.3 Interupt
Interupsi adalah proses dalam sistem mikrokontroler yang menghentikan prosea program
utama akibat terjadinya pemicu tertentu dari suatu sumber interupsi dan memaksa sistem
mikrokontroler untuk mengeksekusi blok program layanan interupsi. Bila terjadi interupsi, mikroprosesor akan menghentikan dahulu apa yang sedang dikerjakannya dan mengerjakan
permintaan khusus tersebut
Tidak ada komentar:
Posting Komentar