Control how data is read and written.

ReferenceModulesDevicesUIPoints | Protocols | Channels | Nodes | AccessTypes | Monitor


Devices AccessTypes (Reference) define read/write rules for Device Points, controlling polling rates, triggers, and communication behavior between the platform and field devices.

AccessTypes provide:

  • Polling configuration
  • Read/write triggers
  • Startup behavior
  • Event-based communication
  • Display-driven updates
  • Block command support

Each Device Point uses one AccessType to determine when and how it communicates.


Creating AccessTypes

  1. Navigate to Devices → AccessTypes
  2. Click Plus icon
  3. Configure properties
  4. Click OK

AccessType Properties

Read Configuration

PropertyDescriptionOptions
ReadPollingEnable polling modeAlways, Never, OnDisplayOrServer
ReadPollingRateUpdate frequency (ms)100-60000
ReadTriggerConditional read triggerTag or expression
OnStartupRead on solution startTrue/False

Write Configuration

PropertyDescriptionOptions
WriteEventsEnable write capabilityTrue/False
WriteEventWrite trigger conditionOnChange, OnTrigger
WriteTriggerConditional write triggerTag or expression

Advanced Settings

PropertyDescriptionDefault
AcceptUnsolicitedAccept unrequested dataFalse
UseStaticBlocksEnable block commandsFalse
BlockCommandProtocol-specific blocksDriver dependent

Common AccessType Patterns

Continuous Monitoring

Name: AlwaysRead
ReadPolling: Always
ReadPollingRate: 1000
WriteEvents: False
OnStartup: True

Control Points

Name: ReadWrite
ReadPolling: Always
ReadPollingRate: 500
WriteEvents: True
WriteEvent: OnChange

Event-Driven

Name: Triggered
ReadPolling: Never
ReadTrigger: @Tag.ReadNow
WriteEvents: True
WriteTrigger: @Tag.WriteNow

OnDisplayOrServer Mode

Optimizes communication by activating points only when needed.

How It Works

OnDisplay Behavior:

  • Points activate when display opens
  • Deactivate when display closes
  • Reduces unnecessary communication
  • Improves system performance

OnServer Behavior:

  • Always active when OPC Server running
  • Required for server-side logic
  • Scripts, alarms, expressions need this

Configuration

  1. Set ReadPolling to OnDisplayOrServer
  2. Configure ReadPollingRate
  3. Enable WriteEvents if needed
  4. Assign to relevant points

Use Cases

Display-Driven:

Line A Display → Line A Tags Active
Line B Display → Line B Tags Active
No Display → No Communication

Server Requirements:

  • Script Tasks
  • Class Methods
  • Expressions
  • Alarm Conditions

<ac:structured-macro ac:name="info"> ac:rich-text-body Server-side tags (used in scripts, alarms, expressions) require an AccessType with ReadPolling set to "Always" or a separate AccessType for OnDisplayOrServer mode. </ac:rich-text-body> </ac:structured-macro>


Trigger-Based Operations

Read Triggers

csharp

// Trigger read when button pressed
ReadTrigger: @Tag.RefreshButton

// Periodic trigger
ReadTrigger: @Tag.Timer.SecondTick

// Conditional trigger
ReadTrigger: @Tag.ProductionActive && @Tag.ShiftRunning

Write Triggers

csharp

// Write on command
WriteTrigger: @Tag.SendCommand

// Batch write
WriteTrigger: @Tag.BatchReady

// Conditional write
WriteTrigger: @Tag.Value > 100

Performance Optimization

Polling Rate Guidelines

Data TypeSuggested RateUse Case
Critical Alarms100-500msSafety systems
Process Values500-1000msNormal monitoring
Status/States1000-5000msEquipment status
Reports5000-60000msHistorical data



Block Commands

For protocols supporting block transfers:

UseStaticBlocks: True
BlockCommand: "READ_BLOCK:100:50"

Benefits:

  • Reduced overhead
  • Faster updates
  • Lower network traffic
  • Improved efficiency

Check driver documentation for supported commands.


Best Practices Checklist

  • Group Similar Points - Same polling requirements
  • Use OnDisplayOrServer - For HMI-only data
  • Minimize Always Polling - Only critical points
  • Set Appropriate Rates - Match process dynamics
  • Use Triggers Wisely - Reduce continuous polling
  • Configure Startup Reads - Initialize important values
  • Test Performance - Monitor CPU and network load

Troubleshooting

Points not updating:

  • Verify ReadPolling enabled
  • Check polling rate
  • Confirm display open (OnDisplay)
  • Review trigger conditions

Write failures:

  • Confirm WriteEvents enabled
  • Check WriteEvent setting
  • Verify trigger firing
  • Review point access rights

Performance issues:

  • Reduce polling rates
  • Use OnDisplayOrServer
  • Implement triggers
  • Enable block commands

OnDisplay not working:

  • Verify display contains tags
  • Check AccessType assignment
  • Confirm display runtime active
  • Review server-side usage

Examples by Industry

Manufacturing

HMI Points: OnDisplayOrServer, 500ms
Alarms: Always, 250ms
Reports: Triggered, OnDemand

Building Automation

HVAC: Always, 5000ms
Lighting: OnDisplayOrServer, 1000ms
Energy: Always, 60000ms

Process Control

Critical: Always, 100ms
Process: Always, 1000ms
Historical: Triggered, 5000ms



In this section...