硬件电路的设计

(下方附文件)
系统的功能分析及体系结构设计
3.1.1系统功能分析
本系统分为主机和从机两部分组成。
主机由STC89C52单片机电路+液位传感器电路+WiFi模块ESP8266电路+电源电路组成。
从机由STC89C52单片机电路+蜂鸣器报警电路+WiFi模块ESP8266电路+电源电路组成。
1、主机通过液位传感器检测液位,检测到最低液位和最高液位时,然后将信息通过主机WIFI模块上传给从机的WIFI模块,从机收到后进行相应的处理,当液位处于最低和最高液位时,蜂鸣器报警;否则,蜂鸣器不报警。
2、从机接收到数据有,通过状态指示灯显示当前液位情况,如果连接成功后,设备通讯中断,所有指示灯熄灭,然后黄灯闪烁提醒。方便远程查看现成液位情况变化以及是否在线故障。
3、注意主从机模块配置以及单片机程序都不相同,不可以相互调换位置。
3.1.2系统总体结构
本系统具体框图如下图所示:

原理图:

5V电源电路设计
本系统选择5V直流电源作为系统总电源,为整个系统供电,电路简单、稳定。DC为电源的DC插座,可以直接接USB电源线,一端插在DC插座上,另外一端可以插在5V电源上,如电脑USB、充电宝、手机充电器等等。LED为红色LED灯,作为系统是否有点的指示灯,电阻为1K电阻,起到限流作用,保护LED灯,以防电流过大烧坏LED灯。SW为自锁开关,开关按下后,红灯亮,此时系统电源5V直流输出。开关再次按下后,红灯灭,此时系统电源无5V电源输出。

ESP8266WIFI模块电路设计电路设计
串口WIFI模块是新一代嵌入式WiFi模块,体积小,功耗低。采用UART接口。串口wifi模块是基于通用串行接口特性,符合IEEE802.11 协议栈网络标准,内置TCP/IP协议栈,使传统串口设备更好的加入无线网络。
ESP8266是一款超低功耗的模块,拥有业内极富竞争力的封装尺寸和超低能耗技术,专为移动设备和互联网的应用设计,可将用户的物理设备连接到WIFI无线网络上,进行互联网或局域网通信,实现联网功能。
ESP8266可广泛应用于智能电网、智能交通、智能家具、手持设备、工业控制等领域。WiFi模块电路图如下图所示。

5V转3.3V电源电路设计
AMS1117-3.3是一种输出电压为3.3V的正向低压降稳压器,适用于高效率线性开关电源稳压器。其输出电流为1A,系统电路简单,工作稳定。本电路中,通过AMS1117-3.3芯片将5V直流电压降为3.3V,给系统的特定模块电路供电。
一、基本参数
(1)工作结温范围:-40~125°C
(2)最大输入电压:15V
(3)焊接温度(25秒):265°C
(4)存储温度:- 65~150°C
(5)输出电压:3.267~3.333V
(6)纹波抑制(最小):60dB
其电路原理图如下图所示。电容为电解电容,起到滤波作用,滤除电源中的低频参量,让电压输出更加平稳。

蜂鸣器报警电路(低电平有效)设计
有源蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。本系统所采用的报警模块为5V有源蜂鸣器模块,电路中采用三极管9012来驱动,只要单片机控制引脚为低电平,蜂鸣器就会鸣叫报警,反之则不鸣叫,可以通过控制单片机引脚方波输出形式控制蜂鸣器的鸣叫方式。电阻为限流电阻,保护作用。

FC-37水滴传感器模块电路设计
本系统选择FC-37传感器来检测水滴信号。传感器采用高品质FR-04双面材料,超大面积5.0*4.0CM,并用镀镍处理表面,具有对抗氧化,导电性,及寿命方面更优越的性能。
一、模块参数
(1)比较器输出,信号干净,波形好,驱动能力强,超过15mA;
(2)配电位器调节灵敏度;
(3)工作电压3.3V-5V
(4)输出形式 :数字开关量输出(0和1)和模拟量AO电压输出;
(5)使用宽电压LM393比较器
二、接线方式:
(1)VCC:接电源正极(3-5V)
(2)GND:接电源负极
(3)DO:TTL开关信号输出()
(4)AO:模拟信号输出
三、功能介绍:
接上5V电源,电源指示灯亮,感应板上没有水滴时,DO输出为高电平,开关指示灯灭 ,滴上一滴水,DO输出为低电平,开关指示灯亮,刷掉上面的水滴,又恢复到,输出高电平状态。AO模拟输出,可以连接单片机的AD口检测滴在上面的雨量大小。DO TTL数字输出也可以连接单片机检测是否有雨。
FC-37水滴传感器模块内部电路图如下图所示,其中R1电阻为分压电阻,将水滴传感器检测到的水滴信息转化为模拟电压信号即AO,模拟量信号接入LM393比较器后,即可与LM393比较器芯片2号引脚所接的电位器分压后的模拟电压进行比较,进而得出DO数字信号(即高低电平信号)。C1、C2为滤波电容,C1电容对电源进行滤波,让电源输出更稳定。C2电容对模拟信号进行滤波,保证模拟信号输出的稳定性。R2、R3均为限流电阻,来保护LED灯,防止LED灯烧坏,LED灯均为低电平有效。R4为上拉电阻,上拉就是将不确定的信号通过一个电阻钳位在高电平,同时起限流作用。保证LM393比较器输出的高低电平信号在与单片机引脚连接时电平信号的读取更加稳定。

系统软件设计

程序流程图

#include <reg52.h>
#include <intrins.h>
#include <stdio.h>
#include "delay.h"sbit buzzer=P2^3;  //引脚定义
sbit led_red=P2^4;
sbit led_yel=P2^5;
sbit led_gre=P2^6;unsigned long times_20ms=0;           //定时器计数
unsigned char i;                //记录是否已经发送了短信
unsigned char buzzerlater=0;       //蜂鸣器报警延时
unsigned char busyNum =0;//串口判忙void Init_Timer0(void);         //函数声明
void UART_Init(void);
void uartSendByte(unsigned char dat);
void uartSendStr(unsigned char *s,unsigned char length);void main (void)
{Init_Timer0();        //定时器0初始化UART_Init();led_red=0;led_yel=0;led_gre=0;   //灯指示buzzerlater=2;DelayMs(100);led_red=1;led_yel=1;led_gre=1;for(i=0;i<40;i++){DelayMs(100);}    uartSendStr("AT+CWMODE=1\r\n",13);         //打开多连接for(i=0;i<5;i++){DelayMs(100);}uartSendStr("AT+CWJAP=\"AUAISOUT000\",\"\"\r\n",27);    //建立服务 端口号为8080for(i=0;i<40;i++)     //保留足够时间去获取ip{DelayMs(100);}while(1)         //主循环{   uartSendStr("AT+CIPSTART=\"TCP\",\"10.10.10.11\",8080\r\n",38);        //打开多连接for(i=0;i<25;i++)    //实时去链接ap{DelayMs(100);}   }
}void Init_Timer0(void)
{TMOD |= 0x01;   //使用模式1,16位定时器,使用"|"符号可以在使用多个定时器时不受影响          TH0=(65536-20000)/256;          //重新赋值 20msTL0=(65536-20000)%256;EA=1;            //总中断打开ET0=1;           //定时器中断打开TR0=1;           //定时器开关打开
}
void UART_Init(void)
{SCON  = 0x50;             // SCON: 模式 1, 8-bit UART, 使能接收  TMOD |= 0x20;               // TMOD: timer 1, mode 2, 8-bit 重装TH1   = 0xFD;               // TH1:  重装值 9600 波特率 晶振 11.0592MHzTL1 = TH1;  TR1   = 1;                  // TR1:  timer 1 打开                         EA    = 1;                  //打开总中断ES    = 1;                  //打开串口中断
}void uartSendByte(unsigned char dat)//串口发送单字节数据
{unsigned char time_out;time_out=0x00;SBUF = dat;           //将数据放入SBUF中while((!TI)&&(time_out<100))  //检测是否发送出去{time_out++;DelayUs2x(10);}  //未发送出去 进行短暂延时TI = 0;                      //清除ti标志
}void uartSendStr(unsigned char *s,unsigned char length)       //发送定长度字符串
{unsigned char NUM;NUM=0x00;while(NUM<length)   //发送长度对比{uartSendByte(*s);  //放松单字节数据s++;       //指针++NUM++;        //下一个++}
}void Timer0_isr(void) interrupt 1
{TH0=(65536-20000)/256;          //重新赋值 20msTL0=(65536-20000)%256;times_20ms++;if(times_20ms%10==0)        //定时到1s{   if(buzzerlater>0)     //延时打开蜂鸣器{buzzer=!buzzer;buzzerlater--;   //延时缩短}else{buzzer =1;}      //关闭蜂鸣器if(busyNum>0)busyNum--; //接收数据过程中else       //接收不到数据{led_red=1;led_yel=1;led_gre=1;  }}
}void UART_SER (void) interrupt 4   //串行中断服务程序
{unsigned char Rebuf;if(RI)                        //判断是接收中断产生{RI=0;                      //标志位清零Rebuf=SBUF;busyNum = 4;if(Rebuf=='h'){buzzerlater=4;   //蜂鸣器延时报警led_red=0;led_yel=1;led_gre=1;  //灯指示}else if(Rebuf=='n'){buzzerlater=0;   //蜂鸣器延时报警led_red=1;led_yel=0;led_gre=1;  //灯指示}else if(Rebuf=='l'){buzzerlater=4;   //蜂鸣器延时报警led_red=1;led_yel=1;led_gre=0;  //灯指示}else if(Rebuf=='e'){buzzerlater=4;   //蜂鸣器延时报警led_red=0;led_yel=0;led_gre=0;  //灯指示}}if(TI)  //如果是发送标志位,清零TI=0;
} 

.

链接:https://pan.baidu.com/s/1Bb3fAfjB3PFyvLNkkYbwNA
提取码:hukw

.

基于51单片机的水塔水箱液水位监测控制系统无线WIFI报警相关推荐

  1. 基于51单片机的智能窗户烟雾浓度雨滴检测无线wifi控制系统proteus仿真原理图PCB

    功能介绍: 0.本系统采用STC89C52作为单片机 1.LCD1602实时显示当前环境温湿度,烟雾浓度,室外是否下雨 2.按键可设定烟雾浓度,环境温湿度阈值,雨滴检测阈值 3.当环境适宜时,打开窗户 ...

  2. (毕业设计资料)基于51单片机无线水塔水箱液水位监控报警系统

    基于51单片机液位水位远程WIFI监控报警系统设计 本系统分为主机和从机两部分组成. 主机由STC89C52单片机电路+液位传感器电路+WiFi模块ESP8266电路+电源电路组成. 从机由STC89 ...

  3. 3、基于51单片机的智能水箱控制系统-温度-PH值-水位(仿真+程序+原理图)

    目录 基于51单片机的智能水箱控制系统 1.主要功能 2.实验结果 3.仿真工程 4.原理图 5.程序源码 6.资源获取 基于51单片机的智能水箱控制系统 1.主要功能 51单片机检测水箱内温度,ph ...

  4. 基于51单片机十字路口交通信号灯(启动按键+绿灯同亮报警)

    基于51单片机十字路口交通信号灯(启动按键+绿灯同亮报警) 仿真:proteus 7.8 程序编译器:keil 4/keil 5 编程语言:C语言 设计编号:J013 目录标题 基于51单片机十字路口 ...

  5. 7、基于51单片机智能热水器温度水温水位检测控制系统设计

    毕设帮助.开题指导.技术解答(有偿)见文末. 目录 摘要 一.硬件方案 二.设计功能 三.实物图 四.原理图 五.PCB图 六.Proteus仿真 七.程序源码 八.资料包括 摘要 随着社会的发展,人 ...

  6. 104、基于51单片机智能风扇pwm调速红外遥控无线遥控风扇温控风扇系统设计

    毕设帮助.开题指导.技术解答(有偿)见文末. 目录 摘要 一.硬件方案 二.设计功能 三.实物图 四.原理图 五.Protues仿真 六.流程图 七.程序源码 八.资料包括 摘要 随着气温的逐渐上升, ...

  7. 基于51单片机的上下限可调的数字温度控制系统

    摘要:设计并制作了数字温度显示控制系统,能够实时显示环境温度,并在超温限情况下报警提示和进行相应的温度控制.上下限温度可以人工调节,并能通过串口显示在pc机上.测温范围0-100℃,误差0.1℃以内. ...

  8. 基于51单片机的智能冰箱鱼缸淬火炉温度控制系统proteus仿真

    今天讲解一个温度控制系统的设计,温度控制系统我们在家庭冰箱.鱼缸或者工厂的淬火炉中常常见到,原理其实不复杂:通过人机交互设置好温度的工作范围,外设具有降温和升温设备,当环境温度高于预设温度值,降温设备 ...

  9. 基于51单片机水塔水箱液水位WIFI监控报警设计proteus仿真原理图PCB

    功能: 0.本项目采用STC89C52作为单片机系统的控制MCU 1.WIFI实时上传当前水位状态 2.通过液位传感器检测液位,检测到最低液位和最高液位时,超过设定阈值将声光报警 3.通过状态指示灯显 ...

最新文章

  1. 三维点云分割综述(下)
  2. SAP MM初阶之采购信息记录里的Prior Supplier栏位
  3. 树莓派更换软件源提高下载速度
  4. 浅谈项目开发现状(一)
  5. Flutter Exception降到万分之几的秘密 1
  6. 你应该知道的 iTerm2 使用方法--MAC终端工具
  7. linux tar压缩解压命令的详细解释
  8. UINT_MAX输出后为什么是-1
  9. 读取位置时发生访问冲突 c++_王道计算机网络|第三章数据链路层1314介质访问控制...
  10. 汇编实验五 编写、调试具有多个段的程序
  11. 使用串口打印系统时间
  12. 其实,我只是一个工程师
  13. 12本最具影响力的程序员书籍_书籍书评_酷勤网
  14. 【PTA】【Python】【拼题A 2022 跨年挑战赛】投票
  15. bh1750采集流程图_基于BH1750的光照度检测)教程.doc
  16. 负重下肢外骨骼的运动意图预测和运动状态辨识
  17. 图 邻接矩阵幂的含义 离散数学定理14.11
  18. 实验一 验证删除快照时VMware会改变父快照或基础磁盘
  19. unity寻找指定预设并操作
  20. ubuntu安装postfix+esmtp验证配置

热门文章

  1. 汽车理论matlab编程,汽车理论1.3和2.7matlab编程答案
  2. vb怎么自动连接服务器,vb如何连接云服务器数据库(云服务器和云数据库)
  3. python--原神抽奖程序
  4. 能挽救这条船的,唯有你图片_这是科技如何帮助普通民众挽救生命
  5. Python代码执行顺序,看完你就明白了
  6. ESP32 串口升级
  7. Fluent常用模型介绍-流体模拟仿真ansys
  8. 设置Firefox(火狐)浏览器的中文菜单/界面
  9. python建模大赛算法_利用Python实现主题建模和LDA 算法(附链接)
  10. OC语言基础一:OC方法调用机制,new方法实现原理