diff options
Diffstat (limited to 'assets/interlocking.lyx')
-rw-r--r-- | assets/interlocking.lyx | 2026 |
1 files changed, 0 insertions, 2026 deletions
diff --git a/assets/interlocking.lyx b/assets/interlocking.lyx deleted file mode 100644 index 96318fd..0000000 --- a/assets/interlocking.lyx +++ /dev/null @@ -1,2026 +0,0 @@ -#LyX 2.2 created this file. For more info see http://www.lyx.org/ -\lyxformat 508 -\begin_document -\begin_header -\save_transient_properties true -\origin unavailable -\textclass paper -\use_default_options true -\maintain_unincluded_children false -\language english -\language_package default -\inputencoding auto -\fontencoding global -\font_roman "default" "default" -\font_sans "default" "default" -\font_typewriter "default" "default" -\font_math "auto" "auto" -\font_default_family default -\use_non_tex_fonts false -\font_sc false -\font_osf false -\font_sf_scale 100 100 -\font_tt_scale 100 100 -\graphics default -\default_output_format default -\output_sync 0 -\bibtex_command default -\index_command default -\paperfontsize default -\spacing single -\use_hyperref false -\papersize default -\use_geometry true -\use_package amsmath 1 -\use_package amssymb 1 -\use_package cancel 1 -\use_package esint 1 -\use_package mathdots 1 -\use_package mathtools 1 -\use_package mhchem 1 -\use_package stackrel 1 -\use_package stmaryrd 1 -\use_package undertilde 1 -\cite_engine basic -\cite_engine_type default -\biblio_style plain -\use_bibtopic false -\use_indices false -\paperorientation portrait -\suppress_date false -\justification true -\use_refstyle 1 -\index Index -\shortcut idx -\color #008000 -\end_index -\leftmargin 1cm -\topmargin 1cm -\rightmargin 1cm -\bottommargin 1cm -\secnumdepth 3 -\tocdepth 3 -\paragraph_separation indent -\paragraph_indentation 0bp -\quotes_language english -\papercolumns 1 -\papersides 1 -\paperpagestyle default -\tracking_changes false -\output_changes false -\html_math_output 0 -\html_css_as_file 0 -\html_be_strict false -\end_header - -\begin_body - -\begin_layout Title -Minetest Mod - Advanced Trains [advtrains] -\end_layout - -\begin_layout Title -Interlocking System Guide -\end_layout - -\begin_layout Section -Introduction -\end_layout - -\begin_layout Standard -In real-world railways, a so-called interlocking system is a set of railway - signals and trackside equipment. - Its purpose is to prevent conflicting train movements which otherwise could - result in derailing or colliding trains. - If you want more information, just search for -\begin_inset Quotes eld -\end_inset - -railway interlocking -\begin_inset Quotes erd -\end_inset - - on the internet. -\end_layout - -\begin_layout Standard -Real-world interlocking systems perform this task by setting routes. - A route is a path along a track that a train can safely pass. - To set a route for a train, the signalman (the operator of a signal box) - has to set switches (turnouts) to the correct position and lock them in - order to make a signal for a train show -\begin_inset Quotes eld -\end_inset - -Proceed -\begin_inset Quotes erd -\end_inset - -. - In newer systems, this is done automatically by the interlocking system. - A route can not be set if switches are locked to a wrong position by another - route or if any portion of the route is occupied by a train. -\end_layout - -\begin_layout Standard -The interlocking system in this Minetest mod tries to follow real-world - interlocking systems as far as applicable. - It divides tracks into track sections and implements a route setting mechanism - following the same principle. -\end_layout - -\begin_layout Standard -However, for the sake of simplicity of implementation and usage, not all - concepts of real-world interlocking have been taken over. - Especially, there is no mechanism for overlap. -\end_layout - -\begin_layout Standard -If you are looking for a place to learn how real-world interlocking systems - work, have a look at -\begin_inset Quotes eld -\end_inset - -SimSig -\begin_inset Quotes erd -\end_inset - -. - By looking at their simulations, you can obtain experience on how to set - up your own interlocking systems in AdvTrains. - The SimSig glossary is a good place to look up unknown terms in this document. -\end_layout - -\begin_layout Section -Setting up track sections -\end_layout - -\begin_layout Standard -In the real world, a line of track is divided into so-called track sections, - or track circuits. - Those systems often can not tell where exactly a train is, but only which - track sections it occupies. - A route can never be set through an occupied track section. -\end_layout - -\begin_layout Standard -A track section often covers: -\end_layout - -\begin_layout Itemize -A section on a main running line, between two signals -\end_layout - -\begin_layout Itemize -A single turnout -\end_layout - -\begin_layout Itemize -A rail crossing, or a set of turnouts acting as a double/single slip switch -\end_layout - -\begin_layout Itemize -A siding -\end_layout - -\begin_layout Standard -You will find some examples on how to interlock certain patterns later. -\end_layout - -\begin_layout Subsection -Track Circuit Breaks -\end_layout - -\begin_layout Standard -In this mod, you will not directly configure the locations of track sections. - Instead, you designate the borders of each track section using a special - node, the Track Circuit Break, abbreviated TCB. -\end_layout - -\begin_layout Standard -For example, if you want to create a track section for a piece of a main - running line, you set up two TCBs at the ends of this track circuit. -\end_layout - -\begin_layout Standard -Setting up a TCB works as follows: -\end_layout - -\begin_layout Enumerate -Place a TCB node somewhere near the place where the circuit break is going - to be located. -\end_layout - -\begin_layout Enumerate -Right-click the TCB node -\end_layout - -\begin_layout Enumerate -Punch the rail which should act as TCB -\end_layout - -\begin_layout Standard -The result should look like this: -\end_layout - -\begin_layout Standard -\begin_inset Graphics - filename lyx_img/screenshot_20180830_142551.png - width 10cm - -\end_inset - - -\end_layout - -\begin_layout Standard -Now you have assigned the TCB node to a rail. - Right-click the TCB node once again. - This will bring up a form which looks as follows: -\end_layout - -\begin_layout Standard -\begin_inset Graphics - filename lyx_img/Bildschirmfoto_2018-08-30_14-26-35.png - width 10cm - -\end_inset - - -\end_layout - -\begin_layout Standard -You see that the form is divided in side A and side B. - To designate where each side is, a marker is displayed on the rail. - You can always make this marker show up by punching the TCB node, and remove - it by punching the marker. - Both sides are shown as -\begin_inset Quotes eld -\end_inset - -End of interlocking -\begin_inset Quotes erd -\end_inset - -. - This means that there is no track section set up at this place. -\end_layout - -\begin_layout Standard -You should repeat this procedure once again a few meters away from the first - TCB to create a second TCB on the same track. -\end_layout - -\begin_layout Standard -\begin_inset Graphics - filename lyx_img/Bildschirmfoto_2018-08-30_14-32-48.png - width 10cm - -\end_inset - - -\end_layout - -\begin_layout Standard -Once you have both bordering TCBs set up, you can now create the actual - track section. - To do this: -\end_layout - -\begin_layout Enumerate -Right-click one of the TCBs -\end_layout - -\begin_layout Enumerate -Locate the correct side (A or B) to create the track section -\end_layout - -\begin_layout Enumerate -Click -\begin_inset Quotes eld -\end_inset - -Create interlocked Track Section -\begin_inset Quotes erd -\end_inset - - in the formspec on the chosen side. -\end_layout - -\begin_layout Standard -Now, the text on the formspec has changed. - It shows something like this: -\end_layout - -\begin_layout Standard -\begin_inset Graphics - filename lyx_img/Bildschirmfoto_2018-08-30_14-27-25.png - width 5cm - -\end_inset - - -\end_layout - -\begin_layout Standard -Clicking -\begin_inset Quotes eld -\end_inset - -Show Track Section -\begin_inset Quotes erd -\end_inset - - brings up another formspec: -\end_layout - -\begin_layout Standard -\begin_inset Graphics - filename lyx_img/Bildschirmfoto_2018-08-30_14-28-32.png - width 5cm - -\end_inset - - -\end_layout - -\begin_layout Standard -On the top, you see a list of all TCBs that border this track section. - In your case, there should be two TCBs listed. - If there's only one, head over to -\begin_inset CommandInset ref -LatexCommand ref -reference "subsec:Long-track-sections," - -\end_inset - -. - You should now select a name for the track section, to identify it later. -\end_layout - -\begin_layout Standard -The same procedure is applicable when you create a turnout track section, - except that you have to set up three or more TCBs. -\end_layout - -\begin_layout Standard -The AdvTrains interlocking system allows you to add more TCBs after you - have created a track section. - This works without problems in most cases. - For example, you can easily insert a turnout into an already set-up track - section and create another TCB behind it, and AdvTrains will automatically - detect the existing track section. - Problems arise only if you try to insert a TCB in-between a section, in - which case both sides of the TCB will end up assigned to the same section. - The code currently does not handle this case properly, so try to avoid - this situation by all means. - As a last resort, you can always dissolve a faulty track section, as described - in the next chapter. -\end_layout - -\begin_layout Subsection -Long track sections, crossings and other edge cases -\begin_inset CommandInset label -LatexCommand label -name "subsec:Long-track-sections," - -\end_inset - - -\end_layout - -\begin_layout Subsubsection -Very long track sections -\end_layout - -\begin_layout Standard -If you try to set up a track section that is longer than 1000 nodes, advtrains - won't recognize the TCB at the other end because of a safety limit in the - traverser function, which is supposed to prevent deadlocks. - This case has happened when the Track Section overview screen only shows - one TCB in the list. - The procedure for this is as follows: -\end_layout - -\begin_layout Enumerate -Go to the second TCB (the one that wasn't recognized). - It should show -\begin_inset Quotes eld -\end_inset - -End of Interlocking -\begin_inset Quotes erd -\end_inset - - on the relevant side. -\end_layout - -\begin_layout Enumerate -Click -\begin_inset Quotes eld -\end_inset - -Create interlocked track section -\begin_inset Quotes erd -\end_inset - -. - The section created will be different from the one that is already present. -\end_layout - -\begin_layout Enumerate -In the track section overview, click -\begin_inset Quotes eld -\end_inset - -Join into other section -\begin_inset Quotes erd -\end_inset - - -\end_layout - -\begin_layout Enumerate -Go back to the first TCB, bring up the Track Section overview screen of - the first track section and click -\begin_inset Quotes eld -\end_inset - -Join with ??? -\begin_inset Quotes erd -\end_inset - - -\end_layout - -\begin_layout Standard -The other, missing TCB should now appear in the list. - If you accidentally started such a joining procedure, click the -\begin_inset Quotes eld -\end_inset - -X -\begin_inset Quotes erd -\end_inset - - button on the right. -\end_layout - -\begin_layout Subsubsection -Rail crosses -\end_layout - -\begin_layout Standard -Since rail crosses are created by laying tracks across each other without - logical connection, there's no way for advtrains to know whether rails - cross each other. -\end_layout - -\begin_layout Standard -Rail crossings in interlocking systems are always one single track section, - which in most cases has 4 TCBs adjacent. -\end_layout - -\begin_layout Standard -\begin_inset Graphics - filename lyx_img/Bildschirmfoto_2018-08-30_14-51-25.png - width 5cm - -\end_inset - - -\end_layout - -\begin_layout Standard -The procedure is quite similar to the one for long sections: First, create - two track sections for the branches, and then use the -\begin_inset Quotes eld -\end_inset - -Join -\begin_inset Quotes erd -\end_inset - - function to merge both sections into one. -\end_layout - -\begin_layout Subsubsection -Deleting and re-adding single TCBs to a section -\end_layout - -\begin_layout Standard -In some occasions, for example when you remove a siding or a crossover, - it can be necessary to unassign a TCB from a track section. - There are multiple ways to do this: -\end_layout - -\begin_layout Itemize -In the TCB form, click the -\begin_inset Quotes eld -\end_inset - -Remove from section -\begin_inset Quotes erd -\end_inset - - button -\end_layout - -\begin_layout Itemize -In the track section form, first select the TCB in the list and then click - -\begin_inset Quotes eld -\end_inset - -Unlink selected TCB -\begin_inset Quotes erd -\end_inset - - -\end_layout - -\begin_layout Standard -The result is that the TCB shows -\begin_inset Quotes eld -\end_inset - -End of Interlocking -\begin_inset Quotes erd -\end_inset - - and the section does not list the TCB as an endpoint anymore. -\end_layout - -\begin_layout Standard -The other case is adding a siding or a crossover, in which case one or more - TCBs still show -\begin_inset Quotes eld -\end_inset - -End of Interlocking -\begin_inset Quotes erd -\end_inset - - although they should be part of a section: -\end_layout - -\begin_layout Itemize -Go to another TCB that is registered in the track section and click -\begin_inset Quotes eld -\end_inset - -Update near TCBs -\begin_inset Quotes erd -\end_inset - - -\end_layout - -\begin_layout Itemize -If that did not work, follow the procedure of creating a long track section -\end_layout - -\begin_layout Subsubsection -Dissolving sections -\end_layout - -\begin_layout Standard -If you made a mistake setting up something and you don't see any other way - to fix a misconfigured track section, you can always delete it using the - -\begin_inset Quotes eld -\end_inset - -Dissolve section -\begin_inset Quotes erd -\end_inset - - button. - This operation removes the track section and sets all TCBs that previously - belonged to the section as -\begin_inset Quotes eld -\end_inset - -End of Interlocking -\begin_inset Quotes erd -\end_inset - -. - This will always work and lets you start over new with setting up track - sections. -\end_layout - -\begin_layout Subsection -Interlocking patterns -\end_layout - -\begin_layout Standard -Have a look at the following images. - They show you how you can set up sections so that reasonable train moves - are possible. -\end_layout - -\begin_layout Standard -You should settle on a naming scheme for your sections. - This way, you can determine the source of an issue faster -\end_layout - -\begin_layout Section -Signals and routes -\end_layout - -\begin_layout Standard -Signals are appliances that can give instructions to trains. - That can be the permission to proceed, a speed restriction, or other informatio -n. -\end_layout - -\begin_layout Standard -There are 2 types of signals: -\end_layout - -\begin_layout Itemize -Static signals always display the same information to the train. - This can be a speed restriction (or the end of one), a disallowal to proceed - as shunt move or similar things. - In most cases, these are signs. -\end_layout - -\begin_layout Itemize -Dynamic signals are what most people would call a -\begin_inset Quotes eld -\end_inset - -signal -\begin_inset Quotes erd -\end_inset - -. - Its function is to inform trains about whether and at which speed they - can proceed into the next section safely. -\end_layout - -\begin_layout Subsection -Signal Influence Point -\end_layout - -\begin_layout Standard -Every signal is associated to a track on which the instruction should be - followed. - Signals are usually placed right next to the track on the right side. - Human observers do know then that the signal belongs to the track left - of it, however, train safety systems (like the one in advtrains) can not. -\end_layout - -\begin_layout Standard -This is the reason why a so-called -\begin_inset Quotes eld -\end_inset - -influence point -\begin_inset Quotes erd -\end_inset - - needs to be assigned to any signal that should actually give instructions - to trains, should the driver (if even there is one) fail to recognize the - instructions. -\end_layout - -\begin_layout Standard -Depending on the signal and the mod that adds the signal, there are different - ways to configure this. - Signals integrated into advtrains behave as follows: -\end_layout - -\begin_layout Itemize -Static signals and all red-green light signals from core advtrains that - are not assigned to a TCB can be configured by holding the -\begin_inset Quotes eld -\end_inset - -Use -\begin_inset Quotes erd -\end_inset - - key and then right-clicking the signal -\end_layout - -\begin_layout Itemize -All signals that are assigned to a TCB can be configured by first right-clicking - them, then selecting -\begin_inset Quotes eld -\end_inset - -Influence Point -\begin_inset Quotes erd -\end_inset - - in the signalling formspec. -\end_layout - -\begin_layout Standard -The small formspec that opens allows you to set and later view or clear - the Influence Point. - To set the influence point, click the -\begin_inset Quotes eld -\end_inset - -Set -\begin_inset Quotes erd -\end_inset - - button, face towards the signal and punch a rail about 2m in front of the - signal. - A small marker will be shown, indicating success. - To cancel setting an influence point, punch anything other. - (note that then the influence point remains unset, regardless of its previous - state) -\end_layout - -\begin_layout Standard -The advtrains-internal train safety system ensures that the train always - obeys any restrictions imposed by signals, if (and only if) the influence - point is set properly. -\end_layout - -\begin_layout Subsection -Signal Aspects -\end_layout - -\begin_layout Standard -While static signals are mainly used for speed restrictions, the interesting - ones are variable signals. - Of course, you can always control any variable signal by traditional means - (mesecons, digiline, right-click) if the signal allows it, but that misses - the point of this interlocking system. -\end_layout - -\begin_layout Standard -A signal aspect is a piece of information that a signal shows to the train - driver. - It contains information about whether and at what speed the driver may - proceed at the signal. -\end_layout - -\begin_layout Standard -Every signal, both static and dynamic ones, imposes a certain aspect to - trains passing the signal. - For static signals, this is always the same aspect, such as -\begin_inset Quotes eld -\end_inset - -Proceed at speed of 8 -\begin_inset Quotes erd -\end_inset - - or -\begin_inset Quotes eld -\end_inset - -Shunt moves may not pass -\begin_inset Quotes erd -\end_inset - -. - Dynamic signals, however, can display multiple different aspects. - The default for them is always as restrictive as possible, mostly -\begin_inset Quotes eld -\end_inset - -Halt! -\begin_inset Quotes erd -\end_inset - -. -\end_layout - -\begin_layout Standard -You should know that both static and dynamic signals use exactly the same - properties for signal aspects. - There is no difference in the meaning of the aspect definitions. -\end_layout - -\begin_layout Standard -In the following sections, we will talk about main signals. - By this, we mean a variable signal that can display both a -\begin_inset Quotes eld -\end_inset - -Danger -\begin_inset Quotes erd -\end_inset - - aspect (trains are not allowed to proceed) and at least one -\begin_inset Quotes eld -\end_inset - -Proceed -\begin_inset Quotes erd -\end_inset - - aspect (train may proceed as train/shunt move, with optional speed restriction) -, which act as an -\begin_inset Quotes eld -\end_inset - -entry signal -\begin_inset Quotes erd -\end_inset - - for one or multiple routes. -\end_layout - -\begin_layout Subsection -Train moves and Shunt Moves -\end_layout - -\begin_layout Itemize -A -\begin_inset Quotes eld -\end_inset - -Train move -\begin_inset Quotes erd -\end_inset - - is a train that is running, going to run on or coming from a main line - between stations, passing through or stopping at a station. - Train moves can expect that there are no obstacles on the route and they - can proceed at the maximum permitted speed of the line. - This is the regular operation mode for trains. - Shunt signals have no meaning for train moves. -\end_layout - -\begin_layout Itemize -A -\begin_inset Quotes eld -\end_inset - -Shunt move -\begin_inset Quotes erd -\end_inset - - is a train that moves within a station and/or is coupling or decoupling - wagons or engines. - A shunt move may never leave a station except into a siding. - Also, shunt moves may drive at a maximum speed of 6 speed units, because - it is usually not ensured that the path is free of obstacles. - (however, advtrains ensures that every route is free of railway vehicles, - even shunt routes) -\end_layout - -\begin_layout Standard -There are also 2 general types of signals: Main signals and Shunt signals. - While main signals have a meaning for all types of trains, Shunt signals - only have to be followed by shunt moves. - Usually, Shunt signals that are on a train move route are set to a Proceed - aspect as well. -\end_layout - -\begin_layout Standard -When a train reverses, its mode automatically changes to -\begin_inset Quotes eld -\end_inset - -shunt move -\begin_inset Quotes erd -\end_inset - - until it passes a main signal that shows -\begin_inset Quotes eld -\end_inset - -Proceed as train move -\begin_inset Quotes erd -\end_inset - -, which is usually designated by a green light. - From this point on, it can accelerate to maximum permitted speed. -\end_layout - -\begin_layout Standard -Some main signals, like the ones from the Ks signals mod included by default, - can also display -\begin_inset Quotes eld -\end_inset - -Proceed as shunt move -\begin_inset Quotes erd -\end_inset - -, which is designated by 2 white lights along with the red light. - Once a train passes this signal, it becomes a shunt move. -\end_layout - -\begin_layout Subsection -The concept of routes -\end_layout - -\begin_layout Standard -A so-called route is a locked path between two main signals, which locks - all turnouts in the correct position. - Its purpose is to offer a train a path on which it can safely proceed without - interfering with any other train. - A route always incorporates and locks one to multiple track sections, starting - with the one that lies directly behind the -\begin_inset Quotes eld -\end_inset - -entry -\begin_inset Quotes erd -\end_inset - - signal. -\end_layout - -\begin_layout Standard -Example: Imagine a station with 2 platforms on a single track running line. - We are looking at signal A. - You probably want trains coming from the right to go into platform 1 or - into platform 2, so you need to program 2 routes. -\end_layout - -\begin_layout Standard -\begin_inset Graphics - filename lyx_img/route_ex1.png - width 7cm - -\end_inset - - -\end_layout - -\begin_layout Standard -This leads us to the most important aspect of route programming: Routes - always start at a signal (A) and end at a signal facing in the -\series bold -same direction -\series default - (D and E), not at an opposite-facing signal (B and C). - There are only few exceptions, we'll cover this later. -\end_layout - -\begin_layout Standard -When you set a route to make a train proceed on it, the interlocking system - ensures that: -\end_layout - -\begin_layout Itemize -There are no rail vehicles on the route -\end_layout - -\begin_layout Itemize -All turnouts are set to the correct position and it is impossible to move - them -\end_layout - -\begin_layout Itemize -No other routes can be set that would in any way conflict with this route -\end_layout - -\begin_layout Standard -For this to work, you need to specify all track sections the train will - pass along, as well as the positions of all turnouts that need to be locked. - Those are not only the turnouts that lay directly on the train's route, - but also some turnouts on adjacent tracks, the so-called flank protection. -\end_layout - -\begin_layout Standard -The purpose of flank protection is to prevent runaway trains and/or wagons - to pass into a route. - This is achieved by setting nearby turnouts to a position that points -\begin_inset Quotes eld -\end_inset - -away -\begin_inset Quotes erd -\end_inset - - from the route. - Example: -\end_layout - -\begin_layout Standard -\begin_inset Graphics - filename lyx_img/route_ex2.png - width 7cm - -\end_inset - - -\end_layout - -\begin_layout Standard -The upper turnout, of course, needs to be locked in straight (normal) position, - while the lower one is not relevant for the route itself. - But what if the lower turnout was set to the diverging (reverse) position - and the driver of another train approaching signal B fails to see the red - light? This train would crash into the first one. - To minimise danger, that other train would need to be routed towards signal - D. -\end_layout - -\begin_layout Standard -There are, of course, situations, where both positions of a turnout would - conflict with a route equally. - In those situations, there's nothing you can do and no flank lock needs - to be set. -\end_layout - -\begin_layout Subsection -Assigning main signals to TCBs -\end_layout - -\begin_layout Standard -Main signals in the advtrains interlocking system are positioned - like - in real life - at the border of track sections, because routes also start - and end there. - For advtrains to know from which signal which routes can be set, you need - to assign the signal to a TCB. -\end_layout - -\begin_layout Standard -To do this, perform the following steps: -\end_layout - -\begin_layout Enumerate -If not already happened, set up a TCB (you don't need to, but are advised - to, configure track sections there) -\end_layout - -\begin_layout Enumerate -Place the signal a few meters in front of the TCB, so that trains stopping - at the signal do never pass the TCB -\end_layout - -\begin_layout Enumerate -Locate the side of the TCB which points in the direction that trains will - proceed past the signal, as shown in the figure below. -\end_layout - -\begin_layout Enumerate -Right-click the TCB, and click -\begin_inset Quotes eld -\end_inset - -Assign a signal -\begin_inset Quotes erd -\end_inset - - on this side. -\end_layout - -\begin_layout Enumerate -Punch the signal. -\end_layout - -\begin_layout Standard -\begin_inset Graphics - filename lyx_img/assign_signal.png - width 8cm - -\end_inset - - -\end_layout - -\begin_layout Standard -If you haven't set an influence point for the signal yet, the influence - point formspec automatically opens. -\end_layout - -\begin_layout Standard -You can assign a signal to each side of a TCB. - This is, for example, useful when creating block sections on a bi-directional - main running line. -\end_layout - -\begin_layout Standard -Only main signals can ever be assigned to TCBs, because static ones can - either not display -\begin_inset Quotes eld -\end_inset - -Danger -\begin_inset Quotes erd -\end_inset - - or do not permit to proceed at all. -\end_layout - -\begin_layout Subsection -Shunt routes -\end_layout - -\begin_layout Standard - -\series bold -The information in this section is subject to future change because of safety - issues! -\end_layout - -\begin_layout Standard -Operating railways is not all about driving trains around. - Coupling, decoupling and moving single engines, wagons or groups of wagons - across a station, called shunting, also plays an important role. -\end_layout - -\begin_layout Standard -Remember what we said about routes: There must be no rail vehicles on the - route. - So what if you have some goods wagons ready on a siding, and want to couple - an engine to it? You can not set a regular route into the siding, because - it is occupied. -\end_layout - -\begin_layout Standard -The solution is to program a second route into the siding, but with the - difference that it already ends at the rear-facing signal of it, so it - doesn't include the siding section itself: -\end_layout - -\begin_layout Standard -\begin_inset Graphics - filename lyx_img/route_ex3.png - width 7cm - -\end_inset - - -\end_layout - -\begin_layout Standard -The Sht2 route then needs to show a shunt aspect, which instructs the driver - to proceed slowly and watch out for vehicles on the route. - See later on for how to set this up. -\end_layout - -\begin_layout Standard -Shunt routes like this are, so far, the only exception to the -\begin_inset Quotes eld -\end_inset - -Routes should end at a signal facing the same direction -\begin_inset Quotes erd -\end_inset - - rule. -\end_layout - -\begin_layout Subsection -Route Release -\end_layout - -\begin_layout Standard -In early real-life interlocking systems, routes either had to be cancelled - by the signalman after the train had passed the route, or there was a single - release contact at the end of the route. - However, as interlocking systems evolved and the position of trains is - now roughly known by the track sections, portions of the route can be freed - as soon as the train has left the corresponding section. -\end_layout - -\begin_layout Standard -AdvTrains has chosen a modern approach to route releasing. - Each turnout lock is associated to a track section belonging to the route's - path. - Once the train leaves this section, all assigned locks are also freed. -\end_layout - -\begin_layout Standard -Please note that reversing a train outside of stations is not only discouraged, - but also very dangerous, because even real-world interlocking system do - not expect this. - There is a clear, human-sense rule that you should never reverse the driving - direction of a train while on a main line or on a turnout. - Else, you can be considered a terrorist. - (quote from professional!) -\end_layout - -\begin_layout Subsection -Programming a route -\end_layout - -\begin_layout Standard -The route programming procedure is quite straightforward if you've read - the previous sections and understood how routes should be set. -\end_layout - -\begin_layout Standard -Routes always start at a main signal. - You must have assigned the signal to a TCB, as described earlier. -\end_layout - -\begin_layout Standard -When you right-click the main signal, it no longer changes its aspect. - Instead, a formspec pops up, showing you an (empty) list of routes with - the possibility to set them or to create new routes. - Click the -\begin_inset Quotes eld -\end_inset - -Create new route -\begin_inset Quotes erd -\end_inset - - button to start programming a new route. -\end_layout - -\begin_layout Standard -The form closes, and an arrow is displayed on the TCB. - You are now in -\begin_inset Quotes eld -\end_inset - -Route Programming -\begin_inset Quotes erd -\end_inset - - mode, programming the first track section of the route. - Now: -\end_layout - -\begin_layout Itemize -Put any turnouts you need to lock in the correct position (e.g. - by right-clicking them). - This includes flank protection. -\end_layout - -\begin_layout Itemize -Punch them. - This makes a marker with a blue lock symbol appear. -\end_layout - -\begin_layout Itemize -If you punch a turnout again, or punch the marker, you can remove the lock - again. -\end_layout - -\begin_layout Itemize -When you've locked all turnouts in the current section, go to and punch - the TCB that is the border to the next track section the train proceeds - into. -\end_layout - -\begin_layout Standard -Depending on the situation, you are now offered some possibilities to proceed: -\end_layout - -\begin_layout Itemize -Click the -\begin_inset Quotes eld -\end_inset - -Advance to next section -\begin_inset Quotes erd -\end_inset - - button if your route consists of more sections with turnouts to lock, and - you need to continue programming. - Follow the above steps to set locks for the next section. -\end_layout - -\begin_layout Standard -Once you've clicked the -\begin_inset Quotes eld -\end_inset - -Advance -\begin_inset Quotes erd -\end_inset - - button, the lock markers change to a red lock symbol, telling they can't - be changed anymore. - Repeat the above procedure until you are ready to complete the programming - procedure: -\end_layout - -\begin_layout Itemize -Click the -\begin_inset Quotes eld -\end_inset - -Finish route HERE -\begin_inset Quotes erd -\end_inset - - button when you've set up the locks for the last track section of the route - and punched the final TCB (the one with the next signal). - You will be asked for a route name and your route will be saved. -\end_layout - -\begin_layout Itemize -The -\begin_inset Quotes eld -\end_inset - -Finish route at end of NEXT section -\begin_inset Quotes erd -\end_inset - - button (third button) is an useful quickhand to make the route proceed - one more section. - Using this button is equivalent to first clicking the -\begin_inset Quotes eld -\end_inset - -Advance -\begin_inset Quotes erd -\end_inset - - button, then flying to the end of the next track section and finishing - the route there. - You can not (officially) set turnout locks in the final section using this - method. -\end_layout - -\begin_layout Standard -A few hints: -\end_layout - -\begin_layout Itemize -If you accidentally advanced the route wrongly, you can use the -\begin_inset Quotes eld -\end_inset - -Step back one section -\begin_inset Quotes erd -\end_inset - - button to undo this. -\end_layout - -\begin_layout Itemize -If you want to stop programming the entire route without saving it, use - the -\begin_inset Quotes eld -\end_inset - -Cancel route programming -\begin_inset Quotes erd -\end_inset - - button. -\end_layout - -\begin_layout Itemize -The third button is especially useful for programming simple block sections - on a main running line, since you can stay at the starting signal (punch - starting TCB and select third button). -\end_layout - -\begin_layout Itemize -If a route should end in a dead end, you MUST use the -\begin_inset Quotes eld -\end_inset - -Finish in NEXT section -\begin_inset Quotes erd -\end_inset - - button, because there is no final TCB that you could punch. -\end_layout - -\begin_layout Itemize -The third button does NOT work on sections with more than 2 exits, because - the system won't be able to determine the final TCB of the route then. -\end_layout - -\begin_layout Subsection -Route information screen -\end_layout - -\begin_layout Standard -\begin_inset Graphics - filename lyx_img/Bildschirmfoto_2019-01-15_19-28-09.png - width 10cm - -\end_inset - - -\end_layout - -\begin_layout Standard -This is the screen that appears when you click -\begin_inset Quotes eld -\end_inset - -Edit Route -\begin_inset Quotes erd -\end_inset - -. - It lets you change the route name and delete the route. - Also, it shows a summary of the route and its elements. -\end_layout - -\begin_layout Standard -The route summary lists information per track section on the route, so the - line starting with -\begin_inset Quotes eld -\end_inset - -1 -\begin_inset Quotes erd -\end_inset - - is the first section of the route. -\end_layout - -\begin_layout Standard -The ARS rule list and its purpose is explained later. -\end_layout - -\begin_layout Subsection -Specifying signal aspects -\end_layout - -\begin_layout Standard -By default, newly programmed routes show an aspect that comes closest to - -\begin_inset Quotes eld -\end_inset - -Proceed at maximum speed -\begin_inset Quotes erd -\end_inset - -. - However, it can be desirable to change this behavior, like when the route - passes a diverging turnout, the train should be signalled to drive slower, - or the route is a shunt route and therefore only -\begin_inset Quotes eld -\end_inset - -Shunting allowed -\begin_inset Quotes erd -\end_inset - - should be shown. -\end_layout - -\begin_layout Standard -This is the purpose of the -\begin_inset Quotes eld -\end_inset - -Change Aspect -\begin_inset Quotes erd -\end_inset - - button in the route info screen. -\end_layout - -\begin_layout Standard -Signal aspects in advtrains consist of 4 sections: main (Information for - train moves), dst (Distant signal information, not implemented yet), shunt - (Information for shunt moves) and info (additional information, currently - not in use). -\end_layout - -\begin_layout Itemize -Train may proceed as train move at maximum speed: -\begin_inset Quotes eld -\end_inset - -main: free, speed -1 -\begin_inset Quotes erd -\end_inset - - -\end_layout - -\begin_layout Itemize -Train may proceed as train move at speed of 8: -\begin_inset Quotes eld -\end_inset - -main: free, speed 8 -\begin_inset Quotes erd -\end_inset - - -\end_layout - -\begin_layout Itemize -Train may proceed as shunt move: -\begin_inset Quotes eld -\end_inset - -shunt: free -\begin_inset Quotes erd -\end_inset - - -\end_layout - -\begin_layout Standard -There's a field in the -\begin_inset Quotes eld -\end_inset - -shunt -\begin_inset Quotes erd -\end_inset - - part of signal aspects that is not displayed in the GUI, but is of potential - interest to developers of signal addons: shunt.proceed_as_main. -\end_layout - -\begin_layout Itemize -A train move can always become a shunt move by passing a signal that shows - -\begin_inset Quotes eld -\end_inset - -Halt for train moves, shunting permitted -\begin_inset Quotes erd -\end_inset - - -\end_layout - -\begin_layout Itemize -A shunt move can only pass a signal saying -\begin_inset Quotes eld -\end_inset - -Proceed as train move, shunting not permitted -\begin_inset Quotes erd -\end_inset - - when proceed_as_main is true. -\end_layout - -\begin_layout Standard -The property is used by the Limit Of Shunt sign, where proceed_as_main is - set to false. - Shunt moves have to stop in front of it, while train moves are signalled - -\begin_inset Quotes eld -\end_inset - -Proceed -\begin_inset Quotes erd -\end_inset - -. - Regular main signals that show -\begin_inset Quotes eld -\end_inset - -green -\begin_inset Quotes erd -\end_inset - - have the field set to true, so that all trains can pass it. -\end_layout - -\begin_layout Section -Interlocking system operation -\end_layout - -\begin_layout Standard -Setting up the interlocking for a portion of a railway network requires - some time, experience and planning, but once done, there's not much to - do anymore to make trains run on your, now safer, railway. - This section covers some useful practices to route trains across your network. -\end_layout - -\begin_layout Standard -At the moment, routes can either be set by clicking the signal or via LuaATC, - or by using the -\begin_inset Quotes eld -\end_inset - -Remote Routesetting -\begin_inset Quotes erd -\end_inset - - button from the Onboard Computer. - It is planned to control this via a -\begin_inset Quotes eld -\end_inset - -signal box -\begin_inset Quotes erd -\end_inset - - view based on the currently broken itrainmap. -\end_layout - -\begin_layout Subsection -Train Safety System -\end_layout - -\begin_layout Standard -The Train Safety System, called -\begin_inset Quotes eld -\end_inset - -LZB -\begin_inset Quotes erd -\end_inset - - in the code (from the german term Linienzugbeeinflussung, although this - is a completely different system), ensures that trains obey any restrictions - imposed by signals when influence points are set. - This way, it is not possible to pass signals at danger or to bypass speed - restrictions. -\end_layout - -\begin_layout Standard -It is possible to overrun red signals, if a route is cancelled while a train - is approaching. - Real interlocking systems use a mechanism called Approach locking for this, - however, as of now, there's no similar system in this mod. - If a red signal is overrun, the train brakes using emergency brake ( -\begin_inset Quotes eld -\end_inset - -BB -\begin_inset Quotes erd -\end_inset - -) and can not be moved any further. - You should then examine the situation and drive the train backwards out - of the section. -\end_layout - -\begin_layout Subsection -Simple route setting and cancelling -\end_layout - -\begin_layout Standard -To set a route, simply right-click the signal, select a route and click - -\begin_inset Quotes eld -\end_inset - -set route -\begin_inset Quotes erd -\end_inset - -. - If there are no conflicts, the signal turns green and the train is allowed - to proceed. -\end_layout - -\begin_layout Standard -It may be possible that the route can not be set, because one or more other - routes conflict with the current one, or a section is blocked. - In this case, the signal stays red, and the conflicting item is shown in - the formspec. - As soon as the conflict is resolved (by cancellation or release of the - conflicting route, or the section becoming free), the requested route will - be set and the signal turns green. -\end_layout - -\begin_layout Standard -If a route is either requested or set, it can be cancelled from the signalling - formspec. - This means that all turnouts and sections are released, and the signal - reverts back to red. - This of course only works when the train has not passed the signal yet. - There is no mechanism for Approach Locking. -\end_layout - -\begin_layout Subsection -Automatic Working -\end_layout - -\begin_layout Standard -Block signals on main running lines usually only have a single route to - set, the one proceeding along the main line. - Their purpose is only to show whether there are trains in the next section. - So, it would be convenient if this only route would set itself again after - a train passed. -\end_layout - -\begin_layout Standard -This is what Automatic Working is for. - Set a route, click -\begin_inset Quotes eld -\end_inset - -Enable Automatic Working -\begin_inset Quotes erd -\end_inset - -, and as soon as a train passes, the route is automatically re-set. -\end_layout - -\begin_layout Standard -This function is nearly identical to SimSig automatic signals. - It can also be useful on a line with high traffic, when there's a low-frequente -d access to a siding. - You'd enable automatic working for the main route and cancel it only when - you need a train to go into the siding. -\end_layout - -\begin_layout Subsection -Automatic Route Setting (ARS) -\end_layout - -\begin_layout Standard -As interlocking systems evolved, the goal always was to offload work from - the human to the system, automating things. - Modern interlocking systems can automatically set routes based on a pre-program -med routing table for each particular train. - Since one outstanding feature of Advtrains is it's high degree of automation, - it has a similar system to automatically set routes for a train depending - on certain parameters. -\end_layout - -\begin_layout Standard -Every train in Advtrains has 2 internal properties that can be set through - the Onboard Computer of every engine in the train, the -\begin_inset Quotes eld -\end_inset - -Line -\begin_inset Quotes erd -\end_inset - - and the -\begin_inset Quotes eld -\end_inset - -Routing Code -\begin_inset Quotes erd -\end_inset - - -\end_layout - -\begin_layout Itemize -The -\begin_inset Quotes eld -\end_inset - -Line -\begin_inset Quotes erd -\end_inset - - property is supposed to distinguish trains of multiple lines that share - a track. -\end_layout - -\begin_layout Itemize -The -\begin_inset Quotes eld -\end_inset - -Routing Code -\begin_inset Quotes erd -\end_inset - - property is supposed to tell the target of a train or which route it should - take to reach the target -\end_layout - -\begin_layout Standard -Examples: -\end_layout - -\begin_layout Standard -\begin_inset Graphics - filename lyx_img/arslin_ex1.png - -\end_inset - - -\end_layout - -\begin_layout Standard -Both lines share the section between Blackbirdshire and Parktown. - To divert them again, they can save their line number in the -\begin_inset Quotes eld -\end_inset - -Line -\begin_inset Quotes erd -\end_inset - - field. -\end_layout - -\begin_layout Standard -\begin_inset Graphics - filename lyx_img/arslin_ex2.png - -\end_inset - - -\end_layout - -\begin_layout Standard -Some trains should go to B, some to C, the direction can be set with a routing - code. -\end_layout - -\begin_layout Standard -One single routing code should not contain spaces. - You can set multiple routing codes by just separating them with spaces - in the Routing Code field. - So, -\begin_inset Quotes eld -\end_inset - -Stn Ori -\begin_inset Quotes erd -\end_inset - - would be matched by ARS rules either containing -\begin_inset Quotes eld -\end_inset - -Stn -\begin_inset Quotes erd -\end_inset - - or -\begin_inset Quotes eld -\end_inset - -Ori -\begin_inset Quotes erd -\end_inset - -. - This does not work for lines. -\end_layout - -\begin_layout Subsubsection -Writing ARS Rules -\end_layout - -\begin_layout Standard -Every route of every signal can be given a set of ARS rules. - A single ARS rule can either match a line or a routing code (combinations, - e.g. - and's, are not yet supported). - The first rule in the first route that matches any of the properties of - the train is selected, and that route is set for the train. -\end_layout - -\begin_layout Standard -\begin_inset Graphics - filename lyx_img/ars_ex1.png - -\end_inset - - -\end_layout - -\begin_layout Standard -You can add an asterisk ( -\begin_inset Quotes eld -\end_inset - -* -\begin_inset Quotes erd -\end_inset - -) to the ARS rules of one route. - That route then becomes the default route. -\end_layout - -\begin_layout Standard -If no explicit ARS rule matches the train, then the default route is chosen - and set. - If there is no default route, nothing happens and the signal remains red. -\end_layout - -\begin_layout Subsubsection -Using ARS -\end_layout - -\begin_layout Standard -In contrast to Automatic working, where the route is re-set immediately - after the train passed, ARS sets the route only when the train approaches - the signal, e.g. - is just about to start braking in front of it. -\end_layout - -\begin_layout Standard -At any place where one of the following things take place, you should use - the ARS system in favor of Automatic Working: -\end_layout - -\begin_layout Itemize -A main line diverts into 2 or more lines: Using ARS, you can direct the - trains along the line where they should go -\end_layout - -\begin_layout Itemize -Two or more main lines join into one: You cannot use automatic working here, - because all routes are tried to be set at the same time and it is a matter - of luck which one -\begin_inset Quotes eld -\end_inset - -wins -\begin_inset Quotes erd -\end_inset - -. - In a bad situation, you have a train coming from A, but it cannot proceed - because Signal B has won the -\begin_inset Quotes eld -\end_inset - -route race -\begin_inset Quotes erd -\end_inset - - into the shared section, even if there's no train coming from B. - Using ARS, by just specifying the -\begin_inset Quotes eld -\end_inset - -default route -\begin_inset Quotes erd -\end_inset - - by a *, the inward route is only set when a train approaches. -\end_layout - -\begin_layout Itemize -Complex intersections, which are probably a combination of the above two -\end_layout - -\begin_layout Itemize -sometimes-used branching tracks on which only certain trains (with certain - routing code or line) should head off, like the entrance to a factory where - only one specific goods train should drive in. -\end_layout - -\begin_layout Standard -In the route overview, you can see some information on the ARS settings: - All routes that have ARS rules are highlighted red, the -\begin_inset Quotes eld -\end_inset - -default route -\begin_inset Quotes erd -\end_inset - - is highlighted green. -\end_layout - -\begin_layout Standard -ARS does not affect signals which already have a route set, and signals - which are operating under -\begin_inset Quotes eld -\end_inset - -Automatic Working -\begin_inset Quotes erd -\end_inset - -. -\end_layout - -\begin_layout Section -Final notes -\end_layout - -\begin_layout Standard -The interlocking system is mainly finished, though there are still some - plans and ideas. - They include: -\end_layout - -\begin_layout Itemize -Signalbox panels, as revival of itrainmap -\end_layout - -\begin_layout Itemize -Distant signals -\end_layout - -\begin_layout Itemize -On-Train head-up display for oncoming signals (they have something like - this in Czech Republic, I forgot how it's called.) -\end_layout - -\begin_layout Standard -Apart from this, there's the large oncoming project of a new timetable-based - train automation system, but this will take some time to evolve and is - out of the scope of this document. -\end_layout - -\begin_layout Standard -If you have any suggestions, corrections, improvements, criticism or cute - kittens and stuff, you can always contact me by various means (Forum PM, - E-Mail (orwell@bleipb.de), Linuxworks server chat a.s.o.). - Have fun! -\end_layout - -\begin_layout Standard -- orwell -\end_layout - -\end_body -\end_document |