可编程序控制器原理及应用 教学课件 作者 吉顺平 第06章.ppt

可编程序控制器原理及应用 教学课件 作者 吉顺平 第06章.ppt

  1. 1、本文档共69页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
6.2.2程序控制指令(续) 跳转指令是程序控制常用指令。当逻辑条件满足时,使用该指令可以有选择地执行程序中的某些部分,完成某些特定的功能,这样可以使程序结构更加灵活,减少扫描时间,加快系统的响应速度。 跳转指令由两条指令组成:JMP和LBL,这两条指令必须配合使用,且必须使用在同一个程序块中,例如可以在主程序中使用,也可以在子程序中使用,或者在中断程序中使用,但不允许从主程序跳转到子程序或中断程序中,当然也不允许从一个子程序跳到另一个子程序中或者中断程序、主程序里。 程序控制指令如表6-1所示。 6.2.3 分支结构 分支结构又称为选择分支结构。如果在不同条件下,需要执行不同的程序段时,就需要用分支结构。例如,机电设备控制中,经常存在手动和自动两种模式,在两种模式下的控制程序是不同的,这时就可以用分支结构实现有选择的控制。 分支结构中是由判定条件来控制程序运行方向的,如图6-14所示。当条件成立时,执行程序段2;当条件不成立时,执行程序段1。分支结构一般通过跳转指令实现,在图6-15中,根据I0.0的状态决定执行程序段1还是程序段2。当I0.0有输入,则执行程序段2,否则执行程序段1。 6.2.3 分支结构 (续) 图6-14 分支结构 图6-15用JMP指令实现分支结构 6.2.4 循环结构 循环是计算机程序的基本结构。但在PLC中,需要注意PLC程序本身也是循环的。所谓循环结构是指PLC大循环中间的一段循环程序,在应用时特别需要注意。 循环结构如图6-16所示,循环变量是循环的控制变量,每次循环中循环变量的值都会改变。循环结构中有一个分支结构,用于判断是否结束循环。图6-17是用FOR指令实现循环结构的例子,当I2.0=1时,外循环执行100次;当I2.1=1时,外循环每执行1次,内循环执行2次。 西门子S7-300/400的基本指令中没有FOR指令,这时也可以用JMP等指令实现循环结构。在实际应用中,循环结构的应用是比较少的。 6.2.4 循环结构 (续) 图6-16循环结构 图6-17 用FOR指令实现循环结构 6.2.5 子程序结构 子程序的使用有两种情况。一是程序比较长,为了使其结构清楚,将其分成若干段,每一段写出一个子程序;第二种情况是某些程序段需要反复执行,这时将其写成子程序形式,可以减少代码长度,降低系统内存资源的占用,提高程序的效率和结构化程度。 子程序结构如图6-18所示。子程序分为一般子程序和中断子程序,两者从程序的角度看是一致的,只是调用的方法不同。一般子程序用程序调用,而中断子程序是由中断调用的,所以又称为中断服务子程序。 5.2.5 子程序结构(续) 图6-18 子程序结构 6.1 西门子PLC的程序结构 6.2 程序控制指令与结构化编程 6.3 S7-200的中断系统 6.4 S7-300/400的中断与组织块 6.5 S7-300/400的系统功能与系统功能块 本章的主要内容 6.3.1中断程序类型与优先级 S7-200支持以下中断程序类型: (1)通信端口中断:S7-200生成允许程序控制通信端口的事件。 (2)I/O中断:S7-200生成用于各种I/O状态不同变化的事件。这些事件允许程序对高速计数器、脉冲输出或输入的升高或降低状态作出应答。 (3)时基中断:S7-200生成允许程序按照具体间隔作出应答的事件。 6.3.1西门子S7-200的中断 (续) 5.3.1西门子S7-200的中断 (续) 6.3.1西门子S7-200的中断 (续) 6.3.2 中断指令与中断设置 中断指令如表6-3所示。要使用中断,首先必须启动中断,并且将中断事件和中断服务子程序相关联。可以将多个中断和一个中断服务子程序相关联。 6.3.2西门子S7-200的中断 (续) 中断的应用是很方便的。如图5-19所示,在完成启动中断(ENI指令)后,将中断事件(0号中断,I0.0上升沿)和中断响应子程序建立关联。当I0.0有上升沿,0号中断事件出现,系统会自动调用中断子程序INT_0。中断子程序在中断启动的条件下,在中断事件发生时被调用。注意,用户不能在程序中通过子程序调用指令调用中断子程序。 图6-19 启动中断和附加中断程序 6.3.2西门子S7-200的中断 (续) 中断的应用很多。例如,我们经常通过定时中断来读取模拟转换的数值,程序如图6-20所示。 图6-20 通过定时中断读取模拟转换的数值 6.3.3 共享数据 用户可以在主程序和一个或多个中断

文档评论(0)

带头大哥 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档