ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:169.86KB ,
资源ID:18293205      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/18293205.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于51系列单片机的自动喷水系统Word格式.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于51系列单片机的自动喷水系统Word格式.docx

1、1.本次系统设计中我们加入了报警电路模块,当温度达到我们的设定值时,蜂鸣器便会开始报警,而当温度降到设定值以下时,蜂鸣器将会停止报警。2.在考虑温湿度传感器的选择时,我们决定使用同时集成了温湿度采集及数字输出的AM2301,相比温度传感器DS18B20和湿度传感器AM1001,它更加方便使用,而且采集输出精度更高。3.在设定温湿度的值时,我们采用4个按键来控制,其中S1和S2键用作减和加,用来定时和设定温湿度的初始值,S2键进行倒计时和时间设定的切换,S4键用来切换定时喷水、根据温度喷水、根据湿度喷水这三种指定模式。能够自由设定温湿度和定时时间,显得更为人性化,更加具有实用功能。 4.保护电路

2、,使用继电器,通过弱电控制强电,减少了电磁阀对控制系统的干扰。一定程度上保护了主要电路,延长了使用寿命。项目实现方案:方案的比较1.单片机的选择单片机具有体积小,价格低廉,功能强大,稳定可靠,运算速度快,功耗低,扩展容易,抗干扰能力强,系列齐全,使用方便灵活等优点,广泛应用于工业过程控制、自动监测、智能仪器仪表、家用电器等领域。常用开发单片机有AT89S51和AT89S52,二者各有优缺点。方案一:使用AT89S51控制系统。AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只

3、读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。方案二:使用AT89S52控制系统。相比51,功能基本相同,它的价格虽然略高一点,但是性能更好一点。总结:综合考虑,采用方案二,本次设计选用市场上比较普遍的单片机AT89S52来实现系统设计,其内部带有8KB的程序存储器,256字节的数据存储器,足以满足系统要求。并且他们的引脚相同,而52单片机能发挥出更大的能效,且由于我们正在学习单

4、片机,手上正好有52单片机,我们对它也比较熟悉,所以就决定采用52单片机来实现。2.传感器的选择对于传感器的选择,我们有两种方案,一种是温度采集使用DS18B20,而湿度采用AM1001,另一种则是采用已将温湿度采集集成在同一片传感器上,且以校准数字信号输出的复合传感器AM2301。综合二者,我们选用AM2301(又名DHT21)温湿度传感器,选用它有以下几个理由:(1)考虑DS18B20采集比较麻烦,因此我们决定直接使用AM2301这块集成温湿度并且数字输出的传感器。(2)超小的体积、极低的功耗,信号传输距离可达20 米以上,使其成为温湿度测量的最佳选择。(3)因为AM2301,有已经编译好

5、的驱动程序,只需编写将感应到的数据传送到单片机,再发送到串口显示,省去了编程的麻烦,且只需要一个单片机I/O口来传送数据,节省了硬件资源。3.显示器的选择显示器可采用LED数码管和LCD显示屏,将二者进行比较,LED结构简单,它实际上是由七个发光二极管组成8字形构成的,加上小数点就是8个。这些段分别由字母a,b,c,d,e,f,g,dp来表示。当数码管特定的段加上电压后,这些特定的段就会发亮,以形成我们眼睛看到的 2个8数码管字样了。它的原理简单,容易理解和操作,对于一些简单的显示系统是非常理想的器件。LCD虽然功能强大,但是操作复杂,并且LED在本系统中就足以发挥作用,加上成本低廉,所以在本

6、次设计中选用LED显示数据。系统架构图在控制系统方面,通过我们学过的自动控制原理的知识,我们确定本系统采用有单片机的传统的闭环控制系统,系统控制原理图如下图所示:闭环控制逻辑原理框图其中,植被温湿度是由AM2301传感器组成的数据采集子系统,数据显示是由6片LED数码管构成的显示子系统,AT89S52处理数据是由52单片机构成的主控制子系统,其中还包括了定时以及对电磁阀的控制,电磁阀开关则是实现喷水动作功能的子系统。设计与论证该自动喷水系统共分为七个模块:主控制模块、电磁阀控制模块、报警模块、显示模块、定时模块、温度采集模块、抗干扰模块1.主输入输出控制电路。自动控制系统通过AM2301传感器

7、对受控对象的有关参数信息数据的实时采集及数字变化,进入单片机CPU进行必要的处理,而后输出以驱动执行器件或机构产生相应的动作,直接推动被控对象来调整被测参量,最终目的以使受控参量始终处于要求值或范围内。在单片机完成控制处理后总是以数字信号通过I/O口线或数据总线输出至受控对象的。对受控设备的驱动常采用模拟量或数字量输出驱动两种方式。而在实际的单片机测控系统中,数字量输出控制已越来越广泛地被应用,尤其是其中的开关量输出驱动和控制。目前单片机I/0口线的驱动能力和与CPU直接接口的一般TTL电路或CMOS电路的驱动能力很有限的,不足以驱动那些功率开关(如继电器、电机、电磁开关等)和强电设备、大功率

8、负载,且由于工作现场环境恶劣、输出通道接近控制对象及周围的电磁等干扰严重,所以输出控制电路设计主要是解决输出隔离即干扰防治和功率驱动问题。2.电磁阀控制电路电磁阀控制电路主要由NPN共集-共射复合管及继电器组成,当单片机P0.7给出高电平,复合管导通,继电器接通,将开关吸合,电磁阀接通开始放水。因为单片机的带负载能力比较小,不足以驱动继电器和电磁阀,所以采用功率放大驱动电路,使得电磁阀能够工作。输出通道控制图如图所示:电磁阀控制电路3.报警电路设计报警电路设计作为一个独立的模块,采用市面上比较普遍的蜂鸣器电路,结构比较简单,使用AT89S52上的一根口线驱动蜂鸣器发声。蜂鸣器电路4.显示模块电

9、路显示模块可采用两种方式,一种是采用动态显示方式驱动6个数码管工作,左边四位显示温湿度值,精确到小数点后一位,右边两位为温湿度的单位显示。其中通过S4键切换温湿度,数码管通过位段扫描实现显示功能。5.定时模块定时模块其中分为定时部分和调时部分,同样通过S1和S2键来控制时间的减和加,S3键来确定定时和切换设置时间。温湿度程序代码与定时类似,下面仅列出定时程序代码。定时程序代码:void time_display(int a,int b,int c) /调试部分、P2为位选,P0为段选,显示格式为 时-分-秒uchar s,g; s=a/10; g=a%10; clk=0; P2=wei5; P

10、0=duans; clk=1; delay2(1); P2=0; P2=wei4; P0=duang|0x80; s=b/10; g=b%10; P2=wei3; P2=wei2; s=c/10; g=c%10; P2=wei1; P2=wei0; P0=duang;6.温湿度采集电路设计AM2301是一块集成了温湿度采集及数字输出的传感器,因此,我们只需要将AM2301的VCC端接5V电压,将SDA端接52单片机I/O进行数据的输入输出,同时将GND端接地,便可实现温湿度的采集。温湿度采集电路设计7.硬件的抗干扰设计在自动浇灌控制系统中,系统可靠性的保证是非常重要的,单片机硬件系统的可靠性决

11、定了整个系统的可靠性。硬件抗干扰技术主要体现在过程通道抗干扰设计、供电系统抗干扰设计和印刷电路板抗干扰设计三个方面。单片机硬件系统的抗干扰能力与元器件质量、装配质量等因素都有关系,但主要取决于设计的可制造性(DEM),本系统采取如下相应的抗干扰措施。1.采用抗干扰稳压电源采用具有抗干扰能力的稳压电源,绝大部分干扰都可以克服。提高稳压电源抗干扰能力,通常采用的措施:采用电源滤波;通过低通滤波器接入电网。2.采用良好的接地系统。3.强电与弱电之间采用继电器隔离。四. 关键模块的分析1.地表温湿度传感器首先是对AM2301的介绍。AM2301 湿敏电容数字温湿度模块是一款含有己校准数字信号输出的温湿

12、度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。传感器包括一个电容式感湿元件和一个高精度测温元件,并与一个高性能8 位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式储存在单片机中,传感器内部在检测信号的处理过程中要调用这 些校准系数。标准单总线接口,使系统集成变得简易快捷。超小的体积、极低的功耗,信号传输距离可达20 米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选择。产品为3 引线(单总线接口)连接方便。特殊封装形式可根据用户需求而

13、提供。AM2301引脚图及其分配引脚颜色名称描述1红色VDD电源(3.5-5.5v)2黄色SDA串行数据,双向3黑色GND地4NC空脚AM2301引脚分配AM2301 的数据总线SDA 输出40 位数据后,继续输出低电平50 微秒后转为输入状态,由于上拉电阻随之变为高电平。同时AM2301 内部重测环境温湿度数据,并记录数据,测试记录结束,单片机自动进入休眠状态。单片机只有收到主机的起始信号后,才重新唤醒传感器,进入工作状态。AM2301 传感器读单总线的流程图如图所示AM2301传感器读单总线的流程图温湿度检测程序代码:#include intrins.h/typedef unsigned

14、char U8; /* defined for unsigned 8-bits integer variable 无符号8位整型变量 */typedef unsigned int U16; /* defined for unsigned 16-bits integer variable 无符号16位整型变量 */#define uchar unsigned char#define uint unsigned int/-/-IO口定义区-/sbit beep=P32;sbit s0=P33;sbit s1=P34;sbit s2=P35;sbit s3=P36;sbit HR=P37 ;sbit

15、 clk=P27;/-定义区-/U8 U8FLAG,q,w,e;U8 U8temp;U8 U8T_data_H,U8T_data_L,U8RH_data_H,U8RH_data_L,U8checkdata;U8 U8T_data_H_temp,U8T_data_L_temp,U8RH_data_H_temp,U8RH_data_L_temp,U8checkdata_temp;U8 data tab6,tabs6;U8 U8comdata;U8 outdata6; /定义发送的字节数U8 count;U8 str6; U16 U16temp1,U16temp2;uchar shi,fen,mia

16、o,nam;uchar code wei=0x01,0x02,0x04,0x08,0x10,0x20;/八位位选码表uchar code duan=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/数码管显示编码(1-F)void SendData(U8 *a)outdata0 = a0; outdata1 = a1; outdata2 = a2; outdata3 = a3; outdata4 = a4; outdata5 = a5; count = 1; SBUF=outdata0;void delay1(U16 t)U16 i,j; f

17、or(i=t;i0;i-) for(j=25;jj-);void delay2(U8 z)uint i,j; for(i=z; for(j=110;void Delay(U16 j)U8 i; for(;j-) for(i=0;i27;i+); void Delay_10us(void) i-;void COM(void) for(i=0;8;i+) U8FLAG=2; while(!HR)&U8FLAG+); Delay_10us(); U8temp=0; if(HR)U8temp=1; U8FLAG=2; while(HR)&/超时则跳出for循环 if(U8FLAG=1)break;/判

18、断数据位是0还是1/ 如果高电平高过预定0高电平值则数据位为 1 U8comdata=1; U8comdata|=U8temp; /0 /rof/-/-湿度读取子程序 -/-以下变量均为全局变量-/-温度高8位= U8T_data_H-/-温度低8位= U8T_data_L-/-湿度高8位= U8RH_data_H-/-湿度低8位= U8RH_data_L-/-校验 8位 = U8checkdata-/-调用相关子程序如下-/- Delay();, Delay_10us();,COM();void RH(void)/主机拉低18ms HR=0; Delay(180); HR=1;/总线由上拉电

19、阻拉高 主机延时20us/主机设为输入 判断从机响应信号/判断从机是否有低电平响应信号 如不响应则跳出,响应则向下运行 if(!HR) /T !/判断从机是否发出 80us 的低电平响应信号是否结束/判断从机是否发出 80us 的高电平,如发出则进入数据接收状态/数据接收状态 COM(); U8RH_data_H_temp=U8comdata; U8RH_data_L_temp=U8comdata; U8T_data_H_temp=U8comdata; U8T_data_L_temp=U8comdata; U8checkdata_temp=U8comdata;/数据校验U8temp=(U8T_

20、data_H_temp+U8T_data_L_temp+U8RH_data_H_temp+U8RH_data_L_temp); if(U8temp=U8checkdata_temp) U8RH_data_H=U8RH_data_H_temp; U8RH_data_L=U8RH_data_L_temp; U16temp1 =U8RH_data_H; U16temp1 = 8; U16temp1 |= U8RH_data_L;/获得完整的湿度 tab0=U16temp1/100; /湿度百位 tab1=U16temp1%100/10;/湿度十位 tab2=U16temp1%10; /湿度个位 U8

21、T_data_H=U8T_data_H_temp; U8T_data_L=U8T_data_L_temp; U16temp2 = U8T_data_H; U16temp2=8; U16temp2 |= U8T_data_L;/获得完整的温度 tab3=U16temp2/100;/温度百位 tab4=U16temp2%100/10;/温度十位 tab5=U16temp2%10;/温度个位 U8checkdata=U8checkdata_temp;/校验位2.主控制器模块系统中我们选择主控制器芯片的时候需要考虑整个系统的功耗要低,并且有非易失性的程序和数据存储器方便数据的掉电存储,要集成内部基准电压源并采用at89s51单片机。AT89S52是一个低功耗,高性能CMOS 8位单片机,片内含8k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1