收藏 分销(赏)

s7-200基本指令演示幻灯片.ppt

上传人:精**** 文档编号:5872001 上传时间:2024-11-22 格式:PPT 页数:156 大小:1.73MB 下载积分:20 金币
下载 相关 举报
s7-200基本指令演示幻灯片.ppt_第1页
第1页 / 共156页
s7-200基本指令演示幻灯片.ppt_第2页
第2页 / 共156页


点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,教育无他,爱与榜样而已,S7-200系列PLC基本指令,SIMATIC指令有:,梯形图(LAD),、,语句表(STL),和,功能图(FBD),三种编程语言。比较而言,梯形图类似于传统的继电器控制系统,直观、易懂;语句表类似于计算机汇编语言的指令格式。本章主要讲述基本指令的定义和梯形图、语句表的基本编程方法。基本指令包括,基本逻辑指令,,,算术、逻辑运算指令,,,数据处理指令,,,程序控制指令,等。,1,第5章 S7-200系列PLC基本指令,5.1 基本逻辑指令,5.2 算术、逻辑运算指令,5.3 数据处理指令,5.4 程序控制类指令,2,5.1 基本逻辑指令,基本逻辑指令是指构成基本逻辑运算功能指令的集合,包括,基本位操作,、,置位/复位,、,边沿触发,、,定时,、,计数,、,比较,等逻辑指令。,3,5.1.1 基本位操作指令,含有直接位地址的指令叫位操作指令,是PLC常用的基本指令,梯形图指令有,触点,和,线圈,两大类,触点又分为动合和动断两种形式;语句表指令有,与,、,或,以及,输出,等逻辑关系,位操作指令能实现基本的位逻辑运算控制。,4,梯形图与传动继电器控制符号比较,5,1.指令格式,LD I0.0 LDN I0.1,A I0.0 AN I0.1,O I0.0 ON I0.1,=Q0.0,用于网络起始的动合/动断触点,动合/动断触点串联,动合/动断触点并联,线圈输出,(LAD,),(STL),功能,注,:触点代表CPU对存储器的,读,操作,由于计算机系统对读操作的的次数不受限制,所以用户程序中,动合、动断触点使用的次数不受限制。线圈符号代表CPU对存储器的,写,操作,在用户程序中,每个线圈只能使用一次。,6,常用指令助记符的定义,:,LD:,装载指令,对应梯形图左侧母线开始,连接动合触头,;,LDN:,装载指令,对应梯形图左侧母线开始,连接动断触头,;,A:,与操作指令,用于动合触点的串联连接,;,AN:,与非操作指令,用于动断触点的串联连接,;,O:,或操作指令,用于动合触点的并联连接,:,ON:,或非操作指令,用于动断触点的并联连接,;,=(OUT),输出指令,线圈输出,.,7,例5.1,位操作指令程序应用,。,8,例5.2,触点的串联,9,使用说明:,(1)串联触点可以使用上限为11个,(2)连续输出电路可以反复使用=指令,但次序必须正确,不然就不能连续使用。,演示1,10,11,例5.3,触点的并联,12,2.编程相关问题,1)PLC I/O端点的分配方法,每一个传感器或开关对应一个PLC确定的输入点,每一个,负载对应一个PLC确定的输出端点。外部按钮一般用动合触,点。,2)输出继电器的使用方法,PLC在写输出阶段要将输出映像寄存器的内容送至输点,Q,继电器输出方式时,PLC的继电器触点要动作,所以输出,端不带负载时,控制线圈应使用内部继电器M或其他,尽可,能不要使用输出继电器Q的线圈。,13,3)梯形图程序绘制方法,梯形图程序是利用STEP7编程软件在梯形图区按照自左向右、自上而下的原则绘制的。为提高PLC运行速度,触点的并联网络多连在左侧母线,线圈位于右侧。,4)梯形图网络结构,梯形图网络结构是软件系统为程序注释和编译附加的,不增加程序长度,并且软件的编译结果可以明确指出程序错误语句所在的网络段。清晰的网络结构有利于程序的调试,使程序简明易懂,。,14,3.块操作指令,1),串联电路块的并联(块或操作指令)-OLD,两个或两个以上触点串联形成的支路叫串联电路块,OLD功能:用于串联电路块的并联连接,例5.4,块或操作指令应用,15,使用说明:,(1)除在网络块逻辑运算的开始使用LD或LDN指令外,在块电路的开始也要使用LD或LDN指令。,(2)每完成一次块电路的并联时要写上OLD指令。,(3)OLD指令无操作数,2)并联电路块的串联连接指令(块与操作)-ALD,用于将以LD或LDN起始的并联电路块和另外的LD或LDN起始的,并联电路块串联连接,16,例5.5,块与(ALD)指令的应用,使用说明,:,在块电路开始时要使用,LD,或,LDN,指令。,在每完成一次块电路的串联连接后要写上,ALD,指令。,ALD,指令无操作数,17,练习1:写出下列梯形图的语句表,演示2,18,19,4.栈操作指令,S7-200系列PLC使用9层堆栈来处理所有逻辑操作,和计算机中的堆栈结构相同。堆栈是一组能够存储和取出数据的暂存单元,其特点是“,后进先出,”。每一次进行入栈操作,新值放入栈顶,栈底值丢失;每次进行出栈操作,栈顶值弹出,栈底值补进随机数。,(1),逻辑入栈指令(LPS),逻辑入栈指令又称为分支电路开始指令。在梯形图的中的分支结构中,可以形象地看出,它生成一条新的母线,其,左,侧为原来的主逻辑块,,右,侧为新的从逻辑块,因此可以直接编程,20,比较,堆栈指令何时用?,21,从堆栈使用来上来讲,LPS指令的作用是把新的分支母线的状态压入堆栈栈顶,。,2逻辑读栈(LRD),逻辑读栈指令在梯形图分支结构中,当新母线左侧为主逻辑块时,LPS开始右侧的第一从逻辑块编程,LRD开始第二个以后的从逻辑块编程。,3逻辑出栈指令(LPP),逻辑出栈指令又称为分支结束指令。在梯形图分支结构中,LPP用于LPS产生的新母线右侧的最后一个从逻辑块编程。弹出分支母线的状态出堆栈。,22,例5.6,LPS、LRD、LPP应用举例,23,思考,:若是把单线圈输出放在上面,语句表结果一样吗?,演示3,24,25,例5.7,LPS、LRD、LPP应用举例,26,使用说明:,由于受堆栈空间的限制(9层堆栈),LPS、LPP指令连续使用时应少于9次,LPS、LPP指令必须成对使用,它们之间可使用LRD指令。,LPS、LPP、LRD指令无操作数。,27,练习2:完成梯形图和语句表之间的转换,28,5.1.2 取非和空操作指令,LAD,STL,功能,NOT,取非,NOP N,空操作指令,指令格式,29,1,.取非指令(NOT),取非指令,指对存储器位的取非操作,用来改变能量流的状态。梯形图指令用触点形式表示,触点左侧为1时,右侧为0,输出无效;反之,左侧为0时,右侧为1,输出有效。,2,.空操作指令(NOP),空操作指令起增加程序容量的作用,使能输入有效时,执行空操作指令,将稍微延长扫描周期长度,不影响用户程序的执行,不会使能量流输出断开,30,例5.8,取非指令和空操作指令应用举例,31,5.1.3 置位/复位指令,普通线圈获得能量流时线圈通电,能量流不能到达时,线圈断电,置位/复位指令则是将线圈设成为置位线圈和复位线圈两大部分,将存储器的置位、复位功能分开,置位线圈受到脉冲前沿触发时,线圈通电锁存(存储器位置1)、复位线圈受到脉冲前沿触发时,线圈断电锁存(存储器位置0)。下次置位、复位操作信号到来前,线圈状态保持不变。,32,1.指令格式,从起始位开始的N个元件置1,从起始位开始的N个元件置0,33,例5.9,置位/复位指令的应用,电动机连续运转的PLC程序及语句表如下:,用置位和复位指令实现功能如下,34,例5.10,两台电动机M1、M2同时起动,M2停止后M1才停止的程序:,练习,:有两台电动机,M1,启动后,,M2,才能启动;,M2,停止后,,M1,才能停试用置位/复位指令编写控制程序,35,5.1.4 边沿触发指令,指令格式,LAD-,STL,EU,ED,对其之前的逻辑运算结果的上升沿产生一个宽度为一个扫描周期的脉冲。,对逻辑运算结果的下降沿产生一个宽度为一个扫描周期的脉冲。,功能,36,使用说明:,对于位元件来说一旦被置位,就保持在通电状态,除非对它复位;而一旦被复位就保持在断电状态,除非再对它置位。,S/R,指令可以互换次序使用,但由于,PLC,采用扫描工作方式,所以写在后面的指令具有优先权。,如果对计数器和定时器复位,则计数器和定时器的当前值被清零。,N,的使用范围为,1255,一般情况下使用常数。,37,例5.11,S/R、EU/ED使用例题分析,38,作业布置:,使用置位、复位指令,编写两套电动机(两台)的控制程序,两套的控制区要求如下:,起动时,电动机M1先起动,才能起动电动机M2,停止时,电动机同时停止;,起动时电动机M1、M2同时起动,停止时,只有M2停止后,电动机M1才能停止。,39,5.1.5 定时器指令,a,、接通延时定时器(,TON),b、,有记忆通电延时定时器(,TONR,),c、,断电延时定时器(,TOF,),一.几个基本概念:,1、种类,2、分辨率和定时时间的计算,40,什么是分辨率:,单位时间的时间增量为定时器的分辨率-又叫,精度,.,精度等级:,1ms,10 ms,100ms,定时时间,T=P T*S,其中:T 为定时时间 PT 为设定值 S 为分辨率.,3、定时器的编号:,41,定时器的编号用定时器的名称和它的常数编号(最大为255)表示,即,T*,定时器的编号包含两方面的信息:定时器位和定时器当前值.,定时器位,:当定时器的当前值达到设定值PT时,定时器触点动作。,定时器当前值,:存储定时器当前累计的时间,它占用 16 位符号整数来表示,最大计数值为 32767。,42,定时器类型,分辨率/ms,最大当前值/S,定时器编号,TONR,1,32.767,T0,T64,10,327.67,T1-T4,T65-T68,100,3276.7,T5-T31,T69-T95,TON,TOF,1,32.767,T32,T96,10,327.67,T33-T36,T97-T100,100,3276.7,T37-T63,T101-T255,定时器的分辨率和编号,43,二、通电延时定时器(TON),梯形图,(LAD),语句表(STL),其中,:,IN,是使能输入端,编程范围,T0-T255,;PT是预置输入端(,0-32767,),PT,数据类型:,INT。,使用说明:,使能输入(,IN,)有效时,定时器开始计时,当值从,0,开始递增,大于或者等于预置值(,PT,)时,定时器输出状态位置,1,(输出触点有效),当前值的最大值为,32767,。使能端无效(断开)时,定时器复位(当前值清零,输出状态位置,0),。,44,例 题:,通电延时型定时器应用程序,程序运行结果见时序,时序图分析,45,三有记忆通电延时定时器(TONR),(2)语句表(STL):,TONR T65,+500,(1),梯形图(LAD),:,使用说明:,使能输入端(,IN,)有效时(接通),定时器开始计时,当前值大于或等于预置值(,PT,)时,输出状态置,1,。使能端输入无效(断开)时,当前值保持(,记忆,),使能输入(,IN,)再次接通有效时,在原记忆值的基础上递增计时。有记忆通电延时型(,TONR,)定时器采用线圈复位指令(,R),进行复位操作,当复位线圈有效时,定时器当前值清零,输出状态位置,0。,46,例题分析,47,四.断电延时定时器(TOF),(1)梯形图,(2)语句表(STL):TOF T37,+30,使用说明,:使能端(IN)输入有效时,定时器状态位立即置1,当前值复位(为0).使能端(IN)断开时,开始计时,当前值从0递增,当前值达到预置值时,定时 器状态位复位置0,并停止计时,当前值保持。,48,例题分析,49,S7-200应用程序编程指导,例一:脉冲宽度可控制电路,:,在输入信号宽度不规则的情况下,要求在每一个输入信号的上升沿产生一个固定的脉冲,该脉冲宽度可以调节。如果输入信号的两个上升沿之间的距离小于该脉冲宽度,则忽略输入信号的第二个上升沿,50,Q0.0脉冲产生时序过程:,51,定时器的刷新方式和正确使用,A.定时器的刷新方式:,(1)1ms定时器:,由系统每隔,1ms,刷新一次,与扫描周期及程序无关。它采用的是中断刷新方式。因此,当扫描周期大于,1ms,时,在一个周期内可能被多次刷新。其当前值在一个扫描周期内不一定保持一致。,B.定时器的正确使用,52,说明:,对,1ms,定时器,T32,,在使用错误方法时,只有当定时器的刷新在,T32,的常闭触点执行以后到,T32,的常开触点执行以前的区间时,Q0.0,才能产生一个宽度为一个扫描周期的脉冲,而这种可能性是极小的。在其它情况,则这个脉冲产生不了。,(2)10ms定时器:,由系统每个扫描周期开始时自动刷新,由于是每个扫描周期只刷新一次,因此,在一个扫描周期内定时器位和定时器的当前值保持保持不变。,定时器的正确使用,53,说明:,对10ms定时器T33,在使用错误方法时,Q0.0永远产生不了这个脉冲。定时器在每次扫描开始时刷新。该例中T33被置位,但执行到定时器指令时,定时器将被复位(当前值和位都被置0),当开触点T33被执行时,T33永远为OFF,Q0.0也将为OFF,即永远 会被置位ON。,54,(3)100ms定时器:,100ms,定时器在定时器指令执行被刷新,因此,如果,100ms,定时器被激活后,如果不是每个扫描周期都执行定时器指令或在一个扫描周期内多次执行定时器指令,都会造成计时失准。,100ms,定时器仅用在定时器指令在每个扫描周期执行一次的程序中,。,定时器的正确使用:,55,100ms,的定时器在执行指令时刷新,所以当定时器,T37,到达设定值时,Q0.0,肯定会产生这个脉冲。在使用定时器时,要弄清楚定时器的分辨率,否则,一般情况下不要 把定时器本身的常闭触点作为自身的复位条件,定时器指令的应用实例,例 1:报警电路。,报警是电气自动控制中不可缺少的重要环节,标准的报警功能应该是专光报警。当故障发生时,报警指示灯闪烁,报警电铃或蜂鸣器响,操作人员知道故障发生后,按消铃按钮,把电铃关掉,报警指示灯从闪烁变为长亮。故障消失后,报警指示灯熄。另外还设有试灯、试铃按钮,用于平时检测报警指示灯和电铃的好坏。,56,输入信号设置:,I0.0故障信号;I1.0为消铃按钮;I1.1为试灯按钮,输出信号设置:,Q0.0为报警灯;Q0.7为报警电铃,57,I0.0,I1.0,I1.1,Q0.0,Q0.7,例题2:三台电动机顺序起动、逆序停止的程序;,要求 3台电动机按启动按钮后,M1、M2、M3正序启动,启动时间间隔为1分钟;按停止按钮后,逆序停止,时间间隔为30秒钟。,设计方法:,1),确定题目中的输入/输出点数,分配好PLC的I/O地址;有2个输入点;3个输出点。,2),设计出PLC外部接线;(略),3),.设计PLC程序,4),.模拟调试,58,T37,T37,T37,T38,T38,T39,T39,T39,T40,T40,T40,I0.0,I0.0,Q0.1,Q0.1,Q0.1,Q0.2,Q0.2,Q0.2,I0.1,I0.1,M0.0,M0.0,M0.1,M0.1,M0.2,M0.2,T39,M0.3,M0.3,Q0.0,Q0.0,600,600,300,300,TON,TON,TON,TON,IN,IN,IN,IN,PT,PT,PT,PT,59,5.1.6 计数器指令,一、计数器的几个基本概念,(1)种类,:S7-200系列PLC的计数器有3种:增计数器CTU、增减计数器CTUD、减计数CTD。,(2)编号:,计数器的编号用计数器的名称和数字(0255)组成,如,C,*,,如C,6。,计数器的编号包含两方面的信息:计数器的位和计数器的当前值。,计数器位,:计数器位和继电器一样是一个开关量,表示计数器是否发生动作的状态。当计数器的当前值达到设定值时,该位被置位为ON。,计数器当前值,:其值是一个存储单元,它用来存储计数器当前所累计的脉冲个数,用16位符号整数来表示,最大数值为32767。,60,二.计数器指令的使用说明,(1)增数器CTU,梯形图:,语句表:,首次扫描时,计数器位为OFF,当前值为0。在计数器输入端CU的每一个上升沿,计数器计数一次,当前值增加一个单位。当前值达到设定值时,计数器位为ON,当前值可继续计数到32767后停止。复位输入阻抗端有效或对计数器执行复位指令,计数器自动复位OFF,当前值为0。,61,62,(2)增减计数器CTUD,增减计数器当前值计数到32767(最大值)后,下一个CU输入的上升沿将使当前值跳变为最小值(-32676);当前值达到最小值-32767后,下一个CD输入的上升沿将使当前值跳变为最大值32676。复位输入端有效或使用复位指令对计数器进行复位操作后,计数器自动复位,即计数器位为OFF,当前工作值为0。,指令格式:如下图,其中:CU增计数器输入端;CD减计数器输入端;R复位信号输入端;CTUD为增/减计数器。,63,增/减计数器例题分析,64,(3)减计数器CTD,其中:LD 减计数器脉冲复位端;CD 减计数器脉冲输入端,。,工作过程:,复位端(LD)有效时,计数器预置值(PV)装入当前值存储器,计数器状态位复位(置0)。CD端每一个输入脉冲上升沿,减计数器的当前值从预置值开始递减计数,当前值等于0时,计数器状态位置位(置1),停止计数。,65,计数器指令说明:,在增计数中,CU,、,R,的顺序不能错误;,在增,/,减计数器中,CU,、,CD,、,R,的顺序不能错误;,在减计数中,CD,、,LD,的顺序不能错误。,例题分析,66,定时器、计数器指令综合分析,例一:长定时电路:,当输入信号I0.0有效后经过10h30min时,Q0.0置位。,PLC梯形图:,67,例 二:报警电路,报警是电气自动控制中不可缺少的重要环节,标准的报警功能应该是声光报警。当故障发生时,报警指示灯闪烁,报警电铃或蜂鸣器响,操作人员知道故障发生后,按消铃按钮,把电铃关掉,报警指示灯从闪烁变为长亮。故障消失后,报警指示灯熄。另外还设有试灯、试铃按钮,用于平时检测报警指示灯和电铃的好坏。,输入信号设置:,I0.0故障信号;I1.0为消铃按钮;I1.1为试灯按钮,输出信号设置:,Q0.0为报警灯;Q0.7为报警电铃,68,梯形图程序,69,5.1.7 比较指令,一、基本概念,1,比较指令的定义:比较指令是将两个操作数按指定条件进行比较,条件成立时,触点闭合。,2比较比较指令的主要类型,:1字节比较 (B);(无符号整数)2整数比较 (I);(有符号整数)3双字整数比较(D);(有符号整数)4实数比较 (R)。(有符号双字浮点数),3比较指令的运算符,=等于;=大于等于;大于:不等于6种,4比较指令可进行期与,或,装载,(A O LD)的编程共有 4*6*3 =72条,70,二、指令格式,(1)字节比较,:梯形图LAD,语句表STL:,LDB=IN2,IN1;AB=IN1,IN2;OB=IN1,IN2.LDB IN1,IN2;AB IN1,IN2;OB IN1,IN2.LDB IN1,IN2;AB IN1,IN2;OB IN1,IN2.LDB=IN1,IN2;AB=IN1,IN2;OB=IN1,IN2.,71,(2)字比较:,梯形图:,语句表STL:,LDW=IN2,IN1;AW=IN1,IN2;OW=IN1,IN2.LDW IN1,IN2;AW IN1,IN2;OW IN1,IN2.LDW IN1,IN2;AW IN1,IN2;OW IN1,IN2.LDW=IN1,IN2;AW=IN1,IN2;OW=IN1,IN2,72,(3)双字比较:,语句表,STL:LDD=IN2,IN1;AD=IN1,IN2;OD=IN1,IN2.LDD IN1,IN2;AD IN1,IN2;OD IN1,IN2.LDD IN1,IN2;AD IN1,IN2;OD IN1,IN2.LDD=IN1,IN2;AD=IN1,IN2;OD=IN1,IN2,73,(4)实数比较:,语句表STL:LDD=IN2,IN1;AD=IN1,IN2;OD=IN1,IN2.LDD IN1,IN2;AD IN1,IN2;OD IN1,IN2.LDD IN1,IN2;AD IN1,IN2;OD IN1,IN2.LDD=IN1,IN2;AD=IN1,IN2;OD IN1,IN2;AD IN1,IN2;OD IN1,IN2.,LDD=IN1,IN2;AD=IN1,IN2;OD=IN1,IN2,74,说明:,字节比较用于比较两个字节型整数值IN1和IN2的大小整数比较用于两个一个字长的整数值IN1和IN2大小,有符号数,其范围是16#8000-16#7FFF.,双字整数比较用于两个双字长的整数值IN1和IN2大小,有符号数,其范围是16#80000000-16#7FFFFFFF.,实数比较用于两个一个字长的实数值IN1和IN2大小,有符号数,其负实数范围是-1.175495E-38_-3.402823E+38,其正实数范围是+1.175495E-38_+3.402823E+38.,75,三、例题分析:,设计一个电路,当计数5次以内,Q0.0置1,5到10次计数,Q0.2置1,10次以上Q0.3置1.,76,四、综合练习,电机顺序启/停电路的两种设计方法,要求:,三台电机M1,M2,M3。启动时:先动M1-60S后M2动60秒后M3启动:停车时:先停M3,30秒后停M2,30秒后M1停。,写出梯形图和指令表,77,78,小结,了解定时器、计数器基本格式、功能使用,是用好PLC计数器的关键,掌握一些具体的应用程序编制方法,对以后的工作将有许多的帮助.,熟练掌握定时器计数器的使用方法,掌握编程技巧,编写较复杂的控制程序,直接服务于生产.,比较指令主要用于两个数值的比较,使用时要注意其类型相同,79,5.2 算术、逻辑运算指令,运算功能的加入是现代可编程序控制器与以往可编程逻辑控制器的最大区别,目前各厂家生产的各种型号的PLC普遍具有较强的运算功能。本节主要讲述的算术运算包括加、减、乘、除和一些常用的数学函数以及逻辑运算包括与、或和取反指令。,5.2.1 算术运算指令,5.2.2 数学函数变化指令,5.2.3 增减计数指令,5.2.4 逻辑运算指令,80,5.2.1 算术运算指令,一、加减运算指令,1加法,指令的定义:加法指令是对两个有符号的数进行相加操作,2加法指令的种类:整数相加、双整数相加、实数相加。,(1)整数相加ADD-I(ADDInteger),指令格式:LAD及STL格式如图:,功能描述:使能输入有效时,将两个单字长(16位)的符号整数IN1和IN2相加,产生一个16位整数结果OUT。,数据类型:输入、输出均为整数。,81,例题,82,(2)双整数加法ADD-DI(ADD Double Integer):,指令格式:LAD及STL格式如下图:,功能描述:使能输入有效时,将两个双字长(32位)的符号双整数IN和IN2相加,产生一个32位双整数结果OUT。,数据类型:输入、输出均为双整数(DINT)。,例题,83,()实数加法ADD-R(ADD Real):,指令格式:LAD及STL格式如下图:,功能描述:使能输入有效时,将两个双字长(32位)的符号实数IN1和IN2相加,产生一个32位实数结果OUT。,数据类型:输入、输出均为实数(REAL)。,84,例题,注意:,如果IN1或IN2=OUT时,加法指令变为:,+I IN2,OUT;+D IN2,OUT;+R IN2,OUT,加法指令节省一条数据传送指令,本规律适用所有算术运算,85,减法指令的种类:,整数相减、双整数相减、实数相减。,(1)整数减法SUB-I:,指令格式:LAD及STL格式如下图:,功能描述:使能输入有效时,将两个单字长(16位)的符号整数IN1和IN2相减,产生一个16位整数结果OUT。,数据类型:输入、输出均为整数(INT)。,(2)双整数减法SUB-DI:,指令格式:LAD及STL格式如下图:,功能描述:使能输入有效时,将两个双字长(32位)的符号双整数IN1和IN2相减,产生一个32位双整数结果OUT。,数据类型:输入、输出均为双整数(DINT)。,数据类型:输入、输出均为实数(REAL)。,86,(3)实数减法SUB-R:,指令格式:LAD及STL格式如下图:,功能描述:使能输入有效时,将两个双字长(32位)的符号实数IN1和IN2相减,产生一个32位实数结果OUT。,87,例题分析:计算 6000-4000的值.,结果:VW4=2000,88,二、乘除运算指令,1乘法,指令的定义:,乘法指令是对两个有符号的数进行相乘运算。,2乘法指令的种类:,整数乘法、完全整数乘法、双整数乘法、实数乘法。,(1)整数乘法MUL-I:,指令格式:LAD及STL格式如下图:,功能描述:使能输入有效时,将两个单字长(16位)的符号整数IN1和IN2相乘,产生一个16位整数结果OUT。运算结果在大于16位二进制数表示的范围时产生溢出。,数据类型:输入、输出均为整数,。,89,例题:,90,(2)完全整数乘法MUL:,指令格式:LAD及STL格式如下图,:,功能描述:使能输入有效时,将两个单字长(16位)的符号整数IN1和IN2相乘,产生一个32位双整数结果OUT。32位运算结果存储单元的低16位运算前用于存放被乘数。,数据类型:输入为整数INT、输出为双整数(DINT)。,91,例题:,92,(3)双整数乘法MUL-DI:,指令格式:LAD及STL格式如下图:,功能描述:使能输入有效时,将两个双字长(32位)的符号整数IN1和IN2相乘,产生一个32位双整数结果OUT。运算结果大于32位二进制表示范围,则产生溢出。,(4)实数乘法MUL-R:,指令格式:LAD及STL格式如下图例题:,功能描述:使能输入有效时,将两个双字长(32位)的实数IN1和IN2相乘,产生一个32位实数结果OUT。运算结果大于32位二进制表示范围,则产生溢出。,93,例题:,实数相乘指令演示,94,95,3除法指令的定义:,除法指令是对两个有符号的数进行相除运算。,4除法指令的种类:,整数除法、完全整数除法、双整数除法、实数除法。,功能描述:使能输入有效时,将两个单字长(16位)的符号整数IN1和IN2相除,产生一个16位整数商OUT,不保留余数。双整数除法和实数除法也同样过程,只是位数变为32位。,在整数完全除法中,两个16位的符号整数相除,产生一个32位的结果,其中低16位为商,高16位为余数。在指令中,32位结果存储单元的低16位运算前被兼用存放被除数。,96,/I INT,OUT,/D IN1,OUT,DIV INT,OUT,/R IN1,OUT,指令格式:LAD及STL格式如下图,97,完全除法与整数除法的比较实例:4003/40=?,(1)完全除法:,(2)整数除法:,98,5.2.2 数学函数变换指令,数学函数变换指令(也称数学功能指令):包括平方根、自然对数、三角函数、正弦、余弦和正切。运算输入输出数据都为实数。结果大于32位位二进制数表示的范围时产生溢出,1平方根指令(SQRT),指令格式:LAD及STL格式如下图:,功能描述:使能输入有效时,把一个双字长(32位)的实数IN开平方,得到32位的实数结果OUT。,数据类型:输入、输出均为实数。,99,例题:,2自然对数指令(LN),指令格式:LAD及STL格式如下图:,功能描述:使能输入有效时,把一个双字长(32位)的实数IN自然对数,得到32位的实数结果OUT。当求解以10为底的常用对数时,可用(/R)DIVR指令将自然对数除以2.302585即可.,数据类型:输入、输出均为实数。,例题:求以10为底的50的常用对数结果送到VD200中.,100,I0.0合上后的情况,:,I0.0合上前的情况,:,101,3指数指令(EXP),指令格式:LAD及STL格式如下图:,功能描述:使能输入有效时,把一个双字长(32位)的实数IN取以e为底的指数。,可用指数指令和自然对数指令相配合来完成以任意常数为底和以任意常数为指数的计算。,数据类型:输入、输出均为实数,例题:18,6,的值,102,(1)I0.0合上前的情况,(1)I0.0合上后的情况,103,4.正弦SIN、余弦CON、正切TAN指令:,SIN IN,OUT COS IN,OUT TAN IN,OUT,104,例题:,105,5.2.3 增减计数指令,增减指令又称为自增、自减。它是对无符号数或有符号,数进行自动加1或减1的操作,数据长度可以是字节、字或双字。其中字节增减是对无符号数操作,而字和双字增减是对有符号数操作。,1字节增指令(INC-B)和字节减指令(DEC-B),指令格式:,LAD及STL格式如下图:,功能描述,:使能输入端有效时,把一字节长的无符号数(IN)加1或减1,得到一字节的无符号输出结果OUT。数字类型为字节,106,INCB OUT,DECB OUT,2字增指令(INC-W)和字减指令(DEC-W,),指令格式:,LAD及STL格式如下图,:,INCW OUT DECW OUT,功能描述:,使能输入端有效时,把一字长的有符号数(IN)加1或减1,得到一字节的有符号输出结果OUT。数据类型为字。,107,3双字增指令(INC-DW)和双字减指令(DEC-DW),指令格式:,LAD及STL格式如下图:,INCD OUT DECD OUT,功能描述:使能输入端有效时,把一双字长的有符,号数(IN)加1或减1,得到一双字节的有符号输,出结果OUT。数据类型为双字。,108,5.2.4 逻辑运算指令,逻辑运算指令对无符号数进行的逻辑处理,主要包括逻辑与、逻辑或、逻辑异或和取反等运算指令。按操作数长度分为字节、字和双字逻辑运算。IN1、IN2、OUT操作数的数据类型:B、W、DW。,109,5.3 数据处理指令,PLC是由继电器,接触器控制系统发展而来的,随着计算机技术的发展,它除了有继电器、接触器控制系统的功能外,还有丰富的功能指令,主要包括,传送,、,移位及填充指令,、,高速处理指令,、,数据转换指令,、,通讯指令,、,PID,。其中数据处理指令包括数据的传送、交换、填充、移位指令等。,110,5.3.1 数据传送,用来完成各存贮单元进行一个或多个数据的传送.,一、单一数据的传送,1、概念:单个传送指令一次完成一个字节、字或双字的传送。,2、功能:使能输入有效时,把一个输入IN单字节无符号数、单字长或双字长符号数送到OUT所指的存储单元输出.,3、数据类型:操作数的类型分别为B、W、DW,N的数据范围0255,4、使能输出断开的出错条件是:SM4.3,0006,0091,111,5、指令格式,MOVB IN,OUT,MOVW IN,OUT,MOVD IN,OUT,二、数据块传送,1、概念:数据块传送指令一次可完成N个数据的成组传送。,2、类型:指令类型有字节、字或双字等三种。,112,2、指令格式,BMB IN,OUT,N,BMW IN,OUT,N,BMD IN,OUT,N,3、功能,(1).字节块的传送,(BLKMOV_B):使能有效时,把从输入字节时,IN,开始的,N,个字节型数据传送到从,OUT,开始的,N,个字节的存储单元,113,(2).字块的传送,(BLKMOV_,W,):使能有效时,把从输入字时,IN,开始的,N,个字型数据传送到从,OUT,开始的,N,个字的存储单元。,(3).双字块的传送,(BLKMOV_,D,):使能有效时,把从输入双字时,IN,开始的,N,个双字型数据传送到从,OUT,开始的,N,个双字的存储单元.,例题分析:,如图分析求VW100 的值?,114,5.3.2 字节交换/填充指令,一、字节交换指令(SWAP),字节交换指令用来实现字的高、低字节内容交换的功能;当使能输入EN有效时,将输入字IN的高、低字节交换的结果输出到OUT指定的存储器单元;,IN、OUT操作数的数据类型为INT;,使能流输出断开的出错条件是:SM4.3,0006,指令格式:LAD及STL格式如图:,115,单元,交换前,交换后,VW10,0000001100100101,0010010100000011,VW10,11*16,2,+2*16+5,2*16,3,+5*16,2,+11,805,9475,过程分析,116,二、字填充指令(FILL),功能描述:,使能输入有效时,将字型输入数据IN的高字节和低字节进行交换。,数据类型:,输入为字。,指令格式,:LAD及STL格式如图:,117,5.3.3 移位指令,一、左、右移位指令,该指令有左移和右移两种.根据所移位数据的长度分,字节,、,字,、,双字型,.移位数据存储单元的移出端与SM1.1(溢出)相连,所以最后被移出的位被放到SM1.1位存储单元.另一端自动补0。,移位指令分为左右移位和循环左右移位及寄存器移位指令三大类。前两类移位指令按移位数据的长度又分为字节型、字型双字型3种,移位指令最大移位位数N数据类型对应的位数,移位位数为字节型数据。,118,MOVB IN,OUT MOVW IN,OUT MOVD IN,OUT,SLB OUT,N SLW OUT,N SLD OUT,N,MOVW IN,OUT MOVB IN,OUT MOVD IN,OUT,SRW OUT,N SRB OUT,N SRD OUT,N,梯形图和语句表,119,移位次数,地址,单元内容,位SM1.1,说明,0,LW0,1011010100110011,X,移位前,1,LW1,0101101010011001,1,1进入SM1.1,右端补0,2,LW2,0010110101001100,1,1进入SM1.1,右端补0,3,LW3,0001011010100110,0,0进入SM1.1,右端补0,例题分析,:执行指令:SRW LW0,3,120,二、循环左右移位指令,该指令有循环左移和循环右移两种.循环移位数据的长度分字节、字、双字型.循环移位数据存储单元的移出端与另一端相连,同时与SM1.1(溢出)相连,所以最后被移出的位被移位到另一端的同时,也被移到SM1.1位存储单元。,1、功能:,使能输入端有效时,把,IN,输入数据,循环左/右,移,N,位后,再将结果输出到,OUT,所指的双字存储单元.实际移位次数为系统设定值取以8/16/32为底的模所得的结果表明。,121,MOVB IN,OUT MOVB IN,OUT,RRB OUT,N RLB OUT,N,2、指令格式,MOVW IN,OUT MOVW IN,OUT,RRW OUT,N RLW OUT,N,MOVD IN,OUT MOVD IN,OUT,RRD OUT,N RLD OUT,N,122,3、应用举例,移位次数,地址,单元内容,位SM1.1,说明,0,LW0,1011010100110011,X,移位前,1,LW0,1101101010011001,1,右端1移入SM1.1和LW0左,2,LW0,1110110101001100,1,右端1移入SM1.1和LW0左,3,LW0,0111011010100110,0,右端0移入SM1.1和LW0左,RRW LW0,3,运行结果 如下,123,例题分析:编写八只灯HL1、HL2、HL3、HL4、HL5、HL6、HL7、HL8每0.5秒顺序点亮,连续循环20次的程序.,124,三、寄存器移位指令,移位寄存器指令将一个数值移入移位寄存器中。移位寄存器指令提供了一种排列和控制产品流或者数据的简单的方法。使用该指令时,每个扫描周期,整个移位寄存器移动一位。在产品控制流中,我们往往可以用基本位操作指令、顺控指令、和移位寄存器指令编写程序,有许多控制程序用移位指令编写会非常直观、简单易懂,学会利用移位指令编写程序非常重要。,125,1、功能,该指令在梯形图中有3个数据输入端:DATA为数值输入,将该位的值移入移位寄存器;S-BIT为移位寄存器的最低位端;N指定移位寄存的长度(164)。每次使能输入有效时。在每个扫描周期内,整个移位寄存器移动一位,所以要用边沿跳变指令来控制使能端的状态。,移位寄存器的长度最大长度位64位,可正也可负。移位寄存器存储单元的移出端与SM1.1(溢出)相连,移位时,移出位进入SM1.1,另一端自动补上DATA移入位的值.当
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服