陈侃松等
摘 要:以低功耗、低成本、微型化、远距离的无线传感网络作为主要依托,设计一种基于ARM处理器和Linux操作系统的网关。将多种短距离无线通信技术与远距离无线通信技术相结合集成于网关节点,构建多模态网关。通过分析实验数据,与传统网关相比具有低成本、易移植、兼容性的优势。
关键词:无线传感网;网关;ARM;Linux
中图分类号:TP391.4 文献标识码:A 文章编号:2095-1302(2015)04-00-02
0 引 言
无线传感网络可对网络分布区域内监测对象进行感知、采集、处理和监控,并通过无线通信方式传送给网络终端用户,将信息世界与物理世界融为一体。但无线传感网络要真正发挥其在物联网领域中的作用还要借助于网关设备接入外部网络。本文设计了针对多种应用场合的一种多模态网关。
1 硬件部分设计
嵌入式网关向上连接远程监控系统,由上位机程序实现远程的数据获取、设备监控。向下连接到无线传感器网络的协调器模快,实现无线网络终端节点的数据采集和相关节点的功能控制。根据系统功能需求,总体分为三个部分,如图1所示。
1.1 无线传感网接入模块
无线接入模块根据数据传输速率选择基于ZigBee通信协议的核心芯片CC2531和前端芯片CC2591,如图2所示,进一步改善其接收灵敏度,从而延长通信距离。无线接入模块均采用USB接口方式连接网关设备。
1.2 网关数据处理模块
采用基于ARM9的S3C2440平台构建网关的硬件平台。主控制器分别接收各个采集模块的数据进行统一分析,然后通过总线下达控制命令,把处理好的数据送回工业现场,进行实时控制。
1.3 远程数据输出模块
远程数据输出模块主要是将处理好的数据以特定的形式输出。用户可以根据具体的应用场景选择GSM/GPRS、Ethernet以及UART中的一种,即可实现上位机的实时显示和监控。
2 软件部分设计
在Linux操作系统下的程序开发过程中,每个程序模块是以任务的形式开始运行,在创建任务时,可以对每个任务提前设定一个独有的优先级,系统会查询就绪列表中的优先级顺序作为执行任务的依据。软件部分的组成根据硬件系统的组成分为三个部分:数据无线采集、无线接入模块的USB驱动、数据的处理和输出。系统的软件框图如图3所示。
2.1 数据无线采集
(1)数据采集
根据网关节点发送的信标信号选择传感器节点,通过对CC2530初始化后,开中断进行数据采集,判断存储容量是否饱和,将数据发送至射频前端CC2591准备进行无线传输。
(2)采集节点低功耗设计
通过中断信号的引入与中断服务程序的设计,以及对射频前端CC2591工作模式的控制,实现传感器节点的休眠/唤醒调度,优化节点休眠机制;减少节点功耗,保证网络通信质量。
2.2 无线接入模块的USB驱动
在Linux驱动中,USB驱动处于最底层的是USB主机控制器硬件,在其之上运行的是USB主机控制器驱动,主机控制器之上为USB核心层,再上层为USB设备驱动层。因此要实现的USB驱动包括两类:USB主机控制器驱动和USB设备驱动,前者控制插入其中的USB设备,后者控制USB设备如何与主机通信。在编写特定设备的USB设备驱动时,主要应该完成的工作是probe()和disconnect()函数,即探测和断开函数,它们分别在设备被插入和拨出的时候被调用,用于初始化和释放软硬件资源。
2.3 数据的处理和输出
数据管理单元是本设计软件实现的关键部分。负责数据的转发、存储以及相关处理操作。这一部分所要处理的数据包括实时的数据和以往数据两部分。在系统完成了初始化后,数据的管理单元即可通过平台总线的方式来传输数据,对于数据的存储主要基于两种方式:一是存储于本地,二是存储于外部。此外,存储于本地的数据有两种形式,分为数据库系统存储和文件系统存储。根据嵌入式网关的应用需求和性能要求,这里网关采用以本地文件的方式存储。
3 测试结果
采用多个ZigBee模块节点和S3C2440组成测试网络。网络采用星型拓扑结构,各终端节点以协调节点为中心相互通信。节点可设置为每隔一段时间采集一次数据,组成数据帧发送给网关部分。网关分别设置成通过USB接口接收ZigBee采集数据和利用以太网传输数据,服务器IP地址为192.168.1.17,网关上无线接入模块为CC2531。相关结果如图4所示。
将嵌入式网关平台、无线传感网各节点上电,在网关系统完成初始化和 ZigBee 无线传感网络成功建立后,网关平台接收汇聚节点的数据并进行相关数据处理,最后通过以太网的方式传输到上位机监控系统。监控系统通过socket客户端连接到网关的socket服务器。监控系统通过对传输来的数据进行数据包解析,并将无线传感器网络节点信息显示在上位机界面。
本地存储通过搭建文件系统以及自制GUI程序来实现,如图5所示。
结 语
无线传感器网络逐步应用到了越来越多的领域,嵌入式网关作为无线传感器网络与外部网络通信的桥梁,在 WSN 网络系统整体结构中起着显著的关键作用。本设计针对目前无线传感网的应用趋势,采用模块化设计的思想,提出了一种基于ARM的嵌入式网关系统平台的实现方案,实现了无线传感器网络和外部网络的数据传输,提高了网关的通用性。嵌入式Linux系统的应用也大大改善了网关实时性能。未来嵌入式网关可用于区域环境的信息监测,如智能楼宇、智能交通、工业监测等应用,利用近、远距离通信方式的结合延伸了数据监测范围,在实际测试当中取得了良好的效果。
参考文献
[1]张水平,李晓波,张凤琴等.ZigBee在多传感器信息集成中的应用[J].计算机工程与设计. 2012(1):41-46.
[2]周泽强,王卫星,翁伟明.无线传感器网络3G网关的设计与研制[J].现代电子技术,2011(13):27-29.
[3]蔡皓,冯仁剑,万江文.具有多种通信方式的无线传感器网络网关[J].传感技术学报,2008(1):169-173.
[4] 吕西午,刘开华,赵岩.基于ZigBee的无线监测系统设计与实现[J].计算机工程.2010(5):243-247.
[5]郭秋平.基于ARM系统的Linux平台移植研究[D].杭州:浙江大学,2006.
[6]韦东山.嵌入式Linux开发完全手册[M].北京:人民邮电出版社,2008.
[7]张国琛.基于Linux的低功耗手持设备系统的设计与实现[D].武汉:武汉理工大学,2011.
[8] Behrouz A. Forouzan. TCP/IP 协议族[M],王海译.北京:清华大学出版社,2011.
[9] W. Richard Stevens,Bill Fenner,Andrew M. Rudoff.UNIX 网络编程(卷 1):套接字联网API[M].北京:人民邮电出版社,2010:159-201
[10]刑向磊,周余,都思丹.基于嵌入式Linux系统的电源管理软件[J].计算机工程.2010(1):253-255.
[11] TAO Shu Marwan Krunz.Energy-efficient power rate control and scheduling in Hybrid TDMA/CDMA networks[J].Computer Networks,2009,53(8):136-140.
[12] Suzuki Nozomu, Mitani Tomohiko, Shinahara. Study and development of a microwave power receiving system for ZigBee device[C]. Microwave Conference Proceedings,Yokohama,2010:45-48