06/10/2014
There exists a solution to let you use your preferable language to access DA/AE/HDA, supporting JavaScript/Python/Java/C++/C#/Swift etc. In my opinion it gives 20 years old legacy OPC a second life and modernizes them in a secure and safe way. It also brings legacy OPC to mobile device much easily and natively. Most importantly you don’t need any DCOM knowledge and worry free for any future DCOM vulnerability or hardening issue. Here is the link. Cheers!
03/14/2023
jiyang.hu@aspentech.com said
There exists a solution to let you use your preferable language to access DA/AE/HDA, supporting JavaScript/Python/Java/C++/C#/Swift etc. In my opinion it gives 20 years old legacy OPC a second life and modernizes them in a secure and safe way. It also brings legacy OPC to mobile device much easily and natively. Most importantly you don’t need any DCOM knowledge and worry free for any future DCOM vulnerability or hardening issue. Here is the link. Cheers!
Ok, thanks. I will try that code and if I still face any problem, I will message you. 🙂
03/06/2023
I got quite a bit deeper into the topic. For everyone who is just getting started like me:
- OPC XML DA is essentially XML documents sent via HTTP. You can send XML documents with your favorite fetch solution, e.g. [axios] if you’re using [node].
- There is a written specification that comes with examples. Search google for “opc xml da specification 1.01 doctype:pdf” to find the latest, or [ask the OPC Foundation], or download it from [the official site] if your organization has access.
- You can find the XML specification [here]. Note that in some cases it disagrees with the written specification on whether a property is required, e.g. due to hierarchical parameters.
- Since OPC XML DA uses SOAP, I am now using [node-soap] which makes it reasonably easy to use OPC XML DA in JavaScript. node-soap can be extended with TypeScript types and [wsdl-tsclient] is a project for converting .wsdl to types automatically. After a few tweaks to the .wsdl, it generated some reasonable results that I am refining manually. Let me know if you’re interested in a copy of my types.
1 Guest(s)