Skip to content

OPC DA Scanner Setup Guide

Overview

Preview Feature - The OPC DA Scanner is currently in preview.

The OPC DA Scanner is a component of Tycho Data Osprey that connects to your OPC DA server to:

  • Scan OPC DA items for metadata and configuration
  • Evaluate data quality of OPC items
  • Discover and catalog industrial automation assets

This scanner is ideal for industrial environments using legacy OPC DA servers for process control and data acquisition. It automatically discovers available items using intelligent pattern matching and validation strategies.

Supported OPC Servers

The scanner includes optimized discovery patterns for the following OPC DA server types:

  • Matrikon - OPC simulation and production servers
  • Kepware - KEPServerEX and related products
  • Wonderware - InTouch, System Platform OPC servers
  • RSLinx - Allen-Bradley/Rockwell Automation

The scanner also works with other OPC DA 2.0 compliant servers using generic discovery patterns.

How It Works

Once configured, the scanner connects to your OPC DA server and:

  1. Authenticates using COM/DCOM authentication
  2. Discovers Items using multiple intelligent strategies:
  3. Standard OPC browsing (when supported)
  4. Validation-based systematic discovery
  5. Server-specific pattern matching
  6. Extracts Properties including data types, access rights, and quality
  7. Uploads Results to Tycho Data Osprey via API

Collected Information

Data Type Description
OPC Server Information Server ProgID, CLSID, host, and connection details
OPC Item Metadata Item ID, description, data type, access rights
Data Quality Metrics Quality status, value validation, connectivity status
Scan Status Runtime details, scanner ID, timestamps, and results

Setting Up the Scanner

1. Add Scanner in Osprey

To create and configure your OPC DA scanner:

  1. Go to Scanners in the left navigation
  2. Click Add Scanner
  3. Choose OPC DA
  4. Enter a scanner Name (e.g., "Plant Floor OPC Server")
  5. Once created, copy the Scanner ID shown. You'll need this for your configuration file.

2. OPC Server Prerequisites

Before configuring the scanner, ensure:

  • OPC Server is installed and running on the target machine
  • DCOM configuration allows the scanner to connect
  • Windows firewall permits OPC communication (ports 135 and dynamic ports)
  • User permissions allow COM/DCOM access to the OPC server

3. Find OPC Server Information

You'll need the OPC server's ProgID and optionally its CLSID:

To find ProgID: - Check OPC server documentation - Use OPC client tools like OPC Expert - Look in Windows Registry: HKEY_CLASSES_ROOT

To find CLSID (optional but recommended): - Use OPC client tools - Registry: HKEY_CLASSES_ROOT\CLSID - OLE/COM Object Viewer (oleview.exe)

Common Examples:

Kepware.KEPServerEX.V6
RSLinx.OPC.Server

4. Update Configuration File

Edit the configuration file on the machine where your scanner will run:

C:/Users/<your_user>/Documents/Tycho Data/Osprey/appsettings.ini

Add an OPC DA scanner section:

[common]
tychoDataHost = https://experience.tychodata.com/
tychoDataDomainID = 30
tychoDataAPIToken = ${TYCHODATA_OSPREY_APITOKEN}
pathToCert = C:\cert\selfsigned.crt
updateStatus = false
schedule = "0 * * * *"

[scan-opcda]
scannerId = 74ab197c-4f1f-48be-879b-58a8040097c1
opcServerProgId = Matrikon.OPC.Simulation.1
opcServerClsId = {F8582CF2-88FB-11D0-B850-00C0F0104305}
opcServerUrl = localhost
dataQualityLevel = 1
performScan = true
upload = true

5. Run Scanner

Once configured, run the scanner:

PowerShell:

.\TychoScanner.exe

Command Prompt:

TychoScanner.exe

The scanner will connect to your OPC server and discover available items automatically.

Configuration Reference

[common] Section

Key Description
tychoDataHost Tycho Data instance URL (e.g., https://experience.tychodata.com/)
tychoDataDomainID Numeric domain ID from your Tycho Data instance
tychoDataAPIToken API token for authentication (typically an environment variable)
schedule Cron expression for automated scans (e.g., "0 * * * *" = hourly)

[scan-opcda] Section

Key Required Description
scannerId Yes Unique scanner identifier from Osprey UI
opcServerProgId Yes OPC server Program ID (e.g., Matrikon.OPC.Simulation.1)
opcServerClsId No OPC server Class ID for fallback connection
opcServerUrl Yes Hostname or IP of OPC server (e.g., localhost, 192.168.1.100)
dataQualityLevel No Data quality assessment level (0=none, 1=basic, 2=detailed)
performScan No Whether to scan for items (default: true)
upload No Whether to upload results to Osprey (default: true)

Multiple OPC Servers

To scan multiple OPC DA servers, create additional sections with unique names:

[scan-opcda-plant1]
scannerId = 11111111-1111-1111-1111-111111111111
opcServerProgId = Kepware.KEPServerEX.V6
opcServerUrl = 192.168.1.100
dataQualityLevel = 1

[scan-opcda-plant2]
scannerId = 22222222-2222-2222-2222-222222222222
opcServerProgId = RSLinx.OPC.Server
opcServerUrl = 192.168.1.200
dataQualityLevel = 2

Discovery Strategies

The scanner uses multiple strategies to discover OPC items:

1. Standard OPC Browsing

  • Uses OPC DA browsing interface when available
  • Recursively explores server namespace hierarchy

2. Validation-Based Discovery

  • Tests systematically generated item ID patterns
  • Validates items by temporarily adding them to OPC groups

3. Server-Specific Patterns

  • Matrikon: Random.Real4, Sine Waves.Int2, etc.
  • Kepware: Channel1.Device1.Tag1, Channel2.Device5.Status
  • Industrial: Area1.Tank01.Temperature, Plant.Pump05.Pressure
  • Wonderware: Tag001, AI023, DI045
  • Allen-Bradley: PLC.N7:0, ControlLogix.F8:1

Troubleshooting

Connection Issues

"Class not registered" error: - Verify OPC server is installed and registered - Run scanner as Administrator - Check CLSID in Windows Registry

"Access denied" error: - Configure DCOM permissions for OPC server - Ensure user has proper COM access rights - Check Windows firewall settings

"Server not available" error: - Verify OPC server service is running - Test with OPC client tools (OPC Expert) - Check network connectivity if remote server

Discovery Issues

Few or no items found: - Verify ProgID is correct for your OPC server - Check OPC server has items configured - Review scanner logs for specific error messages - Try with OPC client tools to verify server functionality

Scanner runs but uploads fail: - Verify API token is set correctly - Check network connectivity to Tycho Data host - Review scanner logs for upload error details

Performance Optimization

Slow discovery: - Reduce item pattern scope for server type - Use specific item IDs if known - Adjust scanner schedule frequency

High resource usage: - Lower dataQualityLevel setting - Increase scanner schedule interval - Run during off-peak hours

Advanced Configuration

Server Aliases

Use server aliases to map IP addresses to friendly names:

[server-aliases]
192.168.1.100 = plant1-opcserver.company.com
192.168.1.200 = plant2-opcserver.company.com

Environment Variables

Store sensitive information in environment variables:

tychoDataAPIToken = ${TYCHODATA_OSPREY_APITOKEN}

Custom Item Patterns

For servers with non-standard naming, modify the scanner's pattern generation or use specific item IDs.

Support

For assistance with OPC DA scanner setup:

  1. Check scanner logs for detailed error messages
  2. Verify OPC server functionality with standard OPC client tools
  3. Review DCOM configuration and Windows permissions
  4. Contact Tycho Data support with scanner logs and configuration details