基于ZF01数传模块的无线多点温度采集系统设计

2011-09-18 08:55张洁琼徐东明付秀华田野邸旭
关键词:机软件数传下位

张洁琼,徐东明,付秀华,田野,邸旭

(1.长春理工大学 光电工程学院,长春 130022;2.东莞光阵显示器制品有限公司,深圳 518000)

当前,传感器技术正朝着智能化、网络化的方向发展,无线传感器网络(Wireless Sensor Network,WSN)正是适应这种需求而出现的。它具有信息采集、数据处理和无线传输等多种功能[1,2,3]。本文论述了基于WSN的多点温度采集系统,由于具有联线简单、设置便捷的优点,该系统可以在很多场合广泛应用。

在环境温度监测系统中,由于存在较大局部温度差异,采用单点测温的方式不能准确反映一个测温环境的实际情况,因此只能采用多点温度采集的方式来解决局部温度差异的问题。但由于多点采集温度数据时测温点的布局较为分散,传统的有线温度测量方式存在布线复杂,给测温环境中的人造成不方便、更改采温点麻烦等缺点,采用无线数据传输的多点温度采集系统可以很好地解决上述问题。

本文详细介绍了以AVR系列单片机Atmega16为主机,以MCS—51系列单片机STC12C2052为子机的无线多点温度采集系统,给出了无线多点温度采集系统的具体设计方案。

1 系统总体介绍

图1 多点温度采集系统原理框图Fig.1 General diagram of the multipoint temperature acquisition system

无线多点温度采集系统由上位机和16个下位机构成,系统原理框图如图1所示。其中上位机用于完成温度数据的收集管理、数据的显示储存以及人机交互等功能;下位机用于采集各点的实时温度,并且在主机读取时通过无线通信的方式将温度数据发送给主机。

系统主要性能指标:

1.测温点个数:16个;2.测量温度范围:-55℃~125℃;3.温度测量精度:0.5℃;4.持续工作时间:>72小时;5.数据采集时间间隔:10秒~3600秒可变;6.无线通信距离:>150米;7.具有16路温度及工作状态显示功能;8.存储器容量:2GB。

2 系统主机(上位机)硬件设计及功能

无线多点温度采集系统的主机部分由Atmel公司的高性能单片机ATMEGA16、触摸液晶显示屏、SD存储器卡、无线数传模块ZF01、串行切换接口和电源等部分组成。系统主机的主要功能是完成工作模式的设定,各子机数据的读取、存储,温度显示、温度曲线显示,温度数据简单处理及与PC机数据通讯等。下面对部分硬件电路予以介绍。

2.1 SD卡读写接口电路

为了满足系统工作时数据存储量较大的需要,采用SD卡存储温度数据。SD卡具有使用方便灵活、存储容量大等优点,在数据存储与交换方面得到广泛应用。存储系统采用南京沁恒公司生产的CH375通用接口芯片,它支持SD卡的读写,可以方便地将存储的数据传送到上位机。CH375通用接口芯片的特点如下:

1.采用并行接口完成数据传输,包含8位数据总线,采用4线控制:读选通、写选通、片选输入、中断输出。

2.工作电压低,支持5V电源电压和3.3V电源电压,支持低功耗模式。

3.内置固件处理海量存储设备的专用通讯协议,支持 Bulk-Only 传输协议和 SCSI、UFI、RBC或等效命令集的USB存储设备(包括USB硬盘/USB 闪存盘/U盘)[4]。

CH375接口芯片的硬件电路如图2所示:

图2 CH375的硬件电路图Fig.2 Hardware circuit diagram of CH375

2.2 串口分时选通电路

Atmega16单片机只有一个串行通讯口,但系统连接的无线通信模块、触摸屏及PC通信都需要使用串行口通讯,为此系统设计了由CD4052构成的分时选通串行通信电路,串口分时选通电路如图3所示,该电路将串行连接设备增加为4个,其中包括2个RS-232电平接口,1个TTL电平接口和1个RS-485接口。

为了使连接到串口上的外部设备在该口没有选通的情况下不产生影响,需要使未选通的串口处于逻辑0状态。为此,串口分时选通电路在CD4052的输出端增加了4个上拉电阻。系统还可以通过RS-485通信接口轻松实现上位机组网功能。

2.3 上位机功能介绍

上位机主要用于完成数据的接收、存储、处理、显示等功能,采用迪文触摸显示屏可以方便的实现人机交互,提高系统性能,便于用户进行观察操作。其具体功能如下:

1.实时温度显示功能:在触摸液晶屏上可以同时显示16个测温点的温度变化情况,并实时刷新温度数据,便于用户观察操作,用户可以根据需要显示单个测温点的温度变化曲线。

2.采集点位置显示功能:用VB编写软件,用户根据所处的测温环境,输入采集点的位置,通过串口写入触摸屏内,并给采集点编写序列号,如果需要修改采温点的位置可以利用软件重新写入。当某个采集点不能正常工作时,上位机会报警,并显示相应的采集点位置,便于查找维修。

3.实时监测功能:用户可以根据需要设定温度测量的上下界限,将环境温度限定在所要求的监测范围内,当所测温度超出设定的范围时,系统发出报警信号[3]。

4.求平均值功能:在系统的主显示界面上,用户可以根据需要任意选中某几个采温点,监测其平均温度,并将不同时刻的平均温度值以曲线形式显示。上位机可以根据不同时刻的温度均值,做平稳分析,精确监测环境温度。

图3 串口分时选通电路Fig.3 Serial time-sharing electricity choose way

3 系统从机硬件设计及功能

无线多点温度采集系统的下位机终端由16个从机组成,每个从机的硬件结构设计完全相同,保证了下位机硬件的一致性。下位机由控制器芯片STC12C2052、无线数传模块ZF01、数字温度传感器DS18B20、太阳能电池及锂电池等组成。

3.1 下位机地址码设定

为了能够使主机和16个从机分时进行数据传输,必须对下位机进行编码,下位机地址码的设定有软件与硬件两种方法。

软件方法是通过修改软件,给下位机设定一个地址码,每一个下位机都有一个地址,软件设计的优点是没有硬件开销,可为从机CPU节省I/O口线,同时可以不受硬件限制随意增加下位机的个数。但是由于每一个下位机的软件各不相同,因此存在互换性差,不利于大批量生产的缺点。

硬件方法是在设计硬件电路时,加入拨码开关,通过拨码设定下位机的地址。每一个下位机都有一个独立的拨码,即具有唯一的地址。它的优点是硬件的外观可以通过拨码作区分,不宜搞混;上电时下位机自动取地址码,使用方便灵活,便于维护,同时省去了修改软件的麻烦。它的缺点是设置拨码开关,占用从机CPU的I/O口线(拨码开关的位数受CPU的I/O口线的限制),同时限制了下位机的个数,如使用4位拨码开关,则下位机的个数最多为16个。

综上所述,用户可以根据需要选择以上两种方法设定下位机的地址码。本系统最终采用硬件方法,这样就保证了下位机软件与硬件的一致性,便于维护。

3.2 下位机节能模式

由于下位机采用电池供电,为了使下位机有大于72小时的工作时间,有效地利用电池电能。下位机采用两种节能模式:无线数传模块ZF01休眠模式和太阳能充电模式。

1.无线数传模块ZF01休眠模式:电路图如图4所示,在下位机单元中,无线数传模块是功耗相对最大的设备,当上位机与下位机需要数据通信时,使P10为低电平,三极管TR1导通,无线数传ZF01模块上电工作;需要进入休眠模式时,使P10输出高电平,三极管TR1截止,ZF01模块处于断电状态,为下位机节省电能。

图4 节能电路Fig.4 Energy-saving circuit

2.太阳能充电模式:下位机采用锂电池与太阳能电池配合供电。当所处环境中有太阳光照射时,太阳能电池自动地给锂电池充电。实验证明,在较强日光照射时,采用100mm*40mm的太阳能电池给锂电池充电,最大输出电压为6V,最大输出电流为75mA,充电效果十分明显;无光照条件下,采用3000mA/h的锂电池系统可以连续工作72小时。

3.3 下位机(从机)的主要功能

从机安装在各个测温点,测量该点的温度值,在主机读取时,把温度数据通过无线通信方式传送到上位机。为提高测温精度,在下位机测温时,采用平均值滤波的方法,即每采集10次温度数据为一组,然后求平均值,作为当前温度数据,并将其保存到数据缓存区中。

用户可以根据需要随时更改下位机个数,上位机通过点名查询方式向下位机发送地址码,和设定地址一致,下位机将向上位机发送采集到的温度数据;如果验证不通过,则不做任何处理回到继续接收状态。考虑到温度采集时间不会很快,点过名之后再次点到需要一段时间,软件上、下位机完成一次通信后立即将ZF01无线数传模块关闭,使其进入休眠模式,在固定时间间隔前1S自动唤醒,等待下一次收发。

4 系统软件设计

4.1 系统软件

整个系统软件包括两个部分:上位机软件和下位机软件。

1.上位机软件:上位机软件重点是触摸屏操作,按系统设计要求,上位机每间隔固定时间(如10秒)与下位机通信一次,与下位机通信完成后保证选通PC机等待PC的命令,因此,如果和每台从机采样间隔是10秒,在通信波特率为19200bps时,和从机的通信时间为1秒左右,在每个10秒内90%的时间在选通PC机等待PC的命令,因此PC的数据发送请求将得到充分的响应。每完成一次巡检,把数据送到触摸屏进行显示,由于与触摸屏通信采用115200bps的波特率,因此与触摸屏的数据按200个字节计算,将在20ms以内完成。上位机软件流程如图5所示。

2.下位机软件:主要部分是DS18B20数字温度传感器的初始化、地址接收校验与数据发送。下位机软件流程如图6所示。

图5 上位机系统流程图Fig.5 PC system flow chart

图6 下位机软件流程图Fig.6 The software flow chart of lower computer

4.2 通讯协议

系统采用的是一对多无线通信方式,上位机收发模块在可靠通信范围内分别与每个下位机通信。上位机与每个下位机都有唯一的地址,避免通信失误。在通信过程中必须明确收发方的地址,因此系统采用通信协议,具体如表1所示。

表1 系统通信协议格式Tab.1 Format of system communication protocol

Head为数据包头,Add为接收端地址,接下来根据数据类型(命令/数据)决定发送的数据内容,CRC 为校验码,最后是数据包尾[5]。系统设置时,若用户设置采温时间为1秒、时间间隔为10秒,则在10秒内上位机与下位机通讯一次,此时一帧数据包括10个有效数据,即一秒一个有效数据。

5 结论

在试验室条件下,本系统能准确显示当前的实时温度,并把记录的温度数据绘制成曲线显示在触摸屏上,方便比较观察。在记录好温度数据后,能够将温度数据按日期保存起来,以便查询、统计。系统运行稳定,在空旷处传输距离可以达到150米以上。本系统可以根据需要方便的扩展通信节点的数量,实现较大范围的温度监测,能够用于诸多工业及民用领域。

[1]盛超华,陈章龙.无线传感器网络及应用[J].微型电脑应用,2005,21(6):10-13.

[2]李国华,沈树群.自组织无线传感器网络的研究[J].数据通信,2004(4):1-4.

[3]谭量,胡冀.基于nRF9E5的多点无线温度采集系统设计[J].杭州电子科技大学学报,2006(4):30-31.

[4]杨容.ch375[EB-OL].http://www.pudn.com/downloads33/so-urcecode/embed/detail106260.html,2005-08-06.

[5]董宁,杨昭,冯进良.多点无线温度采集系统设计[J].长春理工大学学报:自然科学版,2010,32(4):118-119.

猜你喜欢
机软件数传下位
基于数传电台的靶弹测控系统设计
嫦娥卫星数传副瓣信号的干涉测量研究与精度验证
发射机房监控系统之下位机
道岔监测系统上位机软件设计
景洪电厂监控系统下位机数据传输网络改造
围观党“下位”,吐槽帝“登基”
基于正交试验法的北斗用户机软件测试用例设计
高速数传电缆散射参数的测试及半实物仿真的分析与研究
PCI-e高速数据采集卡的驱动与上位机软件设计
CAN总线并发通信时下位机应用软件设计