usage of @branchingSpeed and @joiningSpeed [message #3398] |
Wed, 20 November 2024 14:52 |
Torben Brand
Messages: 174 Registered: March 2016
|
Senior Member |
|
|
It seems we need to more clearly define the usage of @branchingSpeed and @joiningSpeed in element <leftBranch<,<rightBranch>,<straightBranch> and <turningBranch>
The definition of the attributes @branchingSpeed and @joiningSpeed are the same for all four elements:
@branchingSpeed: speed limit for a train diverging relative to the direction of a switch (from blades to a frog)
@joiningSpeed: speed limit for a train converging relative to the direction of a switch (from blades to a frog
Based on best Practice / Examples in the wiki I have seen three different implementations:
A. define speed over the branch. Independent if the <*branch> is defined as branching course or continue course. As in the current wiki example.
B. define the branching speed independent if the <*branch> is defined as branching course or continue course.
C. define the branching speed only on the <*branch> which is defined as branching course
Note the correct wording of the term "branch" as the switch "legs" vs. "branching" as "deflecting/joining", having a speed restriction in comparison to line speed (on continueCourse).
If we choose:
- A the definitions for @branchingSpeed and @joiningSpeed are wrong
- B the example is wrong (se changed example B bellow)
- C the example is wrong (se changed example C bellow; removed rightBranch@branchingSpeed and @joiningSpeed)
I would suggest choosing option C.
Please give feedback here in forum and we will discuss in a upcoming SCTP workgroup meeting.
If we keep the definitions for @branchingSpeed and @joiningSpeed (option C) we should add semantic constraint:
- if trackcontinueCourse=left then do NOT use leftBranch@branchingSpeed and @joiningSpeed
- if trackcontinueCourse=right then do NOT use rightBranch@branchingSpeed and @joiningSpeed
Ps. We should update the example anyway as spotLocation@pos has been deprecated and the attribute @defaultCourse does not exist, its: switchIL@preferredPosition.
Example A:
<functionalInfrastructure>
...
<switchesIS>
<switchIS id="swi01" continueCourse="right" branchCourse="left" type="ordinarySwitch">
<name name="68W02" language="en"/>
<spotLocation id="swi01_sloc01" netElementRef="ne_a03" applicationDirection="reverse" intrinsicCoord="0.0">
<linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
</spotLocation>
<leftBranch netRelationRef="nr_a02a03" branchingSpeed="60" joiningSpeed="60" radius="-500"/>
<rightBranch netRelationRef="nr_a01a03" branchingSpeed="80" joiningSpeed="80" radius="0"/>
</switchIS>
Example B:
<functionalInfrastructure>
...
<switchesIS>
<switchIS id="swi01" continueCourse="right" branchCourse="left" type="ordinarySwitch">
<name name="68W02" language="en"/>
<spotLocation id="swi01_sloc01" netElementRef="ne_a03" applicationDirection="reverse" intrinsicCoord="0.0">
<linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
</spotLocation>
<leftBranch netRelationRef="nr_a02a03" branchingSpeed="60" joiningSpeed="60" radius="-500"/>
<rightBranch netRelationRef="nr_a01a03" branchingSpeed="60" joiningSpeed="60" radius="0"/>
</switchIS>
Example C:
<functionalInfrastructure>
...
<switchesIS>
<switchIS id="swi01" continueCourse="right" branchCourse="left" type="ordinarySwitch">
<name name="68W02" language="en"/>
<spotLocation id="swi01_sloc01" netElementRef="ne_a03" applicationDirection="reverse" intrinsicCoord="0.0">
<linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
</spotLocation>
<leftBranch netRelationRef="nr_a02a03" branchingSpeed="60" joiningSpeed="60" radius="-500"/>
<rightBranch netRelationRef="nr_a01a03" [removed branchingSpeed="XX" joiningSpeed="xx"] radius="0"/>
</switchIS>
[1] https://wiki3.railml.org/wiki/IS:switchIS
|
|
|