OPCFoundation.NetStandard.Opc.Ua.AMB.Client
2.0.1
Prefix Reserved
dotnet add package OPCFoundation.NetStandard.Opc.Ua.AMB.Client --version 2.0.1
NuGet\Install-Package OPCFoundation.NetStandard.Opc.Ua.AMB.Client -Version 2.0.1
<PackageReference Include="OPCFoundation.NetStandard.Opc.Ua.AMB.Client" Version="2.0.1" />
<PackageVersion Include="OPCFoundation.NetStandard.Opc.Ua.AMB.Client" Version="2.0.1" />
<PackageReference Include="OPCFoundation.NetStandard.Opc.Ua.AMB.Client" />
paket add OPCFoundation.NetStandard.Opc.Ua.AMB.Client --version 2.0.1
#r "nuget: OPCFoundation.NetStandard.Opc.Ua.AMB.Client, 2.0.1"
#:package OPCFoundation.NetStandard.Opc.Ua.AMB.Client@2.0.1
#addin nuget:?package=OPCFoundation.NetStandard.Opc.Ua.AMB.Client&version=2.0.1
#tool nuget:?package=OPCFoundation.NetStandard.Opc.Ua.AMB.Client&version=2.0.1
Opc.Ua.AMB.Client
Client-side access to OPC 10000-110 — Asset Management Basics (AMB).
AmbClient amb = session.AssetManagement(telemetry);
foreach (NodeId asset in await amb.DiscoverAssetsAsync(ct))
{
AssetSnapshot snapshot = await amb.ReadAssetAsync(asset, ct);
Console.WriteLine($"{snapshot.Identification.ProductInstanceUri}: {snapshot.DeviceHealth}");
}
Discovery
FindAssetsAsync calls FindAlias on the alias categories Assets,
AssetsByProductInstanceUri and AssetsByAssetId; EnumerateAssetsAsync
browses the alias objects instead. DiscoverAssetsAsync returns every asset of
the server once. ReadNodeVersionAsync and ObserveAssetSetChangesAsync
follow changes of the categories.
Reading
| Call | OPC 10000-110 |
|---|---|
ReadIdentificationAsync, WriteAssetIdAsync |
§7, on the asset or in 2:Identification |
ReadDeviceHealthAsync, ReadHealthAlarmsAsync |
§9 |
ReadMaintenanceActivitiesAsync |
§12 |
ReadDocumentationLinksAsync, AddDocumentationLinkAsync, RemoveDocumentationLinkAsync |
§10.5 |
ReadEntriesAsync |
§10.6, §10.7 |
ReadContextAsync, ReadLocationsOfAssetAsync, BrowseLocationsAsync |
§11, §13 |
EnumerateSubAssetsAsync, ReadRelationsAsync |
§14 |
ReadAssetAsync |
all of the above for one asset |
Events
ObserveHealthAlarmsAsync and ObserveMaintenanceAsync subscribe to the
condition events and return AssetAlarmRecord and MaintenanceActivityRecord
values, including the potential root causes, the maintenance state and the
comment of an acknowledgement. A maintenance activity is told apart by its
condition class (MaintenanceConditionClassType or a subtype), and the two
filters select disjoint events. The fields of the AMB interfaces are selected
with BaseEventType as the type definition, since a server checks select
clauses against the type hierarchy of an event, which interfaces are not part
of. Without a 2:DeviceHealthAlarms folder, the read calls ask for a condition
refresh. AcknowledgeAsync acknowledges a condition.
Hosting
services.AddOpcUa().AddClient(...).AddAssetManagementClient();
registers an AmbClientFactory and a Func<CancellationToken, Task<AmbClient>>.
For the server side use Opc.Ua.AMB.Server; the model and the shared
contracts live in Opc.Ua.AMB.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Framework | net48 is compatible. net481 was computed. |
-
.NETFramework 4.8
- BitFaster.Caching (>= 2.6.1)
- BouncyCastle.Cryptography (>= 2.7.0)
- Microsoft.Bcl.AsyncInterfaces (>= 10.0.12)
- Microsoft.Bcl.HashCode (>= 6.0.0)
- Microsoft.Bcl.TimeProvider (>= 10.0.12)
- Microsoft.Extensions.Configuration (>= 10.0.12)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Diagnostics (>= 10.0.12)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Http (>= 10.0.12)
- Microsoft.Extensions.Http.Resilience (>= 10.10.0)
- Microsoft.Extensions.Logging (>= 10.0.12)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Options (>= 10.0.12)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.12)
- OPCFoundation.NetStandard.Opc.Ua.AMB (>= 2.0.1)
- OPCFoundation.NetStandard.Opc.Ua.Client (>= 2.0.1)
- OPCFoundation.NetStandard.Opc.Ua.Di.Client (>= 2.0.1)
- System.Buffers (>= 4.6.1)
- System.Collections.Immutable (>= 9.0.0)
- System.Diagnostics.DiagnosticSource (>= 10.0.12)
- System.Formats.Asn1 (>= 10.0.12)
- System.Memory (>= 4.6.3)
- System.Runtime.CompilerServices.Unsafe (>= 6.1.2)
- System.Text.Json (>= 10.0.12)
- System.Threading.Channels (>= 10.0.12)
- System.Threading.RateLimiting (>= 10.0.12)
- System.Threading.Tasks.Extensions (>= 4.6.3)
-
net10.0
- BitFaster.Caching (>= 2.6.1)
- Microsoft.Bcl.TimeProvider (>= 10.0.12)
- Microsoft.Extensions.Configuration (>= 10.0.12)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Diagnostics (>= 10.0.12)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Http (>= 10.0.12)
- Microsoft.Extensions.Http.Resilience (>= 10.10.0)
- Microsoft.Extensions.Logging (>= 10.0.12)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Options (>= 10.0.12)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.12)
- OPCFoundation.NetStandard.Opc.Ua.AMB (>= 2.0.1)
- OPCFoundation.NetStandard.Opc.Ua.Client (>= 2.0.1)
- OPCFoundation.NetStandard.Opc.Ua.Di.Client (>= 2.0.1)
- System.Threading.RateLimiting (>= 10.0.12)
-
net8.0
- BitFaster.Caching (>= 2.6.1)
- Microsoft.Bcl.TimeProvider (>= 10.0.12)
- Microsoft.Extensions.Configuration (>= 10.0.12)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Diagnostics (>= 10.0.12)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Http (>= 10.0.12)
- Microsoft.Extensions.Http.Resilience (>= 10.10.0)
- Microsoft.Extensions.Logging (>= 10.0.12)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Options (>= 10.0.12)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.12)
- OPCFoundation.NetStandard.Opc.Ua.AMB (>= 2.0.1)
- OPCFoundation.NetStandard.Opc.Ua.Client (>= 2.0.1)
- OPCFoundation.NetStandard.Opc.Ua.Di.Client (>= 2.0.1)
- System.Collections.Immutable (>= 9.0.0)
- System.Diagnostics.DiagnosticSource (>= 10.0.12)
- System.Formats.Asn1 (>= 10.0.12)
- System.Text.Json (>= 10.0.12)
- System.Threading.Channels (>= 10.0.12)
- System.Threading.RateLimiting (>= 10.0.12)
-
net9.0
- BitFaster.Caching (>= 2.6.1)
- Microsoft.Bcl.TimeProvider (>= 10.0.12)
- Microsoft.Extensions.Configuration (>= 10.0.12)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Diagnostics (>= 10.0.12)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Http (>= 10.0.12)
- Microsoft.Extensions.Http.Resilience (>= 10.10.0)
- Microsoft.Extensions.Logging (>= 10.0.12)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Options (>= 10.0.12)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.12)
- OPCFoundation.NetStandard.Opc.Ua.AMB (>= 2.0.1)
- OPCFoundation.NetStandard.Opc.Ua.Client (>= 2.0.1)
- OPCFoundation.NetStandard.Opc.Ua.Di.Client (>= 2.0.1)
- System.Diagnostics.DiagnosticSource (>= 10.0.12)
- System.Formats.Asn1 (>= 10.0.12)
- System.Text.Json (>= 10.0.12)
- System.Threading.Channels (>= 10.0.12)
- System.Threading.RateLimiting (>= 10.0.12)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.