OI Server

Generic

On System Platform Management Console, the following settings are recommended.

SettingValueRemarks
Case SensitiveUnchecked
Device Group CacheUnchecked
System ItemsCheckFor troubleshooting
Unique Device GroupCheckFor DDE connectivity
Poke ModeOptimization ModeControl Mode – for Batch / sequence sensitive application
Optimization Mode – for normal operation
Device Group Update Interval1000<Default> group update interval
Slow Poll Update Interval5000
Server Protocol TimerRefer to respective DAServer manual
DDE/SL Timer Tick500Time between processing DDE/SL connection request. Max 6000 msec

For more information, refer to “DAServer Manager User’s Guide”

Slow Poll
When certain connectivity problems occur (e.g. unplugged PLC), slow poll will kick in.

Transaction to Subscription Ratio
Default as 2, meaning transaction : subscription ratio = 2:1
Increase this if transaction queue in details page is high

Allen Bradley

Default SysItem to monitor

TagnameDescription
$SYS$TagDBStatusTag Database Status
0 – no tag database
1 – uploading tag database
2 – tag database uploaded
3 – tag database upload failed
$SYS$TagDBVersionFor development monitoring (new tag)
$SYS$UpdateTagInfoSet to 1 to upload tag list
$SYS$DeviceStatusStatus of processor:
OK, or Faulted
$SYS$ModeCurrent mode of processor:
Run, Program, Remote Run, or Remote Program

For the following section, we’ll discuss more on ABCIP and not ABTCP

OI Service Selection

DeviceSeriesOI Server
PLC-51785ABTCP
SLC500SLC 5/05 (built-in Ethernet)ABTCP
ControlLogix1756ABCIP
GuardLogix1756ABCIP
SoftLogix1789ABCIP
CompactLogix5069/1769/1768ABCIP
FlexLogix1794ABCIP
MicroLogix1763/1766ABCIP

For more information, refer to “Wonderware Operations Integration – Supervisory ABCIP Server”

OI.ABCIP Communication Object Selection

EIP = Ethernet/IP

Communication ModuleModelComm ObjectPLCBackplane
EIP comm module for Control Logix1756-ENETENB_CLX
EIP comm module for Control Logix1756-ENBTENB_CLX
EIP comm module for Control Logix1756-EN2TENB_CLX
EIP comm module for Control Logix1756-EWEBENB_CLX
Eth Comm Daughter Card for FlexLogic1788-ENBTENB_FLX
Integrated EIP on CompactLogix5069-xxxx,
1769-xxxx, or
1768-xxxx
ENB_CPLX
Integrated EIP on MicroLogix1763-L16xxx,
1761-L10xxx,
1761-L16xxx,
1761-L20xxx,
1761-L32xxx,
1761-L24xxx,
1761-L40xxx,
1764-LSP, or
1764-LRP
ML_EN
Eth Comm module for MicroLogix1761-NET-ENIENI_CPLX
SLC500 or SLC5051747-L55x,
1747-L5xx with 1761-NET-ENI
SLC500_EN

Maximum of 65535 of single type of comm object for single instance of OI server

Stand-alone PLC

Since ABTCP is old protocol, we’ll focus on ABCIP

  1. In System Platform Management Console, expand ABCIP > Configuration
  2. Add Port_CIP if not yet added. One ABCIP instance can only have one Port_CIP in configuration

Queued Message
Increase queued message (max 40) if we are connecting to higher count of PLC.

  1. Add Communication Object and rename (e.g. use VLAN name and node if needed). Your IP address is configured here.
  2. Add Backplane if needed
  3. You can add other comm module (e.g. CNET) after backplane, to get data from other controller not directly connected to the server network.
  4. Insert PLC object to denote the end-point to get tag value from. It is important to put Topic name here

Max CIP Connection
For each CIP connection established, the PLC or comm module allocates certain resources to handle the connection. Max configurable in ABCIP is 31. The higher the connection count, the more sluggish the PLC response to the request.

Optimization
For controller Version > 20, “Optimize for Startup” is not used. It will be changed to “Optimize for Read” on later version.
No optimization = slowest read performance, better startup
Optimize for read = fastest read performance, using less messages
Optimize for read may require restart of service on new download of tags, refreshing comm module memory.

UDT Optimization
Check this box!!!
Be careful with UDT with “None” set in “External Access” in Studio 5000

Auto Load Tags
Check this box!!!
DAServer will upload tag list to memory on startup

Auto Synchronize Tags
Check this box!!!
Will auto update tag list in DAServer memory

Persisted Tags
Uncheck this box!!!
Tags will be written onto disk instead of memory

Redundant PLC

Configure both PLC as in stand-alone PLC

Then from Port_CIP object, add redundant object. This will then point to the stand-alone PLC above.

Will require PingItem (usually Watchdog)

Item Naming

ReferenceSyntax
ProgramTagProgram:[ProgramName].[TagName]
Multi-dimension Array TagName[X,Y,. . . ]
Block R/W of one-dimension array TagName[X],L#
String TagName[.DATA[[X]][,SC#]

Siemens

Default SysItem to monitor

TagnameDescription
$SYS$ConnStatusConnection Status
0 – Disconnected
1 – Connecting
2 – Connected
$SYS$LoadRate of item update in thousands over the last 15 minutes
$SYS$ReadCountFailedCumulated count of failed read requests to PLC
$SYS$HostNameConfigured IP address or host name of PLC
$SYS$PLCTypePLC Model Number
$SYS$ResetStatisticsReset statistics of OI server
$SYS$SyncDBForce upate of controller tag DB to OI server

Communication driver is optimized for communication with S7-1500 series of controller.

Communication type available in OI.SIDirect:

  • Legacy
  • Symbolic

Legacy communication
For using legacy, PUT/GET communication must be enabled and Optimized block access must be disabled

System Requirements

1GB RAM or more required as default.

Additional resources
For every additional 5 connections (up to 10k I/O @ 1000msec each), add 1GB RAM and 1 core

Configurable Parameter

Local TSAP and Remote TSAP
Local and remote TSAP must be different if the same PC is connecting to the same PLC.
Avoid using 0x0100-0xDF** in local TSAP configuration.

What do you have to watch out for, in particular, in the assigning of TSAPs in ISO… – ID: 23586050 – Industry Support Siemens

Redundant PLC

Two identical devices are expected to be configured (except the IP address), in the OI server manager having identical item syntax, connected to the same OI server.

Put watchdog (e.g. MW0) in Item List on both primary and secondary controller object.

Create new redundant object and point to the existing 2 controller object. use the watchdog as PingItem

New tag
Items cannot be added to RDI if the items do not exist in both controllers

Redundant DI Object

AVEVA Link
More information at Knowledge and Support Center (aveva.com)

Advanced Communication
Remember to enable ACM from Galaxy configuration before platform deployment

DI Object

Host DI object on non-redundant-configured Engine. This engine only contain single DI object for better performance

DI engine to point to single (preferably localhost) OI server for connection

RDI Object

Host RDI object on redundant-configured Engine.

Engine hosting RDI object is best to not contain any object. In case of re-deployment, no object will require redeployment.

Advantage of RDI Object
RDI object will maintain “subscription” to each OI server. Thus, failover speed will be very fast (in case of OI server issue).

Last modified: 12 December 2022