基于无线通信技术的多点动态温度测控系统

2014-10-27 05:53田红芳
通信电源技术 2014年4期
关键词:下位工控机温度传感器

田红芳,赵 强

(北方工业大学机电工程学院,北京 100144)

0 引言

温度是现代化工、农业生产过程、工艺研究中需要重点考虑的环境因素之一。有些工、农业产品对于温度的要求较高,需要将温度控制在其可承受范围之内,过高或过低均会对其性能造成一定影响,因而温度的测控越来越多地受到研发人员重视。传统的温度测控主要还是针对单个点的温度采集,但在一些特殊的现场控制中,由于环境因素,必须对多个点进行动态实时温度测控,而且采用传统的线缆传输数据,会导致现场布线太多[1]。为了解决这些问题,本文设计了基于无线通讯技术的多点动态温度测控系统,系统以数字温度传感器DSl8B20进行多点温度监测,以ATmeag8单片机为核心的测控系统,并利用nRF905射频收发芯片实现了数据的无线通信,并将此系统应用于某粮仓温度的实时测控中。

1 系统简介及硬件构成

本文设计的多点动态温度测控系统主要由一个上位机模块和若干个下位机模块组成,系统的结构框图如图1所示。

图1 系统结构框图

上位机模块包括工控机后台监控、ATmega单片机及无线信号接收模块,主要完成上传采集数据的实时处理和显示。下位机模块主要包括粮仓内的多点温度采集电路、单片机、显示电路以及其他外围电路组成。其中温度传感器的数量可由实际控制对象的规模以及控制精度来确定,单片机完成采样数据的AD转换及数据的计算和上传,其他的外围电路一般根据需要会增加报警电路、风机控制电路等。上位机模块和下位机模块间采用无线收发模块nRF905以射频方式进行数据交互。工控机与单片机采用串口通信。工控机作为上层主机,放置在主控室中对粮仓进行远程监控,后台程序用可视化语言设计GUI,实现人机交互。现场实测信号经无线通信,可以上传到工控机在软件窗口进行显示;同时,工控机可以发出控制指令,经无线通信由现场温度控制器执行指令[2]。

1.1 ATmega8 AVR 单片机

本系统设计中,下位机以ATmega8 AVR单片机作为控制核心。ATmega8是一款基于AVR精简指令集结构的8位单片机。该款单片机的特色是运行代码效率的提高,ATmega8将工作寄存器、算数逻辑单元、精简指令集有机地结合在一起,能够实现CPU执行一条指令同时去访问两个独立寄存器,这样使指令的运行速度大幅提高,大部分指令都可以在一个时钟周期内完成。

1.2 温度采集电路

温度采集电路如图2所示。下位机数据采集终端采用单总线数字温度传感器DS18B20,它的测温范围在-55℃ ~+125℃之间,精度很高,而且可以将温度模拟信号直接转换成数字信号传输给ATmega8,省去了ATmega8模数转换的部分,提高了数据采集速度。它的工作电压在3.0 V~5.0 V之间,它的可编程分辨率为9~12位,对应的可辨温度分别为 0.5℃、0.125℃和0.0625℃,能够实现高精度测温。将转换后的数字信号以“一线总线”串行传送给ATmega8,同时还可以传送校验码,有效降低误码率。用户还可自行设定温度报警的上下限,其值是非易失性的,适合于本设计系统对于温度传感器的选择。

图2 温度采集电路

1.3 无线通信电路

本系统的无线通信部分采用nRF905单片射频收发芯片,其主要包含频率合成器、接收解调器、功放模块、晶振等组成部分。nRF905的工作特点是自动产生前导码和循环冗余码校验,通过SPI接口与ATmega8进行无线通信。

1.4 液晶显示电路

12864液晶是一款内置国标GB2312码简体中文字库的显示屏,采用ST7920控制器,5 V驱动,带背光,16×16点阵、128个字符(8×16点阵)及64×256点阵显示RAM(CDRAM),可直接与ATmega8通用I/O口连接,并且可以使用八位并行接口,也可以使用串行接口。

1.5 其他外围电路

本设计的外围电路主要指控制电路,由三个部分组成:光电耦合器、继电器和通风设备。当传感器采集到的温湿度值超过设定值时,后台通过无线收发模块给单片机发出控制信号让光电耦合器导通,从而控制继电器来启动通风设备完成通风控制,起到降低被控对象温度的作用。

2 系统软件设计

2.1 主程序设计

主程序的主要功能包括ATmega8和nRF905的初始化、看门狗程序、定时器、对子程序的调用等。上位机在接收工控机后台程序下发的控制指令后,向下位机采集终端的单片机传输指令,并在接收到下位机上传的温度数据后执行相应的操作。本系统的下位机采集终端分布于粮仓多个温度采集点,采集点的位置及数量通过先验经验及实验来确定,其原则是保证温度采集具有代表性,且数量能够达到测控的精度要求。

2.2 子程序设计

子程序设计主要包括温度采集程序、显示部分程序和无线通信子程序。

对于应用无线通信技术的温度测控系统,无线通信子程序是需要重点考虑的部分。无线通信包括数据发送与数据接收两部分。

(1)发送数据

当ATmega8有数据要发送时,按初始化时配置好的接口速率将接收机的地址和将要发送的数据通过SPI送传给nRF905;ATmega8将TBX_CE和TX_EN置1,则nRF905的ShockBurst TM开启发送模式;射频寄存器自动开启,数据打包(加帧头和CRC校验码)并发送数据包;如果 AUTO_RETRAN置1,nRF905将连续重发数据包,直到TRX_CE被置0;当TRX_CE置0,nRF905发送过程完成,自动进入待机模式。

(2)接收数据

nRF905的TX_EN置1,TRX_CE置0时进入接收模式。nRF905读到接收频率相同的载波时,CD置1;且接收到的数据发送地址与自己地址匹配时,将AM置1,即已接收到数据;然后对数据的CRC进行校验,如果正确,则将数据保存在接收数据寄存器RX_AYLOAD中,同时,DR信号置1,通知ATmega读取数据;ATmega将TRX_CE置0,通过SPI接口读出数据。全部数据读完后,nRF905又将AM和DR重新置0。

3 结论

针对传统温度测控系统中温度采集数据片面单一、实时性低、且传输数据布线繁琐的缺陷,设计了基于无线通信技术的多点动态温度测控系统。数据采集终端部分由ATmega8单片机和DS18B20温度传感器构成,无线通信部分采用了nRF905无线收发模块,并将该系统应用于某粮仓的温度实时测控中,使管理人员可以在后台实时掌握粮库内的温度情况并能根据实际情况实施控制。

[1]黄保瑞,贾之豪,邵婷婷.基于AT89C51单片机的温度测控系统设计[J].现代电子技术,2011,34(6):142-147.

[2]张志宏,李盈君.基于射频技术的温度无线数据采集系统[C].第二十六届中国(天津)2012 IT、网络、信息、技术电子仪器仪表创新学术会议,2012.

[3]杨光松.基于NRF905的无线温度数据采集系统[J].数采与监测,2008,24(8):104-106.

猜你喜欢
下位工控机温度传感器
气象用温度传感器检定结果的测量不确定度评定与应用
使用冗余测量修正动态温场测量结果
定制工控机在老旧线路计算机联锁设备中的应用
温度传感器DS18B20在温度计设计中的应用
提高火力发电厂自动电压控制系统投入率的措施
发射机房监控系统之下位机
中压电子束焊工控机Windows NT系统文件丢失故障的修复方法
XTR105电流变送器在温度传感器中的应用
围观党“下位”,吐槽帝“登基”
CAN总线并发通信时下位机应用软件设计