CALCULATE:计算
可以使用“计算”指令定义并执行表达式,根据所选数据类型计算数学运算或复杂逻辑运算。
可以从指令框的“???”下拉列表中选择该指令的数据类型。根据所选的数据类型,可以组合某些指令的函数以执行复杂计算。将在一个对话框中指定待计算的表达式,单击指令框上方的“计算器”图标可打开该对话框。表达式可以包含输入参数的名称和指令的语法。不能指定操作数名称和操作数地址。
在初始状态下,指令框至少包含两个输入(IN1 和 IN2)。可以扩展输入数目。在功能框中按升序对插入的输入编号。
使用输入的值执行指定表达式。表达式中不一定会使用所有的已定义输入。该指令的结果将传送到输出 OUT 中。
如果表达式中的一个数学运算失败,则没有结果传送到输出 OUT,并且使能输出 ENO 返回信号状态“1”。
如果在表达式中使用了功能框中不可用的输入,则会自动插入这些输入。这要求表达式中新定义的输入编号是连续的。例如,如果表达式中未定义输入 IN3,就不能使用输入 IN4。
如果满足下列条件之一,则使能输出 ENO 的信号状态为“0”:
- 使能输入 EN 的信号状态为“0”。
- “计算”指令的结果超出输出 OUT 指定的数据类型的允许范围。
- 浮点数的值无效。
- 执行表达式中某个指令期间出错。
如果输入“Tag_Input”的信号状态为“1”,则将执行“计算”指令。将操作数“Tag_Value_1”的值与操作数“Tag_Value_2”的值相加。求得的和乘以操作数“Tag_Value_3”的值。求得的积除以操作数“Tag_Value_4”的值。求得的商作为最终结果传送到操作数“Tag_Result”中,并复制到该指令的输出 OUT 中。如果成功执行该指令,则将 ENO 使能输出和“Tag_Output”操作数的信号状态置位为“1”。
ADD:加
使用“加”指令,将输入 IN1 的值与输入 IN2 的值相加,并在输出 OUT处查询总和。
在初始状态下,指令框中至少包含两个输入(IN1 和 IN2)。可以扩展输入数目。在功能框中按升序对插入的输入编号。执行该指令时,将所有可用输入参数的值相加。求得的和存储在输出 OUT 中。
如果满足下列条件之一,则使能输出 ENO 的信号状态为“0”:
- 使能输入 EN 的信号状态为“0”。
- 指令结果超出输出 OUT 指定的数据类型的允许范围。
- 浮点数的值无效。
如果操作数“TagIn”的信号状态为“1”,则将执行“加”指令。如果该指令执行成功,则使能输出 ENO 的信号状态为“1”,同时置位输出“TagOut”。
其他数学函数指令:
- SUB,MUL,DIV,MOD,MIN,MAX,
- ABS,SQR(计算平方),SQRT,SIN(IN 输入处以弧度的形式指定),COS,TAN,FRAC:返回小数 ,
- LN:计算自然对数,EXP:以 e 为底计算指数值,EXPT:取幂(计算以输入 IN1 的值为底,以输入 IN2 的值为幂的结果)