raghurocks
Member level 1
- Joined
- Jul 3, 2012
- Messages
- 33
- Helped
- 2
- Reputation
- 4
- Reaction score
- 0
- Trophy points
- 1,286
- Location
- India,Gujarat
- Activity points
- 1,568
Hai Everyone,
I have been working under I have been working under dimming of ac loads using the microcontroller .
The concept I am using is the based upon the basic operation of the triac, as once the gate of the triac gets the trigger it will be on for next zero cross
so for this I have taken a basic zero cross detection circuit where it detect the every zero crossing so this output is given to the one of the interrupt pin of the microcontroller and I have done the coding like after it detects the zero cross that is from the external interrupt it waits for some time (delay time) which indulge in the delay angle which inturn changes the conduction angle of the triac and so the output voltage so this delay time can be varied to change the brightness as the rms output voltage will be varied I have change this delay time or the delay angle into 16 levels where the brightness is also varied in 16 levels so far I think I am clear........... Any suggestions in the concept are appreciated .......
Basing on this I have written the interrupt routine to give some amount of delay basing on the level (this level is determined from the input it get from the port p1 of the microcontroller where I used 4 switches connected to the p1.0,p1.1,p1.2,p1.3 that is if all the switches are on then the level will be 1111 that is 0x0F so for this there will be different delay time or delay angle like wise the levels will be from 0x00 to 0x0F which inturn should vary the brightness) I think I am clear with the input how the microcontroller gets 16 different levels of input and how it it will vary different levels of delay angle........ Any doubt can be expressed
Coming to the triac output section it consists of the basic application circuit from the application note with a snubber network .
The tricky part included in this is I am getting the output exactly as I desire in the Proteus emulator but I don't know why I am not getting the desired output in the hardware
Any explanations or suggestions or clarification are appreciated
Thanks in advance
Raghu
I have been working under I have been working under dimming of ac loads using the microcontroller .
The concept I am using is the based upon the basic operation of the triac, as once the gate of the triac gets the trigger it will be on for next zero cross
so for this I have taken a basic zero cross detection circuit where it detect the every zero crossing so this output is given to the one of the interrupt pin of the microcontroller and I have done the coding like after it detects the zero cross that is from the external interrupt it waits for some time (delay time) which indulge in the delay angle which inturn changes the conduction angle of the triac and so the output voltage so this delay time can be varied to change the brightness as the rms output voltage will be varied I have change this delay time or the delay angle into 16 levels where the brightness is also varied in 16 levels so far I think I am clear........... Any suggestions in the concept are appreciated .......
Basing on this I have written the interrupt routine to give some amount of delay basing on the level (this level is determined from the input it get from the port p1 of the microcontroller where I used 4 switches connected to the p1.0,p1.1,p1.2,p1.3 that is if all the switches are on then the level will be 1111 that is 0x0F so for this there will be different delay time or delay angle like wise the levels will be from 0x00 to 0x0F which inturn should vary the brightness) I think I am clear with the input how the microcontroller gets 16 different levels of input and how it it will vary different levels of delay angle........ Any doubt can be expressed
Coming to the triac output section it consists of the basic application circuit from the application note with a snubber network .
The tricky part included in this is I am getting the output exactly as I desire in the Proteus emulator but I don't know why I am not getting the desired output in the hardware
Any explanations or suggestions or clarification are appreciated
Thanks in advance
Raghu