概述
最常见的两种方法就是欧拉法和塔斯汀法(Tustin's method,也叫bilinear transformation)。
欧拉法即为:
将传递函数中的s用这个替换即可。
这是因为s在拉普拉斯变换里面是微分,而
而z变换里面的z运算符即为:
微分关系即变为:
但是欧拉法用的是积分的矩形法则,效果有时并不好。所以又提出了根据梯形法则的塔斯汀法:
将C(s)里面的s都替换掉,变成z和C(z)就行了。
可以再matlab里面用c2d函数进行运算:
[numZ denZ]=c2d(num,den,'tustin')%bilinear method
欧拉法在matlab里面貌似已经是不支持了。
再说下z域里怎么写成差分方程。如果我们有控制器:
且n≥m,
将分式转换:
两边同除以
注意
让Y(z)=Y(k),U(z)=U(k)
那么就能得到k时刻Y的值了。
举个例子:
分式上下均除以z的平方:
进一步整理:
再把左边的部分项挪过来:
这样就知道k时刻控制器的输出是多少了,能在程序里面进行实现了。
最后
以上就是无私外套为你收集整理的连续系统如何离散化的全部内容,希望文章能够帮你解决连续系统如何离散化所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复