Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

BLDC Motor Speed Control

Status
Not open for further replies.

bailin7134

Newbie level 4
Joined
Jun 6, 2010
Messages
5
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Location
Zurich
Activity points
1,313
Hello, I am trying to control a bldc motor. But encounter a problem.

In OPEN loop, when I send PWM with duty cycle increase gradually(from 5% to 80%), motor works fine. But when I assign directly 80% duty cycle PWM signal to standstill motor. It turns a little bit and then stacks. Also it achieves current limit very soon and stay.

So I am wondering to know is it possible to assign a very high duty cycle to bldc motor directly ? or I should increase duty cycle gradually ?

Thanks in advance.

Lin
 

Are you dealing with a motor where you have access to the stator coils, or are you just using a fan (or similar)which has its own controller within its package?
Frank

Hello Frank

I am using H-Bridge to drive the motor coil directly. PWM is also generated by FPGA and used to control the switches.
 

I am using H-Bridge to drive the motor coil directly
Means what? A BLDC motor has usually three motor coils and would be driven by a three-phase bridge.
 

Hi

I just send PWM to open loop motor control system. The problem is when assign a 50% duty cycle PWM to standstill motor, it will rotate but stack soon. But if send PWM with gradual increased duty cycle. Its ok.
 

If your motor has only two terminals then its got a controller IC inside the case. The controller relies on the motor's inertia to get it from coil to coil. But at the instant of the controller switching the current, it take a large surge. What I think is happening is that when your PWM is reaching 80%, that it cannot supply enough current for the controller to successfully switch enough current to move the motor on to the next coil.
Try your motor out on a DC power supply and log its starting up characteristics. As the PSU will have a very low output impedance and even a decoupling capacitor, try putting a series resistor between the PSU and the motor, to drop one volt at its notional current. Try out the PSU trick again.
Frank

- - - Updated - - -

If your motor has only two terminals then its got a controller IC inside the case. The controller relies on the motor's inertia to get it from coil to coil. But at the instant of the controller switching the current, it take a large surge. What I think is happening is that when your PWM is reaching 80%, that it cannot supply enough current for the controller to successfully switch enough current to move the motor on to the next coil.
Try your motor out on a DC power supply and log its starting up characteristics. As the PSU will have a very low output impedance and even a decoupling capacitor, try putting a series resistor between the PSU and the motor, to drop one volt at its notional current. Try out the PSU trick again.
Frank
 

If your motor has only two terminals then its got a controller IC inside the case. The controller relies on the motor's inertia to get it from coil to coil. But at the instant of the controller switching the current, it take a large surge. What I think is happening is that when your PWM is reaching 80%, that it cannot supply enough current for the controller to successfully switch enough current to move the motor on to the next coil.
Try your motor out on a DC power supply and log its starting up characteristics. As the PSU will have a very low output impedance and even a decoupling capacitor, try putting a series resistor between the PSU and the motor, to drop one volt at its notional current. Try out the PSU trick again.
Frank

- - - Updated - - -

If your motor has only two terminals then its got a controller IC inside the case. The controller relies on the motor's inertia to get it from coil to coil. But at the instant of the controller switching the current, it take a large surge. What I think is happening is that when your PWM is reaching 80%, that it cannot supply enough current for the controller to successfully switch enough current to move the motor on to the next coil.
Try your motor out on a DC power supply and log its starting up characteristics. As the PSU will have a very low output impedance and even a decoupling capacitor, try putting a series resistor between the PSU and the motor, to drop one volt at its notional current. Try out the PSU trick again.
Frank


Thanks for your reply.

I have considered the start-up current problem. when rotation without load, the current consumption is ~220mA, so I increase the PSU limitation to 1.5A, it still stacks. IS it possible the current still too low?
What's more, I have serial resistor between PSU and motor.

I found yesterday that, it might due to the incremental doesn't work when directly apply 80% duty cycle PWM signal, so that motor cannot run. But the problem exist still, why it works when I increase PWM duty cycle gradually?
 

look at the volt drop across the series resistor with a CRO, or use a DVM on ACV and do the calculations ( conversion from square wave -> peak -> RMS sine) to see what the current is . I would not be suprised to see the current peak over 1.5A. or just measure your PWM amplitude with a diode detector and see how it varies with the motor speeding up/ starting from standstill.
Frank
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top