基于51单片机的水温水浊度检测器(保姆级)

一、设计方案

        基于51单片机实现水源数据采集,将温度传感器DS18B20和水浊度传感器放入水中。水浊度传感器通过ADC0832模数转换器将模拟信号转换为数字信号,传送给单片机。单片机通过LCD1602显示测得的温度值和水浊度值。系统包含三个按键:K1用于启动设计模式,K2用于增加温度上限值,K3用于减少温度上限值。当温度超过设定的上限值时,蜂鸣器会发出报警信号。

二、具体设计

1、STC89C52RC最小系统板

         STC89C52RC最小系统:最小系统是指一个真正可用的单片机的最小配置系统。STC89C52RC是低功耗,高性能的51内核CMOS8位单片机,具有在线编程功能。8k字节Flash,512字节RAM, 32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,3个16 位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),最高运作频率35MHz。

        最小系统设计包括复位电路与晶振电路。本系统设计采用按键复位电路,方便并且可以对单片机工作状态进行直接重启;采用内部时钟方式晶振电路,频率为11.0592MHz。

2、LCD1602

        LCD1602液晶显示器:是一种专门用来显示字母、数字、符号等的点阵型液晶模块。显示内容为16X2即可以显示两行,每行16个字符液晶模块(显示字符和数字)。液晶显示器具有功耗低、抗干扰能力强等优点,广泛用在仪器仪表和控制系统中。

3、DS18B20

        DS18B20温度传感器:DS18B20是一种数字温度传感器,应用非常广泛。它输出的是数字信号,同时具有体积小,硬件资源耗费少,抗干扰能力强,精度高等特点。采用单线接口方式仅需要一条线即可实现与微处理器的双向通信。测温范围可达-55~+125,在-10到+85范围内误差为±0.4°测量温度的结果以9~12位数字量方式串行传送。工作电源3.0~5.5V/DC ,DS18B20温度传感器可以采用外部独立电源供电,也可以用数据线寄生电源供电。

本次使用的是防水型数字温度传感器:

4、ADC0832

        ADC0832模数转换:ADC0832 是国外半导体公司生产的一种 8 位分辨率、双通道 A/D 转换芯片;其输入输出电平与 TTL/CMOS 相兼容;5V 电供电时输入电压在 0~5V 之间;由于它体积小,功耗低,兼容性强,性价比高而深受单片机爱好者及企业欢迎,其目前已经有很高的普及率。将其与水浊度传感器连接。

        单片机对ADC0832的控制原理:正常情况下单片机与ADC0832的接口应该为4条数据线,分别是DI、CS、DO、CLK。因为DI端和DO端在通信时未同时有效地并与单片机的接口是双向的,固电路设计时可以将DI和DO并联在一根数据线上使用。

unsigned char  get_0832_AD_data(bit channel)
{
	unsigned char i;
	unsigned char dat=0;
	ADC0832_CS=1;   //一个转换周期开始
	ADC0832_CLK=0;  //为第一个脉冲作准备
	//ADC0832_CS=0;  //CS置0,片选有效
	
	ADC0832_DIO=1;    //DIO置1,规定的起始信号  
	ADC0832_CLK=1;   //第一个脉冲
	ADC0832_CLK=0;   //第一个脉冲的下降沿,此前DIO必须是高电平
	
	ADC0832_DIO=1;   //DIO置1, 通道选择信号
	ADC0832_CLK=1;   //第二个脉冲,第2、3个脉冲下沉之前,DI必须跟别输入两位数据用于选择通道
	ADC0832_CLK=0;   //第二个脉冲下降沿 
	
	ADC0832_DIO=channel;   //DI置0,选择通道0
	
	ADC0832_CLK=1;    //第三个脉冲
	ADC0832_CLK=0;    //第三个脉冲下降沿 
	
	ADC0832_DIO=1;    //第三个脉冲下沉之后,输入端DIO失去作用,应置1
	ADC0832_CLK=1;    //第四个脉冲
	//ADC0832_CLK=0;    
	
	for(i=0;i<8;i++)  //高位在前
	{
		ADC0832_CLK=1;         //第四个脉冲
		ADC0832_CLK=0; 
		dat<<=1;       //将下面储存的低位数据向右移
		dat|=(unsigned char)ADC0832_DIO; 	 //将输出数据DIO通过或运算储存在dat最低位 
	}	  		        
	ADC0832_CS=1;          //片选无效 
	return dat;	 //将读书的数据返回     
}

5、浊度传感器

        浊度传感器:当被测物质浊度变化时,使光源的强度随之变化,光源的强度可对应到被测物质的浊度。当液体浊度增加时,由于液体阻碍增强,光的通过率低,光敏电阻器接受光线弱。当液体浊度下降时,光敏电阻器接受光线强。让传感器接收到的光信号强度一定,当被测物质浊度发生变化时,使光源的强度随之变化,光源强度可对应到被测物的浊度。数据端输出模拟信号,接ADC0832 CH0端。

6、报警电路

        报警电路:由5V有源蜂鸣器与PNP型三极管外加2k电阻构成。有源蜂鸣器内部带振荡源,三极管Q2起开关管的作用,控制蜂鸣器。节点Beep接单片机。当节点Beep为高电平时,三极管Q2截止,蜂鸣器无电流,不响当节点Beep为低电平时,三极管Q2导通,蜂鸣器有电流,会响。电阻R5为三极管Q2的基极电阻,限制基极电流。

7、原理图与仿真

绘制好原理图后,使用Proteus进行电路仿真,之后进行实物的焊接与连接。

三、最终实物

        当温度传感器接触到水温变化、浊度传感器检测水浊度,可观察到LCD显示数值。当温度或浊度超过设置的上限值时,蜂鸣器发出警报。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值