PLC第5章 功能指令.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章 功能指令 条件跳转 子程序 中断 中断的种类(输入中断、定时器中断、高速计数中断) 输入中断程序例 主程序结束 (FNC06 FEND,FIRST END) 比较 区间比较 扩展功能 低 当M8024=ON时,数据传送方向反转 M8024 输入中断 I001 允许中断 主程序结束 X000有上升沿时执行中断子程充I001。Y0置1。 输出Y0~Y7立即刷新 中断子程序返回 程序结束 例1:输出立即刷新 I001 允许中断 主程序结束 X000有上升沿时执行中断子程充I001。X010~X017立即刷新。 由X010即时状态决定Y001状态 中断子程序返回 程序结束 例2:输入立即刷新 I201 用X002, “ON”,计数器C0的当前值加1。 用X002, “ON”, D0的值加1。 INC指令是每个运算周期的加法命令,但是,因为中断例行程序是用输入信号只能执行1次,不必设定为INCP (脉冲执行型)。 例3:输入ON的次数记数 例4:捕捉短时间脉冲 ①利用外部中断功能,在一定时间内保持短时间脉冲 ②利用脉冲捕捉功能,在一定时间内保持短时间的脉冲。 FX系列PLC本身有窄脉冲捕捉功能,当X000~X005接受到窄脉冲时,特殊辅助继电器M817△( △对就应X中的0~5)自动置1。 例5:短时间脉冲宽度的测定程序示例 例6:用1ms 定时器脉冲宽度的测定程序 例7:利用高速环形计数器的测定 ●X001断开时,将环形计数器的值传送到D0中测定结束。 ※这种特殊数据寄存器在M8099被驱动后,从下一个扫描周期开始,D8099以0.1ms时钟累计计算。当此值超过32, 767时,从0开始重新计算。 ※不受可编程控制器扫描周期的影响,每隔l0ms~99ms执行中断子程序。 ※在主程序的运算周期很长的情况下,需要高速处理特定的程序,或者在顺控扫描中,需要每隔一定时间执行程序时,非常适用。 例1:每隔10ms将数据加1,并同设定值进行比较。 例2:FNC71(HKY)16键输入指令的定时器中断处理 例1:高速计数器的中断处理示例 FEND指令表示主程序结束。执行到FEND指令时机器进行输出处理、输人处理、警戒时钟刷新,完成以后返回到第0步。 ◆子程序应写在FEND之后,即CALL, CALL(P)指令对应的标号应写在FEND指令之后。CALL, CALL(P)指令调用的子程序必须以SRET指令作结束。 ◆同理,中断服务子程序也要写在FEND之后。中断子程序必须以IRET指令作结束。 ◆若FEND指令在CALL或CALL(P)指令执行之后、SRET指令执行之前出现,则程序被认为是错误的。另一个类似的错误是使FEND指令处于FOR-NEXT循环之中。子程序及中断子程序必须写在FEND指令与END指令之间。 监视定时器 (FNC07 WDT,WATCHDOG TIMER) 功能与动作: 在顺控程序中,执行监视用定时器刷新的指令是WDT指令。当可编程控制器的运算周期(0~END及FEND指令执行时间)超过200ms时,可编程控制器CPU的出错指示灯点亮,同时停止工作,因此可在编程过程中插入使用该指令。 例如,将240ms的程序一分为二,在这中间编写WDT指 令,则前后两个部分都在200ms以下。 除上例所示外,WDT指令还可用于下列目的: (1)当与CJ指令对应的标号的步序低于CJ指令步序号时,在标号后编入WDT指令。 (2)可编入FOR-NEXT循环之中。 通过改写D8000(监视定时器时间)的内容,可改变监视定时器的检出时间。通过输入下述的程序,在这之后的可编程控制器的程序将采用新的监视定时器时间执行监视。 监视时间300ms 如果不编写FNC 07 WDT指令,则在END处理时,D8000的值才有效。 K100C20当前值时,M0为ON K100=C20当前值时,M1为ON K100C20当前值时,M2为ON 第五章 功能指令 概述 FNC00~FNC250 《数值处理》(整数略) 结果为0时置1 注意:尾数应以4位有效数字(不带小数)表示,例如2.34567×105应表示为2345×102,在上面的例子中即(D0)=2345,(D1)=2。 -1 在左图的示例中,如果X000 “ON”,则从1步跳转到36步(标记P8的后一步)。X000“OFF‘时,不进行跳转,从1步向4步移动,不执行跳转指令。 0 4 6 8 11 15 18 22 25 29 36 40 43 1、被跳过的程序即使输入有变化输出也不会被更新。 2、定时器、计数器如果被CJ指令跳过,将冻结它的值。 3、程序定时器T192~T199及高速计数器C235~C255例外,如果在驱动后跳转则继续工作,输出接点也动作。 在程序中

文档评论(0)

yuguanyin2015 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档