C# 检测不稳定趋势(时间序列)

C# 检测不稳定趋势(时间序列),c#,time-series,iot,C#,Time Series,Iot,我正在寻找一种在物联网环境中检测故障传感器的方法 在这种情况下,油箱液位传感器。读数总是有点波动,开始时的“跃点”是油箱重新加注,这是“正常”的。9月16日,传感器开始出现故障,并随后给出明显的随机值 作为一名程序员,理想情况下,我希望有一种简单的方法来检测问题(并且在问题开始后尽快) 我可以胡说“若两个小时平均值之间的向量方向每天改变方向超过一次,那个么它是不稳定的”。但我想还有更可靠、更稳定的算法。两个简单的选择: 基于领域知识:如果您知道油箱的最大可能输出量(例如5升/小时),任何超过

我正在寻找一种在物联网环境中检测故障传感器的方法

在这种情况下,油箱液位传感器。读数总是有点波动,开始时的“跃点”是油箱重新加注,这是“正常”的。9月16日,传感器开始出现故障,并随后给出明显的随机值

作为一名程序员,理想情况下,我希望有一种简单的方法来检测问题(并且在问题开始后尽快)

我可以胡说“若两个小时平均值之间的向量方向每天改变方向超过一次,那个么它是不稳定的”。但我想还有更可靠、更稳定的算法。

两个简单的选择:

  • 基于领域知识:如果您知道油箱的最大可能输出量(例如5升/小时),任何超过该值的输出都将发出错误信号。即,在示例中,如果

    t1-t2 > 5
    
    假设t1和t2显示每小时间隔的储罐容量。您可能需要添加与传感器精度相关的安全裕度

  • 基于以往数据:假设所有储罐的输出容量和使用的传感器质量相似,计算所有非故障传感器数据的以下值:

    max(t1-t2)  
    
    结果是要使用的错误阈值,类似于上面的值5

注:油箱加注操作可能需要额外考虑

其他方法如此处所述。你肯定能找到其他文件。 标准偏差

您正在查看测量值之间的差异有多大。标准偏差是一个简单的公式,也是众所周知的。寻找一个高值,你就知道有问题了

您还可以使用变异系数,即平均值与标准偏差的比率