文献标识号: A
文章编号: 0258-7998(2012)01-0066-04
随着无线传感网络、信息技术的迅猛发展,互联网的迅速普及和嵌入式系统的广泛应用,计算机及网络技术已经渗透到了各行各业。整个社会对计算机信息系统的依赖在不断地加深,信息传输更多采用网络化与智能化。因而对于机房信息的实时性、安全性、稳定性和维护管理方面提出更高的要求。
ZigBee无线传感网络已经在很多方面得到了广泛的应用,并且可达到运行可靠稳定。有些机房当中存在布线困难、扩展性和移植性差等问题。面对现有机房监控系统的弊端和局限性,为了保证机房的安全运行,减轻机房维护人员负担,降低系统成本,希望能有一套基于无线传感器网络,安装方便、运行稳定可靠、维护简单、移植性好、可远距离监控,同时具有经济性的数据实时采集的机房环境监控系统。实现机房设备集中监控,监视各种设备的状态及参数,可诊断设备部件运行情况,在发生异常状况或故障时发出警报,并支持通过浏览器远程监视设备运行的情况[1,2]。
1 系统构架
整个系统分布部署拓扑图如图1所示,大致可以划分为五部分:ZigBee无线传感网络,数据采集终端IDU(Integrated Data Unit)、嵌入式服务器端、报警端、监控中心与远程浏览站。
ZigBee无线传感网络主要负责对环境设备(如空调、漏水、温湿度、UPS、电量仪等)数据参数进行采集,以无线的方式进行数据传输,通过ZigBee协调处理器节点把采集到的数据上传到IDU。IDU主要负责对数据进行整合,上报到嵌入式服务器,同时, IDU也可以直接通过RS232/RS485等有线的方式接入环境设备采集数据。嵌入式服务器负责对采集到的数据进行处理、存储、分析和执行报警动作。报警设备主要有短信报警、电话报警、声光报警和邮件报警。监控中心与远程浏览站负责对机房的集中管理,采集机房传来的实时信息,并以表格和状态图的方式显示在监控中心计算机屏幕上。管理员可以通过远程浏览站以WEB形式监控设备中的状态数据,也可以通过远程发命令来操纵监控设备实施开关等动作。
2 硬件设计
硬件部分是本监控系统的重要组成部分之一,其指标参数及可靠性决定了整个系统的性能。为了监控系统的需要,硬件要做到体积小、价格低、监控参数精度高、可靠性高、功耗低等[2]。
2.1 ZigBee无线传感器
ZigBee模块核心选择CC2430芯片,它是由Chipcon公司推出的实现嵌入式ZigBee应用的片上系统,是一颗真正的系统芯片(SoC)CMOS解决方案。这种解决方案能够提高性能并满足以ZigBee为基础的2.4 GHz ISM波段应用,并能满足系统低成本、低功耗的要求。它结合一个高性能2.4 GHz DSSS(直接序列扩频)射频收发器核心和一颗工业级小巧高效的8051控制器。CC2430芯片需要很少的外围部件配合就能实现信号的收发功能,且外设资源丰富。各个ZigBee终端节点主要是通过RS232/RS485与各设备(空调、UPS等)进行通信,采集各设备传感器数据。
2.2ARM9嵌入式系统
IDU和嵌入式服务器采用的都是软硬件可裁减的嵌入式系统。嵌入式设备主控器件采用ARM9处理器。本系统运用的是三星S3C2440,片上有很多的资源,集成了各种常用的接口,如串口、SPI、I2C、USB、LCD、COMS、CAMERA,A/D、JTAG和系统总线等。根据本系统的需要,裁减后硬件系统及接口的主要组成部分如图2所示,主要包括微控制器、RTC晶振、电源电路、复位电路、看门狗、大容量Flash/SDRAM、系统状态指示、以太网口、RS485、RS232、USB口、JTAG接口和A/D口。S3C2440是基于ARM920T处理内核,具有低功耗、高度集成性特性,主频400 MHz,最高533 MHz,这个工作频率能够使处理器轻松运行Windows CE,Linux等操作系统以及进行较为复杂的数据处理。选用64 MB SDRAM及256 MB Flash足够满足监控数据存储及运行Windows CE操作系统的要求。在存储不足的情况下可采用外界存储器,例如SD卡、U盘等设备。
3 软件设计
3.1 ZigBee程序设计
为了保证系统的可靠运行,必须选择合适的网络拓扑结构。ZigBee标准支持3种主要的自组织无线网络类型, 即星型结构、网状结构和簇状结构[4]。本系统采用星型结构,星型拓扑结构只存在一个FFD(Full Functional Device)节点,各个 RFD(Reduced Function Device)节点共享信道,一定时间内只有一个RFD节点和FFD节点通信。本系统协调器与路由器均由FFD构成,它们均有建立ZigBee网络的能力。协调器与路由器传递数据是双向的,协调器一方面收集终端节点的数据包并发给IDU,另一方面也将IDU从串口发来的控制信息发送到对应的节点,路由器的工作是负责协调器与终端节点之间数据传递。ZigBee程序流程图如图3所示。
3.2 WinCE及Web应用程序设计
本系统后台程序是基于WinCE/Win32上的应用程序,可在PC机和嵌入式计算机上部署。后台采集程序、管理程序和服务器程序由Lazarus开发环境进行开发。Lazarus是一个基于Free Pascal的快速应用(RAD)的面向对象的Pascal集成开发环境,不像Java致力于“一次编写,到处运行”,Lazarus和Free Pascal则致力于“一次编写,到处编译”。由于对上述所有平台有完全相同的编译器,这意味着使用者不需要重新编码,就可以为不同的平台开发相同的产品。因此,编译后可以部署在不同的核心控制器和操作系统上,为一次开发多方面应用提供了方便,为不同的部署方案提供了灵活性。基于Web的远程直观可视化浏览界面采用的是基于C#的Microsoft Silverlight平台进行开发。Microsoft Silverlight是一个跨浏览器、跨客户平台的技术,能够设计、开发和发布有多媒体体验与丰富交互的网络交互程序,使整个界面具有很好的直观性和良好的视觉效果。整个软件系统构架如图4所示。
整个软件系统主要由四部分组成,数据采集终端(传感服务)、服务器端(中间件器服务)、报警端(报警服务)和Web界面(Web服务)。四部分之间通过PHPRPC协议进行数据传输和交换。PHPRPC 是一个轻型的、安全的、跨网际的、跨语言的、跨平台的、跨环境的、跨域的、支持复杂对象传输的、支持引用参数传递的、支持内容输出重定向的、支持分级错误处理的、支持会话的、面向服务的高性能远程过程调用协议。这使得彼此间的通信变得更加容易、方便、快速和稳定。PHPRPC是建立在Socket之上的,出于一种类比的愿望,在一台机器上运行的主程序,可以调用远程另一套机器上的子程序,就像本地调用。它是一种C/S开发方法,开发效率高且可靠。比起Socket其实现过程简单,只需要少量的语句便可以实现远程调用,从而提高了开发的效率和系统运行的稳定性及准确性。
传感器服务,对于传感器数据的采集是实时的,对每个设备的工作是独立的。其流程图如图5(a)所示。中间件服务承担着服务器的角色,是数据传输的中转站,并且还负责对数据的检查(数据和状态是否达到报警值)、存储和备份。其流程图如图5(b)所示。报警服务,它只是负责对服务器传来的报警信息进行报警。 其流程图如图5(c)所示。Web服务运用Microsoft Silverlight平台进行开发,它是微软所发展的 Web前端应用程序开发解决方案,是微软丰富型互联网应用程序策略的主要应用程序开发平台之一。能够开发出具有专业图形、音频和视频的Web应用程序,可达到界面直观、丰富等效果。为了增强界面参数显示的实时性,数据采集终端采集上报到服务器中,服务将把实时的数据保存在内存当中。Web通过PHPRPC协议从服务器中调回实时数据时,不是通过服务器查询数据库得到,而是通过服务器内存直接取回。这样,通过内存访问的形式不仅减轻了服务器的压力,同时也提高数据更新的实时性,提高了整个系统的性能。
4 系统的调试与运行
本系统在某机房的支持下,投入调试运行,运行的性能达到了预期的要求。先开启无线网络协调处理器,然后开启网络路由节点和各个终端节点建立无线传感网络,运行嵌入式服务器和IDU采集终端。通过PC机运行远程Web界面,运行测试达到很好的实时性、快速性、稳定性。
通过投入机房运行实践证明,无线传器网络技术可以很好地应用到机房监控系统当中,而且具有很好的准确性、实时性、快速性和稳定性。由Silverlight开发的Web界面具有很好地直观性、富交互性和动画性。为了提高ZigBee无线传感网络数据传输的准确率和机房的抗干扰能力,加大传输距离,可以采取天线放高、增大发射功率、提高接收灵敏度等措施。使用中继模块缩短传输距离可以很好地提高整体性能。不用2.4 GHz,而使用低频率传输,可使穿透能力增大很多。
ZigBee无线传感网络嵌入式技术应用领域愈来愈广泛,硬件性能上也在不断提升,不断地在扩大应用领域。本系统的架构可以很好地移植到其他监控和数据采集系统等不同应用场合当中。
参考文献
[1] 李念强,魏长智,潘建军,等.数据采集技术与系统设计[M].北京:机械工业出版社,2009.
[2] 李淼,刘澜涛,詹宏聃.远程机房监控系统的设计与实现[J].中国教育网络,2009(Z1):113-115.
[3] BEAUMONT S P. The SOC challenge[J]. IEEE Electronics & Communication Engineering Journal, 2001,13(6):234-235.
[4] 孙学岩.基于 Zigbee无线传感器网络的温室测控系统[J].仪表技术与传感器,2010(8):47-49.
[5] 赵展春.基于无线传感器网络的机房环境监控系统实现[J].计算机工程与设计,2008,29(7):1869-1871.