loc-bbt-en
Differences
This shows you the differences between two versions of the page.
Previous revision | |||
— | loc-bbt-en [2024/01/28 17:08] (current) – rjversluis | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Locomotive: BBT Block-Brake-Timer (BBT / SBT) ====== | ||
+ | [[: | ||
+ | [[english|Content]] -> [[english# | ||
+ | * [[loc-index-en|Index]] | [[loc-gen-en|General]] | [[loc-int-en|Interface]] | [[: | ||
+ | * [[bbt-generate-in-en|BBT Generate IN]] | ||
+ | \\ | ||
+ | **B**lock **B**rake **T**imer: | ||
+ | {{: | ||
+ | // | ||
+ | \\ | ||
+ | =====Description===== | ||
+ | |||
+ | The task of BBT is to ensure that locomotives / trains arrive as precisely as possible with the speed **V_min** at the **IN** detector. The locomotive is braking in a predetermined number of steps between **ENTER** and **IN**, as Rocrail sends decreasing speed commands to the locomotive at regular times. If the locomotive arrives at the **IN** detector after an attempt at a higher speed than **V_min**, Rocrail calculates a faster sequence of the steps and tries it with the next attempt. If the locomotive is at **V_min**, long before it arrives at the **IN** detector (and now creeps to the **IN** detector), then Rocrail calculates a slower sequence of steps. With each iteration, the sequence becomes more accurate to finally reach the **IN** detector with a point-to-point accuracy of **V_min**. In those cases, where the setting of the different speed steps between **ENTER** and **IN** is visually recognizable (i.e. jerking of the locomotive), | ||
+ | |||
+ | **Note** Enter2in sensors are not supported in conjunction with BBT. \\ | ||
+ | |||
+ | You can find more details __**[[# | ||
+ | |||
+ | |||
+ | =====BBT Tab===== | ||
+ | {{: | ||
+ | The BBT records can be sorted by clicking on one of the columns headers.\\ | ||
+ | \\ | ||
+ | |:!: Changing the settings may not be saved when the locomotive is still in auto mode | | ||
+ | \\ | ||
+ | |||
+ | ====BBT==== | ||
+ | The **B**lock **B**rake **T**imer for this loco is only active when the __**[[loc-details-en# | ||
+ | |||
+ | ====Steps==== | ||
+ | The number of steps preset to use for BBT.\\ | ||
+ | The actual number of steps in the BBT records can differ from this number; All depends on the enter speed.\\ | ||
+ | After the learning process is finished the number of actual steps should be equal.\\ | ||
+ | |||
+ | ====Start interval==== | ||
+ | Default 10; Range 10...250.\\ | ||
+ | This value is used as start for a new BBT record and will be used as the initial timer between the steps.\\ | ||
+ | It may be, that the default 100 ms, 10 x 10 ms, is to low to get a fast learning curve.\\ | ||
+ | The interval is an approximately value and is Operating System dependent.\\ | ||
+ | |||
+ | ====Max. Difference==== | ||
+ | Longer differences will be reduced to this max. to avoid unusable values in case a train stops or is derailed between enter and in.\\ | ||
+ | The default value is 250 = 2.5 Seconds.\\ | ||
+ | |||
+ | ====Correction==== | ||
+ | After each stop in a block the BBT is re-calculated. This percentage of the difference is used as correction.\\ | ||
+ | 25% is the default value which has been proven to be a good choice.\\ | ||
+ | Use a higher value to speed up the learning curve. 100% can also be used.\\ | ||
+ | |||
+ | ====Use==== | ||
+ | This option determines which record key will be used to create and to lookup.\\ | ||
+ | === Block === | ||
+ | For the block in which the loco stops a BBT record is created, independent of the entry side of the block.\\ | ||
+ | **Note:** The From Block column is in this case irrelevant.\\ | ||
+ | ===From Block=== | ||
+ | For each from block a separate BBT record is created.\\ | ||
+ | :!: This method does not function if the loco has the __**[[: | ||
+ | ===Route=== | ||
+ | For each route a separate BBT record is created.\\ | ||
+ | ===Speed=== | ||
+ | For each speed a separate BBT record is created.\\ | ||
+ | Note that Rocrail only knows the locos speed setting and not the locos absolute speed at **enter**. This is only relevant if the loco is still accelerating or decelerating when it passes the enter sensor.\\ | ||
+ | |:!: If a train stops in front of a block with BBT, please note: __ ** [[: block-details-en # speed | reduce speed]] ** __. If this option is deactivated, | ||
+ | ===Speed +/-=== | ||
+ | The same as **Speed**, but with regarding the block enter side.\\ | ||
+ | |||
+ | ===Delay=== | ||
+ | | :!: User option; No official support. | | ||
+ | Number of 10ms cycles before activating BBT.\\ | ||
+ | \\ | ||
+ | This value can be set by the user and is for fine tuning on the brake point only.\\ | ||
+ | The default value " | ||
+ | * Use with care or set to zero. | ||
+ | * This cannot be used for self learning. | ||
+ | * This can only be used in combination with fixed BBT records. | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | \\ | ||
+ | |||
+ | ====Calculation List==== | ||
+ | ===To block=== | ||
+ | The block for which the calculation has been made.\\ | ||
+ | ===Deceleration time=== | ||
+ | The deceleration time is in units of 10ms.\\ | ||
+ | This is the time between **enter** and **in** and will be divided by the number of steps.\\ | ||
+ | ===Steps=== | ||
+ | The steps column shows how many steps could be counted for last run between **enter** and **in**.\\ | ||
+ | e.g. if the loco had stopped far beyond **in** the value will be less than target.\\ | ||
+ | ===Counter=== | ||
+ | The number of calculations for this BBT record.\\ | ||
+ | ===Fixed=== | ||
+ | No corrections will be written in this BBT record if set to fixed.\\ | ||
+ | This can be useful in order to prevent an already determined optimum setting from being inadvertantly changed automatically.\\ | ||
+ | The time in which a loco brakes to V_min can be altered intentionally and set.\\ | ||
+ | |||
+ | === Generate IN === | ||
+ | At the end of the intervals an IN event will be generated.\\ | ||
+ | This can be used to create a loco dependent stopping point. | ||
+ | |||
+ | For more information about this option, see **[[: | ||
+ | |||
+ | ==== Center train ==== | ||
+ | |||
+ | If the Block has __**[[block-gen-en# | ||
+ | The **Fixed** option of the BBT record must be set.\\ | ||
+ | |||
+ | > **Note:** Before activating this option the BBT learning procedure has to be complete! That is, the train should evenly decelerate between ENTER and IN without the train ' | ||
+ | > Thereafter the BBT entry has to be set to [[#fixed]], then option Center train can be activated. | ||
+ | > The length of the **[[: | ||
+ | \\ | ||
+ | |||
+ | |||
+ | < | ||
+ | |Plus-------------------------Block--------------------------Minus| | ||
+ | |-OffsetPlus--|--------------Platform--------------|--OffsetMinus-| | ||
+ | 1 | ||
+ | |||
+ | 1 = ENTER sensor | ||
+ | 2 = Start of platform | ||
+ | 3 = Center of platform -> CENTER | ||
+ | 4 = End of platform | ||
+ | 5 = IN sensor | ||
+ | </ | ||
+ | Train halt positions: | ||
+ | - No -> The front end of the train at 5 | ||
+ | - Center -> The middle of the train at 3 | ||
+ | - Front -> The front end of the train at 4 | ||
+ | - Rear -> The rear end of the train at 2 | ||
+ | |||
+ | \\ | ||
+ | ===Updates=== | ||
+ | No BBT updates are received if **[[: | ||
+ | \\ | ||
+ | |||
+ | ==== Add ==== | ||
+ | A new BBT line will be added to the list.\\ | ||
+ | Select the line, define parameters in the fields and then click the **[[# | ||
+ | ====Delete==== | ||
+ | Delete a selected BBT line.\\ | ||
+ | |||
+ | ==== Copy ==== | ||
+ | A copy of the selected BBT line will be added to the list.\\ | ||
+ | |||
+ | ====Modify==== | ||
+ | The modified parameters are inserted in the BBT line.\\ | ||
+ | |||
+ | ====Delete all==== | ||
+ | Delete all BBT lines.\\ | ||
+ | |||
+ | ====Export==== | ||
+ | Export all BBT lines in a XML file.\\ | ||
+ | |||
+ | ====Import==== | ||
+ | Import BBT lines from a XML file.\\ | ||
+ | |||
+ | ====Toggle Fix==== | ||
+ | The fix flags of the selected lines will be toggled.\\ | ||
+ | |||
+ | ====Fix and center all==== | ||
+ | Set all BBT records to fixed and center train.\\ | ||
+ | \\ | ||
+ | |||
+ | =====Functional description===== | ||
+ | * It needs multiple stops in a block for (re-)calculating a right interval; The first times it won't fit. | ||
+ | * At every stop block it is re-calculated. | ||
+ | * Longer differences will be reduced to the max. difference to avoid unusable values in case a train did stop or derailed between enter and in. | ||
+ | * The brake step is: ( V_enter - V_min ) / steps. | ||
+ | * The calculation is for each block and will be saved in the Plan/Loco XML file. | ||
+ | * The **enter** and **pre2in** events do not adjust speed. | ||
+ | * **[[: | ||
+ | * If the BBT is too short the loco will run at V_min until **in**. | ||
+ | * If the BBT is too long the loco will run with a higher speed than V_min until **in**; The loco could run over. | ||
+ | * After editing the loco **[[: | ||
+ | * BBT is only for blocks without external stop. | ||
+ | * Staging blocks with **In event at train length** is regarded as a block with external stop. | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ====Advice==== | ||
+ | - Do **not** set the decelerate decoder CV 4 to zero. | ||
+ | - **enter2in** is not supported. | ||
+ | - The use of __**[[: | ||
+ | - Use as less brake steps as possible to reduce communication overhead; 10 steps is default and a good choice. | ||
+ | - Use at least 28 decoder steps; Better are 128. | ||
+ | - To get used to this function it is advisable to set a linear speed curve in the decoder. | ||
+ | - The longer the block, or the distance from the start of braking to in, the more steps and higher CV4 value should be set. | ||
+ | - BBT needs extra CPU power so disable BBT if its not needed. | ||
+ | \\ | ||
+ | |||
+ | |||
+ | ====Graphic==== | ||
+ | {{: | ||
+ | ^ A | Enter speed. | | ||
+ | ^ B | BBT steps; In this example 10. | | ||
+ | ^ C | Enter event; First BBT step. | | ||
+ | ^ 10 | Last BBT step. | | ||
+ | ^ D | In event; Step down to zero speed. | | ||
+ | ^ E | Zero speed; Loco is in wait or idle mode. | | ||
+ | // |