PWM DAN ADC
- Memahami prinsip kerja PWM pada
mikrokontroler
- Memahami prinsip kerja ADC pada
mikrokontroler
- Menggunakan PWM dan ADC pada
Arduino
2.Alat dan Bahan [Kembali]
- Modul Arduino
- Motor DC
- LM35
3.Dasar Teori [Kembali]
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 (%).
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 juga dengan “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.
Gambar 2.4. 1 Siklus Sinyal PWM pada
Arduino
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 pada Arduino Uno). Fungsi untuk mengambil
data sinyal input analog menggunakan analogRead(pin);
2.4.3 Arduino
Arduino adalah kit elektronik atau papan rangkaian elektronik open source yang di dalamnya terdapat komponen utama yaitu sebuah chip mikrokontroler dengan jenis AVR dari perusahaan Atmel. Arduino yang kita gunakan dalam praktikum ini adalah Arduino Uno yang menggunakan chip AVR ATmega 328P. Dalam memprogram Arduino, kita bisa menggunakan komunikasi serial agar Arduino dapat berhubungan dengan komputer ataupun perangkat lain.
Adapun spesifikasi dari Arduino Uno ini adalah sebagai
berikut :
Gambar 2.4. 2 Arduino Uno
Microcontroller
ATmega328P |
Operating Voltage 5 V |
Input Voltage (recommended) 7 – 12 V |
Input Voltage (limit) 6 – 20 V |
Digital I/O Pins 14
(of which 6 provide PWM output) |
PWM Digital I/O Pins 6 |
Analog Input Pins 6 |
DC Current per I/O Pin 20 mA |
DC Current for 3.3V Pin 50 mA |
Flash Memory
32 KB of which 0.5 KB used by bootloader |
SRAM 2 KB |
EEPROM
1 KB |
Clock Speed
16 MHz |
BAGIAN-BAGIAN
ARDUINO UNO
POWER USB
Digunakan untuk menghubungkan Papan Arduino
dengan komputer lewat koneksi USB.
Supply atau sumber listrik untuk Arduino dengan tipe Jack. Input DC 5
- 12 V.
Crystal Oscillator
Kristal ini digunakan sebagai layaknya detak jantung pada Arduino.
Jumlah cetak menunjukkan 16000 atau 16000 kHz, atau 16 MHz.
Reset
Digunakan untuk mengulang program Arduino dari awal atau Reset.
Digital Pins I / O
Papan Arduino UNO memiliki 14 Digital Pin. Berfungsi untuk memberikan
nilai logika ( 0 atau 1 ). Pin berlabel " ~ "
adalah pin-pin PWM ( Pulse Width Modulation ) yang dapat
digunakan untuk menghasilkan PWM.
Analog Pins
Papan Arduino UNO memiliki 6 pin analog A0 sampai A5. Digunakan untuk
membaca sinyal atau sensor analog seperti sensor jarak, suhu dsb, dan mengubahnya
menjadi nilai digital.
LED Power Indicator
Lampu ini akan menyala dan menandakan Papan Arduino mendapatkan supply listrik
dengan baik.
4.Percobaan [Kembali]