User Tools

Site Tools


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#objects|{{  :objects.png}}]][[:english|{{  :rocrail-logo-35.png}}]]
 +[[english|Content]] -> [[english#objects|Objects]] -> **Locomotives**
 +  *  [[loc-index-en|Index]] | [[loc-gen-en|General]] | [[loc-int-en|Interface]] | [[:loc-speed-en|Speed]] | [[loc-details-en|Details]] | [[loc-fun-en|Functions]] | [[loc-consist-en|Multiple Units]] | [[loc-cv-en|CVs]] | **[[loc-bbt-en|BBT]]** | [[loc-sbt-en|SBT]] | [[loc-bat-en|BAT]] | [[loc-calibrate-en|Calibrate]] | [[loc-shunting-en|Shunting Mode]]
 +    * [[bbt-generate-in-en|BBT Generate IN]]
 + \\
 +**B**lock **B**rake **T**imer:\\
 +{{:bbt:bbt-graphic.png?200}} {{:bbt:signalmain-r.png}}\\
 +//Calculation of block brake time automatically to decelerate linear from **enter** to **in**.//\\
 + \\
  
 +=====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), you have the possibility to configure Rocrail in such a way that more steps can be used. \\
 +
 +**Note** Enter2in sensors are not supported in conjunction with BBT. \\
 +
 +You can find more details __**[[#functional_description|here]]**__. \\
 +
 +
 +=====BBT Tab=====
 +{{:loc:loco-bbt-en.png?801}}\\
 +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#bbt|BBT-option for this loco]]**__ in the details tab is set and the loco enters blocks with the __**[[block-gen-en#bbt|BBT-option]]**__ set.\\
 +
 +====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 __**[[:loc-details-en#free_previous_block_on_free_or_enter|Free previous block on enter]]**__ active.\\
 +===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, 2 BBT speed entries are possible, depending on whether the train had to stop in the prior block or could pass through. |
 +===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 "0" will start the BBT immediately on enter.\\
 +  * 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 **[[:bbt-generate-in-en|BBT Generate IN]]**.\\
 +
 +==== Center train ====
 +
 +If the Block has __**[[block-gen-en#length|Length]]**__ and __**[[block-gen-en#center_train|Center train]]**__ set, this option can be used to calculate the interval for stopping the train approximately in the center/front/rear of the block platform. An IN event will be generated.\\
 +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 'creeping' a longer distance with V_Min.
 +> Thereafter the BBT entry has to be set to [[#fixed]], then option Center train can be activated.
 +> The length of the **[[:operator-consist-en|train]]** (**[[:loc-gen-en#length|loco]]** and **[[:car-details-en#length|cars]]**) and of the **[[block-gen-en#length|block]]** must be set.
 + \\
 +
 +
 +<code>
 +|Plus-------------------------Block--------------------------Minus|
 +|-OffsetPlus--|--------------Platform--------------|--OffsetMinus-|
 +1                                              4              5
 +
 +1 = ENTER sensor
 +2 = Start of platform  -> REAR
 +3 = Center of platform -> CENTER
 +4 = End of platform    -> FRONT
 +5 = IN sensor
 +</code>
 +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 **[[:rocgui-gen-en#monitoring|Monitoring]]** is off. In this case closing the dialog with OK could erase existing BBT lines.\\
 + \\
 +
 +==== Add ====
 +A new BBT line will be added to the list.\\
 +Select the line, define parameters in the fields and then click the **[[#modify|Modify button]]** .
 +====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.
 +    * **[[:loc-details-en#stop_at_pre2in_event|Stop at pre2in]]** and **[[:loc-details-en#use_shortin_event|Use shortin event]]** will also be used with BBT activated.
 +  * 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 **[[:loc-tab-en#train|Train]]** the previous calculated BBT will probably no longer fit because of the changed load; Extra learning stops are needed. 
 +  * 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 __**[[:block-routes-en#event_timer|Event Timers]]**__ will not lead to a stable interval; **Reset them to zero!**
 +  - 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====
 +{{:bbt:bbt-graphic.png}}\\
 +^ 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. |
 +//