31.01.2014 Views

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 ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Chapter 7. openETCS Meta Model<br />

their name:<br />

• oAND, oOR, oXOR, and oNOT provide Boolean operations.<br />

• oSum, oSubstraction, oDivision, and oMultiplication provide arithmetical<br />

calculations.<br />

• oDoubleEqual, oIntEqual, oStringEqual, oDoubleGreater, oDoubleGreaterOrEqual,<br />

and oIntGreater compare data flows of the corr<strong>es</strong>ponding<br />

typ<strong>es</strong>.<br />

Neverthel<strong>es</strong>s, there exist also some object typ<strong>es</strong> which functionality must be<br />

explained more accurate:<br />

oDoubleArrayAc<strong>es</strong>sor acc<strong>es</strong>s<strong>es</strong> a certain element of a double array input by<br />

using an integer input as index. The element is used as double output.<br />

oBoolGate controls a Boolean data flow by using another Boolean input. If<br />

this control input is true, then the Boolean input is directly transferred<br />

to the output, else nothing is output. This is the same functionality of<br />

inhibit gat<strong>es</strong> elements in Fault Tree Analysis [78, pp. 43-50].<br />

oDoubleGate provid<strong>es</strong> the same functionality as oBoolGate but for double<br />

data flows.<br />

oStringGate provid<strong>es</strong> the same functionality as oBoolGate but for string<br />

data flows.<br />

oBoolSwitch is similar to oBoolGate, but instead of only copying or not<br />

output at all it switch<strong>es</strong> between two Boolean inputs. If the Boolean<br />

control input is true, the first Boolean input is transferred to the output,<br />

else the second input is transferred.<br />

oDoubleSwitch has the same functionality as oBoolSwitch but for double<br />

data flows.<br />

oStringSwitch has the same functionality as oBoolSwitch but for string data<br />

flows.<br />

oEmbeddedStateMachine is used to define control flows by a decomposition<br />

to a gEmbeddedStateMachine graph. It has one Boolean input to start<br />

the un<strong>der</strong>lying control flow. The string output delivers the literal name<br />

of the current active state if the control was started and did not finish<br />

yet.<br />

oBrakingToTargetSpeed defin<strong>es</strong> the calculation of a braking-curve for a<br />

certain target speed as double input. It us<strong>es</strong> the gradient distance and<br />

gradient valu<strong>es</strong> of the track as double array input. The current speed<br />

and distance, the distance to the new speed limit, the new speed limit,<br />

and the adh<strong>es</strong>ion factor for the track are taken as double inputs. It<br />

provid<strong>es</strong> a Boolean output for the emergency brak<strong>es</strong> and a double output<br />

for the service brak<strong>es</strong>. Additionally, it has Boolean outputs to inform<br />

about exceeded speed limit and applied service and emergency brak<strong>es</strong>.<br />

90

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!