当前位置:网站首页>arduino+水位传感器+led显示+蜂鸣器报警
arduino+水位传感器+led显示+蜂鸣器报警
2022-07-06 09:19:00 【麓南的风】
实验准备:
arduino mega2560(uno、Nano及其他型号同理)
led(黄、绿、红)
电阻x3(本次选用680Ω电阻1/4w金属膜电阻,避免led灯烧坏注意电阻值不要太小)
蜂鸣器(这里我用的有源高电平触发)
水位传感器(如下)
water sensor
接线情况(后边根据提供程序接线即可)
实验程序
#define water_sensorspin A1
#define led_yellow 2
#define led_green 3
#define led_red 4
#define buzzpin 7
float ad_value=0; //深度模拟值
float deepcm=0; //实际深度
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
pinMode(led_yellow,OUTPUT); //设置引脚状态
pinMode(led_green,OUTPUT);
pinMode(led_red,OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
ad_value=analogRead(water_sensorspin); //A1引脚获取模拟值赋予变量
Serial.println("Water level monitoring ready");
delay(20);
Serial.println(ad_value); //打印观察模拟值变化
deepcm=(ad_value/702)*4; //经过测量,最深时模拟值约为702,测量深度4cm
Serial.print("此时水的深度为:");
Serial.print(deepcm);
Serial.println("cm");
if(deepcm<1.5) //水位低于1.5cm时
{
delay(20);
digitalWrite(led_yellow,HIGH);
digitalWrite(led_green,LOW);
digitalWrite(led_red,LOW);
digitalWrite(buzzpin,LOW);
}
else if(deepcm<3)
{
delay(20);
digitalWrite(led_yellow,LOW);
digitalWrite(led_green,HIGH);
digitalWrite(led_red,LOW);
digitalWrite(buzzpin,LOW);
}
else if(deepcm>3)
{
delay(20);
digitalWrite(led_yellow,LOW);
digitalWrite(led_green,LOW);
digitalWrite(led_red,HIGH);
digitalWrite(buzzpin,HIGH);
Serial.println("水位太高了,注意!");
}
delay(2000); //延时堵塞稍微长一些,串口刷新太快看不清
}
实验现象
水位传感器插入水中(注意最大深度不得超过4cm)
深度较浅时
适中深度
深度较深时
视频
水位led显示
蜂鸣器报警
基础:led点亮,蜂鸣器报警
给传感器接入增添其他显示
边栏推荐
- 13 power map
- 分支语句和循环语句
- Tyut Taiyuan University of technology 2022 introduction to software engineering summary
- Redis介绍与使用
- 面渣逆袭:Redis连环五十二问,三万字+八十图详解。
- 异常:IOException:Stream Closed
- 几道高频的JVM面试题
- A brief introduction to the database of tyut Taiyuan University of technology in previous years
- Pride-pppar source code analysis
- [GNSS] robust estimation (robust estimation) principle and program implementation
猜你喜欢
系统设计学习(三)Design Amazon‘s sales rank by category feature
Smart classroom solution and mobile teaching concept description
如何保障 MySQL 和 Redis 的数据一致性?
Interview Essentials: talk about the various implementations of distributed locks!
C code implementation of robust estimation in rtklib's pntpos function (standard single point positioning spp)
Problems and solutions of robust estimation in rtklib single point location spp
十分钟彻底掌握缓存击穿、缓存穿透、缓存雪崩
View UI plus released version 1.2.0 and added image, skeleton and typography components
Role movement in the first person perspective
Basic DOS commands
随机推荐
如何保障 MySQL 和 Redis 的数据一致性?
All in one 1405: sum and product of prime numbers
阿里云微服务(二) 分布式服务配置中心以及Nacos的使用场景及实现介绍
Rt-ppp test using rtknavi
Tyut Taiyuan University of technology 2022 introduction to software engineering examination question outline
String class
一文搞定 UDP 和 TCP 高频面试题!
分支语句和循环语句
Share a website to improve your Aesthetics
[GNSS data processing] Helmert variance component estimation analysis and code implementation
Pride-pppar source code analysis
Record: I accidentally wrote a recursion next time
TYUT太原理工大学往年数据库简述题
[Topic terminator]
View UI Plus 发布 1.3.0 版本,新增 Space、$ImagePreview 组件
13 power map
Wechat applet development experience
[while your roommate plays games, let's see a problem]
Introduction and use of redis
Role movement in the first person perspective