6.4数字控制器的工程实现数字控制器是公共子程序,那就应该在设计时,必须考虑各种工程实际问题,并含有多种功能,以便用户选择。数字控制器的算法程序可被所有的控制回路公用,只是各控制回路提供的原始数据不同。因此,必须为每个回路提供一段内存数据区(即线性表),以便存放参数。数字控制器算法的工程实现可以分为6个部分,如下图所示。6.4.1给定值和被控量处理•给定值处理包括选择给定值SV和给定值变化率限制SR两部分。•通过选择软开关CL/CR,可以构成内给定状态或外给定状态;通过选择软开关CAS/SCC,可以构成串级控制或SCC控制。外给定内给定•(1)内给定状态当软开关CL/CR切向CL位置时,选择操作员设置的给定值SVL。这时系统处于单回路控制的内给定状态,利用给定值键可以改变给定值。(2)外给定状态当软开关CL/CR切向CR位置时,给定值来自上位计算机、主回路或运算模块。这时系统处于外给定状态。在此状态下,可以实现以下两种控制方式。①SCC控制:当软开关CAS/SCC切向SCC位置时,接收来自上位计算机的给定值SVS,以便实现二级计算机控制。②串级控制:当软开关CAS/SCC切向CAS位置时,给定值SVC来自主调节模块,实现串级控制。(3)给定值变化率限制为了减少给定值突变对控制系统的扰动,防止比例、积分饱和,以实现平稳控制,需要对给定值的变化率SR加以限制。变化率的选取要适中,过小会使响应变慢,过大则达不到限制的目的。综上所述,在给定值处理中,共具有三个输入量(SVL,SVC,SVS),两个输出量(SV,CSV),两个开关量(CL/CR,CAS/SCC),一个变化率(SR)。为了便于PID控制程序调用这些量,需要给每个PID控制模块提供一段内存数据区,来存储以上变量。2.被控量处理•为了安全运行,需要对被控量PV进行上下限报警处理,即:•当PV>PH(上限值)时,则上限报警状态(PHA)为“1”;•当PV<PL(下限值)时,则下限报警状态(PLA)为“1”。•当出现上、下限报警状态(PHA,PLA)时,它们通过驱动电路发出声或光,以便提醒操作员注意。为了不使PHA/PLA的状态频繁改变,可以设置一定的报警死区(HY)。•为了实现平稳控制,需要对参与控制的被控量的变化率PR加以限制。变化率的选取要适中,过小会使响应变慢,过大则达不到限制的目的。•被控量处理数据区存放一个输入量PV,三个输出量PHA、PLA和CPV,四个参数PH、PL、HY和PR。6.4.2偏差处理•1.计算偏差:根据正/反作用方式(D/R)计算偏差DV,•当D/R=0,代表正作用,此时偏差DV=CPV-CSV;•当D/R=1,代表反作用,此时偏差DV=CSV-CPV;•2.偏差报警:•对于控制要求较高的对象,不仅要设置被控制量CPV的上、下限报警,而且要设置偏差报警。•当偏差绝对值|DV|>DL时,则偏差报警状态DLA为“1”。输入补偿量给定值反馈值3.输入补偿根据输入补偿方式ICM状态,决定偏差DVC与输入补偿量ICV之间的关系,即当ICM=0,代表无补偿,此时CDV=DVC;当ICM=1,代表加补偿,此时CDV=DVC+ICV;当ICM=2,代表减补偿,此时CDV=DVC-ICV;当ICM=3,代表置换补偿,此时CDV=ICV。利用加、减输入补偿,可以分别实现前馈控制和纯滞后补偿(Smith)控制。4.非线性特性为了实现非线性PID控制或带死区的PID控制(教材P91),设置了非线性区-A至+A和非线性增益K,非线性特性如图所示。即当K=0时,则为带死区的PID控制;当0<K<1时,则为非线性PID控制;当K=1时,则为正常的PID控制。偏差处理数据区共存放一个输入补偿量ICV,两个输出量DLA和CDV,两个状态量D/R和ICM,以及四个参数DL、-A、+A和K。补:非线性PID:0<K<1K*DV∣DV∣≤ADVC=DV∣DV∣>AK常取0.25,0.5等。K=1为正常的PID。死区A是一个可调的参数,其具体数值可根据实际控制对象由实验确定。A值太小,调节动作过于频繁,不能达到稳定对象的目的。但A值也不能过大,否则系统将产生很大的滞后,影响控制精度。6.4.3控制算法的实现•在自动状态下,需要进行控制计算,即按照各种控制算法的差分方程,计算控制量U,并进行上、下限限幅处理。•以PID控制算法为例,当软开关DV/PV切向DV位置时,则选用偏差微分方式;当软开关DV/PV切向PV位置时,则选用被测量...