Author Topic: Universal motor control, best solution?  (Read 45026 times)

0 Members and 4 Guests are viewing this topic.

Online Zero999

  • Super Contributor
  • ***
  • Posts: 19798
  • Country: gb
  • 0999
Re: Universal motor control, best solution?
« Reply #25 on: December 16, 2013, 05:07:53 pm »
Hero999:  120VAC has a rectified peak rectified value of 1.414 * 120V and 240 VAC develops 341 VDC rectified and filtered, twice that of 120VAC. Do the math. PWM does not change the peak amplitude applied to the motor, only the duty cycle. Brushes will arc and fires will start.
You didn't read my post properly. I'm talking about using unfiltered DC which has the same RMS voltage as AC. This situation will be no worse than using phase control on 240V with a 120V motor.
 

Offline Paul Price

  • Super Contributor
  • ***
  • Posts: 1433
Re: Universal motor control, best solution?
« Reply #26 on: December 16, 2013, 05:28:30 pm »
Hero999:

Yes it is worse, because with phase control, (as I have already stated in previous replies) I can limit the voltage applied to the motor to never exceed 120VAC peak values, while unfiltered 240V rectified still applies the peak portion of the sinewave, 340VDC  to a 120VAC motor, causing the windings to saturate and also cause arc-over on the armature.
« Last Edit: December 16, 2013, 05:32:02 pm by Paul Price »
 

Offline Kremmen

  • Super Contributor
  • ***
  • Posts: 1289
  • Country: fi
Re: Universal motor control, best solution?
« Reply #27 on: December 16, 2013, 05:46:08 pm »
Only if the motor actually fails right away from the voltage is there an immediate problem. But in that case both phase control and pwm control are suspicious because both can fail unsafe. Other than that there is no problem in controlling the motor current with either method (which is the usual suspect for overloading).
It would of course be straightforward to smooth a pwm output using an LC filter but then the complexity starts to build. At some point it is a flip of the coin which is the more complex and excactly in what regard.
Nothing sings like a kilovolt.
Dr W. Bishop
 

Online Zero999

  • Super Contributor
  • ***
  • Posts: 19798
  • Country: gb
  • 0999
Re: Universal motor control, best solution?
« Reply #28 on: December 16, 2013, 05:52:17 pm »
Hero999:

Yes it is worse, because with phase control, (as I have already stated in previous replies) I can limit the voltage applied to the motor to never exceed 120VAC peak values, while unfiltered 240V rectified still applies the peak portion of the sinewave, 340VDC  to a 120VAC motor, causing the windings to saturate and also cause arc-over on the armature.
I don't see how you can do that and still get the full power output from the motor. If you run it off 240V and set the phase angle so the maximum peak voltage is 170V, you won't get the same power output as you would on 120VAC because the RMS voltage will be lower.

Still I don't see how a peak voltage of 340V would be a problem. It shouldn't damage the insulation as the gaps in the commutator normally arch over anyway. When the motor is spinning there will be back EMF generated to limit the current so it shouldn't cause core saturation. You may have a point about more arching shortening the life of the brushes and the commutator though.

As for MCU lockup with an active high trigger, that is why MCU watchdog timers are used to failsafe program code.  I have never seen my MCU circuit lock up with proper shielding, using the built-in MCU watchdog timer,  and using a well-filtered power 5V power supply, so I have not ever experienced MCU lockup problems, but the overly paranoid can always add a single 555 one-shot to buffer the Triac trigger MCU output control pin to limit pulse width to 1mSec.

Either way, you do need to protect the motor, even if you're not using an MCU, semiconductor switches have a nasty habit of failing closed.

Only if the motor actually fails right away from the voltage is there an immediate problem. But in that case both phase control and pwm control are suspicious because both can fail unsafe. Other than that there is no problem in controlling the motor current with either method (which is the usual suspect for overloading).
It would of course be straightforward to smooth a pwm output using an LC filter but then the complexity starts to build. At some point it is a flip of the coin which is the more complex and excactly in what regard.
Yes I don't see the point of saying one way is the only way to go.
« Last Edit: December 16, 2013, 06:09:45 pm by Hero999 »
 

Offline NikWingTopic starter

  • Regular Contributor
  • *
  • Posts: 141
  • Country: de
Re: Universal motor control, best solution?
« Reply #29 on: December 16, 2013, 07:51:26 pm »
wow, lotsa postings :)

now I'm a little more puzzled than before :D
the motor is a 230VAC motor and the circuit doesn't have to be too "simple".
I'd rather go the DC and PWM way because I currently don't know how to achive the 0-crossing part with MCU, especially since it's different @60Hz hmmm
AFAIK it's wait for 0-crossing, wait 8-10 ms, trigger triac ... the longer I wait, the lesser its speed, right?

it would be a little easier with PWM, I think ... get a value for RPM, change PWM signal accordingly depeding on RPM bigger or smaller than previous value

(before I've just controlled a small voltage DC motor using driver ICs (L298, L297) and a POT, but no speed sensing or MCU was involved, but IIRC it did sense the current)

 

Offline Paul Price

  • Super Contributor
  • ***
  • Posts: 1433
Re: Universal motor control, best solution?
« Reply #30 on: December 16, 2013, 08:24:45 pm »
NikWing: I have explained how to build a circuit to get a zero-crossing interrupt in my first and biggest description on how to do this. Please read and I can answer any questions you might have.

The half-period of 60-Hz is 8.33333 mSec  and so you would have the highest delay to trigger around 8 mSec for minimum power to be applied to the motor and you would decrease this delay time by software to increase power to the motor.
 

Offline NikWingTopic starter

  • Regular Contributor
  • *
  • Posts: 141
  • Country: de
Re: Universal motor control, best solution?
« Reply #31 on: December 19, 2013, 06:31:50 pm »
@Paul: the 0-crossing detector isn't a problem, but the firmware currently is :)
(I have sketches for measuring the mains frequency (that will be done only once at startup) and phase control, but I have to add reading the POT for speed setting and the hall sensor for RPM calculation, too.)
As far as I can tell right now the hall sensor is triggered by 2 magnets which are mounted on the (what's the right word?) cooling fan on the back side of the motor.
I can not tell for sure right now, but I guess this means 32000 interrupts per minute (or around 533 Hz), which shouldn't be a problem for the µC I guess.
Currently I'm not yet sure about the crystal frequency I have to use. Either internal 8MHz oscillator or a crystal with 16 MHz or 20 MHz ... whichever is better for the timers ...

after a 0-crossing I have to wait a moment, too, right? I somewhere read that it shouldn't be triggered immediately.

Well, I started with a fancy layout and then was told to reduce costs, lol
so now I have a smaller circuit, it's nearly done "on the paper". The new circuit is meant to replace an old one that uses a triac controlled by U211B.
This IC (and I guess every other phase angle motor controller IC) isn't available anymore. Neither the TDA2021 (or 2023?), nor the TDA1085 etc, it's all done with µC now ...

So to be able to write the firmware using the arduino IDE I selected the mega328 and made a tiny PSU using a 78M05 after a VIPer12, I'll have around 200mA@12V, enough room for the peripherals.
For 0-crossing detection AND mains frequency measurement I use a H11AA1 and to trigger the triac I use a MOC3023.
I hope both will work flawless on either 115V or 230V, I'll have to test that later, I use 2 47 kOhm 500mW resistors in series. At 265V (worst case) it's around 700mW power dissipation, if I didn't calculate it wrong.

I might be done with schematics tomorrow and I'll post them later for discussion :)

that's the current status of my project :)
« Last Edit: December 19, 2013, 06:34:19 pm by NikWing »
 

Offline Paul Price

  • Super Contributor
  • ***
  • Posts: 1433
Re: Universal motor control, best solution?
« Reply #32 on: December 20, 2013, 02:24:58 am »
NikWink:

The MOC3023 is rated at 400V max, so it would not be suitable for 240VAC operation, fine for 120VAC.

The faster the MCU clock, the better.  Your MCU would not be able to handle 32000/Sec tach IRQ's using a MCU running on a slow clock freq.

Are you sure you have a Hall Sensor tach mounted on the motor? Often a magnet-coil type of tach is used.
 

Offline NikWingTopic starter

  • Regular Contributor
  • *
  • Posts: 141
  • Country: de
Re: Universal motor control, best solution?
« Reply #33 on: December 20, 2013, 05:16:31 am »
Odd ...
found in the datasheet:
- Output Driver Designed for 220 Vac
typical 115/240 Vac(rms) applications: Interfacing Microprocessors to 115/240 Vac Peripherals, Motor Controls  :-//

it's 32000 per minute (or as I wrote around 533 Hz ... interrupts per sec)

yes, the hall sensor is mounted on the motor, it's a dedicated PCB at the back side of it
 

Offline Paul Price

  • Super Contributor
  • ***
  • Posts: 1433
Re: Universal motor control, best solution?
« Reply #34 on: December 20, 2013, 02:52:59 pm »
Sorry, my idea for speed control  with a MCU was expecting to see something like 10000-32000 IRQ's/sec to create precise timers for triggering and for monitoring speed control.

If you use the  MOC3023 for random Triac triggering with a Universal Motor, your triggering will in fact, be somewhat random.

Adding a tiny mains side power supply/optoisolator circuit for Triac triggering eliminates the random from random triggering in controlling the speed.

If a half-cycle of 60Hz AC mains power completes in just 8.333 mSec, and if you want to precisely control the Triac triggering delay point for phase control of motor speed, then how will you create a precise phase control trigger delay timer within that short window of triggering with your software scheme if you choose a slow MCU clock speed?
« Last Edit: December 20, 2013, 03:22:20 pm by Paul Price »
 

Online Zero999

  • Super Contributor
  • ***
  • Posts: 19798
  • Country: gb
  • 0999
Re: Universal motor control, best solution?
« Reply #35 on: December 20, 2013, 11:41:57 pm »
Or use an isolated MOSFET driver and PWM the DC.
 

Offline NikWingTopic starter

  • Regular Contributor
  • *
  • Posts: 141
  • Country: de
Re: Universal motor control, best solution?
« Reply #36 on: December 28, 2013, 09:03:42 pm »
hmhm, I'll see
I forgot my schematics at work, I would have posted them already -_-;  |O
so I'll do that in a few days instead ... lol
 

Offline NikWingTopic starter

  • Regular Contributor
  • *
  • Posts: 141
  • Country: de
Re: Universal motor control, best solution?
« Reply #37 on: January 05, 2014, 02:52:03 pm »
ok, so here are my current schematics

the crystal might be 20 MHz later
the arduino uno r3 board I use to test this project also runs with 16 MHz, that's why I've chosen 16, too, for now
« Last Edit: January 05, 2014, 02:54:09 pm by NikWing »
 

Offline NikWingTopic starter

  • Regular Contributor
  • *
  • Posts: 141
  • Country: de
Re: Universal motor control, best solution?
« Reply #38 on: January 10, 2014, 03:44:12 pm »
a 1st problem occurs ...
I soldered the VIPer12A circuit on a PCB, using the parts I found in the app sheet (and as seen in the schematics I posted, except that I replaced the 16V Zener diode with a 12V Zener)
I use a (is there a word for it?) isolated adjustable transformer to power the circuit.

first thing: it makes a little bzzzz noise while running (without load)

Then, the 100 nF/1kV capacitor sparkles (and dies) and the VIPer12A explodes ;D
but not everytime. It happened when I switched on the transformer @ 230V AC output, my guess is that it might have been while the wave/sine was peaking ...

currently I don't know what to do to avoid this, it's the circuit from the application sheet ...

beside that, I don't want to get rid of the 7805 yet, because it makes the generated 5V output stable compared to the simple Zener diode solution
 


Offline NikWingTopic starter

  • Regular Contributor
  • *
  • Posts: 141
  • Country: de
Re: Universal motor control, best solution?
« Reply #40 on: January 10, 2014, 10:10:48 pm »
that's way too expensive and too big, I have to make a PCB with given outline :)
that's the tricky part of this project ... lol
the real problem behind all of this is: the old phase control ICs are all unavailable, end of life, discontinued or whatever that's called
so I have to replace one of these ICs with a microcontroller (mega328), which costs about the same as the old IC.
but the µC needs 5V which I have to generate from a (AC) voltage between 110 and 265 V

that's why I took the VIPer12A and built one of the app sheet circuits with parts found in the app sheet and it's not doing what it should >_<

after the 5V power source is working as it should I'll move on to test the other parts of the circuit ... AC line frequency counter, zero-crossing detector triggered triac controller etc ...
« Last Edit: January 12, 2014, 01:50:27 pm by NikWing »
 

Offline oldway

  • Super Contributor
  • ***
  • !
  • Posts: 2172
Re: Universal motor control, best solution?
« Reply #41 on: January 11, 2014, 12:06:06 pm »
Quote
Then, the 100 nF/1kV capacitor sparkles (and dies) and the VIPer12A explodes
I don't understand what is the reason for using this capacitor.
It certainly go wrong because it became shorted, than apply the full 240V ac to the VIPER12A.
http://www.eetasia.com/ARTICLES/2002APR/2002APR08_ICD_AMD_POW_TAC.PDF?SOURCES=DOWNLOAD

Quote
the motor is a 230VAC motor
For 110Vac/230Vac, you must choose a 120Vac motor and not a 230Vac one.
Without auto-transformer, your power factor at 230Vac will be very low (0.3 - 0.4).
You perhaps will have trouble to comply with class A European Normative (EN) EN61000-3-2.
« Last Edit: January 11, 2014, 12:14:57 pm by oldway »
 

Offline SeanB

  • Super Contributor
  • ***
  • Posts: 16362
  • Country: za
Re: Universal motor control, best solution?
« Reply #42 on: January 11, 2014, 01:14:43 pm »
C1 is not needed, or should be connected across L and N after R1 as a RFI filter, and should be a class X2 unit with a 275VAC rating. Then the power supply should work.
 

Offline NikWingTopic starter

  • Regular Contributor
  • *
  • Posts: 141
  • Country: de
Re: Universal motor control, best solution?
« Reply #43 on: January 12, 2014, 02:14:10 pm »
thanks, guys :)
I'm gonna try that tomorrow ...
it's really odd, I just searched again for app sheets and found several schematics that don't have the cap placed there

here's the one I used: www.all-electronics.de/media/file/8132
C7 (in this schematics) is a Murata GRM55DR73A104KW011, 100nF 1kV X7R  :-//

about the motor: it's one part I can't change. It was driven by the old circuit with the discontinued driver IC that I have to replace (and triac of course) and that circuit already was working with both 110V and 230V, hmm.

at the beginning I wanted to make a better circuit but then things changed and I now have to find a cheap solution to just replace that driver IC -_-
(in Germany we have a saying, I think in English it's called "He has the Midas touch." ... make gold out of sh*t, that's what I have to do here lol ...)
 

Offline oldway

  • Super Contributor
  • ***
  • !
  • Posts: 2172
Re: Universal motor control, best solution?
« Reply #44 on: January 12, 2014, 02:42:58 pm »
Quote
...with the discontinued driver IC that I have to replace
TCA780 ?
 

Offline NikWingTopic starter

  • Regular Contributor
  • *
  • Posts: 141
  • Country: de
Re: Universal motor control, best solution?
« Reply #45 on: January 13, 2014, 07:54:24 am »
@oldway: U211B

ok, just altered the circuit (removed the cap, replaced destroyed zener diodes) and it works
the VIPer12A is slightly warm without any load, after around minute ...
below 100VAC it makes some noise though, I guess I should run it a little longer to see what happens :D

now I'll concentrate on the frequency measuring and the zero-crossing detection ... :)

edit: the PSU has troubles powering the arduino ... lol, looks like it can't generate 80mA, it probably will be sufficient for the mega328 itself, but not for the development setup ...  |O
I found a calculation software for the VIPer12A/22A, gonna try it and what it suggests ...

beside that, the frequency counter works as expected :)
« Last Edit: January 13, 2014, 03:31:46 pm by NikWing »
 

Offline oldway

  • Super Contributor
  • ***
  • !
  • Posts: 2172
Re: Universal motor control, best solution?
« Reply #46 on: January 13, 2014, 05:04:13 pm »
For the PSU, have a look on the TOPSWITCH family.
http://www.farnell.com/datasheets/26245.pdf
 

Offline NikWingTopic starter

  • Regular Contributor
  • *
  • Posts: 141
  • Country: de
Re: Universal motor control, best solution?
« Reply #47 on: January 14, 2014, 07:38:17 am »
a topswitch is also an idea, though it needs a transducer/transformer
I can use a simple coil with the VIPer12A :)

I got it to work now ... funny thing is, my circuit now is a mixture of the app sheet and the circuit from the design software I found ...
finally it's stable and can power the arduino board, which draws more current than the mega328 later :)

ok, so, now I'll concentrate on the triac part ... :)
 

Offline NikWingTopic starter

  • Regular Contributor
  • *
  • Posts: 141
  • Country: de
Re: Universal motor control, best solution?
« Reply #48 on: January 15, 2014, 12:15:21 pm »
triac triggering works so far :)
« Last Edit: January 15, 2014, 12:26:22 pm by NikWing »
 

Offline temmi_hoo

  • Contributor
  • Posts: 28
  • Country: fi
  • ELL-i PoE grassroots DC revolution
    • ELL-i -- Open Source PoE Intelligence -- Home
Re: Universal motor control, best solution?
« Reply #49 on: January 18, 2014, 05:46:00 pm »
triac triggering works so far :)

Cool :)

Care to post a current revision of schematics?

Also, do you have any oscilloscope screenshots to show us?

How well is the zero crossing detection working, does it require lots of software? Are you using a simple counter wait thing or some software PLL that locks on the mains frequency?

Anyhow good to see nice progress. I'll have to design something similar in the future for controlling legacy 240VAC devices so any experiences using modernly available input and output components with a microcontroller is good. I'm following you with my thumbs permanently in the up position :)
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf