《双向H桥直流斩波电源倍频运行模式的拓扑结构简化.doc》由会员分享,可在线阅读,更多相关《双向H桥直流斩波电源倍频运行模式的拓扑结构简化.doc(29页珍藏版)》请在三一办公上搜索。
1、第二章 双向H桥直流斩波电源倍频运行模式的拓扑结构简化加速器电源一般运行于直流或脉冲状态,大部分电源输出功率在100kW 以下, 属于中小功率的设备,以开关电源为多。基于H桥拓扑的电源可以运行于多种模式:逆变模式,相当于单相全桥逆变器,常见于中小功率的单相高功率因数电路,采用移相全桥控制【4】【5】;直流倍频斩波模式和直流脉冲倍频斩波模式【6】,相当于两个斩波器串联,具有BUCK电路的运行特性。当H桥运行于上述后两种工作状态时可以输出双极性的直流/脉冲电流波形,很适合加速器系统四极铁、六极铁等运行的需要,因此也是本论文研究的重点内容。21 双向H桥直流斩波电源的常见拓扑结构基于H桥拓扑的电源其
2、前级输入是一台直流电源,在中等或大功率场合可以采用三相二极管不控整流方案或者三相IGBT矢量整流方案实现,整台电源拓扑如图2.1和图2.2所示;在小功率场合常采用单相AC/DC电路,其拓扑电路类型较多,但功能都是为工作于斩波状态的H桥提供一个符合功率、电压纹波等指标要求的恒定电压源,整台电源拓扑如图2.3所示。图21 前级电源为三相不可控整流的H桥直流/脉冲开关电源拓扑图22 前级电源为三相IGBT矢量整流的H桥直流/脉冲开关电源拓扑图23 前级电源为单相AC/DC电源的H桥直流/脉冲开关电源拓扑在前级电源满足输出功率、输出电压纹波、输出电压稳定度和精度等指标的情况下,为简化研究,均可以将上述
3、几种拓扑结构的电源视为一个理想电压源。图21、图22和图23中电源输出负载端由电容C31、C32等组成的阻容网络属于高频高压小容量的共轭滤波器,不影响电源工作点等基本运行原理,因而运行于直流倍频斩波模式和直流脉冲倍频斩波模式的加速器H桥拓扑电源可以简化为下图2.4所示结构。图24 简化结构的H桥直流/脉冲开关电源拓扑22 H桥直流斩波电源在倍频运行模式下的拓扑结构简化工作于倍频斩波模式时,假定H桥对角线上1、4管斩波工作时流入负载的电流方向为正极性,2、3管斩波工作时负载的电流方向为负极性;PWM脉冲由一个三角波和两个误差信号比较产生,这两个误差信号都来自于同一个调节器,幅值相等,比较后产生的
4、PWM波形如图2.5所示。图25 H桥对角线1、4管倍频斩波的PWM波形H桥对角线上1管的PWM波形为VT1,4管的PWM波形为VT4。VT1和VT4在都大于50占空比时H桥对角线上的1管和4管有公共导通时间并产生倍频斩波效果如图2.5中等效V0波形的所示。在T0T1段,V1导通、V4关断,电路等效PWM波形V0为零。此时前级直流电源没有向负载传递能量,在滤波电抗器和感性负载的电感共同作用下电路通过V1与反并联二极管VD3续流,电流方向如图2.6(a)所示。在T1T2段,V1和V4共同导通,电路等效PWM波形V0开始有TW的不为零时间,前级直流电源开始向负载传递能量,负载中流过电流,电流方向为
5、电源经V1负载V4流回电源如图2.6 (b)所示。T2T3段,V1再次关断,V4继续导通,电路等效PWM波形V0为零。前级直流电源停止向负载传递能量,由于滤波电抗器和感性负载的电感共同作用,流经电感的电流方向不变,电路通过V4与反并联二极管VD2续流,电流方向如图2.6 (c)所示。T3T4段,V4继续导通,V1再次导通,电路等效PWM波形V0又有TW的不为零时间,前级直流电源又开始向负载传递能量,负载中流过电流,电流方向为电源经V1负载V4流回电源如图2.6 (d)所示。T4T5 段,V1继续导通,V4再次关断,电路所有状态跟T0T1段相同,又开始新的一个工作周期,如图2.6 (e)所示。图
6、26 H桥对角线1、4管倍频斩波T0T5阶段电路的电流途径H桥拓扑电源工作于图2.6所示方式的优点显而易见:1. 电路结构简单,没有桥式电路的上下桥臂直通问题(对角线上1、4管工作时另一对角线上的2、3管始终处于关断状态);2. 开关管的工作频率低,开关损耗小,可靠性高;3. 开关工作于Fs频率,但电路的等效实际输出脉冲频率却为2Fs; 4. 电源输出可以实现平滑无极换向。该电路和工作方式在数字化时产生一个缺点:普通BUCK电路的占空比在计数值为0TP范围内产生01.0的调解范围,而倍频斩波方式下计数器以UP-DOWN方式(即计数器先从0递增计数到周期值TP,再从TP递减计数到0)计数,PWM
7、的产生、调节范围不一样,1、4管的PWM比较范围被限制在0.5 TP,牺牲了1/2的PWM范围,数字器件的DPWM分辨率因此对应损失了一半。若要满足加速器特种电源的高精度、高分辨率的要求,对数字器件的PWM分辨率能力要求很苛刻。从图2.5和图2.6可以看出,在一个开关周期Ts内H桥斩波器等效导通、关断了两次,取得了倍频效果,按照前述假定:H桥对角线上1、4管斩波工作时流入负载的电流方向为正极性,2、3管斩波工作时负载的电流方向为负极性,那么图2.4的拓扑结构可以再次简化等效为两个反方向并联的BUCK斩波电路,如图2.7所示。图27 H桥倍频斩波电路等效的BUCK电路图中Vin为等效的前级理想直
8、流电压源输出电压,S14和D14分别为H桥对角线1、4管斩波时整个电路的等效开关管和等效续流二极管,Lf和C分别是H桥口的等效二阶LC滤波网络元件。假定整个电路参数对称,2、3管斩波工作时,有对应的等效元件Vin、S23、D23、Lf和C。至此加速器双向H桥直流斩波电源倍频运行模式简化为我们非常熟悉的BUCK电路带感性负载的情况加以研究。第三章加速器H桥直流斩波电源的系统建模与控制算法31 开关电源数学建模方法介绍对DC-DC变换器进行数学建模是分析其动态特征的基本工作。人们通常把DC-DC变换器一个开关周期内两个或多个不同的拓扑结构进行某种意义上的平均,将DC-DC变换器本质非线性时变电路转
9、换为小信号下的非时变线性电路,即用平均的方法获得对DC-DC变换器连续解析的数学描述,进而可以利用经典的线性电路特性来分析DC-DC变换器的稳态/暂态工作特性。其中最典型的建模方法是Middlebrook R.D和Cuk S在1976年首先提出的状态空间平均法【7】和Vorperian V在1987年首先提出的三端开关器件模型法【8】。状态空间平均法(以下简称状态平均法)认为:虽然DC-DC变换器属于本质非线性时变电路,但在一定条件下,可以将电路中的电感、电容、电阻和开关器件视为理想元件。在一个开关周期内根据开关器件的导通和关断状态,这些元件组成了不同的电路网络;以储能元件的物理量(电感电流和
10、电容电压)为状态量,利用时间平均方法就可以得到一个完整开关周期内的平均状态变量。这样DC-DC变换器的本质非线性时变电路就可以转换为连续的线性非时变电路,在此基础上就可以利用传统经典理论进行进一步的分析。状态平均法的优点是:物理概念清晰、明确,分析方法简单易用,因而在实际当中得到广泛应用;缺点是:要求电路中的开关器件工作频率远远大于电路特征频率,状态方程中的输入变量要求是常数或者相对缓慢变化的变量,因而不适用于输入变量急速变化的情况。三端开关器件模型法(以下简称三端器件法)是从电路结构出发,利用时间平均技术进行分析。三端器件法将BUCK、BOOST、BUCK-BOOST、CUK这四种基本的DC
11、-DC变换器中的可控开关元件及其相邻的二极管作为一个整体看成一个三端器件,利用这个三端器件的端口平均电压和平均电流关系来描述整个DC-DC变换器的工作情况,更复杂的电路可以由上述四种变换器的结构推导得到。三端器件法的优点是:建立了大小信号统一的开关模型,既可以进行稳态分析又可以进行动态小信号分析,方法简单灵活;缺点是需要预知DC-DC变换器的直流稳态特性,只用于理想开关变换器的建模与分析。32 加速器H桥直流斩波电源的状态平均法系统建模在图2.7所示电路中以负载为中心左右两边的等效电路不同时工作,因而可以把H桥电路倍频斩波的工作过程转换为BUCK电路带大电感负载时的情况研究。以1、4管斩波工作
12、时为例,考虑滤波电感Lf的等效串联电阻Rf,滤波电容C等效串联电阻Rc这两个寄生参数,忽略等效可控开关器件和等效二极管的导通电阻和其它寄生参数,考虑磁铁负载的电感量为L,其等效串联电阻为R,磁铁电感与滤波电感不存在耦合关系,电路工作在CCM(Continuous Conduction Mode)状态。当等效开关管处于导通状态时,图2.7可等效为图3.1(a),当等效开关管处于关断状态时,图2.7可等效为图3.1(b)。图31(a) 等效开关管导通状态时等效电路图31(b) 等效开关管关断状态时等效电路对图3.1(a)列方程为: (3.1)令x=if iL vcT,u=vin iinjT,把上式
13、写成状态方程形式: (3.2)式(3.2)展开为:(3.3)则:同样,对图3.1(b)列方程为:(3.4)经整理得到:(3.5)显然,把上式也写成状态方程形式如下(3.6)则:利用状态平均法,我们可以得到:(3.7)注意到A1=A2,C1C2,E1E2,所以:dA1+(1-d)A2=A1=A2=A;dC1+(1-d)C2=C1=C2=C;dE1+(1-d)E2=E1=E2=E;另外:至此,利用状态平均法得到了H桥电路倍频斩波的状态方程参数。将式(3.7)展开为:(3.8)暂不考虑输入电压波动、电源输出阻抗等系统参数与性能,令vin=Uin,iinj=I0,各状态量与变量用稳态分量和扰动分量表示
14、,即,由式(3.8)可得直流电路模型和交流小信号模型,即式(3.9)、式(3.10):(3.9)(3.10)从(3.10)中得到加速器稳流电源所关心的控制量占空比d与负载电流iL之间的关系,即占空比与负载电流的开环传递函数如(3.11)所示:(3.11)另外,对输出电压的传递函数也可由式(3.10)求得如式(3.12)所示:(3.12)若忽略等效滤波电感Lf的等效串联电阻Rf,并且将负载换成纯电阻负载即令L=0,则式(311)、(312)与文献【9】中用状态平均法得到的CCM(Continuous Conduction Mode)模式数学模型完全相同,因而可以将文献【9】中的结论看作是本文的一
15、个特例;文献【10】中使用电路平均法得到了连续工作模式数学模型,若忽略其中开关器件导通电阻并将负载换成纯电阻负载条件,则本文可视为用不同建模方法对文献【10】的一个印证。为验证本数学模型的正确性,针对一台15A/15V小电源样机上做了仿真和实验验证。实验参数为Lf=0.68 mH、Rf=1 m、C=30 F、Rc=0.1 m、R=0.766 、L=0.34 mH(实验负载为电抗器串联电阻),电源开关频率为15 kHz;使用MATLAB对模型进行仿真分析,结果如图3.2所示。占空比与负载电流的传递函数阶跃响应实际测量波形如图3.3所示,阶跃响应实验与仿真结果的数据对比如图3.5所示。图32占空比
16、与负载电流的开环传递函数伯德图图33占空比与负载电流的传递函数阶跃响应图34阶跃响应实验与仿真结果的数据对比测量用电流反馈器件为ABB LEM电流传感器EL50P1,采样电阻为75 ,示波器为泰克TPS2024。由于TPS2024没有扫描捕捉功能,利用其触发功能难以捕捉到系统的阶跃响应,但利用数字电源的给定可编程特点,软件编程使用长周期小占空比的门信号序列来替代阶跃给定信号,便可用TPS2024的普通触发功能捕捉到系统电流的阶跃响应。因为电路中双管倍频斩波与单管斩波的差异,另外样机的机箱结构导致滤波电抗器Lf与C的实际高频参数难以准确测量,实验与仿真数据不完全一致。实验测量数据显示系统的实际动
17、态性能比仿真结果稍快,但整体动态响应特性基本相符,证明该电源数学模型基本准确。33 加速器H桥直流斩波电源的控制策略与算法对电源的拓扑结构做精确的数学描述以表征其性能及特性是电路分析与电源设计的基础,而电源控制策略的研究和选择则是在电源的拓扑模型基础上为电源选择适合电源特性的闭环控制方法。控制策略和算法的选择对电源的正常工作和是否能够获得满意的性能非常重要。新的控制策略和算法若是能够在不增加硬件成本甚至减少成本简化设计的前提下改进或达到电源的各项性能则是所有设计者热切期望的。尤其是数字电源的出现,使得算法的改进以提高电源性能降低成本变得更加直观和容易,因而吸引了大量的研究。DC-DC变换器的控
18、制策略经历了从早期的电压模式控制(Voltage Mode Control)到电流模式控制(Current Mode Control)两大阶段。电流模式控制又先后出现了峰值电流模式控制 (Peak Current Mode Control)和均值电流模式控制 (Average Current Mode Control)这两种控制算法。目前各种新颖的控制策略层出不穷,如何提高电源动态性能和降低/简化电源设计是其中的一个研究热点,在国内外的学术资料上可以看到大量的文献利用数字电源的优势将各种智能控制、非线性控制方法与常规的控制策略相结合以提高电源的性能【】【2】【3】【4】,其技术发展趋势已经很明
19、显。电压模式控制图35 BUCK变换器电压模式控制图电压模式控制(Voltage Mode Control)如图3.5所示,它是20世纪60年代开关稳压电源刚出现时发展起来的控制方法,仅仅用单电压环控制调节,比较简单,容易实现,而且占空比调节不受限制。这种方法与必要的保护电路相结合,能够满足很多场合的应用要求,因此至今仍被工业界广泛的应用。但电压模式控制的缺点也是明显的:没有可预测输入电压影响的电压前馈机制,对瞬变输入响应慢,整个电源的动态响应也慢【15】。电流控制模式中的峰值电流模式控制(Peak current Mode Control)图36 BUCK变换器峰值电流模式控制图峰值电流模式
20、控制(Peak current Mode Control)如图3.6所示。峰值电流模式控制来源于单端自激式反激开关电源,20世纪70年代末期学术上开展了深入建模研究,到80年代实现该控制算法的PWM集成电路(UC3842,UC3846等)的出现迅速推广了该控制算法的应用。峰值电流模式控制(Peak current Mode Control)跟电压模式控制(Voltage Mode Control)最根本的区别在于引进了电感电流iL,PWM脉冲的产生不再是电压误差信号uc与锯齿波的比较产生,而是uc与开关器件峰值电流iL所对应的电压相比较。峰值电流模式控制是双闭环控制系统,电流内环按照每个脉冲瞬
21、时快速工作,控制电感电流的动态变化,电压外环仅控制输出电压。峰值电流模式控制与电压模式控制相比的具有更快的负载响应或输入瞬变响应速度、自身具有限流能力易实现过流保护,更容易均流等优点;但峰值电流模式控制存在开环稳定性问题,在占空比大于50是会产生次谐波震荡,需要斜坡补偿【16】【17】【18】【19】。电流控制模式中的平均电流模式控制(Average current Mode Control)图37 BUCK变换器平均电流模式控制图平均电流模式控制是在峰值电流模式控制的基础上改进得来,在20世纪90年代后期开始成熟应用于动态响应要求较高的开关电源。平均电流模式控制的电压反馈依然从负载端取样,与
22、电压给定做差后生成uc,电感电流iL经采样后与uc做差,这个差值经过电流积分器产生的信号与锯齿波比较产生PWM信号。平均电流模式控制中引入了电流积分器,既提高了电流控制精度又增强了抗干扰能力,不需要斜坡补偿,但是对负载变化的响应速度不如峰值电流模式控制方法快【20】【21】【22】。对于加速器用电源的领域,电源的控制模式具有一定的特殊性。由于电源的负载是磁铁,电感量通常相对较大,从控制角度讲电源的负载是一个很大的一阶惯性环节,而电源的控制/调节目标是负载的电流,当对电流进行单环模式控制时,这种控制模式本质属于电流模式控制,但外观上更接近于电压模式控制。对于同时还要求稳压控制的场合还需要引入负载
23、电压做为电压反馈。加速器电源控制模式如图3.8所示。图38 加速器电源控制模式图在控制模式下对于调节器算法的选择问题上,传统的PID算法不管在模拟电源时代还是在新出现的数字电源内都是最常见的选项。这是因为PID算法的调节效果一般能够满足绝大多数应用场合的要求,在连续系统内是技术最成熟、应用最广泛的一个调节方式。国外加速器实验室如瑞士光源、德国GSI所研制的数字电源不带大电感负载比如超导磁铁时选用的调节器算法是数字PID算法,国内上海光源与北京散列中子源新研制的数字电源也是选用的数字PID算法。在加速器H桥倍频斩波电源直流运行时本文采用的是模拟PI算法经过离散化得到的数字PI算法【23】【24】
24、。模拟PI调节器如图3.9所示。图39 模拟PI调节器其模拟积分公式如式(3.13)所示:(3.13)将上式离散化变成式(3.14):(3.14)显然式(3.14)的计算量过大,处理器计算每一次的(k)值都要进行k次累加计算,需要更简洁的计算方式。因此,写出k-1次的差分方程如式(3.15)所示:(3.15)用式(314)减去式(315),由此得到式(3.16):(3.16)整理得到式(3.17):(3.17)式(3.17)在计算时只需记住上一次的(k)和e(k)的值就可以得出很简单的计算出当前(k)的值,因而更具实用性。可以令,将式(3.17)记为式(3.18):即:(3.18)由此我们得到
25、一个简单且易于计算的PI调节器的离散方程。423 高精度数字调节器的PWM信号输出解决方案PWM信号是调节器的调解结果最终转化成电力电子开关元器件的驱动波形输出,从数字调节器的角度看,PWM分辨率是影响电源调节器调节效果的最后一个因素,同时也是制约数字电源调节器的最后一个环节。在传统的模拟电源中不存在PWM分辨率的问题,因为只要实际的运算放大器、PWM管理器件(例如UC3637)的模拟带宽足够,对于调节器输出的模拟PWM波形可以看作是分辨率无穷高的理想信号。对数字电源而言,不管采用什么样的数字器件方案,即便是浮点的PID调节输出结果最终也要转换为定点PWM结果,不存在一种浮点类型的PWM波形生
26、成机制,能够输出毫无精度损失的调节器输出结果,这是由于目前数字器件的PWM波形生成机制决定的。数字PWM波形生成机制是使用周期性计数的计数器与特定目的的数值比较,在比较发生匹配时按照一定的逻辑关系产生一个或多个模拟电平的翻转,从而将一个数字量转换成一定占空比的模拟波形,从数字器件的工作过程看PWM波形生成/管理器是一个0阶保持器,具有DAC的特性。因为数字器件的计数是根据计数时钟(一般为系统工作频率)逐个时钟计数,产生的必然是定点的整型数据,所以数字PWM波形产生了分辨率的问题。决定数字PWM波形分辨率的一般有两个频率,一个是PWM波形生成/管理器的计数器的计数频率,为提高数字PWM分辨率,一
27、般这个计数频率都选择系统能够正常工作的最高频率,我们记为fsystem;另一个是电力电子开关元器件的开通关断工作频率,我们记为fswitch。数字PWM分辨率的一般计算公式可以用式(4.1)所示绝对PWM分辨率,也可以用式(4.2)所示相对PWM分辨率。(4.1)(4.2)从式(4.2)可以计算,如果电力电子开关元器件的开通关断工作频率为20KHz,要达到加速器对电源的高精度调节输出的要求,取16位PWM分辨率,那么要求数字器件的系统工作频率要达到1.31GHz,如果取18位PWM分辨率,那么要求数字器件的系统工作频率要达到5.24GHz,这种要求显然都是不现实的。通常嵌入式系统的数字器件工作
28、频率为几十MHz到几百MHz,以100MHz计算,数字PWM分辨率在20KHz器件开关频率下的分辨率为5000,相对分辨率仅在1213位之间。可以说电力电子开关元器件的开通关断工作频率越高,取得满意的数字PWM分辨率对数字器件的要求就越高。而提高数字PWM分辨率的方法也有若干种,文献【27】总结和比较了双PWM调制法、插值法、数字平均法这几种方式来生成高精度PWM波形,总体而言这些都属于以软件算法为主,依靠软件来弥补数字器件的DPWM分辨率不足的缺陷,在实际应用中也取得了明显的效果。但依靠软件算法来提升PWM分辨率加大了软件编程的工作量,算法的实现也比较复杂。TI的最新C28X系列DSC均拥有
29、TI专利HRPWM(High-Resolution Pulse Width Modulator)技术使得最新的C28X系列DSC能有拥60150ps的绝对PWM分辨率,其中TMS320F2808能够在100MHz系统频率下获得150ps的绝对PWM分辨率,按式(4.1)计算相当于达到系统工作频率提升至6.67GHz的PWM分辨率性能。HRPWM技术【28】是TI针对高频开关电源应用场合DPWM分辨率不高提出的硬件解决方案,基于微边缘位置定位器(micro edge positioner-MEP)技术来实现极高分辨率的PWM波形。MEP逻辑单元能够将一个传统PWM生成/管理器粗糙的系统时钟边沿极
30、为精细得刻划,其时间步长为150ps。图416展示了在MEP时间步长刻划下一个粗糙系统时钟和PWM脉冲边沿位置关系,图中MEP时间步长是在一个8位宽度的PWM比较寄存器A的扩展寄存器CMPAHR来控制的。图416 粗糙系统时钟和PWM脉冲边沿位置在MEP刻划下的关系输出的PWM脉冲波形占空比值是由比较寄存器CMPA与HRPWM相关寄存器CMPAHR内的值共同决定,实际运算时采用Q格式运算,Q格式数据计算出的占空比整数部份值填充传统PWM波形生成/管理器的16位比较寄存器CMPA,Q格式数据计算出的占空比小数部份值填充HRPWM模块的16位扩展比较寄存器CMPAHR(实际有效调节范围是8位)。依
31、靠TI的HRPWM技术能够极大的提高数字PWM分辨率,软件应用方法简单,但运算数据要使用TI定点DSC和DSP使用的Q格式数据。在计算过程中PWM占空比的值转换为两个比较寄存器的值要分开计算占空比整数部份和小数部分,因而要做2次乘法一次移位和一次加法运算才能将高精度的占空比转换位寄存器输出值。TMS320F2808属于改进型哈佛结构MCU,具有5条指令流水线,100MHz系统工作频率,可以在一个机器指令周期内利用硬件乘法器完成一个32位32位的乘法,因而上述软件运算在时间上的开销非常小,完全可以忽略。本文提出的加速器电源数字调节器将TMS320F2808的HRPWM输出能力完全利用,共输出7路
32、PWM脉冲,按照功能可以分成4组。其中PWM1和PWM2一组、PWM3和PWM4一组,上述PWM1PWM4是高分辨率PWM信号(150ps);PWM5和PWM6一组,只具备普通PWM分辨率(10ns);PWM7为过压或其他故障时保护功率管的PWM驱动信号。可以用软件定义是否使用PWM1PWM4的150ps的高分辨率PWM功能,也可以用软件定义使能PWM1PWM7功能管脚。因而数字电源调节器可以适应任何一种功率开关管数量小于等于4路的加速器电源,也可以适应功率开关管数量等于6的大功率普通精度电源。PWM3、PWM4和PWM5、PWM6的连接方式跟PWM1、PWM2这一组完全相同,以PWM1、PW
33、M2和PWM7为例说明如图417所示。图417多路高精度PWM调节信号通道示意图TMS320F2808的EPWM1A、EPWM2A送入高速门电路74F08的A0、A1,从74F08的O0、O1输出送入高速光藕HCPL063的两输入管脚,经隔离后从HCPL063输出PWMOUT1信号和PWMOUT2信号;数字电源故障硬件连锁保护信号P_PWM送入74F08的B0、B1在故障条件时硬件封锁PWM脉冲。TMS320F2808的GPIO11(PWM7)送入高速门电路74F08的A2、B2,从74F08的O2输出送入光藕TLP521-1的输入管脚,经隔离后从TLP521-1输出PWMOUT7信号。43
34、高精度数字电源调节器若干软件技术问题本文提出的数字电源调节器是基于TMS320F2808的定点DSC方案,主要软件开发环境是TI的集成开发环境CCS(Code Composer Studio IDE)。对于C28X系列定点DSC,TI提供了虚拟浮点引擎IQMATH库及快速傅立叶变换库、滤波器库等其它定点算法库来帮助完成各种较为复杂的数学运算。用户使用规定的定点数据格式和算法库的定点数学运算函数可以很方便的实现各种数字调节器所需要的控制算法。在实际使用过程中涉及到TI 定点DSC/DSP的Q格式数据与PU值问题,定点外设如ADC、DAC、PWM波形生成/管理器的数据格式转换与定标问题以及数字调节
35、器的调节算法最终代码实现问题。以下将对上述问题在软件层面展开较为详细的论述。431 关于C28X系列DSC内Q格式数据与PU值的用法Q格式简言之就是TI的定点数字器件运算小数时采用的一种数据格式。由于定点数字器件如各种单片机和DSC,没有浮点处理器或协处理器,不能直接处理小数。在过去的8位、16位单片机时代通常采用一个简单的方法,即变量依然定义为定点类型如int或者long int,然后把变量放大固定的倍数如10倍(对应保留小数点后一位的精度)或者100倍(对应保留小数点后两位的精度)等。这个方法也算简单有效但是不太灵活,除正常运算时需要仔细考虑数据溢出外,遇到数据精度变化的场合更要仔细检查重
36、新编译所定义放大倍数等常数。大多数的数字器件厂商对其定点产品都提供一定编译技术支持,使开发者能够在其开发软件环境内部能够直接使用C语言定义的浮点变量和常量,依靠C语言这种高级语言在软件应用层面上“抹平”了浮点和定点硬件的差异。这种方法使得开发者能很容易的处理一些计算任务不重但需要处理浮点数据的问题,缺点就是牺牲了一些代码的效率和执行速度,在高速实时的大运算量场合不适用。TI为解决其定点DSC和DSP进行小数运算问题,也提出了一个简单有效而且非常灵活的定点运算方法。TI规定在定点DSC产品内(以32位DSC为例,即TMS320F280x、TMS320F2801X、TMS320F2802x以及TM
37、S320F281x的芯片)32位Q格式数据是32位有符号整型数据,其中第31位是符号位,第30位至第n位表示浮点数据的整数部分,第n-1位至第0位表示浮点数据的小数部分,下图418所示为Q31、Q0、Q24格式举例:图418 Q31、Q0、Q24格式数据跟上述的第一种方法的思路类似,Qn格式数据实质就是将浮点数据x乘以2n以后取整舍去小数部分后的整数部分。显然,TI的Q格式数据所能支持的最高精度是Q31格式,但所能表示的数值范围最小;能表示的数值范围最大的是Q0格式,也就是普通的32位有符号数据,但丧失了表述小数的能力。下表4-4是各种Q格式数据数值范围及分辨率表【29】。表4-4 Q格式数据
38、数值范围及分辨率表数据类型范围分辨率/精度最小值最大值_iq31 -1 0.999 999 9995 0.000 000 0005 _iq30 -2 1.999 999 999 0.000 000 001 _iq29 -4 3.999 999 998 0.000 000 002 _iq28 -8 7.999 999 996 0.000 000 004 _iq27 -16 15.999 999 993 0.000 000 007 _iq26 -32 31.999 999 985 0.000 000 015 _iq25 -64 63.999 999 970 0.000 000 030 _iq24
39、-128 127.999 999 940 0.000 000 060 _iq23 -256 255.999 999 981 0.000 000 119 _iq22 -512 511.999 999 762 0.000 000 238 _iq21 -1024 1023.999 999 523 0.000 000 477 _iq20 -2048 2047.999 999 046 0.000 000 954 _iq19 -4096 4095.999 998 093 0.000 001 907 _iq18 -8192 8191.999 996 185 0.000 003 815 _iq17 -1638
40、4 16383.999 992 371 0.000 007 629 _iq16 -32768 32767.999 984 741 0.000 015 259 _iq15 -65536 65535.999 969 482 0.000 030 518 _iq14 -131072 131071.999 938 965 0.000 061 035 _iq13 -262144 262143.999 877 930 0.000 122 070 _iq12 -524288 524287.999 755 859 0.000 244 141 _iq11 -1048576 1048575.999 511 719
41、0.000 488 281 _iq10 -2097152 2097151.999 023 437 0.000 976 563 _iq9 -4194304 4194303.998 046 875 0.001 953 125 _iq8 -8388608 8388607.996 093 750 0.003 906 250 _iq7 -16777216 16777215.992 187 500 0.007 812 500 _iq6 -33554432 33554431.984 375 000 0.015 625 000 _iq5 -67108864 67108863.968 750 000 0.031
42、 250 000 _iq4 -134217728 134217727.937 500 000 0.062 500 000 _iq3 -268435456 268435455.875 000 000 0.125 000 000 _iq2 -536870912 536870911.750 000 000 0.250 000 000 _iq1 -1073741824 1 073741823.500 000 000 0.500 000 000 _iq021474836482147483647.000 000 0001.000 000 000Q格式数据与浮点数据的转换公式为:XQ_format=(int
43、)Xfloat2Q (4.3)例如浮点常数计算取值3.1415926(保留7位小数点),转换为Q24格式的数据过程为:3.1415926(原始浮点数据)-3.1415926*224 (十进制)52707177.6 ( 十进制)- 52707177 (取整,十进制)- 0X0324 3f69(32位十六进制长整型)而将定点的Q格式数据转换为原始的浮点数据就是上述过程的一个逆转,转换公式为:Xfloat =(int)XQ_format2-Q (4.4)仍然以浮点常数为例,将刚才定义的常数3.1415926的Q24定点格式值0X0324 3f69还原为最初定义的浮点数值过程为:0X0324 3f69
44、(32位十六进制长整型) -52707177*2-24( 十进制)- 约为3.14159256,可见相对原定义值3.1415926转换为Q24格式的数据仅仅损失了0.00000004!这点微小的运算误差造成的精度损失在加速器高精度稳流电源中也是允许的。TI所提供的集成开发环境CCS同样提供了编译技术支持,在C语言环境上“抹平”了浮点数据与定点数据的硬件差异,而且对定点的DSC提供了IQmath虚拟浮点算法库的支持,使得其32位定点DSC能够很方便快捷得处理各种小数运算而且能够取得各种令人满意的精度。Q格式数据的转换由于是以2为模进行的,充分利用了数字器件二进制运算的本质特征,因而不同Q格式之间
45、的转换、Q格式数据跟其它整型数据的转换、浮点数据向Q格式数据的转换都非常简单,所需运算量非常少。Q格式数据很好的解决了定点数字器件的复杂数学运算问题。通过Q格式的常量和变量的数学运算,可以迅速而准确的计算出各种定点的数值结果。在各种嵌入式系统硬件中存在不同类型不同分辨率和精度的定点外设,它们采集到的定点数据也代表着不同的物理含义,具有不同的模拟量输入范围和数字精度,需要将它们折算到一个可以统一比较和运算的数值。PU(Per Unit)值的概念和作用均类似于电机学中的标幺值。为了方便不同精度/分辨率的数据(比如14位精度5V输入范围的ADC数据与12位精度010V输出范围的DAC数据)运算,可以
46、将它们折算成一个无量纲的数据,采用(X真实值/X设定的基值)方式,在实际运算中再乘以合适的比例系数就可以方便的对外设数据进行统一格式和精度的运算,当然,运算的精度取决于参与数学运算精度最低的外设数据。将模拟量转换为PU值的过程很简单,例如:电流I的真实值是100A,而为电流I设定的基值是80A,那么100A时的电流值I此时用PU值表示为:。这是一个没有量纲的数值,仅表示此时的电流值相对基值的大小。PU值中基值的选择理论上讲没有限制,但一般根据设备的实际运行情况选择最大值或者额定功率时的物理量值,所以PU值的范围通常在01.0范围或者0n*1.0(n通常大于1小于10)范围。PU值的数值分布范围
47、通常会影响Q格式的选取。例如电机绕组额定电流为30A,最大的峰值电流为240A,取额定值为基值,那么电机绕组的PU值可能的变化范围就是8.08.0,对于16位DSC(如TMS320LF2407A)用Q格式计算时就必须选择Q12格式才能涵盖所有可能的电流值,也可以选择Q11或者小数点位数更少的格式,但计算精度会变差;而对于32位DSC(如TMS320F2812)用Q格式计算时选择Q28格式就可以涵盖所有可能的电流值。432 定点外设的数据格式转换与定标问题在本文提出的数字电源调节器外扩的高精度ADC为18位,DAC为16位,TMS320F280 8片内ADC为12位,PWM波形生成/管理器为16位(不使用HRPWM技术下的情况),它们具有不同的模拟量输入/输出范围,不同的分辨率和精度,如何将它们的数据投入数字调节器的数学运算是以下要讨论的问题。首先需要指出的是ADC、DAC模拟信号输入/输出端采取的信号调理电路在满足模拟信号噪声、模拟器件带宽的条件下对这些ADC、DAC器件的分辨率没有影响。因为信号调理电路仅仅是提高了模拟信号的输入输出电流能力,改变了它们的模拟