更新遥控器程序

This commit is contained in:
2025-10-10 17:40:51 +08:00
parent dd654505b0
commit bc435af9b0
48 changed files with 701 additions and 1348 deletions

View File

@@ -210,9 +210,9 @@ TYPE
Cursor : BOOL; (* <20><>ť-<2D><><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD> *)
END_STRUCT;
EJM_RemoteIO : STRUCT (* ң<><D2A3><EFBFBD><EFBFBD> *)
Speed_L :INT;
Speed_R :INT;
AK :ARRAY[1..2] OF INT;
Speed_L :SINT;
Speed_R :SINT;
AK :ARRAY[1..2] OF SINT;
DK :ARRAY[1..32] OF BOOL;
END_STRUCT;
EJM_RemoteControl : STRUCT (* ң<><D2A3><EFBFBD><EFBFBD> *)
@@ -259,7 +259,9 @@ TYPE
BoostPump : BOOL; (* <20><><EFBFBD>ư<EFBFBD>ť-<2D><>ѹˮ<D1B9>ù<EFBFBD><C3B9><EFBFBD> *)
TrackTension : BOOL; (* <20><><EFBFBD>ư<EFBFBD>ť-<2D>Ĵ<EFBFBD><C4B4>Ž<EFBFBD> *)
TransportTension : BOOL; (* <20><><EFBFBD>ư<EFBFBD>ť-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ž<EFBFBD> *)
DustFan : BOOL; (* <20><><EFBFBD>ư<EFBFBD>ť-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> *)
HighSpeed : BOOL; (* <20><><EFBFBD>ư<EFBFBD>ť-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> *)
DustStart : BOOL; (* <20><><EFBFBD>ư<EFBFBD>ť-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> *)
DustStop : BOOL; (* <20><><EFBFBD>ư<EFBFBD>ť-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD> *)
DustFan : BOOL; (* <20><><EFBFBD>ư<EFBFBD>ť-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD> *)
HighSpeed : BOOL; (* <20><><EFBFBD>ư<EFBFBD>ť-<2D><><EFBFBD><EFBFBD>=FALSE,<2C><><EFBFBD><EFBFBD>=TRUE *)
END_STRUCT;
END_TYPE

View File

@@ -112,8 +112,8 @@ FUNCTION_BLOCK fbValProtection
isUnderVolage := UO_TON[1].Q; (* Ƿѹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> *)
isOverVoltage := UO_TON[2].Q; (* <EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> *)
isVoltageInterrupt := Phase.MinValue < (0.05 * Rated) AND NOT isPhaseLoss AND NOT isImbalance; (* <EFBFBD><EFBFBD>ʱ<EFBFBD>жϱ<EFBFBD><EFBFBD><EFBFBD> *)
isVoltageDip := ((Old_Val[1] - Phase.U > 0.05) OR (Old_Val[2] - Phase.V > 0.05) OR (Old_Val[3] - Phase.W > 0.05)) AND NOT isPhaseLoss AND NOT isImbalance;; (* <EFBFBD><EFBFBD>ѹ<EFBFBD>ݽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> *)
isVoltageSwell := ((Phase.U - Old_Val[1] > 0.05) OR (Phase.V - Old_Val[2] > 0.05) OR (Phase.W - Old_Val[3] > 0.05)) AND NOT isPhaseLoss AND NOT isImbalance;; (* <EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> *)
isVoltageDip := ((Old_Val[1] - Phase.U > Old_Val[1]*0.05) OR (Old_Val[2] - Phase.V > Old_Val[2]*0.05) OR (Old_Val[3] - Phase.W > Old_Val[3]*0.05)) AND NOT isPhaseLoss AND NOT isImbalance;; (* <EFBFBD><EFBFBD>ѹ<EFBFBD>ݽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> *)
isVoltageSwell := ((Phase.U - Old_Val[1] > Old_Val[1]*0.05) OR (Phase.V - Old_Val[2] > Old_Val[2]*0.05) OR (Phase.W - Old_Val[3] > Old_Val[3]*0.05)) AND NOT isPhaseLoss AND NOT isImbalance;; (* <EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> *)
Old_Val[1] := Phase.U; (* <EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD>һ<EFBFBD>ε<EFBFBD>U<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѹֵ *)
Old_Val[2] := Phase.V; (* <EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD>һ<EFBFBD>ε<EFBFBD>V<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѹֵ *)
Old_Val[3] := Phase.W; (* <EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD>һ<EFBFBD>ε<EFBFBD>W<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѹֵ *)