基于ZigBee技术的机房监控系统
2010-08-18陈和平陈志杰
陈和平,陈志杰,钱 岑,李 勐
(国防科技大学 计算中心,湖南 长沙 410073)
近年来,随着网络技术的发展和成熟,国内院校越来越重视数字化校园的建设并取得了可喜的成果,校园出现了许多配置有大量计算机或网络设备的机房,如网管中心的机房就配备有数目可观的路由、交换设备;某些向学生提供学习计算机课程、上网服务的计算中心机房内配备有可能多达几百上千台的PC机及网络交换设备。这些设备在校园内分布广,有的需全天运行,有的功耗较大(如大型的路由器),有的设备使用年限较长 (如计算中心的微机),需进行密切的监控,以防发生安全事故。以前的管理方式一般通过人工或视频监控的方式进行,不仅要耗费大量的人力,更加严重的是有时还不能及时发现隐患,造成更大的安全事故,因此迫切需要建设功能完善的机房监控系统,并在机房系统建设完成的条件下,动态配置各种传感器。
基于短距无线通信的监控系统框架结构能更好地满足动态、智能、实时监控系统的需求。在标准林立的短距离无线通信领域,ZigBee技术以其低功耗、低成本、网络扩展性好、安全性能高等优点,获得各大元器件制造商和众多开发者的青睐,并广泛应用于各个领域[1-2],截至2008年,ZigBee的节点数量已增至1亿个[1]。基于此,这里提出一种基于ZigBee技术的机房监控系统设计。
1 系统总体设计方案
机房监控系统的首要任务是收集机房内的各传感器探测得到的环境参数,机房中安装上温度、烟感、火警探头并将这些探头探测出的数据通过ZigBee无线网络传输到中心控制机房中,或通过设备接入已经建设好的有线校园网络甚至互联网,将这些信息传送至远程监控点供管理者查看。这不仅避免了维护人员的奔波之苦,更提高了机房管理的效率,杜绝安全事故的发生。
另一方面,利用ZigBee网络的双向通信特性,将上述的传感数据经中心控制机房PC机的信息融合处理后,生成控制指令通过无线网络反馈给远端受控节点,从而形成一个闭环的自动控制系统。如在监测并控制机房内某个大型路由器设备的温度时,当前常用的措施是在机房内安装带有自动恒温功能空调,但这有2个缺陷:1)其控制温度用到的传感器测量的只是空调所在位置的温度,不能精确反应所要监控设备的温度(一些设备的局部位置温度会较高,通常达到40℃),不能实时控制温度,同时浪费能源;2)空调自身温控自成一体,缺乏灵活的数据接口,不能将机房内的温度情况传送给监控设备供管理人员查看。在这种情况下,可将带有温度传感器的ZigBee节点直接放在离路由器很近的机柜内或设备的敏感区域附近,此节点每隔一段时间向中心控制机房的主控计算机报告路由器的实时温度,当此温度超过软件设置的温度上限时,主控计算机向机房内的空调控制ZigBee节点发送空调开启命令,从而实施机房内的降温过程;当机房或设备的温度下降到设定值后,则下达空调停止工作的指令,及时关闭空调,以节约能源。图1为ZigBee技术在计算中心机房监控中的应用示意图。
图1 计算中心机房监控系统示意图
图1中所示的局域网为计算中心机房内各台PC之间互联所用的以太网,学生在上机之前需使用学校配发的ID卡在刷卡服务器上进行刷卡动作,登录到机房管理系统,之后方能使用机房内的PC机。电子公告牌上也是一个ZigBee节点,可显示各个机房内的实时温度、湿度、PC机使用情况等。
2 系统硬件设计
随着ZigBee规范的建立和不断升级完善,各大元器件制造商不断推出各具特色的ZigBee产品,但从芯片的集成度、成本、开发环境完善程度和可持续升级等方面综合考虑,该系统设计选用Texas Instrument的CC2430实现ZigBee的通信功能,该器件的特性如下[3]:高性能、低功耗的8051微控制器内核;兼容IEEE 802.15.4的2.4 GHz射频收发器;AES安全协处理器;内置温度传感器。图2为CC2430的通信模块原理图。由图2看出,CC2430可称作一个小规模的SoC,配上很少的外围元件和天线(可选鞭状天线或板载天线)即可组成一个完整的ZigBee通信节点。
图2 基于CC2430的通信模块原理图
2.1 传感器模块
传感器模块从ZigBee网络的角度看,为一个RFD节点,通过2节5号电池供电。按照需要探测物理量的不同,各传感器的硬件设计分述如下:
1)温度传感器 CC2430内部集成有一个温度传感器,其基本工作原理:片上温感部分将温度转换为模拟电压信号,其幅度范围是 0.648(-40 ℃)~1.039 V(+120 ℃),之后经过12位A/D转换为数字信号,再除以一个温度系数,则可得到当前温度值。
2)湿度传感器探头 采用瑞士森斯瑞(Sensirion)公司推出的SHT15超小型、自校准、多功能式智能传感器来测量相对湿度,SHT15型传感器是单片、多用途的智能传感器,其内部不仅包含基于湿敏电容器的微型相对湿度传感器,而且还有14位的A/D转换器和双线串行接口,能输出经过校准的相对湿度。该智能传感器的相对湿度测量范围为0~100%,分辨率达0.03%,最高精度为±2%RH,电源电压范围2.5~5.5 V,响应时间小于3 s[4]。
3)烟感探头 烟感探头的基本工作原理:当烟雾进入报警器室时,将隔断或阻止红外线的互通,红外线的发射管收不到对方发来的光,光参数变化,经处理电路进行处理后,再转换成低电平,并触发报警。
2.2 空调控制节点设计
空调控制器节点完成从ZigBee网络接收自主控计算机发来的空调启、停命令并将其转换成对应的遥控器红外控制命令。从ZigBee网络的角度看,空调控制器节点仅是一个RFD设备,主要是接收ZigBee数据,也由CC2430完成。其需要完成的另外一个任务就是通过红外通道,模拟空调的遥控器完成控制空调的启、停。在安装配置系统时,通过“红外学习口”对机房内所装空调的遥控器红外命令进行学习,并将其存储在EEPROM中。系统正常工作时,当接收到从ZigBee传输来的空调控制命令时,将其转换为红外发送命令,从EEPROM读取数据,按照这些数据规定的脉宽参数控制红外发射管发送红外线,进而直接控制空调。由于红外控制命令的学习和发送会占用资源操作,如果其也由CC2430控制,将会加重CC2430负载,影响正常的ZigBee通信功能。因此使用51系列单片机AT89S52完成,CC2430与AT89S52之间通过串口来交换数据。这样可以在不改装空调的情况下,通过简单的红外学习操作即可控制任意型号的空调,简化了系统的安装使用,同时也大大提高了系统的可靠性。空调控制节点的设计框架如图3所示。
图3 空调控制节点示意图
2.3 ZigBee中转设备设计
该中转设备的功能是完成以太网与ZigBee网络之间的双向数据交换,有2种实现方案。
2.3.1 CC2430+PC机
CC2430+PC机实现方案原理:CC2430负责ZigBee网络的数据收发和转存,PC机负责以太网数据的收发,二者之间通过RS-232交换数据。目前普通PC机的RS-232串口的波特率最高可达到115 200,而ZigBee的理论带宽可达250 kb,二者速率大致在一个数量级,考虑到该系统设计所传输的大多是控制命令,数据流量不大,所以二者可以匹配使用。该实现方案研发周期短,可快速成型,且PC机资源丰富,可预留许多资源、功能供系统后续扩展,但成本较高,功耗较大。
2.3.2 CC2430+ARM(S3C44B0X)[5]
与CC2430+PC机实现方案类似,CC2430+ARM(S3C44B0X)实现方案只是用以ARM为核心的嵌入式系统代替PC机,二者通过UART交换数据。采用三星公司的ARM7系列器件S3C44B0X作为主控制器,其主要功能和特点[5]如下:1)以太网接口,采用10 M以太网控制器RTL8019,提供标准RJ45插座;2)2路UART接口,波特率达115 200;3)LCD接口,可接1 600×1 600以下分辨率的单色或256色STN/DSTN型各种 LCD屏;4)IDE接口,可挂接硬盘;4)运行μcLinux操作系统。该实现方案结构紧凑,成本较低,同时ARM为低功耗器件,所以整个模块的功耗很低。
通过对上述两种实现方案的比较,并考虑到成本和功耗的问题,因此这里选用第2种方案进行设计。
3 系统软件设计
3.1 ZigBee软件设计
为缩短研发者的开发时间和减小开发难度,TI公司在提供器件的同时,另外还免费提供实现ZigBee协议的软件——Z-Stack[6],此软件不仅实现了ZigBee协议栈,并在此基础上扩充成了一个微型的操作系统,其主要内容包括:1)硬件抽象层HAL,处理键盘输入,LCD输出,UART输入、输出等;2)操作系统抽象层(OSAL);3)ZigBee 协议栈、IEEE 802.15.4 MAC层;4)用户层应用程序;5)监看测试程序,通过串口和PC机上的测试工具通讯。
开发者可在此OS的基础上灵活定制硬件设计,并定义任务,实现必要功能。限于篇幅,这里着重介绍传感器节点(RFD)的工作流程,即初始化硬件系统,完成ZigBee协议栈的初始化工作,利用操作系统的API添加一个发送传感器数据的定时器任务,之后进入休眠状态,这样每隔一段时间,传感器会自动唤醒向协调器/路由器发送数据,得到应答后,再次进入休眠。其工作的详细流程如图4所示。
图4 ZigBee终端设备软件工作流程
3.2 远程控制终端软件设计
远程控制终端连接到校园网或互联网上,使用PC作为硬件平台,借助Windows平台上浏览器完成。
远程控制终端主要功能:用户通过访问特定的网页即可查看指定机房或设备的温度、湿度;提供“设定被监测设备的温度上限”界面,这样当设备温度过高时,可自动发布发送命令开启空调;当所监控机房温度太高或出现烟感报警时,在远端中心管理机房采取声、光等各种形式的报警;提供管理远端电子屏幕显示内容的功能;与其他机房管理系统进行数据交互,如在计算中心机房内取得刷卡服务器上已用机器的信息,并将其传送到电子公告牌上或网页上,供师生了解机房实时使用情况。图5为监控系统的界面。
图5 基于ZigBee的机房温度监控子系统
4 结束语
这里提出了基于ZigBee技术的学校机房监控系统设计方案,实现了一个完整、可扩展的机房监测、控制系统,给出了系统中各个子模块硬件、软件较为详细的设计方案,目前该监控系统已投入使用并运行稳定。该系统设计由于采用ZigBee技术,解决了传感信号的无线通信与收集问题,理论带宽可达250 kb,具有很好可扩展性和可移植性,对于各种安防监控系统的构建具有重要的参考价值。
[1]张琪.ZigBee的几项应用 [J].中国电子商情:RFID技术与应用, 2008(3):85-88.
[2]姚远,任永昌,陈晓纪.基于ZigBee技术的矿山井下车辆定位系统研究[J].煤矿机械,2007(12):139-141.
[3]Texas Instruments.CC2430 Datasheet[EB/OL].(2009-10-20)[2009-12-01].http://focus.ti.com/lit/ds/symlink/cc2430.pdf.
[4]Sensirion Company.SHT1x/SHT7x Datasheet.[EB/OL].(2009-04-02)[2009-12-01].http://www.sensirion.com/en/pdf/product_information/Datasheet-humidity-sensor-SHT7x.pdf.
[5]杭州立泰电子有限公司.S3C44B0X中文数据手册[EB/OL].(2008-08-27)[2009-12-01].http://blog.ednchina.com/Upload/Blog/22230d5d-4f1a-4e77-b6ac-48cfb1b0a61c.pdf.
[6]Texas Instruments.Z-stack-zigBee protocol[EB/OL].(2009-05-11)[2009-12-01].http://focus.ti.com/docs/toolsw/folders/print/z-stack.html.