根据200手册可知
比例项MPn=Kc*En En为偏差
积分项MIn=Kc*En*(Ts/Ti)+MX
现简化成MIn=K*En+MX,忽略所以信号干扰,不做任何滤波处理
PS:积分和(MX)是所有积分项前值之和。在每次计算出MIn之后,都要用MIn去更新MX.
代码如下
network1
LD SM0.1
MOVR 0.0, MX:VD12
network2
LD SM0.5
MOVR VD16, MX:VD12
network3
LD SM0.5
MOVR SPn:VD0, #en:LD0
AENO
-R PVn:VD4, #en:LD0
AENO
MOVR #en:LD0, LD4
AENO
*R K:VD8, LD4
AENO
MOVR LD4, VD16
+R MX:VD12, VD16
计算出来的结果是VD12是个很小的数,而没有对以前的积分进行累加,原因在哪里?求大师指导。