shanmugapriyap
Newbie level 3
Hi
I tried to control the speed of Ceiling fan using triac. The speed was controlled but I got a noise in fan at all speeds.
I tried in many ways but no improvement in noise reduction.
Are there any alternative methods for TRIAC speed control with zero noise.
I have used PIC16F877A for speed control using triac.
I have attached the code and circuit dagram that i have tried for your reference.
I tried to control the speed of Ceiling fan using triac. The speed was controlled but I got a noise in fan at all speeds.
I tried in many ways but no improvement in noise reduction.
Are there any alternative methods for TRIAC speed control with zero noise.
I have used PIC16F877A for speed control using triac.
I have attached the code and circuit dagram that i have tried for your reference.
Code:
void interrupt ISR()
{
if (INTCONbits.INTF)
{
ZC = 1; //zc RB0(external interrupt) pin
INTCONbits.INTF = 0;
}
}
void main()
{
long temp=0;
TRISB = 0x01; //RB0 input for interrupt
TRISD = 0; //PORTD all output
OPTION_REGbits.INTEDG = 0; //interrupt falling edge
INTCONbits.INTF = 0; //clear interrupt flag
INTCONbits.INTE = 1; //enable extrn interrupt
INTCONbits.GIE = 1; //enable global interrupt
while (1)
{
if(temp>=40000)
{
temp=0;
dimming=dimming+50;
if(dimming>=120)
{
dimming=0;
}
}
temp++;
if (ZC)
{
delay(dimming);
PORTDbits.RD0 = 1; //Send a pulse
__delay_us(250);
PORTDbits.RD0 = 0;
ZC = 0;
}
}
}
void delay(int maal)
{
for (x=1; x< maal; x++)
{
__delay_us(50); // 65 for 60Hz
}
}