Specifications
RailCorp Engineering Manual — Signals — Equipment Manual
Cerberus Level Crossing Monitor Field Equipment Manual TMG E1261
© RailCorp Page 19 of 89
Issued August 2012 UNCONTROLLED WHEN PRINTED Version 2.1
2.2.2.3 Software description
The level crossing monitor software consists of 3 separate tasks. A task is essentially an
independent piece of software that fulfils an element of functionality.
Task 1 is the command task which:
• initialises the hardware and software,
• responds to commands received by either serial port,
• reports status changes assuming a Hayes Compatible modem is connected to
serial port A.
Task 2 is the scan task which:
• Flash Led 4 each time it runs,
• reads and check the real time clock,
• toggles watch dog,
• scans digital inputs and logs changes,
• scans analogue inputs and logs changes,
• scans timers, updates timer status, and logs changes,
• evaluates logic expressions,
• scans intermediate states and logs changes,
• scans output states, sets outputs accordingly, and logs changes,
• update status, and flag status changes,
• checks serial port A modem is not off-hook and idle for too long,
• scans and logs serial port connection changes.
Task 3 is the serial communications task which:
• receives characters from either serial port,
• assembles the received characters into messages,
• acknowledges messages which comply which the protocol,
• passes valid messages to Task 1.
• transmits messages passed from Task 1.
Command task description
Execution of this task is commenced by a hardware reset. It proceeds in the following
manner:
Initialise and clean variables
If there has been more than 3 resets in the last 12 seconds then stop and blink led 1
continuously.
If the EPROM checksum is not correct then stop and blink led 1 continuously.
Create task 2.
If task 2 did not start properly then turn on led 1.
Create task 3.
If task 3 did not start properly then turn on led 1.
Record the start time.
Initialise the serial ports.
Send modem configuration string to port A.