水温自动控制系统
该系统为一温度控制系统,由于无法确切确定电炉的物理模型,我们采用作t-T(时间-温度)曲线的方法,通过数值分析用三阶多项式拟合t-T曲线。由于采用计算机递归计算,阶数的多少不影响计算的复杂性,所以用三阶多项式拟合。设t(m)=a3m3+a2m2+a1m+a0式中t为时间,m为温度,a3、a2、a1、a0可以通过t-T曲线求出。由于多项式不能完全符合t-T曲线,存在着误差,假设误差为e,m是t-T曲线中的温度,对该误差采用回归递推AR模型进行运算。该模型形式如下:
e(m)=p1e(m-1)+p2e(m-2)+De(m-3)
其中De(m)为白噪声。对此式进行最小二乘法估计,求出参数p1、p2。为简化起见,忽略De(m)得
通过矩阵运算可以求出p1、p2的值,得出整个系统的数学模型为:t(m)+e(m)。在温度控制程序中通过递推即可达到控制目的。实际系统中,温控变量与环境温度有关,所以对不同的设定值,a3、a2、a1、a0可以适当调整,经过程序验证,该方法获得比较理想的效果。
三、方案的比较和实现
1、硬件系统设计
由前面的理论分析可见,本系统是一个典型的闭环控制系统。通过控制算法,对被控制对象中的加热元件电炉丝的平均功率进行控制,达到对水温控制的目的。系统中采用一片Intel8031单片处理器作为主控制器,前向通道为测温部分,后向通道为控制部分。通过按键和数码显示进行人机交互,通过RS232串行通信接口同PC联机进行温度图形化显示打印。
⑴ 测温部分 用于采集被控对象的温度参数。测温部分由温度电压转换,小信号放大及A/D转换三部分组成。
实际情况下,一般IC温度传感器的精度只有0.7℃~1℃,不符合本题目的静态误差0.2℃的要求。而电阻传感器的精度可以达到0.1℃,符合本题目要求。温度传感器是整个控制系统获取被控对象特征的重要部件,这里采用Cul00铜热阻作为温度传感器,其特征参数实测如图1所示。由特性曲线可见,这种热阻探头在系统测量的温度范围内线性特性良好,适用于温度采样使用。
图2 测量分部电路
将温度的变化转变为电压的变化,经过放大后送往A/D转换器转化为数字量以进行处理。Rx为传感器热阻,由电桥实现温度到电压的转换,由运放IC3完成信号的放大,由运放IC4完成信号的调整(具体电路见图2)。
设输入IC3的2、3端电压分别对应为Vi2、Vi1那么
Vout=K(R6/R3)(Vi2-Vi1)
Vout=K(R6/R3)[VrefRw2/(Rw2+R1)-VrefRx/(R2+Rx)]
其中Rx为传感器热阻值,Vref为基准源电压,K为调整系数。
由于Rl>>Rw2(如Rl=100kΩ,Rw2=1kΩ),同样R2>>Rx(如R2=100kΩ,Rx=1kΩ),因而Vout=K(R6/R4)Vref(Rw2-Rx)R2,在后级的A/D满刻度时,那么Vout=5V。
实际电路调节中,已经确定R6,置传感器于0℃环境,调节Rw2,使Vout=0V;置传感器于100℃环境,调节Rw6,使Vout=5V,则完成前向vwin
通道的调整。
前向模拟通道的抗干扰性及低漂移、稳定性决定于Vref的稳定性和运算放大器的特性值。系统中采用LM336-5.0作为Vref的基准源,LM336-5.0具有较低的电压漂移,稳定性可达20×10-6。运算放大器利用OP07超低漂移高精度运算,其共模抑制比达120dB,增益达104dB,温漂仅为0.7mV/℃,并且还具有小偏置电流、失调电流等特性,对于保证小信号的低噪音采集,起到了决定性的作用。
A/D采用一片砌ICL7109。ICL7109为双积分型模数转换器,12位输出,分辨率为5/4096=0.00122V。积分型A/D的抗干扰性优于逐次积分型A/D(如ADC0809)。在该系统中使用ICL7109保证了对采集入的变量的准确量化。本题中测试范围为40℃~90℃,温度的最小分辨率为0.2℃(发挥部分)。这样,整个系统的温度采用点数为50×5=250。采用一般8位A/D,分辨率为1/256,可以满足要求,但考虑到边界温度测定、系统分布参数影响、温度扩展等因素,8位A/D为临界应用,系统的线性度和准确度都难以得以保证。故我们采用12位A/D转换器。积分型A/D的缺点是转换时间长,ICL7109的最大转换次数为30次/秒。在数字控制系统中,采样周期的选择与系统的稳定性密切相关,在稳定条件下,采样频率fs应为系统最高频率的两倍,即按照采样定理,应该有fs≥2fmax。但采样周期也不应该过小,即选择与被控对象有关,典型情况下,在温度采样中,采样周期一般为10s~20s,因此这里ICL7109的采样速率完全可以胜任。具体电路见图3。
采用稳定的参考电压源,低漂运放和高精度、抗干扰的A/D,并结合电路的正确设计,保证了测温部分的精度和可靠性。
⑵ 控制部分 用于在闭环控制系统中对被控对象实施控制,被控对象为电炉丝,采用对加在电炉丝两端的电压进行通断的方法进行控制,以实现对水加热功率的调整,从而达到对水温控制的目的。对电炉丝通断的控制采用美国生产的固态继电器。它的使用非常简单,只要在控制端加上一TTL电平,即可实现对继电器的开关,使用时完全可以用74LS06驱动。
⑶ 人机交互系统(数码显示和按键输入)和803l最小系统 整个闭环系统的中央处理器采用8031单片处理器,基本系统如图3-1-4,其中采用一片RAM62256作为数据存储器使用。根据系统功能的要求,人机交互采用按键和数码管构成,利用8031的I/O采集按键开关量,采用动态显示方式显示实测温度和预设温度,显示数据及所用的控制数据由8031的P1口送出。
e(m一1)=a3(m-1)3+a2(m-1)2+a1(m-1)+a0+p1e(m-2)+p2e(m-3)
⑷ 通信接口 系统设计要求控制系统能同PC联机通信,以利用PC的图形处理功能打印显示温度曲线。由于8031串行口为TTL电平,PC串行口为RS232电平,使用一片MAX232作为电平转换驱动。通信速率为9600波特,数据每秒传输一次。
图3 ICL7109的电路图
⑸ 软件系统设计 系统软件占整个闭环控制的很大分量,控制算法在软件系统中实现。软件总体结构5所示。
根据理论分析可知:加热时间可以用t(m)+e(m)递推。m为传感器温度与设定温度差值,e为拟合曲线与实际曲线的误差。设温度设定值为t,传感器读出的值为t1,其递推公式为
e(m)=a3m3+a2m2+a1m+a0+p1e(m-1)+p2e(m-2)
e(m一1)=a3(m-1)3+a2(m-1)2+a1(m-1)+a0+p1e(m-2)+p2e(m-3)..........
e(2)=8a3+4a2+2a1+p1e(1)+p2e(O)
为便于进行复杂的运算,程序采用单片机语言Franklin C51编制。
图4 人机交互系统(数码显示和按键输入)和803l最小系统
测试方法和测试结果
1、测试环境
环境温度为24.7℃。
测试仪器:WD-2型数字温度计(扬州长江仪器厂,精度为0.1℃,测量范围为-40℃~100℃)
2、测量方法
⑴ 温控系统的标定误差 我们将标准温度计和温控系统探头放人同一容器中,选定若干不同的温度点,记录下标准温度计显示的温度和温控系统显示的温度进行比较。
⑵ 温控系统的静态误差 我们从两个方面来测量静态误差:
① 在不同的温度点同标准温度40℃、60℃、75℃、90℃的温度差。
② 在某一确定的温度点在一段时间内同标准温度的差值。
⑶ PC机显示及打印的温度变化曲线(略)
3、测试结果
对本温控系统进行各种环境、各种条件下测试得到数据,经分析可以得到以下结论:我们的系统完全满足设计要求,静态误差方面可以达到0.2℃的误差,在读数正确方面与标准温度计的读数误差为0.8%,即使使用两个标准温度计进行计量,其读数误差也在0.5%以下。
该系统具有较小的超调值,超调值大约为1.6%左右。虽然超调为不利结果,但另一方面却减小了系统的调节时间。从其曲线可以看出该系统为稳定系统。
评论
查看更多