Pages: [1] 2 3   Go Down
Author Topic: Hi Power HBridge, DC Motor  (Read 3375 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Newbie
*
Karma: 0
Posts: 46
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I finally found a single easy to use chip I could use to control my Dc motor. I was hoping you guys could help with it. (I am a total Newbie when it comes to electronics, Software guy by trade).  I am using a TLE6209 to control a dc motor. What I would LOVE to do is know when my motor stalls out. I know that my motor will draw 2 about amps during normal operation, and it will draw 6.7 amps stalled. That's what I want to detect - the stall state. Do I need more to detect this? Can I use this chip directly? Any input would help. Thanks all,
Brandon
Logged

Left Coast, CA (USA)
Offline Offline
Brattain Member
*****
Karma: 361
Posts: 17301
Measurement changes behavior
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Well one method would be to read the motor current draw using an Arduino analog input pin. If you wire a very low ohm resistor in series with the motor negitive power source and read the voltage drop via a analog read you should be able to determine normal Vs stall current being drawn. You will have to be sure that the motor voltage source's ground is also wired to the Arduino's ground.

A .1 ohm resistor will drop .6vdc when drawing 6 amps.

Lefty
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 46
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Well - my motor will be running in both directions - so I will need to build some logic in to the wiring to determine which pin is ground... right? Or is there a more clever way to do that?
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 46
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Also - I assume because the resistor is such a low value, it won't slow my motor down a noticeable amount? Is that a correct assumption (again, sorry, really new at this stuff).
Logged

Left Coast, CA (USA)
Offline Offline
Brattain Member
*****
Karma: 361
Posts: 17301
Measurement changes behavior
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Well - my motor will be running in both directions - so I will need to build some logic in to the wiring to determine which pin is ground... right? Or is there a more clever way to do that?

If you install the resistor between the motor voltage source's ground and the ground pins on the controller chip it will read the same polarity no matter which direction the motor is turning. And yes a .1 ohm resistor will rob very little voltage (.6 volts @ 6 amps draw) so you would lose 5% voltage at max stall current if running the motor at 12vdc.

Lefty
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 46
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Oh, right... Duh, the source voltage. Not the lines goign to the actual motor. Ok thanks!
Brandon
Logged

Bristol, UK
Offline Offline
Edison Member
*
Karma: 1
Posts: 1197
Exhibitor at UK Maker Faire
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

The L298 motor H-bridge driver chip has pins specifically designed for current monitoring.  You can fit a current shunt (as such a resistor is called) in the ground return for each of the two H-bridges in an L298.
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 46
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

The L298 says it only handles peak output of 3 AMPS. My motor will draw 6.7 Amps when stalled - won't that blow up the chip?
Logged

Bristol, UK
Offline Offline
Edison Member
*
Karma: 1
Posts: 1197
Exhibitor at UK Maker Faire
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Yes, you'll need a more powerful H-bridge.  The L298 is just one example.
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 2
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

You can probably just use both the outputs of the L298 to drive the motor and double your current carrying capacity.  just be careful, that's dangerous for the chip.
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 46
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Perhaps this is a really dumb question... I know I can double my current capability by using both outputs on a L298, can I use 2 L298's to quadruple my capacity?
Logged

Bristol, UK
Offline Offline
Edison Member
*
Karma: 1
Posts: 1197
Exhibitor at UK Maker Faire
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

You can connect MOSFETs in parallel and they'll share the load nicely, but with bipolar parts like the L298, they won't.  One L298 will take the majority of the current,, and the other will take a smaller proportion.  So, it's generally not a good idea to connect bipolar transistor drivers in parallel.  You'll see it done all the time with MOSFETs, though.
Logged

0
Offline Offline
Full Member
***
Karma: 0
Posts: 177
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

It's impossible to fit this L298 on a normal breadboard... how can you manage this? Do I need to solder 20 wires?
Logged

0
Offline Offline
Full Member
***
Karma: 0
Posts: 177
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I patiently soldered the wires and made a simple demo that enables the enable pin and then cycle the inputs.... it's so funny to see the motor changing direction then turn off thanks to the Arduino... IT WORKS!!!

What's the purpose of the 100nF capacitors? I read it's better to place them close to the GND pin.
For SENSE pin I read on another forum you should use a small value resistor like 0.2 Ohm to lower voltage drop, then use an op-amp to raise the voltage, allowing a more precise ADC conversion. Is it right?

BTW the heatsink + some paste is a must!
Logged

Left Coast, CA (USA)
Offline Offline
Brattain Member
*****
Karma: 361
Posts: 17301
Measurement changes behavior
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
For SENSE pin I read on another forum you should use a small value resistor like 0.2 Ohm to lower voltage drop, then use an op-amp to raise the voltage, allowing a more precise ADC conversion. Is it right?

Yes that would work at the expense and extra layout of the external components. It really comes down to how much resolution you need for the function of using the current value in your program.

The Arduino analog input is setup to read a 0-5vdc range and converts it to a 0-1023 digital value. In your case of 6.7 amps stall current being monitored with a .2 ohm resistor the voltage to the Arduino would range from 0-1.34vdc. This would convert to a digital value of 0 to 275 or so. This is certainly enough resolution to use as a alarm or safety value to turn off the motor controls or similar action. However if you were going to perform some PID type control algorithum with the current feedback reading then it would be better to amplify the current voltage drop to utilize more of the full 0-5vdc range.

Lefty
Logged

Pages: [1] 2 3   Go Up
Jump to: