Motor,PWM,Rotation Clock/Anticlockwise



Motor  adalah sebahagian daripada output..macam2  jenis motor de..tp yang paling senang kita nk belajar adalah dc motor..
PWM atau nama panjangnya pulse width modulation..fungsinye die bagi pulse kepada kaki CCP PIC (pin 16/17) untuk mengawal duty cycle yg kita mahukan senang paham pulse untuk mengawal kelajuan pada dc motor yg kita gunakan pon boleh gak..
(nota:Untuk mengawal PWM motor cuma Pin "CCP1" dan "CCP2" daripada PIC shaja boleh digunakan)


                                  
                                                               DC motor





Cara mengira duty cycle:-




untuk pergerakkan clockwise dan anticlockwise motor kita juga memerlukan  driver  untuk memgawalnya..kelebihan bila kita mengunakan driver ni kita bleh kawal kelajuan motor dgn menghantar duty cycle kt driver ni nti..driver tuk dc motor yg biasa org pakai L293..L293 ade 16 kaki smuanya..tngok pin kt bwh ni..


Penerangan sikit
1,9-->pwm motor1/motor2  ke pic (ccp1/ccp2=pin 16/17 pic)
2,7,10,15-->kaki input ke pic
4,5,12,13-->ground
3,6,11,14-->output/motor
Vc-->5volt untuk hidupkan driver
Vss-->volt untuk output/motor



Contoh program:-

 

#include <18F4550.h> // PIC18F4550 HEADER FILE
#fuses XT,NOWDT,NOLVP,NOPROTECT
#use delay (clock=4M)

#define depan PIN_B0 //  BUTTON 1
#define belakang PIN_B1 //  BUTTON 2
#define stop PIN_B2 //  BUTTON 3

#define motor1 PIN_D0// kedepan
#define motor2 PIN_D1 // kebelakang
#define motor3 PIN_D3// kedepan
#define motor4 PIN_D4 //kebelakang

void main()
{
setup_timer_2(T2_DIV_BY_4,254,1);
setup_ccp1(ccp_pwm);
setup_ccp2(ccp_pwm);

while(TRUE)
{
if (!input(depan))
{
output_high(motor1);
output_low(motor2);
output_high(motor3);
output_low(motor4);
set_pwm1_duty(50);
set_pwm2_duty(150);
}
else if(!input(belakang))
{
output_low(motor1);
output_high(motor2);
output_low(motor3);
output_high(motor4);
set_pwm1_duty(50);
set_pwm2_duty(100);
}
else if(!input(stop))
{
output_low(motor1);
output_low(motor2);
output_low(motor3);
output_low(motor4);
set_pwm1_duty(0);
set_pwm2_duty(0);
}
}
}



Masa first kita run simulation:-


Pas2 bila kita tekan button1 atau 2..ngk pulse die gerak ikut duty cycle:-




Bila kita tekan button3 atau stop button die akan jadi cmni:-






Popular posts from this blog

Relay

Pendahuluan: Proteus simulasi yg berguna

Electronic component:Resistor