液位感应可以通过多种不同的办法完成,我们也考试测验了多种办法。有时须要的是准确的液位丈量,而无需在液体内部放置任何东西。这在食品工业(用于罐中的液位感应)乃至汽车中的油箱液位感应等运用中尤其受欢迎。
我们之前曾考试测验利用激光 ToF 传感器来实现此目的,但这并不是实现此目的的最佳方法。

我们做了什么:
我们利用电容来丈量液位,通过在罐的外壁粘上两条铜带来丈量内部的液位。这两个铜带丈量电极之一相对付地的电容。
TI FDC1004 是一款将电容丈量和 ADC 集成在一个封装中的一体化芯片,称之为“电容数字转换器”。指定的运用包括靠近检测、手势识别和液位传感。
利用电容进行靠近感应和液位感应的事理是相同的。当两个平行的导电板以固定间隔放置时,就会产生电场。在这些板的边缘,会产生“边缘”效果。这是电容式传感运用的关键。
不同运用的电容感测可以通过不同的办法完成。在此运用中,我们利用“平行手指”方法来感测受液位影响的边缘电场线的数量。这会导致电容的眇小变革,然后丈量并校准到液位高度。
我们是怎么做的?
实际运用是一个更大的设置,但为了本文,我们在一个小水瓶上演示了相同的设置。我们粘贴了两条从Sparkfun购买的薄铜带(5 毫米宽)。
然后我们将个中一个电极连接到系统接地,另一个连接到 FDC1004 分线板的 CIN1 通道。最好将它们直接焊接到电极本身以避免任何杂散电容。
ProtoCentral FDC1004 分线板利用 I2C 标准接口连接到 Arduino Uno。该芯片连接到 Arduino 的 SCL 和 SDA 引脚(对付 Arduino Uno,这是 A4 和 A5)。它可以连接到任何掌握器或平台的 I2C 引脚,但供应的库仅适用于 Arduino。如果您利用的 Arduino 版天职歧于 Arduino Uno,请检讨哪些引脚对应于 I2C/TWI SDA 和 SCL 线。
数据通过 Arduino 的 UART 通过 USB 发送到打算机。该数据以 100 SPS 的速率连续发送,然后在代码中取均匀值,这有助于滤除噪声。
在这个例子中,我们刚刚将电容到水平高度转换硬编码到 Arduino 代码本身,但是,校准可用于为各种高度和液体类型设置相同的值。
我们利用蠕动泵从另一个瓶子中抽取的水测试了该设置。本文下方的链接中附有所有必需的代码。
把稳事变
任何传感或工程机制总是有它自己的一套限定。对付这个运用程序,这是我们把稳到的:电容式感应随意马虎受到外部杂散电容的影响,有时会使 ADC 饱和。然而,这是利用适当的屏蔽来修复的。校准是关键,准确校准很主要环境成分对电容有巨大影响,必须对其进行屏蔽和/或适当校正。更多详情资料可前往基于 Arduino UNO 的非打仗式电容式液位传感(事理图+接线图+代码) - 电路城
此方案版权归电路城用户所有,如作者不愿发布在头条可私信或前往电路城联系干系职员删除。







