opcua-client-nodeset · master
Docs · Spec · AutoID

AutoID — Automatic Identification

AutoID — RFID readers, barcode scanners, optical readers. Codec-heavy: 19 structured types for scan results, tag programming, antenna control.

OPC UA companion specification for automatic-identification devices — RFID readers, barcode scanners, 2D code readers, optical character readers. Defines the on-the-wire shape for tag data, scan results, antenna configuration.

What's in the package

Artefact Count
Enums 6
DTOs 19
Codecs 19
Registrars 1 (AutoIDRegistrar)

DTO-heavy — anything an AutoID device returns from a scan is a typed structure.

Loading

php examples/autoid/load.php
use PhpOpcua\Client\ClientBuilder;
use PhpOpcua\Nodeset\AutoID\AutoIDRegistrar;

$client = ClientBuilder::create()
    ->loadGeneratedTypes(new AutoIDRegistrar())   // pulls DI
    ->connect('opc.tcp://rfid-gateway.local:4840');

Direct dependencies

  • DI — AutoID devices extend DeviceType.

Notable types

The 19 DTOs cluster around:

  • Scan resultsScanData, ScanResult, RfidScanResult, OcrScanResult, OpticalScanResult. Each carries a strongly- typed payload variant for the matching reader class.
  • ConfigurationScanSettings, AntennaNameIdPair, RfidAccessRequest, RfidPasswordTypes.
  • StatusAutoIDOperationStatusEnumeration, RfidTransponderStatusEnumeration.

For a scan event that returns a tag:

php examples/autoid/read-scan.php
use PhpOpcua\Nodeset\AutoID\Types\ScanData;

$dv = $client->read('ns=N;s=Reader1.LastScanData');
$scan = $dv->getValue();

if ($scan instanceof ScanData) {
    foreach ($scan->ScanData as $tag) {
        // typed tag record
    }
}

Notable enums

  • AutoIDOperationStatusEnumeration — per-operation result
  • RfidTransponderStatusEnumeration — tag-level status
  • OcrFontEnumeration, OcrTraceabilityCodeEnumeration — OCR variants
  • OpcUaDataTypeEnumeration — payload type discriminator