Files
UA-.NETStandard/docs/Samples.md
T
romanett f061c2d7da Merge Master to Release/2.0 (#4676)
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Klaus Landsdorf <kl@iniationware.com>
Co-authored-by: Marc Schier <marcschier@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: marcschier <11168470+marcschier@users.noreply.github.com>
Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>
2026-10-06 09:35:42 +00:00

5.3 KiB

Sample applications

This repository contains a large collection of platform-independent samples that demonstrate the stack's client, server, PubSub, companion-model, and developer-tooling APIs. Each sample has its own README.md with build and run instructions. If you are new to the SDK, start with the minimal samples.

Contents

Minimal samples

Getting started runs the Minimal Boiler Server and the Minimal Client together.

  • Minimal Boiler Server — minimal Boiler-model server with the fluent state-machine builder; Native-AOT publishable.
  • Minimal Client — hosted client that discovers a secure endpoint of the Minimal Boiler Server, creates a subscription, browses, and reads; Native-AOT publishable.
  • Minimal Calc Server — minimal server built on the source-generated NodeManager pipeline and Calc model.

Reference applications

PubSub samples

  • Console Reference PubSub Client — one executable with publisher, subscriber, and external external-server-adapter modes across the supported transport profiles.

Companion-model samples

  • Pump Device Integration Server — Device Integration Part 100 server using Opc.Ua.Di.Server's fluent builder.
  • AMB Server — OPC 10000-110 Asset Management Basics with AddAssetManagement next to AddMachinery: a cooling pump and a flow sensor (Device Integration devices) and a hydraulic press (a Machinery machine) as assets with configurable AssetIds, health alarms with root causes, maintenance activities, documentation links, locations and persistence, and a simulation that raises alarms and moves the maintenance on.
  • AMB Client — discovers every asset with AmbClient, prints snapshots and the location hierarchies, adds and removes a documentation link, and streams health alarms and maintenance activities.
  • Minimal Robot Server — OPC 40010 Robotics with independently configurable RSL/GPOS motion and live OpenUSD transforms.
  • Intent Enabled Robot — collaborative arm exposing task-level Robot Intent motion verbs, Part 10 program lifecycle, missions, command authority, and safety-aware refusal.
  • Intent Viewer Client — click a target in an OpenUSD viewport and watch the arm execute the resulting intent; it also runs headless.
  • Bin Picking Cell — Robot Intent, Vision, an eye-in-hand camera, and an in-address-space OpenUSD scene in one reference cell.
  • Bin Picking Client — closes the Vision-to-Robot-Intent loop, with optional MCP hosting and an OpenUSD viewport.
  • Visual Inspection Cell — hosts Vision, AI Model Management, ISA-95 Job Control V2, and an operator dialog for deterministic machined-bracket inspection.
  • Visual Inspection Agent — drives the inspection loop with typed clients, routes inference through deployment Invoke, applies recipe verdicts, schedules allowlisted jobs, and records operator ground truth.
  • AI Model Management sample — ModelManagementServer publishes the draft AI Model Management catalogue and routes inference; ModelManagementClient discovers deployments and exercises the Methods.
  • Minimal ISA-95 Server — hosts the OPC-10030 ISA-95 Common Model with OPC-10031-4 Job Control V1 and V2, using the typed common-model builder and in-memory Job Control provider.

OpenUSD site composition

  • Generator Server — simulated generating sets with datasheet-driven behavior and independent OpenUSD twins.
  • Site Composition Server — federates the pump and generator servers into one live OpenUSD site.

Run the complete site demo from the repository root:

pwsh samples/OpenUsd/SiteCompositionServer/run-site-composition-demo.ps1