“开拓杯”参赛作品基于STC89C58RD+单片机的智能温控风扇

上传人:仙*** 文档编号:30496354 上传时间:2021-10-10 格式:DOC 页数:25 大小:847.52KB
收藏 版权申诉 举报 下载
“开拓杯”参赛作品基于STC89C58RD+单片机的智能温控风扇_第1页
第1页 / 共25页
“开拓杯”参赛作品基于STC89C58RD+单片机的智能温控风扇_第2页
第2页 / 共25页
“开拓杯”参赛作品基于STC89C58RD+单片机的智能温控风扇_第3页
第3页 / 共25页
资源描述:

《“开拓杯”参赛作品基于STC89C58RD+单片机的智能温控风扇》由会员分享,可在线阅读,更多相关《“开拓杯”参赛作品基于STC89C58RD+单片机的智能温控风扇(25页珍藏版)》请在装配图网上搜索。

1、 第十九届“开拓杯”参赛作品基于STC89C58RD+单片机的智能温控风扇目 录摘要.3一、设计要求与方案论证.41.1设计任务和任务要求. .41.2系统方案选择和论证.4二、系统硬件设计和实现62.1系统总体设计62.1.1 系统总体设计框图62.2系统各模块作用72.2.1 STC89C52单片机72.2.2 1602液晶显示屏模块82.2.3 DS18B20温度传感器模块8 2.2.4 ULN2003AN驱动模块.92.2.5电源模块.9 2.2.6报警电路模块.102.3 程序的设计102.3.1控制算法设计与实现102.3.2 PID算法程序流程图12三、 系统测试123.1测试内

2、容123.1.1电源电路测试.123.1.2最小系统和1602液晶电路测试.13 3.1.3 ULN2003AN驱动测试.13 3.1.4 DS18B20温度感器测传试.133.2测试步骤133.2.1仿真133.2.2实际测试133.3 测试记录133.3.1电源输出电压143.3.2 ULN2003AN驱动输出电压(理论)14四、设计总结和心得15 参考文献.16附录一:芯片管脚17附录二:程序清单21摘 要智能温控风扇是基于51单片机设计而成的,通过DS18B20温度传感器对温度进行采集,并通过1602液晶屏显示,当温度超过35度时,PWM通过改变占空比来驱动ULN2003AN,从而使风

3、扇转动,从而达到温度降低的效果,当温度传感器检测到温度低于35度的时侯,风扇自动停止运转,此时随着风扇的停止,温度又开始上升,但当系统检测到温度超过35度时,风扇又自动运转,如此反复使最终温度趋于35度左右,从而达到智能温控的效果。若温度超过40度时,系统自动报警。关键字:PWM;DS18B20温度传感器 ;1602液晶显示屏; STC89C52单片机;ULN2003AN驱动 ;40度报警器一. 设计要求与方案论证1.1设计任务和任务要求设计并制作一个 智能温控风扇 ,要求如下: 1、温度超过35度时风扇自动运转,当温度降到35度以下时,风扇自动停止运转,当温度又开始上升超过35度时,风扇又自

4、动运转,如此反复使温度最终趋于35度左右。2、液晶屏上能显示检测到的温度以及相应的占空比。 3、当温度超过40度时,系统自动报警。1.2 系统方案选择和论证 根据设计要求,选择设计一个基于51单片机实现智能温控风扇的装置,控制部分由单片机实现,采用1602液晶显示屏显示温度和占空比。使用ULN2003AN驱动来驱动风扇的转动,温度传感器的方案选择如下。方案一DS18B20温度传感器优点:(1)DS18xx系列温度传感器是数字式温度传感器,相对于传统温度传感器精度高、稳定性好、电路简单、控制方便。(2)应用中不需要外部任何元器件即可实现测温电路。 (3)测温范围-55+125,最大精度0.062

5、5。 (4)只通过一条数据线即可实现通信。 (5)每个DS1820器件上都有独一无二的序列号,所以一条数据线上可以挂接很多该传感器。 (6)内部有温度上、下限告警功能。缺点:(1)编程复杂(2)转换速度慢方案二AD590温度传感器优点:AD590好处是速度快,编程简单。缺点:需要和高精度ADC配合使用才能得到数据,需要校准,电路复杂,成本高,需要模拟转数字电路 ,精确度低,对线阻有要求 。总的来说DS18B20的优点都是在弥补AD590的缺点的,所以选择方案一。二.系统硬件设计和实现2.1系统总体设计2.1.1 系统总体设计框图1602液晶显示屏模块 STC89C52单片机模块 DS18B20

6、温度传感器模块ULN2003AN驱动模块报警电路模块风扇模块通过DS18B20温度传感器对温度进行采集,并通过1602液晶屏显示,当温度超过35度时,CPU通过ULN2003AN来驱动风扇转动,从而达到温度降低的效果,当温度传感器检测到温度低于35度的时侯,1602显示上占空比逐渐下降,最终趋于0,风扇自动停止运转,此时随着风扇的停止,温度又开始上升,但当系统检测到温度超过35度时,风扇又自动运转,同时1602上显示的占空比也在上升,使风扇转速加快,从而缩短降温的时间。如此反复使最终温度趋于35度左右,从而达到智能温控的效果。2.2系统各模块作用2.2.1 STC89C52单片机利用51单片机

7、的I/O口输出,来控制PWM脉宽调制,使其输出不同的占空比来实现风扇的转速不同,同时也通过51单片机,使1602液晶屏显示相应的占空比和温度。2.2.2 1602液晶显示屏模块通过51单片机来驱动1602液晶显示屏,直观地显示出外界温度和占空比的具体数值以及变化。2.2.3 DS18B20温度传感器模块由其对外界的温度进行采集,并通过单片机的I/O口返回一个温度值信号。 2.2.4 ULN2003AN驱动模块由于单片机I/O口输出地电流很小,其不足以使电风扇很好的工作起来,因而我们需要给其添加一个驱动电路,从而使电风扇转动起来,很好的工作,实现降温的目的。2.2.5电源模块原理图由直流稳压源来

8、提供其12V和5v的系统输入电压。.2.2.6报警电路模块 此模块电路采用三极管做驱动蜂鸣器和发光二极管,三极管基极与单片机I/O口相连,低电频有效。图中D2二极管作用为续流,防止三极管截止时产生的反电动势击穿三极管。此声光报警电路如图F-7。图F-72.3 程序的设计2.3.1控制算法设计与实现1、 PID参数的整定 确定比例系数Kp确定比例系数Kp时,首先去掉PID的积分项和微分项,可以令Ti=0、Td=0,使之成为纯比例调节。输入设定为系统允许输出最大值的6070,比例系数Kp由0开始逐渐增大,直至系统出现振荡;再反过来,从此时的比例系数Kp逐渐减小,直至系统振荡消失。记录此时的比例系数

9、Kp,设定PID的比例系数Kp为当前值的6070。 确定积分时间常数Ti比例系数Kp确定之后,设定一个较大的积分时间常数Ti,然后逐渐减小Ti,直至系统出现振荡,然后再反过来,逐渐增大Ti,直至系统振荡消失。记录此时的Ti,设定PID的积分时间常数Ti为当前值的150180。 确定微分时间常数Td微分时间常数Td一般不用设定,为0即可,此时PID调节转换为PI调节。如果需要设定,则与确定Kp的方法相同,取不振荡时其值的30。 系统空载、带载联调对PID参数进行微调,直到满足性能要求。2.3.2 PID算法程序流程图PID算法程序流程图如图F-5所示开始采样取实测值计算偏差计算增量计算位置量位置

10、量上限制位置量下限制位置量=上限制位置量=下限制返回位置量结束三.系统测试3.1测试内容3.1.1电源电路测试 (1)在输入端输入220V交流电压,测输出电压。 (2)在示波器上观察波形,并测出纹波大小。 3.1.2最小系统和1602液晶电路测试 3.1.3 ULN2003AN驱动测试 3.1.4 DS18B20温度传感器测试3.2测试步骤3.2.1仿真所测试的内容,先在Protus软件上进行电脑仿真。对仿真中遇到的问题进行分析、找出解决问题的方法,若程序出错,及时修改程序。3.2.2实际测试确保仿真内容达到要求后,对实际硬件制作的系统及个模块进行测试。最好测试结果的分析记录。若系统存在问题,

11、即使找出解决问题的方法。确保最小系统的良好工作性、扩展性。在测试过程中,同时测试复位功能。按下复位键,看测试现象。3.3 测试记录可先一个模块的测试,然后整个模块进行测试。测试仪器:双通道数字示波器Tektonix TDS2012B 100MHz 1Gs/s,数字万用表DT9205A,稳压电压QJE QJ3003SIII 2XO30V/3A5V/3A。3.3.1电源输出电压(测试)输入输出纹波输入输出纹波220v(交流)11.96v4.2mv220v(交流)4.98v5.4mv3.3.2 ULN2003AN驱动输出电压(理论)由于在整个电路中利用的是脉冲宽度调制(PWM)来调节风扇的转速,通过

12、输出电压的测试,我们可以直观的看到电压不同,可感受到风扇的转速不同。电压计算公式 U=12V*Q占空比(Q)0%20%50%100%输出电压(U)0V2.4V6V12V四、设计总结和心得 通过对智能温控风扇的设计与制作,我们深刻的认识到用模块化的思想设计电路的重要性,其有利于我们分块的找出问题。在和队友准备比赛和比赛过程中,相互的配合和支持会使整个比赛充满挑战和乐趣,充分意识到团队合作的重要性。方案论证过程中,难免有些不和意见,这些都不是问题的问题。比赛过程中需要我们要有对新知识的快速汲取能力,来应对对不同芯片不同器件的快速掌握,从而满足对比赛的要求。在硬件设计过程中,一些常见的低级错误常常在

13、不知不觉中发生,且制作过程中往往很难得到发现,因而我们需要不断地总结经验,吸取教训,特别是不要把电源短路了,这是最忌讳的地方。在软件方面,我们学会了要掌握很多算法,从基础入手,同时在写之前最好要列一个程序流程图,这有利于我们理清程序的思路。比赛往往充满着机遇和挑战,比赛结果固然重要,但从整个比赛过程中来认识自己,发现自己,挑战自己,既而更好的提高自己和丰富自己,在以后的天天成长过程中时刻提醒自我,从而不断得超越自我参考文献:1黄智伟。全国大学生电子设计竞赛培训教程。北京:电子工业出自出版社,20052杨加国。单片机原理与应用及C51程序设计。北京:清华大学出版社,20083吴运昌。模拟集成电路

14、原理与应用。华南理工大学出版社,2004.4肖景和。集成运算放大器应用精粹。人民邮电出版社,2006.5康华光。电子技术基础(模拟部分)。高等教育出版社,2005.6康华光。电子技术基础(数字部分)。高等教育出版社,2005.附录一:芯片管脚ULN200378057812DS18B20温度传感器附录二、程序清单#define uint8_t char#include #include#include 1602.h#includeds18b20.h#includePID.hsbit P30=P30;uint8_t string32= ;/显示缓冲区unsigned char temp,count

15、;unsigned char ZKB,set=35;/*说明:DS18B20显示函数*/void Dispaly_Temperature() unsigned char ng=0; if(Temp_Vaule1&0xf8)=0xf8) Temp_Vaule1=Temp_Vaule1; Temp_Vaule0=Temp_Vaule0+1; if(Temp_Vaule0=0x00) Temp_Vaule1+; ng=1; temp=(Temp_Vaule0&0xf0)4)|(Temp_Vaule1&0x0f)10)count=0; if(count9)ZKB=10; if(ZKB1) ZKB=0;void main() TMOD=0X01; TH0=0XF7; TL0=0X18; TR0=1; ET0=1; EA=1; lcdInit(); while(1) Dispaly_Temperature(); Read_Temperature(); lcdWriteNew(string); ZKB_ctrol(); set_ctrol(); 25

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!