亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

如何检查和校准湿度传感器

您的湿度传感器的准确度如何?通过这个项目了解一下。

湿度传感器很常见,相对便宜,并且有许多不同的种类。很多时候,我们检查数据表,将它们与接口一起使用,并且(只要值“看起来合理”)我们接受结果。

在这个项目中,我们演示了如何更进一步并验证湿度传感器的准确性。我们还说明了传感器校准的通用方法,并应用该方法校准结果以提高湿度测量的准确性

项目中使用的测试设置(从左到右、Quark D2000 微控制器板、传感器接口、微环境中的 HIH5030 传感器)。

项目基础

为了检查传感器的准确性,将获得的值与参考标准进行比较。为了检查湿度传感器的准确性,我们使用“饱和盐”方法来制作标准。简而言之,某些盐类(即离子化合物,如食盐或氯化钾)溶解在水溶液中时,会产生已知湿度的气氛(参见参考 PDF)。

这些化学特性用于创建已知相对湿度 (RH) 百分比(即参考标准)的微环境,并在微环境内读取传感器。具体来说,我们将在密封罐中制作溶液以保护大气,然后将连接的传感器放入密封罐中。随后,重复读取传感器并记录值。

通过使用几种不同的盐重复该过程,每种盐会产生不同的相对湿度,我们可以为被测传感器开发一个配置文件。由于我们知道每个微环境的相对湿度是多少,我们可以评估我们的传感器读数与这些已知值的偏差,从而评估传感器的准确性。

如果偏差很大,但并非不可克服,我们可以在软件中应用数学校准程序,以提高测量的准确性。

关于安全的一句话

<块引用>

在继续之前,您必须负责任地处理该项目中使用的化学品。

使用的盐

一般来说,您可以为参考标准生产的 RH 气氛越多,被测传感器的特性就越好。然而,在实际意义上,资源总是有限的。在该项目中,使用了四种参考标准,并选择了用于生产参考标准的盐,以涵盖可能的 RH 值范围,但也考虑到安全性、可用性和成本。

选择了以下盐。在氯化钠(食盐)的情况下,纯洁食盐是在当地杂货店廉价获得的。如果你走那条路,请避免使用含有碘或抗结块剂等添加剂的食盐。

项目中使用的盐
% RH(25°C 时) 来源 安全数据表
氯化锂 11.30 家庭科学工具 氯化锂的 SDS
氯化镁 32.78 家庭科学工具 MgCl 的 SDS
氯化钠 75.29 各种(见正文) 氯化钠的SDS
氯化钾 84.34 家庭科学工具 氯化钾的SDS

创建微环境

我们对几乎所有事物都有标准,甚至还有一个可以从水溶液中产生稳定的 RH(参见 ASTM E104 – 02(2012))。虽然我的工作台,也可能是你的,不是官方测试实验室,但尽可能严格地遵循标准中的规范是值得的。

另请注意,本项目中提供的结果虽然经过谨慎收集,但不应被解释为反映或指示任何品牌传感器准确性的整体质量声明。仅测试了少量传感器,并且使用的传感器具有不同的年龄和不同的使用历史。

对于每种盐,通过添加蒸馏水使其稠度类似于非常湿的沙子,从而形成泥泞的混合物。可以尝试四五汤匙化学品和一汤匙蒸馏水,但您可能需要做一些实验。

混合物在密封严密的小罐子中制成。玻璃甚至塑料应该可以很好地工作,只要它可以保持内部的气氛。可以在罐子的顶部开一个小孔,将连接线连接到传感器接口,然后连接到微控制器。然后将连接的传感器放置在混合物上方约 0.5-1.0 英寸处。注意传感器不要直接接触溶液,否则很可能会损坏。为了将连接固定到位并密封盖子上的孔,可以使用一些易于拆卸的接触油灰。

在进行最终读数之前,留出足够的时间进行平衡是很重要的。我凭经验测试了这个问题,在选定的测试用例中每分钟读取一次读数,最长可达 6 小时。根据我的经验,这比需要的时间长,我确定每个传感器和盐的平衡时间为 90-120 分钟。然后将最后五个读数的平均值用作最终值。对于所有情况,这五个值显示出很小的差异(如果有的话)。

此外,所有读数均在大约 25° C (± 1°) 的环境温度下获取,并且用于每个标准的 RH 值是针对 25° C 列出的值(有关值,请参阅此 PDF)。

载板上含有氯化钠的微环境中的 HIH5030 传感器。

硬件

微控制器

在这个项目中,我们使用 Quark D2000 微控制器连接传感器。 D2000 是具有 I2C 和模数接口的 3V 板。

但请记住,大多数具有适当接口的其他微控制器都可以使用。

传感器接口

项目中测试的传感器; A) HIH8121, B) HIH5030, C) DHT-22 (AM2302), D) HIH6030(在载板上)。

测试了四种不同类型的湿度传感器:DHT-22(使用了两种)、HIH5030、HIH6030 和 HIH8121。下面的示意图说明了用于每种类型传感器的简单接口,参考链接的数据表将提供背景信息用于电路。

DHT-22 到 D2000 接口。

DHT-22 BOM:U1、DHT-22传感器; R1,4.7kΩ电阻; C1,0.1 µF电容。

HIH5030 转 D2000 接口。

HIH5030 BOM:U1、HIH3050传感器; U2、MCP601P 运算放大器; C1,1.0 µF 电容; C2,0.1 µF电容。

HIH6030 转 D2000 接口。

HIH6030 BOM:U1、HIH6030传感器; R1 和 R2,2.2 kΩ 电阻器; C1,0.22 µF 电容; C2,0.1 µF电容。

HIH8121 转 D2000 接口。

HIH8121 BOM:U1、HIH8121传感器; R1和R2,2.2 kΩ电阻; C1,0.22 µF电容。

传感器软件

所有收集传感器数据的程序都是用C语言编写的,可以通过点击“湿度传感器项目代码”按钮下载。每个都是评论和直截了当的。对于每个传感器,程序只是每分钟读取一次传感器并将值发送到串行监视器。因此,它们应该很容易适应您的特定应用。

DHT22.c(左)和 HIH5030.c(右)输出的屏幕截图。

传感器评估程序

下表包含在四种微环境中评估传感器的数据。

测试传感器的相对湿度百分比(OBS =观察值,ERR =与标准差异的误差,RMSE =均值根平方误差)
DHT #1 DHT #2 HIH5030 HIH6030 HIH8121
参考 RH OBS 错误 OBS 错误 OBS 错误 OBS 错误 OBS 错误
11.30 (氯化锂) 12.56 1.26 16.29 4.99 13.02 1.72 20.79 9.49 12.31 1.01
32.78 (氯化镁) 32.36 -0.42 33.79 1.01 33.46 0.68 40.77 7.99 32.43 -0.35
75.29 (NaCl) 73.04 -2.25 74.50 -0.79 77.74 2.45 83.83 8.54 76.63 1.34
84.34 (氯化钾) 82.30 -2.04 82.15 -2.19 85.84 1.50 93.43 9.09 85.01 0.67
RMSE 1.657 2.799 1.708 8.796 0.920

在已知相对湿度的稳定环境中收集来自传感器性能的数据后,您可以对传感器的精度进行数值评估。

请注意,在表中,我们计算了每个 RH 标准下每个传感器的误差。然而,我们不能简单地平均这些值来评估传感器,因为有些值为正而其他值为负。如果我们简单地取平均值,则结果值将最小化平均误差,因为正值和负值会相互抵消。

相反,我们计算均方根误差 (RMSE) 来表征传感器的精度。 RMSE的公式如下:

其中 O 是观察到的传感器值,I 是理想的传感器值(即参考标准)。为了计算RMSE,我们将每个误差(与参考标准的偏差)平方,然后计算这些值的算术平均值,最后取平均值的平方根。

一旦您表征了传感器的精度,您就可以使用 RMSE 来决定是否需要校准传感器。在某些情况下,RMSE 很小并且完全可以为您的应用所接受,您可以合理地决定不需要校准。

例如,HIH8121 的结果令人印象深刻。 RMSE小于1%,所有样本点的误差小于2%。

另一方面,在某些情况下,您可能会发现传感器响应非常差且不规则,以至于您只是决定为您的应用程序需要另一个传感器。

校准的决定应始终考虑任务所需的准确度。尽管如此,对于表中的所有传感器,我们都可以通过校准来提高传感器读数的准确性。

传感器校准程序

要校准传感器,我们首先需要用数学方法确定将理想值与观测值相关联的函数。可以使用线性回归程序来确定该函数。

回归程序名称中的“线性”一词并不意味着线性函数。相反,该术语指的是变量的线性组合。结果函数可以是线性的或曲线的。下面的所有三个多项式函数都表示线性回归(注意:我们忽略了在这种情况下没有用的 0 度情况)。

  1. y =ax + b(一级,线性)
  2. y =ax 2 + bx + c(二次,二次)
  3. y =ax 3 + bx 2 + cx + d(三次,三次)

在当前项目中,我们使用四个参考标准(即 n =4)计算传感器值。因此,三次多项式是我们可以计算的最高次多项式。可能的最高次多项式总是 n – 1,在这种情况下,这意味着 3 (4 – 1)。

最小二乘程序通常用于线性回归。在此过程中,拟合一条直线,使每个基准点到直线的距离总和尽可能小。有许多可用的程序使用最小二乘程序来执行线性回归。您甚至可以使用 Excel(点击此处了解更多信息)。

还应该注意的是,我们不必使用线性回归。我们可以使用非线性回归。非线性回归的示例产生幂函数或傅立叶函数。然而,线性回归非常适合我们项目的数据,此外,软件校正(校准)很容易实现。事实上,在这个项目中,我不相信你会通过使用非线性回归得到什么。

选择多项式

理论上,我们希望使用最适合数据的多项式。也就是说,产生最小决定系数的多项式,表示为 r 2 (或 R 2 ,读作“R平方”)。越接近 r 2 为 1,拟合越好。使用最小二乘估计时,使用的多项式次数越高,拟合越好。

但是,您不必自动使用可能的最高次多项式。由于校准将在软件中进行,因此在某些情况下,使用低次多项式可能代表速度和/或内存优势,特别是如果使用高次多项式获得的精度非常小。

下面,我们将使用不同阶多项式演示 HIH6030 传感器的校准程序,在此过程中,我们将说明适用于您选择使用的任何多项式的一般程序。

使用上表中的数据,我们首先执行最小二乘回归程序以确定每个多项式的系数。这些值将来自使用的回归软件包。结果如下,包括 r 2 价值。

  1. 线性:y =ax + b; a =1.0022287, b =-8.9105659, r 2 =0.9996498
  2. 二次:y =ax 2 + bx + c; a =-0.0012638, b =1.1484601, c =-12.0009745, r 2 =0.9999944
  3. 三次方:y =ax 3 + bx 2 + cx + d; a =0.0000076, b =-2.4906103, c =1.2061971, d =-12.7681425, r 2 =0.9999999

现在可以使用计算函数修改观察值。也就是说,传感器读数可以如下表所示进行校准(注意 OBS、Corrected 和 ERR 值四舍五入到小数点后两位)。

HIH6030 使用多项式观测和校准的值
RAW 一级 第二学位 第三学位
参考 RH OBS 错误 更正 错误 更正 错误 更正 错误
11.30 20.79 9.49 11.93 0.63 11.36 0.06 11.30 0.00
32.78 40.77 7.99 31.95 -0.83 32.83 0.05 32.78 0.00
75.29 83.83 8.54 75.11 -0.18 75.85 0.55 75.29 0.00
84.34 93.43 9.09 84.73 0.39 84.83 0.49 84.34 0.00
RMSE 8.795736 0.562146 0.371478 0.00212

可以看出,与观察到的测量值相比,所有三个多项式的均方根误差均显着降低,这就是您校准的原因。下图说明了使用 1 次多项式的改进。请注意校准(校正)的数据点现在如何位于理想对角线附近。

阅读更多信息......

如何检查和校准湿度传感器

当前项目/帖子也可以使用:


制造工艺

  1. 湿度传感器工作及其应用
  2. DHT11 传感器及其工作原理
  3. 基本物联网 – RaspberryPI HDC2010 如何
  4. Python 和 Raspberry Pi 温度传感器
  5. Raspberry Pi 气象站
  6. Raspberry Pi 温度和光传感器
  7. Raspberry Pi 传感器和执行器控制
  8. 带有 Raspberry Pi 和湿度传感器的 Aeroponics
  9. Windows 10 IoT Core 和 SHT15
  10. 延期维护:定义、成本以及如何控制它
  11. Portenta 和热电偶传感器(带 MAX6675)
  12. 如何检查直流电机