QuickOPC
========
- NuGet package: OpcLabs.QuickOPC
- Python package: opclabs_quickopc
QuickOPC is a suite of OPC Client/Subscriber Development Components for .NET,
COM and Python. These components are for *OPC "Classic"* (COM/DCOM-based),
*OPC XML-DA*, and *OPC Unified Architecture* (including *OPC UA PubSub*)
specifications.
QuickOPC is a commercially licensed product. Without a license key, it runs
in a trial mode. The trial provides valid data to client or subscriber
applications for 30 minutes; after that period, the component (your app) needs
to be re-started, and so on. You must also comply with licensing terms for
3rd-party material redistributed with QuickOPC. For details, see the
documentation.
Remember that NuGet or Python packages are primarily a tool for resolving build-time
dependencies. The amount of functionality that you get through QuickOPC NuGet
or Python packages is smaller than what QuickOPC can actually do for you. If you want a
full coverage of the features, you would be better off downloading the Setup
program from [OPC Labs Web site](https://www.opclabs.com). Further below you
will find a list of differences between the two distribution forms.
QuickOPC requires **.NET Framework** 4.7.2, **.NET Core** 3.1 or **.NET** 6.0
as a minimum. Under .NET Core and .NET 6.0+, it is supported on **Linux**,
**macOS** and **Microsoft Windows**. QuickOPC can also be easily used from **Python**.
PLEASE DO NOT USE PRE-RELEASE PACKAGES UNLESS INSTRUCTED TO DO SO.
List of available NuGet/Python packages
---------------------------------------
- **OpcLabs.QuickOpc/opclabs_quickopc**: OPC client and subscriber components for all
environments and project types.
- **OpcLabs.QuickOpc.Forms**: Components that are specific for Windows Forms (can
be partially used from WPF as well).
- **OpcLabs.QuickOpc.Sample.CS**: Console-based QuickOPC examples in C# (source
code).
- **OpcLabs.QuickOpc.Sample.VB**: Console-based QuickOPC examples in VB.NET
(source code).
What is included in the NuGet/Python packages
---------------------------------------------
- Runtime assemblies for all OPC specifications and programming models.
- OPC browsing dialogs and browsing controls for Windows Forms.
- NuGet: IntelliSense support (XML comments).
- NuGet: LINQPad examples.
What is only available from the [Setup program](https://www.opclabs.com/products/quickopc/downloads)
---------------------------------------------
- Support for COM development (VB6, PHP, Excel, Delphi and similar tools).
- Documentation and Help.
- Visual Studio integration, including Live Binding design-time support (codeless creation of OPC applications).
- Complete set of Examples and Demo applications, bonus material.
- OPC Data Access simulation server, test tools.
What is only available from the [Setup program](https://www.opclabs.com/products/quickopc/downloads) or the Web site
-------------------------------------------------------------
[Knowledge Base link - Tool Downloads](https://kb.opclabs.com/Tool_Downloads)
- Various tools, such as Connectivity Explorer, Launcher, OPC UA Demo Publisher, OpcCmd Utility, UA Configuration Tool.
- License Manager (GUI or console-based) utility.
How to start
------------
If you do not mind reading the documentation: [Getting Started](
http://opclabs.doc-that.com/files/onlinedocs/QuickOpc/Latest/User%27s%20Guide%20and%20Reference-QuickOPC/webframe.html#Getting%20Started.html).
Or, the whole [User's Guide](https://www.opclabs.com/resources/documentation).
Otherwise, just instantiate one of the following objects (depending on the
OPC specification), and explore its methods:
- `OpcLabs.EasyOpc.DataAccess.EasyDAClient` (for OPC DA, OPC XML-DA)
- `OpcLabs.EasyOpc.AlarmsAndEvents.EasyAEClient` (for OPC A&E)
- `OpcLabs.EasyOpc.UA.EasyUAClient` (for OPC Unified Architecture)
- `OpcLabs.EasyOpc.UA.PubSub.EasyUASubscriber` (for OPC UA PubSub)
Example code
------------
C#:
```csharp
using OpcLabs.EasyOpc.UA;
...
var client = new EasyUAClient();
object value = client.ReadValue(
"opc.tcp://opcua.demo-this.com:51210/UA/SampleServer",
"nsu=http://test.org/UA/Data/ ;i=10853");
```
Python:
```python
import opclabs_quickopc
from OpcLabs.EasyOpc.UA import *
client = EasyUAClient()
value = IEasyUAClientExtension.ReadValue(client,
UAEndpointDescriptor('opc.tcp://opcua.demo-this.com:51210/UA/SampleServer'),
UANodeDescriptor('nsu=http://test.org/UA/Data/ ;i=10853'))
```
Examples on GitHub
------------------
- OPC client and subscriber examples in Python: https://github.com/OPCLabs/Examples-QuickOPC-Python .
Using the example packages (NuGet)
----------------------------------
In order to run the code from console-based example packages, you need to
call it from your project. The examples are organized by the OPC
specification, and each example is a static method that you can directly
invoke. For easier exploration, there are also methods that provide the user
with a menu of methods to choose from.
For OPC Alarms&Events examples, call method: `DocExamples.AlarmsAndEvents.AEExamplesMenu.Main1`
For OPC Data Access examples, call method: `DocExamples.DataAccess.DAExamplesMenu.Main1`
For OPC XML-DA examples, call method: `DocExamples.DataAccess.Xml.XmlExamplesMenu.Main1`
For OPC Unified Architecture examples, call method: `UADocExamples.UAExamplesMenu.Main1`
For OPC UA PubSub examples, call method: `UADocExamples.PubSub.PubSubExamplesMenu.Main1`
Alternatively, you can call just a single selected example, e.g. for reading
an OPC UA node, call the `UADocExamples._EasyUAClient.Read.Main1` method.
***
Raw data
{
"_id": null,
"home_page": "https://www.opclabs.com/products/quickopc?python",
"name": "opclabs-quickopc",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "OPC,OPC-UA",
"author": "CODE Consulting and Development, s.r.o.",
"author_email": "sales09@opclabs.com",
"download_url": "https://files.pythonhosted.org/packages/2f/c4/cf22e07907777d3cb281766e08121a62f13bc160fbea75b27958be8afd5b/opclabs_quickopc-5.80.75.tar.gz",
"platform": null,
"description": "QuickOPC\r\n========\r\n- NuGet package: OpcLabs.QuickOPC\r\n- Python package: opclabs_quickopc\r\n\r\nQuickOPC is a suite of OPC Client/Subscriber Development Components for .NET,\r\nCOM and Python. These components are for *OPC \"Classic\"* (COM/DCOM-based), \r\n*OPC XML-DA*, and *OPC Unified Architecture* (including *OPC UA PubSub*) \r\nspecifications.\r\n\r\nQuickOPC is a commercially licensed product. Without a license key, it runs \r\nin a trial mode. The trial provides valid data to client or subscriber \r\napplications for 30 minutes; after that period, the component (your app) needs \r\nto be re-started, and so on. You must also comply with licensing terms for \r\n3rd-party material redistributed with QuickOPC. For details, see the \r\ndocumentation.\r\n\r\nRemember that NuGet or Python packages are primarily a tool for resolving build-time \r\ndependencies. The amount of functionality that you get through QuickOPC NuGet \r\nor Python packages is smaller than what QuickOPC can actually do for you. If you want a \r\nfull coverage of the features, you would be better off downloading the Setup \r\nprogram from [OPC Labs Web site](https://www.opclabs.com). Further below you \r\nwill find a list of differences between the two distribution forms.\r\n\r\nQuickOPC requires **.NET Framework** 4.7.2, **.NET Core** 3.1 or **.NET** 6.0\r\nas a minimum. Under .NET Core and .NET 6.0+, it is supported on **Linux**, \r\n**macOS** and **Microsoft Windows**. QuickOPC can also be easily used from **Python**.\r\n\r\nPLEASE DO NOT USE PRE-RELEASE PACKAGES UNLESS INSTRUCTED TO DO SO.\r\n\r\nList of available NuGet/Python packages\r\n---------------------------------------\r\n- **OpcLabs.QuickOpc/opclabs_quickopc**: OPC client and subscriber components for all \r\nenvironments and project types.\r\n- **OpcLabs.QuickOpc.Forms**: Components that are specific for Windows Forms (can \r\nbe partially used from WPF as well).\r\n\r\n- **OpcLabs.QuickOpc.Sample.CS**: Console-based QuickOPC examples in C# (source \r\ncode).\r\n- **OpcLabs.QuickOpc.Sample.VB**: Console-based QuickOPC examples in VB.NET \r\n(source code).\r\n \r\nWhat is included in the NuGet/Python packages\r\n---------------------------------------------\r\n- Runtime assemblies for all OPC specifications and programming models.\r\n- OPC browsing dialogs and browsing controls for Windows Forms.\r\n- NuGet: IntelliSense support (XML comments).\r\n- NuGet: LINQPad examples.\r\n\r\nWhat is only available from the [Setup program](https://www.opclabs.com/products/quickopc/downloads)\r\n---------------------------------------------\r\n- Support for COM development (VB6, PHP, Excel, Delphi and similar tools).\r\n- Documentation and Help.\r\n- Visual Studio integration, including Live Binding design-time support (codeless creation of OPC applications).\r\n- Complete set of Examples and Demo applications, bonus material.\r\n- OPC Data Access simulation server, test tools.\r\n\r\nWhat is only available from the [Setup program](https://www.opclabs.com/products/quickopc/downloads) or the Web site\r\n-------------------------------------------------------------\r\n[Knowledge Base link - Tool Downloads](https://kb.opclabs.com/Tool_Downloads)\r\n- Various tools, such as Connectivity Explorer, Launcher, OPC UA Demo Publisher, OpcCmd Utility, UA Configuration Tool.\r\n- License Manager (GUI or console-based) utility.\r\n\r\nHow to start\r\n------------\r\nIf you do not mind reading the documentation: [Getting Started](\r\nhttp://opclabs.doc-that.com/files/onlinedocs/QuickOpc/Latest/User%27s%20Guide%20and%20Reference-QuickOPC/webframe.html#Getting%20Started.html).\r\nOr, the whole [User's Guide](https://www.opclabs.com/resources/documentation).\r\n\r\nOtherwise, just instantiate one of the following objects (depending on the \r\nOPC specification), and explore its methods:\r\n\r\n- `OpcLabs.EasyOpc.DataAccess.EasyDAClient` (for OPC DA, OPC XML-DA)\r\n- `OpcLabs.EasyOpc.AlarmsAndEvents.EasyAEClient` (for OPC A&E)\r\n- `OpcLabs.EasyOpc.UA.EasyUAClient` (for OPC Unified Architecture)\r\n- `OpcLabs.EasyOpc.UA.PubSub.EasyUASubscriber` (for OPC UA PubSub)\r\n\r\nExample code\r\n------------\r\nC#:\r\n```csharp\r\nusing OpcLabs.EasyOpc.UA;\r\n...\r\n\r\nvar client = new EasyUAClient();\r\nobject value = client.ReadValue(\r\n \"opc.tcp://opcua.demo-this.com:51210/UA/SampleServer\",\r\n \"nsu=http://test.org/UA/Data/ ;i=10853\");\r\n```\r\n\r\nPython:\r\n```python\r\nimport opclabs_quickopc\r\nfrom OpcLabs.EasyOpc.UA import *\r\n\r\nclient = EasyUAClient()\r\nvalue = IEasyUAClientExtension.ReadValue(client,\r\n UAEndpointDescriptor('opc.tcp://opcua.demo-this.com:51210/UA/SampleServer'),\r\n UANodeDescriptor('nsu=http://test.org/UA/Data/ ;i=10853'))\r\n```\r\n\r\nExamples on GitHub\r\n------------------\r\n- OPC client and subscriber examples in Python: https://github.com/OPCLabs/Examples-QuickOPC-Python .\r\n\r\nUsing the example packages (NuGet)\r\n----------------------------------\r\nIn order to run the code from console-based example packages, you need to \r\ncall it from your project. The examples are organized by the OPC \r\nspecification, and each example is a static method that you can directly \r\ninvoke. For easier exploration, there are also methods that provide the user \r\nwith a menu of methods to choose from.\r\n\r\nFor OPC Alarms&Events examples, call method: `DocExamples.AlarmsAndEvents.AEExamplesMenu.Main1`\r\n\r\nFor OPC Data Access examples, call method: `DocExamples.DataAccess.DAExamplesMenu.Main1`\r\n\r\nFor OPC XML-DA examples, call method: `DocExamples.DataAccess.Xml.XmlExamplesMenu.Main1`\r\n\r\nFor OPC Unified Architecture examples, call method: `UADocExamples.UAExamplesMenu.Main1`\r\n\r\nFor OPC UA PubSub examples, call method: `UADocExamples.PubSub.PubSubExamplesMenu.Main1`\r\n\r\nAlternatively, you can call just a single selected example, e.g. for reading \r\nan OPC UA node, call the `UADocExamples._EasyUAClient.Read.Main1` method.\r\n\r\n***\r\n",
"bugtrack_url": null,
"license": "",
"summary": "QuickOPC Client and Subscriber Toolkit for OPC UA and OPC Classic.",
"version": "5.80.75",
"project_urls": {
"Homepage": "https://www.opclabs.com/products/quickopc?python"
},
"split_keywords": [
"opc",
"opc-ua"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "2fc4cf22e07907777d3cb281766e08121a62f13bc160fbea75b27958be8afd5b",
"md5": "123ee25f92c6f281626d5d4889e64f01",
"sha256": "23ca25e47408694e0f93efd9d58e01fa7d3406f01222d921d521e90af526f347"
},
"downloads": -1,
"filename": "opclabs_quickopc-5.80.75.tar.gz",
"has_sig": false,
"md5_digest": "123ee25f92c6f281626d5d4889e64f01",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 42827661,
"upload_time": "2024-02-18T10:25:19",
"upload_time_iso_8601": "2024-02-18T10:25:19.362092Z",
"url": "https://files.pythonhosted.org/packages/2f/c4/cf22e07907777d3cb281766e08121a62f13bc160fbea75b27958be8afd5b/opclabs_quickopc-5.80.75.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-02-18 10:25:19",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "opclabs-quickopc"
}