Technical FAQs

Ask a Question

How can 3rd party OPC Clients see ION data?


Given the large number of OPC clients available today it is a common requirement to import information from the ION Enterprise system into these OPC clients.    By information we mean “real-time” data as used by the OPC Data Access Specification.    Note that this does not include historical/trending data or events.      This data is best managed within the ION Enterprise system, which stores the information in an ODBC compliant database.    Other software systems that require this data can make calls onto the database to retrieve this type of information directly.

Related Material

Much of the introduction is taken from the OPC Foundations document found at

Key Acronyms Used In This Document:

OPC (OLE for Process Control) is a defined set of interfaces, based on OLE/COM and DCOM technology, for truly open software application interoperability between automation/control applications, field systems/devices and business/office applications.

OPC is based on COM (Microsoft Component Object Model), a software architecture that allows one program to use the interface of another program to get information from it (as long as it is programmed as a COM component).

DCOM (Distributed Component Object Model) is the network-aware version of COM technology.


OPC is a series of standards specifications.The first standard and most commonly used standard is called the Data Access Specification.There are hundreds of OPC Data Access servers and clients. For a complete list of the current OPC standards visit the OPC Foundation’s website at

The goal of OPC is Plug-and-Play and it achieves this by being based on Microsoft’s OLE (now ActiveX), COM (component object model) and DCOM (distributed component object model) technologies. The OPC specifications consist of a standard set of interfaces, properties, and methods that provide a common interface for communicating with diverse range of devices, regardless of the controlling software or other devices in the system.So, the OPC specifications support interoperability amongst different computing platforms and it has been proven in hundreds of plants and thousands of applications.

The OPC Data Access Specification provides interoperability between clients and servers for what is commonly called “Real-time Data”.This consists of simple data types such as floating point and whole numbers and follows a simple request/reply process. The OPC client requests data from the OPC server which then communicates with the device. The OPC server is like a device driver in the Windows operating system.It knows how to communicate to the raw device in whatever method is required. But it also provides a consistent interface to the client system.Thus, the client system does not need to know anything about the special communication requirements of the device and plug-and-play is achieved.

There are hundreds of OPC servers available providing accesses to virtually any protocol. For just two of the many examples see these web sites for a listing of all the protocols supported:

ION Enterprise

ION Enterprise™ web-enabled software is a complete energy information management solution for your business. It offers control capabilities; comprehensive power quality and reliability analysis and can help you reduce energy related costs. A powerful suite of applications allows you to collect, process, analyze, store, and share data across your entire enterprise. For more information see the Power Measurement Ltd web site:

ION Enterprise and OPC

Given the large number of OPC clients available today it is a common requirement to import information from the ION Enterprise system into these OPC clients. To respond to this need OPC support was added to ION Enterprise sofware in release 5.5. By information we mean “real-time” data as used by the OPC Data Access Specification.Note that this does not include historical/trending data or events.This data is best managed within the ION Enterprise system, which stores the information in an ODBC compliant database.Other software systems that require this data can make calls onto the database to retrieve this type of information directly.

You can take two distinct approaches to obtain OPC data from the ION system.Both make use of the Modbus protocol(s) and require an OPC Modbus server.Two examples of the many that are available include:

With the OPC Modbus server you can take two distinct approaches.

(1)Communicate directly with the ION meter via serial or Ethernet and use the Modbus protocol. Or

(2)Communicate with the ION Enterprise software system over serial or Ethernet and use the Modbus protocol.

OPC Modbus Direct Meter Connection

Using your choice of OPC Modbus server make a physical connection to the meter. ION meters support the Modbus RTU protocol on their RS-485 serial ports and the Modbus TCP protocol via their Ethernet ports.See following two figures.

OPC Modbus Connection To ION Enterprise

Sometime it is only possible to establish one connection with the ION device or it is more efficient to let one client connect.In this case you can set an OPC server to communicate with ION Enterprise, which, in turn, communicates with the ION devices.

The key is to use the VIP (Virtual ION Processor) component of ION Enterprise.The VIP can act as a Modbus RTU slave via the PC’s serial COM port and provide real-time data to an OPC Modbus Server.

The OPC server can be on the same or another PC.If the distance is large then you may choose to use a 3rd party device to convert the serial to Ethernet and the Modbus RTU to Modbus TCP.A good device for this can be obtained from Power Measurement directly from Lantronix.Specify the USD-10-IAP and obtain the serial connection block to make the wiring easier.

See the following diagram shows the second case. If a direct serial connection is used then omit the Lantronix UDS-10-IAP.If the OPC ModbusRTU Server is running on the same PC as ION Enterprise then use a NULL modem to connect the two serial ports together. After the diagram we will explore what steps are required to implement this solution.

Steps to implement.

The following procedure assumes a certain amount of familiarity with the ION Enterprise system.Basic training should suffice.

At the ION Enterprise server:

(1)It is recommended that you create a new VIP service to manage the role of Modbus slave, which the OPC Server will communicate with. Since all ION software nodes require a unique name you need to find a suitable name.A suggestion is to call this VIP''VIPOPC.<servername>'' where servername is the name of your machine. Next, open a DOS command prompt, change to the ION Enterprise\system\bin directory, and run

vip -Service –N<vipname>

where you replace <vipname> as described above. This will register a new VIP on your system. You will start this new server after completing step 2.

(2)In this step you will modify the new VIP startup parameters.Go to the ION Enterprise management console.Open the Tools menu. Select System and then VIP Setup.A small applet will open that will let you configure your VIPs.For the new one make the following changes:

a.Under Global Parameters change the Module Update Period from 100 to 1000ms. (This reduces CPU loading and does not affect the end results.)

b.Under Global Parameters change the Client Polling Frequency from LOW to MEDIUM. (This means the VIP competes equally with VISTA clients and the LogServer for communication bandwidth to the ION devices.)

c.Under Modbus Network select Slave ports.Click the 'ADD COM Port' button and add select a com port.Once the port has been added you can also adjust the Unit Id and/or Baud Rate.

d.Save the changes.

(3)Start the new VIP. (Control panel, Services ... locate the new ION VIP service and start it.)

(4)Start up ION Designer and open the new VIP for editing.

a.For each ION device that the OPC client needs data from, create a Modbus Slave module.

b.Link the modules inputs to the parameters you want from the meter (use the ION button just under the menu bar.)For example, you can link to the kW from an ION device.

c.Edit the new slave modules setup registers. For example suppose the device is measuring a large power system where the power flows in both directions.You can set the data type to Signed32 (to allow for negative numbers) and set the scaling registers to scale the large MW values down by a factor of 1,000.Set InFull/InZero to plus/minus one billion and set OutFull/OutZero to plus/minus one million. Or course, the use of scaling depends on the application. To get started it is best to not use scaling and keep the setup simple.

d.Edit the new slave module’s Base Address register and set it to something that suits. For example, the first meter/slave module could use 41000.The next could use 41050. The next 41100. And onward.This way you have 50 x 16-bit Modbus registers per meter/slave module. This provides 25 x 32-bit data points per meter.

(5)Physically connect the ION Enterprise serial com port to the OPC ModbusRTU server.(Note these could be on the same machine and you could use a NULL Modem cable to connect COM1 to COM2.)

a.If the OPC ModbusRTU Server needs to be located more than 50 feet from the ION Enterprise server then obtain a UDS10-IAP from Lantronix (Power Measurement resells these devices).The UDS10-AIP can convert serial to Ethernet and it converts the Modbus RTU (serial) to Modbus TCP (Ethernet).

(6)Configure the OPC Server.

If you have further questions please call Power Measurement or send email to

  • Original article#9825 (SWKB-0252)

    Last Modified: 11 June 2008

    Applies To: ION Enterprise 5.5 and beyond


    All content © 1992-2007 Schneider Electric

Was this helpful?
What can we do to improve the information ?