电机控制是微控制器的一个重要应用领域。近几十年来,随着微电子工艺水平的提高,电机微控制水平有了飞速的发展。世界上著名的集成电路芯片制造商纷纷推出各自的产品,使得电机微控制器种类不断增多,功能日益增强。常见的有Intel公司的8CX196MC/MD/MH、TI公司的TMS320C24x系列、Motorola公司的M68HC08/16、ADI公司的ADMCxxx系列微控制器等等。
对于现代高性能的电机控制系统而言,除了要有一个功能强大的计算内核外,还需要一些附加的外部电路,如高分辨率的A/D变换器、多路输入输出I/O口等,尤其需要一个用于产生驱动逆变器功率开关元件的PWM信号的波形发生单元和定时器单元,这也是电机微控制器共同的重要特片。
1 基本结构
1.1 8XC196MC的基本结构
8XC196MC是Intel公司专门为电机高速控制所设计的一种16位微控制器,基本结构如图1所示。它有1个C196内核(寄存器-寄存器结构),当时钟频率为16MHz时,进行1次16bit×16bit运算需1.75μs;进行1次32bit/16bit运算需3μs;另外包括488字节的寄存器RAM、64KB程序空间、中断、7个I/O口共40条I/O口线,PTS工作方式支持串行输入、输出(SIO)功能;片内外设有1个13通道的A/D转换器,可工作在8位或10位模式,采样保持时间、转换时间、阀植检测方式和零偏补偿校正均可编程;2个16位定时器;1个事件处理器阵列(EPA)有4路捕捉/比较模块和独立的4路比较模块,它和定时器共同完成对事件监测与控制,具有125ns的事件处理分辨能力;1个三相波形发生器(Waveform Generator简称WG)和1个脉宽调制单元(PWM)。在运行中可动态选择8位或者16位的总线宽芳,并能通过HOLD/HLDA协议方便地实现多处理器通信。
8XC196MD是8XC196MC的改进型,引脚兼容且基本结构相同,只是在其基础上增加了如下功能;
①1路频率发生器产生的频率可编程的方波,适用于红外遥控通信;
②在EPA中,添加了2路捕捉/比较模块和独立的2路比较模块;
③增加8个I/O引脚,2个数字输入引脚及1个A/D输入引脚。
1.2 TMS320C240 DSP的基本结构
TI(德州仪器)公司于1997年推出的电机微控制TMS320C240,是第1片专门为满足复杂电机控制需求而设计的单片DSP控制器,其结构如图2所示。由于具有硬件乘法器及多总线结构,TMS320C240支持高速指令周期及单周期乘法,16位定点DSP内核的计算速度达20 MIPS(1个指令周期50ns),片内有544字的数据/程序RAM和16K字的程序ROM,外设包括1个专用于电机控制的事件管理器(可用于产生三相PWM信号和捕捉光电编码器的脉冲信号)、2个8路10位A/D变换器、1个看门狗定时器、1个串行通信接口(SPI)、1个串行外设接口(SCI口)和4个8位共32路I/O口。
1.3 ADMC331的结构
ADMC3xx系列是美国ADI(模拟器件)公司生产的单片DSP电机控制器。它们均以1个ADSP-2171DSP为基础内核,配以电机控制所需要的外设单元组成,主要包括ADMC300、ADMC328、ADMC330、ADMC331和ADMC401。其中,ADMC 328属于简单型控制器,仅有28个引脚,主要应用在家用电器或一般较简单的业控制系统中;ADMC300/330/331控制器引脚均为80个,性能居中,可较好地满足一般调速系统的控制要求;ADMC401为高档型DSP控制器,引脚多达144个,功能丰富,可应用于高精度且复杂的调速控制系统中。这里以ADMC331为例简要介绍一下其结构特点。
ADMC331集成了1个26MIPS的16位定点DSP内核ADSP2171和一系列电机控制所需设备。DSP内核并联了3个运算单元,ALU(算术逻辑)、MAC(乘加)和SHIFTER(移位)。ADMC331还提供了2K×24位的程序存储器(ROM)、2K×24位程序存储器(RAM)和1K×16位数据存储器(RAM),程序及数据存储器RAM内的存储内部可由其串口从外部ROM中以同步或异步方式装入,ROM中还固化了一些常用的电机控制用子程序和常数,为控制系统的程序设计提供了方便。从图3的结构框图中可见,ADMC331的外设包括1个16位三相PWM发生器,能够灵活编程产生精确PWM信号以驱动逆变器的功率开关;7个模块输入通道,最高分辨率为12位,最高采样频率为32.5kHz;2个辅助8位PWM输出通道,可用来为被控的功率因数校正或其它开关变换器提供开关信号,亦可通过合适的滤波网络作为数模转换的输出;16位的监视定时器和可编程的16位定时器;每位均可设置为输入/输出或中断的24位数字可编程输入/输出(PIO)端口及2个双缓冲的串行口。再加上丰富的DSP操作指令的支持,单周期指令执行时间可达38.5ns,使之不失为电机调速控制的理想器件。
2 PWM信号的形成
对于任何种类的三相电机控制系统,均要求产生3对完善的PWM信号以驱动逆变器上下桥臂功率开关元件,并要求每对PWM信号有适当的导通延时,以防止下桥臂功率开关同时导通而毁坏系统。这也正是电机微控制器区别于其它种类微控制器的重要特征。
2.1 8XC196MC的PWM信号的形成
片内波形发生器(WG)是8XC196MC的特色设计之一。这一片内外设简化了产生PWM波形的控制软件和外部硬件,通过编程可产生独立的、具有相同频率和工作方式的3对PWM波形,并由P6口直接输出6路PWM信号给逆变器,且三相互补不重叠。在使用16MHz的晶振时,输出信号频率可达8MHz。在采用边沿触发方式时,分辨能力为125ns;中心触发时,分辨能力为250ns。WG具有多种可编程频率、占空比和消隐时间,每路波形输出的驱动能力很强,输出极性可编程,并能够制为高或低电平。为防止同一桥臀上的2个功率开关器件发生直通现象,还可编程来设置互锁时间。在使用16MHz的晶振时,互锁最短时间为0.125μs,最长为125μs。此外,还具有保护功能,当发生意外事件时,响应外部事件而立即停止输出。载波频率计算见本刊网站补充版。http://www.djp.com.cn
2.2 TMS320C240的PWM信号的形成
TMS320C240的事件管理器(EV)可产生PWM信号,直接控制电机功率驱动器,如图4所示。
由图4可见,3个全比较单元中任一个均可与EV模块中的GP定时器死区单元和输出逻辑一起用于产生一对有可编程死区和输出极性的PWM信号。对应于EV模块中的3个全比较单元共有6个这样的PWM输出。
图5给出了当GP定时器工作在单个或连续加/减计数模式时产生的对称PWM波形。当GP定时器工作在这两种模式中的任一种时,波形发生器的输出状态变化如下:计数器从0开始计数,到第1个比较匹配发生时刻前输出状态保持不变,第1个比较匹配时输出状态切换。随后保持不变到第2个比较匹配发生时刻,在第2个比较匹配时输出状态切换,周期结束前输出状态保持不变。如果没有第2个比较匹配发生而且下一个周期的新比较值不为0,则在周期结束时输出复位为0;若比较值为0,则在周期开始输出为1,并在第2个比较匹配发生之前输出状态保持不变。如果周期的其余时间内比较值不为0,在从0到1的第1个转换时刻之后,输出一直保持为1到周期结束。当发生以上这种情况时,如果下一个周期的比较值仍旧为0,输出仍旧为1,实现了PWM脉冲的占空比连续无突变地在0~100%之间变化。
2.3 ADMC331的PWM信号的形成
与传统的单片机查表方法不同,ADMC331的PWM信号的产生是由其内部的灵活可编程的三相PWM控制器来完成的。通过对PWM单元进行合适的编程并利用PWM单元中的专用函数,可使其产生满足不的电机调速用逆变器开关触发模式的数字PWM波形。图6为ADMC331三相PWM控制器的功能框图。
输出PWM信号的开关频率、死区时间和最小脉冲宽度均可分别设置,并且允许用高频斩波信号对PWM输出波形进行调制,以便利用变压器进行隔离和驱动。16位精度的三相PWM发生器能产生高达38.5ns的边缘分辨率。
ADMC331的PWM单元建立在一个独立的三相定时单元基础上,由3个确定的周期寄存器控制,分别控制3对PWM输出。根据应用的具体要求及所需PWM方案来编制DSP程序6。路PWM信号的极性可根据实际应用中门极驱动电路的结构和逻辑由PWMPOL引脚进行设置,每路PWM信号的输出均可通过独立的使能寄存器PWMSEG来决定。PWM控制信号计算见本刊网站补充版。
3 性能比较
目前,越来越多的集成电路芯片制造商纷纷致力于电机微控制器的研制与生产,因而扩大了对对类芯片的选择空间。在此仅将上文所列举的三种具有代表性的芯片性能加以比较,如表1所列。
8XC196MC单片机片内外设丰富。通过对WG的特殊功能寄存器(WG_RELOAD、WG_COM_Px、WG_CON、WG_OUTPUT和WG_PROTECT)进行编程,并利用WG中断就可产生各种PWM信号,驱动各种电机和其它由电力电子器件构成的设备,它把必需的外接芯片和元件降低最低限度。因此,价格与DSP器件相比便宜得多。在一些控制要求不太高的场合,它是理想的选择。
与典型单片机相比,DSP器件集成度高,CPU速度快,存储容量大。DSP采用改进的哈佛结构,独立的程序空间和数据空间使之允许同时存取程序和数据。内置高速的硬件乘法器,增强的多级流水线,使DSP器件具有高速的数据处理能力。单片机采用冯·诺依曼结构,程序和数据在同一空间,同一时刻只能单独访问指令或数据。ALU只能作加法,乘法需要用软件来实现。对一些复杂的运算如sin、cos等,需采用查表方式,因而需要较多的时间和空间。结构差异使DSP器件比16位的单片机单指令执行时间快8~10倍,完成1次乘加运算快16~30倍。TMS320C240和ADMC331都具有DSP内核,从而将DSP的高速运算能力与面向电机的高效控制能力集于一体,应用于交流电机控制系统中均可获得较好的控制效果,因而更具有竞争力,但它们价格较为昂贵。
表1 典型电机微控制器性能对照表
由于ADMC331比TMS320C240出现得晚,所以ADMC331采用了一些新的技术,使其性能更好。如ADMC331的DSP内核为并行的体系结构,加快了程序执行速度。可在1个处理周期内完成乘加运算;它的PWM发生单元的灵活性和可编程性,使之能够产生多种PWM信号;其内部程序存储器固化了许多电机系统矢量控制所必需的子程序,方便了控制系统的程序设计,大大减少了控制系统的开发时间。TMS320C240拥有4路捕获单元,捕获单元被用于高速I/O的自动管理,它监视输入引脚上信号的变化,记录输入事件发生时的计数器值,即记录下所发生事件的时刻。该部件的工作由内部定时器同步,不用CPU干预;而ADMC331没有设计这种捕获单元,这也是造成它的A/D转换速度较慢的重要原因。