equinor / iec63131

Other
8 stars 8 forks source link

Use of Sequence Flags and mapping to AML #69

Closed cdenisey closed 1 year ago

cdenisey commented 2 years ago

IEC63131 allows for simplification of the sequence flag and commonly used when multiple Terminals are used by removing the Terminals information from the process SCD, example found in Figure E.58. This means that the information to enable the connections between the FB terminal and the Flag is missed out from the SCD, and these connections have to be made when building up the sequence by the SAS supplier. A better solution should be to define the used Terminals as part of the Flag symbol data. Example given below, where Sequence 02 is using both YF and BCL and sequence 31 is also using BCL, in the compiled AML, we would find 3 individual Flag objects. image

The question is how to interpret the multiple connections to and from the Terminals on the FB, especially when the same terminal is used in a sequence and in further logic on the process SCD. Should OR and Split be automatically introduced by the AML? Or can these connections be handled directly at the Terminal level of the FB? Example below on Output BCL, with or without a Split, to further logic and sequences 02 and 31. The opposite question is the same on the Input, with or without a OR?

image

cdenisey commented 1 year ago

More discussions have been taken in the workshop held on 21.06.2023, refer to item 3. https://github.com/equinor/iec63131/blob/2c8fa87426e072459c5afc61afd97b1ce53cd28c/MOM%20AML%20Library%200.0.11%20workshop.docx

It has been agreed to add "SequenceIn" and "SequenceOut" terminals to all functions blocks, so that the Sequence Flags are correctly mapped and included in the AML definition of the SCD.

AlexTxen commented 1 year ago

Implemented in 0b96bc8ba03a825940aebb06bb70926710153656 Issue can be closed.

Added 'SequenceIn'/'SequenceOut' interfaces to function blocks.