Average 传感器数据采集分析软件

Average 传感器数据采集分析软件,average,sensors,smoothing,moving-average,Average,Sensors,Smoothing,Moving Average,我有一个应用程序,在一个小时内从十几个传感器收集数据。它使用以下表格格式将其数据存储在MySQL数据库中: CREATE TABLE IF NOT EXISTS `datapoints` ( `PointID` int(11) NOT NULL, `System` varchar(50) NOT NULL, `Sensor` varchar(50) NOT NULL, `Value` varchar(50) NOT NULL, `Timestamp` timestamp NO

我有一个应用程序,在一个小时内从十几个传感器收集数据。它使用以下表格格式将其数据存储在MySQL数据库中:

CREATE TABLE IF NOT EXISTS `datapoints` (
  `PointID` int(11) NOT NULL,
  `System` varchar(50) NOT NULL,
  `Sensor` varchar(50) NOT NULL,
  `Value` varchar(50) NOT NULL,
  `Timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`PointID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
系统
字段用于对传感器进行分组,例如,“空气”系统具有“温度”和“湿度”传感器,“太阳能电池板”系统具有“发电量(kW)”和“今天的发电量(kWh)”。这些字段都是
varchar
,因为有几个数据类型来自传感器,而最初的数据库设计器采用了简单的方法。(我知道这种数据结构效率不高,但现在改变它已经太晚了。)

传感器包括空气温度、湿度、太阳能电池板输出、太阳能热水器温度等

我们现在有了这个数据库,它每天收集数万个数据点。到目前为止,我们使用了一个查询数据库的应用程序来构建传感器数据随时间变化的图表。然而,我们现在有很多GB的数据,最终会耗尽日志硬件上的存储空间

我正在寻找一种方法,从数据中收集统计数据,然后将其删除。我正在考虑一些类似于[谷歌分析| Piwik | Awstats]的数据。问题是我真的不知道从哪里开始。我希望能够查看最近时期的更详细数据,例如:

  • 所有数据的1天价值
  • 每小时数据的1周价值
  • 1个月的每日数据
  • 我想我想永远保持每周和每月的统计数据
但是,我不想太平滑数据。最终,我将不得不平滑数据,但我希望尽可能长时间地保持详细信息。例如,如果我的发电量有一个大的峰值,如果它平滑(降低)到每小时数据中,然后再平滑(降低)到每日数据中,然后再平滑(降低)到每周数据中,那么一周的数据将不会反映出有一个峰值,因为平均值的平均值与所有点的平均值不同


有没有软件已经做到了这一点?如果没有,什么是好的开始方式?我可以用任何语言来做,但首选.NET、PHP或C(Windows)(按顺序),因为这些语言是其他项目成员已经知道的,并且日志硬件已经设置好了。

您的数据问题是如此之大,而且可能是开放式的,我认为没有任何工具可以解决您的问题。您可能需要为您的特定问题发明自己的工具

我认为您应该看看科学和工程界使用的基于Python的工具。这包括交互式数据分析和可视化。用于处理和处理大型数据阵列。最后,考虑一下当你需要做一些严肃的数字处理的时候。p>
祝你好运。

如果我今天仍在做这个项目(以及其他此类项目),我会使用一个

TSDB专门设计用于随时间摄取大量数据点,并允许对其进行分析

我现在一直在为另一个项目使用PostgreSQL扩展,它完全可以满足我的需要