I would like to do speed control of single-phase 220V induction cage motor of roughly ~100W via Arduino. Currently, motor is controlled by switching between two pre-selected output taps of transformer. This has been working fine for many years, but I lack fine adjustment.
I would like to have continuous speed control so the idea is to have Arduino trigger MOSFET's to create variable-frequency 12V AC which is then transformed to 220V via transformer.
Is it enough to just use one MOSFET as a "chopper" and ground 12V via transformer? Perhaps I can use PWM and capacitor to "smooth" out the waveform?
The frequency range does not need to be large, 10Hz to 60Hz is enough (and I suppose output voltage would drop at low frequencies due to transformer which is fine).
Use a small variac, or variable transformer that you can adjust by turning a knob on the transformer. Then you have the identical set up you already have, and a continuously adjustable speed. No Arduino needed, unless you want to add motor control the adjust the variac.
Perhaps I explained it poorly. I need Arduino to control Induction motor.
The motor speed is currently automatically controlled by humidity sensor.
Thus manual (variac transformer or whatever) is not viable. It needs to be controlled by code.
So my question is more of "which topology is best for induction motor"?
I can do it with triac but control range and motor torque is poor at low RPM's.
So I want some sort of VFD ... and bulinding VFD via 12V and then transforming it up to 220V solves some things: electrical isolation to begin with.
What type of transformer are you going to use?
A 50 hz transformer will not work at 10 hz, as the low frequency will saturate the primary winding, and will cause the transformer to draw a large current, limited only by the resistance of the primary winding.
You might get somewhere with a H bridge energised at 310V , but you will have to reduce the voltage as the frequency goes down to stop the motors stator from saturating.
Single phase induction motors are hard to speed control.
mauried:
What type of transformer are you going to use?
Iron core 220/12.
mauried:
A 50 hz transformer will not work at 10 hz, as the low frequency will saturate the primary winding, and will cause the transformer to draw a large current, limited only by the resistance of the primary winding.
That is true. Perhaps I can keep the VFD part between 60-40Hz and just PWD the voltage bellow 40Hz?
mauried:
Single phase induction motors are hard to speed control.
Currently, voltage control via 60,120,180,220V taps works very well (it has been that way for a long time). Basically, you select hi/low speed and hygrostat switches between them. I just need finer control.
Brute force way would be 8-taps transformer with 8 relays controlled by Arduino?
Gruntruck:
The frequency range does not need to be large, 10Hz to 60Hz is enough (and I suppose output voltage would drop at low frequencies due to transformer which is fine).
No that voltage drop won't happen and the transformer will severely overload (same as the motor itself)
You program the voltage drop yourself, providing standard V/f control (voltage proportional to frequency),
using inverter techniques and a ferrite high frequency transformer, not an iron one. You need to synthesis
of a PWM version of a pure sine wave with amplitude proportional to frequency, so if 50Hz is 250V, 10Hz is 50V.
Switching frequency of 4, 8 or 16kHz would be typical.
This is not a beginner project by any means, a keen student of power conversion techniques would take it on,
otherwise buying a budget VFD would be the route to go, or figuring out a simpler scheme based on the
original transformer and some extra switched resistances.
Note that running an induction motor slow without reducing the frequency (just reducing voltage) can
lead to excessive current consumption and overheating, and it very much depends on the exact
chracteristics of the induction motor's rotor construction as to how much you can get away with.
If the motor has starter capacitor or shaded poles (to provide a bias to the correct direction), these will
affect the performance when run at different frequencies, as such components are usually frequency
dependent.
MarkT:
Note that running an induction motor slow without reducing the frequency (just reducing voltage) can
lead to excessive current consumption and overheating, and it very much depends on the exact
chracteristics of the induction motor's rotor construction as to how much you can get away with.
This motor has been running 24/7 on reduced voltage regulation for 30 years straight (it is a ventilation fan installed 1989). It has ~250 000 running hours, 90% of those was @120V (sometimes 60V)
The hygrostat controlling it has finally give up the ghost (stuck at slow speed), so I am going to try to modernize it.
I will give it a go with triac and see what happens...must configure lowest permissible speed so it doesn't stop and freeze.
Have you tried a triac based ceiling fan speed controller? Common, inexpensive and easy to try.
Driving an inductive load is different than a resistive load so start with a known good controller to see how your motor handles it. That’s one less less variable you’ll have to deal with before you get lost in the Arduino aspects of triac control.
WattsThat:
Have you tried a triac based ceiling fan speed controller? Common, inexpensive and easy to try.
I will try it prior to committing to Arduino-controlled Triac just to see how motor reacts to chopped wave. But in the end I need fan speed to be controlled by Arduino depending on humidity.
Worst case scenario, I can just let it flip between two pre-selected voltages as it was before.