Professional OPC
Development Tools

logos

Online Forums

Technical support is provided through Support Forums below. Anybody can view them; you need to Register/Login to our site (see links in upper right corner) in order to Post questions. You do not have to be a licensed user of our product.

Please read Rules for forum posts before reporting your issue or asking a question. OPC Labs team is actively monitoring the forums, and replies as soon as possible. Various technical information can also be found in our Knowledge Base. For your convenience, we have also assembled a Frequently Asked Questions page.

Do not use the Contact page for technical issues.

What is the correct nodeId in my case?

More
19 Mar 2025 17:04 #13500 by support
 
What you did is fine for development - but insecure.

Secure way would be to place a copy of the (public part of the) server certificate into the proper certificate store (a directory on the disk, usually) so that the client can verify that it is connecting to the right server.

More info:

opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Late...%20Instance%20Certificate.html

Many times, this just means copying the file from "rejected" to "trusted" store.

Regards

Please Log in or Create an account to join the conversation.

More
19 Mar 2025 16:54 #13499 by aris
I was able to access the node but I got "Certificate Not Validated" popup. I bypass it by setting AcceptAnyCertificate=true. Is this the correct way or do I need to set anything else if I don't need to apply certificate at this stage?

EasyUAClient.SharedParameters.EngineParameters.CertificateAcceptancePolicy = new OpcLabs.EasyOpc.UA.Engine.UACertificateAcceptancePolicy()
{
    AcceptAnyCertificate = true
};
var client = new EasyUAClient();

 
Attachments:

Please Log in or Create an account to join the conversation.

More
19 Mar 2025 16:41 #13498 by aris
Attached is Server settings from UaExpert
 
Attachments:

Please Log in or Create an account to join the conversation.

More
19 Mar 2025 16:41 #13497 by support
That's not the right way to specify username and password.

For the correct example, see e.g. here:  opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Late...ind%20all%20registrations.html

Code:
            UAEndpointDescriptor gdsEndpointDescriptor =                 ((UAEndpointDescriptor)"opc.tcp://opcua.demo-this.com:58810/GlobalDiscoveryServer")                 .WithUserNameIdentity("appuser", "demo");


More about it:  opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Late...Authentication%20(Client).html  

Regards

Please Log in or Create an account to join the conversation.

More
19 Mar 2025 16:36 #13496 by aris
Yes, I used same username and password I used in UaExpert as shown below but still get BadUserAccessDenied. Can it be that I need to specify anything in addition to username and password?

 new UAReadArguments(new UAEndpointDescriptor(serverUrl) { UserName="user", Password="password" }, new UANodeDescriptor("ns=2;s=/Channel/Spindle/actSpeed[u1,1]"))


 

Please Log in or Create an account to join the conversation.

More
19 Mar 2025 16:09 #13495 by support
If you get BadUserAccessDenied: Now you have the right node probably. Did you use user authentication (username/password, for example) in uaExpert? If so you would have to do a corresponding thing in your code.
 

Please Log in or Create an account to join the conversation.

More
19 Mar 2025 16:08 - 19 Mar 2025 16:33 #13494 by support
I did use ns=2 intentionally. It is because UaExpert displayed the node with "NS2|..." in Data Access View which is their syntax (in that view only!) for the same thing.

ns=0 (namespace zero) is reserved for nodes defined by OPC Foundation. Your node is *not* in that namespace, In your image, an incorrect node is selected. You are looking at the Root node, not your node. You need to select (click on) your node in the left part of the screen, under Address Space (NOT under Data Access View). THEN you will see the right NodeId under Attributes.

Regards
 
Last edit: 19 Mar 2025 16:33 by support.

Please Log in or Create an account to join the conversation.

More
19 Mar 2025 15:50 #13493 by aris
I had a type in previous reply so I corrected it here:

Did you use "ns=2" as an example? It's just that according to the attached image the namespace is 0. So I did try `ns=2;s=/Channel/Spindle/actSpeed[u1,1]`, but now I get  BadUserAccessDenied for StatusCode. If I do use ns=0 (`ns=0;s=/Channel/Spindle/actSpeed[u1,1]`) I get BadNodeIdUnknown

Please Log in or Create an account to join the conversation.

More
19 Mar 2025 15:49 #13492 by aris
Did you use "ns=2" as an example? It's just that according to the attached image the namespace is 0. So I did try `ns=2;s=/Channel/Spindle/actSpeed[u1,1]`, but now I get  BadUserAccessDenied for StatusCode. If I do use ns=0 (`ns=2;s=/Channel/Spindle/actSpeed[u1,1]`) I get BadNodeIdUnknown

Please Log in or Create an account to join the conversation.

More
19 Mar 2025 15:41 #13491 by support
If you want to specify it as a string in QuickOPC, you can use "ns=2;s=/Channel/Spindle/actSpeed[u1,1]".

UaExpert will actually show the same to you if the select that node in the left pane (Address Space) and then inspect its NodeId attribute in the right pane (Attributes).

I hope this helps
Best regards
 

Please Log in or Create an account to join the conversation.

Moderators: supportvaclav.zaloudek
Time to create page: 0.160 seconds