[0007] 本发明针对采用开关式压电阀的阀门定位器在控制精度和快速性存在不足的问题,提供一种智能阀门定位器控制系统及控制方法,该系统通过参数自整定模块整定出闭环控制所需的参数,其中包括调节阀行程类型、端点位置、充气阶段最大超调量、排气阶段最大超调量、充气阶段最佳运行PWM、排气阶段最佳运行PWM、充气阶段最小驱动PWM、排气阶段最小驱动PWM。闭环控制模块借助参数自整定模块得到的控制参数以及目标阀位、实时阀位计算出所需的PWM波,然后PWM输出模块输出相应PWM波控制开关式压电阀的进气量和排气量,从而实现气动调节阀快速和准确的定位。
[0008] 本发明包括智能阀门定位器和气动调节阀,智能阀门定位器安装在气动调节阀的阀杆上,智能阀门定位器包括智能微处理器(型号为stm32l151c8t6)、阀位采集模块、人机交互模块、A/D转换模块、开关式压电阀。智能微处理器与阀位采集模块、开关式压电阀、人机交互模块、A/D转换模块连接,阀位采集模块与智能微处理器、A/D转换模块连接,人机交互模块和智能微处理器连接,A/D转换模块与智能微处理器、阀位采集模块连接,开关式压电阀与智能微处理器连接;智能微处理器内含系统所需的各类模块,用于根据目标阀位和实时阀位值,给出闭环控制所需的实时PWM波。
[0009] 所述的智能微处理器包括参数初始化模块、参数自整定模块、闭环控制模块、PWM输出模块、漏气检测模块、速度检测模块;参数初始化模块与参数自整定模块连接,用于恢复系统参数为出厂默认值;参数自整定模块与参数初始化模块、闭环控制模块、PWM输出模块、速度检测模块连接,用于参数自整定,整定闭环控制所需参数;闭环控制模块与参数自整定模块、速度检测模块、PWM输出模块连接用于计算实时PWM波以及开关式压电阀的工作状态;PWM输出模块与参数自整定模块、速度检测模块、闭环控制模块用于输出闭环控制模块获得的PWM波;漏气检测模块与PWM输出模块连接用于判断整个系统是否存在漏气;速度检测模块与PWM输出模块、闭环控制模块连接实时检测阀杆运行速度;
[0010] 所述的阀位采集模块用于采集实时阀位以及目标阀位;人机交互模块包括LCD和键盘,LCD主要用于显示实时阀位、控制精度、流量特性曲线以及参数自整定过程相关参数显示,键盘主要用于参数自整定时数据输入、控制精度选择、流量特性曲线选择;A/D转换模块主要用于将模拟电流信号转换成数字信号;开关式压电阀主要作用是把电信号转换成气动信号。
[0011] 一种智能阀门定位器控制方法,包括以下步骤:
[0012] 步骤A1:接入高压气源并且给定目标阀位,系统自动进入参数初始化模块,包括初始化控制精度β、性能指标α、顶端位置对应AD值Pfar、低端位置对应AD值Pnear、充气阶段最大超调量对应AD值Pover1、排气阶段最大超调量对应AD值Pover2、充气阶段最佳运行PWM初始值、排气阶段最佳运行PWM初始值、充气阶段最小驱动PWM初始值、排气阶段最小驱动PWM初始值,参数初始化完成后,通过键盘调整到漏气检测模块,检测整个系统的密闭性,判断是否存在明显漏气情况。若整个系统密闭连接,无明显的漏气现象存在,则继续执行步骤A2。若整个系统存在明显的漏气现象,则需要检查漏气位置,以及漏气产生的原因,消除漏气,然后继续执行步骤A2。
[0013] 步骤A2:进行一键自整定。通过智能阀门定位器人机交互模块中的键盘输入所需的控制精度β,输入所需的流量特性曲线,输入系统控制的性能指标α,等待输入完成,所有输入参数都会显示在LCD显示模块上,用户检查无误后,系统开始调用参数自整定模块。
[0014] 步骤A3:智能微处理器接收到目标阀位值r(t),并与从阀位采集模块采集的实时阀位值c(t)进行比较。如果误差e(t)=r(t)-c(t)大于用户设定的精度要求,则进入步骤A4;否则不进行任何操作。
[0015] 步骤A4:智能微处理器调用闭环控制模块,计算出给定目标阀位下不同时刻的PWM波,PWM输出模块产生相应PWM波发送给开关式压电阀,开关式压电阀以此控制进/排气量,实现阀位的精确控制。然后转入步骤A3,循环执行。
[0016] 所述的智能微处理器调用漏气检测模块,判断系统整机是否漏气的具体实现步骤如下:
[0017] 步骤B1:智能微处理器向开关式压电阀发出充气指令,并且PWM输出模块发送100%PWM波给开关式压电阀,使得开关式压电阀全速充气,直到阀位调整到目标位置,对于气开型调节阀此时处于全开阀位,对于气关型调节阀此时阀位处于全关阀位;调节开关式压电阀处于保持状态,即不充气也不进气,延时等待5分钟。
[0018] 步骤B2:阀位采集模块采集此时阀位,与目标阀位进行比较,若两者之间的误差e(t)超出精度允许范围,则认为整个系统存在明显漏气现象,需人工进行检查,消除漏气。
[0019] 所述的智能微处理器调用参数自整定模块,具体实现步骤如下:
[0020] 步骤C1:确定行程类型和端点位置,智能微处理器向开关式压电阀发出充气指令,并且PWM输出模块发送100%PWM波给开关式压电阀,使得开关式压电阀处于充气状态,阀位采集模块采集实时阀位,速度检测模块实时检测阀杆速度,记录充气过程阀杆的最大速度为Vup,以及最大速度位置对应AD值Pup1,所有速度单位均用1秒内AD值的变化量来表示;一旦速度等于0,立即记录此时阀位AD值即为顶端位置对应的AD值Pfar,并且智能微处理器发出排气指令,调整开关式压电阀处于排气状态,阀位采集模块采集实时阀位,速度检测模块检测实时阀杆速度,记录排气过程阀杆的最大速度为Vdown以及最大速度位置对应的AD值Pdown1,一旦速度等于0,立即记录此时阀位AD值即为低端位置对应AD值Pnear。若Pfar>Pnear则表明阀门为气开型,若Pfar<Pnear则表明阀门为气关型,行程范围FSR=|Pfar-Pnear|。
[0021] 步骤C2:确定充气阶段最大超调量,智能阀门定位器发出100%PWM波,并且发出充气指令,调整压电阀处于充气状态,阀位采集模块实时采集阀位,一旦阀位到达Pup1位置,智能微处理器立即向压电阀发出阀位保持指令,延时10秒钟记录此时阀位对应AD值Pup2,定义充气阶段最大超调量对应的AD值为Pover1=|Pup1-Pup2|。
[0022] 步骤C3:确定排气阶段最大超调量,智能微处理器向开关式压电阀发出充气指令,并且PWM输出模块发送100%PWM波给开关式压电阀,使得开关式压电阀处于充气状态,阀位采集模块采集实时阀位,速度检测模块检测实时阀杆速度,一旦速度为0,智能阀门定位器立即发出排气指令,调整压电阀为排气状态,阀位采集模块采集实时阀位,一旦阀位到达Pdown1位置,智能微处理器立即向压电阀发出阀位保持指令,延时10秒钟记录此时阀位对应AD值Pdown2,定义充气阶段最大超调量对应AD值为Pover2=|Pdown1-Pdown2|。
[0023] 步骤C4:整定充气阶段最佳运行PWM,具体实现包括以下子步骤:
[0024] 子步骤C4.1:定义最佳加速距离L1=λ*FSR为p00阀位距离p01阀位的大小,λ取值范围为0.1~0.3,*表示乘积,p00阀位比p01阀位小,p02=20%*FSR为要整定的这个阀位充气阶段最佳运行PWM,p01=p02-β*α*FSR,p03=p02+β*α*FSR,其中p01、p02、p03代表阀位,具体数值用所对应的AD值。
[0025] 子步骤C4.2:PWM输出模块输出充气阶段最佳运行PWM波初始值给开关式压电阀。
[0026] 子步骤C4.3:控制阀位到达p00位置处,智能微处理器向开关式压电阀发出充气指令,阀位采集模块采集实时阀位,一旦阀位到达p01位置处,智能微处理器立即向开关式压电阀发出保持指令,调节压电阀处于保持状态,延时5秒,记录阀位。
[0027] 子步骤C4.4:若阀位大于p03位置,表示超调,则以10%的幅度减小PWM波占空比,继续执行子步骤C4.3;若阀位小于p03位置,表示不超调,则以10%的幅度增加PWM波占空比,继续执行子步骤C4.3。
[0028] 子步骤C4.5:假设PWM波占空比为PP1时阀位超调,PWM占空比为PP2时阀位不超调,则开始折半查找,即设定PWM波占空比P=PP2+(PP1-PP2)/2,继续执行子步骤C4.3,循环执行多次即可得到p02阀位的充气阶段最佳运行PWM占空比。
[0029] 子步骤C4.6:循环执行子步骤C4.3-C4.5,分别整定p02=40%*FSR、p02=60%*FSR、p02=80%*FSR处充气阶段最佳运行PWM占空比。
[0030] 子步骤C4.7:通过最小二乘线性化拟合,即可得到不同阀位充气阶段最佳运行PWM占空比。
[0031] 步骤C5:整定排气阶段最佳运行PWM,具体实现包括以下子步骤:
[0032] 子步骤C5.1:定义最佳加速距离L2=λ*FSR为p10距离p11阀位的大小,p10阀位比p11阀位大,p12=20%*FSR要整定这个阀位排气阶段最佳运行PWM,p11=p12+β*α*FSR,p13=p12-β*α*FSR,其中p11、p12、p13代表阀位,具体数值用所对应的AD值。
[0033] 子步骤C5.2:PWM输出模块输出充气阶段最佳运行PWM波初始值给开关式压电阀。
[0034] 子步骤C5.3:控制阀位到达p10位置处,智能微处理器向压电阀发出排气指令,阀位采集模块采集实时阀位,一旦阀位到达p11位置处,智能微处理器立即向压电阀发出保持指令,调节压电阀处于保持状态,延时5秒,记录阀位。
[0035] 子步骤C5.4:若阀位小于p13位置,表示超调,则以10%的幅度减小PWM占空比,继续执行子步骤C5.3;若阀位大于p13位置,表示不超调,则以10%的幅度增加PWM占空比,继续执行步骤C5.3。
[0036] 子步骤C5.5:假设PWM占空比为PP1时阀位超调,PWM占空比为PP2时阀位不超调,则开始折半查找,即设定PWM占空比P=PP2+(PP1-PP2)/2,继续执行步骤C5.3,循环执行多次即可得到p12阀位的排气阶段最佳运行PWM占空比。
[0037] 子步骤C5.6:循环执行子步骤C5.3-C5.5,分别整定p12=40%*FSR、p12=60%*FSR、p12=80%*FSR处的最佳PWM占空比。
[0038] 子步骤C5.7:通过最小二乘线性化拟合,即可得到不同阀位排气阶段最佳运行PWM占空比。
[0039] 步骤C6:整定充气阶段最小驱动PWM,具体实现包括以下子步骤:
[0040] 子步骤C6.1:定义p21=20%*FSR为要整定的这个阀位充气阶段最小驱动PWM,p22=p21+β*α*FSR,其中p21、p22代表阀位,具体数值用所对应的AD值。
[0041] 子步骤C6.2:PWM输出模块输出充气阶段最小驱动PWM波初始值给开关式压电阀。
[0042] 子步骤C6.3:控制阀位到达p21位置处,智能微处理器向开关式压电阀发出充气指令,调节开关式压电阀处于充气状态,延时1秒,记录阀位。
[0043] 子步骤C6.4:若阀位大于p22位置,表示超调,则以2%的幅度减小PWM占空比,继续执行子步骤C6.3;若阀位小于p22位置,则以2%的幅度增加PWM占空比,继续执行子步骤C6.3。循环执行多次即可得到p21阀位的充气阶段最小驱动PWM占空比。
[0044] 子步骤C6.5:循环执行子步骤C6.3-C6.4,分别整定p21=40%*FSR、p21=60%*FSR、p21=80%*FSR处的充气阶段最小驱动PWM占空比。
[0045] 子步骤C6.6:通过最小二乘线性化拟合,即可得到不同阀位充气阶段最小驱动PWM占空比。
[0046] 步骤C7:整定排气阶段最小驱动PWM,具体实现包括以下子步骤:
[0047] 子步骤C7.1:定义p31=20%*FSR为要整定的这个阀位排气阶段最小驱动PWM,p32=p31-β*α*FSR,其中p31、p32代表阀位,具体数值用所对应的AD值。
[0048] 子步骤C7.2:PWM输出模块输出排气阶段最小驱动PWM波初始值给开关式压电阀。
[0049] 子步骤C7.3:控制阀位到达p31位置处,智能微处理器向开关式压电阀发出排气指令,调节开关式压电阀处于排气状态,延时1秒,记录阀位。
[0050] 子步骤C7.4:若阀位小于p32位置,表示超调,则以2%的幅度减小PWM占空比,继续执行子步骤C7.3;若阀位大于p32位置,则以2%的幅度增加PWM占空比,继续执行子步骤C7.3。循环执行多次即可得到p31阀位的排气阶段最小驱动PWM占空比。
[0051] 子步骤C7.5:循环执行子步骤C7.3-C7.4,分别整定p31=40%*FSR、p31=60%*FSR、p31=80%*FSR处的排气阶段最小驱动PWM占空比。
[0052] 子步骤C7.6:通过最小二乘线性化拟合,即可得到不同阀位排气阶段最小驱动PWM占空比。
[0053] 所述的智能微处理器调用闭环控制模块,闭环控制实现阀位快速定位包括阀位增大和阀位减小两个过程,具体实现步骤如下:
[0054] 阀位增大过程具体闭环控制步骤如下:
[0055] 步骤D1:根据阀位误差的大小,定义ε=β*FSR,δ=1.5*ε,e1=Pover1,将控制过程分为第一粗调区、第一细调区、第一微调区、死区。
[0056] 步骤D2:阀位采集模块采集实时阀位,若误差处于第一粗调区内,则执行步骤D2的子步骤,否则执行步骤D3。步骤D2的具体控制子步骤为:
[0057] 子步骤D2.1:智能微处理器发出充气指令给开关式压电阀,PWM输出模块发出100%PWM波给开关式压电阀,快速减小误差。
[0058] 子步骤D2.2:当阀位进入第一微调区时,智能微处理器立即根据实时阀位计算出此时对应的实时充气阶段最佳运行PWM,输出实时充气阶段最佳运行PWM波给开关式压电阀,控制阀位缓慢逼近目标位置。
[0059] 子步骤D2.3:当阀位平缓进入死区内,智能微处理器立即关闭PWM波输出模块,并且向开关式压电阀发出保持指令,控制阀位停留在死区内。
[0060] 步骤D3:阀位采集模块实时采集阀位,若误差处于第一细调区内,则执行步骤D3的子步骤,否则执行步骤D4,步骤D3的具体控制子步骤为:
[0061] 子步骤D3.1:智能微处理器发出充气指令给开关式压电阀,PWM输出模块发出100%PWM波给开关式压电阀。
[0062] 子步骤D3.2:速度检测模块检测实时速度,一旦速度大于零,智能微处理器立即根据实时阀位和目标阀位计算出对应的实时充气阶段最佳运行PWM,输出实时充气阶段最佳运行PWM波给开关式压电阀,控制阀位缓慢逼近目标位置。
[0063] 子步骤D3.3:当阀位平缓进入死区内,智能微处理器立即关闭PWM波输出模块,并且向压电阀发出保持指令,控制阀位停留在死区内。
[0064] 步骤D4:阀位采集模块采集实时阀位,若误差处于第一微调区内,则继续执行步骤D4的子步骤,否则执行D1,步骤D4的具体控制子步骤为:
[0065] 子步骤D4.1:智能微处理器立即根据实时阀位和目标阀位计算出对应的实时充气阶段最小驱动PWM,输出实时充气阶段最小驱动PWM给开关式压电阀,控制阀位缓慢逼近目标位置。
[0066] 子步骤D4.2:当阀位平缓进入死区内,智能微处理器立即关闭PWM波输出模块,并且向开关式压电阀发出保持指令,控制阀位停留在死区内。
[0067] 阀位减小过程具体闭环控制步骤如下:
[0068] 步骤E1:根据阀位误差的大小,定义-ε=-β*FSR,-δ=-1.5*ε,-e2=-Pover2,将控制过程分为第二粗调区、第二细调区、第二微调区、死区。
[0069] 步骤E2:阀位采集模块采集实时阀位,若误差处于第二粗调区内,则执行步骤E2的子步骤,否则执行步骤E3。步骤E2的具体控制子步骤为:
[0070] 子步骤E2.1:智能微处理器发出排气指令给开关式压电阀,PWM输出模块发出100%PWM波给开关式压电阀,快速减小误差。
[0071] 子步骤E2.2:当阀位进入第二微调区时,智能微处理器立即根据实时阀位计算出此时对应的实时排气阶段最佳运行PWM,输出实时充气阶段最佳运行PWM波给开关式压电阀,控制阀位缓慢逼近目标位置。
[0072] 子步骤E2.3:当阀位平缓进入死区内,智能微处理器立即关闭PWM波输出模块,并且向开关式压电阀发出保持指令,控制阀位停留在死区内。
[0073] 步骤E3:阀位采集模块实时采集阀位,若误差处于第二细调区内,则执行步骤E3的子步骤,否则执行步骤E4,步骤E3的具体控制子步骤为:
[0074] 子步骤E3.1:智能微处理器发出排气指令给开关式压电阀,PWM输出模块发出100%PWM波给开关式压电阀。
[0075] 子步骤E3.2:速度检测模块检测实时速度,一旦速度大于零,智能微处理器立即根据实时阀位和目标阀位计算出对应的实时排气阶段最佳运行PWM,输出实时排气阶段最佳运行PWM波给开关式压电阀,控制阀位缓慢逼近目标位置。
[0076] 子步骤E3.3:当阀位平缓进入死区内,智能微处理器立即关闭PWM波输出模块,并且向压电阀发出保持指令,控制阀位停留在死区内。
[0077] 步骤E4:阀位采集模块采集实时阀位,若误差处于第二微调区内,则继续执行步骤E4的子步骤,否则执行E1,步骤E4的具体控制子步骤为:
[0078] 子步骤E4.1:智能微处理器立即根据实时阀位和目标阀位计算出对应的实时排气阶段最小驱动PWM,输出实时排气阶段最小驱动PWM给开关式压电阀,控制阀位缓慢逼近目标位置。
[0079] 子步骤E4.2:当阀位平缓进入死区内,智能微处理器立即关闭PWM波输出模块,并且向开关式压电阀发出保持指令,控制阀位停留在死区内。
[0080] 所述的性能指标α取值范围为0~1,α值越大,表示阀位调节速度越快,调节时间越短,但可能会出现超调甚至震荡现象;α值越小,表示阀位调节速度越慢,调节时间越长,但能够避免阀位调整过程中出现超调甚至震荡现象;系统出厂默认提供的控制性能指标为0.6。
[0081] 本发明的有益效果在于:通过智能微处理器内的参数自整定模块,可以整定出气动调节阀的特性参数,在此基础上进行的闭环控制具有很好的自适应能力,克服了以往采用固定控制参数存在的控制系统不通用问题。同时,通过整定出最佳运行PWM和最小驱动PWM用于闭环控制,可以提高控制过程的快速性和准确性,同时能够避免超调和震荡现象产生。另外,可以通过调节性能指标α来调整快速性和准确性之前的关系。