Ph.D. - geht es zur Homepage der Informatik des Fachbereiches 3 ...
Ph.D. - geht es zur Homepage der Informatik des Fachbereiches 3 ...
Ph.D. - geht es zur Homepage der Informatik des Fachbereiches 3 ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Chapter 11. openETCS Simulation<br />
Activating_override<br />
Switching_to_Unfitted<br />
Similar to the Mode switch from Unfitted to Staff R<strong>es</strong>ponsible in<br />
Figure 11.13, the override function is also used here to switch Staff<br />
R<strong>es</strong>ponsible using the “c37” oModeGuard in Figure 10.21. Thus,<br />
the corr<strong>es</strong>ponding input field “Select Override Function” in the DMI<br />
is set to true.<br />
The switch to the ETCS Mode Staff R<strong>es</strong>ponsible is propagated to all<br />
state machin<strong>es</strong> by the global signal bOverrideSelected = TRUE.<br />
11.4. Code Generation<br />
The simulation model of UML state machin<strong>es</strong> introduced in Section 11.3 cannot be directly<br />
executed. Therefore, compilable code must be generated (Figure 11.2) or rather a model-to-text<br />
transformation must be applied. The RT-T<strong>es</strong>ter application was chosen as generator because its<br />
ORA-SIM [72] component provid<strong>es</strong> a complete generator for C to build executable simulations<br />
from UML models. Alternatively, custom code generators could have be implemented for the<br />
UML state machin<strong>es</strong>. Though, as already discussed in Section 3.4, complete tool development is<br />
not in the main focus of this work and using already available solutions is preferred. Furthermore,<br />
the RT-T<strong>es</strong>ter application already provid<strong>es</strong> an infrastructure for evaluating t<strong>es</strong>t r<strong>es</strong>ults.<br />
Since the RT-T<strong>es</strong>ter is currently not available un<strong>der</strong> a OSS or FLOSS license, the generation<br />
proc<strong>es</strong>s cannot be published, like other parts of the case study, as FLOSS within this document.<br />
Neverthel<strong>es</strong>s, this r<strong>es</strong>triction is not applicable for the generated source code, which can be<br />
found in Section H.4.<br />
The generated source code must be linked against librari<strong>es</strong> provided by RT-T<strong>es</strong>ter, which<br />
neither are publicly available. Therefore, the simulation source code cannot be currently<br />
compiled and executed without a valid RT-T<strong>es</strong>ter license. Neverthel<strong>es</strong>s, the generated source<br />
code is used as reference in this work.<br />
11.5. Simulation Execution R<strong>es</strong>ults<br />
The simulation execution generat<strong>es</strong> two typ<strong>es</strong> of logs or rather trac<strong>es</strong>:<br />
1. output of the state machin<strong>es</strong><br />
2. output of the RT-T<strong>es</strong>ter<br />
The output of the state machin<strong>es</strong> is produced by the printf() statements in the actions of<br />
stat<strong>es</strong> and can be found accordingly in the simulation model. It reflects the simulated, virtual<br />
track for the train and the expected ETCS Mode switch<strong>es</strong> of the EVC. Errors cannot be found<br />
directly in this trace, only the activation of the State “Isolated” of the CEVC machine in<br />
Figure 11.12 refers to a succ<strong>es</strong>sful execution.<br />
The RT-T<strong>es</strong>ter produc<strong>es</strong> for each state machine or rather abstract machine a separated log<br />
file. This holds the information about the executed asserts and the t<strong>es</strong>t r<strong>es</strong>ult. Thus, this type<br />
is not very qualified for comprehending the virtual track but for the identification of errors or<br />
the succ<strong>es</strong>sful execution of the simulation. Each log file contains at its very end a summary<br />
234