From: <jac...@us...> - 2014-06-11 13:28:19
|
Revision: 26256 http://sourceforge.net/p/jmri/code/26256 Author: jacobsen Date: 2014-06-11 13:28:04 +0000 (Wed, 11 Jun 2014) Log Message: ----------- signal help update from Egbert Bourse patch 977 Modified Paths: -------------- trunk/jmri/help/en/html/apps/DispatcherPro/Sidebar trunk/jmri/help/en/html/apps/Sidebar trunk/jmri/help/en/html/tools/Sidebar trunk/jmri/help/en/html/tools/Signals.shtml trunk/jmri/help/en/html/tools/index.shtml trunk/jmri/help/en/html/tools/signaling/AspectSignaling.shtml trunk/jmri/help/en/html/tools/signaling/Sidebar trunk/jmri/help/en/html/tools/signaling/SignalMastLogic.shtml trunk/jmri/help/en/html/tools/signaling/SignalMasts.shtml trunk/jmri/help/en/html/tools/signaling/index.shtml trunk/jmri/help/en/package/jmri/jmrit/ToolsMenu.shtml trunk/jmri/help/en/package/jmri/jmrit/beantable/SignalAddEdit.shtml trunk/jmri/help/en/package/jmri/jmrit/beantable/SignalGroupAddEdit.shtml trunk/jmri/help/en/package/jmri/jmrit/beantable/SignalHeadTable.shtml trunk/jmri/help/en/package/jmri/jmrit/beantable/SignalMastAdd.png trunk/jmri/help/en/package/jmri/jmrit/beantable/SignalMastAddEdit.shtml trunk/jmri/help/en/package/jmri/jmrit/beantable/SignalMastLogicTable.shtml trunk/jmri/help/en/package/jmri/jmrit/beantable/SignalMastRepeater.shtml trunk/jmri/help/en/package/jmri/jmrit/beantable/SignalMastTable.shtml trunk/jmri/help/en/package/jmri/jmrit/blockboss/BlockBossFrame.shtml trunk/jmri/help/en/package/jmri/jmrit/signalling/EntryExitFrame.shtml trunk/jmri/help/fr/html/tools/Signals.shtml Added Paths: ----------- trunk/jmri/help/en/html/Sidebar trunk/jmri/help/en/html/tools/signaling/Naming erratum readme.txt trunk/jmri/help/en/html/tools/signaling/SignalHeads.shtml trunk/jmri/help/en/html/tools/signaling/SignalingSetup.shtml trunk/jmri/help/en/html/tools/signaling/images/AAR-2Clear.png trunk/jmri/help/en/html/tools/signaling/images/Panel1Stop.png trunk/jmri/help/en/html/tools/signaling/images/Panel2Approach.png trunk/jmri/help/en/images/SE8cExampleLogic.png trunk/jmri/help/en/package/jmri/jmrit/beantable/AddEditSignalingLogic.shtml trunk/jmri/help/en/package/jmri/jmrit/beantable/LogixSignalHeadVariable.png trunk/jmri/help/en/package/jmri/jmrit/beantable/SignalGroupAdd.png trunk/jmri/help/en/package/jmri/jmrit/beantable/SignalGroupsTable.png trunk/jmri/help/en/package/jmri/jmrit/beantable/SignalHeadAdd1.png trunk/jmri/help/en/package/jmri/jmrit/beantable/SignalHeadAdd2.png trunk/jmri/help/en/package/jmri/jmrit/beantable/SignalHeads.png trunk/jmri/help/en/package/jmri/jmrit/beantable/SignalMastEdit.png trunk/jmri/help/en/package/jmri/jmrit/beantable/SignalMastLogic.png trunk/jmri/help/en/package/jmri/jmrit/beantable/SignalMastLogicAdd.png trunk/jmri/help/en/package/jmri/jmrit/beantable/SignalMasts-num.png trunk/jmri/help/en/package/jmri/jmrit/beantable/SignalMasts.png trunk/jmri/help/en/package/jmri/jmrit/beantable/SignalPairsEdit.png trunk/jmri/help/en/package/jmri/jmrit/beantable/SignalingPairs.png trunk/jmri/help/en/package/jmri/jmrit/beantable/jmriScriptWindow.png trunk/jmri/help/en/package/jmri/jmrit/blockboss/SimpleSignalExample.shtml trunk/jmri/help/en/package/jmri/jmrit/blockboss/images/SSLogic.png trunk/jmri/help/en/package/jmri/jmrit/signalling/AddEditSignalingLogic.shtml Added: trunk/jmri/help/en/html/Sidebar =================================================================== --- trunk/jmri/help/en/html/Sidebar (rev 0) +++ trunk/jmri/help/en/html/Sidebar 2014-06-11 13:28:04 UTC (rev 26256) @@ -0,0 +1,58 @@ +<!-- Sidebar --> + <hr class="hide"> + <div id="mBody"> + <div id="side"> <!-- Block of text on left side of page --> + <div style="text-align: center">JMRI is...</div> + <dl> + + <dt><h3><a href="index.shtml">General Tools</a></h3></dt> + <dd>JMRI provides powerful tools for working with your + layout. + <UL> + <LI><dfn><a href="Sensors.shtml">Sensors</a></dfn> + <LI><dfn><a href="Turnouts.shtml">Turnouts</a></dfn> + <LI><dfn><a href="throttle/ThrottleMain.shtml">Throttles</a></dfn> + <LI><dfn><a href="consisttool/ConsistTool.shtml">Consisting</a></dfn> + <LI><dfn><a href="signaling/index.shtml">Signals</a></dfn> + <LI><dfn><a href="Lights.shtml">Lights</a></dfn> + <LI><dfn><a href="Routes.shtml">Routes</a></dfn> + <LI><dfn><a href="LRoutes.shtml">LRoutes</a></dfn> + <LI><dfn><a href="Logix.shtml">Logix</a></dfn> + <LI><dfn><a href="fastclock/index.shtml">Fast Clocks</a></dfn> + <LI><dfn><a href="speedometer/index.shtml">Speedometer</a></dfn> + <LI><dfn><a href="scripting/index.shtml">Scripting</a></dfn> + <LI><dfn><a href="Audio.shtml">Audio</a></dfn> + <LI><dfn><a href="IdTags.shtml">Id Tags</a></dfn> + </UL> + </dd> + + <dt><h3><a href="../apps/LocoTools/index.shtml">LocoNet Tools</a></h3></dt> + <dd> A set of Digitrax LocoNet specific tools + <UL> + <LI><dfn>LocoNet monitor</dfn> + <LI><dfn>Slot monitor</dfn> + <LI><dfn>Packet source</dfn> + <LI><dfn>PM4 programmer</dfn> + <LI><dfn>BDL16 programmer</dfn> + <LI><dfn>LocoIO programmer</dfn> + </UL> + </dd> + + <dt><h3><a href="automation">Layout Automation</a></h3></dt> + <dd>JMRI can be used to automate parts + of your layout, from simply controlling a crossing gate + to running trains in the background. + <UL> + <LI><dfn><a href="signaling/index.shtml">Signaling</a></dfn> + <LI><dfn><a href="EntryExit.shtml">Entry Exit (NX)</a></dfn> + <LI><dfn><a href="Routes.shtml">Routes</a></dfn> + <LI><dfn><a href="fastclock/index.shtml">Fast Clocks</a></dfn> + <LI><dfn><a href="scripting/index.shtml">Scripting</a></dfn> + </UL> + </dd> + + </dl> + + </div> <!-- closes #side --> + +<!-- /Sidebar --> Modified: trunk/jmri/help/en/html/apps/DispatcherPro/Sidebar =================================================================== --- trunk/jmri/help/en/html/apps/DispatcherPro/Sidebar 2014-06-11 13:16:18 UTC (rev 26255) +++ trunk/jmri/help/en/html/apps/DispatcherPro/Sidebar 2014-06-11 13:28:04 UTC (rev 26256) @@ -13,6 +13,7 @@ <dt><h3>Other Useful Info</h3></dt><DD><UL> <LI><a HREF="../../tools/Sensors.shtml">Sensors</a> +<LI><A HREF="../../tools/signaling/index.shtml">Signals</a> <LI><A HREF="../../tools/Routes.shtml">Routes</a> <LI><A HREF="../../tools/fastclock/index.shtml">Fast Clocks</a> <LI><A HREF="../../doc/Technical/TurnoutFeedback.shtml">Turnout Feedback</a> Modified: trunk/jmri/help/en/html/apps/Sidebar =================================================================== --- trunk/jmri/help/en/html/apps/Sidebar 2014-06-11 13:16:18 UTC (rev 26255) +++ trunk/jmri/help/en/html/apps/Sidebar 2014-06-11 13:28:04 UTC (rev 26256) @@ -27,6 +27,7 @@ <UL> <LI><dfn><a href="../tools/throttle/ThrottleMain.shtml">Throttles</a></dfn> <LI><dfn><a href="../tools/consisttool/ConsistTool.shtml">Consisting</a></dfn> + <LI><dfn><a href="../tools/signaling/index.shtml">Signals</a></dfn> <LI><dfn><a href="../tools/Lights.shtml">Lights</a></dfn> <LI><dfn><a href="../tools/Routes.shtml">Routes</a></dfn> <LI><dfn><a href="../tools/Logix.shtml">Logix</a></dfn> Modified: trunk/jmri/help/en/html/tools/Sidebar =================================================================== --- trunk/jmri/help/en/html/tools/Sidebar 2014-06-11 13:16:18 UTC (rev 26255) +++ trunk/jmri/help/en/html/tools/Sidebar 2014-06-11 13:28:04 UTC (rev 26256) @@ -13,7 +13,7 @@ <LI><dfn><a href="Turnouts.shtml">Turnouts</a></dfn> <LI><dfn><a href="throttle/ThrottleMain.shtml">Throttles</a></dfn> <LI><dfn><a href="consisttool/ConsistTool.shtml">Consisting</a></dfn> - <LI><dfn><a href="Signals.shtml">Signals</a></dfn> + <LI><dfn><a href="signaling/index.shtml">Signaling</a></dfn> <LI><dfn><a href="Lights.shtml">Lights</a></dfn> <LI><dfn><a href="Routes.shtml">Routes</a></dfn> <LI><dfn><a href="LRoutes.shtml">LRoutes</a></dfn> Modified: trunk/jmri/help/en/html/tools/Signals.shtml =================================================================== --- trunk/jmri/help/en/html/tools/Signals.shtml 2014-06-11 13:16:18 UTC (rev 26255) +++ trunk/jmri/help/en/html/tools/Signals.shtml 2014-06-11 13:28:04 UTC (rev 26256) @@ -33,75 +33,11 @@ <H1> JMRI: Signal Head Documentation </H1> - -Signals (or more formally Signal Heads) are how JMRI represents and -controls signal heads on a layout. They are a specific kind of -output device that can be set to various colors: Red, Yellow, Green, Flashing Yellow, etc. - <p> -Much more information about JMRI signaling is available -from the -<a href="signaling/index.shtml">JMRI signaling help page</a>. - -<a name="table"><h3>The Signal Head Table</h3></a> - -<A href="./images/SigTable.gif"><IMG SRC="./images/SigTable.gif" ALIGN=RIGHT WIDTH="149" HEIGHT="179" HSPACE="0" VSPACE="0" ALT="Simple Signal Logic panel figure"></a> -<!-- The following section is taken from, and should be kept consistent with --> -<!-- help/en/package/jmri/jmrit/beantable/SignalHeadTable.html --> - -All the signal heads that JMRI knows about can be referenced -using the "Signal Head Table" tool in the Tools menu of JMRI programs. -<p> -For more information on configuring and operating signals with the Signal Head -Table, please see the -<a href="../../package/jmri/jmrit/beantable/SignalHeadTable.shtml">Signal Head Table help page</a>. - -<a name="add"><h3>Creating a Signal Head</h3></a> -<A href="./images/SigAdd.gif"><IMG SRC="./images/SigAdd.gif" ALIGN=RIGHT WIDTH="181" HEIGHT="218" HSPACE="0" VSPACE="0" ALT="Simple Signal Logic panel figure"></a> - -<!-- The following section is taken from, and should be kept consistent with --> -<!-- help/en/package/jmri/jmrit/beantable/SignalAddEdit.html --> - -<P>To define a new signal head, click on the <b>Add New Signal Head</b> button in the Signal Head Table. -It will -prompt you for the signal head type (controlled by turnout outputs; SE8c; etc), and -whatever setup information is needed for your choice. -There's more information on the -<a href="../../package/jmri/jmrit/beantable/SignalAddEdit.shtml">help page on adding signal heads</a>. - -<a name="edit"><h3>Editing an Existing Signal Head</h3> - -<P>Once a signal head has been defined, you currently can't change -it's type directly from the program. -This is a requested -capability, and someday somebody will probably write it. -In the meantime, you can just ignore signal heads that you've defined -and don't want to use; they don't hurt anything. -Or you can edit your saved configuration files to remove the entire -line containing the signal definition; look for the name of the signal -to locate the right line. Note that you need to remove the entire line, and -not leave any part of it, especially the opening and closing brackets. Save -a copy of the file as a backup first! - -<h3>Controlling a Signal Head</h3> - -Signal heads can be controlled various ways by JMRI, including -<ul> -<LI><a href="signaling/index.shtml">Simple Signal Logic</a>, for basic ABS signaling of the North American type -<li><a href="Logix.shtml">Logix</a>, a graphical way of controlling signal heads with simple logic -<li>JMRI <a href="scripting/index.shtml">scripts</a>, using a full programming language to do whatever you'd like -</UL> - -<h2>Saving and Reloading Configuration</h2> - -The signal head information is saved with the configuration in an XML file, along -with control panel setup and similar stuff. For more information -on creating and displaying panels, including how to show signal heads -on your panels, -please see the -<A HREF="../apps/PanelPro/Panels.shtml">Panels pages</a>. - - +All information about JMRI Signaling is available from the +<a href="signaling/index.shtml">JMRI Signaling main help page</a>. + <!-- Keep file in place to receive old hyperlinks, but no content on this page, just a pointer to the 2014 starting point for JMRI Signaling, help/en/html/tools/signaling/index.shtml --> + <!--#include virtual="/Footer" --> </div><!-- closes #mainContent--> Modified: trunk/jmri/help/en/html/tools/index.shtml =================================================================== --- trunk/jmri/help/en/html/tools/index.shtml 2014-06-11 13:16:18 UTC (rev 26255) +++ trunk/jmri/help/en/html/tools/index.shtml 2014-06-11 13:28:04 UTC (rev 26256) @@ -7,7 +7,7 @@ </TITLE> <META http-equiv=Content-Type content="text/html; charset=iso-8859-1"> - <META content="Bob Jacobsen" name=Author> + <META name="Author" content="Bob Jacobsen"> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <meta name="keywords" @@ -30,26 +30,27 @@ <div id="mainContent"> <!-- Page Body --> - <H2> - JMRI: General Tools - </H2> + <h1> + JMRI: Tools + </h1> - <P> - JMRI provides several tools that are optimized for - specific purposes. General tools: +<p> JMRI provides several tools that are optimized for specific purposes. + +<h2>General tools</h2> + <p>The following tools in the Tools menu work with most DCC hardware connections: <dl> - <dt><h3><a href="Sensors.shtml">Sensors</a></h3></dt> + <dt><h3><a href="Turnouts.shtml">Turnouts</a></h3></dt> <dd> - A Sensor is JMRI's way of representing an input from the layout. + JMRI calls just about any output to the layout a "Turnout". The Turnout object has 2 states: Closed (On) and Thrown (Off). <br/>For outputs such as <a href="#lights">Lights</a> and <a href="#signals">Signals</a> JMRI provides special objects (see below). </dd> - <dt><h3><a href="Turnouts.shtml">Turnouts</a></h3></dt> + <dt><h3><a href="Sensors.shtml">Sensors</a></h3></dt> <dd> - JMRI calls just about any output to the layout a "Turnout". + A Sensor is JMRI's way of representing an input from the layout. </dd> - <dt><h3><a href="throttle/ThrottleMain.shtml">Throttles</a></h3></dt> + <dt><h3><a href="throttle/ThrottleMain.shtml">Throttles</a></h3></dt> <dd> You can open multiple software throttles to run your DCC locomotives. @@ -60,16 +61,8 @@ JMRI provides tools for managing locomotive consists. </dd> - <dt><h3><a href="Signals.shtml">Signals</a></h3></dt> + <dt><h3><a name="lights" href="Lights.shtml">Lights</a></h3></dt> <dd> - Signals (or more formally SignalHeads) are how JMRI represents - and controls signal heads on a layout. - They are a specific kind of output device that can be set to various - colors: Red, Yellow, Green, Flashing Yellow, etc. - </dd> - - <dt><h3><a href="Lights.shtml">Lights</a></h3></dt> - <dd> Lights are digital output bits that function as on/off switches. Lights were created to provide easy control for fascia panel lights and scenery lighting. @@ -79,6 +72,24 @@ response to a fascia panel button. </dd> + <dt><h3><a name="signals" href="signaling/index.shtml">Signals</a></h3></dt> + <dd> + Signal Heads and Masts are how JMRI represents + and controls signals on a layout. + They are a specific kind of output device that can be set to various + Appearances (Red, Yellow, Green, Flashing Yellow, etc.) or Aspects (Stop, Clear, Approach limited etc.) following prototype rules. + </dd> + + <dt><h3><a href="Reporters.shtml">Reporters</a></h3></dt> + <dd> + Reporters are JMRI's way of representing information reported back from the layout and can contain arbitrary information. + </dd> + + <dt><h3><a href="Memories.shtml">Memory Variables</a></h3></dt> + <dd> + A JMRI Memory Variable can hold any type of object specified by the user. + </dd> + <dt><h3><a href="Routes.shtml">Routes</a></h3></dt> <dd> Routes are a tool for driving multiple turnouts when @@ -90,6 +101,17 @@ to set the route's outputs. </dd> + <dt><h3><a href="LRoutes.shtml">LRoutes</a></h3></dt> + <dd> + LRoutes extend the capabilities of Routes by + implementing them as a Logix. LRoutes can be defined + with an unlimited number of Sensors, Turnouts, Lights, + and/or SignalHeads for actions or controls. LRoutes + provide an easy starting point for creating new Logix + since thay may be extended to include any of the + Logix capabilities. + </dd> + <dt><h3><a href="Logix.shtml">Logix</a></h3></dt> <dd> A Logix is a tool for entering powerful logical @@ -102,22 +124,11 @@ controls of a Route. </dd> - <dt><h3><a href="LRoutes.shtml">LRoutes</a></h3></dt> - <dd> - LRoutes extend the capabilities of Routes by - implementing them as a Logix. LRoutes can be defined - with an unlimited number of Sensors, Turnouts, Lights, - and/or SignalHeads for actions or controls. LRoutes - provide an easy starting point for creating new Logix - since thay may be extended to include any of the - Logix capabilities. - </dd> - <dt><h3><a href="fastclock/index.shtml">Fast Clocks</a></h3></dt> - <DD> + <dd> JMRI can both provide various types of fast clocks on the computer screen, and also work with the - fast clocks already installed on your layout. + fast clocks already installed on your DCC layout. </dd> <dt><h3><a href="speedometer/index.shtml">Speedometer</a></h3></dt> @@ -126,43 +137,63 @@ locomotives. You can use this while setting them up, to catch speeders, or for whatever you'd like. </dd> - + + <dt><h3><a href="Audio.shtml">Audio</a></h3></dt> + <dd> + JMRI audio objects hold information about sounds that can be played-back by the computer. + </dd> + + <dt><h3><a href="../../package/jmri/jmrit/dispatcher/Dispatcher.shtml">Dispatcher</a></h3></dt> - <dd>The dispatcher tool provides functions and organizes information + <dd>The Dispatcher tool provides functions and organizes information relating to dispatching trains on a model railroad layout. It's main - function is allocation of sections of track to various trains running + function is the allocation of sections of track to various trains running around the layout. </dd> <dt><h3><a href="../../package/jmri/jmrit/operations/Operations.shtml">Operations</a></h3></dt> <dd> - The operations tool allows you to produce computer generated - manifests and switch lists for your railroad. + The Operations tool allows you to produce computer generated + manifests and switch lists for your railroad from lists of rolling stock, trains and destinations. </dd> - + </dl> + <h2><a href="../apps/LocoTools/index.shtml">LocoNet-specific Tools</a></h2> - A set of Digitrax LocoNet-specific tools: - <UL> - <LI><dfn>LocoNet monitor</dfn> - <LI><dfn>Slot monitor</dfn> - <LI><dfn>Packet source</dfn> - <LI><dfn>PM4 programmer</dfn> - <LI><dfn>BDL16 programmer</dfn> - <LI><dfn>SE8C programmer</dfn> - <LI><dfn>LocoIO programmer</dfn> - </UL> + <p>The following tools are available in the LocoNet menu when JMRI is connected to a (Digitrax) LocoNet DCC layout: <!-- As of version 3.7.3 --> + <ul> + <li><dfn>Monitor LocoNet</dfn> + <li><dfn>Monitor Slots</dfn> + <li><dfn>Monitor Clock</dfn> + <li><dfn>Monitor LocoNet Interface Statistics</dfn> + <li><dfn>Configuration Tools:</dfn></li> + <ul><li><dfn>Configure BDL16x</dfn> + <li><dfn>Configure LocoIO</dfn> + <li><dfn>Configure PM4x</dfn> + <li><dfn>Configure SE8c</dfn> + <li><dfn>Configure DS64</dfn> + <li><dfn>Configure Command Station</dfn> + <li><dfn>Configure LocoNet ID</dfn> + <li><dfn>Configure Duplex Group</dfn> + </ul> + <li><dfn>Send LocoNet Packet</dfn> + <li><dfn>Send Throttle Message</dfn> + <li><dfn>Select PR3 Mode</dfn> + <li><dfn>Download Firmware</dfn> + <li><dfn>Download Sounds</dfn> + <li><dfn>Edit Sound Project (SPJ) File</dfn> + <li><dfn>Start LocoNet Server</dfn> + </ul> - <h2><a href="scripting/index.shtml">Scripting</a></h2> - If there isn't a preprogrammed tool to do what you want, - you can almost certainly write a script that does exactly what's needed. - <P> - Instead of defining our own language, - <A HREF="scripting/index.shtml">JMRI scripting</a> + <h2><a href="scripting/index.shtml">Scripting JMRI</a></h2> + If JMRI lacks a preprogrammed tool to do what you want, + you can write a Script that does exactly what's needed, including user interaction. Instead of defining our own language, + <a HREF="scripting/index.shtml">JMRI Scripting</a> uses the - "Python" language that's commonly used in web development. Although it - will take you a little time to get used to it, in the end it provides + "Python" language that's commonly used in web development. Although it + will take a little time to get used to it, in the end it provides a lot of power to control your layout anyway you'd like. + <p>Run your own scripts or scripts shared by other JMRI user from the Panels > Run Script... menu. <!--#include virtual="/Footer" --> Modified: trunk/jmri/help/en/html/tools/signaling/AspectSignaling.shtml =================================================================== --- trunk/jmri/help/en/html/tools/signaling/AspectSignaling.shtml 2014-06-11 13:16:18 UTC (rev 26255) +++ trunk/jmri/help/en/html/tools/signaling/AspectSignaling.shtml 2014-06-11 13:28:04 UTC (rev 26256) @@ -4,6 +4,8 @@ <!-- Copyright Bob Jacobsen 2008 --> <!-- $Id$ --> <title>JMRI: Aspect Signaling</title> +<meta name="Author" content="Bob Jacobsen, Egbert Broerse"> +<meta name="Date.Modified" content="20140515"/> <!-- Style --> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> @@ -21,147 +23,162 @@ <div id="mainContent"> -<H1>JMRI: Aspect Signaling</H1> +<h1>JMRI: Aspect Signaling</h1> <p class=subtitle> -Controling signaling in a prototypical manner +Controlling model signals in a prototypical manner </p> <a href="images/Rule282.png"> <img src="images/Rule282.png" height="241" width="159" align="right"> </a> -Protoypical signal systems present "aspects" to the engineer + Protoypical signal systems present "<a href="index.shtml#aspect">Aspects</a>" to the engineer to tell him how to run his train. -The "Stop" aspect, for example, is pretty simple: Stop the train. +The "Stop" aspect, for example, is pretty simple: "Stop the train". The "Approach medium" aspect indicates something more complicated: "Proceed approaching next signal at medium speed". Each aspect has an associated "indication", which is usually -codified in the railroad's rule book. -<p> -Different signals may -show an aspect using different combinations of -lights, semaphore positions, and/or placards; these are called -"appearances". For example, the "stop" aspect will be a single red -light on a signal mast with one lamp, red over red lamps for a signal -mast with two lamps, etc. + codified in a railroad's Rule Book. + <p>The picture to the right shows an example, Rule 282 from the 1946 AAR rule book (Aspect: Approach Medium). <h2>JMRI Support for Aspect Signaling</h2> - -The original JMRI support for signals was via -"Signal Heads", which could be set to specific -appearances (colors). -<p> - -Starting with JMRI 2.9.1 (early 2010), -JMRI also contains -"<a href="SignalMasts.shtml">Signal Mast</a>" -objects that represent an -entire signal, not just an individual head. A Signal Mast -can operate multiple heads, as required to do full prototypical -signaling based on aspects. When its "Aspect" is set to -e.g. "Approach medium", it handles the layout operations -needed to make the signals on the layout appear properly. - -<p> -<a href="../../../package/jmri/jmrit/beantable/SignalMastTable.png"> - <img src="../../../package/jmri/jmrit/beantable/SignalMastTable.png" - height="86" width="338" align="right"> -</a> + <p>A collection of plain instructions let you set up <a href="SignalingSetup.shtml">Signaling in 7 Quick Steps</a>.</p> + <p>Aspect Signaling is supported in JMRI using three of the Signaling Tools:</p> + +<ul> +<li><b><a href="SignalMasts.shtml">Signal Mast</a></b> objects represent an entire signal with one or more Signal Heads. A Signal Mast +can operate all its Heads, as required to do full prototypical signaling based on aspects. When its Aspect is set to + e.g. "Approach medium", JMRI handles the layout communication needed to make the signal on the layout display the right colors.<br/> +<a href="../../../package/jmri/jmrit/beantable/SignalMasts.png"> + <img src="../../../package/jmri/jmrit/beantable/SignalMasts.png" + width="338" height="86" align="right"></a> Signal Masts are configured through the -<a href="../../../package/jmri/jmrit/beantable/SignalMastTable.shtml">Signal Mast Table</a> -You add new ones with the "Add..." button -on the table, which takes you to the -<a href="../../../package/jmri/jmrit/beantable/SignalMastAddEdit.shtml">"Add Signal Mast" window</a>. -To add a new signal mast, you specify -what kind of signaling system it uses -(see <a href="#systems">below</a>), -the specific signal type like "double searchlight" or "double head dwarf", -and what signal heads it's going to drive. - -<p> ->From the table, you can set individual signal masts to -any aspect that they're able to -display by clicking in the "Aspect" column. - -<p> -Signal Masts can be both tested (in Conditionals) and -set (in Actions) via Logix. When you're editing a Logix Conditional -or Action, you have to type the Signal Mast name and hit enter/return -so that the program can look up the possible aspects for that particular -signal mast. - -<p> -You can also add a Signal Mast icon in the Panel Editor in the usual -way. The icon will display the images from the appearance definition -for that particular signal mast. - -<h2>Signal Mast Logic</h2> -Starting with JMRI 2.11.7 (mid 2011), JMRI contains a "<a href="SignalMastLogic.shtml">Signal Mast Logic</a>" tool, that -allows the Signalling logic to be built up between Signal Masts on the layout. -The signal mast logic will use the states of blocks, turnouts, sensors and other -Signal Masts to determine what appearance a Signal Mast should be displaying. -<p> -If the layout has been drawn up on the layout editor and the SignalMasts have +<a href="../../../package/jmri/jmrit/beantable/SignalMastTable.shtml">Signal Masts Table</a>. You add new ones with the "Add..." button +below the table, which takes you to the <a href="../../../package/jmri/jmrit/beantable/SignalMastAddEdit.shtml">"Add Signal Mast" window</a>. +There you specify what kind of signaling system is to be used (see <a href="#systems">the list below</a>), +the specific signal type eg. "double searchlight" or "double head dwarf" and which Signal Heads this Mast is going to drive. +<br/> + You can add a Signal Mast icon in the Panel Editor by right clicking at any location and choosing "Add item > Signal Mast".<br/> + In Layout Editor enter the Signal Mast address and shift click on a turnout or anchor point on the panel where you want to place a Signal. The Signal Mast icon will display the images specified in the appearance definition for that particular Signal Mast type and system. The Signal icons displayed on your panel are part of a Signal System and they can't be changed individually by the user like Turnout icons.<br/> + Image on the right: Rule 281 Signal Icons from the AAR-2 Signal System. <!-- icons from AAR-2 xml appearance definition xml March 2014 --> <a href="http://jmri.org/xml/signals/AAR-1946/aspects.xml"><img src="images/AAR-2Clear.png" width="187" height="187" align="right" border="1"></a><br/> + </li> +<li><b><a href="../../../package/jmri/jmrit/beantable/SignalGroupAddEdit.shtml">Signal Groups</a></b> are used to define a number of Signal Heads, where only one Signal Head can be illuminated at any given time, depending upon the state of the associated Signal Mast and a set of conditions.<br/> + Signal Groups would be used where additional indicators are used to support the main Signal Mast, such as Junction, Route or Speed displays. These indicators provide additional information to the driver (US: Engineer) that is not given by the main Signal Mast. Such indicators are frequently seen in European and UK signaling.</li> + +<li>The <b><a href="SignalMastLogic.shtml">Signal Mast Logic</a></b> tool +allows the Signaling Logic to be built up as pairs of conditionals between Signal Masts on the layout. +The Signal Mast Logic will use the states of Blocks, Turnouts, Sensors and adjacent +Signal Masts to determine what Aspect a Signal Mast should be displaying. + <br/> +If the layout has been drawn up using the Layout Editor and Signal Masts have been placed on the panel using the various tools, then it is possible for all -the Signal Mast logic to be dynamically built, with little other user interaction. -<h2>Available Signaling Systems</h2> + the Signal Mast Logic to be dynamically built, with little user intervention. For panels created with Control Panel Editor some of this information is to be entered manually.</li> + </ul> + <p><b><a href="SignalHeads.shtml">Signal Head</a></b> objects in JMRI are not aware of their position on a mast and the Signaling System they are part of, so as individual objects they can't show Signal Aspects. They can only be set to specific <a href="index.shtml#appearance">Appearances</a> (colors), either from the Signal Heads Table or via Logix.</p> -JMRI users have provided a number of pre-defined signal systems: + <img src="images/Panel1Stop.png" width="185" height="135" border="1"> <img src="images/Panel2Approach.png" width="185" height="135" border="1"><br/> +Signal 4B showing the "Stop" Aspect when sensor OD1 is Active (at left) and "Approach Diverging" when the next block is empty (at right). + +<a id="systems"><h2>Available Signal Systems</h2></a> +<!-- checked for JMRI version 3.6, April 2014 --> +JMRI users have provided the following pre-defined Aspect Signal Systems: <dl> -<dt><a href="../../../../../xml/signals/basic/index.shtml">basic</a> +<dt><a href="../../../../../xml/signals/basic/index.shtml">Basic</a> <dd>A non-prototypical set of aspects and appearances that most model railroaders will understand easily. <dt><a href="../../../../../xml/signals/AAR-1946/index.shtml">AAR-1946</a> <dd>American Association of Railroads 1946 rule book -<dt><a href="../../../../../xml/signals/BN-1989/index.shtml">BN-1989</a> - <dd>Burlington Northern 1989 rule book +<dt><a href="../../../../../xml/signals/Amtrak-2010/index.shtml">Amtrak-2010</a> + <dd>Amtrak Northeast Corridor Color Position Light signals -<dt><a href="../../../../../xml/signals/BR-2003/index.shtml">BR-2003</a> + <dt><a href="../../../../../xml/signals/BN-1989/index.shtml">BN-1989</a> + <dd>Burlington Northern Oct. 1989 rule book + +<dt><a href="../../../../../xml/signals/BNSF-1996/index.shtml">BNSF-1996</a> + <dd>BNSF Railway 1996 rule book + + <dt><a href="../../../../../xml/signals/BR-2003/index.shtml">BR-2003</a> <dd>British Rail 2003 rule book -<dt><a href="../../../../../xml/signals/CSX-1998/index.shtml">CSX-1998</a> - <dd>CSX 1998 rule book +<dt><a href="../../../../../xml/signals/CROR-2008/index.shtml">CROR-2008</a> + <dd>Transport Canada (TC) 2008 O-0-93 rule book + <dt><a href="../../../../../xml/signals/CSX-1998/index.shtml">CSX-1998</a> + <dd>CSX 1998 rule book<br/> + (<i>Some errors in aspect mapping, not finished as of JMRI 3.6.</i>) + <dt><a href="../../../../../xml/signals/DB-HV-1969/index.shtml">DB HV 1969</a> - <dd>1969 Deutsche Bundesbahn "Einheitsbauform" Home Signal/Distant signal (Hauptsignal/Vorsignal) system revision + <dd>1969 Deutsche Bundesbahn "Einheitsbauform" Home Signal/Distant signal (Hauptsignal/Vorsignal) system revision<br/> + (<i>Missing aspect mapping, not finished as of JMRI 3.6.</i>) -<dt><a href="../../../../../xml/signals/NYCS-1937/index.shtml">NYCS-1937</a> - <dd>New York Central System 1937 rule book +<dt><a href="../../../../../xml/signals/GWR-1931/index.shtml">GWR-1931</a> + <dd>Great Western Railway 1931 searchlight signals (British) -<dt><a href="../../../../../xml/signals/NS-2008/index.shtml">NS-2008</a> +<dt><a href="../../../../../xml/signals/InfraBel-2013/index.shtml">InfraBel-2013</a> + <dd>Belgian Railways, taken from Wikipedia, current as of 2013 + +<dt><a href="../../../../../xml/signals/LMS-1932/index.shtml">LMS-1932</a> + <dd>Complete London, Midland and Scottish Railway speed signaling from 1932-1988 (British) + + <dt><a href="../../../../../xml/signals/NS-2008/index.shtml">NS-2008</a> <dd>Norfolk Southern Corporation Operating rules book (NORAC) + <dt><a href="../../../../../xml/signals/NYCS-1937/index.shtml">NYCS-1937</a> + <dd>New York Central System 1937 rule book + + <dt><a href="../../../../../xml/signals/NYC-1956/index.shtml">NYC-1956</a> + <dd>From the New York Central System publication "Rules of the Operating Department, Effective October 28, 1956." + + <dt><a href="../../../../../xml/signals/ProRail-1954/index.shtml">ProRail-1954</a> + <dd>1954 Prorail rule book, still in use in 2014 (Netherlands) + +<dt><a href="../../../../../xml/signals/RG-1965/index.shtml">RG-1965</a> + <dd>1965 Rio Grande Rules of the Operating Department + <dt><a href="../../../../../xml/signals/SLSF-1973/index.shtml">SLSF-1973</a> - <dd>SLSF (Frisco) 1973 rule book + <dd>St. Louis - San Francisco Railroad (Frisco) 1973 rule book + <br>(<i>Missing some icons, not finished as of JMRI 3.6.</i>) -<dt><a href="../../../../../xml/signals/SPTCO-1930/index.shtml">SPTCO-1930</a> + <dt><a href="../../../../../xml/signals/SPTCO-1930/index.shtml">SPTCO-1930</a> <dd>Southern Pacific Railway and Transportation Company 1930 rule book <dt><a href="../../../../../xml/signals/SPTCO-1960/index.shtml">SPTCO-1960</a> <dd>Southern Pacific Railway and Transportation Company 1960 rule book + + <dt><a href="../../../../../xml/signals/UP-2008/index.shtml">UP-2008</a> + <dd>Union Pacific Railroad 2008 rule book + <br> </dl> -There are instructions for creating your own signal system -definitions on -<a href="DefineNewAspects.shtml">a separate page</a>. + <p>To create your own Signaling System +Definition follow these <a href="DefineNewAspects.shtml">Instructions</a>. If you do create a new definition for another prototype railroad or era, -please contribute it back to the JMRI project so we +after testing please contribute it back to the JMRI project so we can distribute it with future releases of the project for -others to use. Like decoder definitions in DecoderPro, the -more signal system definitions we have, the more useful the program +others to use. Like Decoder Definitions in DecoderPro, the +more Signal System Definitions we have, the more useful the program becomes, and the more people spend time to improve it. We all win that way! -<h2>Access to Aspect Information from Code</h2> +<h2>Code Access to Aspect Information</h2> -A program (in Java or Python) can get access to -aspect information two ways. If it has a reference -to a specific SignalMast "m", it can use + <h3>Logix</h3> + <p> +Signal Masts can be both tested (in Conditionals) and +set (in Actions) via Logix. When you're editing a Logix Conditional +or Action, you have to type the Signal Mast name and hit enter/return +so that the program can look up the available Aspects for that particular +Signal Mast. + + <a name="mastscripting"><h3>Scripting</h3></a> +<p> + A program (in Java or Python) can get access to +Aspect information in two ways. If the code has a reference to a specific Signal Mast "m", it can use <code><pre> m.getValidAspects() </pre></code> -to get the list of aspect names that this signal mast can display. -The program can then access the signal system definition with +to get the list of aspect names that this Signal Mast can display. +The program can then access the Signal System definition with <code><pre> SignalSystem sys = m.getSignalSystem() </pre></code> @@ -172,33 +189,34 @@ where the first argument is the aspect name (use, for example, <code>m.getAspect()</code> to obtain the current one on the mast) and the second is a specific property. -Properties can be defined programatically via e.g. +Properties can be defined programmatically via e.g. <code>m.setProperty("Clear","speed","69");</code> or get loaded automatically from elements in the <a href="DefineNewAspects.shtml">aspect.xml</a> file that defines the specific signal system. <p> -In addition to the global properties for an aspect, there -can also be properties local to a specific Signal Mast type. +In addition to the global properties for an Aspect, there +can also be local properties to a specific Signal Mast type. An example of this is the default icon image: The image for a -two-head signal mast is different from that for a one-head signal mast, +two-head Signal Mast is different from that for a one-head Signal Mast, even if they both represent "Clear". <p> To get those: <code><pre> m.getAppearanceMap().getProperty("Clear","imagelink"); </pre></code> -In words, this is saying "Get the appeance info for this mast, +In words, this is saying "Get the Appeance info for this Signal Mast, and then check the imagelink property of the Clear aspect". <p> -Alternately, if you know the name of the signal system in use, -you can go directly to it via the InstanceManager: +Alternatively, if you know the name of the Signal System in use, +a program can access it directly via the InstanceManager: <code><pre> SignalSystem sys = InstanceManager.signalSystemManagerInstance().getSystem("basic"); </pre></code> + <p>Back to the <a href="index.shtml">Signaling main help page</a>. <!--#include virtual="/Footer" --> </body> </html> Added: trunk/jmri/help/en/html/tools/signaling/Naming erratum readme.txt =================================================================== --- trunk/jmri/help/en/html/tools/signaling/Naming erratum readme.txt (rev 0) +++ trunk/jmri/help/en/html/tools/signaling/Naming erratum readme.txt 2014-06-11 13:28:04 UTC (rev 26256) @@ -0,0 +1,19 @@ +File naming erratum +Because SHTML file names and paths cannot be corrected after they are created in the JMRI code, the following files will retain their (wrongly spelled) names: + +jmri/help/en/tools/signaling/ + + +jmri/help/en/package/jmri/jmrit/beantable/ +SHTML files: +- SignalAddEdit.shtml: describes (only) SignalHeadAddEdit, newer files describe the Signal Masts and Groups so it might in retrospect have been named SignalHeadAddEdit; +- SignalGroupAddEdit.shtml: describes the Signal Groups (plural) Table (and AddEdit); +- SignalGroup.shtml (should read: SignalGroupsTable.shtml, plural as in the name go the Table). + +jmri/help/en/package/jmri/jmrit/signalling/ +- The folder itself would be named signaling (1 L) in US english, the spelling for all english help content in JMRI. The double L reveals a British contributor; +- AddEditSignalingLogic.shtml: a full duplicate of the identically named file in the ../beantable/ directory. Keep it up to date! +- SignalingSourceFrame.shtml: the window described on this page is no longer available within JMRI as of version 2.7.3 (2014). + + +JMRI Egbert Broerse, May 2014 \ No newline at end of file Property changes on: trunk/jmri/help/en/html/tools/signaling/Naming erratum readme.txt ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/html \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +CRLF \ No newline at end of property Modified: trunk/jmri/help/en/html/tools/signaling/Sidebar =================================================================== --- trunk/jmri/help/en/html/tools/signaling/Sidebar 2014-06-11 13:16:18 UTC (rev 26255) +++ trunk/jmri/help/en/html/tools/signaling/Sidebar 2014-06-11 13:28:04 UTC (rev 26256) @@ -8,14 +8,13 @@ <dt><h3><a href="index.shtml">Signaling</a></h3></dt> <dd>Adding signals to your layout with JMRI. <UL> - <LI><dfn><a href="IntroToSignalingYourMRR.html">Introduction</a></dfn> - <LI><dfn><a href="SimpleSignalExample.shtml">Simple Signal Example</a></dfn> - <LI><dfn><a href="Logic.shtml">Logic</a></dfn> - <LI><dfn><a href="AspectSignaling.shtml">Aspect (Prototypical) Signaling</a></dfn> - <LI><dfn><a href="../Signals.shtml">Signal Heads</a></dfn> + <LI><dfn><a href="SignalSetup.shtml">Signaling Quick Start</a></dfn> + <LI><dfn><a href="AspectSignaling.shtml">Aspect Signaling</a></dfn> + <LI><dfn><a href="SignalHeads.shtml">Signal Heads</a></dfn> <LI><dfn><a href="SignalMasts.shtml">Signal Masts</a></dfn> - <LI><dfn><a href="ldt/output.shtml">LDT Signals</a></dfn> - <LI><dfn><a href="interlock/index.shtml">Entry Exit & Interlocking</a></dfn> + <LI><dfn><a href="SignalGroups.shtml">Signal Groups</a></dfn> + <LI><dfn><a href="SignalMastLogic.shtml">Signal Mast Logic</a></dfn> + <LI><dfn><a href="interlock/index.shtml">Entry Exit & Interlocking</a></dfn> </UL> </dd> @@ -27,7 +26,7 @@ <LI><dfn><a href="../Turnouts.shtml">Turnouts</a></dfn> <LI><dfn><a href="../throttle/ThrottleMain.shtml">Throttles</a></dfn> <LI><dfn><a href="../consisttool/ConsistTool.shtml">Consisting</a></dfn> - <LI><dfn><a href="../Signals.shtml">Signals</a></dfn> + <LI><dfn><a href="../Signaling/index.shtml">Signaling</a></dfn> <LI><dfn><a href="../Lights.shtml">Lights</a></dfn> <LI><dfn><a href="../Routes.shtml">Routes</a></dfn> <LI><dfn><a href="../Logix.shtml">Logix</a></dfn> Added: trunk/jmri/help/en/html/tools/signaling/SignalHeads.shtml =================================================================== --- trunk/jmri/help/en/html/tools/signaling/SignalHeads.shtml (rev 0) +++ trunk/jmri/help/en/html/tools/signaling/SignalHeads.shtml 2014-06-11 13:28:04 UTC (rev 26256) @@ -0,0 +1,94 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> +<!-- $Id: Signals.shtml 22290 2013-01-06 20:27:31Z jacobsen $ --> +<html lang="en"> +<head> + <TITLE> + JMRI: Signal Heads Documentation + </TITLE> + <meta http-equiv=Content-Type content="text/html; charset=iso-8859-1"> + +<meta name="Author" content="Bob Jacobsen, Egbert Broerse"> +<meta name="Date.Modified" content="20140515"/> + <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> + <meta name="keywords" + content="turnout model railroad JMRI decoderpro panelpro"> + +<!-- Style --> + <META http-equiv=Content-Type content="text/html; charset=iso-8859-1"> + <link rel="stylesheet" type="text/css" href="/css/default.css" media="screen"> + <link rel="stylesheet" type="text/css" href="/css/print.css" media="print"> + <link rel="icon" href="/images/jmri.ico" type="image/png"> + <link rel="home" title="Home" href="/"> +<!-- /Style --> +</head> + +<body> + <div id="container"> + +<!--#include virtual="/Header" --> +<!--#include virtual="Sidebar" --> + + <div id="mainContent"> + <!-- Page Body --> + <h1> + JMRI: Signal Heads + </h1> + + Signals Heads are how JMRI represents the individual lights/LEDs in a signal on your layout. JMRI handles Signal Heads as a specific kind of + outputs that can be set to various colors: Red, Yellow, Green, Flashing Yellow, etc. Depending on the hardware used to connect your model signals tot the DCC system, the program deploys a different technique to turn each of these colors on or off. <br/> + Signal Heads may be used to build Signal Masts using the <a href="SignalMasts.shtml">Signal Masts Tool</a>. Depending on the way your signals on the layout are connected to the DCC system, Signal Heads are normally part of a Signal Mast, but <a href="../../../package/jmri/jmrit/beantable/SignalMastAddEdit.shtml">some signal hardware</a> is able to support multiple Aspects directly, and will not require the use of individual Signal Heads. + +<a name="table"><h3>The Signal Heads Table</h3></a> + + <a href="../../../package/jmri/jmrit/beantable/SignalHeads.png"><img src="../../../package/jmri/jmrit/beantable/SignalHeads.png" ALIGN=RIGHT WIDTH="554" HEIGHT="184" HSPACE="0" VSPACE="0" ALT="Signal Heads Table figure"></a> +<!-- The following section is taken from, and should be kept consistent with --> +<!-- help/en/package/jmri/jmrit/beantable/SignalHeadTable.html --> + +All the Signal Heads that JMRI knows about can be referenced +using the "Signal Heads Table" tool in the Tools menu of most JMRI programs. +<p> + + For more information on configuring Signal Heads with the Signal Heads +Table, please see the + <a href="../../../package/jmri/jmrit/beantable/SignalHeadTable.shtml">Signal Heads Table help page</a>. + +<a name="add"><h3>Creating a Signal Head</h3></a> + <a href="../../../package/jmri/jmrit/beantable/SignalHeadAdd1.png"><IMG SRC="../../../package/jmri/jmrit/beantable/SignalHeadAdd1.png" ALIGN=RIGHT WIDTH="181" HEIGHT="218" HSPACE="0" VSPACE="0" ALT="Add Signal Head window figure"></a> + +<p>To define a new Signal Head, click on the + <a href="../../../package/jmri/jmrit/beantable/SignalAddEdit.shtml">Add...</a> button at the bottom of the Signal Heads Table. This will prompt you for the Signal Head type and whatever further information is needed for the selected type. + </br> +There's more information on the + <a href="../../../package/jmri/jmrit/beantable/SignalAddEdit.shtml">Adding Signal Heads help page</a>. + +<a name="edit"><h3>Editing an Existing Signal Head</h3> + <p> Click on the <b>Edit</b> button at the right of the Signal Heads Table to open the Edit Signal Head window. +<p>Once a Signal Head has been defined, its connection Type and System Name can't be changed. You can ignore Signal Heads that you've defined +and don't use; they don't hurt anything. If preferred you can delete a Signal Head from the Signal Heads Table by clicking the Delete button. Save +a copy of the JMRI Configuration file as a backup first and carefully read the warning message that pops up if the Signal Head is used by other parts of JMRI! + +<h3>Controlling a Signal Head</h3> + + Apart from manually setting the Aspect of a Signal Head from the Signal Heads Table by clicking on the "Appearance" button in the State column, Signal Heads can be automatically controlled by JMRI in various ways, including: +<ul> + <li><a href="AspectSignaling.shtml">Aspect Signaling</a>, the most versatile method to display various prototype signaling Rule Books of many US and foreign railroads, driven automatically by the state of Turnouts and (Occupancy) Sensors; + <li>Via <a href="../Logix.shtml">Logix</a>, a graphical way of controlling Signal Heads with simple logic statements; + <li>By <a href="../scripting/index.shtml">Scripts</a>, using a full programming language to do whatever you'd like; + <li>Using the <a href="../../../package/jmri/jmrit/blockboss/BlockBossFrame.shtml">Simple Signal Logic</a> Tool, for basic ABS signaling of the North American type (more easily available via the first method). +</ul> + +<h2>Saving and Reloading Configuration</h2> + +The Signal Head information is saved as part of the JMRI configuration in an XML file, along with control panel setup and similar stuff. For more information on creating and displaying panels, including how to show signals on your panels, please see the <A HREF="../../apps/PanelPro/Panels.shtml">Panels pages</a>. + +<p>Back to the <a href="index.shtml#tools">Signaling main help page</a>. + +<!--#include virtual="/Footer" --> + + </div><!-- closes #mainContent--> + </div> <!-- closes #mBody--> + </div> <!-- closes #container --> +</body> +</html> + + Modified: trunk/jmri/help/en/html/tools/signaling/SignalMastLogic.shtml =================================================================== --- trunk/jmri/help/en/html/tools/signaling/SignalMastLogic.shtml 2014-06-11 13:16:18 UTC (rev 26255) +++ trunk/jmri/help/en/html/tools/signaling/SignalMastLogic.shtml 2014-06-11 13:28:04 UTC (rev 26256) @@ -3,7 +3,9 @@ <head> <!-- Copyright Kevin Dickerson 2011 --> <!-- $Id$ --> -<title>JMRI: Signal Mast Logic</title> +<title>JMRI: Signal Mast Logic introduction</title> +<META name="Author" content="Bob Jacobsen, Egbert Broerse"> +<META name="Date.Modified" content="20140515"/> <!-- Style --> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> @@ -20,157 +22,155 @@ <!--#include virtual="Sidebar" --> <div id="mainContent"> - -<H1>JMRI: Signal Mast Logics</H1> +<H1>JMRI: Signal Mast Logic</H1> <p class=subtitle> - Background information on JMRI Signal Masts Logic + Information on Signal Mast Logic </p> <div class=para> - -The JMRI "SignalMastLogic" allows you to build up a set of creteria for a -signal mast as to what aspect it should be displaying for a specific route -through to a destination mast. +JMRI Signal Mast Logic allows you to build up a set of criteria for a +Signal Mast as to what Aspect it should be displaying for a specific route +through to a destination Signal Mast. <p> -Each signal mast logic is built from a source and destination signal mast pair, -along with a series blocks, turnouts and sensors between the two masts and the -state that they must be in for the source mast to be released from a Danger or -Stop Aspect. +Each Signal Mast Logic is built from a source and destination Signal Mast pair, +along with a series of Blocks, Turnouts and Sensors between the two Signal Masts and the +state that they must be in for the source Signal Mast to be released from a "Danger" or +"Stop" Aspect. <p> -<img src="images/logic1.png" height="92" width="437"><br>Example 1 + <img src="../images/logic1.png" width="437" height="92"> + <br>Example 1 <p> -In the example above, you have a source signal mast of SM20, there are then two -destination masts of SM22 and SM23.<br> -The logic behind signalling pair, SM20 and SM23, is that blocks 2 & 3 must be -unoccupied, and turnout IT1 must be set "Closed". Once that criteria is met then -signal SM20, will be released from Danger to Caution, if signal mast SM23 was set -to Caution, then SM20 would be set to Proceed and show a Green aspect. As soon -as block 2 or 3 become active or turnout 1 is set thrown, the signal SM20 is set -back to Danger. +In the example above, you have a source Signal Mast SM20, there are then two + destination Signal Masts: SM22 and SM23.<br> +The logic behind signaling pair SM20 to SM23 is that Blocks 2 & 3 must be +unoccupied, and Turnout IT1 must be set to "Closed". Once those criteria are met +Signal Mast SM20 will be released from "Danger" to "Caution", if Signal Mast SM23 was set +to "Caution" then SM20 would be set to "Proceed" and show a Green Aspect. As soon +as Block 2 or 3 becomes Active or Turnout 1 is set to Thrown, the Signal Mast SM20 is set +back to "Danger". <p> -Each signal mast pair must be directly reachable from the other, without any other -other signal mast in-between being in the same direction. +Each Signal Mast pair must be directly reachable from the other, without any other +other Signal Mast in-between in the same direction. <p> -<img src="images/logic2.png" height="93" width="511"><br>Example 2 +<img src="images/logic2.png" width="511" height="93"><br>Example 2 <p> -In the example above, a signalling logic from SM20 to SM24 would be invalid as -SM23 is in between the two. You would have to create two separate logics, one as +In the example above, a Signal Mast Logic from SM20 to SM24 would be invalid as +SM23 is in between the two. You would have to create two separate Signal Mast Logics, one as above for SM20 to SM23, the second for SM23 to SM24. -<p> <hr> -Which aspect our source mast displays after being released from Danger is firstly -determined by the aspect mapping that has been defined in the signal mast appearance -file. If there is only one aspect that could be displayed, then the signal mast -will be set to that aspect. - -However if there are multiple aspects that could potentially be displayed then -the logic looks at two areas to determine the resulting aspect to be displayed<br> -<ul><li>Diverging route<br><ul> -<li>If there are aspects for a diverging route and any of the turnouts on the path are set thrown -then it will use the aspect for a diverging route.</li> -<li>If none of the turnouts on the route are set thrown, then the aspect that is not -designated as a diverging aspect will be used.</li> +<p>Which Aspect our source Signal Mast displays after being released from "Danger" is firstly +determined by the Aspect mapping that has been defined in the Signal Mast Appearance definition +file. If there is only one Aspect that could be displayed, then the Signal Mast + will be set to that Aspect.<br/> +However if multiple Aspects could potentially be displayed then + the logic looks at two areas to determine the resulting Aspect to be displayed: +<ul><li>Diverging route + <ul> +<li>If there are Aspects for a Diverging route and any of the Turnouts on the path are set to Thrown +then it will use the Aspect for a Diverging route.</li> +<li>If none of the Turnouts on the route are set to Thrown, then the Aspect that is not +designated as a Diverging aspect will be used.</li> </ul></li> -<li>Block/Signal Speed<br> +<li>Block/Signal Speed <ul><li> -If the diverging route is not available on the signal aspects, or it does not -return a single potential aspect, then the speed of the block and speed rating -of the aspect is used. -<br> -Each aspect and block can be configured with a Speed value, the logic will take -the lowest speed defined on the blocks in the route and choose the aspect with -the highest speed which is under the routes lowest speed. ie if the routes -lowest speed is 65 mph, then it will choose the aspect that has a speed equal or -less than 65mph. +If the Diverging route is not available on the signal Aspects, or it does not +return a single potential Aspect, then the speed of the Block and speed rating +of the Aspect are used. + <br/> +Each Aspect and Block can be configured with a Speed value. The Signal Mast Logic will take +the lowest Speed defined on the Blocks in the route and choose the Aspect with +the highest Speed which is under the routes lowest speed. I.e. if the routes +lowest Speed is 65 mph, then it will choose the Aspect that has a speed equal or +less than 65 mph. </li></ul> </li> </ul> <p> -In addition to being able to specify the turnouts, blocks and sensors that make -up a logic, you can also specify which other signal masts must be set to a specific -aspect before the source mast can be released. In general, there should be no -need to add extra signal masts as the route between all the different source mast -to the destination mast should have unique criteria. However there are certain +In addition to being able to specify the Turnouts, Blocks and Sensors that make +up a Signal Mast Logic, you can also specify which other Signal Masts must be set to a specific +Aspect before the source Signal Mast can be released. In general, there should be no +need to add extra Signal Masts in the Signal Mast Logic as the route between all the different source mast +to destination mast Logis pair should have unique criteria. However there are certain situation such as where two tracks crossover on the same level where a conflicting -route could be set. Therefore to get around this, the signal mast or masts that +route could be set. Therefore to get around this, the Signal Mast or Masts that are protecting the crossover should be part of each others criteria. -<p> -<H2>Manual and Auto Generated Information</H2> -The signalling logic holds two sets of block and turnout information, the -first is user generated, the second is where a tool such as used with the layout -editor (See Below) has automatically built up a set of blocks or turnouts from -the panel layout as signalling criteria.<p> -Both sets of information is used by the signalling logic to determine if a signal + +<h2>Manual and Auto Generated Logic Information</h2> + The Signal Mast Logic window holds two areas showing Block and Turnout information: the +first is user generated, the second is where a tool such as used with the Layout +Editor (<a href="#autologic">see below</a>) has automatically built up a set of Blocks or Turnouts from +the panel layout as signaling criteria.<p> +Both sets of information are used by JMRI to determine if a Signal Mast can be released or not, however the manually created information has a higher -priority over the automatically generated information. Thus allowing the user to +priority over the automatically generated information thus allowing the user to over-ride what the system has determined.<p> The automatically generated information is not saved with the rest of the panel -information, however the manually generated user information is. If the layout -editor is being used to base the signalling logic on (See below) then the signalling -logic will rediscover this information from the panel each time it is loaded, thus -if any changes have been made they will be discovered. Please note, that this -re-generation of information is not done on the "fly" when the layout editor panel -is changed. -<p> -<H2>Logic to Un-Signalled Areas or Buffer Stops</H2> -The signalling logic works only between a source and destination signal mast, +information, but the manually generated user information is. If the Layout + Editor is being used to base the Signal Mast Logic on (<a href="#autologic">see below</a>) then JMRI will rediscover this information from the panel each time it is loaded, and if any changes have been saved in the meantime they will be discovered. Please note, that this +re-generation of information is not done on the "fly" when a Layout Editor panel is changed and saved without exiting JMRI. + +<h2>Logic to Un-Signaled Areas or Buffer Stops</h2> +The Signal Mast Logic works only between a source and destination Signal Mast, so if you have a valid route to an End Bumper/Buffer Stop/Dark Area, then there is -no specific destination signal mast. In this instance you would create a "dummy" -signal mast to act as your destination mast, it doesn't have to be a real signal -mast on the system or have real signal heads associated. All that this dummy -signal mast has to do is display a Danger aspect. +no specific destination Signal Mast. In this situation you would create a "dummy" +Signal Mast of type Virtual in de Signal Masts Table to act as your destination Signal Mast. It doesn't have to represent a signal +on the layout or have Signal Heads associated. All that this Virtual Signal Mast has to do is display a "Danger" aspect. <p> -<H2>Using The Layout Editor for Signal Mast Logic</H2> -By using the layout block editor, it is possible to have the signal mast logic -determine the signalling pairs, along with the blocks and turnouts that make up -the criteria. This can be done across all the signal mast on the a layout editor -or on a source signal mast basis. -<p>It has the advantage that if the layout editor panel is changed, the -signalling logic will discover this change when the panel is reloaded and use the -new block and turnout information. +<h2>Using the Layout Editor for Signal Mast Logic</h2> +By using the Layout Block Editor, it is possible to have the Signal Mast Logic +determine the signaling pairs, along with the Blocks and Turnouts that make up +the criteria. This can be done across all the Signal Masts on the Layout Editor +or o... [truncated message content] |