基于DS18B20和单片机的热计量仪表采集系统设计|壹芯微
随着生活水平的提高,人们对生活的环境提出了更高的要求,良好的温度控制对提高人民生活质量起着非常重要的作用。特别是北方,城镇居民冬季一般采取集中供暖,采暖质量的好坏,直接关系到人们生产生活。目前我国绝大数的地区采暖缺少有力的监控系统,无法完成按需采暖以及实现对温度数据的有效控制,从而造成了对供暖热能的浪费。随着人们节约能源意识的逐步增强,迫切需要一种操作简单、节能环保和高效利用的智能热计量仪表温度控制系统。因此本文以AT89S52为控制芯片,DS18B20为温度采集模块,LCD12864为显示采热信息显示模块,设计了一套集成控制室内温度与显示采热信息的热计量仪表温度控制系统。
1.热计量表工作原理
根据热量与流量、温度之间的关系:
Q=CM(T1-T0)
式中,Q为散热器的散热量(单位:J);C为水的比热4.2*103J/kg°C;T1-T0为散热器进出口的温差(°C);M为流经散热器的水的流量(L),也即质量(kg)大小。据上式可知,只要能测出流量和温差,就可计算出散热器的散热量大小。
温度传感器检测的信号传送到单片机,同时将流量信息传输到单片机,用矩阵键盘完成对温度的设定。单片机处理完数据后,发送命令到液晶显示器并控制电磁阀。系统总体框架如图1所示。
图1系统总体框架
2.模块介绍
本设计主要有单片机、液晶显示、数字温度传感器、液体流量计、键盘、电磁阀等部分构成。温度显示:单片机控制数字温度传感器(DS18B20),把温度信号通过单总线从数字温度传感器传递到单片机上,单片机数据处理之后,将当前温度信息发送到LCD(LCD12864)进行显示。热量显示:流量计检测到的流量信息(脉冲信号)传输到单片机,单片机数据处理之后,将当前热量信息发送到LCD(LCD12864)进行显示。温度设定:本系统还可以通过按键来设置温度限定值,单片机比较数字温度传感器的温度与设定的温度值,发出控制继电器动作的指令。
2.1DS18B20概述
DS18B20的数字温度计提供9至12位摄氏温度测量,并具有报警功能与非易失性用户可编程上限和下限触发点。
DS18B20的通信通过1-Wire总线,需要定义只有一个数据线(与地面)与中央微处理器的通信。DS18B20是“一线总线”接口的温度传感器,其内部使用了在板专利技术,其传感器元件及转换电路集成在形如一只三极管的集成电路内。由于一线总线具有独特,因此一个微处理器可控制大面积分布的DS18B20.
2.2AT89S52单片机
单片机(Single-chipMicrocomputer或MicrocontrollerUnit)将CPU、ROM、RAM、I/O接口电路以及内部系统总线等全部集中在一块大规模集成电路芯片上,就构成了单片机。
AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度易失性存储器的技术制造,与工业用的80C51产品指令和引脚功能完全兼容。
AT89S52
程序存储器可以在片上Flash对系统进行编程,亦适于常规编程器。单芯片上,拥有灵活的8位CPU以及系统可编程的Flash,使得AT89S52为许多的嵌入式控制系统提供非常灵活和有效的解决方案。
3.主要模块电路的设计
3.1温度信号采集电路设计
本系统为多点温度测试,DS18B20采用外部供电方式,理论上可以在一根数据总线上挂256个DS18B20,但实践应用中发现,如果挂接25个以上的DS18B20仍旧有可能产生功耗问题。另外单总线长度也不宜超过80M,否则也会影响到数据的传输。在实际应用中还可以使用一个MOSFET将I/O口线直接和电源相连,起到上拉的作用,如图2所示。在对DS18B20进行操作的整个工作过程中,主要包括三个关键过程:搜索DS18B20序列号子程序;启动在线DS18B20作温度转换子程序:读取在线DS18B20的温度值子程序。
图2温度采集模块设计
3.2液晶显示电路设计
液晶显示模块LCD12864的显示分辨率为128×64,内置8192个16*16点汉字和128个16*8点ASCII字符集,具有4位/8位并行、2线或3线串行多种接口方式。利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。另外低电压低功耗是其又一显着特点,由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。设计图见图3。
图3液晶显示模块设计
4.系统的软件设计
图4为主程序的流程图,主程序的功能是:开机以后,进行系统初始化操作,主要是进行定时/计数器的初始化。温度采集程序将温度信号转换成数字信号,在输入到单片机的RAM存储器中;换算成负责进行温度的标度换算后的十六进制换算成BCD码,并存储到显示缓冲区以便显示子程序使用,需显示时负责将缓冲区中的各路温度送到LCD上显示出来。键盘子程序通过按键程序的编写,可以完成对温度的设定,图5为温度设定部分算法流程。流量信号处理程序的作用是:通过设定定时器、计时器以及外部中断,完成对频率的测定,并转换成流量信息。
图4主程序流程图
图5温度设定部分算法流程图
结论
本系统对多处技术和方法进行改进,用STC89C52单片机作为控制核心,实现了对整个系统的控制和操作。液体流量计部分采用涡轮传感器实现对液体流量的采集,数字温度传感器采用DS18B20实现对温度信号的采集,将数字温度信号传送到单片机,并且可以通过矩阵键盘完成对温度的设定,单片机通过对比设定温度与实际温度发出命令控制继电器开或者关,控制液体的流量,以达到控制室温的目的。
壹芯微科技专业生产“二极管、三极管、场效应管、桥堆”,20年丰富生产经验,专业生产管理团队对品质流程严格管控,超过4800家电路电气生产企业选用合作,价格低于同行(20%),更具性价比,提供技术支持,售后FEA,如需了解更多产品详情,最新报价与样品申请等,欢迎咨询官网在线客服!
手机号/微信:13534146615
QQ:2881579535
工厂地址:安徽省六安市金寨产业园区
深圳办事处地址:深圳市福田区宝华大厦A1428
中山办事处地址:中山市古镇长安灯饰配件城C栋11卡
杭州办事处:杭州市西湖区文三西路118号杭州电子商务大厦6层B座
电话:13534146615
企业QQ:2881579535
深圳市壹芯微科技有限公司 版权所有 | 备案号:粤ICP备2020121154号