JOB 7
Di susun oleh:
Di Susun Oleh :
Nama : Taufiq Saputra
Nim : 18642014
Kelas : D4-6A
I. Tujuan :
1. Mengetahui tujuan penggunaan Pulse Width Modulation (PWM)
2. Mengetahui cara mengatur duty cycle PWM.
3. Mengetahui cara mengendalikan kecepatan putar motor DC dengan PWM.
II. Teori :
Walaupun dilengkapi dengan pin-pin analog, pin-pin yang terdapat papan
sirkuit (circuit board) Arduino, termasuk jenis Uno, ini hanya dapat digunakan
sebagai pin masukan saja. Sehingga untuk mendapatkan tegangan keluaran yang
serupa dengan tegangan analog digunakanlah metode pulse width modulation (PWM).
Seperti yang ditunjukkan dalam Gambar 1, papan sirkuit Arduino Uno dilengkapi
dengan enam buah pin yang dapat digunakan sebagai keluaran PWM.
Gambar 1. Enam buah pin keluaran PWM pada board Arduino Uno
Sumber: components101.com
PWM adalah suatu teknik menghasilkan nilai analog dari sinyal digital. Dari
sinyal digital yang hanya mempunyai dua level (High dan Low, 5V dan 0 V), nilai
tegangan analog dapat diperoleh dengan cara mengatur lebar pulsa yang dikeluarkan
oleh sinyal digital. Jika suatu sistem digital mempunyai level tegangan 0 dan 5V dan
pulsa keluarannya mempunyai periode sebesar T seperti ditunjukkan dalam Gambar
2, maka dengan mengatur nilai duty cycle pulsa, tegangan keluaran dapat diubah-ubah
dari 0 hingga 5V. Sebagai contoh, duty cycle 0 %, 25 %, 50 %, 75 %, serta 100 %,
masing-masing akan menghasilkan tegangan sekitar 0, 1.25, 2.5, 3.75 dan 5 V.
8. Berdasarkan Tabel 1, jelaskan hubungan antara duty cycle PWM dan tegangan
keluaran.
9. Berdasarkan Tabel 1, jelaskan hubungan antara duty cycle PWM dengan
kecepatan motor
10. Set PWM pada 100 %, jalankan program. Saat motor berputar ubah-ubahlah nilai
duty cycle untuk mendapatkan kececepatan motor paling pelan. Berapakah nilai
duty cycle, tegangan, dan kecepatan putarnya.
11. Set PWM pada 0 %, jalankan program. Saat motor berputar ubah-ubahlah nilai
duty cycle untuk mendapatkan kececepatan motor paling pelan. Berapakah nilai
duty cycle, tegangan, dan kecepatan putarnya. Bandingkan hasil percobaan ini
dengan hasil pada no 10.
12. Tambahkan potentiometer 50 kΩ sebagai input. Hubungkan terminal
potentiometer, masing-masing pada pin 5V, A0, dan GND.
13. Buat tambahan program di mana putaran pada potentiometer dapat mengubah
kecepatan putar motor.
51 25 0,967 390,3
25.5 10 0,478 64,80
0 0 0,33 0
8. Berdasarkan Tabel 1, Jelaskan hubungan antara duty cycle PWM dan tegangan
keluaran.
Dari data hasil percobaan pada tabel 1 didapatkan hasil seperti tabel diatas,
Hubungan antara Duty Cycle PWM dengan Tegangan Keluaran adalah semakin
besar nilai Duty Cycle maka semakin besar pula Tegangan Keluar yang
dihasilkan. Sebaliknya, semakin kecil nilai Duty Cycle maka semakin kecil pula
Tegangan Keluar yang dihasilkan.
Bila diberikan dutyCode 255, maka duty cycle yang dihasilkan adalah
100% , dan tegangan keluaran yang dihasilkan adalah 4,8 V.
Bila diberikan dutyCode 153, maka duty cycle yang dihasilkan adalah
75% , dan tegangan keluaran yang dihasilkan adalah 2,9 V.
Bila diberikan dutyCode 51, maka duty cycle yang dihasilkan adalah 25%
, dan tegangan keluaran yang dihasilkan adalah 0,967 V.
Bila diberikan dutyCode 25,5, maka duty cycle yang dihasilkan adalah
10% , dan tegangan keluaran yang dihasilkan adalah 0,478 V.
Bila diberikan dutyCode 0, maka duty cycle yang dihasilkan adalah 0% ,
dan tegangan keluaran yang dihasilkan adalah 0,33 V.
10. Set PWM pada 100 %, jalankan program. Saat motor berputar ubah-ubahlah nilai
duty cycle untuk mendapatkan kecapatan motor paling pelan. Berapakah nilai
duty cycle, tegangan, dan kecepatan putarnya ?
Setingan PWM pada 100% dengan mengubah nilai duty cycle untuk
mendapatkan kecepatan motor paling pelan maka didapat data sebagai berikut
dutyCode = 23
duty cycle = 9,12%
Tegangan = 0,456 V
Kecepatan Motor = 55,18 rpm
11. Set PWM pada 0 %, jalankan program. Saat motor berputar ubah-ubahlah nilai
duty cycle untuk mendapatkan kececepatan motor paling pelan. Berapakah nilai
duty cycle, tegangan, dan kecepatan putarnya. Bandingkan hasil percobaan ini
dengan hasil pada no 10 ?
Setingan PWM pada 0% dengan mengubah nilai duty cycle untuk
mendapatkan kecepatan motor paling pelan maka didapat data sebagai berikut
dutyCode = 89
duty cycle = 35%
Tegangan = 1,8 V
Kecepatan Motor = 719,6 rpm
Pada percobaan 11 nilai duty cycle yang di set untuk mendapatkan kecepatan
motor paling pelan lebih tinggi dari pada nilai duty cycle yang di set pada
percobaan 10, karena pada awal percobaan 11 PWM di set 0% sehingga
membutuhkan tegangan 1,8 V untuk dapat menjalankan motor dengan kecepatan
paling pelan sebesar 719,6 rpm, sedangkan pada awal percobaan 10 PWM di set
100% sehingga membutuhkan tegangan 0,456 V dan mendapatkan kecepatan
paling pelan sebesar 55,18 rpm. Perbedaan nilai ini dikarenakan set PWM pada
starting yang berbeda.
13. Buat tambahan program di mana putaran pada potentiometer dapat mengubah
kecepatan putar motor.
int outPwm = 9; // the PWM pin the motor is attached
int dutyCode = 225; // from 0 to 225
int pinPot = A0;
int nilai;
// the setup rountine runs once when you press reset:
void setup(){
//declare pin 9 to be an output:
pinMode (pinPot, INPUT);
pinMode (outPwm, OUTPUT);
}
VI. Kesimpulan :
1. Dari percobaan di atas diperoleh kesimpulan bahwa semakin besar nilai PWM
maka RPM motor DC juga akan semakin besar, dan semakin besar nlai PWM
yang diberikan, maka nilai duty cycle yang dihasilkan juga akan semakin besar.
2. Nilai terendah PWM adalah 25,5 dengan duty cycle 10% dan nilai tertinggi PWM
adalah 255 dengan duty cycle 100%.
3. PWM (Pulse Width Modulation) digunakan untuk memanipulasi keluaran digital
sedemikian rupa sehingga menghasilkan sinyal analog.
4. Pada duty cycle terlihat bahwa semakin besar duty cycle maka tegangan yang
masuk ke motor