S7-200指令系统(2).ppt

上传人:豆**** 文档编号:87691251 上传时间:2023-04-16 格式:PPT 页数:74 大小:1.24MB
返回 下载 相关 举报
S7-200指令系统(2).ppt_第1页
第1页 / 共74页
S7-200指令系统(2).ppt_第2页
第2页 / 共74页
点击查看更多>>
资源描述

《S7-200指令系统(2).ppt》由会员分享,可在线阅读,更多相关《S7-200指令系统(2).ppt(74页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、S7-200指令系统(2)跳转指令、循环指令、顺控继电器指令、子程序指令、中断指令统称为程序控制类指令。程序控制类指令用于程序执行流程的控制。对一个扫描周期而言,跳转指令可以使程序出现跨越或跳跃以实现程序段的选择;子程序指令可调用某段子程序;循环指令可多次重复执行指定的程序段;中断指令则用于中断信号引起的子程序调用;顺控继电器指令及状态编程法可形成状态程序段中各状态的激活及隔离。程序控制类指令可以影响程序执行的流向及内容,对合理安排程序的结构,提高程序功能以及实现某些技巧性运算,具有重要的意义。2023/4/162二、跳转指令的应用实例二、跳转指令的应用实例2023/4/1662023/4/1

2、67第二节第二节 循环指令循环指令 一、循环指令及其功能 FOR-NEXT指令循环执行FOR(开始)指令和NEXT(结束)指令之间的循环体(程序)指令段一定次数。FOR和NEXT指令用来规定需重复一定次数的循环体程序。FOR指令参数INDX为当前循环数计数器,用来记录循环次数的当前值。参数INIT及FINAL用来规定循环次数的初值及终值。循环体程序每执行一次INDX值加1。当循环次数当前值大于终值时,循环结束。可以用改写FINAL参数值的方法在程序运行中控制循环体的实际循环次数。FORNEXT指令可以实现8层嵌套。FOR指令和NEXT指令必须成对使用,在嵌套程序中距离最近的FOR指令及NEXT

3、指令是一对。2023/4/168ENENFORFORENOENOINDXINDXFINALFINALINITINITFOR INDX,INIT,FINALFOR INDX,INIT,FINALNEXTNEXT有效操作数:有效操作数:2023/4/169二、循环指令的应用实例二、循环指令的应用实例1 12 22023/4/1610第三节第三节 顺控继电器指令顺控继电器指令一、顺控继电器指令及状态法编程 顺控制继电器也称为状态器,顺控继电器指令用于步进顺控程序的编制。状态法编程可以这样表述:对于较复杂的控制过程,可将它分割为一个个的小状态,分别对每个小的状态编程后,再依这些小状态的联系将小状态程序

4、连接起来以实现总的控制任务。顺控继电器指令就是针对小状态及小状态的联系安排的。2023/4/1611顺控继电器指令顺控继电器指令装载装载SCRSCR指令指令SCRSCR条件结束指令条件结束指令SCRSCR传输指令传输指令SCRSCR结束指令结束指令 装载SCR指令(LSCR)标志着每一个小状态(SCR)程序段的开始;SCR结束指令(SCRE)则标志着SCR段的结束;装载SCR指令有激活该SCR程序段的功能。SCR传输指令(SCRT)将程序控制权从一个激活的SCR段传递到另一个SCR段,可使当前激活的SCR程序段复位,使下一个将要执行的SCR程序段置位。SCR条件结束指令(CSCRE)可以使程序

5、退出一个激活的程序而不执行CSCRE与SCRE之间的指令。2023/4/1612 S7200系列可编程控制器设有顺控继电器存储器S。S存储器区可实行位、字节、字或双字寻址,S区存储器在作为位寻址时,称为状态器。对于顺控继电器能够使用LD、LDN、A、AN、O、ON、S、R等指令,顺控继电器S具有一般辅助继电器的功能。但是它最重要的功能是与顺控继电器指令配合,形成一些具有一定隔离功能的程序段,为编程带来方便。现以本书第七章台车控制例加以说明。2023/4/1613 在第七章的讨论中提到台车程序编制的难点在于限位开关SQ1在二次前进中、限位开关SQ2在二次后退过程中所起的作用不同,不能用I0.1及

6、10.2作为机内控制状态变化的关键点。于是改变编程思路,将整个控制过程分成准备、第一次前进、第一次后退、第二次前进、第二次后退等几个步骤,并用辅助继电器M10.1M10.5代表这些步骤,辅以置位、复位指令,使各步骤中的控制动作限定在M10.1M10.5分别顺序接通的控制过程中,从而解决了SQl在二次前进中、SQ2在二次后退过程中所起的作用不同的问题。2023/4/1614 其实第七章中台车程序所体现的即是状态编程思想,即将一个较复杂的控制过程分解为一系列状态,将状态之间的联系及每个状态的任务分为两条主线表达的编程思想。而状态器及顺控继电器指令正是实现状态编程的专用器件及指令。现将台车工作的步序

7、图用状态元件重新绘制,如图下所示,称作状态流程图(PLC输人输出口的安排见第七章表)。图中用方框表示台车工作的各个步序(状态),框中标有状态元件号,框和框间的连线表示状态间的联系,连线上的短横线表示状态间转移的条件。这样,就将台车工作的全过程清楚地表达出来了。2023/4/1615状态流程图状态流程图2023/4/1616 台车控制的梯形图可根据状态流程图绘出。由图96梯形图不难看出,梯形图程序有很强的段落特征,每一段都是从装载SCR指令(LSCR)开始,以SCR结束指令(SCRE)终结。每一个这样的程序段落表示状态流程图中的一个步序,而图中各状态间的联系靠SCR传输指令(SCRT)表达。不难

8、发现,状态程序段落具有三个基本要素。要素1.本状态做什么。如图96梯形图中SCR S0.1状态的工作任务为第一次前进。要素2满足什么条件发生状态转移。如图96梯形图中SCR S0.1状态转移的条件为输入口I0.0置1。要素3.状态转移的下一个状态是什么。如图96梯形图中SCR S0.1状态转移的下一个状态为S0.2。2023/4/1617台车控制程序:台车控制程序:2023/4/16182023/4/16192023/4/16202023/4/16212023/4/1622 要素1表述本状态要执行的任务,要素2及3则表示本状态及其他状态的联系。在具体的编程表达时,三要素的表达顺序为12+3,即

9、先表达本状态的任务,再表达转移的条件及方向。状态编程程序段中各状态程序的执行是以状态的激活为前提的。在一个程序流程顺序中,一次只能有一个状态被激活。激活某状态时,关闭同一分支上的前一状态(即关闭前状态中所有用“”指令驱动的输出元件,但用“S”指令驱动的元件除外)。这种“排他性”使得状态与状态之间,程序所涉及的各种器件之间的相互联锁及制约变得很容易实现,这对编程无疑是有利的。2023/4/1623二、状态流程图的类型及使用性二、状态流程图的类型及使用性(自学)(自学)2023/4/16242023/4/1625第四节第四节 子程序指令子程序指令 一、子程序指令 子程序调用指令将程序控制权交给子程

10、序SBR-N,该子程序执行完毕,程序控制权回到子程序调用指令的下一条指令。子程序指令含子程序调用指令和子程序返回指令。子程序条件返回指令(CRET)在条件满足时中止子程序执行。CALL SBR-NSBR-NENLADSTL子程序子程序调用指令调用指令LADSTL子程序子程序条件返回条件返回指令指令CRET2023/4/1626 子程序含中断子程序,是为一些特定的控制要求编制的相对独立的程序。为了和主程序区别,S7200规定子程序与中断子程序分区排列在主程序的后边,且当子程序或中断子程序数量多于1时,分序列编号加以区别。如子程序中没有安排CRET指令,子程序将在子程序运行完毕后返回。2023/4

11、/1627二、子程序的执行过程及子程序的嵌套 当有一个子程序被调用时,系统会保存当前的逻辑堆栈,置栈顶值为1,堆栈的其他值为零,把控制权交给被调用的子程序。当子程序完成后,恢复逻辑堆栈,把控制权交还给调用程序。S7-200具有子程序嵌套调用功能,嵌套可以达到8层。但在中断子程序中仅能有一次子程序调用。子程序中可以出现调用自身的递归调用,但使用时须慎重。有效操作数:有效操作数:2023/4/1628子程序举例:子程序举例:2023/4/1629子程序的嵌套举例:子程序的嵌套举例:2023/4/1630第五节第五节 中断指令中断指令一、中断与中断源 中断是计算机特有的工作方式,指主程序执行过程中,

12、中断主程序的执行去执行中断子程序。和前节谈到的子程序一样,中断子程序也是为某些特定的控制功能而设定的。和普通子程序不同的是,中断子程序是为随机发生且必须立即响应的事件安排的,其响应时间应小于机器的扫描周期。能引起中断的信号叫中断源,S7200系列CPU支持34种中断源,如表95所示。从表中可以看出,不同的CPU对中断事件的支持是不同的(表中Y表示该型号CPU具有该种中断功能)。2023/4/1631表表95 S7200系列系列CPU支持的中断(事件)源:支持的中断(事件)源:2023/4/16322023/4/16331通讯口中断 通讯口中断含端口0及端口1接收及发送相关中断。PLC的串行通讯

13、口可由梯形图或指令表程序来控制,这种通讯口的操作模式称为自由端口模式。在自由端口模式下,可由用户程序设置波特率、字符的位数、奇偶校验及通信协议。接收及发送中断可以简化程序对中断的控制。中断事件可分为以下三大类:2023/4/16342I/O中断 I/O中断包括上升沿中断及下降沿中断、高速计数器中断和脉冲串输出中断。S7200CPU可用输入I0.0I0.3的上升沿或下降沿产生中断,并可用这些上升沿或下降沿信号来表示某些需要及时响应的故障状态。高速计数器中断可以是计数器等于预置值时的响应,也可以是计数方向改变时的响应,还可以是外部复位的响应。这些高速计数器事件可以实时地得到速成响应,而与PLC的扫

14、描周期无关。脉冲串输出中断提供了完成指定脉冲数输出的即时响应,其典型应用是步进电机的控制。2023/4/16353时基中断 时间中断包括定时中断及定时器T32/96中断,S7200 CPU可支持2个定时中断。定时中断按周期时间反复执行。周期时间范围为5ms255ms,增量为lms。定时中断0的周期时间应写入SMB34,定时中断1的周期时间应写入SMB35。每当定时器溢出时,定时中断事件把控制权交给相应的中断程序,通常可用定时中断以固定的时间间隔去控制模拟量输入的采样或者去执行一个PID回路。定时器T3296中断允许及时地响应一个给定的时间间隔。这些中断只支持1ms分辨率的延时接通定时器(TON

15、)和延时断开定时器(TOF)T32和T96。T32和T96的工作方式与普通定时器相同。中断允许时且定时器的当前值等于预置值时,执行被连接的中断程序。2023/4/1636二、中断优先级及中断队列 由于中断控制是脱离于程序的扫描执行机制的,如有多个突发事件出现时处理也必须有个秩序,这就是中断优先级。S7200 PLC中断优先组别从大的方面按下列顺序分级:通信(最高级);IO(含HSC和脉冲列输出)(中极);定时(最低级)。在每一级中又可分别分级。优先级还有以下约定。2023/4/1637 在指定的优先级内按先来先服务的原则处理中断。在任何时间点上,只有一个用户中断程序在执行。一旦某中断程序开始执

16、行,就要一直执行到结束,而不会被别的中断程序,甚至是更高优先级的程序所打断。当一个中断处理时出现的新的中断需排队等待,这就是中断队列。如中断队列表给出了各种CPU所能容纳的各种中断队列的数量。在存在多种中断队列时,CPU优先响应优先级别高的中断。有时,可能有多于队列所能保存数目的中断出现,这时将出现中断的溢出,由系统维护的队列溢出存储器位将置1。这些存储器位在队列变空或控制返回到主程序时会复位。2023/4/1638中断事件的优先级顺序:中断事件的优先级顺序:2023/4/16392023/4/16402023/4/1641三、中断指令及中断程序三、中断指令及中断程序 中断是计算机为应对紧急事

17、件而设立的一种运行机制,但是并不一定在计算机的任何运行时间点上都可以允许中断的发生。对于PLC应用程序的运行来说,任何时候都响应内部及外部的所有中断称为全局开中断,任何时候都不响应各种中断称为全局禁止中断。当PLC进入RUN状态时,自动进入全局禁止中断状态,如需在适当的时候开放全局中断时,可在用户程序中使用全局中断允许指令(ENI),反之,如需全局禁止中断时,可在应用程序中的适当位置使用全局中断禁止指令(DISI)。执行DISI指令不会影响当前正在执行中的中断程序的执行,只有当该中断程序执行完毕后,DISI功能才有效。2023/4/1642 相对全局开放中断的条件下,单个中断可独立地开放与禁止

18、,所用的指令分别为中断连指令(ATCH)及中断分离指令(DTCH)。ATCH指令更重要的职能是将中断事件与该事件发生时需执行的中段程序段连接起来。在ATCH指令参数中,设有中断事件号及所对应的中段程序号,而所有的中断程序都依次排列在主程序之后,并用中断标号指令(INT)标示号码。在ATCH指令指定相应中断子程序时,自动允许中断。与此相反,中断分离指令DTCH分离中断事件与中断子程序的联系,自动关闭中断。2023/4/1643ENIENIINTINTLADLADSTLSTL中断中断允许指令允许指令LADLADSTLSTLDISIDISI中断中断禁止指令禁止指令中断条件中断条件返回指令返回指令LA

19、DLADSTLSTLCRETICRETI中断无条件中断无条件返回指令返回指令LADLADSTLSTLRETIRETI中断标号中断标号LADLADSTLSTLINT NINT NN N2023/4/1644ENENATCHATCHENOENOINTINTEVNTEVNTATCH INT,EVNTATCH INT,EVNT中断连接指令中断连接指令DTCH EVNTDTCH EVNT中断分离指令中断分离指令ENENDTCHDTCHENOENOEVNTEVNT操作数:操作数:2023/4/1645l视需要在主程序的全局或某些程序段设置中断允许及中断禁止指令。l为程序中所有可能出现的中断编制中断子程序并

20、分别编号,并依次在主程序结束指令后中断子程序区放置。对于每个中断子程序,标号指令是开始,中断无条件返回指令是结尾。l在主程序中设置中断连接指令,将各个中断事件与中断子程序联系起来。多个中断事件可建立同一个中断程序,但一个中断事件不可以同时建立多个中断程序。ATCH激活中断事件对应的中断子程序段。当需中止该中断执行时在主程序中安排中断分离指令(DTCH),截断中断事件和中断程序之间的联系,使中断回到不激活或无效状态。l在中断子程序中不能使用DISI、ENI、HDEF、FORNEXT和END等指令。中断程序具体要求如下:2023/4/1646 中断是随机产生的,即在主程序执行的过程中随时都可能产生

21、中断,为了减少主程序中断的不良影响,被中断的时间越短越好,这就要求中断子程序尽可能简洁。在CPU接到中断申请且准备响应时,系统先将反映指令执行情况及累加器状态的逻辑堆栈、累加器、寄存器及特殊标志位保存,然后再去执行中断程序。对于通讯及外部中断,每一个中断申请一般只执行中断程序一次。对于时基或定时器中断,每隔一定的时间执行中断程序一次。当中断程序执行完毕时,恢复中断执行前保存的数据,程序返回主程序原断点执行。四、中断程序的执行及程序数据共享(定时中断及外端口中断)2023/4/1647 主程序与一个或数个中断程序间可实现数据的共享。例如,主程序中的一部分可提供一些数据供中断程序使用,反之亦然。当

22、编制这种共享数据的程序时,必须考虑到中断事件的“异步性质”,即中断事件可以在主程序执行的任何一点产生,共享数据的一致性可能因为主程序中指令执行时被中断事件中断而破坏。为了避免这种情况发生,编程时可采取两类措施:一是限制共享存储单元的访问方式;二是保证使用共享存储器单元的指令序列不会被中断。2023/4/1648l指令表程序中共享单个变量。如共享数据是单个的字节、字、双字变量,程序用STL编写,通过把共享数据操作得到的中间值只存储到非共享的存储器单元或累加器中,可保证正确的共享访问。l梯形图程序中共享单个变量。如共享数据是单个的字节、字、双字变量,程序用LAD编写,若只用MOVE指令访问共享存储

23、器单元,可保证正确的共享访问。l指令表或梯形图程序中共享多个变量。用中断禁止指令(DISI)及中断允许指令(ENI)控制中断的执行。在用户程序开始访问共享数据存储器之前关中断,访问结束后再开中断,但这种方法将延迟响应中断。具体的编程技巧:2023/4/1649下降沿中断服务程序举例:2023/4/1650用定时中断读取模拟量数值举例:2023/4/1651第六节第六节 程序控制指令与程序结构程序控制指令与程序结构 程序是由一条条的指令组成的,一些指令的集合总是完成一定的功能。在控制要求复杂,程序也变得庞大时,这些表达一定功能的指令块又需合理地组织起来,这就是程序的结构。2023/4/1652方

24、便于程序的编写。编程序和写文章类似,合适的文章结构有利于作者思想的表达,好的程序结构也有利于体现控制要求,能给程序设计带来方便。有利于读者阅读程序。好的程序结构体现了程序编者清晰的思路,读者在阅读时容易理解。读程序的人往往是做维修或调试人,这对程序的正常运行有利。好的程序结构有利于程序的运行。可以减少程序的冲突,使程序的可靠性增加。好的程序结构有利于减少程序的实际运行时间,使PLC的运行更加有效。程序结构的意义:2023/4/16531简单结构 这是小程序的常用结构,也叫作线性结构。指令平铺直述地写下来,执行时也是平铺直述地运行下去。程序中也会分一些段,如交通灯程序,放在程序最前边的是灯的总开

25、关程序段,中间是时间点形成程序段,最后是灯输出控制程序段。简单结构的特点是每个扫描周期中每一条指令都要被扫描。常见的程序结构类型:2023/4/16542有跳越及循环的简单结构 由控制要求出发,程序需要有选择地执行时要用到跳转指令。前边已有这样的例子,如自动、手动程序段的选择,初始化程序段和工作程序段的选择。这时在某个扫描周期中就不一定全部指令都被扫描,而是有选择的,被跳过的指令不被扫描。循环可以看作是相反方向的选择,当多次执行某段程序时,其他程序就相当于被跳过。2023/4/16553组织模块式结构 虽然有跨越及反复,但有跳越及循环的简单程序从程序结构来说仍旧是纵向结构,而组织模块式结构的程

26、序则存在并列结构。组织模块式程序可分为组织块、功能块、数据块。组织块专门解决程序流程问题,常作为主程序;功能块则独立地解决局部的、单一的功能,相当于一个个的子程序;数据块则是程序所需的各种数据的集合。在这里,多个功能块和多个数据块相对组织块来说是并列的程序块。前边讨论过的子程序指令及中断程序指令常用来编制组织模块式结构的程序。2023/4/1656 组织模块式程序结构为编程提供了清晰的思路。各程序块的功能不同,编程时就可以集中精力解决局部问题。组织块主要解决程序的入口控制,子程序完成单一的功能,程序的编制无疑得到了简化。当然,作为组织块中的主程序和作为功能块的子程序,也还是简单结构的程序。不过

27、并不是简单结构的程序就可以简单地堆积而不要考虑指令排列的次序,PLC串行工作方式使得程序的执行顺序和执行结果有十分密切的联系,这在任何时候的编程中都是重要的。2023/4/1657 和先进编程思想相关的另一种程序结构是结构化编程结构,它特别适合具有许多同类控制对象的庞大控制系统,这些同类控制对象具有相同的控制方式及不同的控制参数。编程时先针对某种控制对象编出通用的控制方式程序,在程序的不同程序段中调用这些控制方式程序时再赋予所需的参数值。结构化编程有利于多人协作的程序组织,有利于程序的调试。2023/4/1658 用PLC实现对节日彩灯的控制,结构简单,变幻形式多样、价格低。彩灯形式及变幻尽管

28、花样繁多,但其负载不外乎三种:长通类负载、变幻类负载及流水类负载。长通类负载是指彩灯中用以照明或起衬托底色作用之类的负载,其特点是只要彩灯投入工作,则这类负载长期接通。变幻类负载则指某些在整个工作过程中定时进行花样变换的负裁,如字形的变换,色彩的变幻或位置的变幻之类,其特点是定时通断,但频率不高。流水、闪烁类负载则指变幻速度快,犹如行云流水、星光闪烁、万马奔腾,其特点虽也是定时通断,但频率较高(通常间隔几十毫秒至几百毫秒)。举例:举例:1、节日彩灯控制、节日彩灯控制2023/4/1659 对于长通类负载,其控制十分简单,只需一次接通或断开。而对变幻类及流水、闪烁类负载的控制,则是按预定节拍产生

29、一个环形分配器(一般可用SHRB、ROL_W产生),有了环形分配器,彩灯就能得到预设频率和预设花样的闪亮信号。彩灯就可实现花样的变幻。通常先根据花样变幻的规律例出动作时序表,再按预设彩灯变换花样在表中“打点”,然后再依据动作时序表输出即可。2023/4/1660本例所选彩灯变幻花样为跳闪方式:1隔1跳2,回跳1,隔1跳2,回跳1。其动作时序表如下表所示。由表可见,本例的节拍是16位,输出是8位,环形分配器由ROL-W产生彩灯闪烁频率固定为1Hz,如果需要现场改变频率,则T33的PT端需采用VWZ写入。2023/4/1661节日彩灯控制的梯形图如下图所示:2023/4/16622023/4/16

30、63(一)交通信号灯设置示意图1(二)控制要求1、接通起动按钮后,信号灯开始工作,南北向红灯、东西向绿灯同时亮。2、东西向绿灯亮25s后,闪烁3次(1s次),接着东西向黄灯亮,2s后东西向红灯亮,30s后东西向绿灯又亮 如此不断循环,直至停止工作。3、南北向红灯亮30s后,南北向绿灯亮,25s后南北向绿灯闪烁3次(1s次),接着南北向黄灯亮,2s后南北向红灯又亮 如此不断循环,直至停止工作。举例:举例:2 2、十字路口交通信号灯的、十字路口交通信号灯的PLCPLC控制控制2023/4/1664(三)交通信号灯时序图2(四)I/O分配表及I/O接线图3 I/O分配表如表1所示。将南北红灯HL1、

31、HL2;南北绿灯HL3、HL4;南北黄灯HL5、HL6;东西红灯HL7、HL8;东西绿灯HL9、HLl0;东西黄灯HL11、HLl2均并联后共用一个输出点,这样可选用CPU222或CPU224机型即可。本例选用CPU224,IO接线图如图3所示。使用时,应注意PLC输出端及公共端输出电流的允许值。2023/4/1665图图1交通信号灯设置示意图交通信号灯设置示意图图图2交通信号灯时序图交通信号灯时序图2023/4/1666图图3交通信号灯时序图交通信号灯时序图表表1 I/O1 I/O分配表分配表2023/4/1667根据交通信号灯时序图设计顺序功能图4。该顺序功能图是并列序列结构,且带有2个子步,用于表示步3和步7的具体细节。依据顺序功能图设计梯形图5。2023/4/1668图图4:交通信号灯顺序功能图及子步交通信号灯顺序功能图及子步2023/4/1669图图5交通信号灯梯形图交通信号灯梯形图2023/4/16702023/4/16712023/4/16722023/4/1673此此课件下件下载可自行可自行编辑修改,修改,仅供参考!供参考!感感谢您的支持,我您的支持,我们努力做得更好!努力做得更好!谢谢!

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 考试试题 > 语文专题

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com