应用STEP7进行PLC控制的编程方法和技巧

  • 格式:doc
  • 大小:20.00 KB
  • 文档页数:6

应用STEP7进行PLC控制的编程方法和技巧作者:李钢来源:《现代企业文化·理论版》2008年第03期【摘要】可编程控制器(PLC)在各种控制领域的应用非常广泛,而STEP7 是一个很好地解决 PLC编程和网络通讯的软件。

文章以实例的形式详细介绍了 PLC的不同的编程方法和技巧,目的是对PLC有一个全面的了解,并能在自动控制领域更好地应用它。

【关键词】plc控制;顺序功能图;顺序控制设计方法【中图分类号】TEl51【文献标识码】A【文章编号】1674-1145(2008)05-0120-03现代化社会中,随着社会的进步和科技的发展,自控技术的应用也越来越广泛,它应用于人们的生产、生活等各个方面,而在现代化的控制技术中,plc控制无疑是应用最为广泛的一种,而step7是比较好的plc控制的开发编程软件。

step7的功能较强大,它可用于plc的单机编程,也可用于多台plc或plc与计算机通过现场总线和网络通信协议连接形成工业网络(dcs)。

Plc主要由机架、cpu模块、信号模块、功能模块、通信处理器、电源模块和编程设备组成。

Plc采用循环执行用户程序的方式,在循环程序处理过程中,cpu并不直接访问I/O模块中的输入地址区和输出地址区,而是访问cpu内部的输入/输出过程影像区。

批量输入、批量输出。

Plc定义了五种编程语言:指令表,结构文本,梯形图,功能块图,顺序功能图。

Plc作为控制元件,既可作为主站,又可作为从站。

一个控制过程的实现,首先要把plc与上位机和执行机构做好物理上的连接,而更主要的是利用plc的编程软件做好程序的编写工作,step7就能出色地完成这项工作。

下面我要介绍一下plc 的编程方法和技巧。

Plc的编程方法主要有以下三种:顺序控制设计方法;以转换为中心的编程方法;使用scr 指令的编程方法。

每一种编程方法都有各自的形式和特点,但互相之间各不相同。

不同的控制过程可以用同一种编程方法来实现;同样的控制过程也可以用不同的编程方法来实现,达到异曲同工的效果。

首先介绍顺序控制设计方法:它是将系统的一个工作周期划分为若干个顺序相连的阶段(步,step),用编程元件(例如M)来代表各步。

在任何一步内输出的状态不变,相邻两步输出量总的状态是不同的,步与各输出量有着极为简单的逻辑关系。

使系统由当前步进入下一步的信号称为转换条件。

顺序控制设计法用转换条件控制代表各步的编程元件,让他们的状态按一定的顺序变化,然后用代表各步的编程元件去控制输出。

当系统正处于某一步所在的阶段时,该步处于活动状态,称该步为“活动步”。

步的活动状态的进展是由转换的实现来完成的,转换实现必须同时满足两个条件:1. 该转换所有的前级步都是活动步;2. 相应的转换条件得到满足。

转换实现应完成以下操作:前级步都变为不活动步;后续步都变为活动步。

每两个步不能直接相连,必须用一个转换将它们隔开:每两个转换也不能直接相连,必须用一个步将它们隔开;初始步对应于系统等待起动的初始状态,是必不可少的;顺序功能图中一般应有由步和有向连线组成的闭环。

这种设计方法的基本思路是使用起动、保护、停止电路(以下简称起保停电路)的顺序功能图和梯形图进行编程,即每一步都看成一个类似于起保停的电路,对每一步进行编程,然后顺序执行,完成整个控制过程的梯形图的编写。

如下为简单的起保停电路梯形图:Q0.1=(I0.0+Q0.1)·I0.1I0.0为起动按钮,也称为起动条件;Q0.1为自锁条件,也称为保护条件;I0.1为关断条件,也称为停止条件。

在以上的顺序功能图中,I0.0为起动按钮(或此步的起动条件),M0.0为前级步(或初始步),M0.2为后续步,I0.2为后续步起动的条件,Q0.1是被控制的执行机构或元件,这里假设为起保停电路的电机。

若想使Q0.1 电机动作,就要使M0.1步成为“活动步”,而M0.1成为“活动步”需要满足两个条件,所有前级步均为“活动步”且转换条件得到满足;而M0.1的前级步只有M0.0一个,转换条件也只有I0.0一个,所以M0.0=ON和I0.0=ON同时满足则M0.1成为“活动步”,在梯形图中要连入M0.0和I0.0的常开触点的串联;保持Q0.1运转就需要M0.1步保持为“活动步”,所以M0.1=ON为保持条件,即在梯形图中并入M0.1的常开触点;而在一定时候要关断电机Q0.1,就需要使M0.1成为“不活动步”,也就是此转换完成,这时应使当前步到后续步的转换条件I0.1成立即I0.1=ON,且使后续步M0.2成为“活动步”,即M0.2=ON,反之,I0.1=ON或M0.2=ON就成为停止当前步M0.1的转换条件,这样就要在梯形图中接入I0.1的常闭触点或M0.2的常闭触点,最后完成此步的梯形图。

即: I0.0·M0.0为起动条件;M0.1为M0.1(或Q0.1)=(I0.0·M0.0+M0.1)·M0.2M0.1(或Q0.1)=(I0.0·M0.0+M0.1)·I0.1上边两个梯形图均能实现起保停的控制功能。

与前边的简单梯形图进行比较,可看出,两者在表现形式上不完全相同,但最终实现的功能是一样的。

只是因为后边梯形图在编写过程中引入了“步”的概念,这样就使得编程思路更清晰,整个程序的编写更有秩序。

所以在梯形图的编写过程中,每一步都要找到使此步起动的条件,此步的保持条件和使此步停止的条件。

另外,当在一步后有不同的转换条件实现不同的功能时,就要用到选择序列,此时,注意各自的转换条件应在分支开始以后;而在一步后同一个转换条件,会同时执行几个分支步的功能时,就要用到并行序列,此时注意转换条件是共有的,应在并行序列开始以前。

下面以一个具体的控制过程的设计为例来讲解此方法:例:多种液体自动混合的控制系统:一个容器用于A、B两种液体的混合(如图),容器底部有一个电机M带动的搅拌器,容器设置了A、B、C三个电磁阀,A、B分别用于注入A、B两种液体,阀C用于排出液体,另外,有三个液面传感器,即上限位I0.1,中限位I0.0,下限位I0.2,起动按钮I0.3,停止按钮I0.4。

工作过程:初始状态容器是空的,各个阀门关闭。

即:Q0.0=QO.1=Q0.2=Q0.3=OFF,I0.1=I0.2=I0.3=OFF,I0.3=I0.4=OFF按下起动按钮I0.3起动后,打开阀A,注入A液体,液面到达中限位I0.0时,关闭阀A,停止A液体的注入,同时打开阀B,开始注入B液体,液面到达上限位I0.1时,关闭阀B,停止B液体的注入,同时,电机M开始运行搅拌,60秒后停止,同时打开阀C,排出混合液体,液面到达下限位I0.2后,再过5秒,液体全部排空,关闭阀C,同时打开阀A,开始另一个循环周期,按下按钮I0.4后,全部过程停止。

先作出顺序功能图:初始条件:起始步起动按钮I0.3按下,开始动作第一步:打开阀A,注入液体A转换条件,液面到达中限位第二步:打开阀B,注入液体B,同时 M0.1成为“不活动步”,关闭阀A转换条件,液面到达高限位第三步:电机Q0.2动作,同时M0.2成为“不活动步”,关闭阀B,且延时继电器T37开始延时60秒转换条件,T37延时到,触发M0.4成为“活动步”第四步:打开阀C,排出液体,液面下降到下限位___转换条件,液面下降,露出下限位第五步,阀C仍保持打开状态,且延时继电器T38开始延5秒T38延时到,同时,若连续条件M0.1满足,就返回执行第一步,继续下一次循环;若连续条件M0.1不满足,就返回初始步。

注意,在液面到达限位以上时,限位接通,在梯形图中用常开触点;液面下降露出限位时,限位断开,在梯形图中用常闭触点。

M1.0是自己设计的一个连续开关,它是一个中间步,用M1.0的常开/常闭触点控制循环是否连续进行。

开始时,只要按下I0.3按钮M1.0就设置为ON状态并一直保持,整个控制过程也就一直循环;只有当按下停止按钮I0.4时,才使M1.0被设置为OFF状态,循环过程停止。

下面介绍第二种编程方法:以转换为中心的编程方法,在该方法中,用某一转换所有前级步对应的存储器位的常开触点与转换对应的触点或电路串联,该串联电路即起保停电路中的起动电路,用它作为使所有后续步对应的存储器位(置位指令),同时使所有前级步对应的存储器位复位(复位指令)的条件。

仍举上例,顺序功能框图不变,作梯形图:以M0.1步为例,要使M0.1步成为“活动步”,它的条件就应该是M0.0步为“活动步”,即M0.0=ON时,转换条件I0.3满足,即I0.3=ON,也就是M0.0·I0.3两者的常开触点串联电路就对M0.1置位,而同时关断前级步M0.0,使M0.0变为“不活动步”,即对M0.0步复位,M0.0=OFF;当M0.2的置位条件满足时,也就是M0.1=ON且I0.0=ON时,使M0.2置位,同时使M0.1复位,这样就完成了M0.1的置位和复位的过程,也就完成了这一步所应执行的动作,转入下一步的执行,如此循环,形成了闭环的控制过程。

画出梯形图后,按照不同的PLC产品的编程语言命令,很容易就能写出这个控制过程的程序清单,输入PLC后就可执行运作,达到我们的自动控制的目的。

以上是对应一个例子讲解了PLC编程中的两种方法和技巧,这一程序已测试通过。

从中可以看出,在编写PLC梯形图时,首先要对全部的控制过程有一个详细的了解,然后分析这一控制过程应该分几个步骤完成,每一步具体要实现什么动作或完成什么功能,而每一步之间的转换条件有哪些,一定要把条件找对找全,然后再利用某一种编程方法一步步地完成程序的编写过程,清晰,明了,实用,可行。

至于更复杂的控制过程,只要按以上介绍的方法具体分析,分步执行,也就迎刃而解了。

当然PLC还有其它的编程方法,在这里就不一一尽述了。

我介绍的方法和技巧,只是我的经验总结,和大家作一个探讨,而用好可编程控制器将对自动控制的实现大有益处。