|
|
|
|
The core of PICS contains two distinct but closely related databases: static and real time. The static database contains all of the information about each data point that does not change (not with any regularity, at least). The real time database contains information about each data point that is produced (or at least checked) at some regular frequency, typically very often. Because of the transient nature of real time data, that database is maintained in memory on all active PICS nodes, but is not stored on disk (except possibly by data archivers, but that's another story...).
On the other hand, the static data changes rarely, if at all, and also contains many storage-space intensive things like descriptions, names, and labels. So the static data is stored in a set of files called tables and indexes. Each table has one or more indexes. Each index represents one method of sorting the data within a table and contains a list of the locations of each entry in the table, based on the index's sort key. Indexes are used to speed up searches for the most commonly used key fields.
Most of the tables are related to each other by the point id (PID) field. The PID is a number between 1 and 32767 (inclusive) or 0x0001 and 0x7FFF in hexadecimal. PID's with the most significant bit (0x8000) set have special meanings to PICS software. Zero is reserved because it is a common value to receive when something isn't working correctly and we use zero to help detect those conditions.
| FileName | English Name | Prefix for structure members | Content Description |
|---|---|---|---|
| aAlarms | Analog Alarms | aa_ | Sets of analog alarm entries. Each entry contains engineering units, validity, and rate of change alarm limits, along with their deadbands, alarm message destinations, and other related info. There is also a plant mode mask to determine when to use this entry. |
| AlarmMst | Alarm Master | am_ | The Master Alarm table contains an entry for each defined set of alarms limits. Each entry includes the number of alarm entries for the set, how many points use this set, and whether it is an analog or digital alarm set. |
| audit | Audit Log | al_ | Used to track run time changes to the database. Each entry includes date/time of change, user name and associated data, information identifying the tables and entries changed, the tracking transaction number, and the location in the detailed transaction file of this transaction. Note, that since the database may be exported, edited and imported, this file may be reduced to contain only the most recent changes. |
| CalcMst | Calculation Master | calm_ | The Master Calculation table contains an entry for each defined calculation set. Each entry includes the number of steps in the set, how many points use this set, a text description of the set and of the points used in the calculation. Currently this table is not used. |
| Calcs | Calculation Steps | cal_ | Sets of calculation steps are stored in this table. An entry exists for each calculation set times the number of steps in that set. Each entry identifies which step in the calculation it is, an encoded definition of the step and a description of the step. Currently this table is not used. |
| CCMst | Conversion Constant Master | ccm_ | The Master Conversion Constant table contains an entry for each defined set of conversion constants. Each entry includes the number of conversion constants for the set, how many points use this set, and a text description of the set. |
| CnvConst | Conversion Constant Sets | cc_ | Sets of conversion constants are stored in this table. An entry exists for each conversion set times the number of constants in the set. Each entry identifies which conversion constant it is, its value, and a description of the constant. |
| CompPnt | Computed Points | cp_ | Sets of point IDs are stored in this table. An entry exists for each computed point times the number of source points it uses. Each entry includes the source point's ID and a sequence number. |
| convtt | Conversion Type Text | ctt_ | Text information describing conversion types (not used by PICS run-time software). This is included for use in customer documentation and, perhaps, future web display pages. |
| convtype | Conversion Types | ct_ | The Conversion Types table contains an entry for each computed point conversion type. Each entry includes how much auxillary memory is required for the conversion and its location by DLL and function name. |
| CPMst | Computed Point Master | cpm_ | The Master Computed Point table contains an entry for each computed point in the system. Each entry includes the number of source points used to compute the computed point's value and status. |
| curves | Standard Curves | crv_ | The Standard Curves table contains information defining a fixed curve by a set of coordinant pairs and some display information such as color and width. |
| custdata | Customer Data | cd_ | The Customer Data table contains an entry for each point. Each entry contains information important to the customer but not PICS run-time software. The fields include, equipment serial numbers, maintenance history, drawing document names, termination and cable infromation, etc. |
| dAlarm | Digital Alarms | da_ | Sets of digital alarm entries. Each entry contains engineering units alarm/normal states, alarm message destinations, and other related info. There is also a plant mode mask to determine when to use this entry. |
| dispsets | Display Sets | ds_ | display sets (might be removed soon) TBD |
| message | Messages | mt_ | messages TBD |
| PicsColr | PICS Colors | pc_ | A shared table of color settings, intended for use by display applications to provide a common coloring scheme for all PICS applications across all PICS nodes. This table may be extended to include other colors as needed by display applications. Both the application and the database should include descriptions of how each additional color will be used. |
| Point | Point Master | pnt_ | The Point Master table contains an entry for each point in the system. Each entry contains basic information for the point such as ID, name, description, input address, conversion type, units, provider, etc. |
| Realtime | Real Time | rt_ | The Real Time table contains an entry for each point in the system. Each entry contains some of the more volatile tuning parameters such as significant change threshold, spike threshold, refresh rate, operator set state information, etc. |
| TargetP | Target Points | tp_ | Sets of point IDs are stored in this table. An entry exists for each target point master times the number of target points it uses. Each entry includes the target point's ID and a sequence number. |
| TPMst | Target Point Master | tpm_ | The Target Point Master table contains an entry for each computed point which performs EU conversions for multiple output points during its computation. Each entry contains the number of target points. |
| Versions | Table Versions | tv_ | The Table Versions table contains an entry for each tables in the static database. The entry contains the tables number, name, description, and last update time and version. This is used by some applications to determine when they may need to update locally cached data. |

|
|
|
|