本帖最后由 会笑的星星 于 2020-1-2 17:07 编辑
在设计气体报警类产品时,产品所使用的传感器一般受到三个因素的影响,一个是温度、一个湿度、一个就是在恒定的温湿度下,传感器自身的噪音(外界没有敏感气体,温湿度保持不变,但是传感器的输出电压会自己在一定范围内随机变化)。由于这几个因素的影响,可能造成产品的报警阀值不稳定的问题,有时候产品可能早于标定点报警,有时候晚于标定点报警。因此,有时我们需要针对这三种情况进行阀值补偿,以尽可能使任何时候的报警点与产品标定时一致。关于温度补偿方法我们后面再讲,这一篇文章主要说说假如我们需要对噪音进行阀值补偿可以怎么做。
一般而言,传感器的噪音不像温湿度那样对传感器有线性影响,比如温度升高,传感器在相同的浓度下输出电压增大。噪音则更像一个随机变量,它的变化有时候没有明显规律,这意味着即使在温湿度不变且没有任何气体的情况下,他有时候升高,有时候下降。而这上升或者下降有时候可能会影响报警阀值点,当噪音增大,报警阀值点升高,噪音下降,报警阀值点可能不变,也可能也下降,针对噪音与报警阀值点的这种关系,我们如何把噪音的影响考虑到报警阀值点中呢?
下面我介绍一种从理论来说可行的噪音的补偿方法,这种补偿方法应用了一个叫做相关系数的概念,通过求得这个系数,把噪音的影响补偿到报警阀值中。
我先介绍一下什么是相关系数。相关系数就是量化两组数据之间的线性相关性的相关程度,关于线性相关的意思就是一个组数据中某个值(x)增大则另一组对应数据(y)也增大,同理,x减少,y也减少,也就是说y与x服从一次函数关系:y=ax+b(我在这里的例子a>0,如果a<0,则x、y的变化是相反的),我们就说两组数据有线性相关性,而量化这个相关性大小的就是相关系数,它有如下性质:
1、 -1 ≤ ρ ≤ 1 1、ρ = 1表示两个随机变量是完全正相关2、ρ = 0 表示两个随机变量无关3、ρ = -1 表示两者完全负相关
它的计算公式如下:
其中,xi、yi为对应数据组中的某个值,x、y(字母上还有一横)为xi、yi对应数据组数据的算术平均值。
看上去很复杂,不过不用担心,你甚至都不用理解上述这个公式就能完成相关系数的计算,因为WPS或者Excel能很容易完成这个计算,如下图我使用wps做的一个例子,图中xi表示无敏感气体,恒定温湿度下的传感器输出电压,yi表示对应报警阀值点的变化,在实际中,这两组数据时需要从实验中获得的,这里我直接捏造了一些数据。我们的目的是想求出xi、yi相对变化的相关系数,图中这两列的相关系数ρ=0.86。这里之所以考察相对变化的相关系数而不是直接考察xi与yi之间的相关系数的目的是为了让相关系数的结果更稳定一些,尽量避免因为做实验的样机不同导致ρ出现比较大的离散性。
求得了这个系数,对我们要解决的噪音补偿问题有何用处呢。
一般而言,气体传感器在投入使用之前都需要在指定浓度下完成标定,以使产品检测到这个浓度时发出报警信号。我们在标定时,假设传感器在无敏感气体时,输出电压为V1,并保存到单片机中,然后注入目标浓度的气体以做为报警浓度,设此时输出的电压是V2 ,并保存到单片机中。这样,我们就获取到了在xi = V1 的情况下,yi对应的值yi = V2。现在我们要做的就是利用这两个数据以及上述的相关系数对传感器的阀值进行补偿,怎么做呢。
在正常使用时,假设传感器的噪音相比标定的V1升到了Vx(Vx > V1),其相对变化△X = (Vx-V1)/V1,此时对应的阀值点为Vy。由于ρ量化了xi的相对变化与yi相对变化的关联程度,我们有理由建立一个如下关系式:
△Y = (Vy - V2)/ V2 = ρ*△X,其中,△Y表示的是阀值的相对变化量。
通过这个关系式,我们就可以计算出当前阀值:Vy = V2 + ρ*△X*V2。
同理,假如Vx < V1,△X = (V1 - Vx)/V1,Vy = V2 - ρ*△X*V2。
依赖于相关系数,我们就可以把噪音对传感器的影响给补偿到阀值点中,以使传感器的报警点更为稳定。
总结来说,我们什么时候可以考虑使用相关系数呢?两组数据中一组是随机变量(意味着没有明显规律),该随机变量会导致另外一组数据的产生变化,此时我们就可以考虑使用使用这个系数来量化两组数据的线性相关性。
事实上,在实际中,有时候我们并不考虑这个噪音对阀值点的影响,这里仅以这个例子来说明协相关系数的一个应用,可能对你有用,也可能对你没用,不管现在有没有用,多知道一点说不定什么时候就用上了。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>