近年来,随着现代电机控制技术的发展和电机驱动系统市场的繁荣,AD公司推出了ADMCxx系列电机控制嵌入式DSP。其中的ADMC401属于高端产品,适合于工业控制、机床控制等高精度应用。目前有一定数量的文献涉及到ADMC401在电气传动中的应用[1~3],但都侧重于介绍传动系统或者电机控制的算法,没有从芯片的角度系统地介绍ADMC401的原理和特点。ADMC401具有一套完备的外围控制接口和丰富的电机控制外设电路,将DSP的高速运算能力和外设电路的控制能力结合到一起,可以在高度集成环境中实现电机控制。本文将着重阐述ADMC401的原理和特点,并介绍它在工业控制中的应用。
1ADMC401的体系结构
ADMC401的体系结构图如图1所示,它主要由DSP内核和存储空间及电机控制外设电路组成。对全数字化高性能的电机控制来讲,ADMC401最具特色的电机控制外设电路是它的片内模/数转换系统、脉冲宽度调制单元和光电编码器接口单元。
1.1DSP内核和存储空间
DSP内核是ADMC401的“大脑”,它基于26MIPS定点ADSP-2171芯片。ADSP-2171芯片是AD公司ADSP-21xx家族的成员,其灵活的结构和完整的指令集允许该处理器能并行执行多种功能[4]。ADMC401被赋予了ADSP-2171的几个系统级的特征,如内存映射、中断系统和低功耗运行等。
ADMC401的DSP内核包含三个计算单元、两个数据地址发生器和一个程序定序器。计算单元包含一个算术逻辑单元ALU、一个乘法-累加器(MAC)和一个桶式移位器。
ADMC401有2K&TImes;24bit的片内程序存储RAM、2K&TImes;24bit的片内程序存储ROM以及1K&TImes;16bit的数据存储RAM。此外,ADMC401可以通过外部地址总线和外部数据总线扩展为14K&TImes;24bit的程序存储空间和13K×16bit的数据存储空间。
1.2模/数转换(ADC)系统
ADC系统在电机控制中扮演着重要的角色。它是控制器的“眼睛”,借助ADC系统,控制器才可以监视和调控电机的运行。ADMC401包含一个快速、高精度、多输入的ADC系统,工作模式十分灵活,其结构示意图如图2所示。
ADMC401的ADC系统有8路专用模拟信号输入,所有信号通过一个12bit的流水线闪速(Pipeline-Flash)模/数转换内核在2μs内全部转换完毕。整个系统在四分之一的系统时钟频率下工作,输入的模拟电压幅度可以达到4V(峰-峰值)。8路输入被分为两组,VIN0~VIN3为一组,VIN4~VIN7为一组。每组都有一个专门的输入端,它连接到采样保持放大器的反相输入端,把模拟量输入偏置到模/数转换内核正常的输入范围。
ADMC401的ADC系统有两种工作模式--同步采样模式和顺序采样模式。采用同步采样模式时,VIN0和VIN4、VIN1和VIN5、VIN2和VIN6、VIN3和VIN7组成四对双通道同步采样输入端,每一对模拟信号被同步采样和保持。采用顺序采样模式时,8路模拟信号在一个ADC时钟周期(或四个DSP时钟周期)内被逐路采样和保持。
该ADC系统有两种起动模式--内部命令起动模式和外部命令起动模式。内部命令起动是在PWM同步脉冲(PWMSYNC)的上升沿开始A/D转换;外部命令起动是在CONVST引脚出现上升沿时开始A/D转换。两种起动模式可以通过设置控制寄存器的值相互切换。
该ADC系统有两种附加模式--偏置校正模式和增益校正模式,用于校正系统的偏置和增益,以增加整个系统的工作精度。