The Realtime table contains an entry for each point in the system. Each entry includes data needed by a provider to perform an EU conversion on for the point it references. The fields included by no means are all that is needed, but they were thought to be the most likely to be changed online. Although this is no longer believed, the table remains instead of being incorporated into the point table.
Structure name: realtime_t. Table base file name: Realtime. Table define: TBL_REALTIME.
| Member Name |
Key |
Range |
Type |
Description |
| rt_Pid |
Unique |
1 to 32767 |
SHORT |
Link from the pnt_Pid. |
| rt_MasterRevision |
|
Any |
WORD |
Revision of the point. It is incremented whenever either this record or the corresponding point record is modified. The lower three bits of it are also in the fRevision field of the point's current PS (Point Status). |
| rt_Revision |
|
Any |
WORD |
Current revision of this record. |
| rt_TableRevision |
|
Any |
DWORD |
Table version, when this record was last updated. |
| rt_Flags |
|
bit fields |
DWORD |
Miscellaneous collection of bits to control a point. See the Point Flags table below. |
| rt_Init_Value_In_EU |
|
-3.0e38 to 3.0e38 |
FLOAT |
Initial EU Value. Unless the point is marked as operator entered, this is to be used by the data provider as the point's EU value until it scans or calculates a first value. For digital points, non-zero is ONE. |
| rt_Manual_Entry_Value |
|
-3.0e38 to 3.0e38 |
FLOAT |
Manual entry (operator entered) EU Value. Used as the point's EU value if marked as operator entered. For digital points, non-zero is ONE. |
| rt_Raw_Sig_Change |
|
0 to 3.0e38 |
FLOAT |
Raw Significant Change threshold. Used only by analog input point types. If the point's raw value changes by more then this value since its EU value was provided, it is considered a significant change. If a point's raw value didn't change by this amount and it has the short test bit set in its flags, EU conversion is not performed this cycle. |
| rt_Significant_Change_Value |
|
0 to 3.0e38 |
FLOAT |
EU Significant change threshold. Used only by analog input point types. If the point's EU value changes by more then this value since its EU value was provided, it is considered a significant change. |
| rt_SpikeThreshold |
|
0 to 3.0e38 |
FLOAT |
Used to elimiate single cycle spikes if its value is non-zero. Used only by analog input point types. If on the previous EU conversion, this point's raw value was not considered a spike, and the current raw value is different from the last sent raw value by more then this value, no EU conversion will be performed this cycle for this point. A zero value means there is no spike threshold. |
| rt_Refresh_Interval |
|
0 to 14,400 (4 hrs.) |
WORD |
Value refresh rate (in
seconds). Data providers use this
value as the MAXIMUM amount of time between consecutive reports of a point's
value. This ensures that (a) the values remain fresh and (b) that points changing too slowly to cross their significant change threshold are still updated with new values. Note that the provider will provide a value for the point some short time after the refresh interval is exceeded. |
| rt_Alarm_Trans_Limit |
|
0 to 32767 |
WORD |
Used in an alarm minimization algorithm as the number of alarm transitions required before putting the point in an alarm hold state. When in alarm hold, the point will only report transitions to worse alarm states. A zero value disables alarm minimization. (currently not implemented in PICS) |
| rt_Alarm_Steady_State_Time |
|
0 to 14,400 (4 hrs.) |
WORD |
Used in an alarm minimization algorithm for two purposes. When the point is not in alarm hold, it is the amount of time which must pass without an alarm transition before resetting the count of alarm transitions. When the point is in alarm hold, it is the amount of time which must pass without an alarm transition before returning the point from alarm hold. The units are seconds. A zero value disables alarm minimization. (currently not implemented in PICS) |
| rt_LowClampLimit |
|
-3.0e38 to 3.0e38 |
FLOAT |
Used as a low limit value for testing an analog input's raw values for clamping. It is tested after raw value filtering, but before validity limit testing. If the point's raw value is below this value, the raw value is set to rt_LowClampValue. A zero value disables low clamping. (currently not implemented) |
| rt_LowClampValue |
|
-3.0e38 to 3.0e38 |
FLOAT |
If point is to be clamped low, this is the raw value to use. (currently not implemented) |
| rt_HighClampLimit |
|
-3.0e38 to 3.0e38 |
FLOAT |
Used as a high limit value for testing an analog input's raw values for clamping. It is tested after raw value filtering, but before validity limit testing. If the point's raw value is above this value, the raw value is set to rt_HighClampValue. A zero value disables high clamping. (currently not implemented) |
| rt_HighClampValue |
|
-3.0e38 to 3.0e38 |
FLOAT |
If point is to be clamped high, this is the raw value to use. (currently not implemented) |
The Realtime table contains a flags entry for each point in the system. Some of the flags are used by all point types. Some are point type specific. They are defined in the C header file "PICS32.h" in the typedef POINT_FLAGS. Fields that are larger than a single bit have their size following a colon after their name (e.g. fType:4 is a 4 bit field). Following the table from top-to-bottom would be the same as going through the POINT_FLAGS from right-to-left. The alternating colors for the table rows signify the nibble (or one hexadecimal digit) grouping of the fields (some description cells are not colored because they span multiple digit groups)
| Name:bits |
Point Type |
Set |
Reset |
Description |
| fType:4 |
any |
AI, DI, PT, SS, etc.
|
These fields are filled in by the SdbCache builder using information (and existence) from the Point database. |
| bExists |
any |
Point exists in Cache |
Point does not exist in Cache |
| fRevision:3 |
any |
Low three bits of current version |
| bInTest |
AI, DI |
In test |
Normal |
A technician should set the point in test before calibrating or testing it. Software should not use this value in critical calculations since it is not coming from the field. A point in test always produces a new value instead of requiring a significant change. |
| bOffScan |
AI, DI, AC, DC |
Off scan |
On scan |
No EU conversion will be performed on off scan points. Off scan points may still be scanned. |
| bOpEnter |
any |
Manual Entry |
Normal EU value. |
Determines whether to use the manually entered EU value or the calculated EU value for the point's current EU value. |
| bShortTest |
AI |
Short-circuit enabled |
Disabled |
When set, the point's raw value must change by at least rt_Raw_Sig_Change since last being reported, for a new EU value is not computed. This increases the throughput of EU conversions on a system which only has slowly changing EU values. |
| bInvertDigital |
DI, DO |
Invert the raw value to get the EU value |
Raw value and EU value are the same. |
This is the only conversion allowed on digital input or output points. |
| bEventTrigger |
any |
Event Trigger Point |
Not an event trigger. |
The archiver test an event trigger point against some criteria. If it is met, the time is remembered as the beginning of an event, the event ends when the point no longer meets the criteria. |
| bUTR |
AI |
UTR point |
Not a UTR |
This point is a universal temerature reference point (cold junction reference) for thermocouples. |
| bUTRCent |
AI |
Centigrade |
Fahrenheit |
Used when converting the UTR temperature to a voltage for various thermocouple types. |
| bAvgType |
AI, AO, AC |
n/a |
n/a |
Type of averaging to be used by archivers for this point. 0 means current or last value, 1 means the averaged value, 2 means the maximum value, and 3 means the minimum value. |
| bSysLog |
any |
log point |
do not log point |
Determines if the provider should log detailed information about this point's processing. Typically, the provider will also need to be configured to performed detailed point logging as well, for example the 8800s require the 'Check PID' feature bit to be set before this flag will be checked. |
| bDeleted |
n/a |
point is deleted |
point is not deleted |
This is planned for use to allow deleted points to remain in the database, possibly for later reuse as another point. |
| bLogRange |
AI, AO, AC |
Logarithmic plot scale |
Normal plot scale |
Sets the default scale type for plotting this point. |
| bUseInitEU |
AC, DC |
Usable |
Not usable |
Determines if a point can be computed using initial EU values from its source points or if the point requires all source points to have been provided at least once before providing this point. |
| bInitEuUsable |
any |
Usable |
Not usable |
Determines if this point can be provided without being scanned first. |
| bValAlarmInhib |
AI, AO, AC |
Inhibit Validity Alarms |
Enable Validity Alarms |
These three bits control the various alarming routines. PICS uses all three of these for analog points. Digitals use the bEuAlarmInhibit bit only and other point types aren't generally alarmed. |
| bEuAlarmInhib |
Any |
Inhibit EU Alarms |
Enable EU Alarms |
| bRocAlarmInhib |
AI, AO, AC |
Inhibit Rate of Change Alarms |
Enable Rate of Change Alarms |
| bSsEnable |
SS |
Enable Scanning |
Disable Scanning |
When this is set, the associated subsystem (either a PICS subsystem, or an 8800) is allowed to scan (and/or produce by calculating) data. Otherwise, scanning is disabled. |
| bUTR_TC:2 |
AI |
0=normal, 1=UTR1, 2=UTR2, 3=TC |
For temperature and reference points, this determines if the point is an actual thermocouple (TC), or one of the two possible universal temperature references (UTR1 or UTR2) |
| fHardwareType:4 |
any |
| 1 |
AM32X |
| 2 |
MODAC |
| 3 |
AVCO |
| 4 |
CPI |
| 5 |
Megawatt Recorder |
| 6 |
Molytek Recorder |
| 15 |
internal PICS point |
|
Specifies the type of hardware where this point originates. This allows applications to provide more precise translations for some of the point status fields (in the real time data stream). It may also have other uses (for example, only AVCO points are automatically taken off scan for hardware errors). |