工业无线网络性能测试方法研究和实现

2011-07-26 11:03姜德志费敏锐
自动化仪表 2011年8期
关键词:令牌实时性测试方法

姜德志 费敏锐 李 昕

(上海大学机电工程与自动化学院1,上海 200072;上海市电站自动化技术重点实验室2,上海 200072)

0 引言

近年来,中短程无线通信技术发展迅速,它正逐步渗透到工业控制领域,具有很好的应用前景。基于IEEE 802.15.4a(4A)标准的线性调频扩频技术(chirp spread spectrum,CSS)综合了FSK、PSK和ASK三种调制方式的优点,能有效地抑制恶劣环境中的噪声和干扰且功耗极低,特别适合应用于工业场合[1]。为了研究该标准下的工业无线产品安全性和稳定性,需要设计相应的测试和验证方法,以考察其性能。

目前,人们对于该标准的大部分研究工作还只是基于普通的计算机网络的离线性能分析[2],新的测试方法和装置未见报道。本文分析总结了该标准无线网络的各种研究方法,提出了该无线网络的性能测试分析方法,并开发相应的测试装置,以考察其在工业无线网络控制系统中通信的性能指标,为优化和改善工业无线网络通信提供了依据。

1 实时性测试方法

1.1 工业无线网络的实时性

实时性是指信号的输入、运算和输出都要在一定的时间内完成,并根据生产过程工况及现场情况变化进行及时处理[3]。实时与快速并非是相同的含义,无论网络的传输速度如何,只要在规定的响应时间内产生响应动作,都说明系统具有实时性。工业无线网络的实时性是指网络中的功能节点通过网络联系在一起,当某个节点向网络发出访问请求时,功能节点能够在响应时间内完成相应的功能操作[4]。对于工业无线通信的实时性测试主要是考核该网络对各类事件的响应速度、稳定性、准确性等性能,其关注的对象是工业无线网络的性能指标,如:丢包率、时延、控制周期和吞吐量等,这些性能指标是准确评价在不同网络负载下协议实现性能的一种重要手段。

1.2 测试方法

目前,基于IEEE 802.15.4a标准的无线网络的测试研究方法主要有理论分析、计算机仿真和真实测试平台三大类。理论分析是用数学建模的方法对网络及其环境进行详细的描述和分析,间接实现对实际应用网络的研究。计算机仿真方法是利用NS2、OPNET、Matlab等仿真软件对无线网络进行研究,这类方法具有成本低、灵活性好和可靠性高等优势。真实测试平台本质上就是原型系统,最接近于实际应用的网络环境[5]。

理论分析和计算机仿真的方法虽然可以进行多个同类协议的比较,但建模复杂,且不可能完全模拟工业现场的真实环境。真实平台的测试方法更为真实可信,不仅全面包含影响网络状态的各个因素,而且避免了因模型简化而导致的误差。通过查阅相关文献,发现基于IEEE 802.15.4a的CSS物理层协议标准的研究平台较少,大多数是理论仿真分析;而本课题已经设计好基于IEEE 802.15.4a的CSS物理层协议标准无线节点,并将该类节点集成到工业控制系统中去,且运行稳定。因此,本文选择了真实平台的测试方法,并开发了测试装置。

1.3 测试方法的实现

工业无线产品通常是以协议转换器、ODBC、OPC和网关等方式接入到现有的控制系统。采用OPC、ODBC等方式的无线网路不能保证测试数据的实时性,但若以硬件的方式接入到控制系统中,如转换器或者网关等,则可以解决上述问题。

本文研究的无线网络是通过协议转换器接入到工业控制网络。按照这种接入方式,测试装置通过无线发送数据、有线接收数据,实现了数据的跟踪测试。

测试装置接入无线网络的测试方法示意图如图1所示。

图1 测试方法示意图Fig.1 Schema of test method

由图1可知,测试数据包的传输路径为性能测试装置(无线子节点)→协议转换装置(无线主站)→主干网络PLC主站→协议转换装置(Modbus/TCP Client)→性能测试装置。协议转换装置由无线主站、Modbus/TCP Client、Profibus-DP从站等组成。无线主站收到测试数据包后,通过协议转换装置变换成Profibus-DP报文并上传至PLC控制器;PLC将报文分发至有线网络的数据映射区,进行数据处理后,通过Profibus-DP报文分发至协议转换装置。协议转换装置将该Profibus-DP报文转换为Modbus/TCP网络协议报文,发送给测试节点。在此过程中采用时间戳的概念,记录下每次数据包在各种协议中的接收/发送时间、收发数据包的数量及其他有效信息,并最终计算出无线网络的各种性能参数。

本文选择了无线网络的丢包率、无线网络流量、无线网络令牌循环时间和有线无线网络的控制周期作为无线网络性能的指标。丢包率指一段时间内无线丢失的包个数与发送的包的总数量之比;无线网络流量指单位时间内发送接收的数据总和;令牌循环周期指同一个无线节点相邻两次收到令牌的循环时间,表达式为:

式中:Tn为无线节点C第N次收到令牌的时间;Tn+1为第N+1次收到令牌的时间。

控制周期指在一组测试中,数据包离开A网络源节点记录时间为Tsend,经过网关或者协议转换器有效地穿越至B网络,经过主控制器后处理后再回到A网络的目标节点时间为Trecv。控制周期计算表达式为:

2 装置硬件实现

本文选择了AT91RM9200处理器,工作温度范围为-40~+80℃,具有很好的抗干扰特点。通过SPI总线与NA1TR8无线模块连接,实现测试装置的无线通信功能。无线模块采用了线性调频扩频CSS技术作为实现工业无线网络协议IEEE 802.15.4a的物理层标准,测试装置硬件结构如图2所示。

图2 测试装置硬件结构图Fig.2 Hardware structure of the test device

AT91RM9200微处理器集成了以太网控制器,通过MDIO接口外扩DM9161以太网物理层接口芯片,对外通过RJ45网口与其他的Modbus节点进行通信,其本身作为一个Modbus/TCP Server节点。LCD显示屏采用Topway的 LM32019EWF,分辨率为320×240,供电电压为3.3 V,它以8080总线的方式连接到AT91RM9200微处理器上。

触摸屏采用的是AD7843芯片,通过I/O口线连接到处理器上,模拟SPI实现数据的通信。系统扩展了DM9000网口与上位机进行通信,实现与上位计算机的数据交互;此外,还扩展了SDRAM存储器和FLASH存储器、USB接口、串口、输入输出I/O等。该装置与测试网络连接采用无线(基于IEEE 802.15.4a标准CSS物理层的NA1TR8无线模块)和有线(Modbus/TCP)的方式,实现与测控平台的接入。

3 程序实现

3.1 应用程序设计

3.1.1 无线测试程序的实现

测试装置通过无线接入到无线令牌环网络,进行数据测试。测试的具体步骤为:程序先进行初始化,测试装置等待加入到无线令牌环网络。测试装置加入后等待获得网络的令牌。测试装置获得令牌后将测试数据发送至无线主站,同时将数据保存到一张二维表格Ⅰ里。无线主站(协议转换器)将测试数据转换成Profibus-DP的数据包发送至PLC,PLC进行相应的处理后,将数据返回协议转换器。协议转换器将数据包转换成Modbus/TCP的数据包发送给测试装置,测试装置将接收到的数据记录到表Ⅰ中。当表Ⅰ记满后自动转到表Ⅱ,等待数据处理程序处理表Ⅰ的数据,处理完毕后清零。

3.1.2 数据处理程序的实现

数据处理程序流程如图3所示。

图3 数据处理程序流程图Fig.3 Flowchart of data processing program

当表Ⅰ(Ⅱ)完成256次测试后,测试程序会发送表Ⅰ(Ⅱ)测试完毕的信号量,数据处理程序获得该同步信号量,并对该表进行数据处理。

根据表中发送和接收的数据信息计算出丢包率,令牌循环时间、无线网络的流量和控制周期等参数。处理完成后清除表格中的数据,并保存处理结果到相应的数据区。

3.1.3 接口程序的实现

显示程序和触摸屏输入程序主要完成对测试结果的显示和用户的设置。上电后首先对硬件进行初始化,然后通过输入信息选择相应的显示信息,即:丢包率显示、流量显示、令牌循环时间显示、延时显示以及与其他用户交互的界面选择。上位机通信利用套接字中的socket()和connect()函数与上位机之间建立起可用的TCP连接,用send()和receive()函数将测试结果告知计算机。

3.2 多任务调度的实现

测试装置的软件系统采用VxWorks嵌入式实时操作系统。VxWorks实时操作系统提供的多任务机制中对任务的控制采用了优先级抢占和轮转调度机制[7],充分保证了可靠的实时性,使同样的硬件配置能满足更强的实时性要求,为应用开发留下更大的余地。

在主程序中设定系统时钟分辨率及任务调度方式,并创建 twire、thandle、tclient、tdisplay 和 tserver共五个新任务。twire为无线节点任务,主要完成入网和发送接收数据、发送令牌等操作;thandle为性能测试结果的计算任务,将一次测试过程中的各项数据记录在列表中,计算得到性能指标值等;tclient为TCP客户端任务,主要利用socket和connect函数建立起可用的TCP连接,用send和receive函数发送报文并接收对方响应,完成一次测试结果的上传;tdisplay为显示和输入任务,用于对测试数据的显示和控制;tserver是Modbus/TCP服务器程序,完成Modbus/TCP网络通信的功能。上述各任务并行运行,任务之间的通信采用信号量和消息的方式。

各任务之间分别采用semhandle、semclient、semdisplay这三种信号量进行通信。其中,semhandle信号量用来同步thandle与tserver任务,即当Modbus/TCP服务器端接收完一组测试包后才能开启性能计算任务;semclient信号量用来同步thandle与tclient任务,当测试数据计算得出结果后才能通过客户端上传至上位机;semdisplay用来同步thandle和tdisplay任务,即将thandle计算的数据结果同步显示在液晶屏上。

4 实验结果验证

待测网络拓扑结构如图4所示。

图4 待测网络拓朴结构图Fig.4 Structure of the network under test

无线网络流量、令牌周期和控制周期示意图分别如图5、图6所示。

经过测试,我们得到该系统在传输距离为30 m以内的丢包率小于0.1%,无线到Modbus/TCP的现场总线网络的控制周期为27.34 ms。

5 结束语

本文对基于IEEE 802.15.4a标准的工业无线网络进行了测试。测试结果表明,该方法能够有效地实现对该标准无线网络进行测试。

该测试方法提出了基于IEEE 802.15.4的CSS标准的嵌入式工业无线网络的测试[10-12],其主要优点在于由嵌入式操作系统提供统一的时间基准而避免了时间基准引起的测量误差,并将测试装置接入现场总线网段中进行测量,能更精确地获得性能参数。工业无线网络性能测试的研究和实现,为改善和优化基于IEEE 802.15.4a标准的无线网络的通信协议和保证系统的稳定运行提供了有力的依据。

[1]黄丹青,费敏锐.IEEE 802.15.4a工业无线标准的研究与应用[J].自动化仪表,2010,31(1):5 -9.

[2]杨傲雷.面向工业现场的短程无线监控网络系统设计与实现[D].上海:上海大学,2009.

[3]Qing Li,Caroline Yao.嵌入式系统的实时概念[M].王安生,译.北京:北京航空航天大学出版社,2004.

[4]吴瑞强.控制系统的实时性研究与优化[D].杭州:浙江大学,2006.

[5]刘俊.WLAN Mesh网络性能测试平台的系统设计[D].西安:西安电子科技大学,2008.

[6]王佳承.用于工业异构网络控制系统的有线无线协议转换装置研究与实现[D].上海:上海大学,2009.

[7]郝晓辉.基于AT91RM9200的VxWorks实时系统的研究和开发[D].西安:电子科技大学,2007.

[8]李方敏.VxWorks高级程序设计[M].北京:清华大学出版社,2004.

[9]陈智育,温彦军,陈琪.VxWorks程序开发实践[M].北京:人民邮电出版社,2004.

[10]左芸,凌志浩.工业无线传感器网络管理模式的研究[J].自动化仪表,2009,30(12):15 -18.

[11]侯惠芳,刘光强,季新生,等..基于公钥的可证明安全的异构无线网络认证方案[J].电子与信息学报,2009,31(10):2385 -2391.

[12]崔莉,鞠海玲,苗勇,等.无线传感器网络进展[J].计算机研究与发展,2005,42(1):136-174.

猜你喜欢
令牌实时性测试方法
基于泊松对相关的伪随机数发生器的统计测试方法
称金块
基于路由和QoS令牌桶的集中式限速网关
基于云计算的软件自动化测试方法
DLD-100C型雷达测试方法和应用
航空电子AFDX与AVB传输实时性抗干扰对比
计算机控制系统实时性的提高策略
对改良的三种最小抑菌浓度测试方法的探讨
基于WTRP网络的自适应令牌传递算法*
一种车载Profibus总线系统的实时性分析