output PWM

Cara menggunakan PIN PWM di arduino

Posted on

kali ini saya akan share tentang bagaimana cara menggunakan PIN PWM di arduino.jadi di tutorial ini saya akan mempraktekan bagaimana memanfaatkan PMW in untuk mengotrol kecepatan motor.

tapi sebelum saya membahas lebih detil bagaimana cara implementasinya saya sarankan anda membaca dulu tentang PWM ( Pulse Width Modulation).

selain itu saya sarankan juga membaca terlebih dulu tentang bagaimana cara membaca data analog di arduino.

saya harapkan setelah membaca 2 materi diatas akan membantu anda untuk memahami pembahasan pada materi kali ini.

PWM ( Pulse width modulation ) ini adalah salah satu teknik untuk memodulasi lebar dari pulsa untuk mendapatkan hasil output sesuai dengan keinginan kita.

misalnya kita mempunyai sinyal tegang 12V DC tetapi sayang menginginkan output tegangnya adalah 6V DC, maka untuk mengatasi permasalah tersebut saya akan menggunakan PWM.

jadi dengan tegangan 12V sebagai input dan saya menginginkan tegangan ouputnya hanya 6V, maka saya akan mengatur duty cycle dari PMW yang akan saya gunakan.

jadi disini nanti saya akan mendesain PWM dengan Tegangan input 12V kemudian tegangan output 6V dengan duty cycle sebesar 50%.

pada tutorial kali ini saya akan menjelaskan secara detail tentang sinyal PMW di arduino, tetapi untuk memahai lebih detil tentang aplikasi PWM ini silahkan membaca cara mengatur kecepatan motor DC menggunakan Arduino.

Cara menggunakan pin PWM di arduino

  • silahkan download source code cara mengontrol kecepatan motor DC dengan arduino
  • untuk pertama kalinya anda harus paham terlebih dahulu PIN mana saja yang digunakan untuk PWM di arduino
  • supaya lebih memahami pin PWM di arduino silahkan melihat gambar di bawah ini.dibawah adalah gambar pin arduino uno yang mana tand “~” merupakan pin PWMnya.
    PIN PWM arduino
  • berdasarkan gambar diatas ada tanda “~” atau yang berwarna hijau merupakan pin PWM di arduino UNO, jadi di arduino UNO ini adalah 5 PIN PWM.
  • jadi PIN PWM yang ada di arduino adalah :
  • pin # 3
  • pin # 5
  • pin # 6
  • pin # 9
  • pin # 10
  • pin # 11
  • dengan menggunakan pin pin diatas anda bisa membuat pulsa PWM sesuai dengan desain yang anda inginkan
  • jadi nanti desain simulasinya seperti pada gambar dibawah ini.
    PWM arduino
  • berdasarkan gambar diatas saya menggunakan sensor LDR dengan arduino UNO, kemudian saya menampilkan output PWM dari arduino UNO ke osiloskop
  • berikut ini adalah command untuk set output PWM
analogWrite(PWM_Pin, PWM_Value);
  • syntax diatas adalah analogwrite kemudian pin berapa yang anda pilih dari 5 pin PWM kemudian nilai PWMnya berapa.Range mulai dari 0-255
  • dimana ketika kita menulis di PMW_Value = 0 maka artinnya duty cycle yang kita inginkan 0% dan ketika kita menuliskan 255 maka duty cycle nya adalah 100%
  • berikut ini adalah source code yang harus anda upload di arduino boardnya

int PWMControl= 6;
int PWM_Input = A0;

int PWM_Value = 0;

void setup() {
pinMode(PWMControl, OUTPUT);
pinMode(PWM_Input, INPUT);
Serial.begin(9600);
}

void loop()
{
PWM_Value = analogRead(PWM_Input);
PWM_Value = map(PWM_Value, 0, 1023, 0, 255);
analogWrite(PWMControl, PWM_Value);
}
  • kemudian silahkan dicompile source code diatas selanjutnya jadikan file hex supaya bisa kita upload di arduino UNO board di proteus
  • jika di proteus anda belum ada arduino UNO silahkan download terlebih dahulu library arduino untuk proteus.
  • setelah semua panduan step by step anda lakukan maka nanti akan muncul tampilan seperti dibawah ini.
    output PWM
  • berdasarkan gambar diatas anda bisa melihat sinyal PWMnya di osiloskop kemudian anda juga bisa merubah nilai LDR.jika nilai LDR kita rubah maka otomatis pulsa PWM juga akan berubah.

demikian tutorial cara memanfaat PIN PWM di arduino UNO untuk membangkitkan sinyal PWM.untuk tutorial selanjutnya ada bisa mencoba juga bagaimana cara mengontrol kecepatan motor menggunakan arduino.

Gravatar Image
Assalamualaikum,Saya Wasis saat ini tinggal di surabaya dan sebagai lecturer di salah satu politeknik negeri bidang energi, selain sebagai lecturer saya mengelola beberapa blog serta menyukai digital marketing, seo dan IT. email : [email protected]

Leave a Reply

Your email address will not be published. Required fields are marked *