WIT Press


Train Control Language – Teaching Computers Interlocking

Price

Free (open access)

Volume

103

Pages

10

Page Range

651 - 660

Published

2008

Size

418 kb

Paper DOI

10.2495/CR080631

Copyright

WIT Press

Author(s)

J. Endresen, E. Carlson, T. Moen, K. J. Alme, Ø. Haugen, G. K. Olsen & A. Svendsen

Abstract

Computer specialists are rarely trained in the world of tracks and trains, while signaling experts are rarely computer specialists. This paper is about bridging the gap between trains and computers with a specially designed language that enables the signaling experts to create consistent train interlocking systems. The language is supported by tailored tools created with open source technology on the development platform Eclipse. From the formal definition of the language in the form of a metamodel, a graphical editor is generated. The systems created with that graphic editor are then transformed for several purposes that are internally consistent. The editor makes sure that the systems conform to the language, and the language makes sure that the systems conform to the way interlockings are designed. The transformations then produce interlocking tables and even actual code automatically from the graphically created model. Keywords: interlocking, Computer Based Interlocking (CBI), code generation, Domain Specific Language (DSL), eclipse. 1 Introduction A railway interlocking system is a system that prevents conflicting and dangerous train movements through a network of tracks and ensures that no clear signal is given to a train unless the requested route is safe and locked. Today all new interlocking systems are computer based (CBI). Configuring the interlocking system for a particular station has been a manual process requiring multiple steps from creating and verifying the requirements (e.g. interlocking tables) to validating the final code. This paper describes a Domain Specific

Keywords

interlocking, Computer Based Interlocking (CBI), code generation, Domain Specific Language (DSL), eclipse.