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.