TI的步进电机或半桥驱动芯片DRV8711,具有:
1、两种模式,步进电机模式可以用作驱动电机;直接PWM输入模式,可以直接控制每个MOS管的开关。
2、单电源供电,逻辑电路直接由内部供电,同时还可对外提供5V,10mA的电源。
3、灵活的电流衰减模式。
4、输出电机的反电动势,可以判断电机堵转
5、输出电流、步进模式、衰减模式、堵转都可以通过SPI来编程。
一、SPI通信
1、读写时序
SPI配置DRV8711 8个寄存器的代码:http://download.csdn.net/download/qlexcel/10215700
2、寄存器一共有8个
a、0x00 CTRL
电机必须通过SPI使能才能运行,另外方向、细分、死区时间都可以设置,如果step信号不快,也可以通过SPI设置RSTEP位来步进。
b、0x01 TORQUE
电流大小的计算:
低8位用于设置比例。
比如采样电阻0.1Ω,ISGAIN设为0(电流增益为5),TORQUE设为255,那么电流的幅值为
(2.75*255)/(256*5*0.1)=5.5A
c、0x02 OFF
DRV8711高度自由,PWM的打开、关闭时间都可以进行设置,PWM的周期,即载波周期由TBLANK、TOFF和死区时间决定。
d、0x03 BLANK
、
e、0x04 DECAY
、
f、0x05 STALL
、
g、0x06 DRIVE
DRV8711的高低侧栅极驱动的时间和峰值电流都可以进行设置,根据MOS管的输入电容不同进行调整。
如上面栅极端口的波形图所示,当栅极控制状态改变时,端口会先输出tDRIVE时间的IDRIVE大小的峰值电流,来给MOS管快速充电,之后用小的电流来维持状态。因此如果这个寄存器没有配置好,可能MOS管不能完全打开。
过流保护如下:
根据OCPTH的值,当设为0时,如果采样电阻为0.02Ω,那么过流值为0.25/0.02=12.5A。
h、0x07 STATUS
2、堵转检测功能
首先反电动势的采样时刻是电流过零点,电流波形轮廓是正弦波,一个周期只有两次过零点。根据细分数不同,因此多少步检测一次也不同。因此堵转检测功能并不能用来做失步检测。同时还有局限性:1、转速太小,反电动势太小,本功能不可靠;2、整步运动没有电流过零点,本功能无效。
从上图可知,从电机线圈采集反电动势后,经过电阻分压缩小VDIV倍,然后和SDTHR做比较,如果小于SDTHR表示堵转,counter计数一次,如果计数次数超过SDCNT后,输出报警信号。