Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

controlling an AC heater using PIC ?

Status
Not open for further replies.

zika1212

New Member
i'm controlling an 1000 W AC heater (just an element heater) with 220 V 50-60 Hz, using PIC 16F876 and interfacing using MOC3041 (opto-coupled triac) with built in zero crossing for sinchronizing , in programming i'm using "burst fire" technique to control the power of the heater proportionally by controlling the no. of ON cycles over a period of time (cycle time), what is the best cycle time to use to control the heater ??
 
0% - it saves all energy and simple to control (just unplug it) :wink:
 
If you use 255 cycles as your burst period you get 8 bits of resolution - convenient for the PIC. I don't see any particular reason to go slower. If the element ends up heating and cooling significantly in that period you might want to speed up the period to minimise stress on the element - less thermal cycling.
 
I would suggest using timer1 and ccp module. This is really simple and also effective.

Without any prescalars timer1 should give you about 13 ms until it overflows, provided your pic runs at 20MHz. This is much better then using timer0 which overflows much before 8.33 msec. Personally, I think that it is more efficient in this case to use a ccp/ timer1 software interrupt rather than reloading timer1 or timer0.

Also, I would suggest that for a heater design it is convenient to keep your firing angle in the range of 30 deg to 150 deg. This will ensure that you don't fire too close to the zero crossing and accidently commutate the triac.
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top