您的当前位置:首页正文

水温控制系统任务书

来源:九壹网


郑州华信学院

课程设计任务书

题 目: 基于DS18B20的水温控制系统设计

专 业:

姓 名:

学 号:

班 级:

完 成 期 限: 2013年1月5日

指导教师签名:

课程负责人签名:

2012年11月20日

主要内容、基本要求、主要参考资料等

主要内容:

利用单片机AT89C51和DS18B20温度传感器设计一个水温控制系统,能够完成对水温的控制,当水温低于预设温度值时加热,达到预设温度值时自动停止加热,并由数码管显示温度。

基本要求:

利用单片机AT89C51控制DS18B20温度传感器对水温的控制,当水温低于预设温度值时系统开始加热(点亮红色发光二极管表示加热状态),当温度达到预设温度值时自动停止加热。预设温度值和实测温度值分别由两个3位数码管显示,范围为0~99℃。

主要参考资料:

[1]李全利,单片机原理及接口技术[M],高等教育出版社

[2]王文杰,单片机应用技术[M],冶金工业出版社

[3]朱清慧,PROTEUS教程——电子线路设计、制版与仿真[M],清华大学出版社

[4]单片机实验指导书,天煌教仪

[5]彭伟,单片机C语言程序设计实训100例[M],电子工业出版社

【任务目的】了解DS18B20智能温度传感器的基本工作原理,掌握系统的软.硬件设计方法,熟悉PROTEUS仿真软件的使用。

【任务描述】用DS18B20智能传感器作为检测元件;用LED数码管显示温度;用

PROTEUS实现电路设计和程序设计,并进行实时交互仿真。

功能要求与方案论证

功能要求:

测温范围:-50~+110度,误差在0.5度以内。

方案论证:按照系统设计功能的要求,确定系统有三个模块组成;主控器,测温点路及显示电路。

数字温度计总体电路结构框图如图

硬件设计

一.主控制器:单片机AT89C2051具有低电压供电和小体积等特点,两个端口刚好满足电路系统的设计需要,很适合便携手持式产品的设计使用,系统可以用两节电池供电。

二.显示电路:显示电路采用4位共阳极LED数码管,从P1口输出段码,列扫描用P3.O~P3.3口来实现,列驱动用PN4249三极管。

三.DS18B20工作原理

DALLAS半导体公司的数字化温度传感器是支持“一线总线”接口的温度传感器。一线总线独特且经济的特点,使用户可轻松的组建传感器网络,为测量温度范围为-55~+125度,在-10~+85度范围内,精度为0.5度。

现场温度直接以“一线总线”的数字方式传输,明显提高了系统的抗干扰性,适合于恶劣环境的现场温度测量,如环境控制等。

DS18B20的测温原理图如下:

图中低温度系数晶振的振荡频率受到温度而影响很小,用于产生固定频率的脉冲信号送给减法计数器1:高温度系数晶振随温度变化其振荡频率明显变化,所产生的信号作为减法计数器2的脉冲输入。当计数门打开时,DS18B20就对低温系数晶振产生的脉冲信号进行计数,进而完成温度测量。计数门的开启,时间由高温度系数晶振来决定,每次测量前,首先将-55度所对应的一个基数分别置入减法计数器上,温度寄存器中。

减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时,温度寄存器的值将加1,减法计数器1的预置值将重新装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行减法计数,如此循环看,直到减法计数器2计数到0时,停止温度寄存器值得累加,此时温度寄存器中的数值就是所测温度值。

图中的斜率累加器用于补偿和修正测温过程中的非线形性,其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程。直到温度寄存器达到被测温度值。

另外,由于DS18B20单线通信功能是分时完成,她有严格的时隙概念,因此读写时序很重要,系统对于DS18B29的各种操作必按协议进行。操作协议为:初始化DS18B20(发复位脉冲)→发ROM功能命令→发存储器操作命令→处理数据。

系统程序设计

系统程序主要包括主程序、读出温度子程序、温度转换命令子程序、温度转换命令子程序、计算温度子程序和显示数据刷新子程序等。

主程序

主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量温度值,温度测量每1s进行一次。其程序流程图如图所示。

读出子程序

读出温度子程序的主要功能是读出RAM中的9字节,在读出时需进行CRC校验,校验有错时不进行温度数据的改写。其程序流程图如图所示。

温度转换命令子程序

温度转换命令子程序主要是发温度转换开始命令,当采用12位分辨率,时转换时间约为750ms。在本程序设计中采用1s显示程序延时法等待转换的完成。

计算温度子程序

计算温度子程序将RAM中读取值进行BCD码

因篇幅问题不能全部显示,请点此查看更多更全内容