收藏 分享(赏)

第10章第3节S7-200 PLC的指令系统3 建筑电气控制与PLC教学课件.ppt

上传人:dcs1276 文档编号:5356497 上传时间:2019-02-23 格式:PPT 页数:57 大小:5.20MB
下载 相关 举报
第10章第3节S7-200 PLC的指令系统3 建筑电气控制与PLC教学课件.ppt_第1页
第1页 / 共57页
第10章第3节S7-200 PLC的指令系统3 建筑电气控制与PLC教学课件.ppt_第2页
第2页 / 共57页
第10章第3节S7-200 PLC的指令系统3 建筑电气控制与PLC教学课件.ppt_第3页
第3页 / 共57页
第10章第3节S7-200 PLC的指令系统3 建筑电气控制与PLC教学课件.ppt_第4页
第4页 / 共57页
第10章第3节S7-200 PLC的指令系统3 建筑电气控制与PLC教学课件.ppt_第5页
第5页 / 共57页
点击查看更多>>
资源描述

1、三、S7-200 PLC的功能指令,(一)数学运算指令(二)逻辑运算指令(三)其他数据处理指令(四)转换指令(五)表功能指令(六)程序控制指令(七)特殊指令,(五)表功能指令,表中数据的存储格式,TL值由字传送指令MOVW赋值,(五) 表功能指令,1. 表存数指令(填表指令) ATT (Add to table),指令格式:ATT DATA, TABLE,功能:将DATA(字型数据)填入到TABLE表格。TABLE给出表格首地址,新存的数据添加在表格最后一个数据的后面,每存入一个数据,实际填表数EC自动加1。,LD I0.0 ATT VW100, VW200,举例:,VW200已赋值0005,

2、2、表查找指令:FND,通过表查找指令可以从字型数表中找出符合条件的数据所在的表中数据编号。,指令格式:FND= TBL, PTN, INDXFND TBL, PTN, INDXFND TBL, PTN, INDX,梯形图有4个数据输入端: TBL:表格的首地址; PTN:用来描述查表条件的进行比较的数据; CMD:比较运算符“?”的编码,它是一个14的数值,分别 代表、运算符; INDX:指令执行前为查找的开始地址编号。指令执行后用来存放符合查找条件的数据地址编号。,说明:表查找指令执行之前,应先对INDX的内容清0(从表首开始查找),当使能输入有效时,从INDX开始搜索表TBL,寻找符合条

3、件的数据,如果找到一个符合条件的数据,则将该数据的表中地址装入INDX中。如果没有发现符合条件的数据,则INDX的值等于EC(最大填表数)。表查找指令执行完成,找到一个符合条件的数据,如果想继续向下查找,必须先对INDX加1,以重新激活表查找指令。,从表中移出一个字型数据可有两种方式:(1)先进先出式(2)后进先出式一个数据从表中取出之后,表的实际表数EC值减1。,3.表取数指令,(1)先进先出指令:FIFO,指令格式:FIFO TABLE, DATA 当使能输入有效时,从TBL指明的表中移出第一个字型数据并将其输出到DATA所指定的字单元。FIFO表取数时,移出的数据总是最先进入表中的数据。

4、每次从表中移出一个数据,剩余数据依次上移一个字单元位置,同时实际填表数EC会自动减1。,(2)后进先出指令:LIFO,当使能输入有效时,从TBL指明的表中移出最后一个字型数据并将其输出到DATA所指定的字单元。LIFO表取数时,移出的数据是最后进入表中的数据。每次从表中取出一个数据,剩余数据位置保持不变,实际填表数EC会自动减1。,指令格式:LIFO TABLE, DATA,(六)程序控制指令,1. 结束指令 结束指令在主程序中使用,用来结束主程序。 END:有条件结束指令。不能直接连接在左侧母线上。MEND:无条件结束指令。直接连接在左侧母线上。指令格式:ENDMEND,2. 暂停指令,ST

5、OP,暂停指令。通过暂停指令可将S7-200 CPU从RUN(运行)模式转换为STOP(暂停)模式,中止主程序执行。指令格式:STOP,3. 监视定时器复位指令WDR (看门狗复位),系统监视定时器(WDT): 为了避免出现程序死循环而引起的扫描周期过长,PLC内部设置了系统监视定时器用于监视扫描周期是否超时。WDT的设定值(100300ms)一般大于程序的扫描周期: (1)在正常的每个扫描周期中,PLC都要对WDT进行1次复位操作,使得WDT不动作。(2)系统故障情况下,扫描时间大于WDT设定值,该定时器不能及时复位,则报警并停止CPU运行。,应用时,可将WDR指令插入到程序的适当位置,使监

6、控定时器复位。指令格式:WDR,WDR,监视定时器复位指令。指令使系统监视程序定时器(WDT)复位,扩展扫描允许使用的时间,而不会出现监视程序错误。,程序实例:,例:暂停指令、看门狗复位指令和有条件结束指令的编程实例。,( a ) 梯形图,网络 6 LD SM5.0 /当发现 I/O 错误时 STOP /强迫 CPU 转到 STOP 方式网络 18 LD M5.6 /当 M5.6 = 1 (接通)时 WDR /重新触发看门狗定时器,允许增加本次扫描时间 网络 25 LD M1.5 /当M1.5 = 1(接通)时 END /结束主程序,( b ) 语句表,当I/O有错误时SM5.0置1,JMP,

7、跳转指令。使程序跳转到标号(n)处执行。LBL,标号指令。标记指令跳转的目的地的位置(n)。操作数n为0255。 指令格式:JMP nLBL n,4.跳转与标号指令,注意:跳转指令和标号指令必须配合使用,而且只能使用在同一程序块中。不能在不同的程序块间互相跳转。,例:跳转指令和标号指令的编程实例。,( a ) 梯形图,网络10 LDN I0.2 /如果I0.2闭合 JMP 7 /则跳转到 LBL 7 网络17 LBL 7,( b ) 语句表,5. 循环指令,指令格式:FOR INDX, INIT, FINALNEXTINDX:当前循环计数INIT:初值FINAL:终值,循环指令有两条:FOR和

8、NEXT。FOR,循环开始指令。用来标记循环体的开始。NEXT,循环结束指令。用来标记循环体的结束。,指令格式:FOR INDX, INIT, FINALNEXT,执行过程:当前计数值开始为初值执行一次循环体当前计数值增1将其结果同终值进行比较,如果大于终值,则终止循环,否则再次执行循环体。比如INIT=1,FINAL=10,则执行10次循环体。,循环指令使用说明:, FOR、NEXT指令必须成对使用; FOR和NEXT可以循环嵌套,嵌套最多为8层,但各个嵌套之间不可有交叉现象;,建立子程序: 建立子程序是通过编程软件来完成的。每个子程序都有一个子程序名。,6.子程序调用与返回指令,CALL,

9、子程序调用指令。如果在主程序中调用子程序时,主程序把程序控制权交给子程序。指令格式:CALL SBR_N,(1)子程序调用,RET,子程序无条件返回指令。在子程序结束段结束子程序,返回主程序。每个子程序都要以此指令结束。 CRET,子程序条件返回指令。返回主程序:指向子程序调用的下一条指令。指令格式: CRET (条件返回)RET (无条件返回),(2)子程序返回,子程序调用使用说明:,子程序结束要加上无条件返回指令RET。CRET指令只能用于子程序中;如果在子程序的内部又对另一个程序执行调用指令,则这种调用称为子程序的嵌套。子程序嵌套的深度最多为8级;,子程序的参数指在子程序与调用程序之间传

10、送的参数(变量和数据),子程序最多可以传递16个参数。,(3)带参数的子程序调用,子程序参数类型:,.传入子程序参数IN。.传入/传出子程序参数IN/OUT。调用子程序时,将指定参数位置的值传到子程序,子程序返回时,从子程序得到的结果被返回到指定参数的地址。常数和地址值不允许作为输入/输出参数;.传出子程序参数OUT。将从子程序来的结果返回到指定参数的位置。.暂时变量。只能在子程序内部暂时存储数据,不能用来传递参数。,建立带参数子程序的局部变量表局部变量表隐在编程软件程序显示区上部(可隐藏)。可在局部变量表输入变量名称、变量类型、数据类型等参数。子程序参数的数据类型布尔(位)、字节、字、双字、

11、实数型。,指令格式:CALL 子程序名, 参数1, 参数2, ,参数n参数按顺序排列: 输入参数-输入输出参数-输出参数,带参数子程序调用指令:,举例:,主程序:LD I0.0 = Q0.0 CALL SBR_0,45.0,VD10,子程序:LD SM0.0 MOVR 3.14159,AC0 /R 180.0,AC0 *R #IN1,AC0 COS AC0,#OUT1,局部变量表:,7. 与ENO指令,ENO是LAD中指令盒的布尔能流输出端。如果指令盒的能流输入有效,则执行没有错误,ENO就置位,并将能流向下传递。 AENO ,与ENO指令。梯形图编程指令盒后串联另一指令盒或线圈时,语句表语言

12、用此指令来描述。 指令格式:AENO,程序实例:,LD I0.0 /使能输入端 +I VW100, VW200 /整数加法,VW100+VW200VW200 AENO /与ENO指令,整数加法指令执行是否出错? = Q0.1 /如果+I指令执行正确,则输出Q0.1置1,(七) 特殊指令,A、 中断指令 1、中断:当控制系统执行正常程序时,系统中出现了某些急需处理的异常情况或特殊请求,这时系统暂时中断当前程序,转去对随机发生的紧迫事件进行处理(执行中断服务程序),当该事件处理完毕后,系统自动回到原来被中断的程序继续执行。,中断源:中断事件向PLC发出中断请求的来源。 S7-200 CPU最多可以

13、有34个中断源,每个中断源都分配一个编号用于识别,称为中断事件号。这些中断源大致分为三大类:通信中断、I/O中断和定时中断。I/O中断的上升下降边缘中断:S7-200可以在输入的上升和或下降边缘生成中断(I0.0、I0.1、I0.2或者I0.3)。这些上升下降边缘事件可以用来表示当事件发生时必须接收立即注意的条件。,2、中断源,3.中断优先级在PLC应用系统中通常有多个中断源。当多个中断源同时向CPU申请中断时,要求CPU能将全部中断源按中断性质和处理的轻重缓急来进行排队,并给予优先权。给中断源指定处理的次序就是给中断源确定中断优先级。 4.中断控制经过中断判优后,将优先级最高的中断请求送给C

14、PU,CPU响应中断后自动保存逻辑堆栈、累加器和某些特殊标志寄存器位,即保护现场。中断处理完成后,又自动恢复这些单元保存起来的数据,即恢复现场。 5.中断程序中断程序亦称中断服务程序,是用户为处理中断事件而事先编制的程序。,6.中断指令,ENI,全局中断允许指令。全局性的允许所有被连接的中断事件。(开中断)DISI,全局中断禁止指令。全局性的禁止处理所有的中断事件。执行DISI指令后,出现的中断事件就进入中断队列排队等候,直到ENI指令重新允许中断。(关中断)CPU进入RUN运行模式时自动禁止所有中断。在RUN运行模式中执行ENI指令后,允许所有中断。,(1)全局中断允许/禁止指令,(2)中断

15、连接/分离指令,ATCH,中断连接指令:用来建立某个中断事件(EVNT)和某个中断程序(INT)之间的联系,并允许这个中断事件。指令格式:ATCH EVENT (事件号)在调用一个中断程序前,必须用中断连接指令,建立某中断事件与中断程序的连接。当把某个中断事件和中断程序建立连接后,该中断事件发生时会自动开中断。注意:多个中断事件可调用同一个中断程序,但一个中断事件不能同时与多个中断程序建立连接。否则,在中断允许且某个中断事件发生时,系统默认执行与该事件连接的最后一个中断程序。,DTCH,中断分离指令:用来解除某个中断事件(EVNT)和某个中断程序(INT)之间的联系。并禁止该中断事件。DTCH

16、指令使中断回到不激活或无效状态。指令格式:DTCH EVENT,(3)中断服务程序标号/返回指令,中断服务程序开始:中断服务程序由标号开始。 INT n,中断服务程序标号指令。中断服务程序标号INT标示n号中断服务程序的开始(入口)。n的范围是0127(取决于CPU的型号)。中断服务程序结束:RETI,中断服务程序无条件返回指令。RETI是中断服务程序必备的结束指令。中断服务程序以无条件返回指令结束。 CRETI,中断服务程序条件返回指令。在中断服务程序中, CRETI根据前面逻辑条件使用条件返回指令,返回主程序。,说明:中断服务程序中禁止使用以下指令:DISI、ENI、CALL、HDEF、F

17、OR/NEXT、LSCR、SCRE、SCRT、END。中断前后,系统保存和恢复逻辑堆栈、累加寄存器、特殊存储器标志位(SM)。从而避免了中断服务返回后对主程序执行现场所造成的破坏。,LD SM0.1 /首次扫描时SM0.1位打 /开,用于调用初始化/子例行程序 CALL SBR_0 /调用子程序SBR_0LD SM0.0 /当系统处于RUN/模式时, SM0.0始终/打开(即SM0.01) MOVB 100, SMB34 /100ms放入特/殊内存字节SMB34/(SMB34和SMB35控/制中断0和中断/1的时间间隔) ATCH INT_0, 10 /调用中断程序ENI /全局性启用中断 L

18、D SM0.0 /RUN模式下,SM0.01 MOVW AIW2, VW100 /模拟量输入/映像寄存器AIW2/的值装入VW100,定时中断采集模拟量程序例,B. PID回路指令,PID控制:比例-积分-微分控制,广泛应用于闭环控制系统。PID回路指令:指令根据表格(TBL)中的输入和配置信息对引用LOOP执行PID循环计算。指令格式:PID TABLE, LOOPTBL是回路表起始地址,只能使用字节VB区域。LOOP是回路号,为字节常量07。循环表存储九个参数,用于控制和监控循环运算,包括程序变量、设置点、输出、增益、样本时间、整数时间(重设)、导出时间(速率)及整数之和(偏差)的当前值及

19、先前值。,C. 高速计数器指令,普通计数器受CPU扫描速度的影响,对高速脉冲信号的计数会发生脉冲丢失。高速计数器(High Speed Counter)是脱离主机的扫描周期独立计数的,它可以对脉宽小于主机扫描周期的高速脉冲准确计数。,高速计数器编号, 05,工作模式 , 011,每个高速计数器都有地址编号。 每种高速计数器都有多种功能不同的工作模式。高速计数器的工作模式与中断事件密切相关。使用高速计数器,首先要定义高速计数器的工作模式。,HDEF,高速计数器定义指令:使能输入有效时,为指定的高速计数器分配一种工作模式。指令格式:HDEF HSC, MODE,HSC,高速计数器指令:使能输入有效

20、时,根据高速计数器特殊存储器位的状态,并按照HDEF指令指定的模式,设置高速计数器并控制其工作。指令格式:HSC, N (N为高速计数器编号 ),D.高速脉冲输出指令,高速脉冲输出:在PLC的某些输出端产生高速脉冲。形式:有两种形式,PTO(高速脉冲串输出)和PWM(宽度可调脉冲输出)。PTO:主要是用来输出指定数量的方波(占空比50),用户可以控制方波的周期和脉冲数;PWM:主要是用来输出占空比可调的高速脉冲串,用户可以控制脉冲的周期和脉冲宽度。,每个CPU有两个PTO/PWM发生器产生高速脉冲串和脉冲宽度可调的波形,一个发生器分配在数字输出端Q0.0,另一个分配在Q0.1。指定特殊寄存器(

21、SM)位置为每个生成器存储下列数据:控制字节(8位数值)、脉冲计数值、周期时间、脉冲宽度。,PLS,脉冲输出指令(脉冲输出指令执行):当使能端输入有效时,检测用户程序设置的特殊功能寄存器位,激活由控制位定义的脉冲操作。指令格式:PLS Q (Q为 0或1 ),(1)读实时时钟指令:TODR,当使能端输入有效时,指令从实时时钟读取当前时间和日期,并装入以T为起始字节地址的8个字节缓冲区,依次存放年、月、日、时、分、秒、零和星期。指令格式:TODR T,E.时钟指令,(2)设定实时时钟指令:TODW,当使能端输入有效时,指令把含有时间和日期的8个字节缓冲区(起始地址是T)的内容装入时钟。设定的数值范围同TODR指令。 指令格式:TODW T,注意:不要同时在主程序和中断程序中使用TODR/TODW指令。否则会产生致命错误。,试设计S7-200PLC控制系统,要求:第一台电动机起动10s后,第二台电动机自动起动,运行5s后,第一台电动机停止,同时第三台电动机自动起动,运行15s后,全部电动机停止。,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑环境 > 建筑资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报