B.1.2 cr800/cr1000/cr3000/cr5000/cr9000 memory for – Campbell Scientific PC400 Datalogger Support Software User Manual

Page 226

Advertising
background image

Appendix B. Table-Based Dataloggers

Event driven tables should have a fixed size rather than allowing
them to be allocated automatically. Event driven tables in Edlog
TD dataloggers that are automatically allocated are assumed to
have one record stored per execution interval in calculating the
length. Since the datalogger tries to make the tables fill up at the
same time, with programs using short execution intervals these
event driven tables may take up most of the memory leaving
very little for the other, longer interval, automatically allocated
data tables.

NOTE

B.1.2 CR800/CR1000/CR3000/CR5000/CR9000 Memory for

Programs and Data Storage

The datalogger memory for the CR800, CR1000, CR3000, CR5000, and
CR9000 is divided between Random Access Memory (RAM) and Electrically
Erasable Programmable Read Only Memory (EEPROM). The EEPROM, or
flash memory, is used to store the operating system and the user programs that
have been saved in the datalogger. When the datalogger powers up, the
program marked as “Run on Power-up” is transferred to RAM and executes
from there. Additional storage is available using PCMCIA cards.

When a datalogger program is sent to the datalogger, it is divided into two
tasks that run simultaneously. All of the program instructions that deal with
measuring sensors, controlling outputs, or are time sensitive, are placed in the
measurement task. The instructions that deal with data processing, including
calculations, data storage, averaging, minimum and maximum tracking, and
data I/O operations, are placed in the processing task.

The measurement task is executed at the precise specified scan rate and stores
the raw data into a memory buffer. As soon as the measurement task has
completed filling the buffer for the current scan, the processing task starts the
data processing on the buffered data. There are at least two memory buffers,
allowing the measurement task to fill one buffer while the processing task is
working with the data in the other.

The data processing task stores data as records in final storage data tables.
PC400 can collect the records from these data tables. The datalogger program
can also make some or all of the variables used for measurement storage or
calculations available to PC400. These variables are found in the Public table,
which is similar to the Input Location table in Edlog dataloggers.

Final storage tables are made up of records and fields. Each row in a table
represents a record and each column represents a field. The number of fields in
a record is determined by the number and configuration of output processing
instructions that are included as part of the Data Table definition.

The number of records to be kept in a table before the oldest data is overwritten
can be limited by the user, or left for the datalogger to determine automatically.
The datalogger tries to set the sizes of automatically allocated tables such that
all of the tables will fill up at about the same time. Once the sizes of the tables
are determined, the datalogger allocates the available memory to these tables.

B-2

Advertising