Other Parts Discussed in Post: CONTROLSUITE, POWERSUITE, SFRA

作者:Hardy Zhou

TI C2000在数字电源领域有很广法的应用,同时针对数字电源控制器的设计提供了CONTROLSUITE 的DPlib的软件库,可以很容易实现PID, 2P2Z, 3P3Z等控制器的软件代码设计,同时也提供PowerSUITE的Compensation Designer GUI来实现控制器的可视化设计以及获得离散化参数供C2000数字设计. 本文以DPLib中的2P2Z控制器设计为例,来说明C2000 Compensation Designer GUI中的 2P2Z控制器参数对应到的实际S域传递函数实际表达式,为2P2Z以及其他形式的控制器的理解、开发和调试带来很大的便利.

1.Compensation Designer和传统的 2P2Z控制器的S域表达式对比

而我们常看到的2P2Z控制器S域的传递函数模型一般如下:

K表示控制器增益,Wz0和Wz1是两个零点,Wp1是第二个极点, 同样有:

所以可以看到传统2P2Z控制器S域传递函数的增益K跟Compensation Designer中的S域传递函数增益关系式子如下.

                                                           

2.Compensation Designer和DPLib中2P2Z控制器离散化表达式

Compensation Designer中2P2Z控制器双线性变换离散化模型为:

由这个表达式可以看出,由于零极点和数字控制频率FS的单位都是KHz,把  增益的表达式独立出来,传递函数的分子和分母都是以频率相除得到的值,所以实际计算,可以简单用KHz为单位来表达频率的量值.

DPLib中2P2Z控制器双线性变换离散化模型为

我们可以看到分母的系数符号是取反了,因为C2000 DPLib计算2P2Z控制器输出表达式是,

   这跟2P2Z离散函数一般表达式  有差别.

所以分母的,取反了, 这点要非常注意,不然容易在使用过程中,出现Z域到S域的变换得不到正确的S域公式,也会造成设计控制器模型出现问题.

3.两个离散化传递函数的统一

 我们可以获得

同理可以获得 的表达式.

注意  在Compensation Designer GUI中生成的B2,B1,B0,A2,A1是完全对应的.

4.Compensation Designer 2P2Z控制器S域和Z域传递函数的解析

2P2Z控制器的S域传递函数表达式在章节1已经有说明,KDC以增益dB的形式表达, KDC转化为实际参数 的表达式如下:

实际增益 为:

实际2P2Z控制器的S域传递函数 增益是

                                                           

把Compensation Designer 的零极点频率,转化为单位Hz和角频率,代入G(s)表达式,就可以获得实际系统的传递函数.

       

下面的以Compensation Designer中的2P2Z控制器设计为例进行说明如何获得s域传递函数的表达式.

S域传递函数的增益

所以可以得到S域中的传递函数是

使用matlab求s域到z域(离散时间 ,双线性变换Tustin  ,), 就可以获得跟Compensation Designer GUI里面相同的B0,B1,B2,A0,A1,A2参数, 这样也可以验证我们的推导是正确的.

 

参考文档

1 .C2000 Software Frequency Response Analyzer (SFRA) Library & Compensation Designer

http://www.ti.com/lit/ug/spruhz5a/spruhz5a.pdf

Anonymous