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.

× If you are developing in .NET, but are using the OPC-UA (OPC Unified Architecture), please post in the QuickOPC-UA category instead.

OPC Server Properties

More
02 May 2024 14:47 #12756 by support
Replied by support on topic OPC Server Properties
Hello.

Unless the server implemetation is screwed up, you should be able to obtain the individual pieces. Some of them are defined by OPC A&E, some of them might be server-specific, so-called attributes.

Read:

- opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Late...ts.AEEventData_properties.html (shows which info is available with each event)

- opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Late...%20an%20event%20attribute.html (shows how to browse for the attributes)

- opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Late...ieve%20attribute%20values.html (shows how to specify which additional attributes should be delivered with the events)

---
Please start a new topic on the forums when you have a new question. Do not put more and more unrelated questions to a topic that was started for something else.
The following user(s) said Thank You: Jannie@Moore

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

More
02 May 2024 11:49 #12755 by Jannie@Moore
Replied by Jannie@Moore on topic OPC Server Properties
Hi , I was using third party OPC Explorer, so what im asking is, Is it gonna display that way when i use QuickOPC API, or i will be able to get values per attributes.

here is an example of the value in OPC Explorer.

1234 Overview\093LSD1083/1 2016-09-15 06:51:44.267 AM Oil Lvl High High Alarm at 78.00 4 -2147483648 64 Level Warning High 192 Yes 2016-09-15 06:51:44.267 AM 704843766 129 3 IEVENT ACTIVE TIME =15/09/2016 06:51:44 IEVENT UNIQUE EVENT ID =633043064636781,5889 IEVENT COMMENT = IEVENT SUBCONDITION NAME =Warning High IEVENT CONDITION NAME =Level IEVENT CATEGORY DESCRIPTION =Level IEVENT CATEGORY ID =-2147483648 IEVENT SEVERITY =64 IEVENT TYPE =32 CLASSNAME =Warning TYPENAME =Warning High FORECOLOR =255 BACKCOLOR =16777215 FLASHCOLOR =16777215 FLAGS =13631557 TEXT01 =043LST1003/1 TEXT02 =TS Oil Overview TEXT03 = Oil Lvl High High Alarm at 78.00 TEXT04 = TEXT05 = TEXT06 = TEXT07 = TEXT08 = TEXT09 = TEXT10 = PROCESSVALUE01 =78 PROCESSVALUE02 =0 PROCESSVALUE03 =0 PROCESSVALUE04 =29 PROCESSVALUE05 = PROCESSVALUE06 = PROCESSVALUE07 = PROCESSVALUE08 = PROCESSVALUE09 = PROCESSVALUE10 = STATETEXT =C INFOTEXT = LOOPINALARM =704843766 CLASSID =2 TYPEID =19 MODIFYSTATE =65537 AGNR =0 CPUNR =0 DURATION =0 COUNTER =2257 QUITSTATETEXT =QS QUITCOUNT =1523 PARAMETER =1166 BLOCKINFO = ALARMCOUNT =2222 LOCKCOUNT =0 PRIORITY =1 APPLICATION = COMPUTER = USER = COMMENT = HIDDEN-COUNT =0 BIG COUNTER =633043064636781,5889 OS-HIDDEN =False OS EVENTID =704843766 OPCSTATE ENABLED=true ACTIVE=true ACKED=false OPCCHANGED ACTIVE_STATE=true ACK_STATE=false ENABLE_STATE=false QUALITY=false SEVERITY=false SUBCONDITION=false MESSAGE=false ATTRIBUTE=true

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

More
02 May 2024 10:38 #12754 by support
Replied by support on topic OPC Server Properties
What do you mean that it is received as a string? Please post here the code you use to process/display the event.

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

More
02 May 2024 09:03 #12753 by Jannie@Moore
Replied by Jannie@Moore on topic OPC Server Properties
Hi, on OPC Classic A&E. when receiving data it is received as single string that contain the following about the event.
 Event type
 Severity
 Category
 Area
 Code

Using QuickOPC is it possible to filter this attribute from the string. if so please provide an example.

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

More
02 May 2024 06:19 #12752 by Jannie@Moore
Replied by Jannie@Moore on topic OPC Server Properties
Thank you.

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

More
01 May 2024 10:18 #12749 by support
Replied by support on topic OPC Server Properties
This is globally on the server. Here is the requested example:

// This example shows how to read the build information of the server.
// See also: https://reference.opcfoundation.org/Core/Part5/v105/docs/7.7 and
// https://reference.opcfoundation.org/Core/Part5/v104/docs/12.4 .
//
// Find all latest examples here: https://opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Latest/examples.html .
// OPC client and subscriber examples in C# on GitHub: https://github.com/OPCLabs/Examples-QuickOPC-CSharp .
// Missing some example? Ask us for it on our Online Forums, https://www.opclabs.com/forum/index ! You do not have to own
// a commercial license in order to use Online Forums, and we reply to every post.
 
using System;
using OpcLabs.BaseLib.OperationModel;
using OpcLabs.EasyOpc.UA;
using OpcLabs.EasyOpc.UA.AddressSpace.Standard;
using OpcLabs.EasyOpc.UA.OperationModel;
 
namespace UADocExamples.InformationModel
{
    partial class BuildInfoType
    {
        public static void Main1()
        {
            UAEndpointDescriptor endpointDescriptor =
                "opc.tcp://opcua.demo-this.com:51210/UA/SampleServer";
            // or "http://opcua.demo-this.com:51211/UA/SampleServer" (currently not supported)
            // or "https://opcua.demo-this.com:51212/UA/SampleServer/"
 
            // Instantiate the client object.
            var client = new EasyUAClient();
 
            // Obtain values. By default, the Value attributes of the nodes will be read.
            var readArgumentsArray = new[]
            {
                new UAReadArguments(endpointDescriptor, UAVariableIds.ServerStatusType_BuildInfo_BuildDate),
                new UAReadArguments(endpointDescriptor, UAVariableIds.ServerStatusType_BuildInfo_BuildNumber),
                new UAReadArguments(endpointDescriptor, UAVariableIds.ServerStatusType_BuildInfo_ManufacturerName),
                new UAReadArguments(endpointDescriptor, UAVariableIds.ServerStatusType_BuildInfo_ProductName),
                new UAReadArguments(endpointDescriptor, UAVariableIds.ServerStatusType_BuildInfo_ProductUri),
                new UAReadArguments(endpointDescriptor, UAVariableIds.ServerStatusType_BuildInfo_SoftwareVersion),
            };
            ValueResult[] valueResultArray = client.ReadMultipleValues(readArgumentsArray);
 
            // Display results.
            for (int i = 0; i < valueResultArray.Length; i++)
            {
                UAReadArguments readArguments = readArgumentsArray[i];
                ValueResult valueResult = valueResultArray[i];
                if (valueResult.Succeeded)
                    Console.WriteLine($"{readArguments.NodeDescriptor.NodeId}: {valueResult.Value}");
                else
                    Console.WriteLine($"{readArguments.NodeDescriptor.NodeId}: *** Failure: {valueResult.ErrorMessageBrief}");
            }
 
            // Note that as of time of writing this code, the public sample server does not have the build information
            // filled in, and the displayed information is thus largely empty (but correct). The example gives better
            // results with servers that provide meaningful build information.
        }
    }
}
The following user(s) said Thank You: Jannie@Moore

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

More
30 Apr 2024 12:18 #12747 by Jannie@Moore
Replied by Jannie@Moore on topic OPC Server Properties
Thank you, Do you have any example of code available on the site for that purpose. is it available as part of tag properties . or is strictly on the server properties?

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

More
30 Apr 2024 07:44 - 30 Apr 2024 07:45 #12745 by support
Replied by support on topic OPC Server Properties
Hello,

OPC Classic Alarms&Events, and OPC UA Alarms&Conditions are supported:

- opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Late...for%20OPC%20Classic%20A&E.html
- opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Late...20Alarms%20&%20Conditions.html

In OPC UA, every OPC server exposes information about itself in nodes in the Address Space, that can be read as any other nodes.

Best regards
Last edit: 30 Apr 2024 07:45 by support.

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

More
30 Apr 2024 06:09 #12744 by Jannie@Moore
Replied by Jannie@Moore on topic OPC Server Properties
Hi, we using QuickOPC using .NET to collect OPC UA and OPC DA data, soon we will be Adding Alarm and Events. Using QuickOPC we want to be able to collect data for mentioned properties also.

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

More
29 Apr 2024 14:59 #12739 by support
Replied by support on topic OPC Server Properties
Hello.

I suppose this question is about OPC Classic (COM/DCOM) servers, as the category says. If not (and it is OPC UA), let me know, because the answer will be somewhat different.

For OPC Classic, most of the information you mentioned can be obtained from the server using the OPCServer::GetStatus call. However, QuickOPC does not provide this to your code. Some server may also expose it through OPC items, that would work but will be vendor-specific.

Regards

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

Moderators: support
Time to create page: 0.061 seconds