校准热敏电阻的最简单方法是什么?

电器工程 热敏电阻 校准
2022-01-12 22:30:48

作为一个无法使用实验室设备的爱好者,我似乎真的不可能校准我拥有的热敏电阻。

当然也有经过校准的温度传感器,例如 DS18B20,但专门用于 Aruino UNO 等慢速 MCU 的热敏电阻(与新的 MCU 相比)更灵敏。

在不使用实验室设备的情况下校准热敏电阻有哪些选择?

4个回答

读取热敏电阻有点棘手。上述校准方法不会产生错误检测,它会创建对数曲线的两个点(热敏电阻响应曲线。

这意味着,对于每 0.1°C 的温度变化,相应的电阻变化将根据温度范围而变化。 在此处输入图像描述

起初,您可能会看到与实际温度相差 2 到 5°C 的误差,但没有误差,只是读数不好。

你没有发布任何关于你如何阅读这个热敏电阻的细节,Arduino可能是?我必须说,有些库根本不工作,所以你必须创建一个特殊的函数来做到这一点。

发布有关如何表征和读取热敏电阻的详细说明。 帖子是西班牙语,但在代码标签中,所有解释都是用简单的英语。

一旦您获得了 ABC 系数,即使在 6m 长的 LAN 线路中,您的误差也将与另一次测量相比约为 0.1°C。

对 4 个热敏电阻的测试 该测试同时读取了 4 个热敏电阻,您可以看到我在手指中短暂握住的其中 2 个的温度差异很小。

在杯子里装满冰块,然后倒入水,加满水。偶尔搅动一下。当冰开始融化时,您将处于 0°C。将传感器插入水中并读取读数。

如果您的传感器可以忍受,请将其放入一壶开水中。在海平面上,这将为您提供 100°C 的参考读数。

如果您需要对传感器进行热缩防水处理,则必须留出一些时间让读数稳定。

示意图

模拟此电路- 使用CircuitLab创建的原理图

图 1. 简单的线性校准曲线。

  • y1 是 0°C 时的电阻、电压或 ADC 读数。
  • y2 是 100°C 时的电阻、电压或 ADC 读数。

$$ T = 100 \frac{y - y1}{y2-y1} $$ 其中y = 在温度T下的读数

正如评论中所指出的,如果您使用的是热敏电阻,则需要检查数据表的线性度。如果这种简单的方法不够好,您将不得不在微控制器中使用多项式计算或查找表。

校准热敏电阻(或大多数传感器)是一个两步过程:

  1. 测量校准数据
  2. 设计一个适合该数据的校准法则

第一步是最难的,不幸的是,这是我经验最少的一步。然后我将只用非常笼统的术语来描述它。第二步主要是数学。

测量校准数据

您必须用 (T, R) 对填写表格,即在已知温度下测量的电阻值。您的校准数据应涵盖您在实际使用中所需的整个温度范围。超出此范围的数据点不是很有用。否则,您拥有的数据点越多越好。

为了测量热敏电阻的电阻,我建议您 不要使用欧姆表。改用您将用于实际校准后测量的相同设置。这样,电阻测量中的任何系统误差(如 ADC 偏移和增益误差)都将被校准。

要了解温度,您有两种选择:使用固定温度点(例如,沸水或融化的冰)或使用已校准的温度计。定点是温度校准的黄金标准,但很难让它们正确,而且您可能不会在您关心的温度范围内找到其中的许多。

使用已知良好的温度计可能会更容易,但仍有一些警告:

  • 您应该确保热敏电阻和参考温度计处于相同温度
  • 您应该保持该温度稳定足够长的时间,以使两者达到热平衡。

将两者放在一起,放在具有高热惯性的外壳(冰箱或烤箱)中可能会有所帮助。

显然,参考温度计的准确性在这里是一个非常重要的因素。它应该比您对最终测量精度的要求更加准确。

拟合校准定律

现在您需要找到一个适合您的数据的数学函数。这被称为“经验拟合”。原则上,任何法律都可以做到,只要它离数据点足够近。多项式在这里是最受欢迎的,因为拟合总是收敛的(因为函数相对于它的系数是线性的)并且它们的评估成本很低,即使在低级微控制器上也是如此。作为一种特殊情况,线性回归可能是您可以尝试的最简单的定律。

但是,除非您对非常窄的温度范围感兴趣,否则 NTC 热敏电阻的响应是高度非线性的,不太适合低次多项式拟合。然而,变量的策略性改变可以使你的定律几乎是线性的并且很容易适应。为此,我们将通过一些基本的物理学来转移注意力……

NTC 热敏电阻中的导电是一个热激活过程。然后可以通过 Arrhenius 方程对电导进行建模:

G = G exp(-E a /(k B T))

其中 G 称为“指前因子”,E a活化能,k B玻尔兹曼常数,T 是绝对温度。

这可以重新排列为线性定律:

1/T = A + B log(R)

其中 B = k B /E a ; A = B log(G ) ; log() 是自然对数。

如果您获取校准数据并绘制 1/T 作为 log(R) 的函数(这基本上是轴交换的Arrhenius 图),您会注意到它几乎是一条直线,但并不完全是一条直线。偏离线性主要是因为指前因子与温度有轻微的相关性。尽管如此,曲线还是足够平滑,可以很容易地用一个低次多项式拟合:

1/T = c 0 + c 1 log(R) + c 2 log(R) 2 + c 3 log(R) 3 + ...

如果您感兴趣的温度范围足够短,那么线性近似值可能对您来说就足够了。然后,您将使用所谓的“β 模型”,其中 β 系数为 1/B。如果您使用三次多项式,您可能会注意到 可以忽略c 2系数。如果你确实忽略了它,那么你就有了著名的Steinhart-Hart 方程

一般来说,多项式的次数越高,它应该越适合数据。但是如果度数太高,你最终会 过拟合在任何情况下,拟合中的自由参数的数量都不应超过数据点的数量。如果这些数字相等,则该定律将完全拟合数据但您无法评估拟合优度。请注意,此热敏电阻计算器 (在评论中链接)仅使用三个数据点来提供三个系数。这是初步近似校准的上帝,但如果我需要准确性,我不会依赖它。

我不会在这里讨论如何实际执行拟合。用于制作任意数据的软件包比比皆是。

线性化温度计具有增益和偏移误差。

  • 双极电源可能会在 0V 时偏移为零。
  • 单电源桥将有一些 Vref 或 R 与 Vref 或 Vcc 的比率,其中偏移在该设计温度下为零。通常这是对称的,因此这将对应于您的设计范围的中点。
  • 热敏电阻在 25'C 下使用具有 2 个变量的特定灵敏度曲线进行校准。

  • 要校准它,您只需要 2 次测量

    • Null 调整其中误差电压 =null = 0 , Vt=Vref
    • T max 处的增益调整
      • 对于典型的 4 R 电桥,通常是中点温度。
  • 使用任何更好的温度计进行校准或
    • 使用冰水和沸水 0, 100'C