莱特准则改进算法的呼伦湖环境信息采集系统的设计

2017-01-19 14:32杜永兴张志涛李宝山秦岭
现代电子技术 2016年24期
关键词:数据采集

杜永兴+张志涛+李宝山+秦岭

摘 要: 由传感器采集后经ZigBee上传到数据中心的环境数据已经被广泛地使用到工业应用的各个领域,但是由于ZigBee采集的信息数据受到硬件和外界环境因素的影响会随机出现野值,这导致最终数据的偏离或者错误。提出改进的莱特准则剔除野值算法,该算法通过与最大误差和标准差的比较,得出需要保留的数据,最后剔除错误数据。通过对改进算法剔除的系统误差数据进行分析,与传统莱特准则算法相比,改进算法提高了剔除野值的准确性。现场试验结果表明,改进莱特准则算法对采集到的数据进行处理,得到的环境信息数据更加准确。

关键词: ZigBee; 数据采集; 莱特准则; 剔除野值

中图分类号: TN911?34 文献标识码: A 文章编号: 1004?373X(2016)24?0030?04

Design of Hulun Lake environment information acquisition system based on Letts criterion improved algorithm

DU Yongxing, ZHANG Zhitao, LI Baoshan, QIN Ling

(Information College, Inner Mongolia University of Science & Technology, Baotou 014010, China)

Abstract: The environmental data collected by sensors and uploaded to the data center via ZigBee has been widely used in industrial application fields, but the information data collected by ZigBee may appear in outliers randomly due to the influences of hardware and external environment, which leads to the final data deviation or error. The improved Letts criterion algorithm to eliminate outliers is proposed in this paper. The algorithm can obtain the data needs to be kept by means of comparing the maximum error and standard deviation, and finally eliminate the wrong data. By analyzing the system error data eliminated by the improved algorithm and comparing with the traditional Wright algorithm, the improved algorithm can enhance the accuracy of outliers elimination. The field test results show that the improved algorithm can get more accurate environmental information data comparing with traditional algorithm.

Keywords: ZigBee; data acquisition; Letts criterion; outlier elimination

0 引 言

随着工业的发展,环境监测是环境管理的重要内容之一,是环境监管的基本手段,也是环境保护事业最具基础性战略性的一个支撑体。环境是人们赖以生存的基础和保障。必须对一些特殊地方的(工厂、水域、河流等)环境进行合理的监管,这就需要对环境进行监测,以便采取相应的措施解决人们所面临的亟需解决的问题。

目前采集环境数据的方法多种多样,传统的环境监测有采集样品,在实验室中进行分析得到最终结果。有的方法是布置硬件设备对环境进行监测[1]。通常采取布线连接方式,将各个传感器组成一个或多个网络,但是这样会带来布线的麻烦和成本的增加。目前比较常用的方法是传感器结合ZigBee技术[2]进行数据的采集和上传,它比传统环境监测组网更灵活、成本更低。

对于Zigbee采集方法而言[3],系统采集得到的环境数据由于硬件和环境因素的影响会随机出现野值。不同的检测环境也有不同的随机野值出现[4?6],不同的随机野值需要不同的处理方法。针对一般环境变化平缓的野值错误数据采用的是肖维涅剔除算法或改进后的肖维涅剔除算法。对于环境噪声比较大和恶劣的环境采用的是卡尔曼滤波Grubbs检验和Dixon检验等方法[7?8]。

呼伦湖是中国第五大湖[9?10],也是中国北部地区重要的生态屏障。由于自然和人为的原因,湖水质量恶化且水位逐年下降,影响了湖区渔业及周边生态。所以对呼伦湖的环境监测尤为重要。呼伦湖冬季昼夜温差大,采用传统的野值剔除方法会造成有效数据的丢失。本文从呼伦湖的特点出发,针对采集的环境数据变化趋势,提出剔除野值改进算法。设计了将无线传感器网用于环境系统,通过ZigBee终端节点连接传感器络采集了呼伦湖的部分环境信息数据,并验证了本文算法的正确性。

1 采集数据的剔除算法

1.1 莱特准则剔除野值

采集的环境数据由于受硬件环境等众多的因素影响,会采集到一些随机错误即野值,这样就需要进行数据剔除。莱特准则[4],当上传的数据服从正态分布时,残落在3倍标准差[-3σ,3σ]的概率超过了99.7%,落在此区域外的概率不超过0.3%,这样就可以认为残差落于该区域以外的采集数值为野值。假设1组观测序列为[x1,][x2,]…[,xn],其在[xk]中存在野值数据点。用莱特准则剔除野值首先要计算该采集数据的算术平均值:

再计算标准差σ:

根据原始采集序列x(i)和算术平均值[x]计算数据残值[xb]:

将残差[xb]逐一与3倍标准进行比较,进行野值检验。如果[xb(i)≥3σ],则与[xb(i)]对应的采集数据[x(i)]为野值,应当剔除。由于野值本身会对数据标准差求取精度产生影响,因此,莱特准则一般需要循环进行,即在一次野值剔除后的观测数据基础上,重新计算均值,并重新求取标准差[σ],再次进行野值剔除,直到得到满意的结果为止。实验表明,一般循环2~3次就可以满足要求。

由此可见,采用莱特准则进行野值剔除非常简单,容易实现;但是,莱特准则存在一个约束条件,就是要求观测数据服从正态分布。对于环境采集数据,如果采样点数足够长,根据大数定律,可近似认为其服从正态分布,直接利用莱特准则可以获得较好的野值剔除效果。而对于呼伦湖在夏、秋季温湿度采集的数据,其变化缓慢,在冬季昼夜温差大。此时,用莱特准则进行野值剔除难以得到理想的结果。

1.2 剔除野值方法的改进

由于环境信息出错的概率比较小,根据大量实验观察,以每大于20次以上出现一次,出现的最大概率为0.05%。由于每次信息采集传输的数据是相互独立事件,所以两次连续出现错误信息的概率为0.002 5%。连续三次以上出现错误信息的概率更小,所以在数据剔除时就剔除一次的和连续两次的。以剔除温度野值为例,温度在一天变化之中最大差值为[ΔT],所以在t分钟的变化最大值为[Tmax1=ΔTt24×60],假设传感器的最大误差为[Te],[Tmax]=[Tmax1+Te]。

取观测值[x1,x2,…,xn]并求其平均值[S1][=1ni=1nx(i)],并计算其标准差:

每隔t分钟之后得到的温度值[x(1),x(2),…,x(i)]。得到正确数据时,[S(k)]也是在时时更新:

如果[x(i)-S(k)≥Tmax],这样的数据属于偏离真实值比较大的,则被认为是错误数据不再进行比较,直接予以剔除。这样就不需要每次与标准差进行比较,可以提高剔除的效率。

如果[x(i)-S(k)≥Tmax],则可能是合理数据也有可能是偏离真实值比较近的错误值,这样需要在进行下一步的判断。由于温度、水位等信息变化比较平缓,概率分布图像比较陡峭,所以采取直接与标准差进行判断。依然根据观察值序列x(i)和算术平均值[S(k)]并计算数据残值[xb]:

将残差[xb]逐一与标准进行比较,进行野值检验。如果[xb(i)≤σ],则被认为是准确的环境信息数据。如果[xb(i)≥σ],则与[xb(i)]对应的采集数据[x(i)]为野值,应当剔除。若连续两次且小于3次采集得到的数据[x(i)-S(k)≥Tmax],则认为是野值,这样的值予以剔除。如果[x(i)-S(k)≤Tmax],那么就需要在进行之前与标准差比较,得出是否为野值。如果是就剔除,如果不是就保留,且时时更新[S(k)]。

在恶劣的天气下,可能在某个短时间内连续降温将超过平常的最值。连续下雨也会影响到水位的大幅度变化。这样需要进行这样特殊情况的判断。假如三次及以上连续采集得到的数据都满足[x(i)-S(k)≥Tmax],这样需要再进行判断是否为恶劣天气所致。因为环境在恶劣下降时,也会在一个范围之内,假设下降或上升的最大值为[T1max],若得到的三次及以上数据它们相互之间前一项和后一项的差值[x(i)-x(i-1)≥T1max,]则直接剔除。如果[x(i)-x(i-1)≤T1max,]则还需要进行下一步的判断。这时需要变化比较数据的第一个和S(k),如果[x(i)-S(k)≤T1max,]则视为正确的数据,予以保留更新S(k)。但是如果不满足[x(i)-S(k)≤T1max,]则予以剔除。野值数据剔除整体的流程图如图1所示。

2 试验系统的搭建

本系统主要实现环境信息数据的采集和传输。由于现场复杂情况的制约,使用有线网络时布线困难,所以采用技术先进、价格低廉的ZigBee无线传输网络,免除布线困扰的同时也节约了成本。本系统主要由四大部分组成:第一,环境信息采集的ZigBee终端节点、ZigBee网络以及协调器;第二,接收ZigBee信息和控制GPRS环境信息的单片机MSP430[11];第三,接收和存储环境信息的后台上位机;第四,由VC++ 6.0和SQL Server 2008制作的环境信息系统。系统的整体构架图见图2。

本系统的ZigBee和不同传感器作为环境信息采集的终端。选用的ZigBee的核心板CC2591自身集成了12位的ADC片内资源,就直接可以测一些模拟量(如温度、压力、位移、图像等)。获取一些通过转化得到的模拟量信息,通过ZigBee无线网络传输给协调器。

2.1 ZigBee无线传感器网络

无线传感器网络由多个传感器网络节点构成,本系统传感器网络节点的核心板采用CC2591芯片,该芯片是一种低功耗、低成本的无线微控制器,适用于IEEE 802.15.4协议和 ZigBee 软件应用。本系统接收多个不同终端节点采集的环境信息,网络的通信方式采用的是广播。无线传感器网络的传感器如图3所示。

2.2 控制器MSP430模块设计

系统的核心控制器MSP430F149是美国德州仪器公司(TI)生产的一款16位RISC混合信号处理器,控制器的主要功能与用途是:接收通过ZigBee协调器的串口发送采集的环境信息数据;对信息进行初加工和处理(主要是格式);通过发送AT指令控制SIM900A模块发送处理后的环境信息数据给上位机。

GPRS模块选用SIM900A,它支持GSM和GPRS900[12]两种模式。控制器部分的如图4所示。

2.3 传感器模块搭建

(1) 湖水液面高度:静压液位变送器[13]采用的是上海威尔太的WRT?136。通过测量由液位产生的静压力来确定液位高度。

(2) 水流量:流速传感器由两部分组成分别为流速传感器和压力变送器。

(3) pH值传感器:pH值传感器选用的是龙戈电子pH值检测采集传感器模块(酸碱度传感器)加pH复合电极 (酸度计电极)。

(4) 地面温湿度传感器:STH11单芯片传感器是一款含有已校准数字信号输出的温湿度复合传感器。

(5) 水体温度传感器:水体温度传感器选用的是DS18B20,其具有体积小、硬件开销低、抗干扰能力强、精度高的特点。

2.4 系统的后台设计

后台上位机软件编程使用VC++ 6.0,数据库使用SQL Server 2008。监控主机接收ZigBee协调器节点的各种数据并进行处理,同时存储到不同的界面窗口内。系统上位机结构如图5所示。

3 实验结果

经过几个不同时间和地点进行1 000次数据采集,得到改进的莱特算法比传统的算法正确率提高了。剔除前后的正确率如表1所示。

表1 采集数据剔除处理结果

由实验数据可知,经过不同时间和不同时间间隔得到1 000次数据,在没有数据剔除前数据正确率在94.5%~96.5%,传统的莱特准则剔除野值后得到的正确率在96.7%~98.0%。改进后的莱特准则剔除野值后得到的正确率为99.1%~99.9%。从实验数据可以得出改进后的莱特剔除野值算法提高了数据的准确性,且得到了验证。

4 结 语

本文设计了基于ZigBee无线传感器网络的环境信息监测系统的软硬件。实现了环境信息的采集与数据准确性的判断与保留更新。提出了莱特准则改进剔除野值的算法,在呼伦湖环境信息采集实验中,验证了该算法的有效性。

参考文献

[1] 顾志铭.基于Zigbee的高压电力电缆温度监测系统的设计与实现[D].上海:上海交通大学,2012.

[2] 赵政华.基于ZigBee技术的无线温、湿度监测系统的设计与实现[D].北京:北方工业大学,2010.

[3] 熊双桥.基于ZigBee的远程无线仓库温湿度环境智能监测系统设计[D].成都:西华大学,2013.

[4] 贡丽洁.基于改进Zigbee网络算法的希尼尔水库水情数据采集[J].云南水力发电,2015(4):6?9.

[5] 金学军.基于最小二乘拟合的外弹道测量数据野值剔除方法[J].四川兵工学报,2011(1):20?23.

[6] 张婷,汪渤.连续型野值判别的新方法[J].东南大学学报(自然科学版),2005(z2):225?227.

[7] 赵清华,赵立春.Dixon、Grubbs和Cochran法检验程序在环境监测中的应用[J].山东环境,1997(3):15?16.

[8] 张向东,潭洪恩.pc?1500袖珍计算机在数理统计中的应用兼谈Grubbs和Dixon检验在应用中的体会[J].干旱环境监测,1987(2):69?71.

[9] 顾润源,李思慧,赵慧颖,等.呼伦湖流域径流对气候变化的响应[J].生态学杂志,2012(6):1517?1524.

[10] 赵伟,杨培岭,李海山,等.呼伦湖流域3种利用方式草场水土及氮磷流失特征[J].农业工程学报,2011(9):220?225.

[11] 杨平,王威.MSP430系列超低功耗单片机及应用[J].国外电子测量技术,2008(12):48?50.

[12] 翟顺,王卫红,张衎,等.基于SIM900A的物联网短信报警系统[J].现代电子技术,2012,35(5):86?89.

[13] 汪远.压力式光纤液位传感器的研究[D].西安:西北工业大学,2005.

[14] 庞娜,程德福.基于ZigBee无线传感器网络的温室监测系统设计[J].吉林大学学报(信息科学版),2010(1):55?60.

猜你喜欢
数据采集
CS5463在植栽用电子镇流器老化监控系统中的应用
大数据时代高校数据管理的思考
基于广播模式的数据实时采集与处理系统
通用Web表单数据采集系统的设计与实现
基于开源系统的综合业务数据采集系统的开发研究