代码如下:
FUNCTION_BLOCK _107_01_Fitting_Curve (* 采样5次 一元二次公式 *)
VAR_INPUT
IN:REAL; (* 当前速度 *)
X_In:ARRAY[0..4] OF REAL; (* 当前速度 *)
Y_In:ARRAY[0..4] OF REAL; (* 当前纠偏角 *)
END_VAR
VAR_OUTPUT
OUT: REAL; (* 输出 *)
END_VAR
VAR
ID:INT;
X:ARRAY[0..20] OF REAL;
Y:ARRAY[0..20] OF REAL;
SUMX: REAL:=0;
SUMY: REAL:=0;
SUMX2: REAL:=0;
SUMXY: REAL:=0;
SUMX3: REAL:=0;
SUMX2Y: REAL:=0;
SUMX4: REAL:=0;
A: REAL;
B: REAL;
C: REAL;
Z1: REAL;
Z2: REAL;
Z3: REAL;
M1: REAL;
M2: REAL;
M3: REAL;
END_VAR
(* 初始值 *)
SUMX:=0.0; SUMY:=0.0; SUMX2 :=0.0;
SUMXY :=0.0; SUMX3 :=0.0; SUMX2Y:=0.0;
SUMX4 :=0.0;
(* 0-n (4)