How to move away from PI ACE?

Hi.

We have one PI ACE calculation running, which is somewhat complicated. What are the options for moving away from PI ACE? I want to try and see if I can implement it in Asset Analytics, as that would be the more transparent option. If I can do that, it will also make it easier for non-developers to troubleshoot.

However, if this is not doable, what other options do I have?

-Olav

Parents
  • The stock answer is "Use Asset Analytics" but in the real-world such an answer is frustrating because there are several instances where Asset Analytics is the poor or insufficient choice. The better answer would be "Use Asset Analytics IF Possible, otherwise write custom code." And I would STRONGLY urge that the custom code be with AF SDK in .NET.

     

    While Asset Analytics can be used in many situations, here are some areas where it would not work:

     

    1. If your code relies upon a 3rd party library.
    2. If your code has lots of looping or flow-control checks.
    3. If you want precise control over the output timestamp.

     

    If any of those apply to you, then you will need to re-write the code. My personal observations are that managed AF SDK code executes faster than unmanaged PI SDK, so again I would encourage you to consider AF SDK.

     

    One decision you would need is how to schedule the code to execute. PI ACE did make this easy since it was not just a calculation engine but was also a redundant scheduler.

     

    There is a GitHub repo that can help with scheduling:

    https://github.com/osisoft/OSI-Samples-PI-System/tree/main/docs/AF-SDK-Custom-Calculations-Docs

Reply
  • The stock answer is "Use Asset Analytics" but in the real-world such an answer is frustrating because there are several instances where Asset Analytics is the poor or insufficient choice. The better answer would be "Use Asset Analytics IF Possible, otherwise write custom code." And I would STRONGLY urge that the custom code be with AF SDK in .NET.

     

    While Asset Analytics can be used in many situations, here are some areas where it would not work:

     

    1. If your code relies upon a 3rd party library.
    2. If your code has lots of looping or flow-control checks.
    3. If you want precise control over the output timestamp.

     

    If any of those apply to you, then you will need to re-write the code. My personal observations are that managed AF SDK code executes faster than unmanaged PI SDK, so again I would encourage you to consider AF SDK.

     

    One decision you would need is how to schedule the code to execute. PI ACE did make this easy since it was not just a calculation engine but was also a redundant scheduler.

     

    There is a GitHub repo that can help with scheduling:

    https://github.com/osisoft/OSI-Samples-PI-System/tree/main/docs/AF-SDK-Custom-Calculations-Docs

Children
No Data