zero crossover motor stutter at low RPM

hi all,

i wanted to drive a high voltage motor so i built a simple circuit to control its speed.

the circuit takes AC 220v at 50Hz, i then measure the zero crossover with an optocoupler (this works, scope tested)
after that i have a triac which is switched with another optocoupler. (this also works checked with scope, adjustable square wave coming out)

obviously on the arduino there is a potentiometer for speed control

the AC voltage then goes through a diode bridge and into a big ass capacitor and then on to a 220v DC motor. all of this circuit was pre existing for the motor.

the problem is that over 50% ish, the motor runs fine, its own momentum keeps it spinning nicely,
but at lower speeds it stutters, it feels like its getting a pulse of power approximately once every second but it is obvious from listening to it that it is unstable.

the scope shows a nice square wave on the output opto.

the motor is fine, the carbon brushes are ok, there is no carbon deposits on the pick up points, each coil checks out with a multimeter and the motor spins fine using something like a 24v battery

what could cause it to stutter at slow speeds? could it be glitch signals coming in from the crossover detection?

code is below,

any help would be great thanks!

#define triacPulse 3
#define aconLed 13

int triac = 3;
volatile int potval = 0;
int val;
int temp = 0;
void setup()  {
  pinMode(2, INPUT_PULLUP);
  pinMode(triac, OUTPUT);
  pinMode(aconLed, OUTPUT);
  pinMode(A0, INPUT);
  attachInterrupt(0, acon, CHANGE);
  Serial.begin(9600);
}

void loop() {
  potval = analogRead(0);
}

void acon()   {
  digitalWrite(aconLed, HIGH);
  digitalWrite(triac, HIGH);
  delayMicroseconds(map(potval, 0, 1023, 0, 10000));
  delayMicroseconds(200);
  digitalWrite(aconLed, LOW);
  digitalWrite(triac, LOW);
}

Hi,

Can you please post a copy of your circuit, in CAD or a picture of a hand drawn circuit in jpg, png?

Thanks.. Tom... :slight_smile:

i will have to draw up a schematic later as i don't have the opportunity right now but it is quite a basic circuit:

H11A1M optocoupler to detect the AC
MOC3031 optocoupler to drive the triac
BTB16-600BW Triac

the relative resistors for current limiting

the zero crossover comes in on D2 obviously, then the output on pin 3,

i will try and get the schematic drawn when i have time

NeX:
the AC voltage then goes through a diode bridge and into a big ass capacitor and then on to a 220v DC motor. all of this circuit was pre existing for the motor.

That may be your problem. That capacitor tries to level the voltage, so every time you open the TRIAC it tries to charge, causing a current surge. The longer the cuts in the supply current (i.e. lower duty cycle) the more this may become an issue.

Isn't it possible to install a MOSFET in the DC side (which, by the way, should be more like 320-340V: normal AC line is 230-240V nowadays, times 1.42 for the smoothing), so you can use that to regulate the current? I don't know if it makes sense to keep in sync with the AC power supply, though.

Hi,
What is your motor?
Can you link this post to spec/data on its type/voltage/current please?

Thanks.. Tom.. :slight_smile:

wvmarle:
That may be your problem. That capacitor tries to level the voltage, so every time you open the TRIAC it tries to charge, causing a current surge. The longer the cuts in the supply current (i.e. lower duty cycle) the more this may become an issue.

Isn't it possible to install a MOSFET in the DC side (which, by the way, should be more like 320-340V: normal AC line is 230-240V nowadays, times 1.42 for the smoothing), so you can use that to regulate the current? I don't know if it makes sense to keep in sync with the AC power supply, though.

thanks for the reply. to give you more detail i am rebuilding an existing motor driver that was damaged its old technology and its no longer possible to get spare parts. the capacitor was part of the existing circuit after the triac so it has been designed for that and was at some point working with the capacitor. but i have also removed the capacitor from the circuit and the effect is the same.

i have also tried a new capacitor, still no luck.

i had the same idea about a DC side MOSFET, i had already bought the components to replace the AC side like the original design but a quick experiment on the DC side left me with a blown transistor, i think maybe the capacitor acts like an infinite load? and it sucked too many amps through the transistor. but i am not sure, i didn't pursue it further but maybe i should. i will post a schematic up in a sec

TomGeorge:
Hi,
What is your motor?
Can you link this post to spec/data on its type/voltage/current please?

Thanks.. Tom.. :slight_smile:

hi there, thanks for the reply

i don't have data on model of the motor, but i know it is rated 230v DC 4A

here is a schematic of how i have things wired at the moment:

everything before the diode bridge is new, everything after that was pre existing

Hi,
MOC3041 is a zero crossing switch opto coupler, they are designed for ON/OFF power switching.
Not phase control that you are trying to accomplish.

This may help;

https://playground.arduino.cc/Main/ACPhaseControl

Tom... :slight_smile:

TomGeorge:
Hi,
MOC3041 is a zero crossing switch opto coupler, they are designed for ON/OFF power switching.
Not phase control that you are trying to accomplish.

This may help;

Arduino Playground - ACPhaseControl

Tom... :slight_smile:

thanks for the reply, i am not sure i understand what the difference is? surely it simply switches the triac on and off when i tell it to? can you recommend another opto that might work as a replacement?

Hi,
Did you look at the link?

MOC3052 is a suggestion.

Or MOC3020.

They are called Random Phase triac opto couplers.

Tom... :slight_smile:

TomGeorge:
Hi,
Did you look at the link?

MOC3052 is a suggestion.

Or MOC3020.

They are called Random Phase triac opto couplers.

Tom... :slight_smile:

right, sorry, yes i looked at the link but misread the last digits as the opto i am already using. i have ordered one so when that arrives i will report back,

thank you again for your help!

NeX:
thanks for the reply, i am not sure i understand what the difference is? surely it simply switches the triac on and off when i tell it to? can you recommend another opto that might work as a replacement?

When you phase control, you control when in the AC 1/2 cycle the triac conducts'
The earlier in a 1/2 cycle the longer time the load is connected to the AC, so more energy hence with a motor more speed.
The later in a 1/2 cycle the shorter time the load is connected to the AC, so less energy hence with a motor less speed.
If you use a zero crossing type, it will not control where in the 1/2 cycle the triac turns on, it will try to get the triac to ALWAYS turn ON at the start of the 1/2 cycle.
This and many other YouTube videos explains your controller.

Tom... :slight_smile:

NeX:
i had the same idea about a DC side MOSFET, i had already bought the components to replace the AC side like the original design but a quick experiment on the DC side left me with a blown transistor, i think maybe the capacitor acts like an infinite load? and it sucked too many amps through the transistor. but i am not sure, i didn't pursue it further but maybe i should. i will post a schematic up in a sec

My best guess is the voltage that's responsible for this. The transistor must be able to handle PEAK voltage (that 230V is RMS, for the motor that will be fine) - so over 320V peaks. You'll need one that can handle 350V at least, preferably 400V or more. Current won't be that bad - 4A rated, so stall current may be 10-15A or so, that'd be peak. 4A is not much for a power MOSFET.

Then I don't see a flyback diode in your diagram; around every zero crossing of the AC supply the current in the motor will drop drastically, and that may cause reverse voltage spikes which may kill the transistor. Makes me also wonder what type/capacitance that capacitor is.

TomGeorge:
When you phase control, you control when in the AC 1/2 cycle the triac conducts'
The earlier in a 1/2 cycle the longer time the load is connected to the AC, so more energy hence with a motor more speed.
The later in a 1/2 cycle the shorter time the load is connected to the AC, so less energy hence with a motor less speed.
If you use a zero crossing type, it will not control where in the 1/2 cycle the triac turns on, it will try to get the triac to ALWAYS turn ON at the start of the 1/2 cycle.
This and many other YouTube videos explains your controller.

https://www.youtube.com/watch?v=4N1uLth1o9o

Tom... :slight_smile:

thanks for that video that helped a lot, i think you have solved the problem, its almost certainly this opto, hopefully the new one will arrive soon and we will see if it fixes it. thanks for your help!

wvmarle:
My best guess is the voltage that's responsible for this. The transistor must be able to handle PEAK voltage (that 230V is RMS, for the motor that will be fine) - so over 320V peaks. You'll need one that can handle 350V at least, preferably 400V or more. Current won't be that bad - 4A rated, so stall current may be 10-15A or so, that'd be peak. 4A is not much for a power MOSFET.

Then I don't see a flyback diode in your diagram; around every zero crossing of the AC supply the current in the motor will drop drastically, and that may cause reverse voltage spikes which may kill the transistor. Makes me also wonder what type/capacitance that capacitor is.

you may be right, i took a generic high current transistor that i had, it clearly wasn't built to handle this situation,

wouldn't the rectifier act as a flyback diode? all the control circuitry sits on the AC side and the motor is on the DC side

Flyback diode goes the opposite direction. In your case maybe the best place would be the direction switch but anyway it's not easy to handle when you can change direction.

wvmarle:
Flyback diode goes the opposite direction. In your case maybe the best place would be the direction switch but anyway it's not easy to handle when you can change direction.

so if i just put a diode from ground to the supply just before the direction switch that should help protect the triac from voltages coming back from the motor?

it may be the reason why the original driver failed, because there was no diode in place after the rectifier

Tthe moment you set that direction switch in the off position (your drawing indicates it has this) that diode doesn't do anything as it's on the wrong side of the switch. Besides, your control electronics are AC side.

wvmarle:
Tthe moment you set that direction switch in the off position (your drawing indicates it has this) that diode doesn't do anything as it's on the wrong side of the switch. Besides, your control electronics are AC side.

so it should be fine then? because if the direction switch is off then the motor becomes isolated from the circuit anyway. also the direction would never be changed while the motor is spinning.