




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PLCPLC 教程理论篇之教程理论篇之流程控制指令与模块流程控制指令与模块 化程序组织一化程序组织一 1 程序流程控制指令 PLC 执行指令 一般是从零地址开始 依次执行 直到最后 但也可用程序流程控制 指令予以改变 此类指令除了步进指令外 还有 跳转 循环 调用子程序及中断等 1 跳转指令 OMRON 机用的为 JMP 及 JME 这两条配对使用 JMP 指令执行前 要建立逻辑条件 JME 不要条件 只是表示跳转结束 要跳转的 程序列于这两个指令之间 当执行 JMP 时 若其逻辑条件为 ON 则不跳转 注意 它与计算机汇编语言跳转 含义相反 照样执行 JMP 与 JME 间的指令 如同 JMP JME 不存在一样 若为 OFF 则 JMP 与 JME 间的程序不执行 有关输出保持不变 JMP JME 可嵌套使用 但 有时其层次要受限制的 JMP JME 编号使用时 配对的两个 编号要一致 三菱与西门子 PLC 的跳转类似计算机汇编语言的跳转 若其逻辑条件为 ON 则跳 转到指定的标号的语句去执行 这种跳转情况稍复杂一些 使用时要小心 弄不好 易出 现程序死循环 那是绝对不允许的 图 10 1 示的为跳转指令使用示意 a OMRON PLC b 西门子 PLC c 三菱 PLC 图 10 1 PLC 的跳转指令使用示意 图 a 为 OMRON 的跳转 0 00 OFF 时 JMP 到 JME 之间的指令跳过 不执行 反之 执行 图 b 为西门子的跳转 V500 1 ON 时 跳转到 LBL2 处 被跳过的指令 不执行 反之不跳 JMP 后的指令依次执行 图 c 为三菱的跳转 X000 ON 时 跳转 到标号 P1 处 被跳过的指令不执行 反之不跳 CJP 后的指令依次执行 不同厂家 PLC 跳转指令的差别 正如其它指令的差别一样 都只是大同小异 目的 都是跳转 只是表达的方法 各有其不同而已 当程序需要分支执行时 使用到跳转 不仅可实现程序设计要求 而且还可减少程序 扫描时间 提高程序的运行效率 与跳转类似的还有互锁 主控指令 OMRON 称互锁 IL 互锁清除 ILC 指令 这两 个指令在形式上 与跳转指令类似 也是要配对使用 但功能不同 它不改变程序流程 只是像电路的 总开关 一样 影响 IL 与 ILC 间的程序执行 见图 10 2 图 10 1 PLC 的跳转指令使用示意 图 a 为 OMRON 的跳转 0 00 OFF 时 JMP 到 JME 之间的指令跳过 不执行 反之 执行 图 b 为西门子的跳转 V500 1 ON 时 跳转到 LBL2 处 被跳过的指令 不执行 反之不跳 JMP 后的指令依次执行 图 c 为三菱的跳转 X000 ON 时 跳转 到标号 P1 处 被跳过的指令不执行 反之不跳 CJP 后的指令依次执行 不同厂家 PLC 跳转指令的差别 正如其它指令的差别一样 都只是大同小异 目的 都是跳转 只是表达的方法 各有其不同而已 当程序需要分支执行时 使用到跳转 不仅可实现程序设计要求 而且还可减少程序 扫描时间 提高程序的运行效率 与跳转类似的还有互锁 主控指令 OMRON 称互锁 IL 互锁清除 ILC 指令 这两 个指令在形式上 与跳转指令类似 也是要配对使用 但功能不同 它不改变程序流程 只是像电路的 总开关 一样 影响 IL 与 ILC 间的程序执行 见图 10 2 该图 a b 示的为三菱 PLC 的主控指令及其使用 图 a 为处于写状态时的梯形图 其中 MC 及 MCR 之间的指令执行 受执行条件 X000 可以是别的 控制 X000 ON 则 M0 ON 之间的指令正常执行 否则 输出互锁 图 b 示的为处于读状态时的梯形图 这里 总开关 的作用显示得很形象 指令中的 N0 为配对主控指令使用的编号 当然 MC 与 MCR 的编 号要一致 MC 与 MCR 也可嵌套使用 该图 c 示的为西门子 S7 300 400 的主控指令 MCRA 主控指令激活 及 MCRD 主控指令激活停止 是配对的 只有在主控指令激活区中主控指令才有效 MCR 主控继电器 OFF 也是配对使用 而且也可嵌套 图 c 是的为 2 层 这里的几个主控指令的作用如本例是 当 I0 0 及 I0 1 ON 则 Q4 0 及 Q4 1 的状态分别取决于 I0 3 I0 4 如同这里不存在这几个主控指令一样 当 I0 0 ON 及 I0 1 OFF 则 Q4 1 的状态取决于 I0 4 如同这里不存在这第 1 层的 MCR一样 而 Q4 0 则必 OFF 不管 I0 3 的状态如何 当 I0 0 OFF 则 Q4 0 Q4 1 的均 OFF 不管 I0 3 I0 4 以至于 I0 1 的状态如何 要说这里的特别之处是 在 MCR之后 要执行 MCRD 2 循环指令 它由 FOR 和 NEXT 两条指令组成 配对使用 FOX 为循环开始 而 NEXT 为循环结 束 其功能是 使这两条指令间的指令 按指定的次数 重复执行 重复多少次 则在 FOR 指令中指明 FOR NEXT 循环可嵌套 但层数是有限制的 其限制的约定 随 PLC 型别而定 图 10 4 示的为三家 PLC 用于两层嵌套的使用例子 从图知 这里外层都是重复执行 3 次 而内层 2 则执行 2 次 程序段 A B 和 C 都 是如下执行 A B B B C A B B B C 执行循环程序时 如需要临时退出 对 OMRON PLC 可在需退出处 用 BREAK 指令 若要从嵌套循环中退出 则需要多个 嵌套层数 BREAK 指令 而西门子 三菱 PLC 则可用跳转指令 指定跳到循环外的某标号处 西门子还可用 INDX 值处理 每当执行一 次循环 INDX 值将加 1 当它大于 等于 FINAL 值时 也可退出循环 此外 它的 FOR 指令还要求先设置逻辑条件 如图 I2 0 ON 对 1 及 I2 1ON 对 2 即为它们的逻辑条 件 3 子程序 在程序中 常有一些要重复使用的一组组指令 用以实现某些特定的功能 若把一组 组指令编成子程序 则可大大简化程序设计 使用子程序还便于程序的阅读及修改 子程 序指令总是含子程序入口 子程序结束标志及子程序调用等指令 表 10 1 示的为三家 PLC 用的子程序指令 表中 N 为子程序标号 表 10 1 PLC 子程序指令 子程序指令的要点是 1 子程序入口到子程序结束指令间的程序为子程序 2 在一个程序中 可以有多个子程序 用标号 N 相区别 3 不是子程序的其它程序为主程序 4 西门子 PLC 的子程序安排在不同标号的单独程序模块中 因此 它无入口指令 也无需结束指令 5 OMON 三菱 PLC 子程序安排在主程序之后 END 指令之前 但三菱 PLC 的 主程 序之后 要加主程序结束指令 FEND 子程序则放在 FEND 指令之后 6 在主程序中 可用相应指令调用子程序 被调用一次 则被扫描 被执行一次 可多次使用 7 在子程序中 也可用相应指令调用其它子程序 但不能调自身 即可嵌套 但不 能递归 调的层数也是受限制的 其限制的约定 随 PLC 型别而定 8 子程序一旦调用 总是从入口直到结束 但西门子可用 RET 指令 于中途退出 而其它两家 PLC 则可用跳转指令中途退出 图 10 5 示的为三家 PLC 子程序指令及其使用 图知 当调用子程序逻辑条件成立 如图 0 00 I0 0 X000 ON 则都将转去执行 子程序 执行后 再接着执行主程序的后续部分 如图中 0 02 OFF 及 I0 2 X002 ON 则在子程序中 执行 A 部分程序后 中途退出 否则 执行 A B 两部分程序都执行完 才退出 提示 所有的子程序都要安排在主程序的后面 在 END 指令之前 不然 子程序后 的主程序指令将不被执行 对一些多任务编程的 PLC 其子程序还有全局与局部之分 局部子程序只能用于本任 务 要想所有任务都能调用 要用全局子程序 如 OMRON CJ 系列机 全局子程序指 GSBN 751 和 GRET 752 之间的程序段 调 用指定编号的全局子程序 要用全局子程序调用指令 GSBS 750 三菱 Q 系列等中 大型机除了用 CALL 正常调用子程序 还有 FCALL 输出 OFF 调用 ECALL 程序文件之间子程序调用 XCALL 等指令 提示 西门子 S7 200 机的子程序可带参数 参数用子程序的局部变量自行定义 参 数有子程序输入 IN 输出 OUT 及输入 输出 IN OUT 兼而有之 三种 在调子 程序时 输入参数要写在输入端 输出参数要写在输出端 输入 输出参数既要写在输入 端 又要写在输出端 当然 如不定义局部变量 将不带参数 具体运用实例见后 提示 OMRON 三菱小型机的子程序不带参数 但在调用前可作预处理 调后再作 后处理 也可起到带参数的作用 OMRON PLC 还有宏调用 类似于带参数子程序 只是 它的参数使用限制较多 提示 三菱 Q 系列等中 大型机的子程序也可带参数 但位参数只有输入 输出 并要用专用内部器件 即功能软元件 FX 入 FY 出 FD 寄存器 作形式参数 同 时也有宏 宏的形式参数也要用专用内部器件 VX VY VD 4 中断中断也是调子程 序 但它不是靠指令调 而是靠中断事件调 且调的子程序编号与所发生的事情对应 这些子程序有时还称为中断服务程序 PLC 中断事件可以来自外部 也可来自内部 前者称外中断 后者称内中断 外部中断用输入点 当可中断工作 取决于机型及设定 的输入点状态发生变化 如 从 OFF 到 ON 则发生与其对应的中断事件 并调用相应的中断服务程序 每发生一次 中断事件 则调一次中断服务程序 有了这样中断 可缩短 PLC 对输入信号的响应时间 此外 高速计数信号输入 也会产生多种中断 如计数中断 可输入高速脉冲的输入 点 取决于机型及设定 输入高速脉冲会自动中断计数 再如比较中断 中断计数后 会 自动进行中断比较 最后 还可根据中断比较结果 调用相应的中断子程序 再 有的 PLC 如 S7 200 机 还有通讯中断 收到字符 或发送字符及出错等 都 会引起相应的中断 内部中断的事件来自 PLC 内部 典型的内部中断为定时中断 经设定可准确定时运 行相应的中断程序 为了处理好中断 提高程序的控制可靠性与效率 PLC 提供了有关的中断处理指令 表 10 2 是的为三家 PLC 的一些有关的中断指令 表 10 2 PLC 的一些有关的中断指令 中断允许 禁止指令用于确定 在运行程序时 是否允许中断 当程序的某一部分不 允许中断时 可用中断禁止指令 某一部分允许中断时 可用中断允许指令 提示 OMRON PLC 默认为中断允许 而三菱 西门子 PLC 则默认中断不允许 为 此 后者 要使用中断 需先允许中断 而前者 做好有关设定就可以了 设定中断屏蔽是为了确定是否允许某个内 外中断事件产生 如可外中断的输入点 可设定其为从 OFF 到 ON 产生中断 也可相反 也可不让其产生中断 提示 中断允许与中断屏蔽是两个概念 前者是指 所运行的程序是否允许接受中断 后者是指 是否允许中断事件出现后产生中断 前者可用指令处理 而后者多为通过相关 设定处理 PLC 处理中断事件是有个过程的 当发生中断事件时 PLC 总是先记录发生的事件 并按优先级对其排队 优先级高的先执行 它执行完了 再执行优先级低的 所有中断任 务处理完了 再转回执行正常的循环程序 一般讲 优先级与中断的任务号是对应的 中 断编号越小 优先级越高 要注意的是 已记录但未执行的中断 其后又发生相同的事件 PLC 对此将不理睬 所以 不是发生的所有中断事件都会处理的 另外 对已作记录 但未执行的外中断中断 任务 可用 CLI 指令取消 提示 三菱中断子程序入口编号开始字符为 I 不同的事件 有不同的编号 而不是 P 子程序结束指令为 IRET 而不是 SRET 提示 对多任务编程或模块化组织的 PLC 如
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农业面源污染治理2025年技术路径与政策实施效果评估报告
- 安全规范试题及答案
- 瑜伽课件培训方案范文
- 工业互联网平台射频识别(RFID)技术在智能工厂生产设备性能提升策略报告
- 法院执行普法培训课件
- 中国南水北调工程
- 《X射线诊断设备(第二类)注册技术审查》
- 中国剪纸英语教学课件
- 广西北海市银海区2025届八年级英语第二学期期中达标检测试题含答案
- 感恩教育班会
- 半结构化面试题100题
- 第三章更好统筹发展和安全的途径和方法-国家安全教育大学生读本教案
- 房屋及相关设施零星维修工程施工方案
- 部编版四年级语文下册 期末词语成语专项复习【含答案】
- 2025年危险化学品经营单位安全管理人员上岗证考试题库(含答案)
- 2吨超纯水技术方案
- 2024-2025学年小学信息技术(信息科技)六年级全一册义务教育版(2024)教学设计合集
- 江苏省环保集团有限公司招聘笔试题库2024
- 2024-2030年中国扩展现实(XR)行业未来展望与投融资状况分析报告
- 2024年湖北省武汉市中考道德与法治·历史试题(含答案解析)
- 2024年天津市初中学业水平考试语文试卷及参考答案
评论
0/150
提交评论