Wonderware Abcip Daserver User'S Guide: Invensys Systems, Inc
Wonderware Abcip Daserver User'S Guide: Invensys Systems, Inc
Wonderware Abcip Daserver User'S Guide: Invensys Systems, Inc
Copyright
2002-2008, 2010 Invensys Systems, Inc. All Rights Reserved. All rights reserved. No part of this documentation shall be reproduced, stored in a retrieval system, or transmitted by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior written permission of Invensys Systems, Inc. No copyright or patent liability is assumed with respect to the use of the information contained herein. Although every precaution has been taken in the preparation of this documentation, the publisher and the author assume no responsibility for errors or omissions. Neither is any liability assumed for damages resulting from the use of the information contained herein. The information in this documentation is subject to change without notice and does not represent a commitment on the part of Invensys Systems, Inc. The software described in this documentation is furnished under a license or nondisclosure agreement. This software may be used or copied only in accordance with the terms of these agreements. Invensys Systems, Inc. 26561 Rancho Parkway South Lake Forest, CA 92630 U.S.A. (949) 727-3200 http://www.wonderware.com For comments or suggestions about the product documentation, send an e-mail message to ProductDocumentationComments@invensys.com.
Trademarks
All terms mentioned in this documentation that are known to be trademarks or service marks have been appropriately capitalized. Invensys Systems, Inc. cannot attest to the accuracy of this information. Use of a term in this documentation should not be regarded as affecting the validity of any trademark or service mark. Alarm Logger, ActiveFactory, ArchestrA, Avantis, DBDump, DBLoad, DT Analyst, Factelligence, FactoryFocus, FactoryOffice, FactorySuite, FactorySuite A2, InBatch, InControl, IndustrialRAD, IndustrialSQL Server, InTouch, MaintenanceSuite, MuniSuite, QI Analyst, SCADAlarm, SCADASuite, SuiteLink, SuiteVoyager, WindowMaker, WindowViewer, Wonderware, Wonderware Factelligence, and Wonderware Logger are trademarks of Invensys plc, its subsidiaries and affiliates. All other brands may be trademarks of their respective owners.
iii
Contents
iv
Contents
Chapter 4 Configuration......................................29
Adding, Renaming, Deleting Port Objects...............30 Adding a Port..................................................................30 Renaming a Port.............................................................31 Deleting a Port ...............................................................32 Configuring ABCIP DAServer Ports .........................33 CIP Port Object Set-up...................................................34 The Ethernet Network ...................................................35 ENB_CLX Object........................................................ 35 BACKPLANE_CLX Object ........................................ 37 LOGIX5000_CLX Object ............................................ 38 ENB_FLX Object ........................................................ 41 BACKPLANE_FLX Object......................................... 43 LOGIX_FLX Object .................................................... 44 ML_EN Object ............................................................ 47 ENB_CPLX Object ..................................................... 49 ENI_CPLX Object ...................................................... 50 BACKPLANE_CPLX Object ......................................52 LOGIX_CPLX Object ................................................. 53 SLC500_EN Object..................................................... 56 The ControlNet Network ...............................................58 CNB_CLX Object........................................................ 58 CNB_FLX Object ........................................................ 59 PORT_CN Object........................................................ 61 PLC5_CN Object ........................................................ 62 SLC500_CN Object..................................................... 63 CNB_PORT_CLX Object............................................ 65 CNB_PORT_FLX Object ............................................ 67 CNB_PORT_CPLX Object ......................................... 68 The DeviceNet Network.................................................70
Contents
The Data Highway Plus Network..................................71 DHRIO_CLX Object ...................................................71 PORT_DHP Object .....................................................73 PLC5_DHP Object ......................................................75 SLC500_DHP Object ..................................................77 M1785KA5_GWY Object ............................................78 ML_DH485 Object ......................................................80 SLC500_DH485 ..........................................................82 Configuring Device Redundancy ...................................84
vi
Contents
Logix5000 Online Tag Management ........................... 116 Adding or Removing Tags ............................................ 117 Modifying Tags Through Downloaded Programs ....... 117 Loading Tag Database from File..............................117 Auto Load Tags on Activation ..................................... 118 Auto Synchronize Tags ................................................ 118 Persisted Tags .............................................................. 118 Tag Database from File Options Matrix ................. 119 Manual Tag Synchronization ...................................... 121 Accessing Secured Logix5000-series Controllers.122 Auto Synchronize Tag Functionality Matrix .......... 123 Persisted Tag Functionality Matrix ........................ 124 Controller Time Stamping.........................................124 Device Redundancy.....................................................127 Runtime Behavior ........................................................ 127
Contents
vii
Addressing SLC I/O Modules.......................................150 Diagram System .......................................................151 Label I/O Modules with "Word Counts" ..................152 Sequentially Number the Input Modules ...............152 Sequentially Number the Output Modules.............153 Status File Items ..........................................................153 Binary File Items..........................................................154 Timer File Items...........................................................154 Counter File Items .......................................................155 Control File Items ........................................................155 Integer File Items.........................................................156 Floating Point File Items .............................................156 ASCII File Items...........................................................157 ASCII String Section Items .........................................157 MicroLogix Item Naming ...........................................158 Output File Items .........................................................160 Input File Items............................................................160 Status File Items ..........................................................161 Binary File Items..........................................................161 Timer File Items...........................................................162 Counter File Items .......................................................162 Control File Items ........................................................163 Integer File Items.........................................................163 Floating Point File Items .............................................164 ASCII String Section Items .........................................164 Long Integer Section Items..........................................164 PID Section Items.........................................................165 Message Section Items .................................................166 DAServer Standard System Items ...........................167 DAServer Global System Item.....................................168 DAServer Device-Specific System Items.....................169 DAServer Device-Group-Specific System Items .........172 DAServer-Specific System Item ..................................176 DAServer Redundant Device Specific System Items .185 Generic OPC Syntax....................................................186
viii
Contents
Welcome
The Wonderware ABCIP DAServer is a Microsoft Windows application that allows client applications direct and indirect access to Allen-Bradley families of ControlLogix, GuardLogix, FlexLogix, CompactLogix, SoftLogix 5800, MicroLogix, PLC-5, and SLC500 controllers. The DAServer does not require any Rockwell Software RSLinx package.
Latest version of ABCIP firmware The latest versions of Allen-Bradley module firmware available prior to release was verified and tested. This includes version 17.02 for the ControlLogix, CompactLogix, GuardLogix and FlexLogix Controllers that support it. The only exception is when using the ControlLogix System Redundancy Module; the currently supported release is version 16.x. Support for out-of-proc activation only OPC connectivity has been modified to support only outof-proc activation. Connect to MicroLogix 1400 Controllers Support communications to the MicroLogix 1400 controllers with onboard Ethernet Web Server (1763L16AWA, -L16BWA, -L16BBB, and -L16DWD) including the latest Series B release.
10
Welcome
Note 64-bit processor support is provided through the use of Microsoft's WoW64 emulation component on x86 hardware.
Support User Account Control (UAC) enabled Support UAC enabled without user privilege elevation in run time. New Location for Configuration Files All configuration files and Tag Database files will be moved to C:\Documents and Settings\All Users\Application Data\Wonderware\DAServer\DASABCIP on Windows XP and Windows Server 2003 operating systems and to C:\Program Data\Wonderware\DAServer\DASABCIP on Windows Vista and above operating systems. The rule file will provide the version information.
Documentation Conventions
This documentation uses the following conventions:
Convention Used for
Initial Capitals
Bold
Paths and file names. Menus, commands, dialog box names, and dialog box options. Code samples and display text.
Monospace
Technical Support
11
Technical Support
Wonderware Technical Support offers a variety of support options to answer any questions on Wonderware products and their implementation. Before you contact Technical Support, refer to the relevant section(s) in this documentation for a possible solution to the problem. If you need to contact technical support for help, have the following information ready:
The type and version of the operating system you are using. Details of how to recreate the problem. The exact wording of the error messages you saw. Any relevant output listing from the Log Viewer or any other diagnostic applications. Details of what you did to try to solve the problem(s) and your results. If known, the Wonderware Technical Support case number assigned to your problem, if this is an ongoing problem.
12
Welcome
13
Chapter 1
Getting Started
The DAServer is one component of a software system that connects your software application with information on the factory floor. This DAServer documentation covers only the information you need to configure and run the DAServer component. See the documentation that comes with the related components for details on their operation. You can find installation instructions in a help file on the distribution CD. You use the DAServer Manager to configure, activate, and troubleshoot the DAServer. The DAServer Manager is located in the System Management Console (SMC). This documentation describes some of the features of the DAServer Manager. See the DAServer Manager Users Guide to find more information on:
Global parameters Configuration sets Time zone features Icon definitions Activation/deactivation Configuring as a service Importing/exporting device items Standard diagnostics
14
You can troubleshoot problems with the DAServer using the ArchestrA Log Viewer, a snap-in to the SMC. See the Log Viewer help file to find information on:
Viewing error messages. Determining which messages are shown. Bookmarking error messages.
You may also be able to troubleshoot problems using your client application, such as the Wonderware InTouch HMI software. The client application can use system device items to determine the status of nodes and the values of some parameters.
A PC is set up with the necessary network cards, and is connected to the necessary networks. The Windows administration account is created or identified. The DAServer and any other Wonderware software such as the DAServer Manager is installed with the proper licenses. For more information, see the License Utility documentation on the distribution CD. The client software is installed. The device(s) is/are connected (networked) and, if necessary, programmed.
The device network configuration and addresses. Which data items are needed for the client application. The device name/topic name/group name. The desired update intervals.
15
Important On Windows Vista and later operating systems, Local DDE is supported only when the DAServer is configured as "Not a Service" and activated from its executable file or launched from InTouch. Local DDE is not supported when the DAServer is activated from the System Management Console (SMC).
The Ethernet Industrial Protocol (EtherNet/IP) is an open industrial networking standard using CIP on top of both TCP/IP and UDP/IP suite as its lower-level transport and data-link vehicle. The Common Industrial Protocol (CIP) is a common application-layer protocol used by EtherNet/IP, ControlNet, and DeviceNet. The following network communication protocols use CIP as their top application layer:
ControlNet - The ControlNet protocol is a real-time deterministic control-layer networking protocol using CIP as its top application layer. DeviceNet - The DeviceNet protocol is an open lower-level networking standard using CIP on top of Controller Area Network (CAN) to connect industrial field devices to controllers and computers.
Note The ABCIP DAServer does not implement the DeviceNet protocol internally. Device data from the DeviceNet network needs to be mapped to the appropriate controllers before the ABCIP DAServer can access them.
For supported non-Logix controllers, Allen-Bradley uses the Programmable Controller Communications Commands (PCCC) application-layer protocol.
16
This is accomplished by using the DF1 protocol in its lower data-link layer. The DF1 protocol supports features for both D1 (data transparency) and F1 (two-way simultaneous transmission with embedded responses) subcategories of ANSI x3.28 specifications. This protocol is encapsulated in CIP when used by the DAServer to communicate with the following supported Allen-Bradley controllers:
ControlNet Data Highway 485 (DH485) Data Highway Plus (DH+) DeviceNet Ethernet
Supported Devices
17
Supported Devices
The ABCIP DAServer will provide direct and indirect connectivity to the Allen-Bradley controllers described in this section:
ControlLogix Controllers
All ControlLogix processors (1756-series) directly accessible from the Ethernet using the ControlLogix Ethernet or EtherNet/IP Bridge module (1756-ENET, 1756-ENBT, 1756-EN2T, or 1756-EWEB) through the backplane. All ControlLogix processors (1756-series) accessible through the ControlLogix Gateway from the ControlNet network by means of the ControlLogix ControlNet Bridge module (1756-CNB/CNBR or 1756-CN2/CN2R). ControlLogix 1757-SRM processors directly accessible from the Ethernet using the ControlLogix Ethernet or EtherNet/IP Bridge module (1756-ENBT) or accessible through the ControlLogix Gateway from the ControlNet Bridge module (1756-CNBR).
The 1756-EWEB enhanced Web-server module provides both CIP communications and Internet browser web-services. ABCIP DAServer supports ONLY CIP communications. The ABCIP DAServer is capable of accessing multiple ControlLogix processors in a single chassis.
GuardLogix Controllers
All GuardLogix Integrated Safety processors (1756-LSP & 1756-L6xS) directly accessible from the Ethernet using the ControlLogix Ethernet or EtherNet/IP Bridge module (1756-ENBT or 1756-EWEB) through the backplane. All GuardLogix Integrated Safety processors (1756-LSP & 1756-L6xS) accessible through the ControlLogix Gateway from the ControlNet network by means of the ControlLogix ControlNet Bridge module (1756-CNB/CNBR or 1756-CN2).
18
All SoftLogix 5800 controllers (1789-series) directly accessible from the Ethernet on an industrial or desktop PC.
CompactLogix Controllers
All CompactLogix processors (1769/1768-series) directly accessible from the Ethernet using the integrated EtherNet/IP port. All CompactLogix processors (1769/1768-series) accessible from the Ethernet via the EtherNet/IP interface module for CompactLogix/MicroLogix (1761-NET-ENI).
FlexLogix Controllers
All FlexLogix processors (1794-series) accessible from the Ethernet using the EtherNet/IP communications daughter-card (1788-ENBT). All FlexLogix processors (1794-series) accessible through the ControlLogix Gateway from the ControlNet network by means of the ControlNet daughter-card (1788-CNC).
MicroLogix Controllers
All MicroLogix 1100 processors (1763-series) and 1400 processors (1766-series) directly accessible from the Ethernet using the integrated EtherNet/IP port. All MicroLogix 1000/1200/1500 processors accessible from the Ethernet via the Ethernet/IP interface module for CompactLogix/MicroLogix (1761-NET-ENI) series B or higher. All MicroLogix 1000/1200/1500 processors accessible from the DH485 network using the RS-232C-to-DH485 Advanced Interface Converter module (1761-NET-AIC) to connect to the Data Highway Plus network through a DH+-to-DH485 Bridge module (1785-KA5) and routed through the ControlLogix Gateway by means of the ControlLogix DH+/RIO Bridge module (1756-DHRIO) to Ethernet.
Supported Devices
19
PLC-5 Controllers
All PLC-5 processors (1785-series) accessible through the ControlLogix Gateway from the Data Highway Plus network by means of the ControlLogix DH+/RIO Bridge module (1756-DHRIO) All ControlNet-capable PLC-5 processors (1785-series) accessible through the ControlLogix Gateway from the ControlNet network by means of the ControlLogix ControlNet Bridge module (1756-CNB/CNBR).
SLC500 Controllers
All SLC 5/05 processors accessible from the Ethernet using the built-in EtherNet/IP interface. All SLC 5/03, /04 processors (1747-series) accessible from the Ethernet using the EtherNet/IP interface module (1761-NET-ENI). All SLC 5/04 processors (1747-series) accessible through the ControlLogix Gateway from the Data Highway Plus network by means of the ControlLogix DH+/RIO Bridge module (1756-DHRIO). All SLC 5/03, /04, /05 processors (1747-series) linked to the SLC500 ControlNet RS-232 interface module (1747-KFC15) accessible through the ControlLogix Gateway from the ControlNet network by means of the ControlLogix ControlNet Bridge module (1756-CNB). All SLC 5/03, /04, /05 processors (1747-series) accessible from the DH485 network using the RS-232C-to-DH485 Advanced Interface Converter module (1761-NET-AIC) to connect to the Data Highway Plus network through a DH+-to-DH485 Bridge module (1785-KA5) and routed through the ControlLogix Gateway by means of the ControlLogix DH+/RIO Bridge module (1756-DHRIO) to the Ethernet.
While primarily intended for use with Wonderware InTouch, the DAServer may be used by any Microsoft Windows program capable of acting as a DDE, FastDDE, SuiteLink, or OPC client.
20
Supported Topologies
This ABCIP DAServer communicates with supported Allen-Bradley families of CompactLogix, ControlLogix, FlexLogix, GuardLogix, MicroLogix, PLC-5, SLC500 and SoftLogix 5800 controllers across:
ControlNet Data Highway 485 (DH485) Data Highway Plus (DH+) DeviceNet Ethernet
Before attempting to configure your DAServer, you should determine the hierarchical structure of your network/controller environment. See the following ABCIP DAServer Software Topology Diagram:.
ArchestrA.DASABCIP.x CIP ENB_FLX ENB_CLX BackPlane_FLX Backplane_CLX Logix_FLX Logix5000_CLX CNB_FLX DHRIO_CLX PORT_DHP SLC500_DHP PLC5-DHP M1785KA5_GWY ML_DH485 Backplane_CLX CNB_CLX PORT_CN PLC5_CN SLC500_CN CNB_PORT_CLX Backplane_CLX Logix5000_CLX SLC500_EN ML_EN ENB_CPLX/ENI_CPLX Logix_CPLX BackPlane_CPLX CNB_PORT_FLX Logix_CPLX Backplane_FLX CNB_PORT_CPLX CNB_PORT_FLX BackPlane_CPLX Backplane_FLX RedundantDevice Logix_CPLX Logix_FLX Logix_FLX CNB_PORT_CPLX BackPlane_CPLX SLC500_DH485 Logix5000_CLX PLC5_CN SLC500_CN CNB_PORT_CLX Port_CN
21
The following port numbers are added to the firewall exception list on the computer where the DAServer run-time application is installed:
5413 - TCP port for slssvc.exe 445 - TCP port for file and printer sharing 135 - TCP port for DCOM
The following applications are added in to the firewall exception list on the computer where the DAServer Manager (configuration part) is installed:
The following port numbers are added in to the firewall exception list on the computer where the DAServer Manager (configuration part) is installed:
445 - TCP port for file and printer sharing 135 - TCP port for DCOM
22
Un-installing the DAServer does not remove the firewall exception list entries. You must delete the firewall exception list entries manually. For more information on how to do this, see your firewall or Windows security documentation.
23
Chapter 2
Setting Up Your DAServer
This section describes the procedures required to set up the ABCIP DAServer for use with the supported device gateways and communication-interface modules. Many high-level functions and user-interface elements of the DAServer Manager are universal to all DAServers. These universal functions are described in detail in the DAServer Manager Users Guide. See the DAServer Manager Users Guide to find more information on:
Global parameters Configuration sets Time zone features Icon definitions Activation/deactivation Configuring as a service Importing/exporting device items Standard diagnostics
The ABCIP DAServer uses the Common Industrial Protocol (CIP) to communicate with all devices across an Ethernet network.
24
The ABCIP Hierarchy in the DAServer starts with the PORT_CIP Object, followed by selected supported EtherNet/IP communication bridge/interface modules. The communication bridge module indirectly allows the DAServer to access the following networks to which the devices are connected:
ControlNet Network Data Highway 485 (DH485) Network Data Highway Plus (DH+) Network DeviceNet Network Ethernet Network
Note Before attempting to configure your DAServer, you should determine the hierarchical structure of your network/controller environment.
25
Review the items described in Before You Begin on page 14. Locate the DAServer in the System Management Console (SMC). See Finding Your DAServer in the SMC on page 26. Configure the global parameters. See the DAServer Manager Users Guide. Add a Port. See Adding a Port on page 30. Add and configure ports and devices. See applicable configuration set-up in Configuring ABCIP DAServer Ports on page 33. Add one or more device groups. See Device Group Definitions on page 88. Add device items. See Device Item Definitions on page 90. Activate the DAServer. See Configuring the DAServer as Service on page 100. Access data from the client, see Accessing the Data in Your DAServer on page 107. page 189.
3 4 5
6 7 8 9
26
On the system Start menu, click Programs. Navigate to the Wonderware folder that contains the System Management Console and then click System Management Console. In the System Management Console, expand DAServer Manager. Locate the group with the node ArchestrA.DASABCIP.4
2 3
27
4 5
Select the configuration node to display the global parameters. To view global parameter configuration and settings in detail, see the DAServer Manager Users Guide.
28
29
Chapter 3
Configuration
Network Communication Bridge/Interface Modules are the communication links between the ABCIP DAServer and its supported Allen-Bradley controllers. You must create these links within the DAServer Manager hierarchy to bridge/route control and information data between different networks to target controllers. This is accomplished by creating Port Objects. These Port Objects simulate the physical hardware layout and must be built to establish communications to each of the controllers. Once you have built the ABCIP hierarchy, you can configure the respective devices for communications. Finally, you can create the desired Device Groups for each controller. Before you add these Ports in the SMC, you need to identify your hardware topology to the devices being connected. Once you have established this hierarchy you will then add, rename, or delete Port objects to accurately represent how your network is organized.
30
Chapter 3 Configuration
Adding a Port
The first step in specifying the network between the DAServer and a device is to add Port objects. After you add the necessary Ports depicting your network, you will then be able to add and communicate with your devices.
To add a port 1 2 3
Open the DAServer Manager in the SMC. Locate and expand the target DAServer group hierarchy you wish to add ports to. Right-click the default Configuration node and select the applicable Add Port Object. The console tree will now show the new port with its default port name selected. Edit the name as needed and press Enter.
31
Renaming a Port
After you create ports in the DAServer Manager, it may be necessary to rename them to work with your client applications.
To change an existing port object name 1
In the DAServer Manager, expand the DAServer hierarchy tree to display the target port object node to display the port you wish to rename. Select and right-click the port objects name (or <F2>). Click Rename. Type the new name and press Enter.
2 3
Note Changing the port name prevents clients from registering data using the old name. Data for existing queries is set to bad quality. Try not to make changes to parameters like the Port name after you develop a large client application.
32
Chapter 3 Configuration
Deleting a Port
If your hardware network topology is changed you may need to delete a port object. When you delete a port, all nodes below the port in its hierarchy (child nodes) are also deleted. If a client application requests new data from a deleted port or from a node on a deleted port, the request is rejected. Data for existing queries is set to bad quality.
To delete a port 1
In the DAServer Manager, expand the DAServer hierarchy tree to display the target port object node you wish to delete. Right-click the port object node to be deleted and click Delete. Read the warning and then click Yes. The port object and all nodes (devices) below it in the hierarchy are deleted.
2 3
33
34
Chapter 3 Configuration
Select and right-click on Configuration. Select Add PORT_CIP Object from the shortcut menu. An object called New_PORT_CIP_000 is created. Rename the newly created object as appropriate. The Port_CIP_000 Parameters configuration view is displayed in the Configuration branch of the hierarchy.
This configuration view has two parameters, one of which is configurable: Port Type: The information is provided automatically by the DAServer Manager (CIP). Maximum Queued Msgs: The default number of unconnected messages that the DAServer can send to a device before a reply is received.
When this number is reached, the DAServer queues messages until a reply is received from the device. Valid range is 1 - 40. The default value is 4.
35
ENB_CLX Object
The ENB_CLX object represents the physical Allen-Bradley EtherNet/IP Communications module within a ControlLogix chassis.
Select and right-click on the New_PORT_CIP_000 object. Select Add ENB_CLX Object from the shortcut menu. A New_ENB_CLX_000 object is created. Rename the newly created object as appropriate. The ENB_CLX parameters view is displayed.
36
Chapter 3 Configuration
This configuration view has three parameters, two of which are configurable: Module Type: Information provided automatically by the DAServer Manager (Ethernet Comm). Host Name: Host Name or IP Address of the destination 1756-ENET/ENBT/EN2T/EWEB module.
The Host Name is defined in the system Host file, usually found in: \Windows\system32\drivers\etc\hosts folder. Type in the network address where the PLC is located (for example, 10.11.12.13) or type in a host name if one is defined in the LocalHost list. The number of characters cannot be more than 255. The field cannot be blank.
Note The Host Name defaults to the LocalHost. If the LocalHost is selected and deleted, resulting in a blank Host Name box, and you apply the changes, this will result in an error message. Important If setting up a SoftLogix or GuardLogix device, the host or IP address of the corresponding SoftLogix or physical GuardLogix device must be entered in the Ethernet/IP Bridge Module (ENB) node within the ABCIP DAServer hierarchy to establish communications with the device. For more information, see SoftLogix 5800 Controllers on page 18 or GuardLogix Controllers on page 17.
Connection Timeout: Time (in milliseconds) allowed for establishing a socket connection to a target device.
37
BACKPLANE_CLX Object
The BackPlane_CLX object represents the physical backplane of an Allen-Bradley ControlLogix controller chassis. This object is hosted by the ENB_CLX and CNB_Port_CLX objects.
Note Only one instance of the BACKPLANE_CLX object can be created per ENB_CLX and CNB_Port_CLX branch. Note The DAServer is capable of operating with multiple ControlLogix processors in a single backplane. To add the BACKPLANE_CLX object to your ABCIP hierarchy 1 2
Select and right-click on the New_ENB_CLX_000 object. Select Add BACKPLANE_CLX Object from the shortcut menu. The New_BACKPLANE_CLX_000 object is created. Rename the newly created object as appropriate. The BACKPLANE_CLX Parameters view is displayed.
This configuration view has one element: Device Type: The information is provided automatically by the DAServer Manager (BackPlane).
38
Chapter 3 Configuration
LOGIX5000_CLX Object
The Logix5000_CLX object is a logical representation of the Allen-Bradley ControlLogix processor modules within a ControlLogix chassis.
The Logix5000_CLX object is also a logical representation of the following Allen-Bradley processor modules:
Select and right-click on the New_BACKPLANE_CLX_000 object. Select Add LOGIX5000_CLX Object from the shortcut menu. The New_LOGIX5000_CLX_000 object is created. Rename the newly created object as appropriate. The Logix5000_CLX Parameters view is displayed.
39
This configuration view has nine parameters, eight of which are configurable: Processor Type: Information provided automatically by the DAServer Manager (ControlLogix /GuardLogix /SoftLogix). Slot Number: A sequential number beginning with 0 (zero) assigned to each slot in a ControlLogix chassis.
The slot number indicates where the module resides in the parent backplane. The valid range is 0 - 16. The default value is 0 (zero).
Reply Timeout: Time (in seconds) the DAServer will wait for the acknowledgement after it sends out a message. The message will be resent when time-out occurs.
Max CIP Connections: The maximum number of CIP connections which can be originated from the DAServer to this device.
Optimization Mode (For detailed information, see Logix5000 Optimization Mode on page 111):
No optimization: The server uses the most basic communication method available by using the tag name for each communication with the controller. The tag database will be uploaded from the processor to validate the tag names. Optimize for read: All tags are accessed by predefining messages in the controller, thus optimizing blocks of information from the controller. Initialization of this mode requires that these message blocks are built when connecting to the controller, therefore startup time will require more time. This mode is most effective with large number of tags on continuous scan.
40
Chapter 3 Configuration
Optimize for startup time (Default): This option provides the best overall performance. All tags are accessed from the Logix processor using the devices memory location table. If this option is checked, the Auto Synchronize Tag option is checked automatically and cannot be unchecked.
Optimize User Defined Data Types: The optimization for reading structures is enabled when selected (Default is unchecked). For more detailed information, see UDT Optimization on page 113. If selected, the server will retrieve the whole structure in one packet provided the size of the structure is 488 bytes or less. Tag Database Options: Three options are selectable to implement manual or automated updates of the Logix processors tag database. For more information, see Logix5000 Online Tag Management on page 116.
Auto Load Tags on Startup (Default) Auto Synchronize Tags Use Persisted Tags (Default)
Note If the Optimization setting is selected for "Optimize for startup time", the "Auto Synchronize Tags" option is automatically selected and unchangeable (dimmed). The DAServer will need to synchronize physical address tags from the device. Important Support for secured Logix5000 controllers will affect the way the Auto Synchronize Tags and Persisted Tags behave. For detailed information, see Accessing Secured Logix5000-series Controllers on page 122.
41
ENB_FLX Object
The ENB_FLX object represents the physical Allen-Bradley FlexLogix Ethernet Communication Daughter Card.
1788-ENBT
Select and right-click on the New_PORT_CIP_000 object. Select Add ENB_FLX Object from the shortcut menu. A New_ENB_FLX_000 object is created. Rename the newly created object as appropriate. The ENB_FLX Parameters view is displayed.
42
Chapter 3 Configuration
This configuration view has three parameters, two of which are configurable: Module Type: Information provided automatically by the DAServer Manager (Ethernet Communication). Host Name: The Host Name or IP Address of the destination 1788-ENBT module.
The Host Name is defined in the system Host file, usually found in: \Windows\system32\drivers\etc\hosts folder. The number of characters cannot be more than 255. The field cannot be blank.
Note The Host Name defaults to the LocalHost. If the LocalHost is selected and deleted, resulting in a blank Host Name box, and you apply the changes, this will result in an error message.
Connection Timeout: Time (in milliseconds) allowed for establishing a socket connection to a target device.
43
BACKPLANE_FLX Object
The BackPlane_FLX object represents the physical backplane of an Allen-Bradley FlexLogix controller assembly. This object is hosted by ENB_FLX and CNB_Port_FLX.
Note Only one instance of the BACKPLANE_FLX object can be created per ENB_FLX branch. Note The DAServer is capable of operating with multiple FlexLogix processors in a single backplane. To add the BACKPLANE_FLX object to your ABCIP hierarchy 1 2
Select and right-click on the New_ENB_FLX_000 object. Select Add BACKPLANE_FLX Object from the shortcut menu. A New_BACKPLANE_FLX_000 object is created. Rename the newly created object as appropriate. The BACKPLANE_FLX Parameters view is displayed.
This configuration view has one element: Device Type: The information is provided automatically by the DAServer Manager (Backplane).
44
Chapter 3 Configuration
LOGIX_FLX Object
The Logix_FLX object represents the physical Allen-Bradley FlexLogix processor module.
1794-Lxx
Select and right-click on the NEW_BACKPLANE_FLX_000 object. Select Add LOGIX_FLX Object from the shortcut menu. The New_LOGIX_FLX_000 object is created. Rename the newly created object as appropriate. The LOGIX_FLX Parameters view is displayed.
45
This configuration view has nine parameters, eight of which are configurable: Processor Type: Information provided automatically by the DAServer Manager (FlexLogix). Slot Number: A sequential number beginning with 0 (zero) assigned to each slot in a FlexLogix chassis.
The slot number indicates where the module resides. The valid range is 0 - 16. The default value is 0.
Reply Timeout: Time (in seconds) the DAServer will wait for the acknowledgement after it sends out a message. The message will be resent when time-out occurs.
Max CIP Connections: The maximum number of CIP connections which can be originated from the DAServer to this device.
Optimization Mode (For detailed information, see Logix5000 Optimization Mode on page 111):
No optimization: The server uses the most basic communication method available by using the tag name for each communication with the controller. The tag database will be uploaded from the processor to validate the tag names. Optimize for read: All tags are accessed by predefining messages in the controller, thus optimizing blocks of information from the controller. Initialization of this mode requires that these message blocks are built when connecting to the controller, therefore startup time will require more time. This mode is most effective with large number of tags on continuous scan.
46
Chapter 3 Configuration
Optimize for startup time (Default): This option provides the best overall performance. All tags are accessed from the Logix processor using the devices memory location table. If this option is checked, the Auto Synchronize Tag option is checked automatically and cannot be unchecked.
Optimize User Defined Data Types: The optimization for reading structures is enabled when selected (Default is unchecked). For more detailed information, see UDT Optimization on page 113.
If selected, the server will retrieve the whole structure in one packet provided the size of the structure is 488 bytes or less.
Tag Database Options: Three options are selectable to implement manual or automated updates of the Logix processors tag database. For more information, see Logix5000 Online Tag Management on page 116.
Auto Load Tags on Startup (Default) Auto Synchronize Tags Use Persisted Tags (Default)
Note If the Optimization setting is selected for "Optimize for startup time", the "Auto Synchronize Tags" option is automatically selected and unchangeable (dimmed). The DAServer will need to synchronize physical address tags from the device. Important Support for secured Logix5000 controllers will effect the way the Auto Synchronize Tags and Persisted Tags behave. For detailed information, see Accessing Secured Logix5000-series Controllers on page 122.
47
ML_EN Object
The ML_EN object represents the physical Allen-Bradley MicroLogix processor with the built-in EtherNet/IP port or coupled with the Ethernet Interface module for MicroLogix and CompactLogix (1761-NET-ENI).
Select and right-click on the New_PORT_CIP_000 object. Select Add ML_EN Object from the shortcut menu. A New_ML_EN_000 object is created. Rename the newly created object as appropriate. The ML_EN Parameters view is displayed.
48
Chapter 3 Configuration
This configuration view has six parameters, five of which are configurable: Processor Type: Information provided automatically by the DAServer Manager (MicroLogix). Host Name: The Host Name or IP Address of the destination MicroLogix processor or 1761-NET-ENI module connected to a MicroLogix processor.
The Host Name is defined in the system Host file, usually found in: \Windows\system32\drivers\etc\hosts folder. The number of characters cannot be more than 255. The field cannot be blank.
Reply Timeout: Time (in seconds) the DAServer will wait for the acknowledgement after it sends out a message. The message will be resent when time-out occurs.
Connection Timeout: Time (in milliseconds) allowed for establishing a socket connection to a target device.
Use CIP Connection: This option specifies if the CIP connection should be used to communicate with the MicroLogix controller. It must be selected to support MicroLogix model 1100/1400-series controllers with direct CIP connection. It is optional for all other MicroLogix models.
Note The number of CIP connections in the controllers are limited (See Max CIP Connections below).
Max CIP Connections: The maximum number of CIP connections which can be originated from the DAServer to this device.
Note Max CIP Connections setting available only if the CIP connection is selected.
The logical endpoint for each branch of the ABCIP hierarchy tree is always a Processor Type node, which represents the controller device.
49
ENB_CPLX Object
The ENB_CPLX object represents the physical integrated EtherNet/IP port on the Allen-Bradley CompactLogix Ethernet processor. This object is hosted by CIP Network Object
Note A maximum of 65536 ENB_CPLX objects can be created for the DAServer. To add ENB_CPLX objects to your ABCIP hierarchy 1 2 3
Select and right-click on the New_PORT_CIP_000 object. Select Add ENB_CPLX_Object from the shortcut menu. A New_ENB_CPLX_000 object is created. Rename the newly created object as appropriate. The ENB_CPLX Parameters configuration view appears.
50
Chapter 3 Configuration
This configuration view has three parameters, two of which are configurable: Module Type: Information provided automatically by the DAServer Manager (Ethernet Communication). Host Name: The Host Name or IP Address of the destination Ethernet-capable CompactLogix processor.
The Host Name is defined in the system Host file, usually found in: \Windows\system32\drivers\etc\hosts folder. The number of characters cannot be more than 255. The field cannot be blank.
Note The Host Name defaults to the LocalHost. If the LocalHost is selected and deleted, resulting in a blank Host Name box, and you apply the changes, this will result in an error message.
Connection Timeout: Time (in milliseconds) allowed for establishing a socket connection to a target device.
ENI_CPLX Object
The ENI_CPLX object represents the physical Allen-Bradley Ethernet Interface module for MicroLogix and CompactLogix (1761-NET-ENI).
1761-NET-ENI Module
Select and right-click on the New_PORT_CIP_000 object. Select Add ENI_CPLX_Object from the shortcut menu. A New_ENI_CPLX_000 object is created.
51
Rename the newly created object as appropriate. The ENI_CPLX Parameters configuration view is displayed.
This configuration view has three parameters, two of which are configurable: Module Type: Information provided automatically by the DAServer Manager (Ethernet Interface). Host Name: The Host Name or IP Address of the destination 1761-NET-ENI module.
The Host Name is defined in the system Host file, usually found in: \Windows\system32\drivers\etc\hosts folder.
Note The Host Name defaults to the LocalHost. If the LocalHost is selected and deleted, resulting in a blank Host Name box, and you apply the changes, this will result in an error message.
Connection Timeout: Time (in milliseconds) allowed for establishing a socket connection to a target device.
52
Chapter 3 Configuration
BACKPLANE_CPLX Object
The BACKPLANE_CPLX object represents the physical backplane of a CompactLogix controller assembly. This object is hosted by ENB_CPLX and ENI_CPLX.
Note Only one instance of the BACKPLANE_CPLX object can be created per ENB_CPLX or ENI_CPLX branch. Note The DAServer is capable of operating with multiple CompactLogix processors in a single backplane. To add the BACKPLANE_CPLX object to your ABCIP hierarchy 1 2
Select and right-click on the New_ENB_CPLX_000 or New_ENI_CPLX_000 object. Select Add BACKPLANE_CPLX Object from the shortcut menu. The New_BACKPLANE_CPLX_000 object is created. Rename the newly created object as appropriate. The BACKPLANE_CPLX Parameters view appears.
This configuration view has one element: Device Type: The information is provided automatically by the DAServer Manager (Backplane).
53
LOGIX_CPLX Object
The LOGIX_CPLX object represents the physical CompactLogix processor module.
1768-Lxx 1769-Lxx
Select and right-click on the NEW_BACKPLANE_CPLX_000 object. Select Add LOGIX_CPLX Object from the shortcut menu. The New_LOGIX_CPLX_000 object is created. Rename the newly created object as appropriate. The LOGIX_CPLX Parameters view is displayed.
54
Chapter 3 Configuration
This configuration view has nine parameters, eight of which are configurable: Processor Type: Information provided automatically by the DAServer Manager (LOGIX5000). Slot Number: A sequential number beginning with 0 (zero) assigned to each slot in a Logix5000 chassis.
The slot number indicates where the module resides. The valid range is 0 - 16. The default value is 0 (zero).
Reply Timeout: Time (in seconds) the DAServer will wait for the acknowledgement after it sends out a message. The message will be resent when time-out occurs.
Max CIP Connections: The maximum number of CIP connections which can be originated from the DAServer to this device.
Optimization Mode (For detailed information, see Logix5000 Optimization Mode on page 111):
No optimization: The server uses the most basic communication method available by using the tag name for each communication with the controller. The tag database will be uploaded from the processor to validate the tag names. Optimize for read: All tags are accessed by predefining messages in the controller, thus optimizing blocks of information from the controller. Initialization of this mode requires that these message blocks are built when connecting to the controller, therefore startup time will require more time. This mode is most effective with large number of tags on continuous scan.
55
Optimize for startup time (Default): This option provides the best overall performance. All tags are accessed from the Logix processor using the devices memory location table. If this option is checked, the Auto Synchronize Tag option is checked automatically and cannot be unchecked.
Optimize User Defined Data Types: The optimization for reading structures is enabled when selected (Default is unchecked). For more detailed information, see UDT Optimization on page 113.
If selected, the server will retrieve the whole structure in one packet provided the size of the structure is 488 bytes or less.
Tag Database Options: Three options are selectable to implement manual or automated updates of the Logix processors tag database. For more information, see Logix5000 Online Tag Management on page 116.
Auto Load Tags on Startup (Default) Auto Synchronize Tags Use Persisted Tags (Default)
Note If the Optimization setting is selected for "Optimize for startup time", the "Auto Synchronize Tags" option is automatically selected and unchangeable (dimmed). The DAServer will need to synchronize physical address tags from the device. Important Support for secured Logix5000 controllers will affect the way the Auto Synchronize Tags and Persisted Tags behave. For detailed information, see Accessing Secured Logix5000-series Controllers on page 122.
56
Chapter 3 Configuration
SLC500_EN Object
The SLC500_EN object represents the physical Allen-Bradley SLC500 processor connected to an Allen-Bradley Ethernet Interface for MicroLogix and CompactLogix (1761-NET-ENI).
Select and right-click on the New_PORT_CIP_000 object. Select Add SLC500_EN Object from the shortcut menu. A New_SLC500_EN_000 object is created. Rename the newly created object as appropriate. The SLC500_EN Parameters view is displayed.
This configuration view has six parameters, five of which are configurable: Processor Type: Information provided automatically by the DAServer Manager (SLC500). Host Name: The Host Name or IP Address of the destination 1761-NET-ENI Module.
The Host Name is defined in the system Host file, usually found in: \Windows\system32\drivers\etc\hosts folder.
57
The number of characters cannot be more than 255. The field cannot be blank.
Reply Timeout: Time (in seconds) the DAServer will wait for the acknowledgement after it sends out a message. The message will be resent when time-out occurs.
Connection Timeout: Time (in milliseconds) allowed for establishing a socket connection to a target device.
Use CIP Connection: Must be selected to support SLC 5/05-series controllers with direct CIP connection.
Max CIP Connections: The maximum number of CIP connections which can be originated from the DAServer to this device.
Note Max CIP Connections setting available only if the direct CIP connection is selected.
58
Chapter 3 Configuration
CNB_CLX Object
The CNB_CLX object represents the physical Allen-Bradley ControlLogix ControlNet Bridge module.
1756-CNB(R) 1756-CN2(R)
Select and right-click on the New_BACKPLANE_CLX_000 object. Select Add CNB_CLX Object from the shortcut menu. The New_CNB_CLX_000 object is created. Rename the newly created object as appropriate. The CNB_CLX Parameters view is displayed.
59
This configuration view has two parameters, one of which is configurable: Port Type: Information provided automatically by the DAServer Manager (ControlNet Communication) Slot Number: A sequential number beginning with 0 (zero) assigned to each slot in a ControlNet communications interface module.
The slot number indicates where the sub-module resides. The valid range is 0 - 16. The default value is 0 (zero).
CNB_FLX Object
The CNB_FLX object represents the physical Allen-Bradley FlexLogix ControlNet Communication Daughter Card.
1788-CNC(R) 1788-CNF(R)
60
Chapter 3 Configuration
Select and right-click on the NEW_BACKPLANE_FLX_000 object. Select Add CNB_FLX Object from the shortcut menu. The New_CNB_FLX_000 object is created. Rename the newly created object as appropriate. The CNB_FLX Parameters view is displayed.
This configuration view has two parameters, one of which is configurable: Port Type: The information is provided automatically by the DAServer Manager (ControlNet Comm.) Slot Number: A sequential number beginning with 0 (zero) assigned to each slot in a FlexLogix chassis.
The slot number indicates where the module resides. The valid range is 0 - 16. The default value is 0.
Note ABCIP DAServer supports single hops from one ControlNet link to another for accessing data in the target ControlLogix or FlexLogix processor. That is, an additional level of Logix_CLX or Logix_FLX object can be populated under the respective BACKPLANE_CLX_000 or BACKPLANE_FLX_000 object along the CNB_CLX or CNB_FLX hierarchy branch.
61
PORT_CN Object
The Port_CN object represents the physical ControlNet port for the Allen-Bradley ControlNet Bridge module. This object is hosted by CNB_CLX and CNB_FLX.
To add the PORT_CN object to your ABCIP hierarchy 1 2 3
Select and right-click on the New_PORT_CN_000 object. Select Add PORT_CN Object from the shortcut menu. The New_PORT_CN_000 object is created. Rename the newly created object as appropriate. The PORT_CN Parameters view is displayed.
This configuration view has three parameters, two of which are configurable: Port Type: Information provided automatically by the DAServer Manager (ControlNet). Channel Number: The number of physical channels/ports used on the ControlNet network.
62
Chapter 3 Configuration
PLC5_CN Object
The PLC5_CN object represents the physical Allen Bradley ControlNet-capable PLC-5 processor.
1785-LxxC
Select and right-click on the New_PORT_CN_000 object. Select Add PLC5_CN Object from the shortcut menu. The New_PLC5_CN_000 object is created. Rename the newly created object as appropriate. The PLC5_CN Parameters view is displayed.
63
The configuration view contains five parameters, four of which are configurable: Processor Type: The information is automatically provided (PLC-5). ControlNet Address: The node address on the Control Net network (Octal).
Source Link ID: The source link ID of the module. This link ID has to match what has been defined in the ControlNet Routing table for the ControlNet network.
Reply Timeout: Enter the maximum amount of time (in seconds) that the DAServer will wait for a response from the controller.
Max CIP Connections: The maximum number of CIP connections which can be originated from the DAServer to this device.
SLC500_CN Object
The SLC500_CN object represents the physical Allen Bradley SLC500 processor coupled with the Allen-Bradley SLC500 ControlNet RS-232 Interface module (1747-KFC15).
64
Chapter 3 Configuration
Select and right-click on the New_PORT_CN_000 object. Select Add SLC500_CN Object from the shortcut menu. The New_SLC500_CN_000 object is created. Rename the newly created object as appropriate. The SLC500_CN Parameters view is displayed.
The configuration view contains four parameters, three of which are configurable: Processor Type: The information is automatically provided (SLC500). ControlNet Address: The node address on the ControlNet Network (Octal).
65
Reply Timeout: Enter the maximum amount of time (in seconds) that the DAServer will wait for a response from the controller.
Max CIP Connections: The maximum number of CIP connections which can be originated from the DAServer to this device.
CNB_PORT_CLX Object
The CNB_Port_CLX object is a logical representation of the ControlNet port for the Allen-Bradley ControlNet bridge module. This object is hosted by PORT_CN.
To add the CNB_PORT_CLX object to your ABCIP hierarchy 1 2
Select and right-click on the New_PORT_CN_000 object. Select Add CNB_PORT_CLX Object from the shortcut menu. The New_CNB_PORT_CLX_000 object is created.
66
Chapter 3 Configuration
Rename the newly created object as appropriate. The CNB_PORT_CLX Parameters view is displayed.
This configuration view has four parameters, three of which are configurable: Port Type: The information is provided automatically by the DAServer Manager (ControlNet). Slot Number: A sequential number beginning with 0 (zero) assigned to each slot in the ControlLogix ControlNet Bridge module.
The slot number indicates where the sub-module resides. The valid range is 0 - 16. The default value is 0 (zero).
Channel Number: The number of physical channels/ports used on the ControlLogix ControlNet interface module.
67
CNB_PORT_FLX Object
The CNB_Port_FLX object represents the physical ControlNet port for the Allen-Bradley FlexLogix ControlNet Communication Daughter Card. This object is hosted by PORT_CN.
To add the CNB_PORT_FLX object to your ABCIP hierarchy 1 2
Select and right-click on the New_PORT_CN_000 object. Select Add CNB_PORT_FLX Object from the shortcut menu. The New_CNB_PORT_FLX_000 object is created. Rename the newly created object as appropriate. The CNB_PORT_FLX Parameters view is displayed.
68
Chapter 3 Configuration
This configuration view has four parameters, three of which are configurable: Port Type: Information provided automatically by the DAServer Manager (ControlNet). Slot Number: A sequential number beginning with 0 (zero) assigned to each slot in the ControlLogix ControlNet Bridge module.
The slot number indicates where the sub-module resides. The valid range is 0 - 16. The default value is 0.
Channel Number: The number of physical channels/ports used on the ControlLogix ControlNet interface module.
CNB_PORT_CPLX Object
The CNB_Port_CPLX object represents the physical ControlNet port for the Allen-Bradley CompactLogix ControlNet processor module. This object is hosted by PORT_CN.
To add the CNB_PORT_CPLX object to your ABCIP hierarchy 1 2
Select and right-click on the New_PORT_CN_000 object. Select Add CNB_PORT_CPLX Object from the shortcut menu. The New_CNB_PORT_CPLX_000 object is created.
69
Rename the newly created object as appropriate. The CNB_PORT_CPLX Parameters view is displayed.
This configuration view has four parameters, three of which are configurable: Port Type: The information is provided automatically by the DAServer Manager (ControlNet Communication). Slot Number: A sequential number beginning with 0 (zero) assigned to each slot in the ControlLogix ControlNet Bridge module.
The slot number indicates where the sub-module resides. The valid range is 0 - 16. The default value is 0 (zero).
Channel Number: The number of physical channels/ports used on the ControlLogix ControlNet interface module.
70
Chapter 3 Configuration
ControlLogix controller by means of its DeviceNet Bridge module. FlexLogix controller by means of its DeviceNet daughter-card. CompactLogix controller by means of its DeviceNet scanner. PLC-5 controller by means of its DeviceNet scanner. SLC500 controller by means of its DeviceNet scanner. MicroLogix controller by means of its DeviceNet scanner.
Important The DeviceNet connectivity is achieved with the DeviceNet scanner attached to the corresponding controller. The ABCIP DAServer does not internally implement the DeviceNet protocol.
71
DHRIO_CLX Object
The DHRIO_CLX object represents the physical Allen-Bradley ControlLogix DH+/RIO Communication Interface module.
1756-DHRIO
Select and right-click on the New_BACKPLANE_CLX_000 object. Select Add DHRIO_CLX Object from the shortcut menu. The New_DHRIO_CLX_000 object is created. Rename the newly created object as appropriate. The DHRIO_CLX Parameters view is displayed.
72
Chapter 3 Configuration
This configuration view has three parameters, two of which are configurable: Module Type: Information provided automatically by the DAServer Manager (DH+/RIO Communication). Slot Number: A sequential number beginning with 0 (zero) assigned to each slot in a ControlLogix DH+/RIO Bridge module.
The slot number indicates where the sub-module resides. The valid range is 0 - 16. The default value is 0 (zero).
Max CIP Connections per Channel: The maximum number of CIP connections allowed per channel.
73
PORT_DHP Object
The PORT_DHP object represents the physical DH+ port for the Allen-Bradley DH+/RIO Communication Interface e module. This object is hosted by DHRIO_CLX.
To add the PORT_DHP object to your ABCIP hierarchy 1 2 3
Select and right-click on the New_DHRIO_CLX_000 object. Select Add PORT_DHP Object from the shortcut menu. The New_PORT_DHP_000 object is created. Rename the newly created object as appropriate. The PORT_DHP Parameters view is displayed.
74
Chapter 3 Configuration
This configuration view has four parameters, three of which are configurable: Port Type: Information provided automatically by the DAServer Manager (DH Plus). Channel Number: The number of physical channels/ports used on the ControlLogix DH+/RIO Bridge module.
DH Plus Node Address: The node address on the DH+ network (Octal).
The valid range is 0 - 77 octal. The default value is 1 (one) octal. The link ID is defined in the DHRIO routing table for the channel. The valid range is 1 - 199. The default value is 1 (one).
75
PLC5_DHP Object
The PLC5_DHP object is represents the physical Allen-Bradley PLC-5 processor on the Data Highway Plus network.
Select and right-click on the New_PORT_DHP_000 object. Select Add PLC5_DHP Object from the shortcut menu. The New_PLC5_DHP_000 object is created. Rename the newly created object as appropriate. The PLC5_DHP Parameters view is displayed.
76
Chapter 3 Configuration
The configuration view contains three parameters, two of which are configurable: Processor Type: The information is automatically provided (PLC-5). DH Plus Node Address: The node address on the DH+ network (Octal).
Select the DH+ node number from the drop-down box. The valid range is 0 - 77 octal. The default value is 0 (zero) octal.
Reply Timeout: Enter the maximum amount of time (in seconds) that the DAServer will wait for a response from the controller.
77
SLC500_DHP Object
The SLC500_DHP object represents the physical Allen-Bradley SLC500 processor on the Data Highway Plus network.
1747-L54x
Select and right-click on the New_PORT_DHP_000 object. Select Add SLC500_DHP Object from the shortcut menu. The New_SLC500_DHP_000 object is created. Rename the newly created object as appropriate. The SLC500_DHP Parameters view is displayed.
78
Chapter 3 Configuration
The configuration view contains three parameters, two of which are configurable: Processor Type: The information is automatically provided (SLC500). DH Plus Node Address: The node address on the DH+ network (Octal).
Select the DH+ node number from the drop-down box. The valid range is 0 - 77 octal. The default value is 0 (zero) octal.
Reply Timeout: Enter the maximum amount of time (in seconds) that the DAServer will wait for a response from the controller.
M1785KA5_GWY Object
The M1785KA5_GWY object represents the physical Allen-Bradley DH+/DH485 Gateway (1785-KA5) Communication module.
1785-KA5
Select and right-click on the New_PORT_DHP_000 object. Select Add M1785KA5_GWY Object from the shortcut menu. The New_M1785KA5_GWY_000 object is created. Rename the newly created object as appropriate. The M1785KA5_GWY Parameters view is displayed.
79
There are three parameters in this configuration view, two of which are configurable: Module Type: The information is automatically provided (1785-KA5). DH485 Node Address: The node address on the DH485 network.
Select the DH485 node number from the drop-down box. The valid range is 1 - 31. The default value is 1 (one). This link ID has to match what has been defined in the DHRIO Routing table for the DH+ Bridge. The valid range is 1 - 199. The default value is 1 (one).
80
Chapter 3 Configuration
ML_DH485 Object
The ML_DH485 object represents the physical Allen-Bradley MicroLogix processor coupled with the Allen-Bradley Advanced Interface Converter for DH485 (1761-NET-AIC).
Select and right-click on the New_M1785KA5_GWY_000 branch. Select Add ML_DH485 Object from the shortcut menu. The New_ML_DH485_000 object is created. Rename the newly created object as appropriate. The ML_DH485 Parameters view is displayed.
81
The configuration view contains three parameters, two of which are configurable: Processor Type: The information is automatically provided (MicroLogix). DH485 Node Address: The node address on the DH485 network.
Reply Timeout: The maximum amount of time (in seconds) that the DAServer will wait for a response from the controller.
82
Chapter 3 Configuration
SLC500_DH485
The SLC500_DH485 object represents the physical Allen-Bradley SLC500 processor coupled with the Allen-Bradley Advanced Interface Converter for DH485 (1761-NET-AIC).
1747-L5xx
Select and right-click on the New_M1785KA5_GWY_000 branch. Select Add SLC500_DH485 Object from the shortcut menu. The New_SLC500_DH485_000 object is created. Rename the newly created object as appropriate. The SLC500_DH485 Parameters view is displayed.
83
The configuration view contains three parameters, two of which are configurable: Processor Type: The information is automatically provided (SLC500). DH485 Node Address: The node address on the DH485 network.
Reply Timeout: The maximum amount of time (in seconds) that the DAServer will wait for a response from the controller.
84
Chapter 3 Configuration
Set-up a primary device and hierarchy in the DAServer Manager in the SMC. Create at least one device item that can be shared between the primary and secondary devices to determine device status.
85
Set up an secondary device on the same DAServer. Once again, create an identical device item within the secondary device so that device status can be determined.
4 5
Select and right-click on the configuration node under the CIP Network Device object. Select Add REDUNDANT_DEVICE Object. An object called New_REDUNDANT_DEVICE_000 is created.
Rename the newly created object as appropriate. The New_REDUNDANT_DEVICE_000 configuration view is displayed in the Configuration branch of the hierarchy.
86
Chapter 3 Configuration
Enter or use the device browser to select the primary and secondary devices. Save the hierarchy node configuration by clicking on the save icon.
Note Unsolicited message configuration is not supported from the device redundant hierarchy. Important A Ping item must be specified and be a valid tag in both the primary and secondary controllers to determine the connection status for $SYS$Status. The Ping item can be a static item in the device such as a firmware version or processor type. If the Ping item is invalid or does not exist in the controller, the failover operation may not work correctly as the value of $SYS$Status may continue to stay as FALSE in the standby device.
87
Chapter 4
Device Groups and Device Items
The Device Group and Device Item tabs in the DAServer Manager user interface are used to create new, modify, or delete device group and item definitions for an object. For DDE/SuiteLink communications, one or more device group definitions must exist for each controller that the DAServer will communicate with. Each device group (topic) definition should contain a unique name for the controller associated with it.
88
Right-click in the Device Groups box. Select the Add command from the shortcut menu. When adding a new device group, enter a unique name (up to 32 characters long). Click the Save icon (the floppy disk icon in the upper right corner).
89
In the Name column, double-click on the device groups name to be edited and make the change. In the Update Interval column, double-click on the device groups value to be edited and make the change. To enable unsolicited messages, right-click on the device group name and select "edit" to display Device Group Parameters. Select "Support Unsolicited Messages if desired and click OK. Click the Save icon (the floppy disk icon in the upper right corner).
Right-click on the device group to be deleted. Select the Delete command from the shortcut menu. The DAServer Manager confirmation box is displayed. Click Yes to proceed with the deletion. Click the Save icon (the floppy disk icon in the upper right corner).
3 4
Right-click in the Device Groups box. Select Config Default Update Interval from the shortcut menu. Click the Save icon (the floppy disk icon in the upper right corner).
Double-click its value in the Update Interval column and make the edit. Update Interval is the frequency (in milliseconds) that the DAServer acquires data from the topics associated with that device group.
Different topics can be polled at different rates in a controller by defining multiple device group names for the same controller and setting a different Update Interval for each device group.
90
91
Right-click in the Device Items box. Select the Add command from the shortcut menu. Type the item name (symbolic name) of your choice in the Name column. The device item name must be unique and is limited to 32 characters long. Double-click the line on the Item Reference column and enter the correlated item reference (the actual I/O item name in the device) for the device item name you have just selected. For example, "n7:0." Click the Save icon (the floppy disk icon in the upper right corner).
Note System items are not valid item references, but DAServer-specific system items are valid. To rename device items 1 2 3
Right-click on the device item to be renamed. Select Rename from the shortcut menu, then make the change. Click the Save icon (the floppy disk icon in the upper right corner).
Right-click on the device item to be deleted from the list. Select the Delete command from the shortcut menu. Click the Save icon (the floppy disk icon in the upper right corner).
Right-click in the Device Items box. Select the Clear All command from the shortcut menu. The DAServer Manager confirmation box appears. Click Yes to confirm the deletion. All the device items listed will be cleared.
92
Right-click in the Device Items box. Select the Export command from the shortcut menu. The Save As dialog box appears.
The file name has defaulted into "PLCHierarchyNodeName.csv," within the current-system-configured default directory.
Accept the defaults to save the file or rename the file if appropriate. The file is saved as New_PLC5_DHP_000.csv.
The file can now be edited off-line. It contains one row for each item configured with two columns, Name and Item Reference, respectively.
93
Right-click in the Device Items box. Clear all the item data you wish to replace with the edited.csv file by selecting the Clear All command. The DAServer confirmation box is displayed. Click Yes to confirm the deletion. The data will be cleared. Select the Import command from the shortcut menu. The Open dialog box appears.
3 4
It defaults to the .csv file extension within the current-system-configured default directory.
Browse and select the specific CSV file you want to import, select it, then click OK for confirmation. The DAServer Manager will import the file and deposit it in the Device Items box. During the imported file processing:
New item references will be added based on unique names. If there are duplicate names, you will be provided with the ability to replace the existing entry with the new entry, or ignore the new entry.
When the DAServer is running and an OPC client requests item information, the imported configured items will show up under the controller hierarchy node.
Note When you select another part of the DAServer tree hierarchy, you are prompted to save the modifications to the configuration set.
94
Each configuration view associated with nodes in the DAServer hierarchy tree has a common feature, the Save button located on the upper-right corner of the configuration view. When you modify any parameters in the Device Groups dialog box, click Save to implement the new modifications. If you do not click Save, you will be prompted to save the new data to the configuration set.
95
The ABCIP DAServer supports unsolicited messages from the following processors:
PLC-5 and SLC 5/04 processors on the Data Highway Plus network.
Note The following non-Logix processor configuration does not support unsolicited message handling: MicroLogix with 1785-KA5 via ControlLogix Gateway (1756-DHRIO and 1756-ENB).
Note The following Logix5000 processor configuration does not support unsolicited message handling: CompactLogix going through the EtherNet/IP interface module (1761-NET-ENI).
Note The following SLC500 processor configuration does not support unsolicited message handling: SLC500 using 1747-KFC15 interface on ControlNet via the ControlLogix Gateway (1756-CNB and 1756-ENB) to RSLinx on Ethernet.
96
Click on the target controller node under the controller branch of the DAServer hierarchy. Select the Device Group tab of the configuration view. Add a new device group or select an existing device group. Right-click on the device group name, then select Edit from the shortcut menu. The Device Group Parameters dialog box is displayed.
5 6
In the Device Group Parameters dialog box, select the Support Unsolicited Messages check box. Click OK.
Note Because the status of Support Unsolicited Messages check box cannot be readily viewed from the Device Groups tab, proper naming of device groups which support unsolicited messages is strongly recommended.
97
7 8
If appropriate, you can modify the Update Interval to "0". Save the configuration change by clicking the Save button.
Note To enhance performance in message handling, the default for the device group is to not provide unsolicited message data; therefore, the Support Unsolicited Messages check box is not checked. The setting of this check box is hot-configurable. Unsolicited message handling will take effect in the DAServer as soon as the change made in the configuration view is saved.
The DAServer supports target-specific unsolicited messages. Target-specific: This method involves sending messages to its target as specified by a given static IP address.
Configure the appropriate message instructions in the controller with the proper path (including the destination IP address) for sending the unsolicited messages. Configure the computer, in which the DAServer resides to receive unsolicited messages from the controller, with the corresponding IP address. Two instances of target-specific unsolicited messages are generated by the DAServer: If the value of "Update Interval" for a topic is 0 (zero), the server will poll this topic only one time at the start. After that, only an unsolicited message will update the data. If the value of "Update Interval" for a topic is >0 (greater than zero), the server will update the data for a particular item immediately upon receiving an unsolicited message for the item. The DAServer will also update the data at every Update Interval.
Note For details in setting the Allen-Bradley hardware for unsolicited messaging, please refer to the related Rockwell Automation documentation. Note The DAServer requires unsolicited messages to be configured as "Connected" in Logix5000 processors.
98
Activate the DAServer. Add the items, defined in the controller for unsolicited messages, for updates under the device group set up for receiving unsolicited messages.
Click on the target controller node under the Configuration hierarchy of your DAServer. Select the Device Groups tab of the configuration view pane at right. Right-click on the device group name, then select Edit from the shortcut menu.
Note Unsolicited PLC-5 Typed Write using CIP with Source ID method from the Logix5000 processor is not supported. Instead, configure the message instruction with CIP Data Table Write using CIP method from the Logix5000 processor.
99
Chapter 5
Managing Your DAServer
After you configure the DAServer, there are two steps to take before you can access data with your client application. The first step is to determine what kind of client applications are to be used with this DAServer. If any of your client applications use DDE/SuiteLink, you must configure the DAServer as a service. If only OPC client applications will be used, you can configure the DAServer as a service or as not a service. The last step is to activate the DAServer. Some client applications can programatically activate the DAServer. If you configure the DAServer as an automatic service, the DAServer is started and activated when the computer on which the DAServer is installed starts up. If you configure the DAServer as a manual service, the DAServer is not started when the computer starts up. Instead, it is started upon the first connection from an OPC client or when activated from the DAServer Manager. After a DAServer is running as an auto or manual service, it stays running until explicitly stopped in the DAServer Manager or the computer shuts down.
100
In the DAServer Manager, navigate to the DAServer. Expand DAServer Manager, expand the node group, and then expand Local or the remote computer name. Right-click ArchestrA.DASABCIP.4 and then click Configure As Service. Click either Auto Service or Manual Service. Read the warning message and click Yes.
2 3 4
In the DAServer Manager, navigate to the DAServer. Expand DAServer Manager, expand the node group, and then expand Local or the remote computer name. Right-click ArchestrA.DASABCIP.4 and then click Configure As Service. Click Not a Service. Read the warning message and click Yes.
2 3 4
You can create multiple configuration sets and switch between them. Archiving, clearing, and switching configuration sets can only be done when the DAServer is deactivated.
ABCIP DAServer Users Guide
101
Before you create a configuration set, verify that you have saved any changes you made to the global parameters. If you change a parameter and then immediately create a configuration set, the original parameter value is saved as part of the configuration set, not the changed value. To save a global parameter, click the Save icon.
To archive a configuration set 1
Expand DAServer Manager, expand the node group, and then expand Local or the remote computer name. Expand the DAServer.
2 3 4
In the dialog box, type the configuration set name, and click Archive. All the current configuration values are saved to the set. After you archive at least one configuration set, you can select it for use.
To select a configuration set 1
Expand DAServer Manager, expand the node group, and then expand Local or the remote computer name. Expand the DAServer.
2 3
Click Configuration.
Right-click, point to Use Another Configuration Set, then click the desired name. To change the parameter values saved in a configuration set, make sure the desired configuration set is shown, then follow this procedure.
102
Expand DAServer Manager, expand the node group, and then expand Local or the remote computer name. Expand the DAServer.
2 3 4
Click the Save icon. Clearing a configuration set returns the parameters to their default values.
To clear a configuration set 1
Expand DAServer Manager, expand the node group, and then expand Local or the remote computer name. Expand the DAServer.
2 3 4
Click Configuration. Right-click, move the mouse over Clear Configuration Set, then left click. Read the warning message, then click Yes. The parameters are set to the default values.
Expand DAServer Manager, expand the node group, and then expand Local or the remote computer name. Expand the DAServer.
2 3 4
Click Configuration. Right-click Configuration, point to Delete Configuration Set and select the configuration set to delete. Read the warning message, then click Yes.
103
In the DAServer Manager, navigate to the DAServer. Expand DAServer Manager, expand the node group, and then expand Local or the remote computer name.
Right-click ArchestrA.DASABCIP.4 and then click Activate Server. Deactivating your DAServer stops it from communicating with client applications.
2
A DAServer with active OPC clients does not stop until the last OPC client shuts down.
To deactivate the DAServer 1
In the DAServer Manager, navigate to the DAServer. Expand DAServer Manager, expand the node group, and then expand Local or the remote computer name. Right-click ArchestrA.DASABCIP.4 and then click Deactivate Server. Read the warning message and click Yes.
2 3
In-Proc/Out-of-Proc
The DAServer can run only as a stand-alone process (out-of-proc). If the CLXCTX_ALL option is the chosen, out-of-proc activation for the DAServer is triggered. Explicitly starting as part of the client process (in-proc) is not currently supported. Activation using the CLSCTX_ACTIVATE _64_BIT_SERVER flag is also not supported. When the DAServer is running out-of-proc, it supports requests from both DDE/SuiteLink and OPC client applications. If the DAServer is running as a service, the icon on the DAServer node in the SMC is yellow. If the DAServer is not running as a service, the icon is white. For more information, see the DAServer Manager Users Guide.
104
Hot Configuration
If a parameter value change takes effect right away while the DAServer is running, the parameter is a hot-configurable parameter. Certain parameters in the ABCIP DAServer are hot-configurable. Incorporated in the DAServer are the following hot-configuration functionality:
Modifying Global Configuration parameters. Adding, deleting, or modifying device nodes (NOT allowed on nodes having item subscription). Adding, deleting, or modifying device groups (including their parameters, such as Update Interval and Support Unsolicited Messages) and device items.
In the DAServer Manager, right-click on the Configuration node in the hierarchy below your DAServer. Select Archive Configuration Set from the shortcut menu. In the Archive Configuration Set configuration view, provide a Configuration Set Name. Click Archive. All current configuration values are saved to the archived set.
2 3 4
After you have archived at least one configuration set, you can select it for use.
Demo Mode
105
In the DAServer Manager, right-click the Configuration node in the hierarchy below your DAServer. Select Use Another Configuration Set from the shortcut menu and click on a configuration set in the sub-menu. All parameters in the DAServer configuration hierarchy change to the chosen configuration set.
Demo Mode
You can install the DAServer without a license. The DAServer runs without a license in Demo mode for 120 minutes. While in demo mode the DAServer checks for a license every 30 seconds. When the 120 minutes expires:
The DAServer stops updating items. All non-system items have a Bad quality status. New items are rejected.
After the 120 minutes the DAServer checks for a license every thirty seconds. If a license is not found, the DAServer logs a warning. You can use the $SYS$Licensed system item to check the status of your license. This item returns true if the proper license is found or the DAServer is in demo mode (the 120 minutes), otherwise, it returns false. After the DAServer finds a valid license, it logs a message, stops looking for a license, and begins running normally. For more information, see the License Utility User Guide.
106
107
Chapter 6
Accessing the Data in Your DAServer
Client applications read and write to data items that are internal to the DAServer, as well as to the items located in the devices. Client application communication with the DAServer is done using either the OPC or DDE/SuiteLink protocols. The client application may or may not be on the same computer as the DAServer. You do not need to create device items in the DAServer for your OPC client application.
node name: The computer name identifying the node where the DAServer is located. Only required for remote access. program name: ArchestrA.ABCIP.4 group name: An OPC group defined and created by the client. The DAServer device group is used as the OPC access path. device group: A device group as defined on the DAServer. If omitted, the default device group is assumed.
108
link name: The hierarchy of nodes names, from the channel node to the device node, separated by delimiters. item name: The specific data element. This can be the device item name or the item reference.
The combination of the link name and item name form the OPC data path for any OPC client to access DAServer data. If the item specified is not valid for the device location, the DAServer does not accept the item. The DAServer returns bad quality and generates an error message in the logger.
node name: The computer name identifying the node where the DAServer is located. Only required for remote access. application name: ABCIP topic name: A device group defined for the device. item name: The specific data element. This can be the device item name or the item reference.
109
Chapter 7
ABCIP DAServer Features
ABCIP 4.1 supports ControlLogix firmware version 13.x through 17.x. Besides supporting item names for all the controllers, the ABCIP DAServer also provides the following features:
OPC Browsing Logix5000 Optimization Mode Logix5000 Write Optimization Data Type Determination Invalid Items Handling Logix5000 Online Tag Management Loading Tag Database from File Accessing Secured Logix5000-series Controllers Controller Time Stamping Device Redundancy
110
OPC Browsing
Two types of OPC browsing, namely off-line OPC browsing and on-line OPC browsing, are supported by the ABCIP DAServer.
Note For tag items defined as array data types in an item addition request, the OPC_E_BADTYPE error is returned when an OPC client does not specify the array data type documented in the ABCIP User's Guide or the VT_EMPTY data type. The only exception is when an OPC client specifies VT_BSTR as the requested data type for an item that is defined as VT_ARRAY|VT_UI1. In this case, the DAServer accepts the item addition and returns the data as VT_BSTR.
111
112
No optimization All tags that communicate with the Logix processor will use the tag name. The tag database will be uploaded from the controller to validate the tag names. No optimization will have the fastest startup time, but will have the slowest read performance. It will create more messages for controller communication than the other two options. The length of the tag name will affect the number of messages created.
Optimize for read All tags that communicate with the Logix processor will require a tag database to be available as a prerequisite. This operation also generates a memory buffer inside the controller and thus requires the longest startup time among the three options. Despite the longer startup time, Optimize for Read provides the fastest read performance after the tag database upload operation has been completed. It will create fewer messages for controller communication.
Optimize for startup time (Default) This option provides the best overall performance among all three optimization options. All tags that communicate with the Logix processor will require a tag database to be available as a prerequisite. This option does not generate a memory buffer inside the controller and thus provides a faster startup time than the Optimize for read option. All tags communicating with the Logix processor will be using the physical tag address. It provides a faster read performance than the No Optimization option as multiple tags can be referenced in one request packet to the Logix processor. It will create a higher number of messages for controller communication than the Optimize for read option.
Note If this option is checked, the Auto Synchronize Tag option is checked automatically and cannot be unchecked.
113
UDT Optimization
A UDT (User-Defined Type) is a data type defined by the user in the Logix5000 processor. A UDT can group various data types, such as integers, floats, and so on, into a single structure. When this feature is enabled, the DAServer will attempt to group requests for a UDTs elements into a request for the whole structure. In fact, this feature also works for system predefined structure. If the size of the structure exceeds 488 bytes, the DAServer will send separate requests for each structures element. If the UDT involved is a nested structure (a UDT containing other UDTs), the DAServer will determine the optimal UDT to retrieve.
Note Optimization and UDT Optimization features are selectable from all Logix5000-series controllers.
Control Mode - preserves the poke order without folding. Typically used by batch and control applications that depend on the order of the pokes and processing every item poked. Transition Mode - preserves the poke order with minimum folding by keeping the first, second and last poke values of an item. Typically used by batch and control applications that depend on the order of pokes but not processing every item poked.
114
Optimization Mode (ABCIP Default) - does not preserve the poke order and has maximum folding by only poking the last value of an item. When Poke Mode is set to Optimized, the DAServer will attempt to group consecutive tag writes (array elements) into a single request. Depending on the timing situation, there is no guarantee that consecutive tag writes will be grouped into a single request.
Note For more information on all DAServer Global Parameters, see the DAServer Manager Users Guide.
This table includes information on the item's name, data type, and size. If an item is a structure, it also includes its members and their data types.
To build the table, the ABCIP DAServer sends a request to the controller for all the tag information defined in the controller. The controller then returns all the information needed. The table is built one time for each controller, unless a "refresh" request is received from the client. The ABCIP DAServer does not rely on the Allen-Bradley .csv files.
Important The manual "refresh" tag database request for the Logix processor needs to be activated by your writing "true" (of type VT_BOOL) to the $Sys$UpdateTagInfo; it is not activated by selecting the option (check box) as was implemented in the ABCIP DAServer 1.1.
To provide the status of the tag database for the Logix processor cached in the ABCIP DAServer, this version of the DAServer will implement a predefined, read-only system variable, $Sys$TagDBStatus, of type VT_I2.
115
0 No tag database 1 Uploading tag database 2 tag database uploaded 3 tag database upload failed
The value of $Sys$TagDBStatus can only be changed by poking to the system variable $Sys$UpdateTagInfo. Poking a TRUE to $Sys$UpdateTagInfo while $Sys$TagDBStatus is 1 will not cause consecutive tag database uploads to the ABCIP DAServer.
Note $Sys$UpdateTagInfo and $Sys$TagDBStatus are only available as item names associated with the Logix processor.
Regardless of the status of the tag database upload, the ABCIP DAServer periodically syncs the tag database from the controller. The Logix5000 controller has a journaling capability that keeps track of the changes in its tag database. Whenever the tag database in the Logix5000 controller is changed, a new journal and version are generated within the controller. The ABCIP DAServer periodically checks for version changes and uploads the journal information from the controller, so that the tag database it maintains matches the corresponding database in the controller.
Note For tag items defined as array data types in an item addition request, the OPC_E_BADTYPE error is returned when an OPC client does not specify the array data type documented in the ABCIP User's Guide or the VT_EMPTY data type. The only exception is when an OPC client specifies VT_BSTR as the requested data type for an item that is defined as VT_ARRAY|VT_UI1. In this case, the DAServer accepts the item addition and returns the data as VT_BSTR.
116
For the Logix5000 family of controllers, the ABCIP DAServer uses a different approach on item validation. When a Logix5000 controller item is requested to be subscribed or poked, the item is always added to the address space of the DAServer. If the item syntax does not match any of the items defined the Logix5000 controller, the item will maintain a BAD quality and is removed from any periodic scanning. The ABCIP DAServer does periodically send messages to the Logix5000 controller for tag database update. The item that has a BAD syntax will be re-evaluated again when a new tag database has been downloaded to the Logix5000 controller. If the item is subsequently matched to an item in the new tag database, the item will automatically switch to a GOOD quality with the proper data value.
117
118
Persisted Tags
The ControlLogix, GuardLogix, SoftLogix, CompactLogix and FlexLogix controllers have an option to use Persisted Tags for uploading the tag database from the file. This feature will improve the tag database upload time. When the DAServer is activated with the Persisted Tags option selected, it reads the tags from the controller and stores them into a file under the bin\CIPTagDB directory. If the version of the tag database matches the tag database file persisted from the last run, the ABCIP DAServer will skip the tag database upload option and use the persisted file as the basis of the tag database. If the DAServer detects the controller database version is different from the version stored in the file, it will read the tags from the controller and synchronize the file.
119
The subsequent restart of the DAServer will read the tag database from this file. This file will store the database major and minor version information.
Important If secured controllers (password protected), are a part of your hierarchy, changes in the Persisted Tags functionality will occur. See the following Persisted Tag Functionality Matrix for a detailed description of each option.
The tag database will be uploaded as soon as the DAServer is activated. The DAServer will attempt to connect to the device only one time. If the device is not connected, it will retry when the first item is subscribed. The tag database in the DAServer will be synchronized periodically with the device. If the device is secured, the DAServer will not be able to automatically synchronize the tag database. Note: If the optimization option is set for Optimize for startup time, the value is always True. In this case the DAServer needs to synchronize the physical addresses of tags from the device.
The tag database will be uploaded as soon as the first device item is subscribed. The system item $SYS$UpdateTagInfo can not be used to trigger a tag database upload until the first device item is subscribed. The tag database in the DAServer will not be synchronized with the device. The system item $SYS$UpdateTagInfo can be used to synchronize the tag database manually.
120
Selected (checked)
The DAServer will read the tags from the tag database file. If the file does not exist, it will then read the tags from the controller and store them into a file under bin\CIPTagDB directory. If the controller is unsecured and the database version is different from the controller version, then the DAServer will read the tags from the controller and store them into a file. The system item $SYS$UpdateTagInfo can be used to force the tag database upload from the device. Note: If the optimization option is Optimize for startup time, the physical address of the tags will also be stored in the file.
The DAServer will always upload the tag database from the device and store them in to a file.
121
Selected (checked)
The tag database will be uploaded from the device if value True is poked to this item. This system item is provided for manual synchronization of the tag database. If the device is secured, use this item to synchronize tag database. Note: If Use Persisted Tags is enabled, the original file will be renamed to <####>_temp.aaTDB (where ### represent the serial number of the device). If the DAServer fails to upload tags from the device, it will use the renamed file to recover the database. The temporary file (<####>_temp.aaTDB) will be deleted, after the tag database is uploaded successfully.
Poking the value False will not affect the tag database.
122
The tag database will be uploaded from the device if value True is poked to this item.
Note If Use Persisted Tags is enabled, the original file will be renamed to <####>_temp.aaTDB (where ### represent the serial number of the device). If the DAServer fails to upload tags from device, it will use the renamed file to recover the database. The temporary file (<####>_temp.aaTDB) will be deleted after the tag database is uploaded successfully.
Poking the value False will not affect the tag database.
123
The following Auto-synchronized and Persisted Tag Upload Functionality matrix shows when a tag database upload will occur or not occur based upon security.
Selected (Checked)
Tag database version in the controller will be checked periodically and the version changes will be uploaded to DASABCIP automatically.
Tag database version in the controller will be queried but no upload will be made automatically. Changes in the tag database in the controller will only be uploaded when the $SYS$UpdateTagInfo system tag in DASABCIP is written into. Same behavior as if the controller is unsecured.
Unselected (Unchecked)
Tag database version will not be checked. Changes in the tag database in the controller will only be uploaded if the $SYS$UpdateTagInfo system tag in DASABCIP is written into.
124
Selected (Checked)
1. The DAServer will read the tags from the file. If the file does not exist then it will read the tags from controller and store them into a file under bin\CIPTagDB directory. 2. If the file database version is different from the controller version, then the DAServer will read the tags from the controller and store them into a file.
The DAServer will read the tags from the file. If the file does not exist, then it will read the tags from controller and store them into a file under the bin\CIPTagDB directory.
Unselected (Unchecked)
The DAServer will always upload the tags from the controller and store them into a file.
Specifying controller time stamping in native InTouch requires one addition to the Tagname Dictionary plus two tags: One tag points to the Tagname Dictionary. The other tag is the value display string.
125
The following sequence shows the Tagname Dictionary and the sample items.
Value: Can be almost any type including boolean, integer, string, and array. In the example, the Value tag is an integer for illustration purposes only. Time Stamp: Must be a string animation link.
126
When you enter an item name on the client side, you must enter an item name that is a Data tag and Time tag pair. You will use the &T& delimiter, to identify the time tag. For example if you enter an item name such as DataTag&T&TimeTag, the DAServer will treat the item as two separate tags, DataTag and TimeTag, and will validate each tag separately. DataTag example "TimeStamp1":
Integer_Recipe(0)&T&TimeStamp(0)
The DAServer will read the data for the two tags from the controller.
Device Redundancy
127
When the pair of values is read by the server, the TimeTag value will be used to time stamp the DataTag value before sending the updates to the client. If you enter an item name such as DataTag only, the value read from the controller is time stamped with the PCs date and time before sending the updates to the client.
Note When advising an item using timestamping with &T&, and communication is lost with the controller, the DAServer will timestamp the item and update its quality.
Device Redundancy
The DAServer Manager provides the ability to assign redundant devices for fail-over protection in the event of device failure. Two identical devices are expected to be configured in the DAServer Manager having identical item syntax, connected to the same DAServer.
Note Items can not be added for updates through the Redundant Device Object if the items do not exist in both controllers.
If the Primary device fails, the DAServer will automatically switch over to the Secondary device. The Secondary device then becomes the active device with the failed Primary device reverting to the backup role. If the failed device recovers to good status, it will remain in the standby mode.
Runtime Behavior
The DAServer will start with the active device. The DAS Engine will switch to the standby device when the active device fails to communicate. The value of the $SYS$Status will determine the communication failure.
Note The value of the $SYS$Status of the standby device must be TRUE in order to switch over to the standby device. Otherwise, there will not be any failover.
When $SYS$Status shows a FALSE value at both active and standby devices, the DAS Engine will consider a complete communication failure and mark all the items subscribed to the redundancy device hierarchy with the current time and the appropriate OPC quality. The DAS Engine will activate the slow-poll mechanism to retry the communication to both devices until either one of the Ping Items returns to a good quality and update its $SYS$Status item to TRUE.
128
When the DAS Engine switches to the standby device, the standby device becomes active and the originally active device becomes the standby. When the active device becomes the standby device the Ping Item will not be deleted from that the standby device. This will ensure the standby will be able to recover the communication again. Refer to DAServer Redundant Device Specific System Items on page 185 for system items specifically associated with a Redundant Device.
Note The Ping Item must be a valid item from the controller that has not been rejected by the server for the failover to function properly.
The DAServer will log any failover activities. All other functionality such as diagnostics, enable/disable, and reset will be performed exactly same as it is performed for any other hierarchy node.
Note Unsolicited message configuration is not supported in the Redundant Device Object itself. You can still receive unsolicited messages directly from device groups defined in the regular server hierarchy.
129
Chapter 8
Item Names/Reference Descriptions
The Wonderware ABCIP DAServer currently supports item names that follow the conventions described for the various Allen-Bradley ControlLogix, CompactLogix, FlexLogix, PLC-5, SLC500, and MicroLogix families of controllers.
Logix5000 Item Naming PLC-5 Item Naming SLC500 Item Naming MicroLogix Item Naming DAServer Standard System Items DAServer Redundant Device Specific System Items Generic OPC Syntax
130
Program tag IO tag Entire tag Member of structure tag Array element Two-dimensional array element Three-dimensional array element Block reads/writes of one-dimensional arrays (supported types: BOOLS, SINTS, INTS, DINTS, REALS, LONG)
131
Reference
Syntax
String tag
Bit within integer Read-only item syntax to read controller time-stamped data Note: When the data and timestamp are located in the same structure (e.g. UDT), the optional period following the &T& delimiter when entering the item name for structures reduces the need to retype the same structure name for the time tag. Note: [DT] qualifier is an option to subscribe the value (LINT) in date and time format.
Example: A.B.C.D.TimeTag DT Note: A space must be inserted between the <TimeTag> and DT qualifier In the preceding table:
132
[] italicized brackets designate element as optional. [] not italicized brackets denote array index. <> means user input (as defined in the controller program).
String placeholder (start with uppercase): Location, Program_Name, Tag_Name, Data_Type, Member_Name, SubMember_Name, and String_Tag_Name. Numeric placeholder (all in lowercase): elemeny_#, element_X, element_Y, element_Z, string_length_#, slot_#, bit_#, and number_of_items_#. <Location>identifies network location as: LOCAL = Local rail or chassis <Adapter_Name> = Name of the remote module <Data_Type> is represented by a single letter as follows: I=input, O=output, C=configuration, and S=status. All others are predefined keywords or symbols.
133
Examples: String tag array BatchRecipe[4], BatchRecipe[4].DATA BatchRecipe[4].DATA[0],sc82 (all of them return the same data) Two-dimensional array tag User-defined structure tag Program tag Module tag Mixer_StepTimer_Preset[3,5] ProductionUnit.AssemblyLine[2].Counter[4] Program:MainProgram.Tank[1,2,4].Level Program:UserProgram.OperationMode Local:6:O.Data.31 Remote_IO:2:C.ProgValue
Note A STRING type member is implicitly a structure in the form of StringTag.DATA and StringTag.LEN (where the DATA member is an array of 82 elements and the LEN member defines the actual length of the string). Therefore, a string member consumes two nesting levels by default. As of ABCIP DAServer 3.0, the length field of a string will be used to determine the length of the string to be returned if the DATA member is not explicitly included in the string specification when the string is put into subscription. Note The DT qualifier returns a UTC date/time for OPC Clients requesting a VT_DATE binary value. For DDE and SuiteLink clients, requesting a VT_BSTR, the date is converted to a UTC Date/Time string. The dates supported by the Date/Time string include values from 1/1/1970 12:00:00AM (GMT) to 8/30/2920 5:19:59AM (GMT).
Module-defined tags do not allow user modification. Formats are fixed by the Logix5000 controller.
134
There are five different data types that are supported, each of which requires a different allowance on the qualifier due to the block size limitation.
135
There are three optimization modes supported, each with a different maximum qualifier allowance as shown in the following table: Optimize for Reads, Optimize for Startup, and No Optimization.
Note The number in the "Ln" qualifier should not need an offset, because it is the total number counting from 1 (one). Qualifier Allowance (n) Optimize for Startup No Optimization
Data Type
Boolean (VT_BOOL) SINT (VT_I1) INT (VT_I2) DINT (VT_I4) Real (VT_R4) LINT (VT_I8)
Note Boolean array tags may allow up to 3872 items in a block if the specified range of array elements fits exactly into a contiguous block of DINT-based (4-byte) memory units. That is, Boolean array item block starting from array index zero or at every quadruple of byte (32-bits) margin. For example, index 0, 32, 64, 96, can exploit this feature to the maximum.
The Block Reads and Writes of Arrays feature works differently for a DDE/SuiteLink client and OPC client.
In an OPC client, the array of data is displayed as an array of values (a series of data) separated by ";" according to their data types. In a DDESuiteLink client, the array of data is expressed as a string of Hex data block, of which each unit occupies the same byte size as defined by the data types.
The Hex value contained in each unit of the data block is equivalent to the decimal quantity stored in each individual item in the controller. The data in the array block can be parsed according to the byte size of the data type.
136
The Hex value can be converted to its equivalent decimal quantity for use in the application.
For example: A DINT (double integer data type) item occupies 4 (four) bytes of data, which amounts to 8 (eight) Hex digits. An array block of DINT items from the InTouch HMI using DDESuiteLink should be parsed into individual units of 8 (eight) Hex characters. Then each unit of parsed data needs to be converted from Hex to its equivalent decimal value for usage.
Item Name
Description
$ X
Purely optional. Identifies the file type. The following table summarizes the valid file types, the default file number for each type, and the fields allowed (if any).
file
For Input and Output files it is also called rack-and-group number and must be 0 - 777 octal.
For all other file types, it must be 0 - 999 decimal. .field Valid only for Counter, Timer, ASCII String, PID, SFC Status, Block Transfer, and Control files. Refer to the following table.
137
Item Name
Description
/bit
Valid for all file types except ASCII String and Floating Point.
For Input and Output files it must be 0 - 17 octal. For all other file types it must be 0 - 15 decimal.
Identifier
File Type
Default File #
.fields
O I S B T C R N F A D ST PD
Output Input Status Binary Timer Counter Control Integer Floating Point ASCII BCD ASCII String* PID*
N/A N/A N/A N/A .PRE .ACC .EN .TT .DN .PRE .ACC .CU .CD .DN .OV .UN .LEN .POS .EN .EU .DN .EM .ER .UL .IN .FD N/A N/A N/A N/A .LEN .ADRF .ADRE .BIAS .CA .CL .CT .DB .DO .DVDB .DVN .DVNA .DVP .DVPA .EN .ERR .EWD .INI .KD .KI .KP .MAXI .MAXO .MAXS .MINI .MINO .MINS .MO .OLH .OLL .OUT .PE .PV .PVDB .PVH .PVHA .PVL .PVLA .PVT .SO .SP .SPOR .SWM .TIE .UPD .DN .ER .FS .LS .OV .PRE .SA .TIM .EN .ST .DN .ER .CO .EW .NR .RW .TO .RLEN .DLEN .FILE .ELEM .NR .TO .EN .ST .DN .ER .CO .EW .ERR .RLEN .DLEN .DATA[0] through .DATA[51] .TO .EW .CO .ER .DN .ST .EN .ERR .RLEN .DLEN .FILE .ELEM
SC BT MG
CT
CNet Message
None
138
Note * Available only on certain PLC-5 models. Check the Processor Manual for the model being used.
139
Examples: $S:18 $S2:18 S2:19 S2:10/0 (year) (year) (month) (battery low status bit)
140
141
142
143
144
145
146
147
148
Item Name
Description
$ X
Purely optional. Identifies the file type. The following table summarizes the valid file types, the default file number for each type, and the fields allowed (if any).
file
File numbers must be 0 - 255 decimal. File 0 must be Output. File 1 must be Input. File 2 must be Status. All other file numbers, 9 - 255 decimal, are open to all file types. For Input and Output files it must be between 0 and 30 decimal. For all other file types, the element number must be 0 - 255 decimal.
element
.field /bit
Valid only for Counter, Timer, and Control files. See the following table. Valid for all file types except ASCII String and Floating Point.
For Input and Output files it must be 0 - 17 octal For all other file types it must be 0 - 15 decimal.
149
Identifier
File Type
Default File #
.fields
O I S B T C R N F A ST
Output* Input* Status Binary Timer Counter Control Integer Floating Point* ASCII* ASCII String*
0 1 2 3 4 5 6 7 8 None None
N/A N/A N/A N/A .PRE .ACC .EN .TT .DN .PRE .ACC. CU .CD .DN .OV .UN .UA .LEN .POS .EN .DN .ER .UL .IN .FD N/A N/A N/A .LEN
Note *Available only on certain SLC500 models. Check the Processor Manual for the model being used.
150
151
Diagram System
Addressing of the I/O points begins by drawing a schematic of the system. The following figure is a diagram of the SLC-5/02 system.
The far left unit is the power supply. From left to right, the modules are: 1747-L524 1746-IA8 1746-OA16 1746-IA16 1746-NI4 1746-NO4I 1746-0A8 1746-IB32 SLC-5/02 Module Processor 8-point 120VAC input module 16-point 120VAC output module 16-point 120VAC input module 4-point 20mA analog input module 4-point 20mA analog output module 8-point 120VAC input module 32-point DC input module
152
Number of Words
Module
0 1 1 1 4 4 1 2
SLC-5/02 Module Processor 8-point 120VAC input module 16-point 120VAC output module 16-point 120VAC input module 4-point 20mA analog input module 4-point 20mA analog output module 8-point 120VAC input module 32-point DC input module
Note In the preceding table, the minimum number of words which can be consumed by a module is 1 (16-bits). This is due to the memory scheme of all Allen-Bradley processors.
153
I/O Diagram
Examples: S2:6 S2:13 S:1/5 (major error fault) (math register) (forces enabled)
154
155
156
157
158
Item Name
Description
$ X
Purely optional. Identifies the file type. The following table summarizes the valid file types, the default file number for each type, and the fields allowed (if any).
file
File numbers must be 0 - 999 decimal. File 0 (zero) must be Output. File 1 (one) must be Input. File 2 (two) must be Status. All other file numbers, 9 - 255 decimal, are open to all file types. For Input and Output files it must be between 0 and 777 octal. For all other file types it must be 0 - 999 decimal.
element
.field
Valid only for Counter, Timer, ASCII String, PID, SFC Status, Block Transfer, and Control files. Refer to the following table. Valid for all file types except ASCII String and Floating Point.
/bit
For Input and Output files it must be 0 - 17 octal. For all other file types it must be 0 - 15 decimal.
159
Identifier
File Type
Default File #
.fields
O I S B T C R N F A L ST PD
Output Input Status Binary Timer Counter Control Integer Floating Point ASCII Long ASCII String* PID*
N/A N/A N/A N/A .PRE .ACC .EN .TT .DN .PRE .ACC .CU .CD .DN .OV .UN .LEN .POS .EN .EU .DN .EM .ER .UL .IN .FD N/A N/A N/A N/A .LEN .TM .AM .CM .OL .RG .SC .TF .DA .DB .UL .LL .SP .PV .DN .EN .SPS .KC .TI .TD .MAXS .MINS .ZCD .CVH .CVL .LUT .SPV .CVP .IA .RBL .LBN .RBN .CHN .NOD .MTO .NB .TFT .TFN .ELE .SEL .TO .CO .EN .RN .EW .DN .ER .ST
MG
Message
None
Note * Available only on certain MicroLogix models. Check the Processor Manual for the model being used.
160
161
Examples: S2:6 S2:13 S:1/5 (major error fault) (math register) (forces enabled)
162
163
164
165
166
167
Group (client group/OPC group): The arbitrary collection of items, not correlated. Hierarchical location (link name/OPC path. The hierarchical node section of the fully qualified OPC Item ID.): The device the item is attached to. Device group (OPC access path/topic, or a Scan Group on a hierarchical branch.): A collection of items on the same physical location with the same protocol update rate.
Example: To check the status of an external device, the reference might be:
AREA10.VESSEL1.TIC1.$SYS$Status Note This syntax does not refer to the access path/device group. As long as the data requested is from the same external device, the value will always be the same. Note For DDE/SuiteLink clients, $SYS$Status always comes from the leaf level of a DAServer hierarchy branch, which is the destination controller node. For OPC clients, $SYS$Status can be accessed at all hierarchy levels. $SYS$Status at the root level of the whole hierarchy tree is always GOOD, as it represents the quality status of the local computer itself. Hence, for practical application, OPC clients should reference $SYS$Status at any hierarchy levels other than the root.
All system items start with $SYS$. System item name is not case-insensitive.
All system items can be accessed through subscriptions to a device group. However, while some system items return data for that device group, others are server-wide.
168
Description
Values
$SYS$Licensed
Boolean/Read
Binary status indication of the existence of a valid license for the DAServer. If FALSE, this item causes the DAServer to stop updating existing tags, to refuse activation of new tags, and to reject write requests in addition to setting quality for all items to BAD. If TRUE, the DAServer functions as configured. All instances have the same value.
RANGE: TRUE, FALSE TRUE: Valid license exists. FALSE: No valid license exists.
169
Description
Values
$SYS$Status
Boolean/Read
Binary status indication of the connection state to the device (hierarchy level) the item is attached to. The device group (OPC access path/topic) does not affect the value. The status can be GOOD even if individual items have errors. For DDE/SuiteLink clients, $SYS$Status always comes from the leaf level of a DAServer hierarchy branch, which is the destination controller node. For OPC clients, $SYS$Status can be accessed at all hierarchy levels. $SYS$Status at the root level of the whole hierarchy tree is always GOOD, as it represents the quality status of the local computer itself. Hence, for practical application, OPC clients should reference $SYS$Status at any hierarchy levels other than the root.
RANGE: 0, 1 1: DAServer connection to the device is intact. 0: Error communicating with the device.
170
Description
Values
$SYS$ErrorC ode
Longint/Read
Detailed error code of the communications state to the device. The device group (OPC access path/topic) does not affect the value.
>= 0: GOOD status (0 is the default state connected. >0: is some device state like: connecting, initializing, etc. <0: Error status (value indicates the error).
$SYS$ErrorT ext
String/Read
Detailed error string of the communications state of the device. The device group (OPC access path/topic) does not affect the value.
Descriptive text for the communications state corresponding to the error code.
171
Description
Values
$SYS$StoreS ettings
Integer/ReadW rite
Used to make the temporary update interval changes via the $SYS$UpdateInterval item permanent. If the client pokes a value of 1 into this system item, the currently set update interval is written to the servers configuration file. The value of this system item clears to 0 after being set, if the configuration file write is successful. If the write fails, then the value is set to -1. If the update interval has been changed via the $SYS$UpdateInterval item and this item is not poked to 1, the DAServer uses the original update interval for that topic the next time it is started. Reading the item always provides 0. Read/Write values are persisted only if the user sets this system item. The values other than this persist only for the life of the DAServer.
RANGE: -1, 0, 1 -1: Error occurred during saving the configuration file. 0: Read value always if status is OK. 1: Persist settings (cleared immediately).
172
Description
Values
$SYS$Enable State
Integer/Read-o nly
Description
Values
$SYS$UpdateInterval
DWord/Rea dWrite
Used to access the currently set update interval. It is the current update interval of the device group in milliseconds. A client can poke new values into this item. The value of zero indicates that no non-system items on that topic are updated (data for these items are not acquired from the device).
RANGE: 12147483647 0: Topic inactive, no items are updated. Data acquisition is stopped. >0: Expected updated interval for the set of all items in the device group.
173
Description
Values
$SYS$MaxInterval
DWord/Rea d
Used to access the currently measured maximum update interval in milliseconds of all items of the corresponding device group. This item is read-only. The value of the slowest item is displayed.
RANGE: 02147483647 0: If update interval is 0 or if the status is false. >0: Measured update interval
174
Description
Values
$SYS$WriteComplete
Integer/Rea dWrite
Used to access the state of pending write activities on the corresponding device group. On device group creation (adding items to an OPC group), the value of this system item is initially 1, indicating all write activities are complete no pokes are pending. If values are poked into any items of the device group, the value of this item changes to 0, indicating write activity is currently in progress. If the server has completed all write activities, the value of this item changes to 1 if all pokes were successful or to -1 if at least one poke has failed. If the value of this item is not zero, the client can poke 1 or -1 to it (poke a 1 to clear errors, or a -1 to test a client reaction on write errors). If the value of this item is zero, it cannot be poked.
RANGE: -1, 0, 1 1: Write complete (no writes are pending initial state). 0: Writes are pending. -1: Writes completed with errors.
175
Description
Values
$SYS$ReadComplete
Integer/Rea dWrite
Used to access the state of initial reads on all items in the corresponding device group. The value is 1 if all active items in a device group have been read at least once. If at least one item in the device group is activated, this item changes to 0. It changes to 1 if all items have been read successfully, or to -1 if at least one item has a non-GOOD quality. Poking a 0 to this item resets the internal read states of all items in this device group. This resets this item to 0. If all items are read again after this poke, this item changes back to 1 or -1.
RANGE: -1, 0, 1 1: Read complete (all values have been read). 0: Not all values have been read. -1: All values have been read but some have a non-GOOD quality.
$SYS$ItemCount
DWord/Rea d
Used to access the number of items in the corresponding device group. This item is read-only. Used to access the number of active items in the corresponding device group. This item is read-only.
RANGE: 02147483647 >=0: Number of active items. RANGE: 02147483647 >=0: Number of active items.
$SYS$ActiveItemCoun t
DWord/Rea d
176
Description
Values
$SYS$ErrorCount
DWord/Rea d
Used to access the number of all items (active and inactive) that have errors (non-GOOD OPC quality) in the corresponding topic. If the communications status of a device group is BAD, all items have errors. This item is read-only. Poking a 1 to this item forces all items in the corresponding device group to be read immediately (all messages in this device group become due). This is useful if you want to force to get the newest values from the device, regardless of its update interval. This also works on device groups with a zero update interval (manual protocol triggering).
RANGE: 02147483647 >=0: Number of all items (active and inactive) with errors.
$SYS$PollNow
Boolean/Re adWrite
RANGE: 0, 1
Description
Values
The following generic system items are supported for all Allen-Bradley controllers. $SYS$DeviceStatus String/Read Status of the processor. RANGE: OK or faulted
177
Description
Values
$SYS$Mode
String/Read
RANGE: Run, Program, Remote Run, or Remote Program Descriptive text for the process type. Descriptive text for the corresponding processor name. Descriptive text for the firmware revision.
String/Read String/Read
Name of the process type. Name of the program running in the processor. Firmware of the processor.
String/Read
178
Description
Values
$SYS$UpdateTagInfo
Boolean/ ReadWrite
Force update of the whole controller tag database. The DAServer returns WriteComplete for $SYS$UpdateTagI nfo when poked. The transaction will be completed with no timeout. Note: The value in $SYS$Update TagInfo will return to "0" from "1" after the process is finished. Note: The DAServer will implement manual and automated updates of the ControlLogix tag database in the event that you add or delete items by direct controller programming. Warning! Updating a tag database online consumes resources. During the updating process, the DAServer may be held up from updating the client application.
179
Description
Values
The following tag-database-specific system items are supported for all Allen-Bradley controllers. $SYS$BrowseTags Boolean/ ReadWrite Indicates whether the controller tags are browsable from OPC client. If a TRUE value is written to this item, the controller tags will become browsable, provided that the tag database is ready at the time. If a FALSE value is written to this item, all controller tags will not be browsable. RANGE: TRUE,FALSE
180
Description
Values
$SYS$TagDBStatus
Boolean/ Read-Only
Indicates the status of the tag database as follows: Uninitialized (0) The tag database is uninitialized, typically in a start state. Uploading (1) The tag database is being uploaded from the controller. Uploaded (2) The tag database has been completely uploaded from the controller. Error (3) The tag database is not uploaded because of errors encountered during the upload.
$SYS$UpdateTagInfo
Boolean/ ReadWrite
Forces update of the controller tag database upon adding the next item for advise or poking any value to an existing item (On or Off).
RANGE: TRUE,FALSE
The following Logix5000 system items are supported for ControlLogix, CompactLogix, and FlexLogix processors. $SYS$DeviceSecurity String/Read Status of controller security RANGE: True or False
181
Description
Values
$SYS$Optimization
Boolean/ Read-Only
Indicates the status of ControlLogix message optimization in handle mode as enabled with the ControlLogix Optimization check box under the Logix5000 node editor in DAServer Manager (True or False). If: FALSE - no message optimization will be used. TRUE - either the Optimized for read option or the Optimized for startup is being used.
RANGE: TRUE,FALSE
$SYS$UDTOptimizat ion
Boolean/ Read-Only
Indicates the status of the ControlLogix user-defined data type optimization enabled with the User Defined Data Type Optimization check box under the Logix5000 node editor in the DAServer Manager (On or Off).
RANGE: TRUE,FALSE
182
Description
Values
$SYS$FreeMem
DWORD/ Read-Only
Returns the current unused memory, in number of bytes, in the Logix processor (I/O + data table + general). Returns the unused data table memory in number of bytes (not applicable to 1756-L1). Returns the total available general memory in number of bytes (applicable to 1756-L55M16 only). Returns the total available I/O memory in number of bytes. Returns the total memory, in number of bytes, in the Logix processor. Returns the total available data table memory in number of bytes (not applicable to 1756-L1). Returns the total available general memory in number of bytes (applicable to 1756-L55M16 only).
RANGE: 02147483647
$SYS$FreeMemDT
DWORD/ Read-Only
RANGE: 02147483647
$SYS$FreeMemGM
DWORD/ Read-Only
RANGE: 02147483647
$SYS$FreeMemIO
DWORD/ Read-Only
RANGE: 02147483647
$SYS$TotalMem
DWORD/ Read-Only
RANGE: 02147483647
$SYS$TotalMemDT
DWORD/ Read-Only
RANGE: 02147483647
$SYS$TotalMemGM
DWORD/ Read-Only
RANGE: 02147483647
183
Description
Values
$SYS$TotalMemIO
DWORD/ Read-Only
RANGE: 02147483647
The following system items are supported by each communications node in the ABCIP DAServer. $SYS$OpenConnectio ns $SYS$ConnectionsIni tiated DWORD/ Read-Only DWORD/ Read-Only Returns the number of open CIP connections. Returns the number of CIP connections initiated by the server. Returns the number of CIP connections refused by the communications module. Returns the number of message requests originating from the communications module. Returns the number of reply packets received. Returns the number of unsolicited messages received by the communications module. RANGE: 02147483647 RANGE: 02147483647
$SYS$ConnectionsRe fused
DWORD/ Read-Only
RANGE: 02147483647
$SYS$RequestSent
DWORD/ Read-Only
RANGE: 02147483647
$SYS$ReplyReceived
$SYS$UnsolReceived
184
Description
Values
$SYS$Unsolreplied
DWORD/ Read-Only
Returns the number of replies sent in response to the unsolicited message. Returns the number of errors for the requests sent. Returns the number of request timed out The item $SYS$ResetStatist ics is available at root hierarchy PORT_CIP and will reset statistic counters of all child nodes. Returns the number of data packets sent. Returns the number of replies received. Returns the number of packets sent per second Returns the number of packets received per second. Returns the number of read items received per second. Returns the number of write items sent out per second.
RANGE: 02147483647
$SYS$RequestErrors
DWORD/ Read-Only
RANGE: 02147483647
$SYS$RequestTimeo ut $SYS$ResetStatistics
$SYS$RateReceived
Real/Read-Only
$SYS$ItemUpdateRa te
Real/Read-Only
$SYS$ItemWriteRate
Real/Read-Only
185
Description
Values
$SYS$ForceFailover
Boolean/ ReadWrite
This is required to achieve the failover condition to be forced by client. Note: By poking a value of "1" (True) into the Force Failover item, a client can conveniently switch to the secondary device.
TRUE, FALSE
$SYS$ActiveDevice
String/Read
This system item will show the current runtime active device. This system item will show the time at which the switch occurred. This system item will show the current runtime standby device. This system item will show the status of the secondary device. This is the status of the second device defined in the configuration and is not changed with any failover. RANGE: 0, 1
$SYS$FailoverTime
Time/Read
$SYS$StandbyDevice
String/Read
$SYS$SecondaryDevic eStatus
Boolean/Read
186
Type/Access Rights
Description
Values
$SYS$PrimaryDeviceS tatus
Boolean/Read
This system item will show the status of the primary device. This is the status of the first device defined in the configuration and is not changed with any failover. RANGE: 0, 1 This system item will show the reason for the failover.
$SYS$FailoverReason
String/Read
Important The Redundant Hierarchy, including the Device Group, is not hot-configurable, and requires a Reset on the Redundant Hierarchy to effect a configuration change.
where each component (delimited by a hint, that is, a period in case of a DAServer) represents a branch or leaf of the field devices hierarchy.
187
In this example:
AREA10.VESSEL1.TIC1 is the link name for a DAServer. PLC is the name of the target controller. N7:11 is the specific data point (Item) desired. An item is typically a single value such as an analog, digital, or string value.
Where Item ID describes the syntax for defining the desired data point, OPC provides for another parameter, called Access Path, that defines optional specifications for obtaining that data. In DAServers, Access Paths are equivalent to Device Groups; it is this parameter that is used to define the update interval between the DAServer and the field device for accessing the values of data points in the controller.
188
189
Chapter 9
Troubleshooting
Windows Task Manager Windows Performance and Alerts (PerfMon) application also called Performance Monitor DAServer Manager ArchestrA Log Flag Editor ArchestrA Log Viewer
Your client application may let you view error messages, monitor the status of requests, and allow you to request data on the status of the DAServer and connected devices. For more information, see your client application documentation.
190
Chapter 9 Troubleshooting
In the DAServer Manager, right-click DAServer Manager, and then click About DAServer Manager. An About box appears showing the version and build date of the DAServer Manager.
To determine version information for DAServer components
In the DAServer Manager, select the DAServer name in the console tree. The version information for each DAServer component is shown in the details pane.
191
In the System Management Console, expand Log Viewer and then expand the log viewer group. Select Local.
On the Action menu, click Log Flags. In general, look at error and warning messages to determine if a problem exists. To determine whether the DAServer is communicating with a device, you can enable the DASSend and DASReceive log flags. From these you can determine whether or not the device is responding.
Error: A fatal error, the program cannot continue. By default set on by logger. Warning: The error is recoverable. A client called with a bad parameter, or the result of some operation was incorrect, but the program can continue. By default set on by logger. Start-Stop: Each main component logs a message to this category as it starts and stops. Info: General diagnostic messages. Ctor-Dtor: C++ classes of interest log messages to this category as they are constructed and destructed.
192
Chapter 9 Troubleshooting
Entry-Exit: Functions of interest log messages to this category as they are called and return. Thread Start-Stop: All threads should log messages to this category as they start and stop.
DACmnProtFail: Some failure occurred in the common components while sending a message, updating an item, or otherwise moving data. Typically, this represents some unexpected behavior in the server-specific DLL. DACmnProtWarn: Some problem occurred that interfered with sending messages, updating items, or otherwise moving data. Common examples are slow poll, value limiting during type conversion, and transaction timeout messages. DACmnTrace: Normal processing of client program requests and data movement to and from the server-specific DLL are traced on this log flag. Use this in conjunction with DACmnVerbose to get the most information. DACmnVerbose: Many log flags used by the DAS common components are modified occasionally by DACmnVerbose. When DACmnVerbose is set, the logging of messages on other log flags includes more information. DACmnSend: Operations within the DAS Engine DLL that revolve around sending messages to the server-specific DLL. DACmnReceive: Events surrounding messages that are returned to the DAS Engine by the server-specific DLL, including the blocking and unblocking of hierarchies.
193
DASProtFail: An error in the protocol occurred, for example, device disconnected. The program can continue, and, in fact, this category is expected during normal operation of the program. Must be set on by the generic DAS code when the DAServer starts. DASProtWarn: Something unexpected occurred in the protocol, for example, a requested item with an otherwise valid item name is not supported by this device. Must be set on by the generic DAS code when the DAServer starts. DASTrace: General diagnostic messages of a protocol-specific nature. For example, you can provide the number of items in a message for a specific protocol, then optimize based on the number. DASVerbose: Modifies all other DAS logging flags. When on, provides detailed messages. DASSend: Protocol messages sent to the device are logged to this category. DASReceive: Protocol messages received from the device are logged to this category. DASStateCat1, DASStateCat2, DASStateCat3, DASStateCat4: These are general categories for use by the server developer. As DeviceEngine-generated state machines are created by the DAServer, they can be told to log state machine messages to one of the following: DASStateCat1, DASStateCat2, DASStateCat3, or DASStateCat4. These messages indicate when a state is made the active state, when a state handler is run, when a state handler completes, and when a timeout occurs for a state machine. DASStateMachine: By default, DeviceEngine-generated state machines created by the DAServer log to this category unless specifically told to log to one of the DASStateCatN categories. In addition, general state machine messages are logged to this category. These messages indicate when a state machine is created and deleted.
194
Chapter 9 Troubleshooting
<Message ID> corresponds to the message ID displayed in the DAServers Diagnostics root in the DAServer Manager. <Device> refers to the node name of the device.
Note All of the error messages shown in the following table apply to the DASProtFail log flag. Error Message Explanation Probable Cause Solution
A PLC (IP:<IPAddress >) attempted to send us an unsolicited data packet. But the maximum number of simultaneous unsolicited data connections [MAX socket] has already been reached. Data packet ignored. ABCIPAccepted Socket: Initialize unable to associate an event with a handle Array index error found while formatting message for block <Block Number>
The maximum number of sockets used for unsolicited data communications has been reached. No more unsolicited data packages will be accepted.
The maximum number of sockets used for unsolicited data communications has been reached.
Unable to associate the event with a valid handle within the internal state computer. The Bit number specified in the item is out of range
Verify and specify the correct bit number appropriate for the data type of the item tag.
195
Error Message
Explanation
Probable Cause
Solution
Attempt to resolve remote hostname <HostName> failed Cannot create optimize structure for item <Item Name> message <MessageID> Connection to <Target Address> on port <Port Number> failed with error <Error Code>. Connection to <Target Address> on port <Port Number> refused. Encountered the following error in reply message <Message ID> when reading from <Device> Encountered the following error in reply message <Message ID> when writing to <Device>
Error is returned from the OS while trying to establish the socket connection.
No connection can be made because the target device actively refused it.
Error codes are returned in the poll-message response from the device; further explanations follow. Error codes are returned in the poke-message response from the device; further explanation follows.
Depends on the CIP errors returned (refer to the tables in Logix5000 Error Codes). Depends on the CIP errors returned (refer to the tables in Logix5000 Error Codes).
Check to see if there are other error messages in the logger. Check the DAServer diagnostics, if necessary. Check to see if there are other error messages in the logger. Check the DAServer diagnostics, if necessary.
196
Chapter 9 Troubleshooting
Error Message
Explanation
Probable Cause
Solution
Encountered the following error when reading block <Block Item Name> in message <Message ID> from <Device> Encountered the following error when reading optimized block <Internal Block Address> in message <Message ID> from <Node> Encountered the following error when writing block <Block Item Name> in message <Message ID> from <Device> Error encountered initializing Unsolicited Data Port. No direct (i.e.: peer-to-peer) unsolicited data will be accepted.
Error codes are returned in the request block for Multi-Request messages. Further explanation of the errors will be listed. The error code is returned from the ControlLogix controller when the server tries to read the optimization structure in the controller. Error codes are returned in the request block for Multi-Request messages. Further explanation of the errors will be listed. There is a failure to create a listening socket for the peer-to-peer unsolicited data used. As a result, no unsolicited data can be accepted.
Depends on the CIP errors returned (refer to the tables in Logix5000 Error Codes).
Check to see if there are other error messages in the logger. Check the DAServer diagnostics, if necessary.
It is an internal error. See the CIP Service error code for details.
Depends on the CIP errors returned (refer to the tables in Logix5000 Error Codes).
Check to see if there are other error messages in the logger. Check the DAServer diagnostics, if necessary. Make sure that no other application is running and listening at the same port (such as RSLinx). Make sure the network is functioning. Make sure the controller is functioning.
Another application has already been listening at the same port. The network communications is having a problem. The controller is having a problem communicating.
197
Error Message
Explanation
Probable Cause
Solution
The error message shows the extended CIP error code and description, if there is one. Listening socket with the indicated port number is being used by another process. ABCIP DAServer cannot receive unsolicited message from controllers. The maximum number of sockets allowed was exceeded.
CIP-error dependent (refer to the tables in Logix5000 Error Codes). There may be third party products already listening on the same CIP port. Shut down any third-party product (such as RSLinx) listening on the same CIP port and restart ABCIP DAServer.
Host EtherNet/IP <IP address> connect host failed, maximum number of socket <MAX socket> exceeded
System limit on TCP sockets on the machine hosting the DAServer is reached. Check if there are other programs on same the machine consuming a large number of sockets.
Inconsistent message type encountered for <Device Name> Invalid item <Item Name> fields required for structure item Invalid item <Item Name> bit number not allowed or invalid
The DAServer encounters an internal error. UDT member was not defined in the item syntax
Specify the member of the UDT structure in the item tag Verify and specify the correct bit number appropriate for the data type of the item tag.
198
Chapter 9 Troubleshooting
Error Message
Explanation
Probable Cause
Solution
Invalid item <Item Name> structure not found Invalid item <Item Name>, invalid item format <format> Invalid item <Item Name>, invalid index
Specified UDT structure does not exist in the controller "," was used to specify the items format. However, the format was found to be invalid for the item. An invalid index is specified in the item.
Verify if the UDT structure name is correct and exists in the controller. Check the items format.
Check the index specified. Only integer is accepted as an index. Check the structures definition in the device.
Invalid item <Item Name>, member <Member Name> not found in structure Invalid item <Item Name>, not defined in the processor Invalid item <Item Name>, offset dimension exceeded
The items definition cannot be found in the tag database. The internal limit of the items nesting level (20) is exceeded. In general, each "." and the index [x] increment the items nesting level by 1 (one). The item points to a structure other than a string. The DAServer does not support this type of item.
The item is not defined in the Logix processor. The items nesting level exceeds the servers limit.
Check the items definition in the device. Reduce the items nesting level.
199
Error Message
Explanation
Probable Cause
Solution
Invalid item <Item Name>, structure not found Invalid item <Item Name>, syntax error Invalid item <Item Name>, unknown suffix Invalid item <Item Name>, dimension mismatch
The structure definition for the item cannot be located. There is a syntax error in the item. The suffix specified after "," is not recognized by the DAServer. The dimension specified in the <Item Name> is different from what has been defined in the device. The bracket for the index is found mismatched. It is an items syntax error. The index specified in the <Item Name> is outside the range defined in the device. The bit number specified in the item is invalid.
Check the items definition in the device. Check the items syntax. Check the suffix specified for the item. Check the items definition in the device.
The items array dimension is different from the definition in the device.
Invalid item <Item Name>, index bracket mismatch Invalid item <Item Name>, index out of range
The bit number specified cannot go beyond the range allowed for the items data type. For example, 0-15 is allowed for an INT variable and 0-31 is allowed for a DINT item.
200
Chapter 9 Troubleshooting
Error Message
Explanation
Probable Cause
Solution
Item <ItemName> cannot be created, out of memory. Message <Message ID> for <Device> timed out.
ABCIP DAServer failed to obtain memory during item creation. The DAServer does not get the messages response back from the device within the <Reply Timeout> specified. Invalid item syntax
Reduce the number of tags in the DAServer. Close other applications. Check the devices network connection.
Mismatched bracket found while formatting message for block <Block Number> Received packet from [HostName] too big on port [PortNumber] ([#of bytes received] bytes) Received incomplete response packet for message <Message ID> from <Device>
The received packet from the controller exceeds the maximum packet size allowed for this type of protocol. The response packet is incomplete or corrupted.
Check if the server is configured properly for the target ControlLogix controller. Check to see if there are other error messages in the logger. Check the DAServer diagnostics, if necessary. Repeat the operation by restarting the DAServer.
201
Error Message
Explanation
Probable Cause
Solution
Register Session encountered the following error: recd packet from [HostName] too big on port [PortNumber] ([#of bytes received] bytes)
DASABCIP encountered an error while trying to establish an EtherNet/IP session with the controller. The received packet from the controller exceeds the maximum packet size allowed for this type of protocol. The item cannot be added or subscribed from the DAServer. The time tag portion in the &T& syntax is missing or invalid. The &T& time tag syntax cannot be used with controller using firmware version less 16.0
Not communicating to a ControlLogix controller. Incorrect data packet was read from the socket.
Check the controller configuration. Check if the server is configured properly for the target ControlLogix controller.
If the &T& syntax is used, make sure that it consists of a valid data tag followed by the &T& and a valid time tag. Upgrade the controller firmware version to 16 or above if the &T& time tag syntax is to used.
Rejected <PLC Type Name> ITEM = <Item Name> on plc <PLC Node Name>. Time Tags not supported on Firmware Revision less than 16.0 Rejected <PLC Type Name> ITEM = <Item Name> on plc <PLC Node Name>. Invalid data type for time tag
Controller firmware version is not compatible with &T& time tag requirement
202
Chapter 9 Troubleshooting
Error Message
Explanation
Probable Cause
Solution
Response service code <ServiceCode> different from command <Service Code> for message <Message ID> Response service code <ServiceCode> not handled
The service code in the message sent does not match the one in the reply.
Check to see if there are other error messages in the logger. Check the DAServer diagnostics, if necessary. The service code received by the DAServer is not supported. Please verify the controller firmware version against supported version by the DAServer.
Unexpected service code is encountered in the reply packet from the controller.
CIP-error dependent (refer to the tables in Logix5000 Error Codes). This is an internal Winsock error.
Socket <SocketID> send() returned <ErrorNumber >, connection to be closed Socket <SocketID> sending packet with buffer size <BufferSize> larger than <MAX buffer size> STS=<CIP Error Code>: <Description>
The error message shows the CIP error code and description.
203
Error Message
Explanation
Probable Cause
Solution
Timeout waiting for an unknown event from PLC on an unsolicited data port connected to <PLC Host Name>
Timeout occurred while waiting for unsolicited data packet from a controller.
Make sure the controller is configured to send out unsolicited data correctly. Make sure the DAServer is functioning correctly.
Timeout waiting for data packet from PLC on an unsolicited data port connected to <PLC Host Name>
Timeout occurred while waiting for unsolicited data packet from a controller.
Make sure the controller is configured to send out unsolicited data correctly. Make sure the DAServer is functioning correctly.
Timeout waiting for initialization packet from PLC on an unsolicited data port connected to <PLC Host Name> Unsolicited socket not open for device <Device>
Timeout occurred while waiting for unsolicited data header from a controller.
Make sure the controller is configured to send out unsolicited data correctly. Make sure the DAServer is functioning correctly.
Unsolicited socket was not open when the DAServer tried to send a reply message to the device.
204
Chapter 9 Troubleshooting
-10001 -10002
DASProtFail DASProtFail
Logger Message
Log Flag
00 01 02 03 04
Success Connection failed Insufficient Connection Manager resources Invalid connection number IOI could not be deciphered. Either it was not formed correctly or the match tag does not exist The particular item referenced could not be found The amount of data requested would not fit into the response buffer. Partial data transfer has occurred. Connection has been lost Requested service not supported Error in data segment or invalid attribute number An error has occurred trying to process one of the attributes Service cannot be performed while object is in current state DASProtFail DASProtFail DASProtFail DASProtFail
05 06
DASProtFail DASProtFail
07 08 09 0A 0C
205
Logger Message
Log Flag
10 11 13
Service cannot be performed while device is in current state Response data too large Not enough command data/parameters were supplied in the command to execute the service requested Attribute not supported Too much data was received An insufficient number of attributes were provided compared to the attribute count Errors encountered with the items in the message The IOI word length did not match the amount of IOI which was processed Unknown Status
Logger Message
Log Flag
The beginning offset was beyond the end of the template. You have tried to access beyond the end of the data object. Data in use. The abbreviated type does not match the data type of the data object. Connection in Use or Duplicate Forward Open. Transport Class and Trigger combination not supported. Ownership Conflict. Connection not found at target application.
206
Chapter 9 Troubleshooting
Logger Message
Log Flag
0108
Invalid Connection Type. Indicates a problem with either the Connection Type or Priority of the Connection. Invalid Connection Size. Device not configured RPI not supported. May also indicate problem with connection time-out multiplier. Connection Manager cannot support any more connections. Either the Vendor ID or the Product Code in the key segment did not match the device. Product Type in the key segment did not match the device. Major or Minor Revision information in the key segment did not match the device. Invalid Connection Point. Invalid Configuration Format. Connection request fails since there is no controlling connection currently open. Target Application cannot support any more connections. RPI is smaller than the Production Inhibit Time. Connection cannot be closed since the connection has timed out. Unconnected Send timed out waiting for a response. Parameter Error in Unconnected Send Service. Message too large for Unconnected message service. Unconnected acknowledge without reply. No buffer memory available.
DASProtFail
0113 0114
DASProtFail DASProtFail
0115 0116 0117 0118 0119 011A 011B 0203 0204 0205 0206 0207 0301
DASProtFail DASProtFail DASProtFail DASProtFail DASProtFail DASProtFail DASProtFail DASProtFail DASProtFail DASProtFail DASProtFail DASProtFail DASProtFail
207
Logger Message
Log Flag
0302 0303 0304 0311 0312 0315 0316 0317 0318 0319 031A 031B 031C 031D None of the above codes
Network Bandwidth not available for data. No Tag filters available. Not Configured to send real-time data. Port specified in Port Segment Not Available. Link Address specified in Port Segment Not Available. Invalid Segment Type or Segment Value in Path. Path and Connection not equal in close. Either Segment not present or Encoded Value in Network Segment is invalid. Link Address to Self Invalid. Resources on Secondary Unavailable. Connection already established. Direct connection already established. Miscellaneous. Redundant connection mismatch. Unknown Extended Status.
DASProtFail DASProtFail DASProtFail DASProtFail DASProtFail DASProtFail DASProtFail DASProtFail DASProtFail DASProtFail DASProtFail DASProtFail DASProtFail DASProtFail DASProtFail
Note For more information about the general and extended Allen-Bradley error codes, please refer to the Allen-Bradley controller documentation.
208
Chapter 9 Troubleshooting
Logger Message
Dual-port memory functionality test error Unknown random access memory test error Failure of Z80 RAM 0 Failure of dual-port RAM Failure of Z80 RAM 1 Failure of both Z80 RAM 0 and RAM 1 Failure of both RAM 1 and Dual-Port RAM Unknown counter timer circuit test error Failure of CTC timer module Failure of CTC counter module Failure of both CTC timer and counter modules Unknown serial input output test error Failure of CIO channel: no interrupt Failure of SIO channel A: Loopback failure Protocol file download error Block too large error Z80 RAM too full for next block Cannot write to adapter card memory Cannot open file LOADPCL.BIN
(0x2000000E)
DHPERR_PROT_LOAD
(0x2000000F)
DHPERR_LOAD_BLK
(0x20000010)
DHPERR_RAM_FULL
(0x20000011)
DHPERR_BD_WRITE
(0x20000012)
DHPERR_OPEN_LOADPCL
(0x20000013)
209
Logger Message
Cannot open file KLPCL.BIN Cannot open file KLST0.BIN Cannot open file KLST1.BIN Cannot open file KLST2.BIN Cannot open protocol file Timeout error Cancelled error code
(0x20000014)
DHPERR_OPEN_KLST0
(0x20000015)
DHPERR_OPEN_KLST1
(0x20000016)
DHPERR_OPEN_KLST2
(0x20000017)
DHPERR_OPEN_PROT
(0x20000018)
TIMEOUT_ERR (0x01) CANCELLED_ERR (0x02)
BCD file number must be greater than 2 BINARY file number must be greater than 2
Incorrect format for the item. The BCD Items File Number was smaller than 3 for PLC-5. Incorrect format for this item. The Binary Items File Number was smaller than 3 for PLC-5. Incorrect format for the Item. The BT items File Number was 8 or smaller for PLC-5. Failed to write to a BT item for PLC-5.
Only access the BCD Item with File Number equal to 3 or larger. Only access the Binary Item with File Number equal to 3 or larger.
Only access the BT Item with File Number equal to 9 or larger. Do not attempt to write to a BT item for PLC-5.
210
Chapter 9 Troubleshooting
Error Message
Explanation
Possible Cause
Solution
Incorrect format for the item. The Control Items File Number was smaller than 3 for PLC-5. Incorrect format for the item. The Integer Items File Number was smaller than 3 for PLC-5. PID feature is not supported for this PLC-5 configuration. Incorrect format for the item. The PID Items File Number was 8 or smaller for PLC-5. Incorrect format for the Item. The SC items File Number was 4 or smaller for PLC-5. Incorrect format for the Item. The ST items File Number was 8 or smaller for PLC-5. Incorrect format for the item. The Timer Items File Number was smaller than 3 for PLC-5.
Only access the Control Item with File Number equal to 3 or larger.
Only access the Integer Item with File Number equal to 3 or larger.
item <ItemName> not valid, PLC does not have PID feature PD file number must be > 8
The PLC-5 configuration indicates that the PID feature is not supported. The PID Items File Number must be 9 or larger.
Select the "Support PID" feature option for PLC-5, if the controller supports the feature. Only access the PID Item with File Number equal to 9 or larger. Only access the ST Item with File Number equal to 5 or larger. Only access the ST Item with File Number equal to 9 or larger. Only access the Timer Item with File Number equal to 3 or larger.
211
Incorrect format for this item. The Binary Items File Number was not 3 or 9-255 for SLC500 and MicroLogix. Incorrect format for the item. The Control Items File Number was not 6 or 9-255. Incorrect format for the item. The Counter Items File Number was not 5 or 9-255. Incorrect format for the item. The Float Items File Number was not 8 or 8-255. Incorrect format for the item. The Integer Items File Number was not 7 or 9-255. Incorrect format for the item. The Timer Items File Number was not 4 or 9-255.
CONTROL file number must be greater than 6 or 9-255 COUNTER file number must be greater than 5 or 9-255 FLOAT file number must be 8 or 8-255
Only access the Control Item with the valid File Number. Only access Counter Item with valid File Number.
Only access the Float Item with the valid File Number.
Only access the Integer Item with the valid File Number. Only access Timer Item with valid File Number.
212
Chapter 9 Troubleshooting
Incorrect format for the item. The Sub-Element is not valid for this File Type. Incorrect format for the item. The ASCII Items File Number was smaller than 3. Incorrect format for the item. The Binary Item contained an element number, but its bit number was larger than 15.
Only access the valid item format with the correct Sub-Element type. Only access the ASCII Item with a File Number equaling to 3 or larger. Only access the Binary Item with the valid range.
The valid format for a PLC-5 Binary Item is: B[FileNumber]: [Element]/[Bit], where Bit is from 0 to 15. In this case, the Bit field was larger than 15. A bad item File Number was used.
Incorrect format for the Item. The Items File Number was out of range. Incorrect format for the item. The Floating Point Item contained a bit number field. Incorrect format for the item. The Floating Point Items File Number was smaller than 3.
The Floating Point Item must not contain a bit number field. The Floating Point Items File Number must be 3 or larger.
Only access the Floating Point Item without a bit number field. Only access the Floating Point Item with a File Number that equals to 3 or larger.
213
Error Message
Explanation
Possible Cause
Solution
Incorrect format for the item. The Input Items File Number was not 1. Incorrect format for the item. The Output Items File Number was not 0. Incorrect format for the item. The Status Items File Number was not 2. Incorrect format for the item. An invalid Item Type was used. Incorrect format for the item. The Sub-Element is not valid for this section. Write operation failed due to an attempt to write to a read-only item.
The Input Items File Number must be 1. The Output Items File Number must be 0. The Status Items File Number must be 2. There was no such Item Type name.
Only access the Input Item with a File Number that equals to 1. Only access the Output Item with a File Number equaling to 0. Only access the Status Item with a File Number equaling to 2. Use the valid Item Type.
Attempt to write read only item in file [FileNumber] element [Element#] subelement [Sub-Element#] ignored
214
Chapter 9 Troubleshooting
215
Chapter 10
Reference
DAServer Architecture
This DAServer is a collection of components that work in concert to provide communications access with hardware field devices. These components include:
DAServer Manager: This is the Microsoft Management Console (MMC) snap-in, which is part of the ArchestrA System Management Console suite of utilities, supplied with the DAServer. It provides the necessary user-interface for configuration, activation, and diagnostics. Client Plug-ins: These are the components that are added to a DAServer to enable communications with clients. Examples are: OPC, DDE/Suitelink, and so on. DAS Engine: This is the library that contains all the common logic to drive data access. Device Protocol: This is the custom code provided by this DAServer to define the communications with a particular device.
216
Chapter 10 Reference
DAServers
A DAServer is comprised of three physical parts (see the following figure). They are the following:
Plug-in Component(s): Responsible for communicating with clients. DAS Engine: This common component is used by all DAServers. PLC Protocol Layer, DAServer-specific: This component is responsible for communicating with the hardware.
DAServer Architecture
DAServer Architecture
217
Each physical part of a DAServer is comprised of a set of .exe and/or .dll modules. Wonderware provides the Plug-ins and the DAS Engine. The DAS Toolkit user creates the PLC Protocol Layer (DAServer-specific) modules. All three sets of modules are required for a fully functioning DAServer.
Plug-ins
Plug-ins provide a protocol-translation function for device integration clients. Typical Plug-ins communicate in DDE, SuiteLink, or OPC protocol, and serve as interfaces between their clients and the DAS Engine.
Note Items of an array are not supported in the DDESuiteLink plug-in. These arrays are converted to HEXASCII strings, which provide legacy behavior for DAServers that support this in the DAServer-specific code. Note For tag items defined as array data types in an item addition request, the OPC_E_BADTYPE error is returned when an OPC client does not specify the array data type documented in the ABCIP User's Guide or the VT_EMPTY data type. The only exception is when an OPC client specifies VT_BSTR as the requested data type for an item that is defined as VT_ARRAY|VT_UI1. In this case, the DAServer accepts the item addition and returns the data as VT_BSTR.
DAS Engine
The DAS Engine is a middleware component that exposes two sets of unique interfaces, one for communicating with the Plug-ins and the other one for communicating with the PLC Protocol Layer components.
218
Chapter 10 Reference
Component Environments
Stand-alone DAServers have the following characteristics:
The DAS Engine is dynamically linked to the other DAServer components. In other words, a new DAS Engine (feature enhancement or bug fix) would not require re-linking to the other components. When deployed to the system, the new DAS Engine would attach to all existing DAServer components. Newly deployed Plug-ins (feature enhancements or bug fixes) do not require re-linking. Even new Plug-ins (for example, OPC Alarm & Events) would not require any development changes to the other components, and therefore no re-linking in a customer- installed base. In fact, it is feasible to implement new functionality in a Plug-in to enhance the DAServer without any involvement of the code of the other components. DAServers can be configured in one stand-alone configuration utility (DAServer Manager), and is capable of displaying specific configuration views for all DAServers. This utility allows the browsing and editing of DAServers on different nodes. The DAServer Manager diagnostic tool displays generic diagnostic objects common to all DAServers, in addition to the DAServer-specific/DAServer-developer-defined diagnostic data.
The DAServer data configuration format is XML. Any XML-enabled program (for example, XML Editor) can read this format.
219
Chapter 11
Tested Logix5000 Firmware
The following table lists the Allen-Bradley Logix5000 firmware that have been tested with ABCIP DAServer Version 4.1.*
Allen-Bradley Module Firmware Version
Description
1756-L1 1756-L55 1756-L63 1756-L64 1756-L6xS LSP 1756-ENET/A 1756-ENBT/A 1756-EWEB 1756-EN2T/A 1756-DHRIO/A/B 1756-DHRIO/C 1756-DHRIO/D
ControlLogix5550 Controller ControlLogix5555 Controller ControlLogix5563 Controller ControlLogix5564 Controller GuardLogix Safety Controller ControlLogix Ethernet Communication Interface Module ControlLogix EtherNet/IP 10/100Mbps Bridge Module (Twisted-pair Media) ControlLogix EtherNet/IP Web Server Module ControlLogix High Capacity EtherNet/IP Bridge Module ControlLogix DH+/RIO Communication Interface Module (Series A or B) ControlLogix DH+/RIO Communication Interface Module (Series C) ControlLogix DH+/RIO Communication Interface Module (Series D)
v.13.34 v.16.21 v.17.03 v.17.03 v 17.07 v.1.18 v.4.008 v.4.010 v.1.004 v.2.21 v.5.04 v.6.3
220
Allen-Bradley Module
Description
Firmware Version
1756-CNB(R)/A/B 1756-CNB(R)/D 1756-CNB(R)/E 1756-CN2(R)/A 1756-DNB(R)/A/B 1757-SRM 1768-L43 1768-ENBT/A 1768-M04SE 1769-L30 1769-L32C 1769-L32E 1769-L35E 1769-L35CR 1769-SDN 1794-L34 1788-ENBT 1788-CNC 1788-DNBO 1789-L30
ControlLogix ControlNet Communication Bridge Module (Series A or B) ControlLogix ControlNet Communication Bridge Module (Series D) ControlLogix ControlNet Communication Bridge Module (Series E) ControlLogix ControlNet 2X Capacity Bridge Module ControlLogix ControlNet Redundancy Bridge Module ControlLogix System Redundancy Module CompactLogix5343 Controller CompactLogix EtherNet/IP Comm. Interface Module CompactLogix SERCOS Interface Module CompactLogix5330 Controller CompactLogix5332 ControlNet Controller CompactLogix5332 Controller with built-in EtherNet/IP Port CompactLogix5335 Controller with built-in EtherNet/IP Port CompactLogix5335 ControlNet Redundant Controller DeviceNet Scanner for CompactLogix and MicroLogix FlexLogix5434 Controller FlexLogix Ethernet Communication Daughter Card FlexLogix ControlNet Communication Daughter Card FlexLogix DeviceNet Communication Daughter Card SoftLogix 5800 (5-Slot Virtual Chassis) Software
v.2.30 v.7.15 v11.002 v.12.01 v.7.003 v.5.1 v.17.03 v.2.003 v.17.16 v.13.19 v.17.04 v.17.04 v.17.04 v.17.04 v.4.1 v.16.21 v.2.3 v.1.8 v.2.002 v.17.00
221
Note * Upon the release of major revisions of the Allen-Bradley firmware from Rockwell Automation, tests will be performed on the ABCIP DAServer to ensure proper compatibility. Any updates to the ABCIP DAServer resulting from this testing will be posted for download at the Wonderware Technical Support Web site.
222
223
Index
A
ABCIP DAServer configuring as not a service 100 configuring ports 33 error codes 204 error messages 194 features 109 accessing secured Logix5000-series controllers 122 accessing data using DDE/SuiteLink 108 using OPC 107 accessing data in your DAServer 107 Active Device 127, 128, 185 adding or removing tags 117 adding, renaming, deleting port objects 30 addressing slc i/o modules 150 and writes of arrays, block reads, See also block reads 134 ArchestrA.DASABCIP.4 26, 27, 100, 103, 113 archiving configuration sets 100, 104 ascii file items 143, 157 ascii string section items 144, 157, 164
B
basic log flags 191 BCD file items 144 before you begin 14 binary file items 139, 154, 161 block reads and writes of arrays 134 block transfer section items 145
C
checklist setting up the ABCIP DAServer 25 client protocols supported 15 CNetMessage control block items 147 CompactLogix controllers 18 component environments 218 control file items 142, 155, 163 ControlLogix controllers 17 ControlLogix System Redundancy 9, 220 ControlNet network 58 counter file items 141, 155, 162
D
DAS engine 217
ABCIP DAServer Users Guide
224
Index
DAServer activating/deactivating the DAServer 103 architecture 215 configuring as service 100 device interface log flags 193 device-group-specific system items 172 device-specific system items 169 exporting and importing DAServer item data 92 global system item 168 log flags 192 managing your DAServer 99 redundant device specific system items 185 setting up your DAServer 23 specific system item 176 standard system items 167 DAServers 216 Data Highway Plus error conditions 208 network 71 data type determination 114 DDE/FastDDE 15 DDE/SuiteLink 87, 99, 100, 103, 107, 108, 167, 169, 215 demo mode 105 device device group definitions 88 groups and device items 87 item definitions 90 redundancy 127 device networks supported 16 device protocols supported 15 DeviceNet network 70 devices supported 17 diagram system 151 documentation conventions 10
firmware tested Logix5000 firmware 219 FlexLogix controllers 18 floating point file items 143, 156, 164
G
generic OPC syntax 186 getting started 13 group device group definitions 88 groups groups and device items 87 GuardLogix controllers 17 SoftLogix and GuardLogix controllers 20
H
hot configuration 104
I
in-proc/out-of-proc 103 input file items 138, 150, 160 integer file items 142, 156, 163 invalid items handling 116 item device item definitions 90 item names/reference descriptions 129 items groups and device items 87
L
label I/O modules with "word counts" 152 log viewer using the wonderware log viewer 191 Logix5000 error codes 204 item naming 130 online tag management 116 optimization mode 111 tested Logix5000 firmware 219 write optimization 113 long integer section items 164
E
Ethernet network 35
F
firewall windows firewall considerations 21
M
manual tag synchronization 121 Matrix 119, 123, 124 message section items 147, 166
Index
225
MicroLogix controllers 18 item naming 158 PLC-5, SLC500, and MicroLogix error messages 212 SLC500 and Micrologix error messages 211 Module-Defined Data Types 133
P
Persisted 40, 46, 55, 116, 118, 119, 120, 121, 122, 123, 124, 171 persisted tags 118 persisted tag functionality matrix 124 PID section items 146, 165 Ping item 84, 86, 128 PLC protocol layer 217 time stamping 124 PLC-5 controllers 19 error messages 209 item naming 136 PLC-5, SLC500, and MicroLogix error messages 212 plug-ins 217 port adding a port 30 deleting a port 32 renaming a port 31 ports configuring 29 Primary Device 84, 127, 186
O
objects BACKPLANE_CLX 37 BACKPLANE_CPLX 52 BACKPLANE_FLX 43 CIP 34 CNB_CLX 58 CNB_FLX 59 CNB_PORT_CLX 65 CNB_PORT_CPLX 68 CNB_PORT_FLX 67 DHRIO_CLX 71 ENB_CLX 35 ENB_CPLX 49 ENB_FLX 41 ENI_CPLX 50 Logix_CPLX 53 LOGIX_FLX 44 LOGIX5000_CLX 38 M1785KA5_GWY 78 ML_DH485 80 ML_EN 47 PLC5_CN 62 PLC5_DHP 75 PORT_CN 61 PORT_DHP 73 SLC500_CN 63 SLC500_DH485 82 SLC500_DHP 77 SLC500_EN 56 OPC browsing 110 off-line OPC item browsing (static browsing) 110 on-line OPC item browsing (dynamic browsing) 111 output file items 138, 149, 160
R
redundancy configuring device 84 device 127 Redundant 84, 85, 86, 127, 128, 129, 185, 207, 220 reference 215 runtime behavior 127
S
scan-based message handling 94 Secondary Device 85, 127, 185 Secured controller 123, 124 secured Logix5000-series controllers accessing 122 sequentially number the input modules 152 sequentially number the output modules 153 SFC status section items 146 SLC500 controllers 19 item naming 148
226
Index
PLC-5, SLC500, and MicroLogix error messages 212 SLC500 and Micrologix error messages 211 SMC finding your DAServer 26 SoftLogix SoftLogix and GuardLogix controllers 20 SoftLogix 5800 controllers 18 status file items 139, 153, 161 Synchronize 40, 46, 55, 112, 116, 118, 119, 121, 123 system items $SYS$ActiveDevice 185 $SYS$ActiveItemCount 175 $SYS$BrowseTags 111, 179 $SYS$ConnectionsInitiated 183 $SYS$ConnectionsRefused 183 $SYS$DeviceSecurity 122, 180 $SYS$DeviceStatus 176 $SYS$EnableState 172 $SYS$ErrorCode 170 $SYS$ErrorCount 176 $SYS$ErrorText 170, 186 $SYS$FailoverReason 186 $SYS$FailoverTime 185 $SYS$ForceFailover 185 $SYS$FreeMem 182 $SYS$FreeMemDT 182 $SYS$FreeMemGM 182 $SYS$FreeMemIO 182 $SYS$ItemCount 175 $SYS$ItemUpdateRate 184 $SYS$ItemWriteRate 184 $SYS$Licensed 105, 168 $SYS$MaxInterval 173 $SYS$Mode 177 $SYS$OpenConnections 183 $SYS$Optimization 181 $SYS$PLCType 177 $SYS$PollNow 176 $SYS$PrimaryDeviceStatus 186 $SYS$ProcessorName 177 $SYS$RateReceived 184 $SYS$RateSent 184
$SYS$ReadComplete 175 $SYS$ReplyReceived 183 $SYS$RequestErrors 184 $SYS$RequestSent 183 $SYS$RequestTimeout 184 $SYS$ResetStatistics 184 $SYS$Revision 177 $SYS$SecondaryDeviceStatus 185 $SYS$StandbyDevice 185 $SYS$Status 86, 127, 167, 169, 185, 186 $SYS$StoreSettings 171 $SYS$TagDBStatus 180 $SYS$TotalMem 182 $SYS$TotalMemDT 182 $SYS$TotalMemGM 182 $SYS$TotalMemIO 183 $SYS$TotalPacketReceived 184 $SYS$TotalPacketSent 184 $SYS$UDTOptimization 181 $SYS$UnsolReceived 183 $SYS$Unsolreplied 184 $SYS$UpdateInterval 171, 172 $SYS$UpdateTagInfo 114, 115, 119, 120, 121, 123, 178, 180 $SYS$WriteComplete 174
T
tag database from file options matrix 119 loading tag database from file 117 modifying tags through downloaded programs 117 tags auto load tags on activation 118 auto synchronize tag functionality matrix 123 auto synchronize tags 118 tags, adding or removing, See also adding or removing 117 Time Stamping 124 timer file items 140, 154, 162 topologies supported 20 troubleshooting 189 with the DAServer manager 190 with windows tools 190
Index
227
U
UDT optimization 113 unsolicited message handling 95 user-defined data types 134
V
version information finding 190
W
welcome 9
228
Index