Quantcast
Channel: Forums - Recent Threads
Viewing all articles
Browse latest Browse all 262198

DRV8711: Increasing torque to Stepper Motor

$
0
0

Part Number:DRV8711

Hi,

I've written code to drive a 4 Amp stepper motor.  I'm using an MSP430 launchpad with a boost-drv8711.  Everything is working well, except it doesn't have enough torque for my application.  This same motor is being driven by another motor controller in the same application without difficulty.  With the boost-drv8711 i'm seeing about 0.2 amps RMS being driven to the motor, but the motor is capable of 4Amps.  What techniques can I use to increase torque.  I've played around with various settings in the 8711 register and nothing seems to change anything.  I've copied the code that writes the settings I'm currently writing to the registers for reference.

Thanks

Matt

_____________________________________________________________________________

#define CCW_16_Enable 0x25
#define CW_16_Enable 0x27
#define CCW_16_Disable 0x24
#define CW_16_Disable 0x26

//CTRL Register defaults
unsigned char CTRLdataHi, CTRLdataLo;
CTRLdataHi = 0x0F; //was C before. F changes isgain to 40 for more torque
CTRLdataLo = CW_16_Disable; //1/16 disabled
WriteSPI(CTRLdataHi, CTRLdataLo);

//TORQUE defaults
unsigned char TORQUEHi, TORQUELo;
TORQUEHi = 0x13;
TORQUELo = 0x1F;
WriteSPI(TORQUEHi, TORQUELo);

//OFF defaults
unsigned char OFFHi, OFFLo;
OFFHi = 0x20; //Internal Indexer
//OFFHi = 0x21; //Bypass Indexer
OFFLo = 0xA0;
WriteSPI(OFFHi, OFFLo);

//BLANK defaults
unsigned char BLNKHi, BLNKLo;
BLNKHi = 0x31;
BLNKLo = 0xF0;
WriteSPI(BLNKHi, BLNKLo);

//DECAY defaults
unsigned char DECAYHi, DECAYLo;
DECAYHi = 0x41;
DECAYLo = 0x10;
WriteSPI(DECAYHi, DECAYLo);

//STALL defaults
unsigned char STALLHi, STALLLo;
STALLHi = 0x53;
STALLLo = 0xFF;
WriteSPI(STALLHi, STALLLo);

//DRIVE defaults
unsigned char DRIVEHi, DRIVELo;
DRIVEHi = 0x6F; //400mA peak sink 200mA peak source
DRIVELo = 0x5F;
WriteSPI(DRIVEHi, DRIVELo);

//STATUS defaults
unsigned char STATUSHi, STATUSLo;
STATUSHi = 0x70;
STATUSLo = 0x00;
result = WriteSPI(STATUSHi, STATUSLo);


Viewing all articles
Browse latest Browse all 262198

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>