理论教育 开环控制与PLC程序实现

开环控制与PLC程序实现

时间:2023-07-01 理论教育 版权反馈
【摘要】:这也是开环控制用得较少的重要原因。图3-25 运动速度与行程关系图3-26所示为3种PLC实现这个控制的程序。图3-26 运动程序控制程序应指出的是,本例的开环控制指的是速度控制。图3-27 比例控制梯形图程序从图可知,图3-27a的“模出通道”的BCD码值为“三路模拟量BCD码”与“比例系数K”的乘积。

开环控制与PLC程序实现

1.定值控制

不用控制结果信息,使调节量(被控量)保持所要求定值的控制,称开环定值控制。要实现这个控制,首先要弄清控制量及干扰量与调节(被控)量间的量化关系。

这个关系已在上一节作了讨论。弄清这个关系,就可方便地进行开环定值控制了。具体的办法是,根据要求得到的调节量,依它与控制量间的对应关系,决定要输出的控制量。

这样处理的不足是,无法考虑干扰量的影响。事实上,在多数情况下,存在各种干扰是不可避免的。这样,就很难得到较好的定值控制的效果。这也是开环控制用得较少的重要原因。

2.程序控制

这里讲的程序控制是指使被调节量按预定规律变化所作的控制。这预定规律可根据要求任意设计。

以下为两个电动机速度程序控制实例。在使用时,还须把这里的模拟量输出做功率放大,以加载给直流电动机,或用输出控制变频器输出频率,用变频器加载给交流电动机。此输出可理解为0~5或10V电压。此电压高,直流电压也高,或变频器的输出频率也高;用它驱动电动机时,电动机的转速也高。所以,控制此数值即可控制电动机速度。

(1)例1,程序控制电动机起动。

图3-24所示为和利时PLC程序。

图3-24中,节1为工作起动控制。一旦“start”ON,将使“WK”ON,并自保持。节2为调用定时功能块,以生成1ms间隔的时钟脉冲信号“T1.Q”。节3调用增计数功能块,用以计脉冲。它的计数设定值为3000,故当脉冲计到3000时,将复位。节4为输出控制,把计数功能块的现值(C1.CV)输出给“OO”。它是字变量,但与模拟量输出通道的地址关联(用变量声明实现,但图中没有示出)。节5为调用模拟量输出功能块,以使能模拟量输出模块。这样,当“start”ON,“WK”起动工作后,“T1.Q”脉冲信号,将使“C1.CV”、“OO”字的值从0开始逐步增大,进而也使模拟量模块的输出、增大变频器频率也从0开始逐步增大。再进而使由变频器所带动的电动机的转速从0开始逐步增大。电动机的这样起动过程,不仅平稳,而且也不会产生很大的起动电流,给电网造成冲击。大功率的电动机用软起动器起动,其目的也就是这个。

978-7-111-39745-8-Chapter04-28.jpg

图3-24 和利时程序控制电动机起动程序

而当计数功能块计数到3000(此值可随变频器及模拟量输出模块的特性修改),即电动机到额定转速时,计数功能块复位,并由于“C1.Q”常闭触点的作用,将使“WK”OFF,起动过程完成。“OO”字的值不变,电动机进入正常工作。

(2)例2,程序控制电动机(通过变频器)加、减速。

控制要求如图3-25所示,即运动部件先作等加速度运动;增速到Max值时,速度保持这Max值,作等速运动;到总行程“行程快到”后,作等减速度运动;减速到Min值后,速度保持Min值,作等速运动,直到行程到“行程到”时,运动停止。

978-7-111-39745-8-Chapter04-29.jpg

图3-25 运动速度与行程关系

图3-26所示为3种PLC实现这个控制的程序。

为了便于说明,图中用的都是符号地址,且3种PLC的符号名均相同。如图所示,“起动”信号ON后,“运行”将ON,并自保持。这时,由于“减小”OFF,其常闭触点ON,故“增加”ON。

“增加”ON,且D0或VW0小于Max时,将使100ms时间脉冲作用在加1(图3-26a为++,图3-26b、c为INC指令)十六进制数运算操作上,使数据存储器D0或VW0每经100ms,加1一次。而此D0或VW0的值总是传送给“输出”,因为它的传送条件总是P-On、SM0.0或M8000,均为常ON特殊继电器。图3-26a用的都是十六进制数,直接传送;图3-26b考虑到模拟量输出为“左对齐”,故作乘8(左移3位)传送;图3-26c则根据模拟量模块访问的特点,用相应访问指令传送。这样,由于D0或VW0值的增大,“输出”也将随之增大,因而所控制部件的速度将增速。

当D0或VW0增到Max值时,D0或VW0将保持Max值,不再增大。这时,部件将做等速运动。

当部件运动时,将产生“脉冲输入”信号。每输入一个脉冲,图3-26a将使D1加1,图3-26b、c则使增计数器C1加1。

当D1或C1增加到等于或大于“行程快到”值时,“减小”ON,其常闭触点将使“增加”OFF。同时,当V0或VW0大于Min时,将使100ms时间脉冲作用在减1(图3-26a为――,图3-26b、c为DEC指令)十六进制数运算操作上,使数据存储器D0或VW0每经100ms,减1一次。这样,由于D0或VW0值的减小,“输出”也将随之减小,因而所控制部件的速度将减速。

当D0或VW0减小到Min值时,D0或VW0将保持Min值,不再减小。这时,部件将作等速运动。

当运动到“行程到”值时,“停止”ON,其常闭触点将使“运行”OFF。D0、D1、C1或VW0回到0,整个控制完成。

另外,图3-26a的P-0-1s、图3-26c的M8012都是100ms的时间信号。而图3-26b,S7-200无此特殊继电器,只好用定时器T33的常闭触点控制自身的线圈产生此信号。

978-7-111-39745-8-Chapter04-30.jpg

图3-26 运动程序控制程序

应指出的是,本例的开环控制指的是速度控制。而行程控制还是闭环的。部件运动行程用脉冲输入反馈。如果运动速度较快,脉冲频率较高,还可用高速计数器处理此过程,这将在本书第4章还会有所讨论。

3.比例控制

比例控制的实例如图3-27所示。它可使流量Qb按比例K,跟随流量Qa变化。图3-27为它的相应程序。

978-7-111-39745-8-Chapter04-31.jpg

图3-27 比例控制梯形图程序

从图可知,图3-27a的“模出通道”的BCD码值为“三路模拟量BCD码”与“比例系数K”的乘积。再转换为十六进制,后再输出给“模出通道”,即可使“模出通道”控制的模拟量,按比例系数K,随“三路模拟量BCD码”的变化而变化。

图3-27b用的是十六进制数,只要“模拟量输入”、“模拟量输出”格式相同,无须转换,则把“比例系数K”与“模拟量输入”相乘,结果给“模拟量输出”就可以了。

图3-27c用的也是十六进制数。但要用RD3A(有的模块用FROM指令)指令先从模拟量输入模块取得“模拟量输入”数据(存于D0),把“比例系数K”与D0相乘,结果存于D2。再用WR3A(有的模块用TO指令)指令把D2的值写给模拟量输出模块。

图3-27d先是使能模拟量输出模块。接着只要WK(工作)ON,则把“OO”的值,即上述流量Qa控制值传送给“%QW4”(模拟量输出模块)。并把字“OO”乘以k后,赋值给“%QW6”(另一模拟量输出模块)。有了它,也可使“%QW6”的模拟量输出将为“%QW4”模拟量输出的K倍。

还可能实现多值比例控制。图3-28为与其对应的梯形图程序。这里有两个比例器K1K2,都由输入量Qa控制,以保证实现Qb1=K1QaQb2=K2Qa的比例关系。

978-7-111-39745-8-Chapter04-32.jpg

图3-28 多值比例控制梯形图程序

图3-28a的“模出通道1BCD码”、“模出通道2BCD码”值为“三路模拟量BCD码”与“比例系数K1”、“比例系数K2”的乘积。再经转换为十六进制数,然后输出给“模出通道1”、“模出通道2”,即可使“模出通道1”、“模出通道2”控制的模拟量,按比例系数K1、K2,随“三路模拟量BCD码”的变化而变化。

图3-28b用的都是十六进制数,把“比例系数K1”与“模拟量输入”相乘,结果给“模拟量输出1”、把“比例系数K2”与“模拟量输入”相乘,结果给“模拟量输出2”就可以了。

图3-28c用的也是十六进制数。但也要用RD3A(有的模块用FROM指令)指令先从模拟量输入模块取得“模拟量输入”数据(存于D0),把“系数K1”与D0相乘,结果存于D2、把“系数K2”与D0相乘,结果存于D4。再用WR3A(有的模块用TO指令)指令把D2、D4。的值指写给模拟量不同的输出模块。(www.daowen.com)

图3-28d先是使能模拟量输出模块。接着为字“OO”,即上述流量Qa控制值传送给“%QW4”(模拟量输出模块)。并把字“OO”乘K1后,赋值给“%QW6”(另一模拟量输出模块),及把字“OO”乘K2后,赋值给“%QW8”(又另一模拟量输出模块)。有了它,也可使“%QW6”、“%QW8”的模拟量输出将分别为“%QW4”模拟量输出的K1、K2倍。

提示1:这里的乘后的“积”为双字,要确保它的“积”处在模出通道的有效值范围之内。

提示2:如K1、K2不是整数,可先把K1、K2乘10或乘100等,使其变成整数,然后再做这里的乘。得出结果后,再用双字长除指令,把“得出结果”的除10或100等,使最后的结果处在模出通道的有效值范围之内。

4.补偿控制

前面介绍的图3-6为前馈控制,也即这里的补偿控制。如图所示,加热物料流入量是容器温度的主要干扰因数。如用一传感器检测热物料流入量,并通过模入单元把检测到的这个量送入PLC,再由PLC按干扰规律对其进行处理(按扰动影响规律,把输入变换成相应的输出),然后再通过模出单元去控制蒸汽阀,即可实现调节蒸汽的前馈控制。从而使加热物料流入量对容器温度的干扰,得到相应补偿。

可看出,这里模入、模出、PLC及其处理程序,即为该图的前馈补偿器。而在这几项中,最难的是弄清扰动影响规律。

一般讲,确定扰动影响规律有两个方法:解析法,探求相应函数关系;实验法,检测一系列相关数据,建对应数表。

对简单的过程,如负载电流对直流发电机的输出电压的影响,用解析法就比较好求。因为

Ud=E-IdR0

U=UdIR0=E-(IdIR0

式中 Ud——额定输出电压;

E——发电机电动势

Id——额定负载电流;

ΔI——实际电流与额定电流差值;

R0——电机电枢电阻

可知,负载电流对输出电压的扰动是线性的。要补偿它的扰动,可提高电动势E。而

E=CΦn

式中 C——电机常数,与电机的结构等因素有关;

Φ——激磁磁通;

n——电机转速。

在这3个量中,较便于处理的是增加辅助励磁线圈,以增加励磁磁通ΔΦ。如用这个辅助激磁磁通ΔΦ,所多得到的电动势ΔE正好等于ΔIR0,则可使电流变化对电压的干扰得到补偿。即

ΔΦ=R0÷(Cn)×ΔI

有了这个关系,把用模入单元检测到的ΔI值,按R0÷(Cn)×ΔI关系,变换为ΔΦ,并送模出单元,去产生辅助激磁磁通。即可实现这个补偿。

这里的按R0÷(Cn)×ΔI关系变换,对PLC来说,运用一些运算指令即可实现,并不难。

但是,如果找不出这些量之间解析关系,那只好用实验法。它的要点是,通过实验,逐个测出不同的扰动量时,要用多大的控制量,才能使系统的调节量达到期望值。然后,列出一个数表,存于PLC存储区中。

这种情况下的扰动补偿程序,就可根据扰动用这个数表实现补偿。图3-29即为4种PLC程序。

978-7-111-39745-8-Chapter04-33.jpg

图3-29 补偿控制梯形图程序

从图可知,图3-29a,用了两条应用指令。一是“MOV”指令,用“一路模拟量BCD码”对指针赋值。另一为“BIN”指令,把指针指向的DM地址的内容,转换为十六进制数,再传送给“模拟量输出”。与图3-6对照,这里的“一路模拟量BCD码”与“物料流入量”对应,“模出通道”与“蒸汽流量”对应。

图3-29b用了4条应用指令。一是MOV-DW指令,读取VW100的地址。二是I-DI转换指令,把模拟量输入字转为双字。三是ADD-DI双字加指令,进行指针计算。四是MOV-W字传送指令,把指针指向地址的数据送“模拟量输出”。与图3-64对照,这里的“模拟量输入”与“物料流入量”对应,“模拟量输出”与“蒸汽流量”对应。

图3-29c也用了4条应用指令。一是RD3A指令,读取模拟量输入存于D0。二是MOV传送指令,把D0传送给变址器V0。三是MOV传送指令,从1000开始加变址器V0的值作寄存器D的地址的值传送给D2。四是WR3A写模拟量输出通道指令,把D2的值送“模拟量输出”。与图3-65对照,这里的D0与“物料流入量”对应,D2与“蒸汽流量”对应。

图3-29d用数组处理,先对所用变量声明如下:

978-7-111-39745-8-Chapter04-34.jpg

具体程序先是,使能模拟量输入模块及模拟量输出模块。接着当工作控制信号“WK”ON时,读“%IW4”模拟量输入字的值,进而进行变换,并赋值给数组下标“indx”。目的是使原来的0~36535之间的变化范围,改变为在0~100之间变化。接着,把下标“indx”值的数组元素的值赋值给输出模块“%QW4”。这样,当检测到模拟量输入值时,将按数组预设的值输出,实现对扰动的补偿。

这里的程序较简单,但执行这程序前必须先对指针数据区赋值。有时,也可能还要作一些插值运算,以使控制输出更精确些。

应指出的是,这里讲的控制输出,都是用模拟量输出单元。其实,用脉宽可调的脉冲或比例可调ON/OFF继电输出也是可以的。

5.跟踪控制

跟踪控制是指控制输出能按一定规律,随输入的变化而变化。这在过程控制中也很常见。图3-30所示即为和利时PLC这样的程序。

图3-30中,节1为使能模拟量输入模块。节2为使能模拟量输出模块。节3为当工作控制信号“WK”ON时,先是读“%IW4”模拟量输入字的值,进而进行变换,并赋值给“yy”。目的是使原来的0~36535之间的变化范围,改变为在0~1000之间变化。接着,把“yy”值乘k,然后再变换到1~3277,这个模拟量输出模块“%QW4”的变化范围。这里,设k为1,所以,“yy”乘k后被1000除,如为2,则为被2000除,其余类推。

有了它,“%QW4”的模拟量输出模块的输出,将跟踪模拟量输入模块“%IW4”输入的变化。

978-7-111-39745-8-Chapter04-35.jpg

图3-30 和利时PLC跟踪控制梯形图程序

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈