- Home
- Companies
- EXELE Information Systems, Inc.
- Software
- EXELE - Version EDICTvb.Net - Advance ...
EXELE - Version EDICTvb.Net -Advance Calculation Engine for OSISOFT PI
EDICTvb.Net allows you to easily create process calculations that use PI tags as equation inputs and outputs. EDICTvb.Net handles all of the “plumbing” for your equations, letting you concentrate on your calculation logic. Users create and build their calculations with the built-in Equation Editor; under-the-hood, our calculation products use the Microsoft.Net Frameworks and/or Visual Basic.Net to build high-performance calculation libraries. EDICTvb.Net is an open calculation “framework”, shielding calculation authors from the complexities of custom programming, yet giving users the option to access and use all features of Visual Basic.Net (variables, loops, if..then..else, user functions) and the .Net Framework (relational databases, file read/write, Web Services, XML etc.).

Programmers and non-programmers can easily use our Equation Editor to define the logic and arithmetic needed for their equations. EDICTvb.Net will then build a compiled Microsoft Visual Basic .Net program that contains the necessary PI calls, scheduling, and error handling required to execute your equations on a configured interval, outputting the results to other PI tags.
Each equation library contains one or more equations (outputs) and can communicate with tags on multiple PI Servers. Our Equation Scheduler allows you to configure, start, stop and monitor your equations. Once started, you can easily view the details of running equations (inputs, outputs, errors) with EDICTvb.Net’s built-in Library Snapshot utility.
Example EDICTvb.Net logic in the Equation Editor:
Visual Studio/Visual Basic.Net (optional)
EDICTvb.Net uses the .Net Framework’s compiler “under the hood” to create the calculation executables. Although Visual Basic.Net is not required for building EDICTvb.Net equations, some features require that you have a version of Visual Basic.Net installed on the EDICTvb.Net computer.
EDICTvb.Net supports Visual Studio/Visual Basic.Net 2005 through 2015 including the Express and Community versions (free from Microsoft)
Requirements- Operating System: Windows XP, Server 2003, Vista, Windows 7, Server 2008, Windows 8, Server 2012/2016
Both 32 and 64-bit platforms are supported. - Compiler: .Net Framework
Optional, but recommended: Visual Basic.Net - PI Server(s):
PI 3 Server or Rockwell Factory Talk Historian and PISDK
EDICTvb.Net can communicate with PI Servers located locally or across the network.
EDICTvb.Net allows you to read and write data to one or more PI Servers with minimal effort. You simply enter the logic in a VB.Net-like syntax using the PI tag names directly in your equations.
Normally, you would use a programming language (such as C, C++, C#, or Visual Basic) and underlying PI calls to develop such equations. Using EDICTvb.Net, you only need to provide minimal information for the equation including:
- Name of the PI tag to receive the result of the equation
- Name of PI tags, variables, functions and constants used in the equation
- Associations to be made between the PI tags, variables functions and constants
The above information is stored in one or more text files called EDICTvb.Net libraries. Once you have provided this information in a library, EDICTvb.Net builds a compiled Visual Basic .NET executable that will perform the calculations and output the results to PI tags on the PI Server.
EDICTvb.Net will dramatically cut your development time and easily allows non-programmers to create complex calculations that read and write PI data.
Standardizing: EDICTvb.Net gives you a standard method for
- Connecting to one or more PI servers
- Accessing current and historical PI data and aggregates
- Handling lost connections
- Retrieving tag values
- Writing tag values
- Providing application error handing
- Scheduling execution
- Performing aggregate function calls (average, min, max, …)
- Code documentation
Advantages: Using EDICTvb.Net offers many advantages:
- Can significantly reduce the number of lines of code
- Accepts PI tag names directly in logic
- Automatically handles equation run-intervals (down to 50 milliseconds)
- Generates uniform and easy to maintain program
- Multiple debug options including built-in snapshots of running equation inputs and outputs
- Built-in functions for current, historical and aggregate PI tag values
- Support for user-defined functions and subroutines
- Local variables that retain their values between executions (allows you to reference values from previous runs)
- Order-of-execution control for all equations in a library
- Equation results can be tested over multiple executions before equations are deployed
- Ability to recalculate equations if logic or inputs have changed
- Built-in calculation diagnostics (latest completed execution and execution times)
- Remote monitoring, starting, and stopping of calculations (packaged Scheduler or custom code using our API)
- Access to the entire VB.Net language (math function, language structure,..).
Because you can easily move data into and out of one or more PI Servers, EDICTvb.Net can be used to quickly create interfaces to/from/between PI Servers and other data sources (relational databases, etc).
EDICTvb.Net and Visual Basic.NetExele’s calculation products do not require Visual Studio/Visual Basic.Net to build calculations, although certain functions may require it (i.e. creating user functions, Visual Studio debugging). If you require Visual Studio , we support most versions including the free “Express” versions available from Microsoft.
Because EDICTvb.Net creates .Net calculation processes, you can take advantage of this rich framework within your equation logic.
This includes
- Access to the entire Visual Basic language and .Net Framework
- Support for user-defined functions and subroutines
- Ability to call external assemblies and Web Services
- Use of Visual Basic constructs (If..Then..Else, Arrays, Variables)
- Retrieval of values from relational databases (Oracle, SQL Server, Access, …)
- Outputting of data to relational databases
- Reading and writing of files
