欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    课程设计电加热水温控制系统.docx

    • 资源ID:17459245       资源大小:848.10KB        全文页数:31页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    课程设计电加热水温控制系统.docx

    1、课程设计电加热水温控制系统湖南文理学院课程设计报告课程名称: 自动化专业控制系统课程设计 课题名称: 电加热水温控制系统 系 部: 电气和信息工程学院 专业班级: 自动化09103班 学生姓名: 何国敏 指导教师: 陈日新老师 完成时间: 2012年12月18日 报告成绩: 摘要.2Abstract .3第一章 系统设计41.1 项目概要 41.2 设计任务和要求 4第二章 硬件设计 .52.1 硬件设计概要 52.2 信息处理模块 52.3 温度采集模块 62.3.1 传感器DS18B20简介 .62.3.2 实验模拟电路图 .62.3.3 程序流程图 .72.4 控制调节模块 92.4.1

    2、 升温调节系统 .102.4.2 温度上下限调节系统 .102.5 显示模块 .12第三章 仿真显示成果 .13实习总结 .15致谢 .16参考文献 .17附录 .181、原理图 .182、源程序 .19摘要:在现代工业生产中,温度是常用的测量被控因素。本设计是基于51单片机控制,将DS18b20温度传感器实时温度转化,并通过1602液晶对温度实行实时显示,并通过加热片(PWM波,改变其占空比)加热和步进电机降温逐次逼近的方式,将温度保持在设定温度,通过按键调节温度报警区域,实现对温度在0-99控制的自动化。实验结果表明此结构完全可行,温度偏差可达0.1以内。关键字: 单片机;传感器;温控;D

    3、S18b20Abstract: In modern industrial production, the temperature is commonly measured controlled factors.The design is based on the 51 SCM control, the DS18b20 temperature sensor real time temperature transformation, and through the 1602 LCD on the temperature of the real-time display, and by heatin

    4、g the sheet (PWM wave, changing its duty cycle) heating and stepper motor cooling successive approximation approach, keeping the temperature at the set temperature, through the buttons adjust temperature alarm area, the temperature at 0 -99 control automation.The experimental results show that this

    5、structure is completely feasible, the deviation of temperature can reach 0.1 DEG C.Key word: monolithic integrated circuit ; Sensors; Temperature control; DS18b20第一章 系统设计1.1 项目概要 温度控制系统无论是工业生产过程,还是日常生活都起着非常重要的作用,过低或过高的温度环境不仅是一种资源的浪费,同时也会对机器和工作人员的寿命产生严重影响,极有可能造成严重的经济财产损失,给生活生产带来许多利的因素,基于AT89S52的单片机温度

    6、控制系统和传统的温度控制相比具有操作方便、价价格便宜、精确度高和开展容易等优点,因此市场前景好。1.2设计任务和要求:1、采用DS18B20作为温度传感器进行温度检测。2、对采集温度进行显示(显示温度分辨率0.1);3、采集温度数值应采用数字滤波措施,保证显示数据稳定。4、设计相应的温度控制电路,根据测得的温度情况对加热器进行控制,将温度保持在设定温度。5、通过按键设置温度上下限,超限通过LED、蜂鸣器报警。第二章 硬件设计2.1 硬件设计概要根据需求,我们将系统分为五个模块,信息处理模块,温度采集模块、控制调节模块、报警电路模块,显示模块。2.2 信息处理模块 AT89C52是ATMEL公司

    7、的以8031核构成的8位Flash单片机系列。这个系列单片机的最大特点就是在片内含有Flash存储器,AT89S52单片机是一种低功耗高性能的CMOS8位微控制器,内置8KB可在线编程闪存。该器件采用Atmel公司的高密度非易失性存储技术生产,其指令和工业标准的80C51指令集兼容。片内程序存储器允许重复在线编程,允许程序存储器在系统内通过SPI串行口改写或用同用的非易失性存储器改写。通过把通用的8位CPU和可在线下载的Flash集成在一个芯片上,AT89S52便成为一个高效的微型计算机。它的使用范围广,可用于解决复杂的控制问题,且成本较低。单片机模块如图(1) 所示。图(1)单片机模块2.3

    8、 温度采集模块2.3.1传感器DS18b20简介 DALLAS最新单线数字温度传感器DS18b20简介新的“一线器件”,体积更小、适用电压更宽、更经济。Dallas半导体公司的数字化温度传感器DS18b20是世界上第一片支持“一线总线”接口温度传感器。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新的概念。DS18b20、DS1822“一线总线”数字化温度传感器同DS1820一样,DS18b20也支持“一线总线”接口,测量温度范围为-55 +125,在-10 +85范围内,精度为0.5。DS18b20的精度较差为2。现场温度直接以“一线总线”的数字方式传输,大

    9、大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测量类消费电子产品等。和前一代产品不同,新的产品支持3V 5V的电压范围,使系统设计更灵活、方便。而且新一代产品更便宜,体积更小。DS18b20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DS18b20的实验板原理接线图如图(2):图(2) DS18b20的实验板接线图其中:DQ为数字信号输入/输出端;GND为电源地;VDD为外接供电电源输入端(在寄生电源接线方式时接地)2.3.2实验模拟电路图 温度检测控制模拟电路图ds18b20原件及其连线如图(3)

    10、温度此传感器上显示的温度同步显示到LED显示器上,并有加温,减温按钮。图(3)温度检测控制模拟电路图2.3.3程序流程图图(4)主程序流程图图(5)初始化子程序流程图图(6)读按键的程序流程图2.4控制调节模块2.4.1升温调节系统 通过继电器的开合来控制加热片电路的通断,来达到设温效果,我们预设温度为25度,当温度低于25度时,单片机P3.6引脚输出高电平,继电器导通,对温度传感器加热,加热模块如图(7)所示。图(7)加温控制电路2.4.2温度上下限调节系统 通过按键控制键选着调节对象,通过上升下降调节值大小,模拟电路图如图(78主控电路:我们设定温度为0-30度,为表示方便,这里让,控制开

    11、关,升温开关,降温开关分别为,k1,k2,k3,开始显示的是当前温度,K1主控开关,用来控制进入的是当前温度,温度上限,下限的调节界面。按k1,一次进入三个界面。按K2为加1开关,按一下,加1,k3减1开关,按一下,减1.例如:开始时显示的是当前温度界面,按下k1进入高温设定界面,显示器上显示当前温度和温度上限,按k2,上限加1,按k3,上限减1,再按k1进入显现设定界面,显示器显示当前温度,和温度下限,按k2,下限加1,按k3,下限减1,再按k1,进入显示当前温度界面。如图(8)2.4.3 报警电路系统 通过led灯的闪烁以及蜂鸣器的鸣叫实现报警,如果温度超过上限灯D4亮,蜂鸣器鸣叫,低于下

    12、限灯D2亮,蜂鸣器鸣叫。常温D1亮如图(9)(10)。图(8)温度设定开关图(9)报警模块图(10)P3.7接蜂鸣器2.5显示模块 通过采集ds18b20的温度,同步显示到LED显示器上,精确到小数点后第一位。如下图图(11)显示电路 第三章 仿真显示成果3.1 运用proteus仿真图(12)开始启动时,显示学号图(13)显示当前温度图(14)温度低于低温下限,低温报警灯亮,蜂鸣器鸣叫图(15)温度高于温度上限,高温报警灯亮,蜂鸣器鸣叫实习总结刚开始接触到题目,一头雾水,第一周,我从网上下载了,基于8051+PROTEUS仿真100实例这个文档,从最简单的点亮一个流水灯,让数码管显示数字开始

    13、,第一周就做了这些简单的例子,100例做了20多个。刚开始很慢,仿真模型里的原器件都不会找,编的程序编译时总出现报警、错误。一遇到错误我们就慌了神了,所以起步很难。后来在老师和同学的帮助下,慢慢积累,知道了常见的报警和错误的解决方法,编完调试成功20个例子后,算是对单片机有了一定的基础。但这时一周已经过去了,别的小组已经仿真通过,开始实际运行了,而我们这组才开始。 第二周开始了,第一天我们没做设计,把各个小组的程序,电路图都拿来看,不懂得就请他们帮忙讲解。由于前面有了知识,一些模块都看得懂,学得很快了。发现主要是把各个模块融合到一起,头文件写到最前面,通过函数的调用!给单片机接口高低电平,来实

    14、现功能。这正好是我们的强项,一星期20个例子的功劳。第二天我们开始自己编程,但是融合的过程中总出现错误,要嘛是变量没定义,要嘛是头文件重复!还有一个,报警电路的数码管总是不亮,但单片机对应的接口有高低电平的变化,实际电路板上也成功,这个问题困扰了我们很久,怎么办都不亮,当时有想砸电脑的冲动,后来还是解决了,原来,是标号标错了位置,一点小问题,困扰了我们2天。当解决这个问题时,那心灵的喜悦是这辈子都忘不了的! 通过两周的实习,我们从一个小白成长为一个对单片机入了门,并能实现简单的编程,还能解决实际问题的小人物了!虽然过程很苦,每天对着电脑,就吃饭和上洗手间离开板凳!一直盯着屏幕看!不过2周熬过来

    15、了,收获蛮大的!例如后来我又在我们的程序中加入了降温程序!温度高,调动电动机吹风降温! 感觉无论做什么事都要吃得了苦受得了罪,天下没有什么事是难的,只有懒惰的人,只要用心去做,什么事都能成功!致谢 两周的实习中,我遇到了许许多多的困难,但我能走过来,这和我组成员共同研究,共同讨论问题的辛勤是分不开的,灰心时我们相互鼓励,相互打气,。感谢同组成员。开始接触单片机,我是一个小白级人物,谢谢把我领入门的同班同学们,当我有问题请教时,他们会放下手头的工作,倾心为我解答,程序编译错误时,他们会帮我一起看提示,该错误!谢谢同班同学们!当然,我们实习时,老师一直陪伴着我们,尽管我没有问过老师问题,老师也没有

    16、帮我调试程序,但还是要谢谢刘老师,吕老师,你和我们在一起,无形中给了我们莫大的动力!同时也起到了监督我们的作用,使我们不能够偷懒,不会出现有一组同学完成了,那么全班都完成了的情况!正由于你们的严格的要求,我们这次实习才能圆满的完成,同学们都做出了想要的结果。 参考文献1 郭天祥.新概念51单片机C语音教程入门提高开发拓展攻略 M.北 京:北京:电子工业出版社,2009.2 韩广兴.电子元器件和实用电路基础M.北京:电子工业出版社,2005.3 方大千,朱丽.电子控制系统装置制作入门M.北京:国防出版社,2006.4 刘向举,刘丽娜. 基于单片机的智能温度测控系统的设计J. 齐齐哈尔大 学学报(

    17、自然科学版). 2012(03)5 黄文力,邓小磊. DS18B20数字温度传感器接口程序的时序J. 仪器仪表 用户. 2011(06)6 黄晓林.一种实用型智能恒温控制系统设计J. 自动化技术和使用. 2011(11)7 王文,王直.基于ARM和DS18B20的温度监测系统J. 电子设计工程. 2011(20)8 陈锡华,贾磊磊.温度传感器DS18B20序列号批量搜索算法J. 单片机和 嵌入式系统使用. 2011(09)附录: Proteus系统原理图:图(16)系统原理图源程序:#include#include #define uchar unsigned char#define uint

    18、 unsigned intsbit DQ=P33;/ds18b20和单片机连接口sbit RS=P20;sbit RW=P21;sbit EN=P22;sbit keyadd=P14;sbit keydel=P15;sbit keyok=P16;sbit led_green=P23;sbit led_yellow=P24;sbit led_red=P25;sbit shengwen=P36;sbit jiangwen=P35;sbit BEEP = P3 7;uchar code str1= Temperature is ;uchar code str2=;uchar code str3=se

    19、t_hightemp: ;uchar code str4=set_lowtemp: ;uchar code str5=studentN0: ;uchar code str6=32209104 ;uchar data disdata5;uchar set_hightemp=33,set_lowtemp=0;uchar p=0;uchar aa2;uint tvalue;/温度值uchar tflag;/温度正负标志/*lcd1602程序*/void delay1ms(uint ms)/延时1毫秒 uint i,j; for(i=0;ims;i+) for(j=0;j114;j+);void de

    20、lay1s(uint s) uint i; for(i=0;i 0; j-)/响30ms BEEP = BEEP; /输出频率800Hz P0 = 0x7E; /点亮D00 和D07 delay1ms(10); /延时310us delay1ms(10); /延时310us /1111111111111111111111111111111111111 报警程序void wr_com(uchar com)/写指令/ delay1ms(1); RS=0; RW=0; EN=0; P0=com; / delay1ms(1); EN=1; delay1ms(1); EN=0;void wr_dat(u

    21、char dat)/写数据/ delay1ms(1); RS=1; RW=0; EN=0; P0=dat; delay1ms(1); EN=1; delay1ms(1); EN=0;void lcd_init()/初始化设置/ delay1ms(15); wr_com(0x38);delay1ms(5); wr_com(0x08);delay1ms(5); wr_com(0x01);delay1ms(5); wr_com(0x06);delay1ms(5); wr_com(0x0c);delay1ms(5);void display(uchar *p)/显示/ while(*p!=0) wr_

    22、dat(*p); p+; delay1ms(1); void init_play()/初始化显示 lcd_init(); wr_com(0x80); display(str5); wr_com(0xc0); display(str6); delay1s(3); lcd_init(); wr_com(0x80); display(str1); wr_com(0xc0); display(str2);/*ds18b20程序*/void delay_18B20(uint i)/延时1微秒 while(i-);void ds1820rst()/*ds1820复位*/ uchar x=0; DQ = 1

    23、; /DQ复位 delay_18B20(4); /延时 DQ = 0; /DQ拉低 delay_18B20(100); /精确延时大于480us DQ = 1; /拉高 delay_18B20(40); uchar ds1820rd()/*读数据*/ uchar i=0; uchar dat = 0; for (i=8;i0;i-) DQ = 0; /给脉冲信号 dat=1; DQ = 1; /给脉冲信号 if(DQ) dat|=0x80; delay_18B20(10); return(dat);void ds1820wr(uchar wdata)/*写数据*/ uchar i=0; for

    24、 (i=8; i0; i-) DQ = 0; DQ = wdata&0x01; delay_18B20(10); DQ = 1; wdata=1; read_temp()/*读取温度值并转换*/ uchar a,b; ds1820rst(); ds1820wr(0xcc);/*跳过读序列号*/ ds1820wr(0x44);/*启动温度转换*/ ds1820rst(); ds1820wr(0xcc);/*跳过读序列号*/ ds1820wr(0xbe);/*读取温度*/ a=ds1820rd(); b=ds1820rd(); tvalue=b; tvalue=8; tvalue=tvalue|a

    25、; if(tvalue0x0fff) tflag=0; else tvalue=tvalue+1; tflag=1; tvalue=tvalue*(0.625);/温度值扩大10倍,精确到1位小数 return(tvalue);/*/void ds1820disp()/温度值显示 uchar flagdat; disdata0=tvalue/1000+0x30;/百位数 disdata1=tvalue%1000/100+0x30;/十位数 disdata2=tvalue%100/10+0x30;/个位数 disdata3=tvalue%10+0x30;/小数位 if(tflag=0) flag

    26、dat=0x20;/正温度不显示符号 else flagdat=0x2d;/负温度显示负号:- if(disdata0=0x30) disdata0=0x20;/如果百位为0,不显示 if(disdata1=0x30) disdata1=0x20;/如果百位为0,十位为0也不显示 wr_com(0xc0+4); wr_dat(flagdat);/显示符号位 wr_com(0xc1+4); wr_dat(disdata0);/显示百位 wr_com(0xc2+4); wr_dat(disdata1);/显示十位 wr_com(0xc3+4); wr_dat(disdata2);/显示个位 wr_com(0xc4+4); wr_dat(0x2e);/显示小数点 wr_com(0xc5+4); wr_dat(disdata3);/显示小数位void key_count(uint ok) wr_com(0x80); if(ok=1) display(str3); else display(str4); wr_com(0x8d); wr_dat(aa0); wr_com(0x8


    注意事项

    本文(课程设计电加热水温控制系统.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开