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

在这里插入图片描述

37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试多做实验,不管成功与否,都会记录下来——小小的进步或是搞不掂的问题,希望能够抛砖引玉。

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验二十四:水位传感器 液滴传感器 水深检测模块 水位检测模块 Water depth Sensor

在这里插入图片描述

(6)实验串口返回情况(往杯子里面慢慢倒水,水位逐渐升高)

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
(9)拿住水位传感器,校准实际水位的串口数值,校准时的动态波形见下图

在这里插入图片描述

(10)校准实验时的场景图

实际校准的实验串口值为100-240之间(大概值)

在这里插入图片描述
2、程序二:用于检测水的存在(泄漏、溢出、洪水、雨水等情况)
(1)Arduino参考开源代码

/*【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)程序二:用于检测水的存在(泄漏、溢出、洪水、雨水等情况)
*/#define LED_PIN     13
#define POWER_PIN   7
#define SIGNAL_PIN  A0
#define THRESHOLD   100int value = 0; // 存储传感器值的变量void setup() {Serial.begin(9600);pinMode(LED_PIN,   OUTPUT);   // 将 D13 引脚配置为输出,接LEDpinMode(POWER_PIN, OUTPUT);   // 将 D7 引脚配置为配置为输出,接水位传感器+digitalWrite(POWER_PIN, LOW); // 关闭传感器digitalWrite(LED_PIN,   LOW); // 关闭LEDSerial.println("检测准备就绪!");
}void loop() {digitalWrite(POWER_PIN, HIGH);  // 打开传感器delay(10);                      // 等待 10 毫秒value = analogRead(SIGNAL_PIN); // 从传感器读取模拟值digitalWrite(POWER_PIN, LOW);   // 关闭传感器if (value > THRESHOLD) {Serial.println("检测到水");digitalWrite(LED_PIN, HIGH);  // 打开 LED} else {digitalWrite(LED_PIN, LOW);   // 关闭LED}
}

(2)实验串口返回情况

在这里插入图片描述
(3)实验场景图(检测到水时,点亮LED)

在这里插入图片描述
3、程序三:通过水传感器检测水的情况
(1)实验开源仿真编程(Linkboy V4.63)

在这里插入图片描述
(2)实验串口返回情况

在这里插入图片描述
4、程序四:分三档测量水位(低绿色LED,中蓝色LED,高红色LED)
(1)Arduino参考开源代码

/*【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)程序四:分三档测量水位(低绿色LED,中蓝色LED,高红色LED)使用:5MM三色RGB全彩LED模块
*/void setup() {Serial.begin(9600);pinMode(8, OUTPUT); // 设置D8为输出pinMode(9, OUTPUT); // 设置D9为输出pinMode(10, OUTPUT); // 设置D10为输出
}void loop() {int s1 = analogRead(A0);Serial.println(s1); //串口输出传感器值delay(50);if (s1 > 350 && s1 < 480 ){digitalWrite(10, HIGH);    // 中水位时蓝色LED亮Serial.println("中水位");}else{digitalWrite(10, LOW);       // 否则熄灭}if (s1 < 350 ){digitalWrite(9, HIGH);    // 低水位时绿色LED亮Serial.println("低水位");}else{digitalWrite(9, LOW);    // 否则熄灭}if (s1 > 480 ){digitalWrite(8, HIGH);  // 高水位时红色LED亮Serial.println("高水位");}else{digitalWrite(8, LOW);  // 否则熄灭}delay(1500);
}

(2)实验串口返回情况

在这里插入图片描述
(3)实验场景图

在这里插入图片描述

5、程序五:高水位声光报警
(1)实验开源图形编程(Mind+、Mixly、编玩边学)

在这里插入图片描述

(2)实验场景图

在这里插入图片描述

6、程序六:使用1602 LCD显示屏显示水位传感器值
(1)Arduino参考开源代码

/*【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)程序六:使用1602 LCD显示屏显示水位传感器值
*/#include <LiquidCrystal_I2C.h>
// 用接口引脚的编号初始化库
LiquidCrystal_I2C lcd(0x27, 16, 2);
// 将 LCD 地址设置为 0x27,用于 16 个字符和 2 行显示常量
int waterSensor = 0;
int waterValue = 0;void setup() {lcd.init(); //初始化液晶屏lcd.backlight(); //打开背光lcd.setCursor(0, 0);lcd.print("Water Sensor");
}void loop() {int waterValue = analogRead(waterSensor); //获取水传感器值lcd.setCursor(6, 1); //将光标放在6列2行lcd.print(waterValue); //值显示在lcd上delay(200); //延迟200mslcd.setCursor(0, 1); //将光标放在1列2行//添加16个空格以确保第1行中剩余的字符(如果有)被清除lcd.print("                ");
}

(2)实验场景图(未放到水杯里,传感器值为0)

在这里插入图片描述

(3)放到水杯里,水位传感器值为480

在这里插入图片描述

7、程序七:获取水位传感器模拟信号数据

(1)Arduino参考开源代码

/*【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)程序七:获取水位传感器模拟信号数据
*/int val = 0; //定义一个变量 val ,初始化值为0void setup() {Serial.begin(9600); // 设置波特率为9600
}void loop() {val = analogRead(A0); // 获取A0模拟口的数据,并赋值给 val 变量Serial.print("val = "); // 串口输出 val 当前的数据Serial.print(val);if(val < 200) { // 如果 val 小于200Serial.println(" | dry"); // 说明很干,没有水} else if(val < 450) { // 如果 小于 450
Serial.println(" | water level: ~ 0-1 cm"); 
// 水位大约在0-1cm ,以下语句如此类推} else if(val < 500) {Serial.println(" | water level: ~ 1-2 cm");} else if(val < 540) {Serial.println(" | water level: ~ 2-3 cm");} else if(val < 600) {Serial.println(" | water level: ~ 3-4 cm");} else {Serial.println(" | water level: over 4 cm");}delay(1000); // 等待1秒
}

(2)实验串口返回情况

在这里插入图片描述

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

哪些思维方式是你刻意训练过的?

1.管理记忆 2.贴好标签 3.放大苦难 4.绝对理性 5.自以为是 6.调整尺度 7.等价交换 8.断舍离 脑子只要醒着就不停转 18岁左右开始刻意培养自己的各种思维方式 至今6年了 1. 管理自己的脑海 有效的记忆容量是有限的 所以需要管理 更需要合适的记忆结构去管理 很多人会…

电台飞哥美食日记:三顾冒菜,一辈子最难忘的冒菜!

电台飞哥美食日记&#xff1a;三顾冒菜&#xff0c;一辈子最难忘的冒菜&#xff01; 今天&#xff08;2014年9月5日&#xff09;中午&#xff0c;成都交通广播电台《飞哥欢乐派&#xff08;FM 91.4&#xff09;》、成都电视台《吃喝玩乐全接触》的超人气主持人、成都餐饮同业公…

无线充电小车的实物图

无线充电小车的实物图

Type-c快充加无线直播麦克风方案(无线麦克风边充电)LDR6023C专业快充芯片

USB Type-C接口快充加无线麦克风应用&#xff1a; 随着互联网时代的迅速崛起&#xff0c;如今直播的主播越来越多&#xff0c;传统的耳机式直播渐渐被淘汰&#xff0c;取而代之的是无线传输&#xff0c;今天这篇文章就来讲一下无线麦克风加Type-c快充中的快速充电是怎么实现的&…

无线充电模组开发的原理和优势

现在绝大部分的电子设备&#xff0c;如手机、手表、笔记本电脑等都是通过有线的方式进行充电&#xff0c;即一端连接电子设备的充电电池&#xff0c;另一端连接交流电源。这种方式有很多危险的地方&#xff0c;首先频繁的插拔充电插头容易造成接口的损坏&#xff0c;也可能会带…

关于WPC无线充QI认证的发展

文章目录 前言一、手机无线充电的市场规模有多大二、高功率无线充已经普及三、实现高功率无线快充需要什么&#xff1f;总结 前言 从2009年第一款支持无线充电的手机Palm开始&#xff0c;手机厂商为了让用户体验到无感化的充电方式&#xff0c;对无线充电技术进行了十余年的探…

YOLOv8+ByteTrack多目标跟踪(行人车辆计数与越界识别)

课程链接&#xff1a;https://edu.csdn.net/course/detail/38901 ByteTrack是发表于2022年的ECCV国际会议的先进的多目标跟踪算法。YOLOv8代码中已集成了ByteTrack。本课程使用YOLOv8和ByteTrack对视频中的行人、车辆做多目标跟踪计数与越界识别&#xff0c;开展YOLOv8目标检测…

隐藏IOS软件

用文本编辑打开.plist文件 然后加上以下几个语句 <key>SBAppTags</key> <array> <string>hidden</string> </array>

iOS隐藏app图标探索

2019独角兽企业重金招聘Python工程师标准>>> 通过查询相关资料&#xff0c;目前找到两种解决方案&#xff0c;但是由于iOS版本的原因&#xff0c;在真机上均未成功隐藏 相关资料&#xff1a;https://www.zdziarski.com/blog/?p5072 &#xff08;关于使用SBAppTags方…

惠普HP PSC 1610 打印机驱动

惠普HP PSC 1610 打印机驱动是官方提供的一款打印机驱动&#xff0c;本站收集提供高速下载&#xff0c;用于解决打印机与电脑连接不了&#xff0c;无法正常使用的问题&#xff0c;本动适用于&#xff1a;Windows XP / Windows 7 / Windows 8 / Windows 10 32/64位操作系统。有需…

win7 exfat补丁_大神面对 win7系统安装补丁提示安装程序出错的操作方案 -win7系统使用教程...

大家在操作win7系统电脑的过程中&#xff0c;经常会遇到win7系统安装补丁提示安装程序出错的情况&#xff0c;可对于绝大多数朋友来说&#xff0c;他们从来没有碰到win7系统安装补丁提示安装程序出错的问题&#xff0c;到底要怎样做才能快速、高效的解决win7系统安装补丁提示安…

Win10设置系统补丁更新服务器,win10如何关闭自动更新补丁_win10关闭自动更新补丁的图文教程...

现在很多用户都将自己的电脑升级为了win10系统&#xff0c;但win10自动更新补丁的情况很是影响电脑的运行速度还占用空间&#xff0c;所以有的用户就问小编win10如何关闭自动更新补丁&#xff1f;下面本文就为大家整理了win10关闭自动更新补丁的图文教程&#xff0c;一起往下看…

【T3】T3在win10上重大bug补丁更新

T3系列&#xff0c;号称从10.9开始支持win10系统&#xff0c;结果随着客户使用win10系统的情况越来越多&#xff0c;bug显现的也越来越多&#xff0c;最常见的就是科目参照界面白屏&#xff0c;无法正常显示&#xff0c;具体可以参考我之前发的博文&#xff1a;https://blog.cs…

win10更新补丁KB5006670后无法共享打印机

win10在更新KB5006670补丁后出现无法共享打印机&#xff0c;针对这一问题有两个解决办法&#xff1a; 一、卸载KB5006670补丁&#xff0c;同时要卸载同一天安装的补丁&#xff0c;我这里是KB5005539&#xff0c;有些电脑不同&#xff0c;只要是和KB5006670同一天安装的都卸载&a…

win10更新补丁后造成wifi共享笔记本无法联网情况

【场景】 笔记本电脑上安装了vmware&#xff0c;并且有多台虚机需要通过共享笔记本wifi网络后连接到公网上进行相关yum操作和下载相关软件操作&#xff1b;但发现电脑近期更新window软件后&#xff0c;打开wifi共享设置后笔记本电脑打不开网站但可以ping通百度地址或其它网站&…

更新KB5005565补丁后win10局域网打印机不能共享打印

1. 2021年9月Windows 10 KB5005565 更新版本 21H2、版本 21H1、版本 20H2 和版本 2004。该补丁虽然解决了一些问题&#xff0c;却引入了导致打印机不能共享这一饱受诟病的问题。并且一旦更新还没有卸载选项可以成功将之卸载掉。 2. 2022年5月发布的第4次更新19044.1739则解决了…

win10系统可以做补丁服务器,win10补丁包怎么安装 win10补丁手动安装方法

Windows10自动更新失败的小伙伴们,不用担心,只要你手中CAB以及MSU格式的更新包,也可以完美升级到Win10,下面小编为大家带来Win10手动安装CAB以及MSU格式更新包方法,告诉大家Win10更新包怎么手动安装,快来一起看看吧。 Win10更新的安装默认都是自动进行,不过有时候我们也…

Unity 能量罩效果shader

先上效果图&#xff1a; 能量罩波纹效果&#xff0c;下载地址&#xff1a;https://download.csdn.net/download/ThreePointsHeat/13618986

锂电池基于DW01组成的过充电、过放、短路保护电路

锂电池基于DW01组成的过充电、过放、短路保护电路 原理图 该电路主要由锂电池保护专用集成电路&#xff24;&#xff37;&#xff10;&#xff11;&#xff0c;充、放电控制MOSFET&#xff08;内含两只&#xff2e;沟道&#xff2d;&#xff2f;&#xff33;&#xff26;&…

流式保护器在文物建筑物内的电气防火应用

摘 要 中国是一个历史悠久、文明程度高的文明国家&#xff0c;有着5000多年的历史。文物建筑历史悠久&#xff0c;风景秀丽。它们是我们先人留下来的丰富文化底蕴。这些文化底蕴深厚、精神价值高、文化价值实用价值高。因此&#xff0c;加强对文物建筑消防安全工作的重视意义非…