Instructions
UM-0085-B09 DT80 Range User Manual Page 95
RG
Store Files
When a job is first entered, a directory (folder) is created on the internal file system: B:\JOBS\jobname. This folder
contains files which record the job's program text and other details about the job.
For each of the job's schedules that contain loggable channels (that is, channels which do not specify the NL or W
options), a data storage sub-folder for that schedule is then created:
B:\JOBS\jobname\sched.
Finally, a store file is created in the schedules data storage folder. Note the following important points:
• A store file is a pre-allocated, fixed size file. The size of the file (as returned by the DIR command, for example)
does not change are data is stored.
• A store file contains two fixed size sections – one for data (measured channel values), one for alarms (text
strings which are logged when a particular condition is true). The sizes of these sections is configurable on a
per-schedule basis.
• A store file is a binary file. The data contained in it are not directly human-readable. See Retrieving Logged
Data (P98).
• A store file has a name of the form
DATA_sched.DBD.
For example, the job:
BEGIN"BUMPY"
RA2M 2V 3V
RB1S 2DS
RK20S 1V(W)
LOGONA LOGONK
END
would create the following store files:
B:\JOBS\BUMPY\A\DATA_A.DBD
B:\JOBS\BUMPY\B\DATA_B.DBD
Note that no file is created for schedule K because all of its channels are specified as "working", or "non-loggable"
channels. Note also that a file is created for schedule B, even though it initially has logging disabled. This ensures that
storage will be available if logging is enabled (using the
LOGONB command) at some later time.
In the above example, the store files would all have the same, default size (approx. 1Mbyte).
How Much Data Can I Store?
Each time a schedule executes (assuming logging is enabled for the schedule), it writes one data record to its store file.
A data record consists of the values of all channels defined in the schedule, other than those for which logging has been
disabled (using the
NL or W channel options).
As a rule of thumb, one data record uses 10 + (10 x numberOfLoggedChannels) bytes, assuming "normal" channel
types (time/date channels and $ strings require more space)
So for the schedule:
RA1S 1V 2CV(NL) 3TK
each data record will use 30 bytes, so the default 1Mbyte allocation for data is enough for 1,048,576 / 30 = 34,952 data
records. The store file will therefore contain the most recent 9 hours or so of readings, assuming a 1 second scan rate.
How Many Alarms Can I Store?
Normally, one alarm record is logged each time a numbered alarm is triggered, i.e. its state goes from false to true.
However, as discussed in Logging Alarms (P92), the true-to-false transition may optionally also be logged, and
numbered IF and DO alarm commands may log a record each time their schedule executes while their condition is true.
As a rule of thumb, one alarm record uses 12 + alarmWidth bytes, where alarmWidth is set using the
ALARMS:Wn
schedule option; see Schedule Options (P49). So assuming the default setting of
60 is used, each alarm record will use
72 bytes. The default 100kbyte allocation will therefore store 102,400 / 72 = 1,422 alarm records.
How Fast Can I Log Data?
The time taken to log one data record for a schedule is essentially the sum of:
• measurement time – the time taken to acquire data for all channels in the schedule. For digital channels and
channel variables (CVs) this is close to negligible; for analog measurements it can be significant (normally at
least 30ms per measurement); for serial channels it can be very significant (possibly many seconds for SDI-12,
for example)
• processing time – the time taken to perform any linearisation or other data manipulation calculations that may
be required
• communications time – the time taken to format and return real time data values over a communications link