关键词:步进电机 串口控制器 细分驱动
1 前言
A3972是美国Allegro公司生产的PWM恒流控制微步距驱动二相步进电机专用驱动器。它的工作电压可达50V,驱动电流达1.5A,一个A3972即可驱动一台二相步进电机。芯片内部的PWM电流控制电路可通过串行接口被设置为电流慢、快、混合衰减模式。
通过电机的电流是由电路内部的6位数/模转换器(DAC)输出和外部参考电压来共同决定的,其中的6位DAC决定了输出电流有2 6=64个等级。因此,DAC的值每增加1,输出电流会增加最大电流I-max的1.56%。另外,A3972还能提供完善的保护措施,其中包括抑制瞬态电压、过热保护、防止电流直通、欠电压自锁等功能。
2 A3972的引脚排列和引脚功能
A3972的引脚排列如图1所示,各个引脚的功能如下所述:
引脚1(VCP):电压泵的输出电压引脚,主要用于驱动内部DMOS H桥臂的上二路DMOS管。
引脚2、3(CP1、CP2):一般在这二个引脚间接一个0.22μF的电容器。该电容器主要是为A3972内部的电压泵提供电源,电压泵的输出为引脚1(VCP)。
引脚4、9(OUT1B、OUT1A):输出引脚,每个引脚分别与电机一相绕组的二端相连。
引脚5、20(LOAD SUPPLY1、LOAD SUPPLY2):电机负载电源端。
引脚6、7、18、19(GROUND):接地端。
引脚8、17(SENSE1、SENSE2):在此端接1只采样电阻器可检测负载电流,采样电阻(Rs)的大小与所设定的负载电流有效。
引脚10、11、12(STROBE、CLOCK、DATA):这3个引脚是A3972的串行接口,系统通过它们来控制A3972。其中STROBE为使能信号端,CLOCK为时钟信号端,DATA为数据输入信号端。
引脚13(REF):此端的电压与采样电阻Rs及DAC决定输出电机负载电流的大小。
引脚14(MUX):闲置引脚,在实际应用电路中可悬空。
引脚15(LOGIC SUPPLY):逻辑电路电压,可以为5V或3.3V。
引脚16、21(OUT2A、OUT2B):输出引脚,它们分别与电机一相绕组的二端相连。
引脚22(VREG):内部产生的电压输出端,用于驱动DMOS H桥臂的下二路DMOS管。该端的电压被内部电路监控,一旦出现故障,H桥输出将被禁止。在实际应用中,VREG引脚应串接一个0.22μF的电容器到GROUND上。
引脚23(SLEEP):当该引脚为低电平时,A3972将处于睡眠状态,此时,电路消耗的电流最小,同时,H桥输出也会被禁止,串行接口也会被复位为零状态。
引脚24(OSC):外部时钟输入引脚,用作内部PWM时基,典型值为4MHz。A3972可使用内部4MHz的时钟或外部时钟。如果使用内部时钟,则应将OSC引脚接地。
表1 Word 0模式
Bit | 功 能 | Bit | 功 能 |
D0 | Word select=0 | D1 | H桥1,DAC,LSB |
D2 | H桥1,DAC,位2 | D3 | H桥1,DAC,位3 |
D4 | H桥1,DAC,位4 | D5 | H桥1,DAC,位5 |
D6 | H桥1,DAC,MSB | D7 | H桥2,DAC,LSB |
D8 | H桥2,DAC,位2 | D9 | H桥2,DAC,位3 |
D10 | H桥2,DAC,位4 | D11 | H桥2,DAC,位5 |
D12 | H桥2,DAC,MSB | D13 | H桥1相 |
D14 | H桥2相 | D15 | H桥1模式 |
D16 | H桥2模式 | D17 | 参考电压选择方式 |
D18 | 电流范围选择方式 |
3 A3972的功能
对A3972的控制是通过3条串行接口线(CLOCK、DATA、STROBE)来实现的。每次发送时要传送19个bits,先传送高位D18,最后传送最低位D0。A3972有二种数据模式:Word 0位设置模式和Word 1 位设置模式。
3.1 Word 0位设置模式
当D0=0时,A3972便进入Word 0模式,各位的功能见表1,D0-D18位的含义如下:
D1-D6:用于设定通过H桥1的电流等级,当全设置为0时,将禁止H桥1工作,开关管关断。
D7-D12:用于设定通过H桥2的电流等级,当全设置为0时,将禁止H桥2工作,开关管关断。
D13:决定通过负载绕组1的电流方向。为0,表示电流从OUT1B流向OUT1A;为1,则表示电流从OUT1A流向OUT1B。
D14:决定通过负载绕组2的电流方向,为0,表示电流从OUT2B流向OUT2A;为1,则表示电流从OUT2A流向OUT2B。
D15:决定H桥1电流衰减模式,为0,表示A3972设置成混合衰减模式;为1,则表示设置成慢衰减模式。
D16:决定H桥2电流衰减模式,为0,表示A3972设置成混合衰减模式;为1,则表示设置成慢衰减模式。
D17:决定参考电压方式,为0,表示选择内部2V电压基准作为参考电压;为1,表示选择外部参考电压。
D18:电流范围选择方式,为0表示ITRIP=VDAC/8Rs;为1表示ITRIP=VDAC/4Rs。
3.2 Word 1位设置模式
当D0=1时,A3972进入Word 1数据模式,D1-D18位的功能见表2,各位的含义如下所述。
表2 Word 1模式
Bit | 功 能 | Bit | 功 能 |
D0 | Word select=1 | D1 | 死区时间LSB |
D2 | 死区时间MSB | D3 | 关断时间LSB |
D4 | 关断时间位1 | D5 | 关断时间位2 |
D6 | 关断时间位3 | D7 | 关断时间MSB |
D8 | 快速衰减时间LSB | D9 | 快速衰减时间位1 |
D10 | 快速衰减时间位2 | D11 | 快速衰减时间位MSB |
D12 | 振荡器控制C0 | D13 | 振荡器控制C1 |
D14 | 同步校正位1 | D15 | 同步校正位2 |
D16 | 保留位 | D17 | 保留位 |
D18 | 空闲模式 |
D1、D2死区时间:用于设置电流调节时不进行电流采样比较的时间。当H桥上桥臂某一开关管导通时,由于在开关瞬时箝位二极管和负载中的分布电容受反向恢复电流的影响,将会产生电流尖峰,从而导致错误的复位,为了防止在此段时间内这类情况的发生,应该使电流采样比较器停止工作。死区时间的具体设置为D2D1=00:死区时间为4/fosc;D2D1=01;死区时间为6fosc;D2D1=10:死区时间为8/fosc;D2D1=11:死区时间为12/fosc。
D3-D7:用于决定内部PWM控制电路的固定关断时间,固定关断时间由下式决定
toff=[(1+N) ×8/fosc]-1/fosc(N=0……31)
例如,当晶振频率为4MHz时,固定关断时间可编程设定为1.75μs~63.75μs。
D8-D11:用于设置电流快速衰减模式所占用的时间在内部PWM控制电路中固定关断时间所占的比例。只有A3972工作在电流混合衰减模式中时,电流快速衰减才会起作用。电流快速衰减才会起作用。电流快速衰减时间由下式决定
tdf=[(1+N) ×8/fosc]-1/fosc,(N=0……15)
例如,当晶振频率为4MHz时,固定关断时间可编程定为1.75μs~31.75μs。如果tfd>toff,则A3972工作在快速衰减模式下。
D12-D13:晶振控制,内部4MHz的晶振用于产生时基和电压泵的时间。如果需要,也可以在OSC端外接一个晶振。为了满足更宽范围系统时钟的需要,内部分频电路能够根据不同的设置产生不同的频率。D13D12=00:内部4MHz的晶振;D13D12=01:外部时钟;D13D12=10:外部时钟的1/2;D13D12=11:外部时钟的1/4。
D14-D15:在PWM关断时,同步校正特征将在电流衰减期间导通相应的MOSFET,这将有效地降低电源功耗,而在绝大多数应用场合下,不用外接肖特基二极管。D15D14=00:主动模式,当发现电流过零时,关断同步校正功能,禁止反向负载电流;D15D14=01:被动模式,允许反向电流,但有一个限度,当超过这个限度时,将会关断同步校正功能;D15D14=10:禁止模式,这时必须在每个桥反向并联4个箝位二极管;D15D14=11:下桥臂模式,当PWM关断时,下桥臂MOSFET导通,这时,电流从MOSFET内部二极管流过。因此,上桥臂则要反向并联箝位二极放宽,这种模式主要用于高压场合,它可以使每个H桥节省二个二极管。在这种模式下,下桥臂MOSFET在PWM关断时间内不停地导通和关断。
D16、D17:使A3972处于测试模式,正常工作时,应该设置为00。
D18:当D18=0时,A3972处于低功耗方式。输出被禁止,电压泵也停止工作,但是欠压监视电路仍处于激活状态。
4 串口时序
数据在每一个时钟节拍的上升沿传入移位寄存器,通常情况下,STROBE将会保持为高电平,只有在初始化为写周期时才会变为低电平。传输数据时,最先传送数据的最高位,最后传送数据的最低位。图2为一个完整的写数据时序图。图中的A是最小数据建立时间,时长为15ns;B是最小数据保持时间,时长为10ns;C是最小建立STROBE信号到CLOCK上升沿时间,时长为150ns;D是最小CLOCK高电平脉冲宽度,时长为40ns;E是最小CLOCK低电平脉冲宽度,时长为40ns;F是最小建立CLOCK上升沿到STROBE时间,时长为50ns;G是最小STROBE脉冲宽度,时长为150ns。
图5
5 典型应用电路
图3为A3972的典型应用电路图。从图中可以看出,只需要少量的外部元器件和几根控制线就可构成一个完整的微步距驱动二相步进电机电路。
图4为8细分正弦波驱动时二相步进电机的一相电机绕组理论电流波形。
笔者采用混合式步进电机做实验,电机的额定电压为12VDC,额定电流为0.4A,相数为2相,连续堵转为矩为700gcm,结构方式为组装式,工作方式为长期连续运行。
图5为8细分驱动时实测的一相电机绕组电流波形。该波形为在电机一相绕相上串联一个0.68Ω电阻器后所测得的该电阻器上的电压波形,因此,该波形与实际电流波形是0.68的倍数关系。
6 结论
Allegro公司生产的串行控制步进电机驱动器件A3972具有优良的特性。它可以工作在整步、半步、1/4步、1/8步、1/16步、1/32(微步距)多种方式下。其特有的3种电流衰减模式可以使步进电机工作在不同的负载和转速下,而且都能获得较理想的电流波形。此外,它易于与单片机接口,控制方式灵活。因此,A3972不失为一种高性能的串行控制步进电机微步距驱动器。