Devices AccessTypes Reference
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
- Navigate to Devices → AccessTypes
- Click Plus icon
- Configure properties
- Click OK
AccessType Properties
Read Configuration
| ReadPolling | Enable polling mode | Always, Never, OnDisplayOrServer |
| ReadPollingRate | Update frequency (ms) | 100-60000 |
| ReadTrigger | Conditional read trigger | Tag or expression |
| OnStartup | Read on solution start | True/False |
Write Configuration
| WriteEvents | Enable write capability | True/False |
| WriteEvent | Write trigger condition | OnChange, OnTrigger |
| WriteTrigger | Conditional write trigger | Tag or expression |
Advanced Settings
| AcceptUnsolicited | Accept unrequested data | False |
| UseStaticBlocks | Enable block commands | False |
| BlockCommand | Protocol-specific blocks | Driver dependent |
Common AccessType Patterns
Continuous Monitoring
Name: AlwaysRead
ReadPolling: Always
ReadPollingRate: 1000
WriteEvents: False
OnStartup: TrueControl Points
Name: ReadWrite
ReadPolling: Always
ReadPollingRate: 500
WriteEvents: True
WriteEvent: OnChangeEvent-Driven
Name: Triggered
ReadPolling: Never
ReadTrigger: @Tag.ReadNow
WriteEvents: True
WriteTrigger: @Tag.WriteNowOnDisplayOrServer 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
- Set ReadPolling to OnDisplayOrServer
- Configure ReadPollingRate
- Enable WriteEvents if needed
- 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 CommunicationServer 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.ShiftRunningWrite Triggers
csharp
// Write on command
WriteTrigger: @Tag.SendCommand
// Batch write
WriteTrigger: @Tag.BatchReady
// Conditional write
WriteTrigger: @Tag.Value > 100Performance Optimization
Polling Rate Guidelines
| Critical Alarms | 100-500ms | Safety systems |
| Process Values | 500-1000ms | Normal monitoring |
| Status/States | 1000-5000ms | Equipment status |
| Reports | 5000-60000ms | Historical 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, OnDemandBuilding Automation
HVAC: Always, 5000ms
Lighting: OnDisplayOrServer, 1000ms
Energy: Always, 60000msProcess Control
Critical: Always, 100ms
Process: Always, 1000ms
Historical: Triggered, 5000ms