This wiki is meant to help software engineers have a deep understanding of railway systems.
It can only happen if content is added as needed. If something is missing, contribute!
This is the multi-page printable view of this section. Click here to print.
This wiki is meant to help software engineers have a deep understanding of railway systems.
It can only happen if content is added as needed. If something is missing, contribute!
Please open an issue if you’re missing a word
This section is dedicated to describing the general principles relating to:

The majority of the information in this section is taken from the educational document published by the Établissement Public de Sécurité Ferroviaire (EPSF, a public institution responsible for ensuring the safety of railways in France) published on July 5, 2017.
Not translated: please select another language
Not translated: please select another language
Not translated: please select another language
Not translated: please select another language.
Not translated: please select another language.
Not translated: please select another language
Not translated: please select another language.
The onboard computer of ETCS-enabled trains has to compute a number of position / speed curves. Here is how it works:
In order to compute any of these curves, a number of things are needed:
T_traction_cutoff: the time it take to cut off tractionA_brake_emergency is the expected emergency braking capability, without safety marginsA_brake_safe is the emergency braking coefficient, with safety marginsA_brake_service is the expected service braking capability, without safety marginsEOA end of movement authority: the location until which the train is allowed to moveSvL supervised location: the protected locationSBD supervised braking deceleration: intermediary result computed from EOA and A_brake_serviceEBD emergency braking deceleration: intermediary result computed from SvL and A_brake_safeAll the curves below are cut below a given release speed:
EBI (emergency break intervention) computed from EBD, shifted in position and space given rolling stock metadataSBI1 computed from SBD, shifted in time with Tbs1SBI2 computed from SBD, shifted in time with Tbs2FLOI (also called SBI, the intervention curve) the minimum of SBI1 and SBI2WARNING (warning curve) computed as a shift of FLOI by TwarningPS (permitted speed curve): shift of WARNING by time TdriverINDICATION is a shift of PS by time TindicationThe Ks-system (Ks = Kombinationssignal; engl: combination signal) is a german signalling system introduced in 1994 by Deutsche Bahn (DB) in order to create a common system for East Germany (Hl-System) and West Germany (H/V-System) after the german reunification.
The following paragraphs are mainly based on Pachl(2024), Railway Signalling Principles, Edition 3.0, p.20-30.
Railway lines are segmented into sequential block sections, each designed to be occupied by only one train at a time to ensure operational safety. To maintain a safe distance between two trains, the separation must account for the following components:
Block sections are delineated by main signals, which regulate train entry based on specific safety conditions. A signal may only be cleared for a train to enter a block section if all of the following criteria are met:

The control length of a signal refers to the section of track beyond the signal that must be verified as clear and safe before the signal can be set to proceed.
The overlap - a predefined safety margin - extends beyond the actual block section. Its primary function is to provide additional protection in the event that a train fails to stop at a signal displaying “stop”. The overlap begins at the destination signal and ends at a prominent point. Depending on the speed at which the train approaches the stop signal, different lengths of overlaps must be provided. The length of the overlap is monitored by track vacancy detection systems like axle counters.
| speed [km/h] | overlap [m] |
|---|---|
| 60 < v <= 160 | 200 |
| 40 < v <= 60 | 100 |
| v <= 40 | 50 |
A signal must remain at “stop” until the entire control length ahead is confirmed to be unobstructed. The clearing point for a signal corresponds to the end of the control length associated with the signal located behind it.
When selective overlaps are available (only at station’s exit signals and station’s intermediate signals) different overlap options can be chosen during route setting. These alternatives may vary in length or lead into different track sections.
Once the signal has been cleared, the selected overlap cannot be changed without first cancelling the route.
If a shorter-than-standard overlap is selected, the signalling system will reduce the train’s speed accordingly.

based on: DB AG, Ril 819.0202 Signale für Zug- und Rangierfahrten
The Ks-signalling system utilizes a set of standardized signal aspects to convey operational instructions to train drivers. The primary signal indications include:
Within the Ks-system two signalling modes are implemented:

To ensure undisrupted train movement, a signal must be cleared before the approaching train reaches a point where it would otherwise need to initiate braking due to the aspect of the preceding signal.
The minimum headway between two successive trains is determined by the blocking time, which defines the time interval during which a block section is exclusively reserved for a single train and thus unavailable to others.
This model is applicable not only to conventional signalling systems but also to cabin (cab) signalling systems such as LZB and ETCS.
The blocking time is composed of several distinct components:



Ks-signal in Braunschweig main station, Source: Dominik Wefering
| Description | Aspect | Meaning |
|---|---|---|
| Combination signal | ![]() | combination signals have the function of both main signal and distant signal |
| main signal | ![]() | main signals indicate whether the track section ahead may be run over |
| distant signal | ![]() | Distant signals indicate which signal aspect is to be expected at the corresponding next main signal.These are positioned at the braking distance from the next main signal |
| Stop (Hp 0) | ![]() | the signal prohibits the passing of a train |
| Clear (Ks 1) | ![]() | 1. The signal permits the passing at the maximum speed allowed on the section, unless a speed restriction is indicated by a speed indicator.2. The green luminous spot blinks if a distant speed indicator shows in the signal, indicating a speed restriction at the next main signal |
| Expect Stop (Ks 2) | ![]() | the signal permits the passing and indicates a stop at the next main signal |
based on: Bailey(1995), European Railway Signalling, p58; sprites from https://github.com/Nakaner/railway-signals.git
The Ks system includes specific indicators to communicate speed restrictions to train drivers.
Source: DB AG, Ril 301 Signalbuch
| Aspect | Form | Light | Corresponding speed-limit |
|---|---|---|---|
| Zs 3 | ![]() | ![]() | 80 km/h from this signal |
| Zs 3v | ![]() | ![]() | 80 km/h from the corresponding main signal |
sprites from https://github.com/Nakaner/railway-signals.git