您现在的位置是:首页 > PLC技术 > PLC技术
S7-300/400 PLC的取整指令
来源:艾特贸易2017-06-04
简介PLC 数据类型中存在浮点数类型,在某些应用场合下只需要浮点数的整数部分,那么就涉及到取整的问题。下面依次介绍 S7-300/400 系统中基本的取整指令。 (1) 取整为长整型数的指令 对浮
PLC数据类型中存在浮点数类型,在某些应用场合下只需要浮点数的整数部分,那么就涉及到取整的问题。下面依次介绍S7-300/400系统中基本的取整指令。 (1)取整为长整型数的指令 对浮点数取整为长整型数指令的基本结构如图4-46所示。大体结构与前面介绍的指令类似,ROUND为该指令的标题,用于指明该指令的功能;EN端和ENO端所能识别的数据仍为BOOL类型的数据。IN端输入REAL类型的数据,OUT端输出DINT类型盼数据。其中,IN端可以为具体的数,也可以为存储地址;而OUT端只能为存储地址。 ROUND指令将输入IN的数据以浮点数读取,并将其转换为长整型(32位),结果为最接近的整数(“取整到最接近值”)。如果浮点数介于两个整数之间,则返回偶数。结果由输出端OUT输出。如果产生溢出,ENO的状态为“0”。 如输入的浮点数为485.63,则经指令取整输出486;如果输入的浮点数为485.43,经指令取整输出485;如果输入的浮点数为485.50,这个浮点数介于整数485和整数486之间,则经指令取整输出偶数486。 (2)截取长整型数部分的指令 截取长整型数部分指令的基本结构如图4-47所示。IN端输入REAL类型的数据,OUT端输出DINT类型的数据。TRUNC指令将输入端IN的数据以浮点数读取,并将其转换为长整型(32位)。长整型数结果(向零取整)由输出端OUT输出。如果产生溢出,ENO的状态为“0”。 图4-46 ROUND指令结构
图4-47 TRUNC指令结构 (3)向上取整指令 向上取整指令的基本结构如图4-48所示。IN端输入REAL类型的数据,OUT端输出DNT类型的数据。CEIL指令将输入端IN的数据以浮点数读取,并将其转换为长整型(32位)。结果为大于该浮点数的最小整数(取整为正无穷大)。如果产生溢出,ENO的状态为"0"。 如输入端IN输入的数据为456.89,则输出端OUT输出的数据为457,即大于所给浮点数最小的整数。 (4)向下取整指令 向下取整指令的基本结构如图449所示。IN端输入REAL类型的数据,OUT端输出DINT类型的数据。FLOOR指令将输入端IN的数据以浮点数读取,并将其转换为长整型(32位)。结果为小于该浮点数的最大整数部分(取整为负无穷大)。如果产生溢出,ENO的状态为“0”。 如输入端IN输入的数据为456.89,则输出端OUT输出的数据为456,即小于所给浮点数最大的整数。
图4-48 CEIL指令结构
图4-49 FLOOR指令结构
点击排行
