You are on page 1of 11

Microlok with Single VDU configuration VDU

ADJUSTABLE MII.NV.ADDRESS: 30001


ADJUSTABLE ENABLE:
1
STATION.NAME: NVP_1;
ADJUSTABLE PEER.ADDRESS:
40001;
ADJUSTABLE PEER.IP.ADDRESS.1.A: "192.168.1.51";
ADJUSTABLE PEER.IP.ADDRESS.2.A: "192.168.2.51";
ADJUSTABLE TIME.STAMP: 1;
ADJUSTABLE ACK.TIMEOUT:
1500:MSEC;
ADJUSTABLE HEARTBEAT.INTERVAL: 1500:MSEC;
ADJUSTABLE INDICATION.UPDATE.CYCLE: 10;
ADJUSTABLE STALE.DATA.TIMEOUT: 4000:MSEC;
ADJUSTABLE CLOCK.MASTER: 0;
PPM
ADJUSTABLE MII.NV.ADDRESS: 131
ADJUSTABLE ENABLE:
1
STATION.NAME: PPM_1;
ADJUSTABLE PEER.ADDRESS:
311;
ADJUSTABLE PEER.IP.ADDRESS.1.A: "192.168.1.3";
ADJUSTABLE PEER.IP.ADDRESS.1.B: "192.168.1.103";
ADJUSTABLE PEER.IP.ADDRESS.2.A: "192.168.2.3";
ADJUSTABLE PEER.IP.ADDRESS.2.B: "192.168.2.103";
ADJUSTABLE TIME.STAMP: 1;
ADJUSTABLE CLOCK.MASTER: 0;
ADJUSTABLE STALE.DATA.TIMEOUT: 3000: MSEC;
MICROLOK
ADJUSTABLE ACK.TIMEOUT:
1000: MSEC;
ADJUSTABLE HEARTBEAT.INTERVAL: 1000: MSEC;
ADJUSTABLE INDICATION.UPDATE.CYCLE: 100;

// KEEP DEFAULT VALUE - 4 FOR

Microlok with Dual VDU Configuration


ADJUSTABLE MII.ADDRESS:
30001
ADJUSTABLE ENABLE:
1
STATION.NAME: LCP_1;
ADJUSTABLE PEER.ADDRESS:
40001;
ADJUSTABLE PEER.IP.ADDRESS.1.A: "192.168.1.51";
ADJUSTABLE PEER.IP.ADDRESS.1.B: "192.168.1.151";
ADJUSTABLE PEER.IP.ADDRESS.2.A: "192.168.2.51";
ADJUSTABLE PEER.IP.ADDRESS.2.B: "192.168.2.151";
ADJUSTABLE TIME.STAMP: 1;
ADJUSTABLE ACK.TIMEOUT:
1500:MSEC;
ADJUSTABLE HEARTBEAT.INTERVAL: 1500:MSEC;
ADJUSTABLE INDICATION.UPDATE.CYCLE: 10;
ADJUSTABLE STALE.DATA.TIMEOUT: 4000:MSEC;
ADJUSTABLE CLOCK.MASTER: 0;

//CHECK_CLOCK FLASHER LOGIC


ASSIGN
~CHECK_CLOCK
TO CHECK_CLOCK1;
// STP 109 MIN
// STR 5 SEC
ASSIGN

CHECK_CLOCK1
// STP 101 MIN

TO CHECK_CLOCK;

ASSIGN

CHECK_CLOCK * SYSINITTMR

TO PEER.CLOCK.SET;

Dual VDU Configuration


Signal Button Logic
ASSIGN
(12_12.OPSI + 12SIGCAN.OPSI + (12_12RTREL.OPSI * ~12ASR.C2C1 + 12SERTREL.OPSI *
~12ASR.C2C1 + 12EWRTREL.OPSI * ~12ASR.C2C1) * C1C2_COMOK) * ~2GNR.C1C2 * ~5GNR.C1C2 *
~SH7GNR.C1C2 * ~14GNR.C1C2 * ~16GNR.C1C2 * ~GSBR.C1C2 * ~GSRBR.C1C2 * GNCR2 * 12GN.EN TO
12GNR.C1C2;

Route Button Logic


ASSIGN
(12_12.OPSI + 12_12RTREL.OPSI * ~12ASR.C2C1 * C1C2_COMOK + 14_12.OPSI +
14_12RTREL.OPSI * ~14ASR.C2C1 * C1C2_COMOK + 16_12.OPSI + 16_12RTREL.OPSI * ~16ASR.C2C1
* C1C2_COMOK) * ~01DUNR.C1C2 * ~01MUNR.C1C2 * ~01UNR.C1C2 * ~02UNR.C1C2 * ~03DUNR.C1C2
* ~03MUNR.C1C2 * ~03UNR.C1C2 * ~39UNR.C1C2 * ~UMUNR.C1C2 * ~DMUNR.C1C2 * CHYNCR *
12UN.EN TO 12UNR.C1C2;
Point Button Logic
ASSIGN
(101_102.OPSI + 101_102E.OPSI + 101_102EWRTREL.OPSI + 101_102SEWRTREL.OPSI) *
~103_104WNR.C1C2 * ~117_118WNR.C1C2 * ~119_120WNR.C1C2 * 101_102WN.EN.C1C2 * GNCR.C1C2
* UNCR * CHYNCR
TO 101_102WNR.C1C2;
Crank Handle Button Logic
ASSIGN
(CH1ZNT.OPSI + CH1ZNR.OPSI + CH1E_ZNT.OPSI) * ~CH2YNR.C1C2 * ~CH9YNR.C1C2 *
~CH10YNR.C1C2 * ~301YNR.C1C2 * CH1YN.EN.C1C2 * UNCR
TO CH1YNR.C1C2;
Level Crossing Button Logic
ASSIGN
(301ZNT.OPSI + 301ZNR.OPSI) * ~CH1YNR.C1C2 * ~CH2YNR.C1C2 * ~CH9YNR.C1C2 *
~CH10YNR.C1C2 * 301YN.EN.C1C2 * UNCR
TO 301YNR.C1C2;

VDU with CCIP Configuration


Signal Button Logic
NV.ASSIGN ((PANEL + ~SMKEY.PPMC1 * ~PC_ON) * 12GN.PPMC1 + PC3 * (12_12.OPSI +12SIGCAN.OPSI +
12_12RTREL.OPSI * ~12ASR.C2C1 *
C1_C2_COMOK + 12SERTREL.OPSI * ~12ASR.C2C1)) * ~2GNR.C1C2 * ~5GNR.C1C2 *
~SH7GNR.C1C2 * ~14GNR.C1C2 * 12GN.EN * ~16GNR.C1C2 * ~GSBR.C1C2 * ~GSRBR.C1C2 * GNR_DN2
TO 12GNR;
Route Button Logic
NV.ASSIGN (PANEL * 12UN.PPMC1 + PC * (12_12.OPSI + 12_12RTREL.OPSI * ~12ASR.C2C1 * C1_C2_COMOK +

14_12.OPSI +
14_12RTREL.OPSI * ~14ASR.C2C1 * C1_C2_COMOK + 16_12.OPSI + 16_12RTREL.OPSI * ~16ASR.C2C1 *
C1_C2_COMOK)) *
~01DUNR.C1C2 * ~01MUNR.C1C2 *~01UNR.C1C2* ~02UNR.C1C2 * ~03DUNR.C1C2 * ~03MUNR.C1C2 *
~03UNR.C1C2 * ~39UNR.C1C2 * ~UMUNR.C1C2 * ~DMUNR.C1C2 * 12UN.EN * CHYNCR TO 12UNR;
Point Button Logic
NV.ASSIGN (PANEL * 101_102WN.PPMC1 + PC * (101_102.OPSI + 101_102E.OPSI + 101_102EWRTREL.OPSI +
101_102SEWRTREL.OPSI)) *
~103_104WNR.C1C2 * ~117_118WNR.C1C2 * ~119_120WNR.C1C2 * 101_102WN.EN * GNCR.C1C2 * UNCR *
CHYNCR TO 101_102WNR;
Crank Handle Logic
NV.ASSIGN (PANEL * CH1YN.PPMC1 + PC * (CH1ZNT.OPSI + CH1ZNR.OPSI + CH1E_ZNT.OPSI)) *
~CH2YNR.C1C2 * ~CH9YNR.C1C2 *
~CH10YNR.C1C2 * ~305YNR.C1C2 * ~306YNR.C1C2 * CH1YN.EN * UNCR
TO CH1YNR;
Level Crossing Logic
NV.ASSIGN (PANEL * 305YN.PPMC1 + PC * (305ZNT.OPSI + 305ZNR.OPSI)) * ~CH1YNR.C1C2 * ~CH2YNR.C1C2 *
~CH9YNR.C1C2 *
~CH10YNR.C1C2 * ~306YNR.C1C2 * 305YN.EN * UNCR
TO 305YNR;
%=========================================================================================
====================
COMMUNICATION LINK STATUS CHECK LOGIC
===========================================================================================
===================\
//COMMUNICATION LINK STATUS LOGIC - FOR SYNC LINK
ASSIGN

HS_SYNC.VITAL_C2.STATUS

TO C2_SYNC_OK;

//COMMUNICATION LINK STATUS LOGIC - FOR C2 TO C1 LINK

ASSIGN

C2.C1_1.STATUS * C2.C1_2.STATUS * C2.C1_3.STATUS

TO C2C1_COMOK;

//COMMUNICATION LINK STATUS LOGIC - FOR C2 TO DL LINK


ASSIGN
NVSL_DL.DL_1.STATUS * NVSL_DL.DL_2.STATUS * NVSL_DL.DL_3.STATUS *
NVSL_DL.DL_4.STATUS *
NVSL_DL.DL_5.STATUS * NVSL_DL.DL_6.STATUS * NVSL_DL.DL_7.STATUS * NVSL_DL.DL_8.STATUS
TO C2_DL_COMOK;
//COMMUNICATION LINK STATUS LOGIC - FOR C1 MICROLOK TO OPERATOR VDU LINK

ASSIGN
C1.LCP_1.STATUS * C1.LCP_2.STATUS * C1.LCP_3.STATUS *
C1.LCP_4.STATUS
TO C1_OPC_COMOK;
ASSIGN

C1_OPC_COMOK
//STR 2 SEC

TO C1_OPC_COMOKJ2;

//COMMUNICATION LINK STATUS LOGIC - FOR OPC LINK


ASSIGN

C2.LCP_5.STATUS

TO C2_OPC_COMOK;

ASSIGN

C2_OPC_COMOK
//STR 2 SEC

TO C2_OPC_COMOKJ2;

%=========================================================================================
====================
SYSTEM RESET LOGIC
===========================================================================================
===================\
// CPS RESET LOGIC - FOR AUTO CPS CLEAR
ASSIGN

~CPS.STATUS * CPS.ENABLE

TO CPS.DOWN;

// STP 5 SEC
ASSIGN

CPS.DOWN TO CPS.RESET;

// SYSTEM RESET LOGIC


ASSIGN
HS_SYNC.VITAL_C2.STATUS * ~SB2.PARTNER.STATUS * ~SB2.PARTNER.CPS
SB2.OFFLINE.CPS.DOWN;
// STP 5SEC
ASSIGN

SB2.OFFLINE.CPS.DOWN

ASSIGN

SB2.PARTNER.CPS
//STP 5 SEC

TO

TO SB2.OFFLINE.CPS.RESET;

TO SB2.PARTNER.CPSJ;

ASSIGN
~C2.C1_DUMMY.STATUS * C2C1_COMOK * ~C2_OPC_COMOK * C2_OPC_COMOKJ2 TO
C2.LINKFAIL1;
//STP 1000 MSEC
ASSIGN

~C2.C1_DUMMY.STATUS * C2C1_COMOK * SB2.PARTNER.CPSJ


//STP 3500MSEC

ASSIGN

~C2C1_COMOK TO C2.LINKFAIL3;
//STP 40 SEC

TO C2.LINKFAIL2;

ASSIGN
C2.LINKFAIL1 + C2.LINKFAIL2 + C2.LINKFAIL3 + RESET_Z
TO SB2.ONLINE.RESET;
%=========================================================================================
====================
SYNC MISMATCH LOGIC
===========================================================================================
===================\
ASSIGN
SB2.INPUT.SYNC.ERR TO C2_MISMATCH.C2C1;

ASSIGN

SB1.INPUT.SYNC.ERR TO C1_MISMATCH;

ASSIGN

C1_MISMATCH + C2_MISMATCH.C2C1 TO MISMATCH;

ASSIGN

MISMATCH * (PC * MISMATCH.ACK.OPSI + MISMATCH.ACK.N)

ASSIGN

MISMATCH * ~MISMATCH.ACK.N

ASSIGN

C1_MISMATCH * CPS.STATUSJ2 TO F_C1_MISMATCH_KE.OPSO;

TO MISMATCH.ACK.N;

TO MISMATCH_BUZ.OPSO;

ASSIGN
C2_MISMATCH.C2C1 * CPS.STATUSJ2 TO F_C2_MISMATCH_KE.OPSO;
%=========================================================================================
====================
HOT-STANDBY SYSTEM MODE INDICATION LOGIC
===========================================================================================
===================\
C2
//ONLINE MODE
ASSIGN
A2_VCOR * (~B2_VCOR + A2_ONLINEKE.C2C1)
TO A2_ONLINEKE.C2C1;
ASSIGN

B2_VCOR * (~A2_VCOR + B2_ONLINEKE.C2C1)

TO B2_ONLINEKE.C2C1;

//OFFLINE MODE
ASSIGN

B2_ONLINEKE.C2C1 * A2_VCOR TO A2_OFFLINEKE.C2C1;

ASSIGN

A2_ONLINEKE.C2C1 * B2_VCOR TO B2_OFFLINEKE.C2C1;

//QUARANTINE MODE / POWERED DOWN


ASSIGN
~A2_VCOR TO F_A2_OFFLINEKE.C2C1;

ASSIGN

~B2_VCOR TO F_B2_OFFLINEKE.C2C1;

//CHANGEOVER ALARM
ASSIGN

A2_ONLINEKE.C2C1
// STR 2 SEC

TO A2_ONLINEJ;

ASSIGN

B2_ONLINEKE.C2C1
// STR 2 SEC

TO B2_ONLINEJ;

C1
// ONLINE MODE
ASSIGN
A1_VCOR * (~B1_VCOR + A1_ONLINEKE)

TO A1_ONLINEKE;

ASSIGN

A1_ONLINEKE * SYSINITTMR

TO A1_ONLINEKE.OPSO;

ASSIGN

A1_ONLINEKE * ~SYSINITTMR

TO F_A1_ONLINEKE.OPSO;

ASSIGN

B1_VCOR * (~A1_VCOR + B1_ONLINEKE)

ASSIGN

B1_ONLINEKE * SYSINITTMR

TO B1_ONLINEKE.OPSO;

ASSIGN

B1_ONLINEKE * ~SYSINITTMR

TO F_B1_ONLINEKE.OPSO;

ASSIGN

A2_ONLINEKE.C2C1 * SYSINITTMR

TO A2_ONLINEKE.OPSO;

ASSIGN

A2_ONLINEKE.C2C1 * ~SYSINITTMR

TO F_A2_ONLINEKE.OPSO;

ASSIGN

B2_ONLINEKE.C2C1 * SYSINITTMR

TO B2_ONLINEKE.OPSO;

ASSIGN

B2_ONLINEKE.C2C1 * ~SYSINITTMR

TO F_B2_ONLINEKE.OPSO;

TO B1_ONLINEKE;

//OFFLINE MODE
ASSIGN
B1_ONLINEKE * A1_VCOR TO A1_OFFLINEKE.OPSO;
ASSIGN

A1_ONLINEKE * B1_VCOR TO B1_OFFLINEKE.OPSO;

ASSIGN

A2_OFFLINEKE.C2C1 TO A2_OFFLINEKE.OPSO;

ASSIGN

B2_OFFLINEKE.C2C1 TO B2_OFFLINEKE.OPSO;

//QUARANTINE MODE / POWERED DOWN


ASSIGN
~A1_VCOR TO F_A1_OFFLINEKE.OPSO;
ASSIGN

~B1_VCOR TO F_B1_OFFLINEKE.OPSO;

ASSIGN

F_A2_OFFLINEKE.C2C1

TO F_A2_OFFLINEKE.OPSO;

ASSIGN

F_B2_OFFLINEKE.C2C1

TO F_B2_OFFLINEKE.OPSO;

//CHANGEOVER ALARM
ASSIGN

A1_ONLINEKE.OPSO TO A1_ONLINEJ;
// STR 2 SEC

ASSIGN

B1_ONLINEKE.OPSO TO B1_ONLINEJ;
// STR 2 SEC

ASSIGN

A1_OFFLINEKE.OPSO TO A1_OFFLINEJ;
// STR 2 SEC

ASSIGN

A1_OFFLINEJ

ASSIGN

B1_OFFLINEKE.OPSO TO B1_OFFLINEJ;
// STR 2 SEC

TO A1_OFFLINEJ.C1C2;

ASSIGN

B1_OFFLINEJ

TO B1_OFFLINEJ.C1C2;

ASSIGN

A2_OFFLINEKE.OPSO TO A2_OFFLINEJ;
// STR 2 SEC

ASSIGN

A2_OFFLINEJ

ASSIGN

B2_OFFLINEKE.OPSO TO B2_OFFLINEJ;
// STR 2 SEC

ASSIGN

B2_OFFLINEJ

ASSIGN

A1_VCOR * B1_VCOR * A2_VCOR.C2C1 * B2_VCOR.C2C1 TO VCOR_OK;

TO A2_OFFLINEJ.C1C2;

TO B2_OFFLINEJ.C1C2;

ASSIGN
(A1_ONLINEJ * B1_ONLINEKE.OPSO + B1_ONLINEJ * A1_ONLINEKE.OPSO +
A1_OFFLINEJ * F_A1_OFFLINEKE.OPSO + B1_OFFLINEJ *
F_B1_OFFLINEKE.OPSO + A2_ONLINEJ.C2C1 * B2_ONLINEKE.OPSO +
B2_ONLINEJ.C2C1 * A2_ONLINEKE.OPSO + A2_OFFLINEJ *
F_A2_OFFLINEKE.OPSO + B2_OFFLINEJ * F_B2_OFFLINEKE.OPSO +
SYSFAIL.C1C2 * ~SYS.FAIL.ACKNR)
TO SYSFAIL.C1C2;

ASSIGN

SYSFAIL.C1C2 * (PC * SYS.FAIL.ACK.OPSI + SYS.FAIL.ACKNR) TO SYS.FAIL.ACKNR;

ASSIGN

SYSFAIL.C1C2 + ~VCOR_OK TO SYSFAILKE.R.OPSO;

ASSIGN

SYSFAIL.C1C2 * ~SYS.FAIL.ACKNR

// CPU PANEL LED DISPLAY


NV.ASSIGN CPS.STATUS * SYSINITTMR TO LED.1;

TO SYSFAIL.BUZ.OPSO;

NV.ASSIGN C2C1_COMOK

TO LED.6;

NV.ASSIGN C2_OPC_COMOK

TO LED.7;

NV.ASSIGN C2_DL_COMOK TO LED.8;