《大工16秋《可编程控制器》辅导资料十.docx》由会员分享,可在线阅读,更多相关《大工16秋《可编程控制器》辅导资料十.docx(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、可编程控制器辅导资料十主 题:课件第四章第6节数学运算指令学习时间:2016年12月5日一12月11日内 容:我们这周主要学习课件第四章PLC的功能指令第6节数学运算指令的相关内 容。希望通过下面的内容能使同学们加深对PLC的功能指令相关知识的理解。一、学习要求1.掌握数据运算指令的功能和应用。二、主要内容1 .算术运算操作指令(1)加法指令 加法操作是对两个有符号数进行相加。 加法运算指令的梯形图表示:由加法运算符(ADD)、数据类型符(I、 DL R)、加法运算允许信号(EN)、力口数1 (IN1)、加数2(IN2)、加 法运算和输出(OUT)和允许输出端(ENO)构成。 加法运算指令的语
2、句表表示:由加法操作码(整型加法+1、双字型加法 +D、实数型加法+R)、力口数1 (INI)和加法运算的和(OUT)构成。 如图1所示。加法运算的操作:在梯形图表示中,当加法允许信号EN=1时,加数IN1与被加数IN2相加, 其结果传送到OUT中(即IN1+IN2=OUT);+ 1在语句表表示中,要先将一个加数送到OUT中,然后将OUT和IN1中的 数据进行相加,并将结果传送到OUT中(即OUT+IN1=OUT)。INI. OUTINI- OUT +D INI, OUT +R图1加法指令梯形图及语句表示整数加法将影响特殊继电器SML0 (零)、SM1.1 (溢出)、SM1.2 (负)。影 响
3、允许输出ENO正常工作的出错条件是:SM1.1 (溢出),SM4.3 (运行时间), 0006 (间接寻址)。整数加法指令中,操作数的寻址区域表1所示。表1操作数的寻址区域操作数类型寻址区域IN1IN2+1INTVW、IW、QW、MW、SW、SMW、AIW、T、C、AC、*VD、*AC. *LD和常数+DDINTVD、ID、QD、MD、SD、SMD、HC、AC、*VD、*AC、*LD和常数+RREALOUT4-1INTVW、QW、MW、SW、SMW、T、C、AC、*VD、*AC、*LD+DDINTVD、QD、MD、SD、SMD、LD、AC、*VD、*AC、 ,*LD1+RREAL(2)减法指令
4、减法指令是对两个有符号数进行相减操作。与加法指令一样,也可分为整数 减法指令(1)、双整数减法指令(D)及实数减法指令(R)。在LAD及FBD中,减法指令以功能框的形式进行编程,指令名称分别为:整数减法指令:SUBJ双整数减法指令:SBU_DI实数减法指令:SUB_R指令执行结果,IN1-IN2=OUT-I IN2, OUT -I) IN2, OUT -R I N2, OUT图2减法指令的梯形图及语句表示在STL中,执行结果:OUT-IN2=OUT,这里INI与OUT是同一个存储单 元。指令格式为: 整数减法指令 -I IN2, OUT 双整数减法指令-D IN2, OUT 实数减法指令 R
5、IN2, OUT(3)乘法指令乘法指令是对两个有符号数进行相乘运算,包括:整数乘法、完全整数乘法、 双整数乘法、实数乘法。乘法运算指令的梯形图表示:由乘法运算符(MUL)、数据类型符(I、DL R)、乘法运算允许信号(EN)、乘数1 (INI)、乘数2(IN2)、乘积(OUT)和 允许输出端(ENO)构成。乘法运算指令的语句表表示:由乘法操作码(整数乘法*1、双整数乘法*D、 完全整数乘法MUL、实数乘法*1)、乘数1 (IN1)和乘法运算的积(OUT)构 成。乘法运算的操作:在梯形图表示中,当乘法允许信号EN=1时,IN1与IN2相乘,其结果传送到和OUT中(即IN1*IN2=OUT);在语
6、句表表示中,要先将 一个乘数送到OUT中,然后将OUT和IN1中的数据进行相乘,并将结果传送 到 OUT 中(即 OUT*INl=OUT)o*1 INI. OUTMUL INI, OUT *D INI, OUT *R INI. OUT图3乘法指令的梯形图及语句表示乘法运算的说明:乘法运算分四种操作。其一是整数乘法(*1),即两个16位的整数相乘产生一个16位的整数积。 如果运算结果大于32767 (16位二进制数表示的范围),则产生溢出,可改用 MUL;其二是完全整数乘法(MUL),即两个16位的整数相乘产生一个32位的整 数积;其三是双整数乘法(*D),即两个32位的整数相乘产生一个32位的
7、整数积;其四是实数乘法(*R),即两个实数相乘产生一个实数的积。其他性能指标和加法类似。(4)除法指令除法指令是对两个有符号数进行相除运算,与乘法指令一样,也可分为整数 除法指令(/I)、完全整数除法(DIV)、双整数除法指令(/D)及实数除法指令(/R)o在LAD及FBD中,指令执行结果IN1/IN2=OUT在STL中,除法指令执行结果是:OUT/IN2=OUT。这里IN1与OUT是同 一个存储单元。DIV.IDIVDIV.DIDIV.REN ENOEN ENO EN E()EN ENOINI OUT INI OUT INI OUT INI OUTIN2 1IN2IN2 IN2/I IN2,
8、 OUT DIV IN2, OUT /D IN2, OUT /R IN2, OUT图4除法指令的梯形图及语句表示除法运算的说明:除法运算又分四种操作,其一是整数除法(/I),即两个16位的整数相除产生一个16位的整数商, 不保留余数;其二是完全整数除法(DIV),两个16位的整数相除,产生一个32位结果, 其中,低16位存商,高16位存余数。低16位在作除法运算前,被用来存放被 除数,即IN1与OUT的低16位是同一个存储单元;其三是双整数除法(/D),即两个32位的整数相除产生一个32位的整数商;其四是实数除法(/R),即两个实数相除产生一个实数的商。(5)加1运算加1运算指令的梯形图表示:
9、由加1运算符(INC)、数据类型符(B、W、 DW)加1运算允许信号(EN)、被加数(IN)和加1运算结果(OUT)构成。加1运算指令的语句表表示:由加1操作码(INC)、数据类型符(B、W、 DW)和加1运算结果(OUT)构成。加1运算的操作:在梯形图表示中,当加1允许信号EN=1时,数IN加1,其结果送到OUT 中,即 IN+1=OUT;在语句表表示中,OUTmI,其结果送到OUT中,即OUT+1=OUT。INCB OUT INCW OUT INCDW OUT图5除法指令的梯形图及语句表示力口 1运算注意事项:在梯形图中,IN和OUT的地址可以不同。在语句表中 两者必须相同。(6)减1运算
10、减1运算指令的梯形图表示:由减1运算符(DEC)、数据类型符(B、W、 DW)减1运算允许信号(EN)、被减1数(IN)和减1运算结果(OUT)构成。减1运算指令的语句表表示:由减1操作码(DEC)、数据类型符(B、W、 DW)和减1运算结果(OUT)构成。减1运算的操作:在梯形图表示中,当减1允许信号EN=1时,数IN减1,其结果送至U OUT 中,即 IN-1=OUT;在语句表表示中,OUT减1,其结果送到OUT中,即OUT-1=OUT。decZbDEC_WDEC-DWEN ENOEN ENOEN ENOIN OUT111IN OUT11IN OUTDECB OUT DECW OUT DE
11、CDW OUT图6除法指令的梯形图及语句表示(7)数学函数变换指令 平方根(SQRT)指令 自然对数(LN)指令 自然指数(EXP)指令 三角函数指令(SIN、COS、TAN)表2数学函数变换指令LAD方块方块上 部的符 STL指令功能说明SQRTSQRT IN, OUT将实数IN开平方,得到实数结果OUTLNLN IN, OUT将实数IN取自然对数,得到实数结果OUTJen 0卜EXPEXP IN, OUT将实数IN取以e为底的指数,得到实数结果OUTSINSIN IN, OUT求实数弧度值IN的正弦值,得到实数结果OUTCOSCOS IN, OUT求实数弧度值IN的余弦值,得到实数结果OU
12、TTANTAN IN, OUT求实数弧度值IN的正切值,得到实数结果OUT2.逻辑运算指令逻辑运算指令是对逻辑数(无符号数)进行处理,包括逻辑与、逻辑或、 逻辑异或、取反等共计4类逻辑操作,每类逻辑操作又分为对字节、字还是双字 进行操作,共组成了 12种逻辑操作。逻辑运算指令的操作数寻址区域类似与加法指令的相应寻址范围。影响逻辑运算指令的特殊继电器:SM1.0 (零)。影响允许输出ENO正常工作的出错条件为:SM4.3 (运行时间)、0006 (间 接寻址)。表3逻辑运算指令逻辑LAD方块方块上部的符 STL指令功能说明与WAND_ BEN ENOIN1 01 T 1X2WAND_BANDB
13、INI, OUT当E、=l时,将Z和IN冲的 数据按位与,结果送到out中 去VAND_VANDW INI, OUTW*AND_DWANDD Nl, OUT或WOR_BEN ENOIN, 01T1X2VOR_BORB INI, OUT当EN=1时,将INI和IN2中的 数据按位或,结果送到OUT中 去XVOR_VORW INI, OUTVOR_DVORD INI, OUT异或WXOR ,BEN ENO1X1 OCT1X2IXOR_BXORB INI, OUT当E、=l时,将IN1和IN2中的 数据按位异或,结果送到OUT 中去7COR_WXORW7 INI, OUTW,XOR_DWXORD I
14、NI, OUT取反INV.BEN Eoix onINV_BOUT当E=l时,将数据IN (或 OUT)按位取反,结果送到 OUT中去INV_VINVW OUTINV_DWINVD OUT运算规则:表4逻辑运算规则懵令掾作依地址单元单元长度(n字节)迂算前值运算结果值与INIVBO10101001101010011IN2(OUT)AC111111000101010001INIVBO10101001101010011IN2(OUT)ACO10011011001110111国INIVBO10101001101010011IN2(OUT)AC211101101010001001取反IIN(OUT)VB
15、10101010011101011003.递增、递减指令 字节增和字节减 字增和字减 双字增和双字减表5递增、递减指令格式LAD- 1位了 |N ENO1 out|DEC.B V ENOOUT1)1INC WEN ENOIN OUTDEC W IEN ENOIN cudt11INC.DWEN ENOIN OUTDEC.DWEN ENOIN OUT1S1L,INCBOUT DECBOUT”INCV OUTPDECI-OUTINCD- OUT,DECDOUT功能,字节加:IJ字节遍字加W双字加P双早调原理:用于使能输入有效时,输入数IN加1 指定的存储器单元输出。得到的结果通过OUT三、习题(一)单选题1 .整数加法的语句表示为( )oA. +l IN1, OUTC. +D IN1, OUTB. -I IN1, OUTD. +R IN1, OUT2.逻辑运算指令会影响的特殊继电器是( )oA. SM1.0B. SM1. 1C. SM1.2D. SM1.33.整数加法结果发生溢出将影响特殊继电器( )oA. SM1.0B. SM1. 1C. SM1.2D. SM1.3(二)判断题1 .整数的加减指令的功能是将两个8位的整数相加减,得到一个8位的整数 结果。()2 .字取反指令梯形图的操作码为INV-W o ()【习题答案】(一)单选题3 、A2、A3、B(二)判断题4 、义2、 J