362775017
級別: 探索解密
![]() |
smart200用485通訊讀取變頻器輸出電流,存儲于VW0內,由于輸出電流波動較大,希望能將此值濾波, 我一直玩的三菱和仿三菱,沒玩過西門子, 三菱的方式,用SFR指令,將vw0內的值循環寫入VW100~VW109內,再將VW100~VW109內的值累加,再除以10 西門子沒找到傳字的位移指令,也沒找到累加指令,求助解決方法 |
---|---|
|
mr_liu
學海無涯,劃水度日
級別: 論壇先鋒
![]() |
#SUM := 0; #SUM_D := 0; #Date_1 := #Date_2; #Date_2 := #Date_3; #Date_3 := #Date_4; #Date_4 := #Date_5; #Date_5 := #Date_6; #Date_6 := #Date_7; #Date_7 := #Date_8; #Date_8 := #Date_9; #Date_9 := #Date_10; #AD_RT_D := INT_TO_DINT(#AD_RT); #Date_10 := #AD_RT_D; #Date_MAX := MAX(IN1 := #Date_1, IN2 := #Date_2,IN3 := #Date_3,IN4 := #Date_4 ,IN5 := #Date_5,IN6 := #Date_6,IN7 := #Date_7,IN8 := #Date_8 ,IN9 := #Date_9,IN10 := #Date_10); #Date_MIN := MIN(IN1 := #Date_1, IN2 := #Date_2, IN3 := #Date_3, IN4 := #Date_4 , IN5 := #Date_5, IN6 := #Date_6, IN7 := #Date_7, IN8 := #Date_8 , IN9 := #Date_9, IN10 := #Date_10); #SUM := #Date_1 + #Date_2 + #Date_3 + #Date_4 + #Date_5 + #Date_6 + #Date_7 + #Date_8 + #Date_9 + #Date_10; #SUM_D := #SUM - #Date_MAX - #Date_MIN; #SUM_R := DINT_TO_REAL(#SUM_D); #AD_RTO := #SUM_D / 8; 這個是我之前博圖里寫的,可以改成梯形圖,放循環中斷里面就好了 |
---|---|
|