数据采集器用户经常想知道内存何时会存满?当内存已满时,他们的数据会发生什么?以及应该对此如何处理?毕竟,数据大小特定于数据采集器的执行程序,并且不可重现。因此大家不希望在将数据保存到计算机之前,就发生内存存满并开始覆盖之前的数据。在这篇简短的文章中,我将概述您需要了解的有数据采集器内存如何工作的信息。
一般CSI的数据采集器不会存满内存后就停止存储新数据。相反,默认情况下,数据采集器的数据存储单元(即存储数据的存储部分)被设置为循环存储。每个数据表都有自己的循环存储方式,当存储单元已满时,旧的数据将被新数据覆盖。因此,您可以将填充数据采集器的内存视为确定您存储新数据并将开始覆盖旧数据的时间节点。
注意:在数据采集器程序中使用 FillStop 指令,可以设置表填满后停止继续存储。
数据采集器内存填满需要的时间取决于以下因素:
(1)分配给表的记录数
(2)每次写入记录时写入数据表的值的多少
(3)这些写入值的数据类型
(4)确定新数据存入数据表的条件(如数据存储表的间隔)
(5)数据记录仪中可用的内存量
如果使用较新的数据记录器,例如CR6,则可以通过加载数据采集器执行程序并让数据采集器进行计算,来确定存储时间上限。
从新的OS版本开始,还可以在“DataTableInfo” 表中找到有用的信息,其中程序中的每个数据表都分配有一个名为“DataFillDays”的字段。或者,单击数据采集器支持软件(LoggerNet、PC400 或 PC200W)中的“数据采集器状态”按钮,然后查看“表填充时间”选项卡。
注: 无法计算 CR200(X) 系列数据采集器的表填充统计信息。
对于基于时间以外的某些条件存储数据的数据表,数据采集器无法估计该条件发生的频率。数据记录器假设坏的情况是,每次扫描都会将数据写入存储表。结果是,“DataFillDays”字段可能会显示一个条件表,该表在几分钟或几小时内填写,但现实情况可能是触发数据存储的条件很少见,并且该表永远不会被填充。
提示:可以通过设置特定数量的记录数来定义条件数据表的表大小,而不是数据采集器自动分配大小。仅基于时间存储数据的数据表保留自动分配的使用,才可以确定存储时间的长短。
如果您有较旧的基于阵列的数据记录器,则可以通过将 62000 除以每天存储的值数来估计填充内存的时间。例如,数组 106,239,1400,22.47,22.81,73,10.61 包含 7 个数据点。如果每小时存储一次,则每天将存储 168 个数据点(24 小时 * 7 个数据点),因此,62000 /168≈ 369 天。当然数组也可能以多个时间间隔进行存储。
不要等到新数据即将覆盖旧的数据时才收集数据。尽可能多的进行数据收集,以免丢失数据。现场仪表往往受制于无法控制的自然条件,收集和查看数据是确保系统按设计正常运行的较佳方式。
阅读本文后,希望您了解数据采集器内存填满方面的数据会发生什么情况。数据对科研来说是无价的,在数据采集器内存发生数据覆盖之前将其从数据采集器复制到您的计算机非常重要。
原文:https://www.campbellsci.com/blog/datalogger-memory-getting-full
京公网安备 11010802025807号