5.2 典型控制功能的程序设计
复杂的PLC控制程序一般是由一些典型控制程序组合而成的,熟悉和掌握这些典型环节的程序设计,可以大大提高PLC程序设计的能力。本节将介绍一些具有典型控制功能的梯形图程序。
5.2.1 电动机的基本控制程序
1.电动机的启动、保持和停止控制程序
启保停电路是电动机控制中最常见的电路(见图3-6),通常由启动按钮、停止按钮和接触器等电器组成。设PLC的I/O地址分配表如表5-1所示。控制程序梯形图和时序图如图5-6所示。
表5-1 I/O地址分配表
图5-6 电动机启保停电路的梯形图和时序图
其工作过程是,按下启动按钮SF2,I0.0的常开触点接通,如果这时没按停止按钮SF1,I0.1的常闭触点接通,Q0.1的线圈“通电”,其常开触点同时接通,此时对应于电动机启动。放开启动按钮,I0.0的常开触点断开,“能流”经Q0.1的常开触点和I0.1的常闭触点流过Q0.1的线圈,这时Q0.1仍为接通状态,这就是“自锁”或“自保持”功能。按下停止按钮,I0.1的常闭触点断开,使Q0.1的线圈“断电”,其常开触点也断开。以后即使放开停止按钮,I0.1的常闭触点恢复接通状态,Q0.1的线圈仍是“断电”状态,此时对应于电动机停止。
在实际控制电路中,启动信号和停止信号还可以由多个触点组成的串、并联电路提供。
2.电动机的正、反转控制程序
电动机的正、反转控制电路也是电动机控制中应用很广泛的电路,通常需要设置正向和反向启动按钮、停止按钮和正、反转接触器。设PLC的I/O地址分配表如表5-2所示。控制程序梯形图如图5-7所示。
表5-2 I/O地址分配表
图5-7 电动机正、反转控制的梯形图
电动机正、反转运行方向的切换是通过两个接触器QA1和QA2来实现的。QA1 和QA2的主触点改变进入电动机三相电源的相序,即可改变电动机的旋转方向。在梯形图中,用两个启保停电路来分别控制电动机的正转和反转。按下正转启动按钮SF2,I0.0变为ON状态,其常开触点接通,Q0.0的线圈“得电”并保持,使QA1的线圈通电,电动机开始正转运行。按下停止按钮SF1,I0.2变为ON状态,其常闭触点断开,使Q0.0的线圈“失电”,电动机停止运行。
在梯形图中,将Q0.0和Q0.1的常闭触点分别与对方的线圈串联,可以保证它们不会同时为ON状态,因此QA1和QA2的线圈就不会同时通电,防止引起短路事故,这种安全措施称为“互锁”。
除此之外,为了保证Q0.0和Q0.1不会同时为ON状态,在梯形图中还设置了“按钮连锁”,即将控制反转启动按钮的I0.1的常闭触点与控制正转的线圈Q0.0串联,而将I0.0的常闭触点与控制反转的线圈Q0.1串联,这样可以保证先按的按钮有效,也不会因为同时操作按钮使QA1和QA2的线圈同时通电。
该控制程序经过简单的变化,还可以得到优先控制程序。
5.2.2 定时器应用程序
1.瞬时接通/延时断开电路
S7-200PLC的定时器既有通电延时定时器又有断电延时定时器,但有些厂家的PLC只有通电延时定时器,当需要断电延时功能时,必须通过通电延时定时器来实现。例如,本电路要求在输入信号接通时,输出信号也马上接通;输入信号断开后,输出信号延时一段时间后才断开,其功能就相当于断电延时继电器。图5-8所示的为该电路的程序和时序图。
图5-8 瞬时接通/延时断开电路
当电路输入信号I0.0接通时,其常闭触点断开,定时器T37不工作,则常闭触点T37为ON状态,Q0.0接通。关键是找出定时器T37的计时条件,即I0.0断开且Q0.0接通。因为在I0.0断开后,Q0.0仍需要保持通电状态3s,所以必须在输入信号I0.0两端并联输出信号Q0.0的自锁触点。
2.延时接通/延时断开电路
该电路要求输入信号I0.0接通以后,经过一段时间后输出信号Q0.0接通;输入信号I0.0断开以后,经过一段时间输出信号Q0.0才断开。这相当于通电延时继电器和断电延时继电器所完成的功能。图5-9所示的为该电路的程序和时序图。
图5-9 延时接通/延时断开电路
与瞬时接通/延时断开电路相比,该电路加了一个输入延时。定时器T37延时3s作为输出信号Q0.0的启动条件,定时器T38延时5s作为输出信号Q0.0的关断条件。
3.闪烁电路
闪烁电路实际上就是一个时钟电路,其时钟周期可以通过改变定时器的设定值进行调节。图5-10所示的为一个典型闪烁电路的程序和时序图。
图5-10 闪烁电路
在本电路中,当I0.0接通以后,T37的位信号就会产生一个3s为ON状态、2s 为OFF状态的闪烁信号。该信号经Q0.0输出,可在PLC的指示灯上观察到一个亮3s灭2s的输出信号。T38的位信号在每个时钟周期里可接通一个扫描周期。通过改变定时器T37和T38的设定值,可获得等间隔时间或非等间隔时间的任意时钟周期的输出信号,该信号可用于灯光的闪烁、报警指示和电动机的间歇控制等场合。
特殊标志位存储器SM0.5的常开触点提供周期为1s,占空比为0.5s的时钟信号,相当于时间基准为100ms的T37和T38的设定值均是5的程序。
5.2.3 计数器应用程序
1.长延时电路
S7-200PLC中的定时器最长的定时时间是3276.7s,如果需要定时更长的时间,仅用一个定时器是不够的。在本电路中,当I0.0接通以后,经过10h的时间,输出信号Q0.0才变为ON状态。图5-11所示的为长延时电路的程序。
图5-11 长延时电路
在梯形图程序中,T37每1min接通1个扫描周期即产生1个脉冲,所以是分钟计时器。C21每1h产生1个脉冲,故C21是小时计时器。当计满10h,C22变为ON状态,即总计时为10h时,输出信号Q0.0才接通。
程序中的SM0.1为初始化脉冲,在PLC上电时,用它完成对计数器的复位操作。输入信号I0.1用于完成对计数器的外部复位操作,而并联的C21触点则用于完成自复位功能。
2.计数器的扩展电路
在S7-200PLC中,1个计数器的最大计数值是32767。在实际应用中,如果计数范围超过这个值,就需要对计数器的计数范围进行扩展,图5-12所示的为计数器扩展电路的程序。
图5-12 计数器扩展电路
在梯形图程序中,I0.0是计数器C20的计数输入端,它的每一个上升沿使C20的计数值加1次;C20的常开触点作为计数器C21的计数输入信号,C20每计数到1000时,C20的常开触点接通1个扫描周期,使计数器C21计数1次;C21的常开触点又作为计数器C22的计数输入信号,C21每计数到100时,C21的常开触点也接通1个扫描周期,使计数器C22计数1次,C22共计数6次。这样当计数值为6 ×100×1000=600000时,即当输入信号I0.0的上升沿脉冲数达到600000个时,输出信号Q0.0才接通。
输入信号I0.1作为计数器的外部公共复位信号,而C20和C21的常开触点与I0.1并联则用于完成自复位功能。
3.扫描周期测量电路
S7-200PLC执行用户程序是按循环扫描方式进行的,扫描周期很短,且与程序长短有关。利用图5-13所示的电路可大致测量出用户程序的扫描周期。
图5-13 扫描周期测量电路
在梯形图程序中,当程序处于RUN状态时,如果第1个扫描周期内部位存储器M0.2线圈的状态为ON;则在第2个扫描周期时,M0.2常闭触点的状态为OFF,其线圈状态也为OFF;在第3个扫描周期时,M0.2常闭触点的状态变为ON,其线圈状态也为ON。这样内部位存储器M0.2的状态每个扫描周期改变一次,将其常开触点接到C20的计数输入端,则它的每一个上升沿(即2个扫描周期)使C20的计数值加1次。
设T为程序扫描周期,t是从I0.3接通开始计数到Q0.2被置位所需时间,N为计数器设定值,则扫描周期T=t/(2 N)=t/(2×10000)。
做实验时,可将特殊标志位存储器SM0.5的常开触点接到输出继电器Q0.4上,其功能是产生周期为1s的脉冲。通过Q0.4的外部发光二极管,可以观察到Q0.4的灯1s亮1次,用此方法可大致记录从I0.3接通到Q0.2被置位所需时间t。如果将此程序段写入任意一个用户程序中,便可测量该用户程序的扫描周期,通过该方法可加深对扫描周期的理解。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。