Difference Between OPC UA and OPC DA?
Asked Answered
C

5

29

Please explain what is the Difference Between OPC UA and OPC DA ?

In which condition which one should be used, and if any example can be provided for both OPC UA and OPC DA, it would be helpful

Chromatophore answered 4/6, 2015 at 11:41 Comment(1)
The OPC Foundation has now made OPC-UA code available on github github.com/OPCFoundation/UA-.NETStandardTallie
O
28

OPC-UA is the successor to OPC-DA. It has many benefits, one of the most prominent being that it is platform agnostic. There are SDKs available in a multitude of languages and OPC-UA can be implemented on anything from a tiny embedded to device running Linux, to a desktop running Windows, or a server running the OS of your choice.

For any new development, given the choice, OPC-UA should be used. The only reason to use OPC-DA at this point in time is if you're connecting to a legacy product that only supports OPC-DA and cannot be replaced or upgraded.

Octopod answered 4/6, 2015 at 13:20 Comment(4)
Agreed - but be aware of the client and/or servers you might interact with. While OPC-UA has been available for some time, there are still many, many more OPC-DA products available than there are OPC-UA products.Merited
It means we can use any OPC UA client product with any OPC UA server product. We dont need particular company's products both as client & the server ? Can you provide any example of OPC Server UA for Linux & what could be its client.?Chromatophore
Inductive Automation has an OPC-UA server that runs on linux. Any OPC-UA client, from any vendor, on any OS, can connect and get values from the server. (disclosure: I work for IA)Octopod
OPC UA is the successor for OPC (Classic), not only DA. Great place to start is at: opcfoundation.org/about/opc-technologies/opc-ua And indeed use UA in every new project. No more DCOM issues.Herbie
T
14

OPC UA is not only for OPC-DA, but for all OPC Classic (DA, AE, HDA, etc). OPC Classic uses DCOM communication for Client-Server connection. DCOM is for Windows OS. And, DCOM and RPC ports are a headache for engineers.

So, OPC UA is new technology which does not rely on DCOM communication and is platform (OS) independent. OPC UA supports Linux as well.

A lot of OPC servers in the market are not ready for OPC UA. But I believe they are on the way.

OPC client application developers need to focus that your OPC client app supports for which OPCs? For which purpose, e.g. AE:alarm and event collection or DA:data access)

Every OPC knowledge are avaliable at https://opcfoundation.org/. You can download source codes and some component Dlls but you must be a member.

Thersathersites answered 12/10, 2016 at 6:20 Comment(0)
E
5

OPC UA is the Unified Architecture of OPC.

Specification doesn't says anything about platform, OS etc.

OPC DA, is older version of OPC specification. Where there was data modelling (not to a greater extent like OPC UA has). Only information which was transferred between server and client is VQT (Value Quality and Time). Where as OPC UA has data and information Modelling, Along with VQT, there are many attributes/Properties which can be shared between server and client about a variable (in simple example, Say describing what this variable doing. Which is the conversion formula used, whether the variable is accessible by user or not! to name few).

OPC DA is completely OS Dependent. Where is OPC UA is independent of Operating system. Some using some of the OPC UA SDKs the Servers can be created on a platform where OS is not present

OPC DA communication medium is COM/DCOM. Where is OPC UA is about TCP/IP and/or HTTPS. it depends on SDK to support either both or any one of them.

these are some of the key differences.

Which one to use when:

  • My suggestion is, go with OPC UA irrespective of whether you have OPC DA servers or not. Because, there are some products in which with the Old OPC DA products data can still be collected with the new OPC UA based products.

  • OPC UA servers can be OS independent (it purely depends on type of SDK). In future if you want to migrate to any operating system then it will not be a ahead ache.

I hope this helped you to understand the difference.

Ellissa answered 6/2, 2017 at 15:36 Comment(1)
I think reason for negative voting is for verifying about one of the opc ua SDK.. please check the answer ..Ellissa
I
1

OPC-UA being a successor for OPC-DA provides the improved specification for the connectivity protocol implementation on different platforms and languages. The performance of the protocol is dependent on the implementation and there are SDK's that are certified by the OPC foundation for popular programming languages like JAVA, C#...The goal of the OPC UA is Platform independence, improve the ability to expose complex data and complex system representation.

Some legacy devices and software's may not support OPC-UA but it would be a good decision to adopt to OPC-UA since wrapper are available to convert OPC-DA to UA with minor cost in performance.

Isagogics answered 17/3, 2020 at 20:14 Comment(0)
S
0

For OPC-DA you can only use windows OS as a OPC Server. because DCOM protocol only supported by windows. On the other hand OPC-UA is cross platform even you can develop it a embedded devices. In old DCS and industrial devices , you can not find any OPC-UA server so you have to use OPC-DA. Because of DCOM, configuration of OPC-DA is too difficult and it can cause many strange problems

Sire answered 26/7, 2021 at 8:26 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.