• The PXC Compact on P1 YEAR, MONTH, DAY, HOUR, and MINUTE resident
points can be used to read and set the current time from the host field panel.
• In P1 mode, these points can only be commanded to the following ranges: YEAR
(2000 to 2058), MONTH (1 to 12), DAY (1 to 31), HOUR (0 to 23), and MINUTE (0 to
59).
• The host field panel does not itself have year, hour or minute resident points. Its
CRTIME is evaluated only once per pass to prevent rollover errors.
• There is not a SECOND point to avoid generating too many COV’s as the time
changes at the PXC Compact on P1 every second.
• Local variables are assigned for clarity instead of $LOCn.
00010C MAINLINE PROGRAM FIELDPANELNAME.P1PXCC.PPCL
00012C MANAGES ALL PXC COMPACT ON P1 HOSTED BY THIS FIELD PANEL
00014C
00016C CREATE LOCAL POINTS FOR SETTING TIME-DATE AND
SYNCHRONIZING TIME
00020LOCAL(VSYNHR,VYEAR,VMONTH,VDAYM,VHOUR,VMIN,VCRTM,VLOCK)
00022C DEFINE A VIRTUAL LAO VYEAR IN ONE FIELD PANEL OR SOFT
CONTROLLER
00024C ANNUALLY SET VALUE AND INITIAL VALUE OF VYEAR TO CURRENT
YEAR
00026C
00028C SET LOCAL VYEAR TO GLOBAL, VALID VALUES ARE 2000 TO 2058
00030$VYEAR=VYEAR
00038C SET SYNC HOUR TO 3AM, VALID VALUES ARE 0 TO 23
00040$VSYNHR = 3.0
00048C SET MONTH, VALID VALUES ARE 1 TO 12
00050$VMONTH = MONTH
00058C SET DAY OF MONTH, VALID VALUES ARE 1 TO 31
00060$VDAYM = DAYOFM
00068C EXTRACT HOUR FROM CRTIME, VALID VALUES ARE 0 TO 23
00070$VCRTM = CRTIME
00080IF($VCRTM.GE.0.0.AND.$VCRTM.LT.1.0) THEN $VHOUR = 0.0
00090IF($VCRTM.GE.1.0.AND.$VCRTM.LT.2.0) THEN $VHOUR = 1.0
00100IF($VCRTM.GE.2.0.AND.$VCRTM.LT.3.0) THEN $VHOUR = 2.0
00110IF($VCRTM.GE.3.0.AND.$VCRTM.LT.4.0) THEN $VHOUR = 3.0
00120IF($VCRTM.GE.4.0.AND.$VCRTM.LT.5.0) THEN $VHOUR = 4.0
00130IF($VCRTM.GE.5.0.AND.$VCRTM.LT.6.0) THEN $VHOUR = 5.0
00140IF($VCRTM.GE.6.0.AND.$VCRTM.LT.7.0) THEN $VHOUR = 6.0
00150IF($VCRTM.GE.7.0.AND.$VCRTM.LT.8.0) THEN $VHOUR = 7.0
00160IF($VCRTM.GE.8.0.AND.$VCRTM.LT.9.0) THEN $VHOUR = 8.0
00170IF($VCRTM.GE.9.0.AND.$VCRTM.LT.10.0) THEN $VHOUR = 9.0