37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试多做实验,不管成功与否,都会记录下来——小小的进步或是搞不掂的问题,希望能够抛砖引玉。
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验二十四:水位传感器 液滴传感器 水深检测模块 水位检测模块 Water depth Sensor
知识点:水、水位与水位传感器
一、水(Water)
水(化学式为H₂O),是由氢、氧两种元素组成的无机物,无毒,可饮用。在常温常压下为无色无味的透明液体,被称为人类生命的源泉,是维持生命的重要物质,也叫氧化氢。
水是地球上最常见的物质之一,地球表面有71%被水覆盖。它是包括无机化合、人类在内所有生命生存的重要资源,也是生物体最重要的组成部分。
纯水导电性十分微弱,属于极弱的电解质。日常生活中的水由于溶解了其他电解质而有较多的阴阳离子,才有较为明显的导电性。
二、水位(water level)
1、水位是指自由水面相对于某一基面的高程,水面离河底的距离称水深。计算水位所用基面可以是以某处特征海平面高程作为零点水准基面,称为绝对基面,常用的是黄海基面;也可以用特定点高程作为参证计算水位的零点,称测站基面。水位是反映水体水情最直观的因素,它的变化主要由于水体水量的增减变化引起的。水位过程线是某处水位随时间变化的曲线,横座标为时间,纵座标为水位。
2、水位是水体(如河流、湖泊、水库、沼泽等)的自由水面相对于某一基面的高程。一般都以一个基本水准面为起始面,这个基本水准面又称为基面。由于基本水准面的选择不同,其高程也不同,在测量工作中一般均以大地水准面作为高程基准面。大地水准面是平均海水面及其在全球延伸的水准面,在理论上讲,它是一个的连续闭合曲面。但在实际中无法获得这样一个全球统一的大地水准面,各国只能以某一海滨地点的特征海水位为准。这样的基准面也称绝对基面,另外,水文测验中除使用绝对基本面外还涉有假定基本,测站基面,冻结基面等。表达水位所用基面,通常有两种:一种是绝对基面,一种是测站基面。中国目前采用的绝对基面是黄海基面,是以黄海口某一海滨地点的特征海水面为零点的。在以前还曾采用过吴淞基面,为使各站的水位便于比较,在“水文年鉴”中均注明了黄海与吴淞基面的换算关系。如长沙水位站,所使用的基面为吴淞基面,将其换算为黄海基面起算水位,则:黄海基面以上水位=现观测水位(吴淞基面)―2.280米测站基面,是水文测站专用的一种固定基面,以略低于历年最低水位或河床最低点作为零点来计算水位高程。为便于比较各站水位,在刊布水文资料时,均注明了该基面与绝对基面的关系,换算关系可将测站基面水位换算为绝对基面水位。
3、水位是反映水体、水流变化的重要标志,是水文测验中最基本的观测要素,是水文测站常规的观测项目。水位观测资料可以直接应用于堤防、水库、电站、堰闸、浇灌、排涝、航道、桥梁等工程的规划、设计、施工等过程中。水位是防汛抗旱斗争中的主要依据,水位资料是水库、堤防等防汛的重要资料,是防汛抢险的主要依据,是掌握水文情况和进行水文预报的依据。同时水位也是推算其它水文要素并掌握其变化过程的间接资料。在水文测验中,常用水位直接或间接的推算其它水文要素,如由水位通过水位流量关系,推求流量;通过流量推算输沙率;由水位计算水面比降等,从而确定其它水文要素的变化特征。由此可见,在水位的观测中,要认真贯彻《规范》,发现问题及时排除,使观测数据准确可靠。同时还要保证水位资料的连续性,不漏测洪峰和洪峰的起涨点,对于暴涨暴落的洪水,应更加注意。
三、水位传感器(Water level sensor)
1、水位传感器是指能将被测点水位参量实时地转变为相应电量信号的仪器。其工作原理是:容器内的水位传感器,将感受到的水位信号传送到控制器,控制器内的计算机将实测的水位信号与设定信号进行比较,得出偏差,然后根据偏差的性质,向给水电动阀发出"开"和"关"的指令,保证容器达到设定水位。进水程序完成后,温控部份的计算机向供给热媒的电动阀发出"开"的指令,于是系统开始对容器内的水进行加热。到设定温度时。控制器才发出关阀的命令、切断热源,系统进入保温状态。程序编制过程中,确保系统在没有达到安全水位的情况下,控制热源的电动调节阀不开阀,从而避免了热量的损失与事故的发生。广泛用于水厂、炼油厂、化工厂、玻璃厂、污水处理厂、高楼供水系统、水库、河道、海洋等对供水池、配水池、水处理池、水井、水罐、水箱、油井、油罐、油池及对各种液体静态、动态液位的测量和控制。举例说明投入式水位传感器在水位监测系统中的应用:
2、工作原理:容器内的水位传感器,将感受到的水位信号传送到控制器,控制器内的计算机将实测的水位信号与设定信号进行比较,得出偏差,然后根据偏差的性质,向给水电动阀发出"开"和"关"的指令,保证容器达到设定水位。进水程序完成后,温控部份的计算机向供给热媒的电动阀发出"开"的指令,于是系统开始对容器内的水进行加热。到设定温度时。控制器才发出关阀的命令、切断热源,系统进入保温状态。程序编制过程中,确保系统在没有达到安全水位的情况下,控制热源的电动调节阀不开阀,从而避免了热量的损失与事故的发生。
知识点:水位传感器模块
1、Water Sensor液位(水位)传感器是一款简单易用、小巧轻便、性价比较高的水位/水滴识别检测传感器,其是通过具有一系列的暴露的平行导线线迹测量其水量大小从而判断水位。轻松完成水量到模拟信号的转换,输出的模拟值可以直接被程序中函数所应用,达到水位报警的功效,低功耗,灵敏度是其又一大特点。配合Arduino 控制器可直接插接到传感器扩展板上应用,效果更加明显。
2、如果您曾经遇到过热水器爆炸或尝试制造潜水电子设备,那么您就会知道检测周围是否有水是多么重要。有了这个水位传感器,您就可以做到这一点!该传感器可用于测量水位、监测集水坑、检测降雨或检测泄漏。
该传感器有一系列的 10 条外露铜迹线,其中 5 条为电源迹线,5 条为感应迹线。这些迹线是交错的,因此每两条电源迹线之间有一条感测迹线。通常这些痕迹没有连接,但在淹没时被水桥接。板上有一个电源 LED,当板通电时会亮起。
3、水位传感器如何工作?
水位传感器的工作原理非常的简单。一系列暴露的平行导体一起充当可变电阻器(就像电位器一样),其电阻根据水位而变化。电阻的变化对应于传感器顶部到水面的距离。
电阻与水的高度成反比,原因如下:
传感器浸入的水越多,导电性就越好,阻力就越小,连通的电量值就越大。
传感器浸入的水越少,导电性越差,电阻越大,连通的电量值就越小。
传感器根据电阻产生输出电压,通过测量我们可以确定水位的高低。
然而,纯净水是不导电的,水中的矿物质和杂质才使其具有导电性。也就所以,在你的实验当中得出的数值会有可能与其他人实验的不一样。在用作雨滴传感器也是一样的原理,雨水滴在排列的铜线表面,就可以产生连接,从而产生导电电量,就有模拟信号的变化。
4、模块主要参数
(1)工作电压:5V
(2)工作电流:<20ma
(3)接口:模拟S
(4)检测板宽度:40mm×16mm
(5)工作温度:10°~30°
(6)重量:3g
(7)尺寸:65mm×20mm×8mm
(8)Arduino兼容接口
(9)低功耗
(10)高灵敏度
(11)输出电压信号:0~4.2V
(12)检测的水位高度为0-4cm
5、模块接口说明(3线制)
(1)S开关信号输出(0和1)
(2)- 接电源负极GND
(3)+ 接电源正极VCC 3.3-5V
!!注意,在使用的过程中,水位传感器/雨滴传感器除了铜线排列部分,其他裸露的电路板位置应应做好防水保护,以免短路烧坏模块!
水位传感器模块的实验环境
1、水位传感器模块实验所需硬件清单
水位传感器模块X2
Arduino Uno开发板 X1
杜邦线 若干(备了10条)
高电平触发有源蜂鸣器模块X1
LED发光二极管(绿、蓝色)X2
5MM三色RGB全彩LED模块 X1
高电平触发单路5V继电器模块X1
Proto Shield 原型扩展板(带mini面包板)X1
2、水位传感器模块实验所需软件平台
代码编程 Arduino IDE (版本1.8.19)
仿真编程 Linkboy (版本V4.6.3)
图形编程 Mind+ (版本 V1.7.0 RC2.0)以及编玩边学(线上平台)
3、实验接线示意图
水位传感器模块的几个实验
1、程序一:水位传感器模块的简易测试
(1)Arduino参考开源代码
/*
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
程序一:水位传感器模块的简易测试
*/
void setup() {
Serial.begin(9600); // 设置串口波特率为9600
pinMode(A0, INPUT); // 模块连接引脚A0,并设置为输入模式
}
void loop() {
Serial.print("水位传感器值:");
//将读取的A0模拟值输出到串口监视器
Serial.println(analogRead(A0));
delay(500); //延时500毫秒
}
(2)实验串口返回情况(杯子里面没有水)
(3)打开Arduino IDE——工具——串口绘图器,查看实验波形
(4)实验串口绘图器返回情况(杯子里面没有水时的波形)
(5)实验场景图