集成WSN、载波通信和多种现场总线的网关设计
扫描二维码
随时随地手机看文章
摘要:无线传感器网络和低压电力线载波通信在楼宇控制系统中正在逐步得到应用。为了实现这两种通信网与现有的多种现场总线网络之间的互联和集成,提出了一种基于ARM微处理器SEP4020的多功能网关设计思想。探讨了以太网、RS 232、RS 485、WSN、低压电力载波通信等多种通信接口的软硬件设计方法,实现了无线传感网、现场总线、以太网和低压电力载波通信等多种通信协议,成功地解决了现场总线网络和电力载波通信与无线传感器网络的互联问题。
关键词:无线传感器网络;低压电力栽波通信;网关;嵌入式Linux
0 引言
无线传感器网络作为一项新兴的技术,多用在用于军事、环境监测和预报、健康护理、智能家居、智能楼宇、城市交通、仓库管理,农林业监控等领域,传感器节点部署于监测区域中,负责监测区域内的信息采集,其中部分传感器节点具有路由功能,通过无线组网方式构成网络,将采集到的数据以自组多跳的网络方式传送到用户终端;电力线载波通信网络方兴未艾,电力线载波多用在如远程抄表等直接与电力线有接触的设备中,与采用现场总线的传统传感器网络相比,电力线载波通信网络直接通过电力线进行数据传输,设备部署方便,因为采用有线通信,通信可靠性较高。
目前这两个网络的大部分研究还集中在自身网络上,较少研究它与其他网络的互联和集成问题。已有的控制网络(如现场总线、工业以太网等)也很少考虑到它们与无线传感器网络、电力线载波通信网络的集成问题,相关的集成技术研究和设备开发还处于起步阶段。据此,本文设计了一种支持多接口多协议的多功能网关,可解决WSN无线网络、电力线载波通信网络与其他网络的互联集成问题。
1 总体设计
多功能网关在异构网络中负责建立异构网络之间的连接,无线传感器节点测量的信息在无线传感器网络中通过多跳接力的方式传输,并经过网关转换成其他介质和协议,从而传送给外部网络和用户。如图1所示。
现有的WSN产品中,大多只提供RS 232串行接口,用以连接上位机,实现监控。但是在现实的工控项目中存在各种各样的接口和总线,需要无线传感器网络与其他总线网络互相传输信息。因此,需要一种能够支持多种接口的网关。当连接某种接口或通信协议时,稍加修改该网关的软件和配置硬件模块就可以快速投入使用。
本文设计的多功能网关可支持多种接口和多种应用模式。其主要支持以太网,RS 232,RS 485,GPRS和电力载波通信等接口。支持的应用模式包括:通过GPRS接口连接上位机,实现监控、程序下载等功能;通过RS 485接口实现Modbus协议接入现场总线或其他控制总线中;通过以太网接口接入工业以太网,将无线传感器网络作为子网接入控制网络;通过以太网接口,构建嵌入式Web服务器。客户机可以以网页浏览的方式查看WSN中所有传感器节点的状态和数据,并进行远动控制。
2 硬件设计
多功能网关主要包括主系统部分(控制器、存储器)、电源模块、ZigBee无线通信模块、以太网通信模块、GPRS通信模块、电力载波通信模块(PLC)和人机接口模块等。硬件总体框图如图2所示。
系统硬件分为核心板、扩展底板和外接通信模块3部分。核心板包括主控制器和存储器;外接通信模块包括ZigBee无线模块、GPRS模块和电力载波通信模块;核心板和外接通信模块插接在扩展底板上,并在扩展底板上扩展电源电路、调试接口、RS 485通信模块、人机接口等电路。
2.1 微控制器选型
多功能网关的功能比较复杂,需要实现多种接口和协议的转换,由于外接通信模块较多,应尽量选择性能强大、通信接口丰富,内置所需各种接口的控制器,以降低成本。
本文选择基于ARM体系结构的微控制器搭建整个系统。该结构的微控制器具有强大的功能和丰富的接口扩展,在嵌入式智能网络设备的设计中得到了大量应用。通过分析对比常用的多种ARM7微处理器,最终选择了基于ARM720T核心的工业级微控制器SEP4020。该款微控制器由东南大学国家专用集成电路系统工程技术研究中心设计,集成MMU单元,内置以太网MAC,LCD接口,可通过外部总线接口(EBI)进行扩展,功能丰富、性能强大,接口丰富,功耗较低,完全适合于工业控制的需要。
2.2 串行通信接口扩展
SEP4020内置4路UART接口,其中一路设计时使用跳线的方式连接MAX3221芯片,作为DEBUG串行RS 232接口,主要用于调试时发送信息,同时也可复用为红外接口;其余3路直接以TTL电平引出,分别连接ZigBee无线通信模块、GPRS通信模块、电力载波通信模块。另外利用SEP 4020提供的SPI接口连接SC16IS752芯片进行UART接口扩展,该芯片是NXP公司推出的一款通过SPI/I2C总线扩展为UART接口的芯片,可以扩展出两个通道高性能的UART。用来连接RS 485系列隔离收发器模块,该模块内部集成电源隔离、电气隔离、RS 485接口芯片和总线保护器件,具有很好的隔离特性。整个串行通信接口结构如图3所示。
2.3 外接通信模块
外接通信模块为ZigBee无线通信模块、GPRS通信模块、电力载波通信模块。无线模块的ZigBee通信芯片选用TI公司生产的2.4 GHz射频系统单芯片CC2430,该芯片整合了ZigBee RF前端、内存和8051微控制器;GPRS通信模块选用SIM300GSM/GPRS模块,该模块主要应用于WLL,M2M和手持设备方面,实现语音、SMS、数据和传真信息的高速传输;电力载波通信模块采用扩频通信技术,选择北京福星晓程公司的PL3106载波芯片,内嵌扩频通信调制/解调电路和8051微控制器,内部集成2路A/D,其中一路用来采集负载端电压,另一路用来采集负载电流,可以实现负载功率的精确测量。外围的配置电路主要包括功率放大电路、载波耦合电路、滤波整形电路、谐振电路及接收电路等。以上通信模块与SEP4020之间均使用UART接口进行通信。
3 软件设计
软件平台采用一种开放源码的Linux操作系统,便于在其基础上完成各项相关应用程序的开发。软件主要涉及到操作系统的裁剪与编译、驱动程序编写和系统主程序编写。多功能网关软件体系架构如图4所示。
由底层到高层,软件部分依次包括:BootLoader移植、Linux操作系统移植、设备驱动程序编写、嵌入式端软件和协议转换设计、主站监控软件设计等。
3.1 BootLoader与Linux
BootLoader是系统加电后运行的一小段程序,用来初始化硬件设备、建立内存空间映射,为调用操作系统内核准备好正确的环境,同时也将启动内核所需要的一些信息通过相关机制传递给内核,并引导和加载内核。它的主要功能是完成硬件设备的初始化、操作系统代码的搬运,并提供一个控制台及一个命令集在操作系统运行前操控硬件设备。
Linux 2.6在内核主体中加入了提高中断性能和调度响应时间的改进,其中有三个最显著的改进:采用可抢占内核、更加有效的调度算法以及同步性的提高。
3.2 通信网关
网关的核心功能是完成协议转换和数据中转,即将ZigBee和载波协议的数据转成TCP/IP格式的数据,并在ZigBee网络、Modbus、以太网、电力载波通信和GPRS远程通信网之间无障碍的交互数据。
网关软件包括:数据采集、数据存储、数据显示(测试用)和远程数据传输。数据采集功能负责获取从串口传过来的数据。具体过程是主线程中初始化并打开串口,建立串口接收信号,在信号处理函数中。处理接收到的数据。当接到数据包时产生信号,在信号处理函数里调用协议转换程序按照ZigBee,Modbus和载波协议的定义解析数据,解析出原始数据中的节点号、传感器模拟量、开关量值等信息。整个网关对多种协议的处理采用事件通知和分发机制,如图5所示。利用多线程技术,将数据处理部分、数据存储部分分别放在单独的线程中处理,以提高程序的运行速度。通过在Linux上移植了嵌入式数据库系统,可以有效的实现实时数据的存储。
网关通过GPRS与远程主站通信,主站以自身设置的通信协议发送指令,指令下达到网关后,网关解析主站的指令并获取操作对象,依据操作对象选取载波协议或者ZigBee,对指令进行再封装,并下发指令至操作对象,等待对象返回信息,在获得对象的信息后,根据选取的协议解析对象数据,使用主站协议重新对该数据进行封装,而后将数据上传至主站。
网关是建立在传输层以上的协议转换器,通常它连接两个或多个相互独立的网络,每接收一种协议的数据包后,在转发之前将它转换为另一种协议的格式。该网关不仅实现了4种协议的转换和4种工控网络的互联,而且通过TCP/IP协议连入工业以太网,实现了与工业以太网之间的数据互传。通过在Linux上移植了嵌入式Web服务器功能,使操作人员能够通过网页远程监控网络节点运行状态。
4 结语
该系统将WSN、电力线载波、以太网和公共通信网络有机地结合在一起,将信息汇集之后通过以太网接口或者GPRS达到远程传输的目的。通过在一个软硬件平台上提供了工业控制中常见的多种总线和网络的接口,能够支持多种应用模式。该设计适合于现实应用中的多种需求,可以根据具体应用进行快速的裁剪和配置,具有实际的应用价值。