防止除以零的功能: CheckDivInt, CheckDivLint, CheckDivReal, and CheckDivLReal
为防止除以零,可以使用函数CheckDivInt
,CheckDivLint
,CheckDivReal
, 和CheckDivLReal
。如果在应用程序中包含这些函数,那么在代码中每次进行除法运算之前都会调用它们。




小心

要获得监控功能,请勿编辑声明部分。不过,您可以添加本地变量。
CheckDivReal 的默认实现:
声明部分:
// This is automatically generated code: DO NOT EDIT FUNCTION CheckDivReal : REAL VAR_INPUT divisor:REAL; END_VAR
实施部分:
// This automatically generated code is a suggested implementation. IF divisor = 0 THEN CheckDivReal:=1; ELSE CheckDivReal:=divisor; END_IF;
DIV
运算符使用CheckDivReal
函数的输出作为除数。在下面的示例程序中,CheckDivReal
在执行除法运算之前将被除数d
的隐含值从 "0 "改为1
,以防止被0
除尽。因此,除法结果为799
。
PROGRAM PLC_PRG VAR erg:REAL; v1:REAL:=799; d:REAL:=0; END_VAR erg:= v1 / d;