产品库

西门子S7-1200PLC模块山东代理商

产品信息
品Pai 其他品Pai 电动机功率 3KW
外形尺寸 4mm 重量 2kg
应用领域 环保/水工业,食品/饮料,地矿,造纸/印刷/包装,纺织/印染/服装/皮革

西门子S7-1200PLC模块山东代理商

 

西门子S7-300/400的梯形图中的整数数学运算指令

    改用整数数学运算指令实现式(3-1)的压力P(kPa)计算:

    P= (10000×N)/27 648    (3-2)

    在编程时一定要先乘后除,否则会损失原始数据的精度。应根据指令的输入、输出数据可能的值选用整数运算指令或双整数运算指令。

    假设用于测量压力的AI模块的通道地址为PIW320A/D转换后的数字N的值为027 648,乘以10 000以后乘积可能超过16位整数的允许范围,因此应采用双整数的乘法指令MUL_DI。除法指令中的被除数是双整数,因此应采用双整数除法指令DIV_DI

    首先用指令I_DIPIW320中的原始数据(16位整数)转换为双整数(见图3-106和随书光盘中的例程“指令应用”),双字乘、除法指令中的常数应使用“L#”开始的32位的双整数常数。

    3-106    压力计算程序

    如果某一方框指令的运算结果超出了整数运算指令的允许范围,状态位OVOS将为1,使能输出ENO0,不会执行该方框指令右边的指令。

    双字除法指令DIV_DI的运算结果为双字,但是由式(3-2)可知运算结果实际上不会超过16位正整数的值32767,所以运算结果在MD26的低字MW28中。

  浮点数(实数)数学运算指令(见表3-20)对累加器1和累加器2中的32IEEE格式的浮点数进行运算,运算结果在累加器1。浮点数的数据类型为REAL

    3-20    浮点数函数运算指令

语句表

梯形图

    描 

+R

ADD_R

累加器12的浮点数相加,浮点数运算结果在累加器1

-R

SUB_R

累加器2的浮点数减去累加器1的浮点数,浮点数运算结果在累加器1

*R

MUL_R

累加器12的浮点数相乘,浮点数乘积在累加器1

/R

DIV_R

累加器2的浮点数除以累加器1的浮点数,浮点数商在累加器1,余数被丢掉

ABS

ABS

累加器1的浮点数取值,浮点数运算结果在累加器1

SQR

SQR

求累加器1的浮点数的平方,浮点数运算结果在累加器1

SQRT

SQRT

求累加器1的浮点数的平方根,浮点数运算结果在累加器1

EXP

EXP

求累加器1的浮点数的自然指数,浮点数运算结果在累加器1

LN

LN

求累加器1的浮点数的自然对数,浮点数运算结果在累加器1

SIN

SIN

求累加器l的浮点数的正弦函数,浮点数运算结果在累加器1

COS

COS

求累加器1的浮点数的余弦函数,浮点数运算结果在累加器1

TAN

TAN

求累加器1的浮点数的正切函数,浮点数运算结果在累加器1

ASIN

ASIN

求累加器1的浮点数的反正弦函数,浮点数运算结果在累加器1

ACOS

ACOS

求累加器1的浮点数的反余弦函数,浮点数运算结果在累加器1

ATAN

ATAN

求累加器1的浮点数的反正切函数,浮点数运算结果在累加器1

(1)语句表与梯形图中的整数乘法指令的区别

    语句表中的整数乘法指令“*I”将累加器12低字的16位整数相乘,32位双整数运算结果在累加器1。如果整数乘法的运算结果超出了16位整数允许的范围,OVOS位均为1

    梯形图中的整数乘法指令输出变量OUT的数据类型为INT(整数),所以梯形图中的整数乘法指令的乘积为16位,而不是32位。

    (2)用带常数的加法指令“+”简化程序

    加法指令“+”将累加器1低字的16位整数与指令中的16位常数(-32768~+32767)相加,16位整数运算结果在累加器1的低字。也可以将累加器1中的32位整数与指令中的32位常数相加,32位整数运算结果在累加器1

    下面的程序用来实现双整数运算MD20+MD24-200,运算结果送MD28

    L    MD    20    //MD20的内容装入累加器1

    L    MD    24    //累加器1的内容装入累加器2MD24的值装入累加器1

    +D            //累加器12的值相加,结果存放在累加器1

    +    L# - 200    //累加器1的值减去200,结果储存在累加器1

    T    MD    28    //累加器1的运算结果传送到MD28

    如果将上面程序中的指令“+  L#-200”改为没有操作数的双字减法指令“-D”,应在该指令的前面增加一条“L  L#200”指令。

    (3)32位除法运算的余数

    双整数除法指令能得32位的商,余数被丢掉。可以用MOD指令来求双整数除法的余数。

  整数与浮点数数学运算指令对累加器1和累加器2的数据进行运算,运算结果保存在累加器1(见图3-105)。对于有4个累加器的CPU,累加器3的内容复制到累加器2,累加器4的内容传送到累加器3,累加器4原有的内容保持不变。数学运算指令影响状态位CC1CC0OVOS,详细的情况见指令的在线帮助。

    3-105    数学运算中的累加器

    整数数学运算指令的操作见表3-19。下面是整数加法运算的例子:

    L    IW    10       //IW10的内容装入累加器l的低字

    L    MW    14      //累加器1的内容装入累加器2MW14的值装入累加器1低字

    +I                   //累加器1与累加器2低字的值相加,结果在累加器1的低字

    T    DB1DBW25    //累加器1低字中的运算结果传送到数据块DB 1DBW25

    在语句表中输入程序时,不能使用中文的加号和减号。

  循环移位指令将累加器1的整个内容逐位循环左移或循环右移032位(见表3-17),即从累加器1移出来的位又送回累加器1另一端空出来的位,移出的位装入状态字的CC1位。循环移位的位数可以用指令中的参数<number>来指定,也可以放在累加器2的字节。移位位数等于0时,循环移位指令被当作NOP(空操作)指令来处理。

    3-103和图3-104给出了双字循环左移8位的例子。

    3-17    循环移位指令

    3-103    双字循环左移指令


西门子S7-1200PLC模块山东代理商

信息声明:本产品供应信息由仪器网为您整合,供应商为(上海卓曙自动化设备有限公司),内容包括 (西门子S7-1200PLC模块山东代理商)的品牌、型号、技术参数、详细介绍等;如果您想了解更多关于 (西门子S7-1200PLC模块山东代理商)的信息,请直接联系供应商,给供应商留言!
供应商产品推荐
    您可能感兴趣的产品