|
Re: Questions about the sequence of events [message #1839168 is a reply to message #1839166] |
Tue, 16 March 2021 11:29 |
|
I'm not sure if there is a yes/no answer to your question. IEC 61499 defines that on the reception of an input event the data on the FB's inputs is updated, with the latest data values available. So the input event defines the sampling point in time.
In your experiments you have an E_SPLIT that clearly defines that first EO1 and then EO2 is sent. In 4diac FORTE this means that first to top and then the bottom FB is triggered. As 4diac FORTE treats each FB as atomic unit it makes no assumption on any event connections on the FBs. Furthermore your second experiment just tells the relative order between all the FBs. There is no assumption between the to and the bottom event chain. The only guarantee you have is that your F_GT block is triggered after the REAL_2_REAL_1 block. If the completion of the top chain is also important for the correct operation of your application you should explicitly model that. (e.g., by using an E_REND FB).
However in an other application it may be perfectly fine to say I want to take the current value available with out the explicit synchronization.
Therefore I said above there is for me no clear yes/no answer to your question.
|
|
|
|
Re: Questions about the sequence of events [message #1839243 is a reply to message #1839229] |
Thu, 18 March 2021 07:34 |
|
You are welcome. In 4diac FORTE we are queuing the events in FIFO queue. This leads to a very deterministic execution. If you are interested in the whys and the implementation details I can recommend my real-time execution for IEC 61499 book.
However in your IEC 61499 applications you should not make any assumptions on this order. Because when you are distributing your FBs differently the event order may also be influenced by the network delay. Modelling order requirements explicitly with events is the way to go to get platform independent IeC 61499 models behaving correctly on all IEC 61499 implementations.
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.03367 seconds