新闻中心

EEPW首页>嵌入式系统>设计应用> DS18B20在空调检测系统温度采集模块中的应用

DS18B20在空调检测系统温度采集模块中的应用

作者: 时间:2013-11-30 来源:网络 收藏

newmaker.com

作为智能集成温度传感器,其智能化实现要以高质量代码作保障。因为读取每一个都需要匹配序列号,复位、读、写操作都需要针对不同的I/O口,所以,16片经单片机8个I/O口接入,需要定义对应8个I/O口的变量:18b20_0~18b20_7、18b20_0定义语句表示如下:“sbit 18b20_0=P1^0;”;需要定义8个复位(初始化)函数:void re18b20_0()~void re18b20_7();需要定义8个写函数:void wr18b20_0(uchar ml)~void wr18b20_7(uchar ml);需要定义8个读函数:void rd18b20_0()~void rd18b20_7()。对于单个I/O口(如P1.0),单片机在发送温度转换命令后,发送匹配命令wr18b20_0(0x55);连续调用8次写函数发送序列号;发送读温度暂存器命令wr18b20_0(0xbe);调用读函数rd18b20_0()读取温度低8 bit;经温度转换函数处理后,将温度整数部分保存在wd[0],小数部分保存到wd[1]。读取另外一片DS18B20,其温度值的整数和小数部分分别保存到wd[2]、wd[3]。读取P1.1端口,温度读取过程相同。所有传感器的温度值都保存到wd数组中,最后由单片机按照Modbus协议发送给上位机。

3.2 程序编写需要注意以下几点

(1)单片机采用C51编程,代码功能模块清晰,可读性强。从本应用状况来看,其实时性能得到保证,因此,汇编语言不一定是最好的选择。

(2)空调检测系统所采集的温度均在0 ℃以上,并且上位机软件可以实现温度报警功能,因此,读函数读取RAM寄存器只需读取前两个字节。

(3)单片机和上位机软件通信采用Modbus协议的RTU模式,因此,温度转换函数实现的功能就是将温度低字节转化为十六进制数据,并保存到数组里。

4 应用分析

空调检测是在一个温湿度变化复杂、干扰源多的空调检测房里进行,空调检测系统包括1#~6#工作站,每个工作站均配有5台标准室内机。定频、变频一拖一、一拖多等机型的室外机由生产线运送到各站台,电源线、信号线等连接完毕后,即可扫描条码进行检测。检测过程中,上位机软件能实时检测温度、压力等参数,检测完毕,系统自动存储各种数据,如果参数不合格,则发出报警信号。

基于空调检测环境温湿度变化复杂的现场状况,数字温度传感器DS18B20需要采用不锈钢外壳封装,以达到防水防潮目的。DS18B20温度采集点主要分布在室内标准机的进风口、出风口和盘管。测量压缩机排气管温度时,不锈钢封装的DS18B20需要嵌入固定到金属夹里面,通过这样测量方式得到的是排气管表面温度,需要利用上位机软件进行必要的数据处理,才能得到排气管的实际温度。

上位机监控软件采用模块化设计,软件分为数据通信、数据采集、数据显示、数据管理、用户管理模块,并将各模块的实现代码封装成模块和类模块。需要注意的是:为了方便对DS18B20数字温度传感器进行安装、测试和维护,监控软件应该有针对连接温度传感器的I/O端口,以及I/O端口上的温度传感器的测试界面。

采用DS18B20的已应用到某大型空调生产厂的空调检测系统中,温度采集的准确性和实时性均满足系统的要求。数字温度传感器DS18B20和单片机组成的,能同时满足成本和技术的要求,对组建多点温度采集网络具有一定的借鉴意义。

参考文献
[1] 周月霞,孙传友.DS18B20硬件连接及软件编程[J].传感器世界,2001(12):25-29.
[2] 张海传,吴晨霞,许东卫,等.低功耗轴承温度无线检测系统的设计[J].电子技术应用,2009,35(10).
[3] 何东坡,任贵波,韩春鹏,等.DS18B20在季冻土区公路路基温度场测量中的应用[J].电子技术应用,2010,36(4).
[4] 求是科技.单片机典型模块设计实例导航[M].北京:人民邮电出版社,2004.(end)
温湿度控制器相关文章:温湿度控制器原理
热电偶相关文章:热电偶原理

上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭