基于单片机的温度控制毕业设计_第1页
基于单片机的温度控制毕业设计_第2页
基于单片机的温度控制毕业设计_第3页
基于单片机的温度控制毕业设计_第4页
基于单片机的温度控制毕业设计_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

题目(中文)基于PIC单片机的多路温度巡回检测系统(英文)Multi-channelTemperatureMonitor系别:题目(中文)基于PIC单片机的多路温度巡回检测系统(英文)Multi-channelTemperatureMonitor系别:电子工程系专业:生产过程自动化班级:2姓名:赵威学号:2008280233摘要本设计介绍了一种基于PIC16F877A单片机,利用DS18B20对多路温度采集,并进行温度的控制与检测,并通过12864液晶显示出来。系统中通过控制按钮实现了实时各路的报警温度,并且实现多路与任一单路温度显示切换,从而既可以进行多路的检测又可以进行任一单路的监控,而且还有数字跟图形两种显示方式更为直观。在温度超过设定温度时温度跟时间通过24C02存储起来,以便查看,同时可以通过固定电话远程报警,还能将温度上传至PC机,进行后续处理。综合应用知识,完成系统的设计,此系统的设计具有人性化与经济性。目录TOC\o"1-4"\h\z\uHYPERLINKcmdOpenCOM.Enabled=True'允许使用【打开通信端口】按钮EndSub'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''单击【结束】按钮后激活此事件'使用End命令将系统结束''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''PrivateSubcmdEnd_Click()MSComm1.PortOpen=False'关闭通信端口EndEndSub''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''单击【打开通信端口】按钮后激活此事件'将MSComm控件的参数设置好,并打开'激活【开始检测】按钮''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''PrivateSubcmdOpenCOM_Click()'判断端口号码是否落在1--16之间IfcmbCOM.ListIndex>=0AndcmbCOM.ListIndex<=16ThenMSComm1.CommPort=cmbCOM.ListIndex+1ElseMsgBox"指定通信端口时发生错误!",vbCritical+vbOKOnly,"系统信息"ExitSubEndIf'激活错误检测机制OnErrorGoTocomErrMSComm1.Settings="119200,n,8,1"'设定通信参数MSComm1.PortOpen=True'打开通信端口cmdOpenCOM.Enabled=False'将此按钮设为禁用状态cmdStart.Enabled=True'激活【开始检测】按钮lblMsg.Caption="可单击【开始检测】按钮,执行检测的工作。"ExitSubcomErr:MsgBox"打开通信端口时发生错误!请确定通信端口存在且正常。",vbCritical+vbOKOnly,"系统信息"EndSub''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''单击【开始检测】按钮后激活此事件'将定时器激活或关闭,并显示对应的文字在按钮上,以指示用户操作''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''PrivateSubcmdStart_Click()Timer1.Enabled=NotTimer1.EnabledIfTimer1.EnabledThencmdStart.Caption="停止检测"ElsecmdStart.Caption="开始检测"lblMsg.Caption="已停止检测"EndIfEndSub''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''窗体的Load事件'输入图形暂时设为灰色,表示无状态信息进入'将通讯端口号码及站号填入Combo控件;并默认二者的选项是第一个''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''PrivateSubForm_Load()Dimi%MaxPlotNo=100cmbCOM.ClearcmbCOM.AddItem"COM1"cmbCOM.AddItem"COM2"cmbCOM.AddItem"COM3(USB)"cmbCOM.AddItem"COM4(USB)"cmbCOM.AddItem"COM5"cmbCOM.AddItem"COM6"cmbCOM.AddItem"COM7"cmbCOM.AddItem"COM8"cmbCOM.AddItem"COM9"cmbCOM.AddItem"COM10"cmbCOM.AddItem"COM11"cmbCOM.AddItem"COM12"cmbCOM.AddItem"COM12"cmbCOM.AddItem"COM14"cmbCOM.AddItem"COM15"cmbCOM.AddItem"COM16"cmbCOM.ListIndex=0cmdStart.Enabled=False'以下设定绘图范围,(Xmin,YMax)-(XMax,YMin)picVoltage.Scale(0,50)-(MaxPlotNo,0)picVoltage.DrawWidth=2'使用两个像素宽度的画笔EndSub''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''定时器的Timer事件引发后,就不断地执行其中的程序。'将模拟读值命令送出,再取得返回字符串并判断。'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''PrivateSubTimer1_Timer()DimBuf$,ValueStrAsSingle,Pos1%Buf$=Buf$+MSComm1.Input'读取变量TimeDelay2150ValueStr=Val(Mid(Buf,Pos1+1,7))'分离出正号以后的数值lblValue.Caption=""'清空上一次数据lblValue.Caption=Format(ValueStr,"00.0")&"℃"'显示在画面上IfNowX=0ThenpicVoltage.Cls'清除图形picVoltage.PSet(0,ValueStr)'设定起点Else'以下判断现在的读值是否大于前一次的读值,若是,则以红色绘线'若否,则以蓝色绘线'IfValueStr>PreValue+0.01ThenpicVoltage.Line-(NowX,ValueStr),RGB(255,0,0)'由上一次的位置画至此点'Else'picVoltage.Line-(NowX,ValueStr),RGB(0,0,255)'由上一次的位置画至此点'EndIfEndIfPreValue=ValueStrNowX=NowX+1'位置加1IfNowX>MaxPlotNoThenNowX=0'超过范围则数值归零EndSub9总结本系统的设计更加人性化,可以对4路设定不同的上限报警温度,这样在需要不同温度的测量中更具有优势,当然更多路温度的设计方法也一样。并且报警方面只稍微改动了一下固话就达到了远程报警的功能,温度较大变化时还会自动存储同时时间也会储存起来,可以给操作人员提供更多的信息。本系统所需的元器件价格低廉,单片机资源利用率比较高。4个开关实现的功能比较多,使操作人员操作更加方便。在温度数据的处理上精度可达到0.0625℃,可以满足一定场合的用途。可改进之处:本系统虽然已经实现了大部分功能但仍可继续改造。如果远程测温等,通过无线模块可实现采集到的温度传送到控制台,进行远程监控,无需到现场。图9.1是通过NRF24L01在开发板上实现的功能。由于精力问题没有实现到这个系统上。图9.1远程测温测试附录部分原理图:参考文献[1]陈洪财.单片机C语言和汇编语言实用开发技术[M].哈尔滨工业出版社.2008.5[2]刘和平等.PIC16F877X单片机实用软件与接口技术-C语言及其应用[M].北京航空航天大学出版社,2003-1-1[3]李学海.PIC单片机实用教程—基础篇[M].北京航空航海大学出版社,2007-02[4]李学海.PIC单片机实用教程—提高篇[M].北京航空航海大学出版社,2007-02[5]能昌会.时钟芯片DS1302在单片机系统中的应用[J].电子制作,2007年,11期[6]郭天祥.新概念51单片机C语言教程:入门、提高、开发、拓展[M].电子工业出版社,2009-02147-167、342-349、394-409[7]龙脉工作室.51单片机C语言应用开发技术大全[M].人民邮电出版社.2008-9[8]张越,张炎,赵延军.基于DS18B20温度传感器的数字温度计[J].微电子学,第37卷第5期,2007,10[9]赵鸿图.基于单片机的温度控制系统的设计与实现[J].中文核心期刊《微计算机信息》(嵌入式与SOC),2008:54~56[10]廖琪梅,韩彬,杨文昭,屈景辉.基于单总线器件DSl8820的温度测量仪[J]《国外电子元器件》2008年第2期2008,2国外电子元器件-CNKI[11]刘俊伏,宗云.DSl8B20与单片机的接口及编程技术[J].河北工业科技.第24卷第4期,2007,7[12]张俊芳,张忠民,刘利民.智能单片机温度控制系统[J].辽宁工程技术大学学报,2004:69~71[13]龚红军.单片机温度控制系统[J].电气时代,2002:66~67[14]吴金戌,沈庆阳,郭庭吉.单片机时间与应用[J].清华大学出版社,2002:36~38[15]李江全,张丽,芩红蕾.VisualBasic串口通信与测控应用技术实战详解[M].人民邮电出版社,2007-6致谢通过对PIC16F877A单片机,DS18B20原理介绍及接口实现,DS18B20原理介绍及接口实现,存储芯片AT24C02简单介

温馨提示

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

评论

0/150

提交评论