Any OPC Wisdom Here?

I’ve recently been asked to look into adding an OPC server to a QNX design
we’re in the midst of. OPC is “OLE for Process Control”, and “provides a
mechanism to provide data from a data source and communicate the data to any
client application in a standard way.” They tell me that most of the popular
HMI packages support OPC, so if a controller includes an OPC server, it is
compatible with all these packages.

OPC looks pretty cool to me. Lots of flexibility and power. I can see lots
of ways it could make things easier for us. The bad part is that it’s built
on DCOM (shudder), which, if I understand it correctly, is rarely used
outside of a Microsoft environment.

So on to the questions:
Anyone familiar with OPC? What do you think of it?
Do you know of an OPC server port to QNX 4.25? Neutrino?
Do you know of DCOM availability for QNX 4.25? Neutrino? Is it feasible?

Thanks,
Marty Doane
Rapistan Systems

Armin, I’m guessing this might be right up your alley.

Hi Marty,

In article <8mp43v$gfb$1@inn.qnx.com>, "Marty says…

I’ve recently been asked to look into adding an OPC server to a QNX design
we’re in the midst of. OPC is “OLE for Process Control”, and “provides a
mechanism to provide data from a data source and communicate the data to any
client application in a standard way.” They tell me that most of the popular
HMI packages support OPC, so if a controller includes an OPC server, it is
compatible with all these packages.

OPC looks pretty cool to me. Lots of flexibility and power.

I heard also about performance and reliability problems …

I can see lots of ways it could make things easier for us. The bad part is >that
it’s built on DCOM (shudder), which, if I understand it correctly, is >rarely
used outside of a Microsoft environment.

Yes … available for LINUX for free and for SCO with an incredible price.

So on to the questions:
Anyone familiar with OPC? What do you think of it?
Do you know of an OPC server port to QNX 4.25? Neutrino?

Not available …

Do you know of DCOM availability for QNX 4.25? Neutrino?

Not available …

Is it feasible?

AFAIK … No.

We offer an IEC1131-3 runtime system (soft PLC running QNX4) as an OPC frontend.

AT the QNX side you have just to read/write variables to/from a shared memory
segment. These variables are representing the process data of the ‘soft PLC’ and
are the data source of a M$ based OPC server which communicates via TCP/IP with
the QNX based ‘soft PLC’.

Well … that’s an ‘abuse’ of an QNX based ‘soft PLC’ but it’s a very pricy
solution and works out of the box.

More work would be to realize a QNX/Python (or NTO/Python) to MS/Python
communication using e.g. ‘Pyro’ (Python distributed objects) or CORBA. Pyro or
CORBA objects would then be the data source for an MS based OPC server which
must be customized for that purpose. (OPC toolkits are still expensive … )

Regards

Armin

“Marty Doane” <doanemr@rapistan.com> writes:

OPC looks pretty cool to me. Lots of flexibility and power. I can
see lots of ways it could make things easier for us. The bad part is
that it’s built on DCOM (shudder), which, if I understand it
correctly, is rarely used outside of a Microsoft environment.

So on to the questions:
Anyone familiar with OPC? What do you think of it?
Do you know of an OPC server port to QNX 4.25? Neutrino?
Do you know of DCOM availability for QNX 4.25? Neutrino? Is it feasible?

We have looked at the OPC issue. Our conclusion was that the best way
to do this would be to create a server on Windows that implements a
non-OPC TCP/IP stream to QNX, and translates that into an OPC
connection on the Windows side. This is just an extension of what
Cascade Connect does with DDE. Implementing OPC is actually pretty
difficult. The whole DCOM structure is more complex than it needs to
be, and forces a pretty heavy programming burden onto the programmer.

Incidentally, if you just want to share data between QNX programs and
Windows HMIs, consider using Cascade Connect. All of the popular HMIs
operate as DDE client/servers, and across the network you are pretty
much guaranteed to get better response from Cascade Connect than you
would from a networked OPC implementation.

Cheers,
Andrew


Andrew Thomas, President, Cogent Real-Time Systems Inc.
2430 Meadowpine Boulevard, Suite 105, Mississauga, Ontario, Canada L5N 6S2
Email: andrew@cogent.ca WWW: http://www.cogent.ca

Marty,

There is already one implementation of OPC server that communicates with QNX
box, and that is Virgo 2000 from AlterSys (see http://www.altersys.com),
which implements an OPC server for their QNX controller (pretty much the
same stuff you would like to do).

If you want to see the OPC server specifications, then follow
http://www.opcfoundation.org. Some companies will sell you tools to write
OPC servers (http://www.iconics.com).

See also http://dspace.dial.pipex.com/opc/.

Regards,

Zeljko


----- Original Message -----
From: “Marty Doane” <doanemr@rapistan.com>
Newsgroups: comp.os.qnx
Sent: Tuesday, August 08, 2000 10:06
Subject: Any OPC Wisdom Here?


I’ve recently been asked to look into adding an OPC server to a QNX design
we’re in the midst of. OPC is “OLE for Process Control”, and “provides a
mechanism to provide data from a data source and communicate the data to
any
client application in a standard way.” They tell me that most of the
popular
HMI packages support OPC, so if a controller includes an OPC server, it is
compatible with all these packages.

OPC looks pretty cool to me. Lots of flexibility and power. I can see lots
of ways it could make things easier for us. The bad part is that it’s
built
on DCOM (shudder), which, if I understand it correctly, is rarely used
outside of a Microsoft environment.

So on to the questions:
Anyone familiar with OPC? What do you think of it?
Do you know of an OPC server port to QNX 4.25? Neutrino?
Do you know of DCOM availability for QNX 4.25? Neutrino? Is it feasible?

Thanks,
Marty Doane
Rapistan Systems

Armin, I’m guessing this might be right up your alley.
\

“Marty Doane” <doanemr@rapistan.com> wrote in message
news:8mp43v$gfb$1@inn.qnx.com

I’ve recently been asked to look into adding an OPC server to a QNX design
we’re in the midst of. OPC is “OLE for Process Control”, and “provides a
mechanism to provide data from a data source and communicate the data to
any
client application in a standard way.” They tell me that most of the
popular
HMI packages support OPC, so if a controller includes an OPC server, it is
compatible with all these packages.

OPC looks pretty cool to me. Lots of flexibility and power. I can see lots
of ways it could make things easier for us. The bad part is that it’s
built
on DCOM (shudder), which, if I understand it correctly, is rarely used
outside of a Microsoft environment.

So on to the questions:
Anyone familiar with OPC? What do you think of it?
Do you know of an OPC server port to QNX 4.25? Neutrino?
Do you know of DCOM availability for QNX 4.25? Neutrino? Is it feasible?

Thanks,
Marty Doane
Rapistan Systems

Armin, I’m guessing this might be right up your alley.

In article <8mpkkk$1b5h@drn.newsguy.com>, Armin says…

Just to draw here the right picture …

The ‘soft PLC’ we use is dynamically extendable with ‘tag database’ functions
and Berkeley DB (btree) functionality … beside the shared memory interface.

Regards

Armin

Hi Marty,

In article <8mp43v$gfb$> 1@inn.qnx.com> >, "Marty says…

I’ve recently been asked to look into adding an OPC server to a QNX design
we’re in the midst of. OPC is “OLE for Process Control”, and “provides a
mechanism to provide data from a data source and communicate the data to any
client application in a standard way.” They tell me that most of the popular
HMI packages support OPC, so if a controller includes an OPC server, it is
compatible with all these packages.

OPC looks pretty cool to me. Lots of flexibility and power.

I heard also about performance and reliability problems …

I can see lots of ways it could make things easier for us. The bad part is >that
it’s built on DCOM (shudder), which, if I understand it correctly, is >rarely
used outside of a Microsoft environment.

Yes … available for LINUX for free and for SCO with an incredible price.

So on to the questions:
Anyone familiar with OPC? What do you think of it?
Do you know of an OPC server port to QNX 4.25? Neutrino?

Not available …

Do you know of DCOM availability for QNX 4.25? Neutrino?

Not available …

Is it feasible?

AFAIK … No.

We offer an IEC1131-3 runtime system (soft PLC running QNX4) as an OPC frontend.

AT the QNX side you have just to read/write variables to/from a shared memory
segment. These variables are representing the process data of the ‘soft PLC’ and
are the data source of a M$ based OPC server which communicates via TCP/IP with
the QNX based ‘soft PLC’.

Well … that’s an ‘abuse’ of an QNX based ‘soft PLC’ but it’s a very pricy
solution and works out of the box.

More work would be to realize a QNX/Python (or NTO/Python) to MS/Python
communication using e.g. ‘Pyro’ (Python distributed objects) or CORBA. Pyro or
CORBA objects would then be the data source for an MS based OPC server which
must be customized for that purpose. (OPC toolkits are still expensive … )

Regards

Armin

Marty Doane <doanemr@rapistan.com> wrote in message
news:8mp43v$gfb$1@inn.qnx.com

The bad part is that it’s built
on DCOM (shudder), which, if I understand it correctly, is rarely used
outside of a Microsoft environment.

You might want to look into OPC XML.

From: http://www.opcfoundation.org/01_about/opc_coffeemaker-appendix2.htm

Al Chisholm, OPC’s Technical Director and Chief Technical Officer at
Intellution Corp. chair the OPC XML working group. The OPC XML working group
will define industry-standard OPC XML data schema enabling factory
floor-to-business computing. The new OPC XML schema will be based on OPC
specifications that define application interoperability and communications
between disparate industrial automation devices, systems and applications
running across the manufacturing enterprise. OPC XML will provide a way to
expose OPC data to automation and business applications over the Internet
and cross-platform, essentially providing OPC-compliant solutions across the
manufacturing enterprise.