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.

[SOLVED] H bridge driving method for servo control ?

Status
Not open for further replies.

Electro nS

Full Member level 6
Joined
Mar 9, 2013
Messages
324
Helped
49
Reputation
98
Reaction score
48
Trophy points
1,308
Activity points
3,818
i have been working sometime with servo control (position and speed) of brushed dc motor in the KW range . Traditionally i am using locked antiphase (50% duty =zero speed) as i read it is better for controlling the motor . i am sensing motor current in both directions to operate in 4 quadrant .

Now i want to implement the current limiting cycle by cycle in hardware instead of software for convenience ... the uC i am using has PWM fault input that i can use to shutdown PWM for one cycle in case of over-current ( in the positive or negative direction (2.5v is the zero current) ) the problem is that it puts the both pwm signal to either HIGH or LOW state , however my zero should be at 50% duty instead , i cannot find a solution for this other than replacing locked anti-phase with sign magnitude ...

please give me ur opinion , what is the best method for servo control , is there any method for driving h bridge that i donot know about ? is there any solution for the problem and if you have any comments on the opamp circuit

 

Hi,

a low value, low inductance shunt in then lower FET GND line (either one common or two independent) should do.

You don´t need the current sensing IC, and both signals are positive (in either motor direction).
Use a very fast amplifier and a comparator. (even better if you can avoid the amplifier).
With the overcurrent signal clear a FF disabling both drivers.

Use one PWM signal rising edge to set the FF.

for sure you cann add some fonctins like
* interrupt to the microcontroller
* increased disable time after overcurrent
* dedicated enable after overcurrent

--> NC7SZ175, NC7SZ74

Klaus
 
Hi,

a low value, low inductance shunt in then lower FET GND line (either one common or two independent) should do.

You don´t need the current sensing IC, and both signals are positive (in either motor direction).
Use a very fast amplifier and a comparator. (even better if you can avoid the amplifier).
With the overcurrent signal clear a FF disabling both drivers.

Use one PWM signal rising edge to set the FF.

for sure you cann add some fonctins like
* interrupt to the microcontroller
* increased disable time after overcurrent
* dedicated enable after overcurrent

--> NC7SZ175, NC7SZ74

Klaus

thanks for the reply , i will clarify some items
if i am going to use a shunt , then i should use 2 (to measure current in both direction ( supply and regeneration ) , i forget to mension i am using suncronous rectification.
but i will keep the current sensor since it is cheap and low loss ( 50A is huge amount ) , it also saves my the amplifier which is a MUST if i use a very low impedance resistor. And in addition i have the possibility of torque control for future ( in addition to the current limiting)

you mensioned that LM339 is slow , i should choose something faster , what exact parameter i should look for GainXBandwidth or slew rate or what , if you can recommend one that is popular and available everywhere works on 3.3v and 5v.
you didnot comment about sign magnitude vs antipahse which one better suits this application .??
regards
 

Hi,

50A shunt.

May way to do it - you don´t need to do it the same way:
* SMD or THM
* desirable power dissipation
* calcualte resistance
* calculate voltage
* calcualte amplification
(If it does not fit -- I will start this loop with new values)

****

Example:
50A, 1W, SMD (just to see it it is possible)
--> R = 0.4mOhms
--> 20mV (it is OK for current limitation circuit. Low, but possible for a current control loop - depends on desired precision)
--> for a overcurrent threshod voltage of 1.25V --> gain = 62.5
--> 0.4mOhms (very low ohmic ...) --> check at distributor --> bad availability --> check alternatives --> found others rated 1mOhm / 5W SMD.

--> a new try
--> 50A, 1mOhm --> 2.5W (5W rated :smile:)
--> 50mV, good (for sure a good layout and a good amplifier is urgent)
--> gain 25, good.

OPAMP needs to be high speed, low offset, low offset drift, V_CM down to GND
Check in my stock gave: LTC6252. (maybe a bit overkill for this application)
The 350uV offset voltage gives an error of I = U/R = 350uV/1mOhm = 350mA. This should be good enough (maybe too good) for an overcurrent limit.
With the amplifier circuit I´d add a little known offset, so that the OPAMP output at zero current is about 100mV. So the OPAMP is always in regulation. This avoids output stage saturation (stable speed and precision. The OPAMP can even handle a little undershot incurrent measurement)
With a gain of 25 the and the 100mV offset you need a comparator threshold of 1.35V now. (Or adjust the gain)

****
Maybe it helps...
Good luck

Klaus
 
Instead of monitoring actual motor current (which reverses) you could monitor bulk current going into the H bridge.
That simplifies things, especially if you can place your current shunt into the ground return line.

If you use a Hall sensing device, it will be fast (1uS typical) it will isolate any common mode noise, and it can produce sufficient voltage output without any additional comparators or amplifiers.
**broken link removed**
 

This would appear to be fairly similar to your original proposition of 50/50% duty cycle at zero speed, switching diagonal pairs together.

That is going to provide dynamic braking and some torque holding capacity at zero speed.
There will always be a current path even though the averaged motor voltage may be be zero.
 
This would appear to be fairly similar to your original proposition of 50/50% duty cycle at zero speed, switching diagonal pairs together.
No. The original circuit was applying bipolar (two-level) pwm, 50 % anti-phase switching at zero speed. Other than unipolar (three-level) pwm, it involves a large ripple current with respective losses.
 
Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top