生产中的各种参数都有着不同的量纲和数值,但在计算机控制系统的采集、A/D转换过程中已变为无量纲的数据,当系统在进行显示、记录、打印和报警等操作时,必须把这些测得的数据还原为相应量纲的物理量,这就需要进行标度变换。
标度变换的任务是把计算机系统检测的对象参数的二进制数值还原变换为原物理量的工程实际值。
例:
这是一个温度测控系统,某种热电偶传感器把现场中的温度 0 ~1200℃转变为0.48mV信号,经输入通道中的运算放大器放大到0.5V,再由8位A/D转换成00~FFH的数字量,这一系列的转换过程是由输入通道的硬件电路完成的。
CPU 读入该数字信号在送到显示器进行显示以前,必须把这一无量纲的二进制数值再还原变换成原量纲为℃的温度信号。比如,最小值00H应变换对应为0℃、最大值FFH应变换对应为1200℃。
这个标度变换的过程是由算法软件程序来完成的,标度变换有各种不同的算法,它取决于被测参数的工程量与转换后的无量纲数字量之间的函数关系。一般而言,输入通道中的放大器、A/D转换器基本上是线性的,因此,传感器的输入输出特性就大体上决定了这个函数关系的不同表达形式,也就决定了不同的标度变换方法。
主要方法有:线性式变换、非线性式变换、多项式变换以及查表法。
一、线性式变换
线性标度变换是最常用的标度变换方式,其前提条件是传感器的输出信号与被测参数之间呈线性关。
例:某加热炉温度测量仪表的量程为200 ~ 800℃,在某一时刻计算机系统采样并经数字滤波后的数字量为CDH,求此时的温度值是多少?(设该仪表的量程是线性的)。
解:根据式(6-10)已知,A0 = 200℃, Am = 800℃,Nx = CDH = (205)D,Nm= FFH = (255)D。所以此时的温度为
二、非线性式变换
如果传感器的输出信号与被测参数之间呈非线性关系时,上面的线性变换式均不适用,需要建立新的标度变换公式。由于非线性参数的变化规律各不相同,故应根据不同的情况建立不同的非线性变换式,但前提是它们的函数关系可用解析式来表示。
例如,在差压法测流量中,流量与差压间的关系为:
式中:Q――流体流量;
K―― 刻度系数,与流体的性质及节流装置的尺寸有关;
P――节流装置前后的差压。
可见,流体的流量与被测流体流过节流装置前后产生的压力差的平方根成正比,于是得到测量流量时的标度变换公式为
式中:Q
0―― 差压流量仪表的下限值;
Q
m―― 差压流量仪表的上限值;
Q
x―― 被测液体的流量测量值;
N
0―― 差压流量仪表下限所对应的数字量;
N
m―― 差压流量仪表上限所对应的数字量;
N
x―― 差压流量仪表测得差压值所对应的数字量。
对于流量仪表,一般下限皆为0,即Q
0>0,所以上式可简化为
三、多项式变换
还有些传感器的输出信号与被测参数之间虽为非线性关系,但它们的函数关系无法用一个解析式来表示,或者解析式过于复杂而难于直接计算。这时可以采用一种既计算简便又能满足实际工程要求的近似表达式──插值多项式来进行标度变换。
插值多项式是用一个n次多项式来代替某种非线性函数关系的方法。其插值原理是:被测参数y与传感器的输出值x具有的函数关系为y= f(x),只知道在n+1个相异点处的函数值为: f(x0) = y0,f(x1) = y1,…,f(xn) = yn。现构造一个n次多项式Pn(x)= anxn+ an-1xn-1+ …+ a1x + a0 去逼近函数y = f(x),把y = f(x)中这n+1个相异点处的值作为插值代入n次多项式Pn(x),便可以获得n+1个一次方程组:
式中x0,x1,…,xn是已知的传感器的输出值,y0,y1,…,yn是被测参数,可以求出n+1个待定系数a0、a1、…,an,从而构造成功一个可代替这种函数关系的可插值多项式Pn(x)。
一般来说,增加插值点和多项式的次数能提高逼近精度。但同时会增加计算时间,而且在某些情况下反而可能会造成误差的摆动;另一方面,对于那些带拐点的函数,如果用一个多项式去逼近,将会产生较大的误差。
为了提高逼近精度,且不占用过多的机时,较好的方法是采用分段插值法。分段插值法是将被逼近的函数根据其变化情况分成几段,然后将每一段区间分别用直线或抛物线去逼近。分段插值的分段点的选取可按实际曲线的情况灵活决定,既可以采用等距分段法,又可采用非等距分段法。
图中曲线为热敏电阻的负温度-电阻特性,折线L0、L1、L2代替或逼近曲线。当获取某个采样值R后,先判断R的大小处于哪一折线段内,然后就可按相应段的线性化公式计算出标度变换值。其计算公式是:
-k0(R - R0) + t3 R0≤R≤R1
t = -k1(R - R1) + t2 R1≤R≤R2
-k2(R R2) + t1 R2≤R≤R3
式中k0、k1、k2分别为线段L0、L1、L2的斜率。
同样,分段数越多,线性化精度越高,软件开销也相应增加。分段数应视具体情况和要求而定。当分段数多到线段缩成一个点时,实际上就是另一种方法――查表法。
四、查表法
所谓查表法就是把事先计算或测得的数据按照一定顺序编制成表格,查表程序的任务就是根据被测参数的值或者中间结果,查出最终所需要的结果。它是一种非数值计算方法,利用这种方法可以完成数据的补偿、计算、转换等各种工作。比如输入通道中对热电偶特性的处理,可以用非线性插值法进行标度变换,也可以采用精度更高效果更好的查表法进行标度变换――利用热电偶的mV-℃分度表,通过计算机的查表指令就能迅速便捷地由电势mV值查到相应的温度℃值;当然控制系统中还会有一些其它参数或表格也是如此,如对数表、三角函数表、模糊控制表等。
查表程序的繁简程度及查询时间的长短,除与表格的长短有关外,很重要的因素在于表格的排列方法。一般来讲,表格有两种排列方法:(1) 无序表格,即表格中的数据是任意排列的;(2) 有序表格,即表格中的数据按一定的顺序排列。表格的排列不同,查表的方法也不尽相同。
具体的查表方法有:顺序查表法,计算查表法,对分搜索法等。