电气控制与可编程序控制器主编黄净第七章PLC程序设计方法第一节编程方法指导第二节功能表图设计法第三节程序设计举例第一节编程方法指导一、梯形图的特点1)梯形图按自上而下、从左到右的顺序排列。2)梯形图中的继电器不是物理继电器,每个继电器均为存储器中的一位,因此称为“软继电器”。3)梯形图是PLC形象化的编程手段,梯形图两端的母线并非实际电源的两端。4)一般情况下,在梯形图中某个编号继电器线圈只能出现一次,而继电器触点(动合或动断)可无限次引用。5)梯形图中,前面所有逻辑行的逻辑执行结果,将立即被后面逻辑行的逻辑操作所利用。6)梯形图中,除了输入继电器没有线圈,只有触点外,其他继电器既有线圈,又有触点。第一节编程方法指导7)PLC总是按照梯形图排列的先后顺序(从上到下、从左到右)逐一处理。二、梯形图编程规则1)在每一逻辑行中,串联触点多的支路应放在上方。2)在每个逻辑行中,并联触点多的电路应放在左方。图7-1梯形图之一a)合理b)不合理第一节编程方法指导图7-2梯形图之二a)合理b)不合理第一节编程方法指导图7-3梯形图之三a)不允许b)等效变换c)合理4)梯形图中,当多个逻辑行都具有相同条件时,为了节省语句数量,常将这些逻辑行合并,如图7-4a所示,并联触点1、2是各个逻辑行所共有的相同条件,可合并成如图7-4b所示的梯形图,3)梯形图中,不允许一个触点上有双向“电流”通过。第一节编程方法指导利用堆栈指令或分支指令来编程。三、动断触点输入的处理图7-4梯形图之四a)不合理b)合理第一节编程方法指导图7-5动断触点输入的处理a)PLC输入输出接线b)继电器原理控制图c)梯形图1d)梯形图2第二节功能表图设计法一、功能表图设计法的基本步骤及内容1.步的划分2.转换条件的确定图7-6步的划分a)划分方法一b)划分方法二第二节功能表图设计法图7-7功能表图的一般形式第二节功能表图设计法3.功能表图的绘制4.梯形图的编制二、功能表图的绘制方法1.功能表图概述2.功能表图的组成要素(1)步与动作前面已介绍过,用顺序控制设计法设计PLC程序时,应根据系统输出状态的变化,将系统的工作过程划分成若干个状态不变的阶段,这些阶段称为“步”。(2)有向连线、转换和转换条件如图7-7所示,步与步之间用有向连线连接,并且用转换将步分隔开。3.功能表图中转换的实现第二节功能表图设计法图7-8多个动作的画法第二节功能表图设计法4.功能表图的基本结构(1)单序列结构功能表图的单序列结构形式最为简单,它由一系列按顺序排列、相继激活的步组成。(2)选择序列结构选择序列有开始和结束之分。图7-9选择序列a)选择序列的分支b)选择序列的合并第二节功能表图设计法(3)并列序列结构并列序列也有开始与结束之分。(4)子步结构在绘制复杂控制系统功能表图时,为了使总体设计时容易抓住系统的主要矛盾,能更简洁地表示系统的整体功能和全貌,通常采用“子步”的结构形式,可避免一开始就陷入某些细节中。图7-10并列序列a)并列序列的分支b)并列序列的合并第二节功能表图设计法图7-11子步结构第二节功能表图设计法图7-12跳步、重复和循环序列a)跳步序列b)重复序列c)循环序列第二节功能表图设计法(5)跳步、重复和循环序列除以上单序列、选择序列、并行序列和子步四种基本结构外,在实际系统中经常使用跳步、重复和循环序列等特殊序列。5.举例图7-13液压动力滑台a)自动工作循环示意图b)液压元件动作表第二节功能表图设计法图7-14液压动力滑台自动循环功能表第二节功能表图设计法图7-15系统功能表图第三节程序设计举例一、根据功能表图编制梯形图表7-1液压动力滑台输入/输出设备与PLC的I/O口对应关系1.使用通用逻辑指令的编程方式图7-16液压动力滑台的功能表图第三节程序设计举例图7-17液压动力滑台梯形图之一第三节程序设计举例1)不允许出现双线圈输出现象。2)如果在功能表图中含有仅由两步组成的小闭环(如图7-18a所示),则相应的辅助继电器将无法接通。2.使用置位、复位指令的编程方式(1)以转换条件为中心的编程方式有些PLC(如西门子的S7系列等)具有置位(S)、复位(R)指令,且对同一个继电器的置位和复位可分开编程,即能以转换条件为中心进行编程。图7-18只有两步的小闭环处理a)仅两步的小闭环b)小闭环对应的梯形图c)小闭环的处理方法第三节程序设计举例图7-19液压动力滑台梯形图之二第三节程序设计举例(2)以编程元件为中心编程方式某些型号的PLC具有与S、R指令功能相同的编程元件,但是同一编程元件的置位和复位电路不能分开,即要以编程元件为中心进行编程。图7-20并行序列功能表图S/R指令编程第三节程序设计举例图7-21C系列PLC锁存器的使用第三节程序设计举例图7-22液压动力滑台梯形图之三a)功能表图b)梯形图3.使用移位寄存器的编程方式第三节程序设计举例图7-23液压动力滑台梯形图之四第三节程序设计举例图7-24液压动力滑台梯形图之五4.使用顺序功能寄存器指令的编程方式第三节程序设计举例二、功能表图法设计梯形图时几种方式的比较1.有一台电动机,要求按下起动按钮后,电动机运转10s,停止5s,重复执行3次后,电动机自动停止。图7-25题2的图第三节程序设计举例2.图7-25中的两条运输带顺序相连,按下起动按钮,2号运输带开始运行,10s后1号运输带自动起动。3.小车开始停在左边,限位开关I0.0为1状态。4.设计出图7-27所示顺序功能图的梯形图程序。第三节程序设计举例图7-26题3的图第三节程序设计举例图7-27题4的图