PDA

View Full Version : 3 Phase Angle Control



BobEdge
- 16th February 2005, 09:40
Hi All,

Anyone have any experience of using just one pic for 3 phase phase angle firing. I know i need to detect the zero crossing points, sort out what order the phases are in, and then fire the appropriate thyristor (six thyristors in all). I am using 50Hz at the minute but will need it to work on 60Hz too, auto detecting frequency is even better
It all seems a little daunting at the moment, but i know it can be done.
Thank you in anticipation

Kind regards

Bob

pramodsinha
- 5th February 2006, 14:31
Hi All,

Anyone have any experience of using just one pic for 3 phase phase angle firing. I know i need to detect the zero crossing points, sort out what order the phases are in, and then fire the appropriate thyristor (six thyristors in all). I am using 50Hz at the minute but will need it to work on 60Hz too, auto detecting frequency is even better
It all seems a little daunting at the moment, but i know it can be done.
Thank you in anticipation

Kind regards

Bob
Dear bob
i am also trying to do the same thing but unable to do in software.
If you need any theoritical explanation i can help but trying to do in pbp not succeeded till now
thanks
pramod

niall
- 14th February 2006, 18:03
Hi All,

This wouldn't have anything to do with active regeneration/braking(for DC servo motor drives) - would it? Wrote my electronics degree dissertation on this if I can be of any help. Decided not to use a PIC (but did write some code). A PLL and a CPLD is a much neater and less time consuming solution than a microcontroller, (spent many, many hours of development on this :)) but I'll try and dig the code out for you if you would like. let me know what you think, may also be able to provide you with some documentation regarding firing angles etc. and development notes if they help

Neil

ardhuru
- 15th February 2006, 13:26
Hi Neil,

After you fire one phase, can you not just fire the second and the third after a delay of 3.33 ms and 6.67 ms respectively (for 50 hz)?

The delays would change proportionately for 60 hz, of course.

I have not tried this, but in a different context, this is what all X10 transmitters do to ensure that *all* three phases receive a signal during their own zero crossing.

Regards,

Anand

niall
- 16th February 2006, 10:41
Hi there,

Yes you can do that, however if there is any slight phase shift in any of the three phases, the crossover angles (and hence the timing!)will change. This is the biggest problem with using just timing to fire the thyristors in the inverter. The easiest way to ensure that this does not happen is to use a PLL (phased locked loop - a lot easier than you might think!) synchronised with phase AB (ph C can be derived mathematically so don't need to worry about this and we can add some dead-time to allow for any phase shift) thus ensuring any phase shift can be detected.

The beauty of a PLL is that it does not matter what the input frequency is as all you are doing is detecting the crossover angles and syncing with them (you can use an analogue comparator to do this with about 3/4 discrete components. Use the PIC to count output pulses of the comparator and then fire your thyristors! And hey presto active braking/regen!

Let me know if this is of any help, if you require more in-depth info just say so and I can provide timing diagrams and I could probably put a simple circuit diagram together, I will however need to know what its application is so that I can implement some extra protection in the way of delays etc. for you.

There are other simpler PIC only ways of doing it by detecting the frequency of ph AB and just timing it, but these are scary if you are dealing with high-voltages.

Neil

sougata
- 17th February 2006, 07:19
Hi,

By measuring the period between one zero cross to other it is possible to to get the frequency of the input frequency. If you are turning off the TRIACS/SCR while a zero cross occurs then there should be no problem. All you need is a timer locked to the first AC input (R) and have some pseudo timers running in software which gets reset at zero cross signals from the other sources (You need 3 interrupt sources). The only problem is that with a 8 bit timer you get a low resolution. With one 16 bit and 2 virtual 16 bit counters the process is further complicated. I posted a thread (I do not remember now) for dimming various channel with a PIC16F84. It was not tested by me and basically an adaption of my big brother program. It is heavily commented and might help out in your algo design.

My suggestions are :

1. Strictly asm interrupts
2. High Priority 18F interrupt vector
3. High Oscillator speed (I use x4 PLL @ 10 MHz with 18F452 )

My design is a commercial one and cannot share the code thus. However always willing to help out (within my scope of little knowledge).

I have the habbit of looking into the PRO forum only so overlooked this thread.

BTW Pramod I lost your telephone number. One of my partner is right now in Delhi for some component purchase and needs your assistance. Please drop me a private mail or to my regular email with your Phone No.

Thanks and Regards

Sougata

oldtoddler
- 26th February 2006, 07:51
Why don't u simply use optoisolator like MOC3063? it's zero crossing triac driver and I have used few thousands of those without any problems... and they cost about 1eur@farnell.. If u are after power adjusting, then thyristors are not a proper componets due RF-noice.. IMHO..
/MRa

dukea84
- 11th May 2010, 07:55
Hi! I have a question for the same problem..
I'm using 3 zero crossing detector with 3 optoisolators..
The problem is that the load of the motor is an inductive type and the triac stops at the zero current...that is not the zero voltage.
I think that the solution could be starting the firing angle at the shift current phase..

Any suggest?
Thanks.

mark_s
- 12th May 2010, 17:09
Hi! I have a question for the same problem..
I'm using 3 zero crossing detector with 3 optoisolators..
The problem is that the load of the motor is an inductive type and the triac stops at the zero current...that is not the zero voltage.
I think that the solution could be starting the firing angle at the shift current phase..

Any suggest?
Thanks.

Take a look at the data sheet for the PIC18F2331, specifically "motion feedback module". It has three capture inputs and the chip also has power control PWM outputs. The Microchip site as many motor control app notes. Keep us posted on your results

Mark

sougata
- 12th May 2010, 21:06
Hi,

You can use two reverse connected SCRs with two gate drivers (common feed) for switching inductive loads.

dukea84
- 13th May 2010, 08:04
Thanks for yours answers..but I am confused anyway..

@sougata: do u think that use 2 scr and not 1 triac for any phase improve the load controller? why? In that way I need 6 pwm output (instead of only 3).

@mark_s: I'm reading "motion feedback module" section and it's really interesting. The problem is that my pic input are three zero crossing phase and I would like control inductive load (like motors) with different phase displacement.

sougata
- 13th May 2010, 08:49
Hi,

Triacs commute at the zero cross. However due to current lag the voltage zero cross and the current zero cross do not coincide. So the other half part of the triac can come into conduction thus phase angle control is not achieved. If you use a 1:1:1 pulse transformer then the firing signal is fed to the pulse transformer. You can AND a logic drive with a 10 KHz PWM of 10%-25% duty to derive the final driving signal for the PulseTr. The two isolated windings then serve the purpose of firing to Anti-Parallel connected SCRs. So you need 3 drive signals only and not six.