Two alarm systems in OpcDbGateway

Industrial alarm systems provide logging and alerting to various unforeseen situations in the manufacturing process, machinery and equipment. They are often part of the control and monitoring systems to assess and manage values ​​of the process variables. If there is a deviation of one or more values ​​of the process variables from the desired “normal” state, then this state is evaluated as “alarm” and highlighted in some way, eg. colour or flashing at a glance the status of alarm sources.

Configuring of static/dynamic alarm in configuration application of the OpcDbGateway
Configuring of static/dynamic alarm in configuration application of the OpcDbGateway


There are two basic types of alarms: static and dynamic. Static alarms have two states – active / inactive. Dynamic alarm uses two variables – a source of alarm variable and source of acknowledgment. The confirmation (acknowledgment) usually ensures a human operator. He confirms the information about the alarm situation. A pair of variables provides four possible states of the alarm entity:  inactive, active, acknowledged and gone (resolved). To the state acknowledged the alarm entity gets if the operator or any downstream device confirms that the alarm situation is known.

OpcDbGateway can be used not only as a control and monitoring system but also as an alarm system. It even offers two alarm systems – (1) according to the OPC Foundation standard –  OPC AE and (2) a proprietary alarm system, which provides several advantages which you can inquire in the document Alarms in OpcDbGateway.

In an earlier post – Mapping database tables in OpcDbGateway , it was explained how the variables from different devices and data sources are mapped to memory operands. They can be used in the proprietary alarm system as alarm sources and acknowledgment sources.  Since configurable functionality OpcDbGateway enables numerous functions exercised over the memory operands, the proprietary alarm system in OpcDbGateway is extremely flexible.


New generation of OpcDbGateway

The version 5 of the tool for software applications integrationOpcDbGateway offers number of improvements in runtime, configuration and also in the auxiliary jointly distributed applications. One of the most appealing features also in previous versions was automatic mapping of address spaces of external OPC servers to the OpcDbGateway address space. The new generation of the product enables alike feature also for process databases – automatic mapping of database tables or vice versa – creating of tables according to the OpcDbGateway configuration.

The latest OpcDbGateway version is available, and already tested for the latest versions of operating systems, Windows 8 and Windows Server 2012. Still it is not obvious that the products tested for operating systems for the x86 platform operate reliably also on x64 hardware platform. Putting new line of products for all kinds of platforms and versions of older and newer Windows operating systems was therefore quite time-consuming.

OpcDbGateway provides functionality of OPC DA, AE, UA, XML DA server, OPC client, multidatabase client, DDE client, SCADA server, platform for cyclic dalata processing, platform for event oriented processing, SOA applications,
OpcDbGateway -what is it,

Increased efficiency of runtime application in new version opens opportunity to use OpcDbGateway in more demanding applications with thousands of interconnected data points than ever.

Better keeping of synchronous controller period means that OpcDbGateway can be seen as a soft real-time operating system. Possibility to use it in demanding applications is enhanced by the implementation of the new OPC client in OpcDbGateway. For each external OPC server in the version 5, multiple OPC groups can be defined in internal OPC client. It reduces unnecessary data transfers and thus increases the number of connectable data points and decreases demands on the hardware used.

Very important aid for productivity increasing and configuration errors reducing in applications integration presented already in previous versions the automatic mapping of address space of external OPC servers and the configuration of external DDE servers to the configuration of the OpcDbGateway. Similar functionality for automatic mapping of database tables to the OpcDbGateway configuration was implemented in the new version of the product. It should enhance the desirability of OpcDbGateway for integrating real-time data with data from databases in business applications. Except of this, the OpcDbGateway configuring application allows now also the opposite process – the creation of a database table configured in OpcDbGateway configurator in the connected database.

OpcDbGateway can work with many different databases using different database drivers now.

Product combines sequential functionality (implementation of a sequence programmed or configured commands) and event-driven functionality. Events are initiated in OpcDbGateway by triggers. Triggering can be based on time or on an internal variable – memory operand value. Given the importance of this feature, extending functionality and more transparent user interface for configuring of triggers and events is a significant benefit. Triggers with period in milliseconds or in weeks and years. can be now configured in a single transparent manner.

The monitor view in the configurator enabled in previous versions an option only to read OPC items by testing of a configuration. Currently, you can already also write OPC items, which eliminates the need for external OPC client for testing.

Configuration application was accompanied by a separate output window with three tabs where you can watch status of alarm sources, read the contents of the attached databases by freely definable SQL queries and to monitor logging files in real-time.
Users of OpcDbGateway can chose between two alarm systems. The first one is implemented according to the OPC AE specification. Alarming is there boundled with OPC items of the internal OPC server. It is usable together with OPC AE alarm client applications from different vendors. The second one is boundled with values of shared memory operands. Source as of the alarm in this case as well as a variable for alarm quitting is a memory operand. In regard of mapping of different external data sources as external OPC servers, OPC clients, databases, devices communicating using different protocols implemented within enhancing DLL‘s to the shared memory operands, this alarm system is very flexible. Except of this, it provides alarm history saved in process database and also in alarm log files. An alarm client in configuring application is implemented as an ActiveX. Customers can use this ActiveX in own alarm client applications as well.

Sometimes small changes greatly simplify usability. Such simple improvement is structuring of system variables that enable powerful monitoring of runtime application through OPC server interface, according to the different categories in the directory structure of the internal OPC server in the OpcDbGateway.

We believe that the new generation of product brings new application possibilities and satisfaction to users.

Mapping database tables in OpcDbGateway

In the previous post, it was shown that OpcDbGateway can be perceived as a funnel where real time data from OPC and DDE servers, data intermediated trough other communication drivers and data from different databases flow.

Mapping of OPC server address spaces as well as items from the DDE server configuration to the OpcDbGateway configuration means a substantial increase in applications integration productivity. Configuring sometimes thousands of data points for address spaces of external OPC servers can take weeks. If we had to configure the same data in OpcDbGateway it would be not only a waste of time but also a huge potential for false entries in configuration. This problem, since the first versions of OpcDbGateway configuration application, was solved using software wizards.

If you need to integrate corporate database applications, it is equally important to be able to mapping functionality from database tables to the OpcDbGateway configuration. In version 5 of OpcDbGateway was implemented software wizard for this purpose.


How it functions

After defining a connection string to the database is possible in the OpcDbGateway configurator choose the table from the database that we use in the configuration. In the next step, you can select the table columns and assign them to the database operands that are used to access either of the individual cells in a table column or the entire column. Using configurable or programmable functionality OpcDbGateway we can use database operands to interconnect data different data sources as shown in the figure below.

Mapping also works in the opposite direction. If we define the table first in the configurator OpcDbGateway can be connected to create a database with a single click.

With the tables in the configuration OpcDbGateway we can work easily either using configurable commands or by using SQL language. The content of the table we can also view at runtime in the configurator.

The next post will explain how it is possible for the content of linked database tables accessed via the OPC interface.