在本文中,我们将做一个Arduino水位传感器教程。我们将介绍如何连接传感器,它是如何工作的,以及一些基本的代码示例,让您开始您的项目。这种传感器有时也被称为水泄漏检测传感器。
观看Arduino水位传感器教程视频
水位传感器超级易用,只需连接3个引脚。地面,+ 5V和信号引脚。信号引脚是模拟输出,将连接到Arduino上的任何模拟输出。模拟传感器板在其上有几个铜迹线,但在浸没时桥接水。
纯净水是不导电的。实际上是水中的矿物质和杂质使它具有导电性。理解这一点很重要,因为您的传感器可能根据您的水的类型或多或少敏感,您可能需要更改代码中的数字以获得准确的读数。最终,我们只是在读取水中杂质的阻力。桥接的导线越多,电流通过就越容易。
使用Arduino上的模拟输入引脚读取传感器输出将得到0到500之间的整数(使用典型的公共供水)。
此项目的零件清单
以下是此项目的快速零件列表,以便您启动:
连接Arduino水位传感器
水位传感器的布线非常简单。我们将使用下面的连线图将其连接起来,并将其与串行控制台或您自己的代码一起使用。有一点很重要:如果您正在远程使用这个传感器,那么Arduino和这个传感器必须有一个共同的基础才能工作。普通接地不能通过变压器或USB接口工作。确保Arduino GND引脚已连接到您项目中的传感器GND引脚。
- 水传感器信号, ArduinoA5
- 水传感器+ 5 v, Arduino5伏
- 水传感器接地, Arduino接地
Arduino水位代码示例(串行控制台)
如果您的项目中没有(或不想要)和LCD字符显示,那么这段代码将把水位传感器的输出打印到您的串行控制台。这是一段很棒的入门代码,可以帮助您了解如何在自己的项目中使用Arduino水位传感器。关于这段代码,有几点需要注意:
- 通过改变延迟时间,您可以使其运行速度超过每秒一次。但是,您的限制将是串行输出例程。要检查速度超过100毫秒,你需要关闭串行输出。
- 您可能需要根据水中的杂质(矿物质)的数量来调整数字。传感器可以对某些水或多或少敏感。请记住,纯水是非导电的,它是制作这项工作的矿物质。我在我所在地区使用的数字。
Int resval = 0;//保存的值int respin = A5;// sensor pin used void setup(){//启动串行控制台serial .begin(9600);} void loop() {resval = analogRead(respin);//从模拟引脚读取数据并将其存储到resval变量if (resval<=100);println(“水位:空”);} else if (resval>100 && resval<=300){Serial。println(“低水位:”);} else if (resval>300 && resval<=330){Serial. value . value = " ";println(“水位:中等”);} else if (resval>330){Serial。println(“水位:高”);}延迟(1000);}
Arduino水位代码示例(液晶屏)
这段代码的LCD版本几乎是相同的,我们只是添加了一个打印到LCD的路由,并在每个周期中将光标移回我们的主点。
//包括库代码:#include//用界面铅液的数量初始化库,液体频道LCD(12,11,5,4,3,2);Int resval = 0;//保存的值int respin = A5;//传感器引脚使用void setup(){//设置LCD的列和行数:LCD.Begin(16,2);//打印到LCD的消息。lcd.print(“水位:”);void循环(){//将光标设置为0,第1行LCD.SetCursor(0,1);Resval = Analogread(Respin);//从模拟引脚读取数据,并将其存储到resval变量if(resval <= 100){lcd.println(“空”);}如果(resval> 100 && resval <= 300){lcd.println(“low”); } else if (resval>300 && resval<=330){ lcd.println("Medium "); } else if (resval>330){ lcd.println("High "); } delay(1000); }
完成的项目
随着所有内容完成,您的LCD屏幕(或串行控制台)应显示水位,因为将其降低到一杯水或其他液体源。
用于水位传感器
水位传感器可以用于许多东西,其实际上比你最初想到的更容易。所以这是你可能尝试的事情:
- 水位检测水加热器的锅。当这些加热器变老时,这些加热器非常常见。将传感器放入锅中以检测存在的水,在那里应该没有。
- 在水槽链路下也是如此。特别是在一年中大部分时间空置的家庭。用A.以太网的盾牌(或WiFi)将此泄漏检测设备添加到互联网上,如果检测到水,请发送电子邮件。
- 虽然它不是专门为土壤湿度读数而设计的,但它确实在这方面工作得比较好。同样,你需要用这些数字进行实验,但这个设备可以用来确定植物是否需要水,并启动洒水器给它们补水。
我们希望您发现这个项目有用!如果您需要帮助,请在下面发表评论,我们会尽力而为。
该传感器是否具有特定的操作温度?
我们如何在这个电路中加入压电扬声器
视情况而定。要做什么?
在上面给出的代码中,为选择不同级别的值所考虑的参数是什么。
我正在与代码斗争,因为我是编码的新,你能包括一个下载吗?
对不起,我忘记了副本,粘贴是我不使用Arduino的东西,我正在使用elegoOmega2560它仍然工作
相同的部件是否可以起诉以激活一个小水泵(例如)充值水族箱?
我可以使用两个传感器而不是一个,以避免问题和过度装满水族馆吗?
我从来没有做过任何工作,也没有编写过程序,你认为这是可能的吗,或者有什么方法来指导我?