1、基于低复杂度最大空闲矩形的非线性传感器故障诊断方法 刘运城 孙兴春 陈安 东莞理工学院城市学院计算机与信息科学系 广东工业大学实验教学部 摘 要: 针对现存的很多传感器故障诊断方法假设前提多以及复杂度高的问题, 提出一种分布式诊断方法来识别无线传感器网络 (WSN) 中的非线性故障。首先, 对局部传感器的输出值进行分析, 得到一系列特征值;然后, 在交叉误差函数的基础上, 将传感器非线性故障诊断等效为最大空闲矩形 (LER) 问题, 并使用提出的低复杂度最大空闲矩形算法予以解决;最后, 通过定义一个阈值来诊断有故障的传感器, 且不需要使用参考传感器就可以检测一般非线性故障。仿真实验使用了双音谐
2、波信号激励和白噪声信号激励, 比较了双线性和指数非线性两种情况下的性能。相比集中式故障诊断方法, 提出的算法节省了大量数据传输功率, 且获得了非线性模型正常区域边界的准确值;相比最优 LER 算法, 提出的低复杂度 LER 算法检测性能与之相似, 但复杂度更低。关键词: 传感器故障诊断; 分布式; 非线性; 最大空闲矩形; 交叉误差函数; 复杂度; 作者简介:刘运城 (1968-) , 男, 湖北荆门人, 讲师, 硕士, 主要研究方向为计算机网络等 () ;作者简介:孙兴春 (1980-) , 男, 湖北钟祥人, 讲师, 硕士, 主要研究方向为计算机网络、信息安全等;作者简介:陈安 (1979
3、-) , 男, 浙江东阳人, 讲师, 硕士, 主要研究方向为WSN、智能控制理论与应用等.收稿日期:2016-11-16基金:国家自然科学基金资助项目 (51305084) Method of nonlinear sensor fault diagnosis based on low computational largest empty rectangleLiu Yuncheng Sun Xingchun Chen An Dept.of Computer Dept.of Experiment Teaching, Guangdong University of Technology; Abst
4、ract: As the multiple assumptions of many existing sensor fault diagnosis methods and the high computation, this paper proposed a distributed diagnosis method to identify nonlinear faults in wireless sensor networks ( WSN) . Firstly, it analyzed the output value of the local sensors so as to obtain
5、a series of eigenvalues. Then, based on the cross error function, the nonlinear fault diagnosis of the sensor was equivalent to the problem of largest empty rectangle ( LER) . And it adapted low computational largest empty rectangle algorithm to solute the problem. Finally, this paper defined a thre
6、shold to diagnose the sensor fault, and it colud detect general nonlinear fault without using reference sensors. This paper used the two-tone signal excitation and white noise excitation in the simulation experiments, and considered bilinear and exponential non-linearity. Compared with the centraliz
7、ed fault diagnosis methods, the proposed method not only saves a large amount of data transmission power, but also obtains the accurate value of the normal region boundary of the nonlinear model. Compared with the optimal LER algorithm, the performance of the proposed low computational LER is simila
8、r, but the complexity is lower.Keyword: sensor fault diagnosis; distributed; nonlinear; largest empty rectangle (LER) ; cross error function; complexity; Received: 2016-11-160 引言无线传感器网络 (wireless sensor networks, WSN) 1广泛运用在许多工程领域和应用, 如环境监测、战场巡视和动物跟踪等2。由于系统具有移动时不受限制的优点, 对于可靠的系统监测和后续数据的决策, 精确的传感器测量很有
9、必要。然而, 为了降低无线传感器的成本和大小, 在设计中通常使用商用的现成组件, 这些组件在恶劣的野外环境中很脆弱。鉴于 WSN 通常部署在苛刻的操作环境中, 无线传感器有可能比有线传感器更容易发生故障3。因此, 亟需开发一种允许无线传感器进行自我诊断错误的自动化故障诊断方法。一般传感器错误的检测方法可以分为基于模型和较少模型的方法4。基于模型的传感器错误检测方法依赖于对底层系统模型形式的认知, 可提供冗余分析5。例如, 文献6, 7都提出了集中式传感器故障诊断方法, 使用一系列卡尔曼滤波器来表示系统, 但两种方法是有差异的, 文献6的方法测量传感器观测的差异, 而文献7的方法测量状态空间模型
10、的状态向量差异。这两种方法都假设系统是线性的, 在状态空间形式下确定系统模型。文献8, 9提出了一种基于主成分分析 (principle component analysis, PCA) 的模型故障检测方法, 假定传感器是高度相关的, 并且与原来的观察空间相比, 它们的输出可以在一个更紧凑的三维空间 (其被认为是主要成分) 中捕获。当传感器的观测动态不集中在主成分中时, 传感器视为可能有故障。文献8进一步分析不同类型的故障是如何影响 PCA 残差的, 从而提供了一个工具来确定在故障传感器中发生的故障类型。所有这些基于模型的方法都是集中式的方法, 其中一个基站具有对系统模型进行了解并收集来自传感
11、器观测和进行故障诊断的作用。很多分布式故障诊断方法假设:相互接近的传感器将观察到类似的信号。因为这个假设使诊断算法通常容易以分布式方式进行配置。例如, 文献11假定相互接近传感器应该有相似的输出, 因此, 该方法让每个传感器的输出与其邻接的传感器的平均输出值进行比较, 如果一个传感器的输出比其相邻传感器的输出大得多, 那么该传感器视为故障。文献12提出无线传感器网络中的事件检测, 其中, 每个传感器报告一个事件的发生。假设传感器故障是随机的, 事件状态的最终决定是由一组传感器的决策作出, 那些经常有不同结果的传感器就会被认为是错误的。文献12还确定了一组传感器的最佳数量, 以及认为一个传感器有
12、故障的最佳阈值。虽然这些模型的诊断方法是分布式的, 且能源需求较低, 但是它们经常通过推导作出假设, 并强行加以限制。本文提出了一种基于模型的分布式传感器故障检测方法, 即低复杂度最大空闲矩形 (largest empty rectangle, LER) 。提出的方法介于基于模型的集中式方法和较少模型分布式方法之间, 针对特定的错误类型进行搜索。本文提出的故障诊断算法侧重于识别传感器传递函数中的非线性故障。非线性故障是一个乘积误差, 即误差是真实信号的一个函数。1 传感器观测和非线性故障模型文献13表明, 若被监测的系统是线性的, 则在 Z 域中的状态空间模型表示的线性系统为其中:X (z)
13、R 是系统的状态向量, U (z) R 是输入向量, Y (z) R 是传感器的输出向量;此外, AR 是状态转移矩阵, 它定义了系统状态的转变;BR是输入矩阵, 它表示输入和系统状态之间的关系;CR 是输出矩阵;DR 是馈通矩阵。把式 (1) 代入式 (2) 中, 消去 X (z) , 传感器 p 和 q 的输出 Yp (z) 和 Yq (z) 之间的传递函数 Hpq (z) 可表示为其中:系数 ij和 ij (i=1, , l;j=1, , n) 由状态空间模型矩阵 (即A、B、C 和 D) 来确定。因此, 任何两个传感器之间的关系取决于它们的历史观测值和输入到系统的激励。如果输入激励可以
14、汇总为单个源即 l=1, 那么这种关系独立于系统输入。一般将系统输入建模为一个单一源是很常见的, 如果输入已知或可测量, 该讨论对于多输入系统仍然有效。而一对传感器 yp和 yq之间的关系 (传输函数) , 可以根据传感器历史输出训练的时间序列模型获得, 如外源性输入的时间序列自回归 (auto-regressive system with-exogenous-input, ARX) 模型14:其中:v 1和 v2是模型的阶数。ARX 模型是一种低复杂度的模型。2 提出的非线性故障诊断方法假设一个具有 N 个传感器的无线传感器网络, 其中每个传感器都有可能遭受非线性故障, 但网络并不知道哪个传
15、感器是正常的。如图 1 所示, 无线传感器网络被划分为一对一传感器, 如 y2-y4、y 1-y3、y 5-y6和 y6-y7。由于任何一对传感器之间的关系可以用一个传感器输出和式 (5) 训练的 ARX 模型得到, 模型参数可以通过快速迭代算法15从传感器工作正常的历史数据中得到。2.1 交叉误差函数使用以参数 v 存储的 ARX 模型, 在时刻 k 时, 通过测量输出 预测S1的输出 。其中:a i= i/ 0, bi= i/ 0, i=1, , v;j=1, , v。由于 S1和 S2可能是有故障的。令 e1 (k) 为在时刻 k 时 S1的观测误差, S 1的观测 等于 。定义交叉误差
16、 e12 (k) 为所观察到的输出和估计输出之间的差异, 则有交叉误差函数表示一对传感器之间的差异, 一般可以通过监控交叉误差函数是否超过一个阈值来检测到一般故障。而交叉误差函数将两个传感器的错误信息减少到一个标量值。其结果是, 当缺乏额外信息 (如无故障参考的传感器) 时, 难以确定哪些传感器是错误的, 以及传感器属于什么类型的故障。2.2 特征点计算在引入非线性识别方法之前, 假定该传感器的输出只是偶尔进入非线性故障模型的异常区域, 即传感器的正常区域覆盖所述信号范围的显著部分。如果选择适当的传感器来监控任务, 那么这种假设对大多数系统而言是有效的。在式 (8) 中, 交叉误差函数使用时间
17、窗从时间 0 到时间-v 的 S1和 S2的过去输出。无论何时, ARX 的滞后窗口内的任何传感器发生测量误差 (即在异常范围内进入) , 交叉误差函数都不为零。其中, 两个传感器之间的误差可能会互相抵消, 但这种发生概率非常小。因此, 当交叉误差函数为零时, 可以肯定在该时间窗口内没有故障;然而, 当交叉误差函数非零时, 不确定错误发生在哪个传感器、发生在何时, 除非是交叉误差函数输出第一次偏离零 (或接近零) 。这是因为交叉误差函数输出非零只可能是因为在时刻 k 时, 一个或两个传感器的错误初始化引起的。在交叉误差函数得到其第一个非零值时, 有故障的传感器的测量值应该落在异常区域, 因此如
18、果传感器是由非线性故障引起错误的, 那么其幅值应该大于 r1或 r2。但是, 目前尚不清楚哪个或哪些传感器是有故障的, 因为非线性模型的正常区域边界 (r 1, r2) 仍然未知。因此, 特征点 P 定义为 , 其中: 分别是当交叉误差函数第一次偏离零点和超过预先定义的阈值时, 传感器 的测量值。因此, 可用特征点的总数等于交叉误差函数超过阈值的次数。通过历史数据生成一组特征点之后, 可以将其绘制在二维平面内, x 轴对应, y 轴对应 , 当错误由非线性故障引起时, 特征点如图 2 所示。其中, 图 2 (a) 为 S1故障 S2正常; (b) 为 S1正常 S2故障; (c) 为 S1和
19、S2都故障;虚线表示非线性模型的正常区域的边界。如果 S1具有非线性故障, 而 S2是正常的, 收集的特征点集 x 坐标落在异常区, 而特征点的 y 坐标可能是任何值。因此, 特征点只会落在图 2 (a) 中的白色显示区域。当 S1正常, 而 S2具有非线性故障时, 图 2 (b) 给出了特征点应该落入的区域。当两个传感器都具有非线性故障时, 所收集的数据应落在图 2 (c) 的白色区域。若传感器对可分为图 2 中的三个不同模式, 那么即使没有参考传感器, 有故障的传感器 (多个) 也可以进行分离。此外, 因为损坏的测量应该具有正常区域以外的值, 所以正常区域的边界也可以从收集的数据中检测得到
20、。这种分类问题可建模为具有查询点的最大空闲矩形问题 (LER) 16。在二维空间中给定一组点和边界, 最大空闲矩形问题是要寻找不包含任何给定点、但包含查询点的最大矩形;此外, 该矩形的边界还应该设定为比给定点的最大振幅稍大。非线性故障隔离和识别问题等同于识别包含原点的最大空闲矩形。最大空闲矩形的侧边与 x 轴 (y 轴) 的相交点表示传感器 1 (传感器 2) 的非线性故障参数 (即 r1和 r2) , 当侧边与边界平行时, 即在给定的所收集数据区域内未检测到故障;否则, 侧边的坐标表示非线性模型的正常区域范围。2.3 最大空闲矩形问题LER 的快速算法16需要 O (N (N) log (N
21、) ) 次操作, 其中 N 表示给定点的数量, (N) 是缓慢增加的逆阿克曼函数。当收集的数据数量很大时, 对无线传感器的低功耗要求很苛刻。因此, 提出一个用于发现包含原点的近似最大空闲矩形的有效算法。该算法的主要思想是首先找到一个不包含任何给定点的小矩形, 再由两侧分别扩大该矩形。提出的算法如算法 1 所示, 需要 O (N) 次运算。在该算法中, 是收集到的特征点集 (x max、x min、y max和 ymin) , 即边界的定义, v x (vy) 表示关键点 v 的 x 坐标 (y 坐标) 。可以验证, 矩形计算子程序 1 和 2 不包含任何特征点但包含原点, 矩形的每条边或涉及至
22、少一个数据点或配有一个边界 (x max或 (和) y max) 。子程序 1 和 2 之间的区别是矩形首先扩展的方向 (x 方向或 y 方向) 。较大的矩形用于故障隔离和识别。假设故障传感器的正常区域覆盖了一个动态范围显著的信号, 其结果是, 发现最大空闲矩形的面积应该与两个传感器的最大信号幅度的乘积基本相等。如果测量的损坏不是由于非线性故障引起的, 那么误差可发生于任何信号振幅下, 如果收集到的数据点的数目足够大, 则该算法发现的最大的空闲矩形将有一个小的区域。算法 1 近似最大空闲矩形算法图 3 说明了最大空闲矩形算法如何识别非线性故障。图中所示的数据是从模拟实验中提取的。其中, 圆形标
23、记代表了特征点的集合 P;外围的长方形实心线代表最大空闲矩形问题的边界;虚线矩形代表通过算法 1 最终识别的最大空闲矩形。因为矩形的顶侧和底侧与外部矩形边界并列, 所以在 S2中没有故障。然而 S1是有非线性故障的, 并且故障的正常区域是由矩形的左、右两侧的 x 坐标来定义获得的。3 仿真分析本章对所提出算法的性能进行研究, 包括对非线性故障传感器的检测和隔离能力的验证。在不同的系统激励下, 根据不同的非线性模型对检测性能进行评估;此外, 还探讨了检测精度和收集到特征点数之间的关系。实验使用了两种类型的激励, 第一种激励是双音谐波信号, 信号的两个频率随机从均匀分布的 28 Hz 选择。类似地
24、, 每个音调的幅度也是从 1013 d B 随机均匀地选择。第二种激励是一个白噪声信号, 当在传感器对之间拟合 ARX 模型时, ARX 模型的阶设置为 v=20。3.1 检测和隔离故障第一个实验是在不同参数的双线性和指数非线性模型下进行, 评估了三个性能指标:a) 有故障的传感器正确检测到故障的百分比, 即检测率, 用 DR 表示;b) 正常的传感器错误检测为故障的百分比, 即假警报, 用 FA 表示;c) 在正确检测到的故障传感器中, 非线性模型异常区域检测的准确性。由于异常区域可以是单边或是双边, 可以分别评估每一边。例如, 如果一个异常区域出现在正侧, 并且该算法可以正确地检测到它,
25、则记录为正确的检测。该精度测量表示为异常区域的检测率, 用异常区域 DR 表示。图 4 (a) 显示了使用双线性和非线性模型时的性能。该图的 x 轴代表在异常区的坡度 (正常坡度是 45) 。可以看出, 当使用一个白噪声激励信号来激发系统时, 对于大多数坡度, 该方法获得了超过 90%的检测率和小于 4%的误报率;当使用双音谐波激励时, 检测率约为 75%左右, 误报率约为 7%。其性能上的差异是因为白噪声激励系统的传感器测量快速、频繁地进入异常区域, 因此, 该方法产生了一个更敏感的交叉误差函数, 并具有更好的诊断精度。当偏差非常接近正常条件 45时, 检测率降低。这一结果的预期是非线性误差
26、越来越小, 因此交叉误差函数更难检测了。对于白噪声激励系统, 当坡度偏离正常 10时, 检测率仍很高, 超过 85%;对于双音谐波激发系统, 此检测率大于 65%。对于检测非线性模型的异常类型, 该算法对于两种激励系统的每一个偏差度, 都能够实现 90%的精度。使用指数非线性模型重复同样的实验, 其结果如图 4 (b) 所示。类似于双线性模型, 白噪声激励系统比双音谐波激励系统实现的结果更好, 当使用谐振波激励系统时, 可得到 95%或更高的检测率。然而, 双音谐波系统具有 60%90%的检测率取决于 值。当白噪声激励时, 非线性模型函数接近正常函数 ( 6) 时, 检测率没有显著下降。然而,
27、 当由谐波信号激发系统时, 检测率随着指数的非线性增大而增大。图 4 (b) 的 x 轴表示变化的指数模型参数, 但其距离与误差幅度不相关。图 4 传感器故障检测的准确度变化 下载原图3.2 检测正常边界值除了检测和隔离故障传感器, 本文方法的另一个重要功能是能够检测正常区域的边界值。对于白噪声激励, 95%的估计一般是在实际边界值的 2%以内;对于谐波激励, 80%的估计值一般是在实际边界值的 3%以内。大多数的边界估计值是高于实际边界值的, 这是因为错误的测量幅度总是大于真正的正常区域边界值, 所以通过 LER 方法检测到的边界值总是比实际的边界值大。对于使用谐波激励的双线性模型, 超过一
28、半的估计值小于实际的边界值。这主要是因为从较低敏感度的交叉误差函数所收集到的特征点具有较低的精度。如图 5 所示, 将提出的低复杂度 LER 算法与最优 LER 算法相比较来揭示这两个方法之间的差异。实验是在白噪声激励下的双线性和非线性模型中进行的。图5 的结果表明, 所提出的低复杂度 LER 算法可以实现与最优 LER 算法类似的检测率。当非线性误差较小时, 最优的 LER 算法实现了较高的精度, 但误报率也较高。指数非线性模型也具有类似的结果。因此, 对于非线性故障检测, 所提出的低复杂度 LER 算法是足够用的。图 5 最佳 LER 算法与提出的低复杂度 LER 算法之间的检测性能比较
29、下载原图提出的算法从传感器输出提取特征点, 在交叉误差函数的基础上, 通过定义一个阈值来诊断有故障的传感器。当传感器的输出下降到一个异常区域时, 每次只有一个这样的数据点被收集。而一个或两个特征点不足以可靠地识别故障传感器和相应的故障特征。对于信号变化缓慢的系统, 可能需要很长的时间来收集大量的所需的数据点, 因此, 很有必要了解可用特征点的数目和相应的检测精度之间的关系。在两个仿真中, 双线性故障模型 设置为 20, 指数模型中, 设置为 0.1, 对双谐波激励和白噪声激励的情况都进行了评估, 如图 6 所示。与预期一样, 随着可用特征点数目的增加, 检测率和故障区域的识别率也在增加。当双线
30、性模型的可用特征点数达到 10, 指数模型的可用特征点数达到 6 时, 检测率达到饱和。结果表明该算法只使用少量的特征点就能够检测到传感器的非线性故障。3.3 噪声影响测量传感器的噪声。仿真时, 设置双线性故障模型参数 为 30, 指数模型参数 设置为 0.1, 使用不同方差的高斯白噪声叠加到了传感器测量中。如图7 所示, 在两个非线性模型中, 检测率随测量噪声方差的增加而减小。当噪声方差在传感器测量幅度的 5%以内时, 对于白噪声激励的双线性非线性模型, 故障检测率为 90%或更大;对于通用传感器, 典型的传感器噪声明显小于 5%。同样, 在相同的噪声方差水平下, 白噪声激励的指数模型系统实
31、现的检测率为 90%或更大。当噪声方差达到 5%的传感器测量幅度时, 双音谐波激励双线性模型的检测率下降到 60%。对于指数型非线性模型, 当噪声方差大于 15%的传感器测量幅度时, 相同的检测率下降到 60%以下。对于正确检测到的错误传感器的异常区域检测, 不同的噪声方差 (对于两种激励类型和两种非线性模型) , 检测率保持在 90%左右的精度, 即一旦错误传感器被正确检测到, 异常区域的检测不受测量噪声的影响。下面评估故障信号最大振幅 r 对于边界的影响。图 8 给出了与双线性和指数模型的信号幅度正常区域边界 (r) 比率成一个方程关系的检测率和误报率。其中x 轴的值定义为每次实际信号超过
32、正常区域边界时, 最大传感器输出值的平均值。如图 8 所示, 当平均比率为 10%或更高时, 故障检测的准确度随着平均比率的增加而增加。4 结束语本文提出了一种基于模型的分散式传感器故障诊断方法, 其目的是为了识别非线性故障。利用局部传感器对, 与集中式故障诊断算法相比, 节省了大量数据传输需要的功率, 并获得非线性模型正常区域边界的准确值。提出的低复杂度LER 算法与最优 LER 算法有相似的性能表现, 能够从其他类型的故障中区分出非线性故障。未来的工作包括开发一个恢复算法, 该算法可以从非线性故障损坏的信号中恢复出真正信号;另一个可能的方向是以分散式模型为基础, 开发一种识别其他故障类型算
33、法, 如均值漂移故障。参考文献1陈杨, 吴海燕, 季仲梅.基于图刚性的无线传感器网络定位新算法J.计算机应用研究, 2015, 32 (5) :1467-1470. 2张鹏.一种基于无线传感器网络的环境监测系统的设计与实现M.北京:北京大学出版社, 2009. 3Sarangi S, Bisht A, Rao V, et al.Development of a wireless sensor network for animal management:experiences with MoosenseC/Proc of IEEE International Conference on Adva
34、nced Networks and Telecommuncations Systems.2014:1237-1242. 4夏晓峰, 何常胜.LSM 结合邻居干扰抵抗模型的传感器网络节点故障检测J.湘潭大学自然科学学报, 2016, 38 (1) :101-105. 5温涛, 张冬青, 郭权, 等.无线传感器网络冗余节点休眠调度算法J.通信学报, 2014, 35 (10) :67-80. 6李业波, 李秋红, 黄向华, 等.航空发动机传感器故障与部件故障诊断技术J.北京航空航天大学学报, 2013, 39 (9) :1174-1180. 7Xue Wei, Guo Yingqing, Zhang Xiaodong.A bank of Kalman filters and a robust Kalman filter applied in fault diagnosis of aircraft engine