首页 理论教育 数据转换和算术运算指令优化

数据转换和算术运算指令优化

时间:2023-06-29 理论教育 版权反馈
【摘要】:图3.3-11 字节交换指令的编程格式图3.3-12 数据转换指令的编程格式2.算术运算指令802S/C/D、808D/828D集成S7-200PLC的算术运算指令可用于加、减、乘、除及求二次方根运算,编程时可使用的指令代码如表3.3-3所示,S7-200通用PLC的三角函数运算指令一般不能用于CNC集成PLC编程。整数乘、除运算指令的操作数IN1、IN2均规定为16位,但其结果输出OUT为32位。执行除法运算指令DIV时,结果输出OUT的高16位为余数,低16位为商。

数据转换和算术运算指令优化

1.数据转换指令

802S/C/D、808D/828D集成S7-200PLC的数据转换指令只能用于32位整数D和实数R的转换,指令DI_R可将32位整数转换为实数;指令TRUNC则可将实数转换为32位整数,实数的小数位将被自动舍去。S7-200通用PLC中的BCD转换、ASCII转换、字符串转换指令一般不能用于CNC集成PLC的编程。

数据转换指令的梯形图编程格式如图3.3-12所示。对于802S/C/D系统,利用图示的程序,可在CNC执行S指令时,通过S代码修改信号SF(V25000006.0)的上升沿,将CNC输出的S代码(实数)舍去小数位后,转换为32位整数并输出到MD100中;MD100中的数据范围为-2147483648~2147483647(-231~231-1)。

978-7-111-50291-3-Chapter03-39.jpg

图3.3-11 字节交换指令的编程格式

978-7-111-50291-3-Chapter03-40.jpg

图3.3-12 数据转换指令的编程格式

2.算术运算指令

802S/C/D、808D/828D集成S7-200PLC的算术运算指令可用于加、减、乘、除及求二次方根运算,编程时可使用的指令代码如表3.3-3所示,S7-200通用PLC的三角函数运算指令一般不能用于CNC集成PLC编程。

表3.3-3 数学运算指令表

978-7-111-50291-3-Chapter03-41.jpg(www.xing528.com)

算术运算指令的梯形图编程格式如图3.3-13所示。通过不同的指令,可对输入操作数IN1和IN2进行加、减、乘、除运算,或对操作数IN进行求二次方根操作,运算结果保存在输出存储器OUT上。进行四则运算时,操作数IN1为被加数、被减数、被乘数或被除数,操作数IN2为加数、减数、乘数或除数。

978-7-111-50291-3-Chapter03-42.jpg

图3.3-13 算术运算指令的编程格式

加、减运算指令的操作数可为16位整数、32位整数或实数,其运算结果存储器仍为16位整数、32位整数或实数,因此,使用时应避免运算结果的溢出。

整数乘、除运算指令的操作数IN1、IN2均规定为16位,但其结果输出OUT为32位。执行除法运算指令DIV时,结果输出OUT的高16位为余数,低16位为商。

3.增1/减1指令

802S/C/D、808D/828D集成S7-200PLC可通过指令INC/DEC,对字节(B)、字(W)或双字(DW)存储器进行增1/减1运算,指令的编程格式如图3.3-14所示。为避免出现连续不断地增1/减1运算,指令INC/DEC的启动输入EN一般应使用边沿信号。

978-7-111-50291-3-Chapter03-43.jpg

图3.3-14 增1/减1指令的编程格式

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈