为了防止被零除,可以使用函数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;
.另行参见