OPC and GENESIS64

GENESIS64 is a suite of tools that you can use to create state display and control software for equipment, machinery, or devices that use the OPC open process control standards of OPC.org. OPC standards exist for both real time devices, as well as for historical data that can be logged and replayed at a later data. There are several OPC standards, and the specification give manufacturers a significant amount of flexibility over which type of data is contained in the tag values or registers. The following is a short listing of some of the OPC standards:  

In the list above the three most important standards are OPC-DA, OPC-AE and OPC-HDA, and different application and tools of the GENESIS64 suite work with these different standards. You can see OPC-DA data in Process Points in GraphWorX64 , a Process Point being a label that displays the current value of the data source that you have connected that label to. Normally a Process Point displays the data of an OPC tag, which is a data source that has a specific address with one or more values (registers) being updated over time. Tags are often called points, because early in the development of OPC data sources were single valued. For this type of application, GraphWorX64 's Process Point is a real-time data display.

 

GENESIS64 and OPC standards provide the tools needed to automate the world's industries, from: airports, to water treatment plants, from HVAC and building controls to oil pipeline management, from pharmaceutical manufacturing plant recipe management to critical operations management in nuclear power plants. You can get some sense of the rich applications that can be created by opening the GenDemo application in the ICONICS Program Folder on the Start menu. The figure below, taken from the Industry Example screen provides a clickable starting point for you to view, deconstruct, and learn about how to create world class animation solutions.

 

The GENESIS64 Examples in the GenDemo Application

 

The AlarmWorX64 application, which has both client and server components, is another example of a real-time data display. Here the focus is on alarm and event type data that is specified by the OPC-AE standard. You can configure AlarmWorX64 to display real time alarm events inside a viewer application that originates on an alarm server application that is monitoring alarm-based OPC-AE devices. Another application, called the Alarm Logger can allows you to log alarm data into a file or into memory, and you can use an application to replay historical data using the replay parameters that you set.

 

The third major application used in the GENESIS64 suite, for the variation of data over time, is TrendWorX64, which uses the OPC-HDA standard to work with stored data. TrendWorX64, just like the AlarmWorX64 application, is a system of server and client applications as well as a logger. Since TrendWorX64 is meant to show the variance of data over time the display of the data is in chart or graph form that would allow these trends to be viewed conveniently. A common representation would be a strip chart with pens, but it is possible to represent aggregate data in formats such as pie charts or bar graphs.

 

Previous versions of the GENESIS64 automation suite before version 10 worked with the standards described above. The current version of GENESIS64 is based upon a newer OPC standard called OPC Unified Access or OPC UA which incorporates newer communication standards while retaining backwards compatibility. The original OPC communications model used first COM (the Common Object Model) or DCOM (Distributed COM) as their communication protocol and based applications on Microsoft's ActiveX technology. COM/ DCOM was a Windows only standard that had issues with both configuration and security, and could be difficult to implement. OPC UA moves OPC communications to the Service Oriented Architecture ( SOA ) based on the Windows .NET Framework Architecture.

 

OPC UA adds better multi-platform support for C, Java, and .NET applications, better support for multi-threading and multi-processor support, and a strengthened security model. The Base Services that are part of OPC UA's definition defines an optimized TCP protocol that makes the high speed data logger GENESIS64 Hyper Historian possible. Another OPC UA protocol is a Web-service based protocol that is used by the WebHMI application to make different components of GENESIS64 available within a browser. In OPC UA data nodes respond to command events using a Full Mesh Network model to return process data such as AE, DA, etc. as well as additional metadata; all of which is supported by the namespace or addressing scheme used by OPC UA.

 

Importantly, OPC UA has the following characteristics built into it:

You can read more about OPC standards at the OPC Foundation web site.

The OPC UA standard makes a number of important changes in the way GENESIS64 application can be run, as you will see in the next section, streamlining how data can be accessed and displayed.

Unified Data Display and Access

There are two places in which you can display process data inside the GENESIS64 application suite:

A GraphWorX64 Display

The Workbench is the central tool used to configure and manage the various servers and services required to access and use OPC data. Shown in the figure below is the FrameWorX server OPC UA Client Configuration form, with the menu that allows you to add or remove buttons from the navigation pane. All of the applications, tools, and features that are shown in the menu are available within the Workbench . When you open several of the GENESIS64 applications such as GraphWorX64, AlarmWorX64, TrendWorX64, or EarthWorX64 you see a design surface upon which you can manipulate the different objects and controls that are part of your automation solution. You can see how the different components of GENESIS64 communicate with the Workbench in the architecture diagram shown below.

 

The GENESIS64 System Architecture

The Workbench provides a unified interface that GENESIS64 components can communicate through.

 

When you open a server such as the FrameWorX Server you see a set of Configuration Forms that allow you to control objects and properties. The FrameWorX Server is a middleware server that can translate communications from one type of server such as OPC DA or GenBroker (another ICONICS communication server) to another format such as OPC UA, and visa versa. FrameWorX server is a central server that is required for most of the applications in the suite to run properly.

 

The FrameWorX Server within the Workbench Application

 

All of the applications that comprise the GENESIS64 automation suite are built on the principles of object oriented programming. If you have ever programmed in Visual Basic or another Microsoft visual language, then you are familiar with many of the principles required to understand building successful applications. In the figure below the process point in the lower right corner of the display of a booster station (AvaVal_38) has been selected and its position in the object hierarchy is shown in the Explorer pane at the top of the right hand side of the display. The process point is a dynamic label, and the properties of the dynamic action (here a tag value update from a data source) is displayed in the Dynamics pane below the Explorer. When the DataSource property is selected an Ellipsis button appears that lets you specify the data source.

 

A Sample Display in Configuration Mode with a Process Point Selected

 

GENESIS64 also centralizes the specification of data sources contained in its various databases, outside data sources, the specification of substitution strings or variables called aliases, and even the construction of expressions within an application called the Data Browser . The figure below shows a sample tab of the Data Browser that appears when the DataSource property was described. In this particular process point an expression was built using the Expression tab (which replaces the Expression Editor from previous GENESIS64 versions). The Data Browser can create expressions using other parts of the Data Browser. Here the expression uses a local simulator, which is a mathematical function that simulates an OPC data tag output. In the Data Browser tabs you can:

The Data Browser

The Data Browser provides a consistent inrterface for variable expression.

 

The Data Browser is a great time saver, and the expressions it creates are verified to be syntactically correct freeing the user from having to learn a great deal of arcane formatting and syntax.

 

See also:

OPC Overview