一个基于DSP的DCDC开关电源设计方法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
CNTL_2P2Z_ COEFF ;| b1=-22.81*Q26=0xa4c28f5c |2 ;| b0 =12.49*Q26=0x31f5c28f |4 ;| a2 =-0.5985*Q26=0xfd9b22d0 |6 ;| a1 =1.598*Q26=0x06645a1c|8 ;| a0 =0|10 ; _CNTL_2P2Z_Fdbk: current out-
工 业 技 术
科技咨询导报 2006 NO.14
Science and Technology Consulting Herald
一个基于 D S P 的 D C / D C 开关电源设计方法
章道林 (北京交通大学)
摘 要:本文描述了 T M S 3 2 0 F 2 8 0 X 在 D C / D C 高频开关电源中的设计和应用。通过 M A T L A B 给出一个 B U C K 拓扑的 D C / D C 变 换器的波特图,接着设计一个较正环节用来优化变换器环路特性,最后给出 D S P 的软件编程。 关键词:D S P B U C K P W M 中图分类号:F 4 0 7 . 6 1 文献标识码:A 文章编号:1 6 7 3 - 0 5 3 4 ( 2 0 0 6 ) 1 0 ( a ) - 0 0 4 5 - 0 2
L = 1 μH , C = 1 8 0 0 μF , 等效串联阻抗
R
c
=
0.004Ohm 电压环带宽取
fcv=20kHz,相位域度为
45。
电路的环路模型如图 2 所示。
其中 Gp(s)根据 Buck电路的小信号模型
如下:
图 3
图 2 环路模型
图 4
(下转 47 页)
科技咨询导报 Science and Technology Consulting Herald 45
1 电路模型仿真
B U C K 变换器的电路模型如图所示。
校正后的环路特性如 Figure4: 利用Matlab中的c2d函数将Gc(s)转为离 散形式: Gcz=c2d(Gc(s),Ts,'t'ustin)得到
在Matlab中分析Gp(s)的环路特性如下; V in= 3 . 3 ; Rc= 0 . 0 0 4 ; C = 1 8 0 0 e - 0 0 6 ; L = 1 e - 0 0 6 ; Rl = 0 . 0 6 1 ; Vo m a x= 1 . 3 ; Gp= t f( V i n* [ R c * Cl1 ] , [ L * C * ( 1 + Rc/ R l) Rc* C + L / Rl1 ] ) ; sisotool(Gp);
的缺陷而产生的。如转速表轴在轴承内纵横 跳动,活动套环与轴不垂直、扇形齿轮轴的 过大间隙,离心器重锤不平衡,传动轴齿轮
啮合不正确等等都属于这类缺陷。 指针较大幅度的摆动是由于转轴的缺陷
及其安装的缺陷。如轴在轴承内卡着,齿轮 啮合不正确以及活动套管内表面不平滑等因 素造成的。
(上接 45 页)
实现的代码: ;Description: ;Performs a second order difference
引起仪器示值不正确。 此外,转速表在工作时所引起的指针振
动和大幅度摆动也与前面所研讨的误差相关 联着。
指针摆动很难进行读数。指针摆动是由
d%= 100%=2 × 10-4(- 60 - 20) 于转速表机构装配不正确和个别零件制造上
100% =- 1.6% 由例题可以看出,离心式转速表的温度
误差可能达到较大的数值。
QMPYL P,XT,*XAR7++ ; ACC=b2*e(n-2)+b1*e(n-1), P=b0*e(n), Q26*Q31(64-bit result) ; 64-bit result in Q57, So ACC is in Q25
ADDL ACC,P;ACC=b2*e(n-2)+b1*e (n-1)+b0*e(n), Q25
MAXL ACC,*XAR7++ ;move result to Uout as a Q15 LSL ACC,#7 MOV *XAR6, AH
参考文献
[1] Ridley.R.B.Average small -signal analysis of the boost power factor correction circuit.Proceedings of the Virginia Power Electronics Center Seminar(VPEC),Blacksburg,VA,Sept. 1989.
ACC MOVL XT,@CNTL_2P2Z_DBUFF:
x:+8 ; XT=e(n-2),Q31 QMPYL ACC,XT,*XAR7++ ;
b2*e(n-2),Q26*Q31(64-bit result) MOVDL XT,@CNTL_2P2Z_DBUFF:
x:+6 ; XT=e(n-1), e(n-2)=e(n-1) QMPYL P , X T , * X A R 7 + + ;
式转速表安装在设备上,所装的位置应符合
调整和检定时的位置,否则将会产生误差。
对于带重锤离心器的转速表所引证的公 证,对于带圆环离心器的转速表同样也是适 用的。
若λ = - 4 × 10-4,则当温度 t= - 60℃ 时离心式转速表的相对误差(用百分数表示) 为:
用于联接转速表轴和机器轴的传动装置 (联轴节、软轴等等)安装不正确,亦会
随着低成本、高性能 D S P 的出现,尤 其是 A / D 和 P W M 性能的大幅提高。D S P 控 制的开关电源将越来越多地在电源工业中应 用。基于 DSP 的数字控制能实现更丰富的功 能控制策略。可以在一个标准化的硬件平台 上,通过更新软件满足不同的需求。数字控制 器也更少的受到环境变化和噪声的影响。TI 公司推出的 32 位 DSP TMS320F28系列,系 统时钟达到 100MHz,外设集成了高分辨率的 PWM 模块,转换速率高达 160ns 的 12 位 A/ D。相比 TI 早期推出的 24 系列 DSP,各方面 都有了很大的提高。这些都新功能的出现降 低了 DSP 实用化的难度,然而对于多数电源 工程师,他们大多数是模拟方面的专家,对于 数字化设计则面临许多技术上的挑战。
cycle ;U(n-2) => output from2samples past ;E(n) => present error ;E(n-1) => error from last sample
cycle ;E(n-2) => error from2samples past ;| y(n-1) |0 CNTL_2P2Z_DBUFF ;| y(n-2) |2 ;| e(n) |4 ;| e(n-1) |6 ;| e(n-2) |8 ;| b2=10.41*Q26=0x29a3d70a |0
put voltage AD sample ; _CNTL_2P2Z_Ref output voltage
reference value CNTL_2P2Z.macro x MOVWDP, #_CNTL_2P2Z_Ref:x: MOVL XAR4,@_CNTL_2P2Z_Ref:
x: ; Net pointer to Ref (XAR4) MOVL XAR5,@_CNTL_2P2Z_Fdbk:
ACC=b2*e(n-2) P=b1*e(n-1),Q26*Q31 (64-bit result)
ADDL ACC,P ; 64-bit result in Q57, So ACC is in Q25
MOVDL XT,@CNTL_2P2Z_DBUFF: x:+4; XT=e(n), e(n-1)=e(n)
[2] Dixon.L.H.Average current Mode Control of Switching Power Supplies. Unitrode Power Supply Design Semi- nar Manual SEM700,1990.
科技咨询导报 Science and Technology Consulting Herald 47
x: ; XT=u(n-1), u(n-2)=u(n-1),Q24 QMPYL ACC,XT,*XAR7++ ;
ACC=a2*u(n-2) ; 64-bit result in Q50, So ACC is in Q18
A D D L ACC,P ; ACC=a1*u(n-1) +a2*u(n-2),ACC in Q18
利用Matlab中的Sisotool工具设计一个
校正函数 Gc(s)如下:
分解得到: U ( n ) = 1 . 5 9 8 U ( n - 1 ) - 0 . 5985U(n-2)+12.49E(n)-22.81E(n-1)+10. 41E(n-2)
结论:当这个仿真结果用于实际的产品测试 中,在从 0 到 15A 的动态变化时,只需要 30μs 的响应时间,这个结果是比较满意的。
LSL ACC,#5 ; Q23 ADDL ACC,ACC ; Q24 ADDL ACC,@CNTL_2P2Z_temp:x ;Q24,ACC=a1*u(n-1)+a2*u(n-2) +b2*e(n-2)+b1*e(n-1)+b0*e(n) MOVL @CNTL_2P2Z_DBUFF:x:, ACC ; ACC=u(n)(Q24) ; Saturate the result [0,1] MINL ACC,*XAR7++
SFR ACC,#1 MOVL @CNTL_2P2Z_temp:x:,ACC ; Q24 MOVL XT,@CNTL_2P2Z_DBUFF: x:+2 ; XT=u(n-2),Q24 Q M P Y L P,XT,*XAR7++ ; P=a2*u (n-2), Q26*Q24(64-bit result) MOVDL XT,@CNTL_2P2Z_DBUFF:
x: ; Net pointer to Fdbk (XAR5) M O V L XAR6,_CNTL_2P2Z_Out:
x: ; Net pointer to Out (XAR6) MOVL XAR7,CNTL_2P2Z_COEFF:
x: ; Local coefficient pointer (XAR7) SETC SXM,OVM MOV ACC,*XAR4 ;Q15 SUB ACC,*XAR5 ;Q15 LSL ACC,#16 ;Q31 ; Diff equation MOVL @CNTL_2P2Z_DBUFF:x:+4,
工 业 技 术
科技咨询导报 2006 NO.14
Science and Technology Consulting Herald
在温度20℃±5℃时离心式转速表引用误
差通常在± 1% 到 2% 的范围内。离心式转速
因为λ< 0,故当 t > 20℃时δω> 0, 即转速表的示值稍高。相对误差为
表的示值与轴的旋转方向无关。 转速表安装不正确所引起的误差。固定
2 软件实现代码
根据 U(n)给出在 DSP TMS320LF2801中
图 1 电路模型
其中各项电路参数如下:
Vin= 3  ̄4 V , Vout= 1 . 2 V ,最大输出电流 Iout=20A,等效负载电阻 RL=Vout/Iout=0.06 Ω
最大输ห้องสมุดไป่ตู้电压 Vomax=1.3V;
P W M 开关工作频率 fpwm= 2 5 0 k H z ,电压 环采样频率 fs=250khz
equation of the form: ;B2 z^2 + B1 z + B0 ;U(z)/E(z) = ----------- ;-A2 z^2 - A1 z + 1 ;U(n)= A1*U(n-1)+A2*U(n-2)+B0*E
(n)+B1*E(n-1)+B2*E(n-2) ;U(n-1) => output from last sample
工 业 技 术
科技咨询导报 2006 NO.14
Science and Technology Consulting Herald
一个基于 D S P 的 D C / D C 开关电源设计方法
章道林 (北京交通大学)
摘 要:本文描述了 T M S 3 2 0 F 2 8 0 X 在 D C / D C 高频开关电源中的设计和应用。通过 M A T L A B 给出一个 B U C K 拓扑的 D C / D C 变 换器的波特图,接着设计一个较正环节用来优化变换器环路特性,最后给出 D S P 的软件编程。 关键词:D S P B U C K P W M 中图分类号:F 4 0 7 . 6 1 文献标识码:A 文章编号:1 6 7 3 - 0 5 3 4 ( 2 0 0 6 ) 1 0 ( a ) - 0 0 4 5 - 0 2
L = 1 μH , C = 1 8 0 0 μF , 等效串联阻抗
R
c
=
0.004Ohm 电压环带宽取
fcv=20kHz,相位域度为
45。
电路的环路模型如图 2 所示。
其中 Gp(s)根据 Buck电路的小信号模型
如下:
图 3
图 2 环路模型
图 4
(下转 47 页)
科技咨询导报 Science and Technology Consulting Herald 45
1 电路模型仿真
B U C K 变换器的电路模型如图所示。
校正后的环路特性如 Figure4: 利用Matlab中的c2d函数将Gc(s)转为离 散形式: Gcz=c2d(Gc(s),Ts,'t'ustin)得到
在Matlab中分析Gp(s)的环路特性如下; V in= 3 . 3 ; Rc= 0 . 0 0 4 ; C = 1 8 0 0 e - 0 0 6 ; L = 1 e - 0 0 6 ; Rl = 0 . 0 6 1 ; Vo m a x= 1 . 3 ; Gp= t f( V i n* [ R c * Cl1 ] , [ L * C * ( 1 + Rc/ R l) Rc* C + L / Rl1 ] ) ; sisotool(Gp);
的缺陷而产生的。如转速表轴在轴承内纵横 跳动,活动套环与轴不垂直、扇形齿轮轴的 过大间隙,离心器重锤不平衡,传动轴齿轮
啮合不正确等等都属于这类缺陷。 指针较大幅度的摆动是由于转轴的缺陷
及其安装的缺陷。如轴在轴承内卡着,齿轮 啮合不正确以及活动套管内表面不平滑等因 素造成的。
(上接 45 页)
实现的代码: ;Description: ;Performs a second order difference
引起仪器示值不正确。 此外,转速表在工作时所引起的指针振
动和大幅度摆动也与前面所研讨的误差相关 联着。
指针摆动很难进行读数。指针摆动是由
d%= 100%=2 × 10-4(- 60 - 20) 于转速表机构装配不正确和个别零件制造上
100% =- 1.6% 由例题可以看出,离心式转速表的温度
误差可能达到较大的数值。
QMPYL P,XT,*XAR7++ ; ACC=b2*e(n-2)+b1*e(n-1), P=b0*e(n), Q26*Q31(64-bit result) ; 64-bit result in Q57, So ACC is in Q25
ADDL ACC,P;ACC=b2*e(n-2)+b1*e (n-1)+b0*e(n), Q25
MAXL ACC,*XAR7++ ;move result to Uout as a Q15 LSL ACC,#7 MOV *XAR6, AH
参考文献
[1] Ridley.R.B.Average small -signal analysis of the boost power factor correction circuit.Proceedings of the Virginia Power Electronics Center Seminar(VPEC),Blacksburg,VA,Sept. 1989.
ACC MOVL XT,@CNTL_2P2Z_DBUFF:
x:+8 ; XT=e(n-2),Q31 QMPYL ACC,XT,*XAR7++ ;
b2*e(n-2),Q26*Q31(64-bit result) MOVDL XT,@CNTL_2P2Z_DBUFF:
x:+6 ; XT=e(n-1), e(n-2)=e(n-1) QMPYL P , X T , * X A R 7 + + ;
式转速表安装在设备上,所装的位置应符合
调整和检定时的位置,否则将会产生误差。
对于带重锤离心器的转速表所引证的公 证,对于带圆环离心器的转速表同样也是适 用的。
若λ = - 4 × 10-4,则当温度 t= - 60℃ 时离心式转速表的相对误差(用百分数表示) 为:
用于联接转速表轴和机器轴的传动装置 (联轴节、软轴等等)安装不正确,亦会
随着低成本、高性能 D S P 的出现,尤 其是 A / D 和 P W M 性能的大幅提高。D S P 控 制的开关电源将越来越多地在电源工业中应 用。基于 DSP 的数字控制能实现更丰富的功 能控制策略。可以在一个标准化的硬件平台 上,通过更新软件满足不同的需求。数字控制 器也更少的受到环境变化和噪声的影响。TI 公司推出的 32 位 DSP TMS320F28系列,系 统时钟达到 100MHz,外设集成了高分辨率的 PWM 模块,转换速率高达 160ns 的 12 位 A/ D。相比 TI 早期推出的 24 系列 DSP,各方面 都有了很大的提高。这些都新功能的出现降 低了 DSP 实用化的难度,然而对于多数电源 工程师,他们大多数是模拟方面的专家,对于 数字化设计则面临许多技术上的挑战。
cycle ;U(n-2) => output from2samples past ;E(n) => present error ;E(n-1) => error from last sample
cycle ;E(n-2) => error from2samples past ;| y(n-1) |0 CNTL_2P2Z_DBUFF ;| y(n-2) |2 ;| e(n) |4 ;| e(n-1) |6 ;| e(n-2) |8 ;| b2=10.41*Q26=0x29a3d70a |0
put voltage AD sample ; _CNTL_2P2Z_Ref output voltage
reference value CNTL_2P2Z.macro x MOVWDP, #_CNTL_2P2Z_Ref:x: MOVL XAR4,@_CNTL_2P2Z_Ref:
x: ; Net pointer to Ref (XAR4) MOVL XAR5,@_CNTL_2P2Z_Fdbk:
ACC=b2*e(n-2) P=b1*e(n-1),Q26*Q31 (64-bit result)
ADDL ACC,P ; 64-bit result in Q57, So ACC is in Q25
MOVDL XT,@CNTL_2P2Z_DBUFF: x:+4; XT=e(n), e(n-1)=e(n)
[2] Dixon.L.H.Average current Mode Control of Switching Power Supplies. Unitrode Power Supply Design Semi- nar Manual SEM700,1990.
科技咨询导报 Science and Technology Consulting Herald 47
x: ; XT=u(n-1), u(n-2)=u(n-1),Q24 QMPYL ACC,XT,*XAR7++ ;
ACC=a2*u(n-2) ; 64-bit result in Q50, So ACC is in Q18
A D D L ACC,P ; ACC=a1*u(n-1) +a2*u(n-2),ACC in Q18
利用Matlab中的Sisotool工具设计一个
校正函数 Gc(s)如下:
分解得到: U ( n ) = 1 . 5 9 8 U ( n - 1 ) - 0 . 5985U(n-2)+12.49E(n)-22.81E(n-1)+10. 41E(n-2)
结论:当这个仿真结果用于实际的产品测试 中,在从 0 到 15A 的动态变化时,只需要 30μs 的响应时间,这个结果是比较满意的。
LSL ACC,#5 ; Q23 ADDL ACC,ACC ; Q24 ADDL ACC,@CNTL_2P2Z_temp:x ;Q24,ACC=a1*u(n-1)+a2*u(n-2) +b2*e(n-2)+b1*e(n-1)+b0*e(n) MOVL @CNTL_2P2Z_DBUFF:x:, ACC ; ACC=u(n)(Q24) ; Saturate the result [0,1] MINL ACC,*XAR7++
SFR ACC,#1 MOVL @CNTL_2P2Z_temp:x:,ACC ; Q24 MOVL XT,@CNTL_2P2Z_DBUFF: x:+2 ; XT=u(n-2),Q24 Q M P Y L P,XT,*XAR7++ ; P=a2*u (n-2), Q26*Q24(64-bit result) MOVDL XT,@CNTL_2P2Z_DBUFF:
x: ; Net pointer to Fdbk (XAR5) M O V L XAR6,_CNTL_2P2Z_Out:
x: ; Net pointer to Out (XAR6) MOVL XAR7,CNTL_2P2Z_COEFF:
x: ; Local coefficient pointer (XAR7) SETC SXM,OVM MOV ACC,*XAR4 ;Q15 SUB ACC,*XAR5 ;Q15 LSL ACC,#16 ;Q31 ; Diff equation MOVL @CNTL_2P2Z_DBUFF:x:+4,
工 业 技 术
科技咨询导报 2006 NO.14
Science and Technology Consulting Herald
在温度20℃±5℃时离心式转速表引用误
差通常在± 1% 到 2% 的范围内。离心式转速
因为λ< 0,故当 t > 20℃时δω> 0, 即转速表的示值稍高。相对误差为
表的示值与轴的旋转方向无关。 转速表安装不正确所引起的误差。固定
2 软件实现代码
根据 U(n)给出在 DSP TMS320LF2801中
图 1 电路模型
其中各项电路参数如下:
Vin= 3  ̄4 V , Vout= 1 . 2 V ,最大输出电流 Iout=20A,等效负载电阻 RL=Vout/Iout=0.06 Ω
最大输ห้องสมุดไป่ตู้电压 Vomax=1.3V;
P W M 开关工作频率 fpwm= 2 5 0 k H z ,电压 环采样频率 fs=250khz
equation of the form: ;B2 z^2 + B1 z + B0 ;U(z)/E(z) = ----------- ;-A2 z^2 - A1 z + 1 ;U(n)= A1*U(n-1)+A2*U(n-2)+B0*E
(n)+B1*E(n-1)+B2*E(n-2) ;U(n-1) => output from last sample