Motor Controller

From OrbSWARM
Revision as of 12:09, 3 May 2011 by Lee (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Error creating thumbnail: convert-im6.q16: no decode delegate for this image format `' @ error/constitute.c/ReadImage/504.
convert-im6.q16: no images defined `/tmp/transform_2166cda72397-1.jpg' @ error/convert.c/ConvertImageCommand/3258.
The pinout for the din-9 connectors between the daughterboard and the motor controllers

Speed Controller API


We will be using DC electronic speed control to control the Drive Motor and Steering Motor. Two H-Bridge driver will control the power to each motor. One supervisory driver controller will send control signals to each of the two H-bridge drivers.

Driver Controller

Plan: Atmel MCU to drive PWM inputs of H-bridge.

Here's a good example of an integrated controller/Hbridge with available Atmega code, including PID code http://www.modularcircuits.com/h-bridge.htm

Another example is the MOB used with the OSMC: http://www.robotpower.com/downloads/

H-Bridge Driver

Good overview of the theory here: http://www.modularcircuits.com/h-bridge_secrets1.htm

OTC high-current motor drivers are pretty much unaffordable. So we've pretty much settled on the "open source motor controller" design. Here's the Yahoo home page: http://tech.groups.yahoo.com/group/osmc/


Some documentation: http://www.robotpower.com/downloads/ including overview PDF: http://www.robotpower.com/downloads/OSMC_project_documentation_V4_25.pdf


We have customized the OSMC design specifically for the Orbs. Details and assembly instructions are on the ORBMC page.


The power FETs are the most expensive parts. We need 8 per board, and two boards per orb, so they add up fast. There are three recommended ones, in order of decreasing cost:

IRF1405 Vds=55V Ids=169A Rds = 5.3mOhm http://delta.octopart.com/International_Rectifier__IRF1405.pdf

IRF4104 Vds=40V Ids=75A Rds = 5.5 mOhm http://delta.octopart.com/International_Rectifier__IRF4104.pdf

HRF3205 Vds=55V, Id=100A Rds = 8 mOhm http://www.fairchildsemi.com/ds/HR/HRF3205.pdf

I've (jtf) ordered two bare OSMC boards from robotpower.com

For the purposes of testing, I will stuff one with IRF4104s and the other with HRF3205s. We will test them on a heavy load, and see how hot they get with heatsinks. The more expensive 4104 has lower Rds, and the TO-220 package is pretty much limited to 75A of sustained current for thermal reasons, so it will be interesting to see if there's much performance difference.

There is also the 3103 http://delta.octopart.com/International_Rectifier__IRL3103.pdf which is 1/2 price but has 50% more Rds (12 mOhm).

More FET suggestions:

IRFB3207 Vdss=75V Id=180A Rds=3.6 mOhm http://www.irf.com/product-info/datasheets/data/irfs3207.pdf Pricy, but whoa: $1.33 in 50+ quantity? No wonder they are out of stock: http://www.alliedelec.com/Search/ProductDetail.asp?SKU=273-0862

IRFB4310 Vdss=100V Id=140V Rds= 5.4mOhm http://www.irf.com/product-info/datasheets/data/irfs4310.pdf


Great specs on these; newer than OSMC design? Pricy -- always?

IRL3803 Vds=30 Rds=6mOhm http://www.irf.com/product-info/datasheets/data/IRL3803.pdf

IRL7833 Vds=30 Rds=3.8mOhm http://www.irf.com/product-info/datasheets/data/IRL7833.pdf

IRL3713 Vds=30 Rds=3mOhm http://www.irf.com/product-info/datasheets/data/IRL3713.pdf

IRL1404Z: Vds=40 Rds=3mOhm http://www.irf.com/product-info/datasheets/data/IRL1404Z.pdf $1.50 at futurelectronics.com? No wonder they're sold out.

Possible OSMC board modifications

  • Lay out the power FETs so heatsink tabs are lined up on edge of board for bolting to metal enclosure
  • Add "sanity check" bipolar red/green LED to main motor output
  • Replace board DC/DC converter with external 12V or TI DC/DC module
  • Switch in external braking resistors to a motor lead? That way braking current is dissipated there, rather than the motor windings or H-bridge.

Current sensing

Choice is between shunt resistors + buffer and Hall effect.

As Pete points out, sensing load current is non-trivial depending on drive mode: Media:Load_Current_Sensing.pdf

Jon likes these hall-effect sensors over shunt resistors: http://www.allegromicro.com/en/Products/Categories/Sensors/currentsensor.asp

Encoders