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.

Allen Bradley & Kepware UA Client sample for C# Winforms

More
03 Oct 2025 14:24 #14390 by support
Hello.
Your code is fine.

The slowness is probably a combination of two factors:

1. Very first time performing the Read requires a lot of code to be compiled by .NET from MSIL to machine instructions (JIT: just-in-time compiling). Doing it the second time in the same process, this delay will be eliminated.

2. QuickOPC makes the OPC operations appear connection-less, but they still require a connection under the hood. And if the connection is not open, it takes some time to establish it. Users of GUI-based tools usually do one action to do the connection, the connection is established while they are deciding what to do the next, and when they then do the Read, it is *just* the Read timing that they observe. QuickOPC then keeps the connection open for a configurable time (I think 5 seconds by default), so subsequent Read-s should be quite fast. If the connection gets closed, the delay to open the connection will kick in again.

If you do any subscription, this effectively keeps the connection open (as opposed to just Read-s, Write-s etc.) until you explicitly unsubscribe.

You can also do it the way described here:  opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Late...tion%20Control%20Services.html

(QuickOPC Operation Control Services -> Connection Locking).

Best regards
 

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

More
02 Oct 2025 21:15 #14388 by AQO
thank you for your prompt response.  i did get the application working, however it is extremely slow (code attached).  it can take upwards of 5 seconds to read or write a single integer tag.  the entire application is nothing more than a single read or a single write. The Kepware connection to the PLC is quite fast as witnessed with the Kepware OPC_Client.

1.  can you provide any insight as to why it would be so slow?
2.  isn't it possible to have my application connect to the server and leave the connection open whilst my application is running?
Attachments:

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

More
02 Oct 2025 16:20 #14385 by support
Hello,
thank you for your interest in our products.

Example - read tag:  opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Late...Read%20a%20single%20value.html  

Example - write tag:  opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Late...rite%20a%20single%20value.html

Example: - subscribe:  opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Late...de%20for%20data%20changes.html

Please clarify what you mean by "i cannot get the existing sample code to function properly.  " - which sample code are you referring to? 

"Endpoint does not support the user identity type provided." may be caused, for example, that you are using an unauthenticated user (as in all examples above|), while the server is only configured to accept username/password. In such case, you need to add the username/password to your client code. An example of how this is done can be seen e.g. here:  opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Late...date%20GDS%20registration.html
- notice the use of .WithUserNameIdentity(..., ...) method.

If you keep getting problems, please post the code you are using, and if possible, also the server configration, or a screenshot of its endpoint configuration dialog(s).

Best regards
 

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

More
02 Oct 2025 15:04 #14384 by AQO
i am a long time user of ClientAce and Kepware and have been having difficulty getting your product to work.  Would you happen to have a C# sample project to read/write a tag and add a subscription.

As mentioned in the subject line, i am working on a C# Winforms application as a UA client to Kepware that is communicating with an Allen Bradley PLC.  My OS is Windows 11. For some reason, i cannot get the existing sample code to function properly.  i typically get the following fault:  - {BadUserAccessDenied}. Endpoint does not support the user identity type provided.

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

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