水位传感器如何工作并与Arduino接口

水位传感器如何工作并与Arduino接口-有驾
如果您曾经遇到过热水器爆炸或试图制造潜水电子设备的情况,那么您就会知道检测周围何时有水是多么重要。
有了这个水位传感器,您就可以做到!
该传感器可用于测量水位,监控集水坑,检测降雨或检测泄漏。
该传感器具有一系列十个裸露的铜迹线,其中五个是电源迹线,另外五个是感测迹线。
这些走线是隔行扫描的,因此每两个电源走线之间只有一个感测走线。
通常,这些迹线没有连接,但浸入水中时会被水桥接。
水位传感器如何工作并与Arduino接口-有驾
板上有一个电源LED,当板上电时,该LED会亮起。
水位传感器的工作非常简单。
一系列裸露的平行导体一起用作可变电阻器(就像电位计一样),其电阻根据水位而变化。
电阻的变化对应于从传感器顶部到水表面的距离。
阻力与水的高度成反比:
传感器根据电阻产生输出电压,通过测量可以确定水位。
水位传感器非常易于使用,只有3个引脚可以连接。
水位传感器如何工作并与Arduino接口-有驾
S(信号)引脚是模拟输出,将连接到Arduino上的模拟输入之一。
+(VCC)引脚为传感器供电。建议使用3.3V–5V之间的电压为传感器供电。请注意,模拟输出将根据为传感器提供的电压而变化。
–(GND)是接地连接。
让我们将水位传感器连接到Arduino。
首先,您需要为传感器供电。为此,您可以将模块上的+(VCC)引脚连接到Arduino上的5V,并将–(GND)引脚接地。
然而,这些传感器的一个普遍已知的问题是它们在潮湿环境中的寿命短。探针通电后,腐蚀速度将显着提高。
为克服此问题,我们建议您不要持续为传感器供电,而应仅在获取读数时才为其供电。
一种简单的方法是将VCC引脚连接到Arduino的数字引脚,然后根据需要将其设置为HIGH或LOW。因此,我们将VCC引脚连接到Arduino的数字引脚#7。
最后,将S(信号)引脚连接到Arduino的A0ADC引脚。
下图显示了接线。
水位传感器如何工作并与Arduino接口-有驾
电路构建完成后,将以下草图上传到Arduino。
草图上传后,打开“串行监视器”窗口以查看Arduino的输出。当传感器没有触摸任何东西时,您应该看到一个值为0的值。要看到它有水感,可以先倒一杯水,然后慢慢将传感器放入其中。
水位传感器如何工作并与Arduino接口-有驾
传感器未设计为完全浸入水中,请小心安装,以使仅PCB上裸露的走线会与水接触。
草图从声明传感器的+(VCC)和S(信号)引脚连接的Arduino引脚开始。
接下来,我们定义一个变量val来存储当前水位。
现在,在“设置”部分中,我们首先将与传感器的电源连接声明为输出,然后将其设置为低电平,这样一开始就没有电流流过传感器。我们还设置了串行监视器。
在循环部分,我们readSensor()以一秒钟的间隔重复调用函数,并打印返回的值。
该readSensor()函数用于获取当前水位。它将传感器打开,等待10毫秒,从传感器读取模拟值,将传感器关闭,然后返回模拟值。
为了从水位传感器中获得准确的读数,建议您首先针对计划要监视的特定类型的水进行校准。
众所周知,纯净水是不导电的。实际上是水中的矿物质和杂质才使其具有导电性。因此,根据您使用的水的类型,您的传感器可能或多或少敏感。
在开始存储数据或触发事件之前,您应该查看从传感器实际获得的读数。
使用上面的草图,请注意当传感器完全干燥时-vs-部分浸入水中-vs-当传感器完全浸入时传感器输出的值。
例如,使用上面的相同电路,当传感器干燥(0),部分浸入水中(〜420)以及完全浸入水中时,您会在串行监视器中看到接近以下值的值(〜520)。
水位传感器如何工作并与Arduino接口-有驾
此测试可能需要反复试验。掌握好这些读数后,如果您打算触发操作,就可以将它们用作阈值。在下一个示例中,我们将这样做。
在下一个示例中,我们将制造一个便携式水位传感器,该传感器将根据水位点亮LED。
我们将使用上一个示例中的电路。这次我们只需要添加一些LED。
通过220Ω限流电阻将三个LED连接到数字引脚#2,#3和#4。
如下图所示连接电路:
水位传感器如何工作并与Arduino接口-有驾
电路构建完成后,将以下草图上传到Arduino。
在此草图中,定义了两个变量。lowerThreshold和upperThreshold。这些变量代表我们的阈值水平。
低于下限阈值的任何东西都会触发红色LED亮起。任何高于上限阈值的指示灯都会点亮绿色LED。这些之间的任何东西都会打开黄色的LED。