Selasa, 28 Mei 2024

PWM UNTUK MOTOR DC

 Haloo Semua Apa Kabar ??

Pada Kesempatan Kali ini Kita akan membahas tentang PWM ( Pulse Width Modulation) Nah PWM ini Adalah sebuah cara Untuk Membuat Analog Output . PWM ini Biasa di pakai Untuk Proyek proyek Elektro yang menggunakan Motor DC, Motor Stepper , Motor Servo dan juga Lampu sebagai fungsi Dimmer. 

PWM dalam Hal ini adalah merubah Gelombang Kotak PWM untuk Mendapatkan kecepatan pada motor dan Nyala lampu yg tepat sesuai dengan yang kita Inginkan.

PWM terdiri dari Nilai 0 sampai dengan 255, Maka untuk menetukan kecepatan dan nyala yg tepat kita perlu mengatur Gelombang Kotak  PWM . Untuk Lebih Jelasnya Kita bisa lihat diagram berikut ini 

Pada Arduino IDE untuk membuat Fungsi PWM  Maka cukup Kita Tulis 

void Setup(){

pinMode(No pin, OUTPUT);

}

void loop (){

analogWrite( No Pin, No PWM);//Contoh (9,255); maka Kita sudah Bisa membuat Gelombak kotak PWM ini. 

Picture from google
Pada Gambar di atas adalah Bentuk dan beberapa contoh Gelombang PWM Yaitu 0,20,50,75&100%
Setelah Mengerti tentang PWM maka kita akan membuat sebuah Proyek Elektronik dengan menggunakan PWM . dan akan kita simulasikan di Proteus. 
kita awalai dengan membuat sebuah Coding Atau source code PWM ini. di mana kita asumsikan kita mempunyai sebuah Motor Listrik yang akan kita buat sebuah Penggerak kendaraan , Kita simbolkan dengan Tombol Yang akan mewakili Sebuah kecepatan . 

const int pb1=7;
const int pb2=6;
const int pb3=5;
const int pb4=4;
const int pb5=3;
int pb1State=0;
int pb2State=0;
int pb3State=0;
int pb4State=0;
int pb5State=0;



void setup() {
pinMode(9,OUTPUT);
pinMode(10,OUTPUT);
pinMode(pb1,INPUT);
pinMode(pb2,INPUT);
pinMode(pb3,INPUT);
pinMode(pb4,INPUT);
pinMode(pb5,INPUT);



}
void kec1(){
  digitalWrite(9,LOW);
  analogWrite(10,50);
}
void kec2(){
  digitalWrite(9,LOW);
  analogWrite(10,95);
}
void kec3(){
  digitalWrite(9,LOW);
  analogWrite(10,150);
}
void kec4(){
  digitalWrite(9,LOW);
  analogWrite(10,255);
}

void netral(){
  digitalWrite(9,LOW);
  analogWrite(10,0); 
}

void mundur(){
 digitalWrite(10,LOW);
  analogWrite(9,50);  
}

void loop() {
pb1State=digitalRead (pb1);
pb2State=digitalRead (pb2);
pb3State=digitalRead (pb3);
pb4State=digitalRead (pb4);
pb5State=digitalRead (pb5);

if(pb1State==HIGH){

  kec3();
  delay(1000);
}
else if(pb2State==HIGH){
  kec2();
  delay(1000);
}
else if(pb3State==HIGH){
  kec1();
  delay(1000);
}
else if(pb4State==HIGH){
  mundur();
  
}
else if(pb5State==HIGH){
  kec4();
  delay(1000); 
}
else{
  netral();
}

}
Download Source code :
https://drive.google.com/file/d/1LCjfjazeD0Xqt-kqwE2OqtbAyqNh9CVn/view?usp=sharing

Setelah di Compile Program selesai Tempelkan di Proteus Yang Kita buat sebelumnya. maka hasilnya akan seperti Di bawah ini.


Cobalah Untuk merubah Program arduino IDE dan silahkan di coba sampai bisa seperti yang kau Harapkan. 
Jika masih ada yang kurang jelas dengan apa yg kami sampaikan ,bisa lihat video Tutorialnya ya 
Agar tidak Bingung. 





Terima Kasih 
=======================================================================
DDC OFFICIAL 
Dudu Sinten Sinten 
Agriculture, Electronc Tutorial & Event Repot. 
===========================================================================


0 komentar:

Posting Komentar