【雕爷学编程】Arduino动手做(24)---水位传感器模块2

在这里插入图片描述

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)实验场景图

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/69772.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Git (2)

文章目录 1. 删除文件2. 分支管理2.1 理解分支2.2 分支创建 &#xff0c; 分支切换2.3 分支合并2.4 删除分支2.5 合并冲突2.6 合并模式2.7 分支策略2.8 bug 分支2.9 强制删除分支 3. 远程操作3.1 创建远程仓库3.2 克隆远程仓库3.3 推送3.4 拉取3.5 gitignore 文件3.6 配置别名 …

2023-08-11 LeetCode每日一题(矩阵对角线元素的和)

2023-08-11每日一题 一、题目编号 1572. 矩阵对角线元素的和二、题目链接 点击跳转到题目位置 三、题目描述 给你一个正方形矩阵 mat&#xff0c;请你返回矩阵对角线元素的和。 请你返回在矩阵主对角线上的元素和副对角线上且不在主对角线上元素的和。 示例 1&#xff1…

【设计模式——学习笔记】23种设计模式——中介者模式Mediator(原理讲解+应用场景介绍+案例介绍+Java代码实现)

文章目录 案例引入案例一普通实现中介者模式 案例二 介绍基础介绍登场角色尚硅谷 《图解设计模式》 案例实现案例一&#xff1a;智能家庭类图实现 案例二&#xff1a;登录页面逻辑实现说明类图实现 总结文章说明 案例引入 案例一 普通实现 在租房过程中&#xff0c;客户可能…

推荐系统工作小结

最初的构想 由于我们的技术团队中并没有人真正用大数据的方法做过推荐系统。所以我们定的步骤是先解决有没有的问题。然后再持续地进行效果优化的工作。 现状 但一方面考虑到要快速上线。另一方面也希望对推荐系统的效果有一个合理的参照。我们打算先使用达观数据的推荐系统云…

【JavaScript】怎么测试方法的兼容性

利用网站测试方法的兼容性 打开网站&#xff1a;https://caniuse.com在里面输入要检测的方法&#xff0c;红色代表不支持&#xff0c;绿色代码支持。

玩赚音视频开发高阶技术——FFmpeg

随着移动互联网的普及&#xff0c;人们对音视频内容的需求也不断增加。无论是社交媒体平台、电商平台还是在线教育&#xff0c;都离不开音视频的应用。这就为音视频开发人员提供了广阔的就业机会。根据这些年来网站上的音视频开发招聘需求来看&#xff0c;音视频开发人员的需求…

面试热题(单词搜索)

给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 单词必须按照字母顺序&#xff0c;通过相邻的单元格内的字母构成&#xff0c;其中“相邻”单元格是那些水平相邻或垂直相…

2023免费苹果mac电脑清理垃圾软件CleanMyMacX

在买新电脑的时候&#xff0c;很多用户都会优先考虑Mac电脑&#xff0c;因为它有着优秀的性能、设计和安全性。但是&#xff0c;随着时间的推移&#xff0c;mac电脑也会积累很多不必要的文件&#xff0c;占用大量的磁盘空间&#xff0c;影响电脑的运行速度和效率。这些文件主要…

【STM32】小电流FOC驱控一体板(开源)

FOC驱控一体板http://链接: https://pan.baidu.com/s/12HoV9yDlMC5QVGNCJ5tK0w 提取码: 1111 主控芯片stm32f103c8t6 驱动芯片drv8313 三相电流采样 根据B站一个UP主的改的&#xff08;【【自制】年轻人的第一块FOC驱动器】&#xff09;&#xff0c;大多数元器件是0805&…

Jmeter 配置环境变量,简明教程专享

通过给 JMeter 配置环境变量&#xff0c;可以快捷的打开 JMeter&#xff1a; 打开终端。执行 jmeter。 配置环境变量的方法如下。 Mac 和 Linux 系统 在 ~/.bashrc 中加如下内容&#xff1a; export JMETER_HOMEJMeter所在目录 export PATH$JAVA_HOME/bin:$PATH:.:$JMETER…

uniapp----分包

系列文章目录 uniapp-----封装接口 uniapp-----分包 目录 系列文章目录 uniapp-----封装接口 uniapp-----分包 前言 二、使用步骤 1.创建文件 ​编辑 2.min.js的修改 2.1 subPackages 代码如下&#xff08;示例&#xff09;&#xff1a; 2.2 preloadRule 代码如下&am…

【QT】 QTabWidgetQTabBar控件样式设计(QSS)

很高兴在雪易的CSDN遇见你 &#xff0c;给你糖糖 欢迎大家加入雪易社区-CSDN社区云 前言 本文分享QT控件QTabWidget&QTabBar的样式设计&#xff0c;介绍两者可以自定义的内容&#xff0c;以及如何定义&#xff0c;希望对各位小伙伴有所帮助&#xff01; 感谢各位小伙伴…

Python机器学习实战-建立AdaBoost模型预测肾脏疾病(附源码和实现效果)

实现功能 建立AdaBoost模型&#xff08;集成学习&#xff09;预测肾脏疾病 实现代码 import pandas as pd import warnings warnings.filterwarnings("ignore") pd.set_option(display.max_columns, 26)#读取数据 df pd.read_csv("E:\数据杂坛\datasets\kidn…

SecureCRT密码破解(实验环境:win10,SecureCRT Version 9.1.0 (x64 build 2579))

实验环境&#xff1a;win10&#xff0c; SecureCRT&#xff1a;Version 9.1.0 (x64 build 2579) 1. SecureCRTCipher.py 文件 #!/usr/bin/env python3 import os from Crypto.Hash import SHA256 from Crypto.Cipher import AES, Blowfishclass SecureCRTCrypto:def __init_…

计时器setTimeout()函数、setInterval()函数

文章目录 &#x1f412;个人主页&#x1f3c5;JavaEE系列专栏&#x1f4d6;前言&#xff1a;&#x1f3c5;计时器setTimeout&#xff08;函数名&#xff0c;延迟时间&#xff09;结束计时器setTimeout &#x1f3c5;计时器setInterval&#xff08;函数名&#xff0c;延迟时间&a…

CMake: 检测并使用OpenMP的并行环境

CMake: 检测OpenMP的并行环境 导言OpenMP简介项目结构CMakeLists.txt相关源码输出结果 导言 目前&#xff0c;市面上的计算机几乎都是多核机器&#xff0c;对于性能敏感的程序&#xff0c;我们必须关注这些多核处理器&#xff0c;并在编程模型中使用并发。OpenMP是多核处理器上…

解决Redis启动时闪退 报错Creating Server TCP listening socket *:6379: bind: No error

找到安装redis的文件夹 在地址输入cmd 依次输入如下 redis-cli.exe shutdown exit redis-server.exe redis.windows.conf

[GAN] 使用GAN网络进行图片生成的“调参人”入门指南——生成向日葵图片

[GAN] 使用GAN网络进行图片生成的“炼丹人”日志——生成向日葵图片 文章目录 [GAN] 使用GAN网络进行图片生成的“炼丹人”日志——生成向日葵图片1. 写在前面&#xff1a;1.1 应用场景&#xff1a;1.2 数据集情况&#xff1a;1.3 实验原理讲解和分析&#xff08;简化版&#x…

django boostrap html实现可拖拽的左右布局,鼠标拖动调整左右布局的大小或占比

一、实现的效果 最近需要在Django项目中,实现一个左右布局的html页面,页面框架使用的是boostrap。但这个布局不是简单的左右分栏布局,而是需要实现可以通过鼠标拖拽的方式动态调整左右两侧布局的大小和占比。效果大致如下: 一开始,页面分为左右两块布局: 鼠标放到中间的…

宋浩高等数学笔记(十一)曲线积分与曲面积分

个人认为同济高数乃至数学一中最烧脑的一章。。。重点在于计算方式的掌握&#xff0c;如果理解不了可以暂时不强求&#xff0c;背熟积分公式即可。此外本贴暂时忽略两类曲面积分之间的联系&#xff0c;以及高斯公式的相关内容&#xff0c;日后会尽快更新&#xff0c;争取高效率…