简化许多窗口比较器

电器工程 比较器 热敏电阻 优化
2022-01-27 16:24:30

我有 8 个热敏电阻,我必须确保它们每个都在温度窗口内。它们都有相同的窗口,我不在乎哪些或多少在有效范围内,我只需要知道它们是否都在(相同的)窗口内。这是一个纯硬件解决方案,因此 ADC 读取的软件排序是不可能的。

我目前最好的解决方案是使用一堆比较器 IC,并为每个热敏电阻实现一个单独的窗口比较器。为了优化解决方案,我可以使用多个四路比较器,每个比较器都有一个开漏输出,以便我可以将它们全部连接起来。尽管如此,本质上它是相同的电路。我可以制作一次参考/触发电压,缓冲,然后提供给所有比较器。

只是简单地在问题上扔一堆比较器,我确实觉得很愚蠢。我不确定是否有更好的方法,我主要是在尝试优化电路板空间。你知道一些创造性的方法吗?例如,选择所有热敏电阻的最小/最大电压并使用单个窗口比较器(编辑:两个比较器 ofc),恕我直言,这会导致更大的解决方案,因此不是一个好的答案,我只是提到这一点以获得灵感。

编辑:我知道基于软件的解决方案是最好的。这就是为什么我在开头和前面提到它以防止每个人都建议它。以这种方式定义问题的原因是因为这是一个安全电路,并且规范要求我在软件监视器之外实现纯硬件解决方案。所以基于软件的解决方案已经存在,我“只是”需要找到实现基于硬件的解决方案的最佳方法。

4个回答

我认为布赖恩的非软件答案是最好的,但这是一个纯粹的模拟解决方案。使用一个固有地选择最高电压输入(从几个)并将其置于输出的电路。同上电路以获得最低电压。

考虑精密整流器: -

在此处输入图像描述

它产生的输出电压在其正范围内跟随输入电压。现在考虑当你有两个这样的输入时会发生什么: -

在此处输入图像描述

V1和V2中的哪一个最高将赢得驱动输出线的战斗。对 8 个输入进行步进和重复,然后对反向连接的二极管执行相同的操作,您就有了一个解决方案,可以生成两个输出电压,代表来自几个不同电压源的最高和最低电平。

我不是 100%,但我认为您可以将运算放大器重新用于最低电压。也许我错了?

然后在两条线上使用比较器来确定八条线中的一条是否超出范围。

一个窗口比较器、一个 3 位计数器和一个 8:1 模拟多路复用器,用于将一个热敏电阻连接到比较器。

如果您只需要知道它们都很好;这是3个芯片,工作完成。(74HC163、74HC4051、比较器,加上类似 555 的时钟)。

正如 Andy 所说,MUX(例如 74HC4051)具有相当低的导通电阻,因此每个热敏电阻连接到一个模拟输入,而另一侧的一个单独的电阻提供分压器。如果热敏电阻都连接到 GND,则电阻变为 5V。

示意图

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

如果您需要记录/显示哪些不符合规范,您可以开始添加电路,例如 3-8 线解码器(另外一个 IC,74HC138)来驱动八个 LED;有罪的当事人将轮流眨眼。

如果您需要更多,请选择 MCU 和软件。

改进用作安全电路的多路复用解决方案的建议: 将多路复用器输入之一预设为安全窗口之外已知的输入(或什至两个输入,一个低于一个以上)。当在多路复用器上选择相关输入时,检查比较器是否有“窗外”响应。

最好用一个(同步最好)计数器驱动多路复用器,该计数器的分辨率比您需要的高一倍(并且时钟速度快两倍):最低有效计数器位产生一个很好的触发信号,因此您可以将比较器的状态加载到一个边沿触发的 D 触发器,在它有足够的时间来稳定之后——并且这个触发信号也可以通过逻辑安全地选通,具体取决于计数器状态到不同的 D 触发器(例如,一个用于每个热敏电阻,一个用于热敏电阻,一个用于自身-我上面建议的测试频道)。

为了更安全,复制整个电路。虽然热敏电阻和相关输入在理论上仍然是单点故障,但您使用窗口比较器的事实应该可以防止热电偶上的完全短路或开路被误读为错误的 OK(相应的偏差)。

这是一个6 x 窗口比较器 IC,这是一个四窗口比较器 IC
没有8,唉。

您可以使用 4 x ye olde LM339 四开漏比较器来满足需求。
这些可以采用
1.7mm x 1.7mm(3mm x 3mm 包括焊盘)QFN
或 6.4 x 5mm TSSOP

数据表在这里

您还需要上下窗口参考电压(3 个电阻)和一个输出上拉电阻。