Neil Pate Posted September 23, 2015 Report Share Posted September 23, 2015 (edited) Hi there, Has anybody used the OPC UA client that is part of the DSC toolkit? I am trying to use it to connect to a PLC and am getting error -336653 "The status of the OPC UA server is uncertain" I am able to create a local OPC UA server in LabVIEW and connect to this with no issues from the LabVIEW OPC UA client, and can connect to the PLC just fine using a different client. After speaking with NI it looks like this may be a permission issue, but I have tried all the obvious things in the OPC UA client (like client and server certificates), with the same result. Any tips? Crossposted http://forums.ni.com/t5/LabVIEW/OPC-UA-client-cannot-connect-to-PLC/td-p/3195246 Edited September 23, 2015 by Neil Pate Quote Link to comment
drjdpowell Posted April 12, 2016 Report Share Posted April 12, 2016 Hi Neil, I'm looking in to using LabVIEW's OPC UA implimentation, both client and server, and wondered what your experiences were with it. Would you recommend it? -- James Quote Link to comment
Neil Pate Posted April 13, 2016 Author Report Share Posted April 13, 2016 Quite happy with it James... After NI patched the issue I mentioned in my first post that prevented proper authentication with name+password. I never got certificates working properly either, but this may have also been fixed by the patch. I have mainly used it as a client, and have production ready code stable with with approx 100 tags. I have created some proof of concept code to run the server side as well and it worked fine. My only issue is that the server does not allow to register for listeners, so you have to poll. I don't really know all the nuances of OPC-UA so perhaps this is normal, it just seems strange that the client can get periodic events (nicely handled in an event structure), but the server has to poll. I am planning on using it in several more projects, it certainly seems to do everything I need and is much easier to integrate into your codebase than other OPC-UA toolkits. 1 Quote Link to comment
drjdpowell Posted April 13, 2016 Report Share Posted April 13, 2016 Thanks Neil, The toolkit gives off a “not quite ready for prime time†vibe to me (including that annoying partial implementation of events, poor documentation, minimal single example, etc.) so I’m glad you are happy with it. I suspect it is an incomplete version of OPC-UA (no method calls?) but probably sufficient for the simple server I need to make. Thanks again, — James Quote Link to comment
Neil Pate Posted April 13, 2016 Author Report Share Posted April 13, 2016 Yes, it definitely is a bit bare-bones. Especially comparing it with the old "vanilla OPC" API that is included with the DSC toolkit. What is an OPC-UA method? Quote Link to comment
drjdpowell Posted April 13, 2016 Report Share Posted April 13, 2016 What is an OPC-UA method? Basically a function call on a server. Used for controlling the server. “Calibrateâ€, “Measure Sampleâ€, etc. Quote Link to comment
Neil Pate Posted April 13, 2016 Author Report Share Posted April 13, 2016 Ah ok. Definitely did not come across that and I poked around in the API quite a bit. Quote Link to comment
pato7 Posted April 25, 2016 Report Share Posted April 25, 2016 Hello Neil, I am working on a project at my university that is based on OPC UA labview data toolkit. I see you have good experience with OPC UA labview. As a test start, I was able to create a data structure of three folders with items and properties corresponding. But creating folders and items manually for each new folder and item we want to enter takes time and space in my code so I decided to extract the information from an excel sheet. In other words, if I have a list of 100 folders/items/properties arranged in an excelsheet or any type or data file, how can I define them using my OPC UA server on labview? So far i was able to exctract data as cluster of array of strings. I know there is an OPC UA vi that tranform node name array to node path but I am not able to reach a compatible data type input for it. I am stuck there. And I want to know if that VI can be used in a loop to enter the data and save the node paths generated. Any help would be highly appreciated, Thanks Thank you. fileread.vi Data2.xls Quote Link to comment
Neil Pate Posted April 27, 2016 Author Report Share Posted April 27, 2016 (edited) I read the node names from a file on disk, along with a description of their data type. This I use to set up the server, see attached. Note: I don't really have much OPC-UA experience, so cannot say if this is good or bad practice as I have done it. It works fine for my purposes though. The other frames of the case structure deal with the other possibilities, like Folder.Item etc Edited April 27, 2016 by Neil Pate Quote Link to comment
pato7 Posted April 27, 2016 Report Share Posted April 27, 2016 Thank you Neil, highly appreciated:) I'll try to reproduce the idea you gave me in my code. Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.