I have a special case where we have pressure sensors represented as elements in an AF tree. All sensors have a pressure MV (measured value) attribute, which is linked to a PI point. I now want to calculate differential pressures for some of the sensors on a separate attribute. The calculation is a simple difference between the pressure of the sensor itself and the MV of another sensor. However, the other sensor used in the calculation is not fixed, but instead can change over time. An example of an AF tree with 3 elements and their attributes:
- Sensor A
- MV ==> PI Tag MV_A
- Sensor B
- MV ==> PI Tag MV_B
- Sensor C
- MV ==> PI Tag MV_C
- Calculation from 2016/10/21 to 2016/11/05: MV - Sensor A|MV
- Calculation from from 2016/11/06 until now: MV - Sensor B|MV
Is there an easy way to define the attribute DifferentialPressure on Sensor C? I would like to get the differential pressure historized, and also the sensor which was used to calculate the difference at any time.
We initially tried to model the phases where Sensor C was connected to another sensor using event frames (e.g. for the first period create an event frame from 2016/10/21 to 2016/11/05), and put the difference calculation into the event frame's attributes. This is working, however, we want to create differential pressure alarms using AF analyses from the result of the calculation, and there are no analyses inside an event frame. So event frames cannot be used, we have to perform the calculations inside elements. An additional restriction is that we do not want to use versioning on the AF tree, because not all client tools support versioning. Does anyone have an idea how we could implement this?
Thanks in advance and best regards