• 回复
  • 收藏
  • 点赞
  • 分享
  • 发新帖

关于差分方程输出与占空比的关系

我在做一个BUCK的数控电源,已经用MATLAB生成了差分方程:U(n)=1.819U(n-1)-0.8187U(n-2)+4.638E(n)-9.076E(n-1)+4.439E(n-2)    ,U(n)算得到的结果是[0,1]之间占空比吗?我发现算出来的数值很大啊。需要怎么换算呢?先谢谢了!
全部回复(5)
正序查看
倒序查看
zealwise
LV.1
2
2012-04-20 22:19
试了好几天也没有什么进展,我发现差分方程好象没有什么问题,但DSP的AD转换器跳动很大,导致E(N),E(N-1),E(N-2)之和不能收敛,反倒是去掉E(N-1)项,还能够通过设定输入改变BUCK的输出,就是响应太慢.当VDC=30V时,从0左右到30V输出达到0.5秒.我想可能与ADC的跳差关系较大.我用的是F28335,开关频率20K,ADC采样频率80K,采4个点求平均后,计算差分方程调节占空比.不知大家有没有碰到类似的问题,给个提示吧,谢谢!
0
回复
zealwise
LV.1
3
2012-04-21 21:26
@zealwise
试了好几天也没有什么进展,我发现差分方程好象没有什么问题,但DSP的AD转换器跳动很大,导致E(N),E(N-1),E(N-2)之和不能收敛,反倒是去掉E(N-1)项,还能够通过设定输入改变BUCK的输出,就是响应太慢.当VDC=30V时,从0左右到30V输出达到0.5秒.我想可能与ADC的跳差关系较大.我用的是F28335,开关频率20K,ADC采样频率80K,采4个点求平均后,计算差分方程调节占空比.不知大家有没有碰到类似的问题,给个提示吧,谢谢!

今天把ADC的采样通道处理了一下,看起来采样稳定了一些,12位的采样值最低2位有波动。但是依然不解决上面的问题,

U(n)=a1*U(n-1)-a2*U(n-2)+b1*E(n)-b2*E(n-1)+b3*E(n-2)的差分方程依然不能收敛.我将每个系数仅保留一位小数点后,输出电压可小范围调节,但是响应更慢了,超过了1秒.我的系数是用MATLAB算出来的,我在计算过程中直接使用的是浮点计算,计算一次大约1.5us,我的穿越频率在1KHZ,应该不会产生大的滞后吧.

其实这个差分方程就是实现一个超前滞后补偿,我用模拟电路已经试过了,没有什么问题,怎么数字实现有这么多问题呢?还请大家指教!

0
回复
2012-06-01 18:21
朋友现在问题解决没有!
0
回复
desolate
LV.4
5
2012-09-26 20:21
这个问题说到底还是DSP得字长不够,有点误差就不收敛了。
0
回复
zhengsdu
LV.3
6
2012-10-17 23:06
@hjt1989728
朋友现在问题解决没有!
太复杂了,简单的PI控制就可以了
0
回复