How can the amount of time before the memory of a datalogger is filled be calculated?

It is important to first understand what it means to fill the memory of a datalogger. A datalogger does not become full and then stop storing new data. Rather, by default, the datalogger's final-data memory (that is, memory for stored data) is organized as ring memory. With ring memory, the new data is stored, which then overwrites the oldest data. Thus, it may be helpful to think of filling the memory of a datalogger as determining the point in time when any new stored data will overwrite any old data. 

The time to fill the datalogger memory depends on the following:

  • The number of values being written to the data table each time a record is written
  • The data types of those values
  • The conditions that determine whether new data is added to a data table, that is, how frequently data is written to the table
  • The amount of memory available in the datalogger

For newer dataloggers, such as the CR6, the easiest way to determine the time limit is to load the program and let the datalogger make the calculation. This information can be found in the program details. (For help with this, see the "Details, Details, Details!" article.) As another option, this information may be viewed in the DataTableInfo table where each data table in the program is assigned a field called DataFillDays, or in the Table Fill Times tab of Station Status in LoggerNet's Connect screen. The time limit may also be viewed in the main screen of PC400 and PC200W. These options work well for data that is written to the data table based only on time.

For data tables that store data based on some condition other than time, the datalogger is not able to estimate how often the condition will occur. The datalogger assumes the worst case scenario, which is that data will be written to conditional tables every scan. The result is that the DataFillDays field may show a conditional table filling in minutes or hours, when in reality the condition that triggers data storage is rare and the table will never be filled. This is why it is important to define the table size for conditional data tables to a specific number of records rather than allowing the datalogger to auto-allocate table size. Auto-allocation should only be used for data tables that store data based only on time.

For the older array-based dataloggers, the time to fill the memory is determined by multiplying the number of values by the number of bytes needed to store them. Most values were stored as either two bytes or four bytes. This result is multiplied by the number of scans per minute to get the number of bytes per minute. To get the time to fill, divide the amount of memory in the storage area by the number of bytes per minute.

For more information, see the Data Table Memory Allocation Tutorial.

Esto fue útil

Inicio FAQs