Ez mért számít empty triggernek és hogyan lehet kijavítani?

–1 vote
asked Apr 18, 2020 in Rendszermodellezés A00 by Norbi21 (32 points)  

enter image description here

Van ilyen átmenet a házimban:

[változó <= szám && egy event ]

(pl.: [InitialWhite <= 290 && Buttons.Button ]

Nem értem a kiadott hibát, mert itt egy esemény hatására történik az átlmenet, nem csak egy kiértékelésre váró feltétel van.

Előre is köszi a segítséget.

2 Answers

0 votes
answered Apr 18, 2020 by mvince (324 points)  
selected Apr 18, 2020 by Norbi21
 
Best answer

Ugyan valóban hivatkozol egy eseményre, de nem triggerként, hanem azt kihasználva, hogy a Yakindu az események nevét Boolean változóként is értelmezi, ami akkor igaz, ha ebben a lefutásban megérkezett az esemény. Ennek a szekantikája egyébként eléggé esetleges, úgyhogy a használata nem javasolt, de ettől függetlenül trigger tényleg nincs a tranzíciódon: a trigger [őrfeltétel] / hatás formátumot kellene itt is követni.

0 votes
answered Apr 18, 2020 by dkmisu (1,327 points)  

A kérdésre a válasz megtalálható a technikai segédlet 6.3 pontjában:

Ezen tiltott elemek:

  • always
  • oncycle
  • Kiváltó esemény nélküli állapotátmenet (a Yakindu a fentiekkel ekvivalensen értelmezi)
  • after 0s / after 0ms / every 0s ...
  • [trigger && feltétel] kiváltó eseményként

Ez az átmenet az utolsó sorra illik rá, és azért van tiltva, mert

Az utolsó elem, bár Yakindu-s szemantikával nem számít kiváltó esemény nélküli átmenetnek, a tárgy által tanított szemantikában mást jelent, így nem engedélyezzük a használatát.

...