全站数据
8 4 2 0 5 8 1

C语言如何写离散化程

英语末班车 | 简单学习,快乐成才!         
问题更新日期:2024-10-13 10:52:37

问题描述

C语言如何写离散化程求高手给解答
精选答案
最佳答案

传递函数G(s)要离散化成G(z),然后变成差分方程,然后就可以用c语言编程了~ 比如Y(S)/U(S)=G(s)=1/(a*s+1);

用零阶保持器,你的采样周期是Ts(比如你的控制函数是在中断服务函数里实现的,那Ts就是你的中断周期),得到Y(z)/U(z)=G(z)=(1-z^(-1))*Z[G(s)/s]=[1-e^(-Ts/a)]/[z-e^(-Ts/a)]={[1-e^(-Ts/a)]*z^(-1)}/[1-e^(-Ts/a)*z^(-1)]; 所以得到差分方程:y(k)=e^(-Ts/a)*y(k-1)+ (1-e^(-Ts/a))*u(k-1),k表示当前时刻。