GE Fanuc Intelligent Platforms Applied Solutions VersaMax E05 as Ethernet Remote I/O for Simplex and Dual Controllers User’s Manual May 2009 User’s Manual Applied Solutions This document is based on information available at the time of its publication. While efforts have been made to be accurate, the information contained herein does not purport to cover all details or variations in hardware or software, nor to provide for every possible contingency in connection with installation, operation, or maintenance. Features may be described herein which are not present in all hardware and software systems. GE Fanuc Intelligent Platforms, Inc. assumes no obligation of notice to holders of this document with respect to changes subsequently made. GE Fanuc Intelligent Platforms, Inc. makes no representation or warranty, expressed, implied, or statutory with respect to, and assumes no responsibility for the accuracy, completeness, sufficiency, or usefulness of the information contained herein. No warranties of merchantability or fitness for purpose shall apply. ©Copyright 2009 GE Fanuc Intelligent Platforms, Inc. All Rights Reserved. All other brands, names, copyrights, or trademarks described herein are the property of their respective holders or owners. WARNING The PACSystems PLC product is United States Export Controlled under the Export Control Classification Number “4A994”. Any compiled objects that operate on it are United States Export Controlled under the Export Control Classification Number “4D994”. It is the responsibility of all parties using this application to understand and abide by these regulations. Export to restricted countries is strictly forbidden. User’s Manual 2 / 78 Applied Solutions Table of Contents 1 Introduction ............................................................................................................ 6 Additional Documentation ..................................................................................................... 7 Devices on the Network ........................................................................................................ 7 Multiple Controllers ............................................................................................................... 8 2 Ethernet Global Data (EGD) Overview.................................................................. 9 Communications Overview ................................................................................................... 9 Ethernet Global Data Exchange Operation ..................................................................... 9 EGD Exchanges for Faults – SVC_Xchg ..................................................................... 10 3 EGD Exchanges, Control Words, Status Words, I/O Data Formats, and ENIU System References ..................................................................................................... 11 System I/O Data References .............................................................................................. 11 Data Memory in the Ethernet NIU ....................................................................................... 12 References Used in the Ethernet NIU ........................................................................... 13 Discrete and Analog Outputs in the Ethernet NIU......................................................... 14 Using Multiple Exchanges for Systems with More than 256 Analog Outputs................ 14 Exchanging Data with One or Two Controllers ................................................................... 15 ENIU Operation with Two Controllers ........................................................................... 15 ENIU Operation if No Data is Received ........................................................................ 15 Control Data Format............................................................................................................ 16 Control Data Definitions ................................................................................................ 17 Status Data Format ............................................................................................................. 18 Status Data Definitions.................................................................................................. 18 Using the Control and Status Data...................................................................................... 19 Switching Control Back to the Primary Controller ......................................................... 19 Setting Up the Output Defaults...................................................................................... 19 Specifying Individual Output Defaults............................................................................ 20 Checking for Faults and Clearing Faults ....................................................................... 20 Using the Optional Application-Specific Command Word ................................................... 21 Setting Up a Heartbeat.................................................................................................. 21 Sequencing Outputs...................................................................................................... 21 Checking the Status of the Heartbeat / Sequence ........................................................ 21 User’s Manual 3 / 78 Applied Solutions 4 Setting Up a System using a Template Set: Simplex or Duplex Controllers and One LAN....................................................................................................................... 22 Single and Dual Controller Architectures ............................................................................ 22 Simplex Controller – Single LAN ................................................................................... 22 Duplex Controller Single LAN........................................................................................ 23 Template Sets Overview ..................................................................................................... 23 Considerations for Setting up an ENIU System .................................................................. 33 Addressing of SVC Exchanges ..................................................................................... 36 EGD Addresses for Multiple Systems on one Ethernet System.................................... 37 Run Mode Store of Ethernet Global Data to the Ethernet NIU...................................... 37 Effect of a Run Mode Store on EGD Operation ............................................................ 38 Redundant Controller Considerations ................................................................................. 39 Switching Logic ............................................................................................................. 39 Predefined Signals for Custom Switching Logic............................................................ 40 Dedicated Signals ......................................................................................................... 41 Point Fault/Data Quality Feature......................................................................................... 42 Enabling Point Fault References................................................................................... 42 Operation of Point Fault References ............................................................................. 42 Adding “Outputs2_xxx_to_ENIU” Exchange ................................................................. 43 Adding Data to Input Exchanges................................................................................... 44 Configuring Input Registers in the Controller ................................................................ 45 Using Input Register Data in the Controller................................................................... 45 How Certain Operational Features are Set up in the Template Set .................................... 46 Input_Processing block ................................................................................................. 46 Using More Is or More Ais............................................................................................. 48 Input_Processing Error Codes ...................................................................................... 48 Chart of Production Periods and Consumption Timeouts ............................................. 50 Using Two Networks to Improve I/O Response Time ................................................... 52 5 Diagnostics........................................................................................................... 53 Ethernet NIU Fault Handling Version 2.1x versus Version 2.40.......................................... 53 Disabling Version 2.40 Fault Handling .......................................................................... 54 Checking for Faults Using the ENIU Status Data (Version 2.10 method) ..................... 54 Clearing Faults using Word 1 of the ENIU Control Data ............................................... 55 Clearing Faults using ClearFaults Data Range in SVC_Xchg_to_ENIU_xx (Version 2.40 and higher) ............................................................................................................ 55 ENIU Faults in the Controller PLC Fault Table (Version 2.40 and higher) .................... 55 Operation of Faults on Power Up, and Stop to Run of ENIU. ....................................... 56 User’s Manual 4 / 78 Applied Solutions ENIU_Faults “C Block ................................................................................................... 56 Symbolic Variables for Fault Handling .......................................................................... 57 Viewing the Fault Tables in the Ethernet NIU ..................................................................... 57 Viewing Extra Fault Data............................................................................................... 57 PLC Fault Table Descriptions........................................................................................ 58 Using the Station Manager Function................................................................................... 59 Checking the IP Address of the Ethernet NIU ............................................................... 59 Verifying that the IP Address of the Ethernet NIU is Unique ......................................... 60 Testing Communications on the Network...................................................................... 60 Viewing the Exception Log ............................................................................................ 61 Checking the Network Connection ................................................................................ 61 Checking Exchanges with the STAT Command ........................................................... 62 Verifying that All Ethernet Global Data Exchanges are Working................................... 63 Checking the Cable Connections .................................................................................. 64 When the STAT LED is ON........................................................................................... 64 Stale Ethernet Global Data Status ...................................................................................... 65 If You Can’t Solve the Problem ........................................................................................... 65 6 Local Program Logic in the Ethernet NIU .......................................................... 66 Using the Local Logic Block ................................................................................................ 66 Reference Table Restrictions for User Logic ...................................................................... 66 Restricted Addresses .................................................................................................... 66 Addresses written to by EGD Exchanges ..................................................................... 66 7 Configuring PC-Based Controllers ..................................................................... 67 Configuring the Ethernet NIU .............................................................................................. 67 Configuring the PC-Based Controller.................................................................................. 68 Set Up I/O and Control/Feedback Data......................................................................... 71 8 Setting Up Output Defaults ................................................................................. 74 9 Worksheets for System Parameters................................................................... 75 Controller............................................................................................................................. 75 Second Controller (if used) ................................................................................................. 76 ENIU (complete for each ENIU) .......................................................................................... 77 User’s Manual 5 / 78 Applied Solutions 1 Introduction The VersaMax family of products provides universally-distributed I/O that spans PLC and PCbased architectures. Designed for industrial and commercial automation, VersaMax I/O provides a common, flexible I/O structure for local and remote control applications. This manual describes installation, operation, and how to apply the VersaMax E05 CPU as an Ethernet Network Interface Unit (ENIU). The E05 as Ethernet NIU makes it possible to use VersaMax I/O remotely on an Ethernet network. See the VersaMax PLC System Manual, GFK-1503 for details of the E05 CPU and installation instructions. Once set up by configuration, data exchange is completely automatic. System control can be provided by any GE Fanuc master device capable of exchanging Ethernet Global Data. The E05 as ENIU automatically provides the controller with status information in each exchange. The application program logic in the controller can monitor this status data, and issue appropriate commands to the E05 acting as an ENIU. This chapter describes how the E05 as ENIU functions a remote I/O over Ethernet and describes the Ethernet Global Data (EGD) exchanges that are used to communicate between the ENIU and the controller(s). The rest of the chapters in this manual explain how to implement an E05 as ENIU application: Chapter 2: EGD Overview, summarizes Ethernet Global Data (EGD) operation. Chapter 3: Control, Status, and I/O Data, describes the content of the data exchanged by the E05 as ENIU and the controller. Chapter 4: Software Setup, explains how to use Template Sets to set up an application using E05s as ENIUs. Chapter 5: Diagnostics, describes how to view and clear fault information for the E05 as ENIU. Chapter 6: Local Program Logic in the E05 as ENIU, describes the Local Logic feature of the E05 as ENIU. Appendix A: Setting Up Output Defaults, describes how to set up optional default states or values for output data. . User’s Manual 6 / 78 Applied Solutions Additional Documentation The VersaMax Enhanced E05 as ENIU and associated equipment will function as part of a larger control system. Additional documentation will be required to complete the system installation and configuration procedures for the system. The following VersaMax user manuals provide additional information about VersaMax equipment in the I/O Station: VersaMax Modules, Power Supplies, and Carriers User’s Manual, GFK-1504. Describes the many VersaMax I/O and option modules, power supplies, and carriers that can make up the I/O Station. This manual also provides detailed system installation instructions. VersaMax PLC System Manual, GFK-1503 Describes the installation and operation of a VersaMax PLC System. This manual also contains general information about CPU operation and program features. Much of this manual focuses on the VersaMax PLC, but it also includes programming details you will need if the VersaMax Enhanced E05 as ENIU will use local application logic. VersaMax PLC Station Manager User’s Manual, GFK-1876. Describes the diagnostic interface to the Ethernet functions of VersaMax CPU module IC200CPUE05. The information in this manual also applies to the VersaMax Enhanced E05 as ENIU. Devices on the Network An Ethernet network can serve more than one NIU I/O Station. A system with one controller and multiple I/O Stations is shown below. Controller with Ethernet Interface Multiple Enhanced Ethernet NIU I/O Stations The Ethernet Interface in the master PLC sees all of the modules on the network without regard to their location in a specific I/O Station. That means each module must be assigned unique I/O User’s Manual 7 / 78 Applied Solutions references during configuration. The application program in the PLC sends output data on the Ethernet network, and each NIU consumes all of the output data. Each E05 as ENIU then maps the output data to its own output memory. During the output portion of each NIU’s I/O scan, it automatically sends the appropriate output data to the modules in its I/O Station. Similarly, when the master PLC receives data from the NIUs, it maps the I/O data into PLC memory at the appropriate addresses. Therefore, it is important to be sure that all of the input references are unique to prevent input data being accidentally overwritten. See chapter 3 for more information about reference usage in the system. Any GE Fanuc Ethernet interface master capable of exchanging Ethernet Global Data messages, such as a PAC Systems, Series 90-30, or Series 90-70, can function as a controller for the VersaMax E05 as ENIU. Multiple Controllers Many applications will use one master to control one or more I/O Stations on the network. However, it is also possible to have two masters, with one serving as the primary controller and the other as a secondary controller to provide backup operation should communications with the primary controller be lost. When using more than one master, it is important to balance the needs of the application against the greater complexity of coordinating the controllers. Controller 1 with Ethernet Interface Controller 2 with Ethernet Interface Multiple Enhanced Ethernet NIU I/O Stations Any GE Fanuc Ethernet interface master capable of exchanging Ethernet Global Data messages, such as a PAC Systems, Series 90-30 or Series 90-70 CPU, can function as a controller for the VersaMax Enhanced E05 as ENIU. In a system that uses a primary and secondary controller, it is not necessary for the controllers to be the same type. User’s Manual 8 / 78 Applied Solutions 2 Ethernet Global Data (EGD) Overview This chapter describes what Ethernet Global Data is and how it operates. ▪ Basic EGD Operation ▪ ENIU Input and Output Exchange configuration ▪ ENIU SVC Exchange configuration Communications Overview The mechanism used for communications between the controller (or two controllers) and ENIUs on the network is the Ethernet Global Data exchange. Ethernet Global Data provides periodic data transfer over an Ethernet network. It supports fast, efficient communications because it is connectionless and is not acknowledged. Caution Because Ethernet Global Data (EGD) communication is connectionless and not acknowledged, it is important to include error-checking and interlocking circuitry in the application to ensure the safety of personnel and equipment in the event that EGD data is lost. Failure to heed this warning could result in injury to personnel and damage to equipment. Ethernet Global Data Exchange Operation In EGD communications, a device (called a producer) shares a portion of its memory contents periodically with one or more other devices (called consumers). This sharing of memory between devices is called an exchange. As illustrated below, each exchange begins with 10 words of NIU status data or CPU control data, followed by up to 1380 bytes of input or output data. The overall maximum length of a single exchange is 1400 bytes. ▪ The E05 as ENIU’s produced data exchanged consists of status data and the input data being sent to the controller. First byte To Master Status 10 words Produced Exchange Data Last byte Discrete and Analog Module Input Data Maximum Input Data Length = 1380 bytes Maximum Total Data Length = 1400 bytes User’s Manual 9 / 78 Applied Solutions ▪ The E05 as ENIUs consumed data exchange consists of control data and output data from the controller. First byte To NIU Control 10 words Consumed Exchange Data Last byte Discrete and Analog Module Output Data Maximum Output Data Length = 1380 bytes Maximum Total Data Length = 1400 bytes Chapter 3 describes the content of the status and control data, and explains how it can be used in the application. Chapter 4 describes how to configure EGD exchanges. If the system includes both a primary and secondary controller, EGD exchanges must be configured for both the primary and secondary controllers. In addition, if the system includes a secondary controller, the E05 as ENIU must be configured for two consumed exchanges. However, the ENIU uses data from only one controller at a time. EGD Exchanges for Faults – SVC_Xchg An Ethernet NIU uses one EGD consumed data exchange and one produced data exchange for Fault Reporting and Clearing. One pair of exchanges is required for each path from the ENIU to the controller(s). The exchange from the ENIU has 24 words of Fault Reporting data. The exchange from the controller has 1 word to acknowledge Fault Report and 1 word to clear faults in the ENIU. First byte To Master SVC_Xchg_from_ENIU_xx Produced Exchange Data Fault data 24 words SVC_Xchg_to_ENIU_xx Consumed Exchange Data Fault acknowledge and clear First byte To NIU Last byte Last byte 2 words The second word in the SVC_Xchg_to_ENIU_xx can be used to clear faults in an individual ENIU. See chapter 9 for details. All other fields in the SVC_Xchgs are used internally by the ENIU and “C” blocks in controllers and do not have fields that need to be accessed. User’s Manual 10 / 78 Applied Solutions 3 EGD Exchanges, Control Words, Status Words, I/O Data Formats, and ENIU System References This chapter describes the content of the data exchanged by the Ethernet NIU and the controller. ▪ System I/O Data References ▪ Data Memory in the Ethernet NIU ▪ ▪ References Used in the Ethernet NIU ▪ Discrete and Analog Outputs in the Ethernet NIU Exchanging Data with One or Two Controllers ▪ ENIU Operation with Two Controllers ▪ ENIU Operation if No Data is Received ▪ Control Data Format ▪ Status Data Format ▪ Using the Control and Status Data ▪ Switching Back to the Primary Controller ▪ Setting Up the Output Defaults ▪ Checking for Faults and Clearing Faults ▪ Using the Optional Application-Specific Command Word System I/O Data References I/O modules are added to the Ethernet NIU configuration and their parameters are configured by the same method they are configured in a PLC system. To a controller, the I/O data it exchanges with Ethernet NIUs on the network is part of its overall I/O system. If the same controller serves multiple Ethernet NIUs and their I/O Stations, each I/O Station MUST use a unique set of Input references and Output references, as shown in the simplified example below (default values from Template Sets are shown). Duplicated Input references for multiple Ethernet NIUs would be overwritten in the controller’s memory. Duplicate Output references would result in the same outputs being used in multiple ENIUs. User’s Manual 11 / 78 Applied Solutions Controller %I from ENIUs %Q1 – 1024 %AI from ENIUs %AQ1 - 256 ENIU 1 ENIU 2 ENIU 3 %I1 – 200 %Q from CTL %AI1 – 128 %AQ1 from CTL %I201-400 %Q from CTL %AI129 - 256 %AQ from CTL %I401 - 600 %Q from CTL %AI257 - 384 %AQ from CTL If an I/O Station has two controllers, the local I/O in each controller could use some or all of the same I/O references. In the illustration below, both controllers use the same local references. Primary Controller Secondary Controller %I1 from ENIUs %Q1 – 1024 %AI from ENIUs %AQ1 - 256 %I1 from ENIUs %Q1 – 1024 %AI from ENIUs %AQ1 - 256 ENIU 1 ENIU 2 ENIU 3 %I1 – 200 %Q from CTL %AI1 - 128 %AQ from CTL %I201 – 400 %Q from CTL %AI129 - 256 %AQ from CTL %I401 – 600 %Q from CTL %AI257 - 384 %AQ from CTL Data Memory in the Ethernet NIU The Ethernet NIU has the following types of data memory: Discrete Input Points - %I 2,048 (fixed) Discrete Output Points - %Q 2,048 (fixed) only 1,024* available in EGD Output exchanges Discrete Global Memory - %G 1280 (fixed) – used internally by ENIU code Internal Coils - %M 1024 (fixed). – used internally by ENIU code Output (Temporary) Coils %T 256 bits (fixed). – used internally by ENIU code System Status References %S 128 bits (%S, %SA, %SB, %SC - 32 bits each) (fixed) Register Memory - %R Default of 10112, up to 32128 Analog Inputs - %AI Default of 2048, up to 32128 Analog Outputs - %AQ Default of 2048, up to 32128 only 256* available in EGD Output exchanges User’s Manual 12 / 78 Applied Solutions * The ENIU continually monitors the EGD Exchanges (“Outputs_xxx_to_ENIUs”) and automatically controls %Q1-1024 and %AQ1-256 from the data it receives or if data is not received it puts these outputs in the commanded state (off, hold last, default). References Used in the Ethernet NIU The references used by the Ethernet NIU for its I/O, status, and control data are assigned during configuration. The configuration steps are explained in chapter 4. The ENIU maps data into its internal memory as shown below. The references shown in italics for status and control data are required for correct operation. Type of Data Ethernet NIU References Discrete Inputs from field devices %I0001 - %I2048 (bits) Discrete Outputs from controller (primary / only) Must be %M0001 - %M1024 (bits) Discrete Outputs from optional secondary controller Must be %G001 - %G1024 (bits) Ethernet Global Data Exchange status (consumed from primary / only controller) Must be %T0001 - %T0016 (bits) Ethernet Global Data Exchange status (consumed from secondary controller) Must be %T0017 - %T0032 (bits) Ethernet Global Data Exchange status (produced by ENIU) Must be %T0033 - %T0048 (bits) Analog Inputs from field devices %AI001 – configuration limit Analog Outputs from controller (primary / only) Must be %R0001 - %R0256 (words) Analog Outputs from optional secondary controller Must be %R0257 - %R0512 (words) ENIU Status data to be sent to controller(s) Must be %R1101 - %R1110 (words) Control Data (from primary / only controller) Must be %R1111 - %R1120 (words) Control Data (from secondary controller) Must be %R1121 - %R1130 (words) Used internally by ENIU %G1029 - %G1280 Used internally by ENIU %T1 - %T256 User’s Manual 13 / 78 Applied Solutions Discrete and Analog Outputs in the Ethernet NIU The ENIU is configured in the EGD consumed exchanges to place the discrete output data it receives from the primary controller into its internal coils (%M) table, and optional secondary controllers into its internal coils (%G) table. It places analog output data from the primary controller and the secondary controller in its register (%R) table. The ENIU will only work properly with up to 1024 discrete outputs and 256 analog outputs and the outputs must go to the data ranges specified (%M1 and %R1 for the exchange from the Primary and %G1 and %R257 for the exchange from the Secondary). The ENIU moves the discrete and analog output data to the %Q and %AQ tables after determining that data is being received from an active controller. If no active controller is available then the ENIU moves zeros, hold last state, or default values to the %Q and %AQ tables as directed by the control bit from the last active controller. Typically, the controller sends the maximum number of outputs (1024 discrete and 256 analog). When the data is received, the ENIU places it in memory beginning at the first reference in each table (for example, %Q0001). The maximum number of outputs does not need to be sent but the location where the outputs start in the ENIU must not be changed. The exchange definitions for both the controller and the Ethernet NIU can be adjusted for improved performance by only transferring the data actually used in the system. Using Multiple Exchanges for Systems with More than 256 Analog Outputs In a system with multiple Ethernet NIUs, it is possible for the total amount of analog output data of all the ENIUs to exceed the 256 word limit of one ENIU. In that case, the controller must produce multiple exchanges to send all the output data. Each exchange can have the same discrete outputs (%Q), but different analog outputs (%AQ). When an Ethernet NIU receives its exchange, it stores the discrete outputs in discrete memory as described above. However, some of the Ethernet NIUs will use different reference addresses for the analog output data than are used in the controller: Exchange 1 Exchange 2 ENIU 1 ENIU 1 Discrete Outputs %M0001 - %M1024 Controller Controller %Q0001 - %Q1024 %R0001 - %R0256 %R0001 - %R0256 %Q0001 - %Q1024 Analog Outputs %AQ001 - %AQ256 %AQ001 - %AQ256 %AQ257 - %AQ512 %M0001 - %M1024 ENIU 2 Discrete Outputs ENIU 2 %AQ257 - %AQ512 %M0001 - %M1024 %R0001 - %R0256 %M0001 - %M1024 Analog Outputs %R0001 - %R0256 Note: the same technique can be used if more than 1024 discrete outputs are required. User’s Manual 14 / 78 Applied Solutions Exchanging Data with One or Two Controllers In addition to the Ethernet NIU’s primary controller, there can also be a secondary controller that provides backup if the primary controller becomes unavailable. Chapter 4 explains how to set up messaging between the ENIU and one or two controllers. ENIU Operation with Two Controllers If the system includes a primary controller and a secondary controller, both controllers regularly send output and control data for the I/O Station, and receive the latest input and status data from the Ethernet NIU. During normal operation, the Ethernet NIU uses the output and control data it receives from its primary controller. However, if the ENIU stops receiving data from the primary controller for the configured timeout period, the ENIU begins using output and control data from the secondary controller instead. After the ENIU has started using data from the secondary controller, it keeps using data from the secondary controller until it receives a command from the primary controller (in the control data portion of the output message) telling it to switch back. The primary controller can also command the Ethernet NIU to switch to the secondary. If the secondary controller is not available, the Ethernet NIU will NOT switch. ENIU Operation if No Data is Received If the Ethernet NIU does not receive output and control data from any controller within the configured timeout period, the ENIU either sets the outputs in the I/O Station to their defaults or holds them in their last states or zeroes the outputs. The choice of how outputs will behave if communications are lost is determined by the output control bits (described later in this section). If the Ethernet NIU has not received output and control data from any controller since the ENIU powered up, the state of the ENIU outputs is normally the default state. It is possible to change this option so that the ENIU outputs are zeroed after powerup if no controller communications have been received. To make this change go, to the variable InitDefaults for the ENIU in CIMPLICITY ME and change the initial value from 1 to 0. Then store to the ENIU. This must be done for each ENIU that is to operate this way. User’s Manual 15 / 78 Applied Solutions Control Data Format The first 10 words of data consumed by the Ethernet NIU are control data. They determine the behavior of outputs if communications are lost, and can be used to clear faults. In addition, if there are two controllers, the control data determines which of the controllers will supply the I/O Station outputs. Bit 0 Not Used, set to 0 Bit 1 Enable Hold Last State Mode Bit 2 Enable Set Outputs to Defaults Mode Bit 3 Switch to Primary Controller Bit 4 Switch to Backup Controller Bit 5 Not Used, set to 0 Bit 6 Not Used, set to 0 Bit 7 Clear Faults Bit 8 Copy of %S33, PRI_UNT Bit 9 Copy of %S34, SEC_UNT Bit 10 Copy of %S35, LOC_RDY Bit 11 Copy of %S36, LOC_ACT Bit 12 Copy of %S37, REM_RDY Bit 13 Not Used with E05 as ENIU Bit 14 Not Used with E05 as ENIU Bit 15 Reserved must be 0 Bits 8-12 used with Redundant Controllers 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 3 4 5 6 7 8 9 10 11 12 13 14 15 Word 1: Control Data 0 1 2 Word 2: Available for Use by Application Words 3 – 10 should be set to zero The application program in the controller(s) is responsible for correctly setting the content of this control data as described in the following table. Unused words should be set to zero. User’s Manual 16 / 78 Applied Solutions Control Data Definitions Enable Hold Last State Mode:* Set this bit if outputs in the I/O Station should hold their last commanded state when communications are lost. For systems with two controllers, this bit should be the same in both the primary and secondary controller exchanges. Enable Set Outputs to Default Mode: * Set this bit if outputs in the I/O Station should go to their configured defaults when communications are lost. If this bit is set, bit 1 (Hold Last State) is ignored. For systems with two controllers, this bit should be the same in both the primary and secondary controller exchanges. Switch to Primary Controller: If the secondary controller is presently controlling the NIU and providing output data for the I/O Station, the primary controller must set this bit to regain control of the I/O Station. See “Switching Back to the Primary Controller” below for additional steps that are necessary to return to normal operation with the primary controller. Switch to Secondary Controller: If the primary controller is presently controlling the NIU and providing output data for in the I/O Station, it can switch control to the secondary by setting this bit. If this bit is set, bit 3 (Switch to Primary) should NOT be set. If the secondary controller is not present, the switch will not occur. Clear Faults: Setting this bit clears all faults in ALL Ethernet NIUs that receive the same exchange. In a system with two controllers, only the exchange from the currently-active controller is used to clear faults. ENIUs clear fault when this bit goes high (when ENIU sees a rising edge). Bits 8-12 When redundant controllers are used, the ENIU uses these bits to determine the Active and Standby controllers Word 2, Available to Application: The application program in the controller(s) can optionally use word 2 as described later in this section. * See the section on setting up the output defaults. User’s Manual 17 / 78 Applied Solutions Status Data Format The 10 words of status data sent by the Ethernet NIU provide the controller(s) with information about output and fault status in the format shown below. The application program in the controller(s) should continually monitor this status data from the ENIU. Bit 0 Bit 1 Bit 2 Bit 3 Bit 4 Bit 5 Bit 6 Bit 7 Bit 8 Bit 9 Bit 10 Bits 11–15 0 1 2 3 4 Outputs being controlled Primary has Hold Last State Mode enabled Primary has Set Outputs to Defaults Mode enabled Primary in Control Secondary in Control Reserved Reserved Faults Exist Reserved Secondary has Hold Last State Mode enabled Secondary has Set Output to Defaults Mode enabled Not Used 5 6 7 8 9 10 11 12 13 14 15 5 6 7 8 9 10 11 12 13 14 15 13 14 15 Word 1: Status and Fault Data O 1 2 3 4 Word 2: Copy of Control Data Word 2 (Application-based) from Primary Controller 0 1 2 3 4 5 6 7 8 9 10 11 12 Word 3: Copy of Control Data Word 2 (Application-based) from Secondary Controller Words 4 - 10: Reserved Status Data Definitions Outputs Being Controlled: Set if the I/O Station outputs are being controlled from the application program, and are not defaulted or in Hold Last State mode. If this bit is set, bits 1 and 2 should NOT be set. Controller has Hold Last State Mode Enabled: The ENIU sets bits 1 and 9 to mirror the present Hold Last State control bit being received from the primary controller and the secondary controller Controller has Set Outputs to Defaults Mode: The ENIU sets bits 2 and 10 to mirror the present Outputs Default control bit being received from the primary controller and the secondary controller. Primary in Control: Set when the primary controller is presently controlling the NIU and providing output data for the I/O Station. If this bit is set, bit 4 (Secondary in control) should NOT be set. Secondary in Control: Set when the secondary controller is presently controlling the NIU and providing output data for in the I/O Station. If this bit is set, bit 3 (Primary in Control) should NOT be set. Faults Exist: Set when any fault exists in the Ethernet NIU. Words 2 & 3, Copy of Optional Control Data The ENIU mirrors the content of word 2 of the control data in these status words. If the ENIU is receiving outputs from the primary controller, status word 2 has content. If the ENIU is receiving outputs from the secondary controller, status word 3 has content. User’s Manual 18 / 78 Applied Solutions Using the Control and Status Data The application program in the controller(s) should monitor the Ethernet NIU status data, and use the control data to interact with the NIU. Switching Control Back to the Primary Controller When the Ethernet NIU is using output data from the secondary controller, the application program in the primary controller must follow the steps below to regain control of the ENIU. 1. Start up with bit 3 reset. 2. Synchronize the program state with data from the secondary controller (this happens automatically with redundant controllers). 3. Set bit 3 ( “Switch to Primary Controller”) of the control data going to the ENIU. 4. The primary controller must then reset the bit 3 to 0 when all Ethernet NIUs report “primary in control” in their input status data. Setting Up the Output Defaults If the Ethernet NIU does not receive any communication with the controller(s) within the configured timeout period, it sets the outputs in the I/O Stations to specified states. These output states are determined by commands previously received in the output data control bits. Bit 1 Bit 2 0 1 2 3 4 5 6 7 8 Enable Hold Last State Mode Enable Set Outputs to Defaults Mode 9 10 11 12 13 14 15 Word 1: Control Data If control bit 1 is set to 1, the ENIU will hold the outputs at their last commanded state. If control bit 2 is set to 1, the ENIU will set outputs to their individual default state (see below). Bit 2 takes precedence; if both bits 1 and 2 are inadvertently set, the ENIU sets outputs to their default states. If control bits 1 and 2 are both 0, outputs are set to 0. When the Ethernet NIU has both primary and secondary controllers, control bits 1 and 2 should be set the same by both. If they are not the same, the Ethernet NIU will use the values it received from the last controller that provided outputs before communications were lost. User’s Manual 19 / 78 Applied Solutions Specifying Individual Output Defaults If the control outputs are set to have the outputs default instead of hold last state, ordinarily all outputs will default to zero. If that is suitable for the application, no further action is needed. However, for some applications taking outputs to a safe state requires setting them to one or forcing analog outputs to individually-specified values. An optional procedure can be used to set up defaults for the Ethernet NIU. Use of this procedure is described in appendix A. Checking for Faults and Clearing Faults See chapter 5 for details. User’s Manual 20 / 78 Applied Solutions Using the Optional Application-Specific Command Word The word 2 of the command data can be used by the controller for several purposes. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 3 4 5 6 7 8 9 10 11 12 13 14 15 Word 1: Control Data 0 1 2 Word 2: Available for Use by Application Words 3 – 10 should be set to zero Setting Up a Heartbeat For example, the controller could use a free-running counter as a heartbeat for the value of this word, then check the incoming Ethernet NIU status block to make sure the ENIU is still running. In redundant applications, each controller could check the other controller’s heartbeat to determine whether the other controller is operating. Sequencing Outputs This word could also be used to sequence outputs. The controller would set the outputs to a particular state and set the sequence number in the command data. When the Ethernet NIU returns the same sequence number in its status data, the controller knows that the ENIU has received the outputs. The controller can then take the next step in the sequence. Checking the Status of the Heartbeat / Sequence The primary controller’s heartbeat/sequence ID word is returned in the second word of the ENIU status block. The secondary controller’s heartbeat/sequence ID word is returned in the third word of the ENIU status block. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 5 6 7 8 9 10 11 12 13 14 15 13 14 15 Word 1: Status and Fault Data O 1 2 3 4 Word 2: Copy of Control Data Word 2 (Application-based) from Primary Controller 0 1 2 3 4 5 6 7 8 9 10 11 12 Word 3: Copy of Control Data Word 2 (Application-based) from Secondary Controller Words 4 - 10: Reserved User’s Manual 21 / 78 Applied Solutions 4 Setting Up a System using a Template Set: Simplex or Duplex Controllers and One LAN ▪ Single and Dual Controller Architectures ▪ Template Sets Overview ▪ Considerations for Setting up an ENIU System ▪ Redundant Controller Considerations ▪ Point Fault/Data Quality Feature ▪ How Certain Operational Features are Set up in the Templates ▪ EGD Timing for the Project Templates Single and Dual Controller Architectures This chapter summarizes the steps for setting up a system that has a single controller or dual controllers (either RX7i or RX3i) and a single LAN to the Ethernet NIUs. Simplex Controller – Single LAN Rx7i Rx7i or or Rx3i Ethernet Switch Single LAN Simplex Star Rx3i Self-healing Fiber Ring VLAN Support Single LAN Simplex Fiber Ring Note: This manual does not cover setting up the Ethernet architecture or topology. Figures showing the Ethernet architecture are shown to indicate possible architectures. User’s Manual 22 / 78 Applied Solutions Duplex Controller Single LAN Rx7i RMX Sync or Rx7i RMX Sync or RX3i RMX Sync RX3i RMX Sync Ethernet Switch Single LAN Duplex Controller Star Architecture Self-healing Fiber Ring VLAN Support Single LAN Duplex Controller Fiber Ring Architecture Note: This manual does not cover setting up the Ethernet architecture or topology. Figures showing the Ethernet architecture are shown to indicate possible architectures. Template Sets Overview Template Sets are provided on the GE Fanuc support Web site as the mechanism to set up systems using E05s as ENIUs. Using the Template Sets is the easiest and most efficient way to set up a system using E05s as ENIUs. The Template Sets can be found on the GE Fanuc support website under Developer Downloads, Applied Solutions Choosing the Template Set. Step 1 – Is this a Proficy Machine Edition (PME) project or a Proficy Process System (PPS) project. Step 2 – Is there a single controller or redundant controllers. Step 3 – How many E05 ENIUs are in the system (including expansion) Choose the Template set that is for PME or PPS, has single or redundant controllers, and has more E05 ENIUs than the application needs. The extra E05 ENIUs will be deleted. The template set contains a project for the controller(s) and one or more projects for the ENIUs. The template set includes all EGD Exchanges between the controller(s) and the ENIUs. It is preconfigured to operate with 1024 discrete outputs and 256 analog outputs to be shared by the set of ENIUs. The template set is preconfigured to work with 200 discrete inputs and 128 analog inputs from each ENIU. If your application will work within these preconfigured I/O sizes, it is recommended that you User’s Manual 23 / 78 Applied Solutions use the preconfigured sizes. Changing the defaults to work with more I/O is described later in this chapter. Creating a project folder After downloading a template, either duplicate or do a SaveAs of the template folder. Rename the duplicate or SaveAs folder to the folder name for your application. Save the downloaded template as a model to refer to as you develop your application. Changing the Number of ENIUs in the Controller(s) The templates come with a particular number of ENIUs. The template chosen should have more than the number of ENIUs the application requires or the exact number of ENIUs the application requires (including any planned expansion). Rung 5 of the ENIU_Interface block in the controller is where the Number of ENIUs is set. Change the Constant in the Input to the MOVE_INT block in Rung 5. The example below shows 10 as the Constant. If there are extra ENIUs that are not needed (including planned expansion) they can be deleted. Any exchanges in the controller(s) for deleted ENIUs can also be deleted. Do NOT delete any symbolic variables, even symbolic variables associated with ENIUs that have been deleted. User’s Manual 24 / 78 Applied Solutions Determine Ethernet Settings. Determine the Ethernet setting for the controllers and ENIUs. IP Address and Subnet Mask for Ethernet interface in the controller that will communicate with the Ethernet NIUs. Note: Redundant IP is not used for communication to the ENIUs. IP Address for any additional Ethernet interfaces in the controller(s), including IP Address, Subnet Mask, Gateway Address, Redundant IP Address (if used) and any other Ethernet options that may be used. IP Address and Subnet Mask for Ethernet interface in each ENIU. At this point if a Template Set that has been downloaded from the GE Fanuc support Web site, and Ethernet addresses have been entered in the configurations. The I/O communication between the controller(s) and ENIU(s) will be functional after a store is performed to the controller(s) and ENIU(s). Decide how faults in the ENIUs will be handled. The default method is for the ENIU to send non-fatal faults to the controller(s) and for the “C” block “ENIU_Faults” in the controller to put the faults in the controller’s PLC Fault Table. Optionally, the sending of faults to the controller can be disabled and the faults can then be viewed/cleared by connecting the programmer to the ENIU. See Chapter on Diagnostics for more details on how to work with faults and the Fault Tables. Modifying the amount of Outputs sent to the ENIUs (if necessary). The default quantity of Outputs is 1024 %Q and 256 %AQ. These outputs are shared by all of the ENIUs in the system. If a smaller quantity of Outputs is all that is required, it is recommended that the default quantity by used. If a larger quantity of Outputs is required an additional Output Exchange can be added to the controller(s). The existing Output exchange (Outputs_xxx_to_ENIUs) will be used to deliver %Q1 to %Q1024 and %AQ1 to %AQ256 to half of the ENIUs. The new Output exchange (Outputs2_xxx_to_ENIUs) will be used to deliver %Q1025 to %Q2048 and %AQ257 to %AQ512 to the second half of the ENIUs. See detailed steps to add Outputs2_xxx_to_ENIUs later in this chapter. How Outputs get used in the ENIU. The Output exchange delivers all the discrete and analog outputs to all the ENIUs that receive the exchange. To use the outputs in an ENIU, simply configure an Output module using the addresses of the outputs. User’s Manual 25 / 78 Applied Solutions Modifying the amount of Inputs sent from the ENIUs to the controller(s) (if necessary). The default quantity of Inputs in the template sets is 200 %I and128 %AI from each ENIU. The number of inputs should be determined including any needed spares. The IO Mapping is given in the following table. If all of your ENIUs have less than 200 %I and less than 128 %AI (including spares), the preconfigured input mapping should be used. ENIUs with No Discrete or No Analog Inputs If an ENIU has no Discrete or no Analog Input the data ranges in the EGD exchange for the discrete or analog inputs can be deleted. In addition the value of the array dimension for the symbolic variable in the controller needs to be set to zero. See example on changing number of inputs later in this chapter. Note: The EGD Input Exchange must not be deleted, the controller(s) uses it to determine if the communication to the ENIU is working. ENIU with no Inputs and only Outputs If an ENIU has no Inputs and only Outputs, the data ranges in the EGD exchange for the discrete and analog inputs can be deleted, but the Exchange MUST NOT be deleted. The controller uses the 10 Status Words in the exchange to determine the health of the communication with the ENIU. In addition the value of the array dimension for the symbolic variables for the inputs in the controller need to be set to zero. See example on changing number of inputs later in this chapter. How the inputs from the ENIUs are addressed in the controller(s). The EGD Input exchanges move the inputs from the ENIUs to the controllers. The software of the controller(s) uses the EGD Input exchange configuration to determine the number of inputs from each ENIU and packs the inputs consecutively in the appropriate input table (%I, %AI). No spaces are left between the inputs from the ENIUs. If at a later time the number of inputs from an ENIU changes it will affect the address where inputs from all ENIUs with a higher number will be placed in the controller Input table. For this reason the number of inputs from each ENIU should be carefully considered, including any spares that may be needed in the future. The Template sets are configured with the Input addresses in the EGD exchanges so that the inputs in the ENIU have the same reference table address that they will have in the controllers for the first 10 ENIUs, for the next 10 ENIUs the reference numbers repeat in the ENIUs. This is done because the E05 only has 2048 %I references (see the IO Mapping Table). Input Modules in an ENIU must have their reference addresses in the range of input addresses that are sent to the controllers(s) in the EGD Input Exchange. User’s Manual 26 / 78 Applied Solutions Preconfigured I/O Mapping in E05 as ENIU Template Sets Discrete Inputs Analog Inputs Discrete Outputs ENIU_01 %I001 to %I200 %AI001 to %AI128 ENIU_02 %I201 to %I400 %AI129 to %AI256 ENIU_03 %I401 to %I600 %AI257 to %AI384 %Q0001 to %Q1024 and %AQ001 to %AQ256 are sent from the controller and received by all ENIUs Any reference address can be used in any ENIU ENIU_04 %I601 to %I800 %AI385 to %AI512 ENIU_05 %I801 to %I1000 %AI513 to %AI640 ENIU_06 %I1001 to %I1200 %AI641 to %AI768 ENIU_07 %I1201 to %I1400 %AI769 to %AI896 ENIU_08 %I1401 to %I1600 %AI897 to %AI1024 ENIU_09 %I1601 to %I1800 %AI1025 to %A1152 ENIU_10 %I1801 to %I2000 %AI1153 to %AI1280 ENIU_11 %I001 to %I200 %AI001 to %AI128 ENIU_12 %I201 to %I400 %AI129 to %AI256 ENIU_13 %I401 to %I600 %AI257 to %AI384 ENIU_14 %I601 to %I800 %AI385 to %AI512 ENIU_15 %I801 to %I1000 %AI513 to %AI640 ENIU_16 %I1001 to %I1200 %AI641 to %AI768 ENIU_17 %I1201 to %I1400 %AI769 to %AI896 ENIU_18 %I1401 to %I1600 %AI897 to %AI1024 ENIU_19 %I1601 to %I1800 %AI1025 to %A1152 ENIU_20 %I1801 to %I2000 %AI1153 to %AI1280 Analog Outputs As an example: ENIU #1 sends %I00001 to %I00200 in an EGD exchange to the controller(s) and the EGD exchange in the controller(s) puts the data in %I00001 to %I00200. ENIU #2 sends %I00201 to %I00400 in an EGD exchange to the controller(s) and the EGD exchange in the controller(s) puts the data in %I00201 to %I00400. Note: If word data (%R or %W) needs to be sent from ENIUs to the controller(s) the word data can be sent as part of the %AI data by moving the word data into the %AI addresses sent to the controllers or an additional data range can be added to EGD exchanges to send data to the controller(s) (see the example later in this chapter), or Changing the number of inputs from an ENIU Inputs are sent from the ENIU to the controller(s) in the EGD Exchange “Inputs_from_ENIU_xx”. where xx is the ENIU number. User’s Manual 27 / 78 Applied Solutions To change the number of inputs from an ENIU the following changes need to be made: Change the amount of I/O in the Produced EGD exchange “Inputs_from_ENIU_xx” in the ENIU target. The input address in every higher numbered ENIU must be adjusted to reflect the change made to the input size. The controller end will adjust the addressing automatically. In the controller the inputs in the consumer EGD exchange “Inputs_from_ENIU_xx” are placed in a symbolic variable. The array dimension of the symbolic variable needs to be changed to the new length. In addition if redundant controllers are used, in addition to the array dimension of the input symbolic variable being changed, the array dimension of the xfer_pri and xfer_sec symbolic variables must also be changed. Example of changing the amount of input points This example shows the steps to change the amount of discrete inputs in ENIU01 from the default 200 to 320 in a system with 2 ENIUs. Step1 Change the ENIU_01 Produced exchange Existing default exchange Modified exchange – length of discrete inputs changed to 320 User’s Manual 28 / 78 Applied Solutions Step 2 Change ENIU_02 Produced exchange for new reference address Existing default exchange Modified exchange – reference address changed from %I00201 to %I00321 Note: If the application has more than 2 ENIUs, all higher numbered ENIUs must have their produced exchange modified with corrected reference addresses. Step 3 – Change the Array Dimension in the Controller The existing default value for the array dimension of the discrete inputs in the exchange “Inputs_from_ENIU_01” User’s Manual 29 / 78 Applied Solutions The array dimension changed to 320. Note the length in the EGD exchange will change automatically when the array dimension is changed. Step 4 – Change Array dimension for Xfer Variables (Only for Redundant Controllers) The default value (200) of array dimension of “ENIU01_Xfer_Pri_InputsDiscrete” The array dimension of “ENIU01_Xfer_Pri_InputsDiscrete” set to 320 User’s Manual 30 / 78 Applied Solutions The array dimension of variable ENIU01_Xfer_Sec_InputsDiscrete also needs to be changed in the same way. The new setup with more discrete inputs from ENIU01 can now be stored to the controller(s) and ENIUs. The output status of the Call to the Input_Processing “C” block should be checked. The status should have a value of 1. If the status is not 1 there is an error and inputs are not being received by the controller program. The list of the error codes can be found later in this chapter. The Call to Input_Processing_xxx is found in the ENIU_Intferface_xxx block at rung 11. Checking the location of Inputs in the Controller(s) The variable “eniuoffsetarray” displays the starting address for inputs from each ENIU. To check the location of the inputs: The program must be stored to the controller The controller must be running (ENIU do not need to be connected) Input_Processing status must be 1 Open a Watch window and add the variable eniuoffsetarray. Click the + to expand the array. eniuoffsetarray is a two dimension array. The first dimension in the ENIU number. The second dimension is of length 4 and has the starting addresses of the inputs [eniunumber],[0] is the starting address for discrete inputs for the ENIU [eniunumber],[1] is the starting address for analog inputs for the ENIU [eniunumber],[2] is the starting address for more discrete inputs for the ENIU [eniunumber],[3] is the starting address for more analog inputs for the ENIU User’s Manual 31 / 78 Applied Solutions Do NOT change the array dimensions for the variable eniuoffsetarray. If the array size is changed either the program will not store or the controller will fault. eniuoffsetarray in a Watch Window looks like this ENIU01 Discrete starting address %I1 ENIU01 ENIU02 Discrete starting address %I201 ENIU02 This figure shows ENIUs 1-5 with default values for the inputs. More Inputs are not used in this example. See the section later in this chapter on the Input_processing block for more information on more inputs. User’s Manual 32 / 78 Applied Solutions Considerations for Setting up an ENIU System This section discusses some choices to consider on how an ENIU system is setup. Control by Standby Controller in a Redundant Controller Application There are options to have the ENIUs only “Receive Outputs from the Active controller”. If this option is selected and the ENIU is not receiving Outputs from the Active controller, the ENIU treats this situation the same as losing communication with both controllers. The following cases explain the choices on how to handle the situation where one or more ENIUs are receiving their Outputs from the standby controller. There are multiple cases to consider. Case 1: Both controllers have communications with all ENIUs (this is the same as all ENIUs that are powered up and in Run mode). One or more ENIUs are using the Output Exchanges from the standby controller. This case is likely to happen. This can happen for a number of reason, the communications to the Active controller could drop out for a short time, a ENIU could power up while the secondary controller is active, etc. The Inputs from the ENIUs are going to both controllers. The Standby controller receives the values for the Outputs from the Active control over the Reflective Memory (RMX) link between the controller and sends the Outputs values it receives from the Active controller to the ENIUs The system will continue to run fine with all ENIUs receiving Outputs and the controllers receiving Inputs from all ENIUs. If the “Receive Outputs from the Active controller” option has been enabled, and ENIU using Outputs from the Backup Controller will behave as if the communication to both controllers has been lost. The recommended action is to issue a command from the controllers to have all ENIUs use the Output Exchange from the Active Controller. The reason for this recommendation is to avoid the situation of one or more ENIUs receiving outputs from the Standby controller when the communication to the active controller is not working. See case 2 for a discussion of this case. User’s Manual 33 / 78 Applied Solutions Case 2: Standby controller has communications with all ENIUs (this is the same as all ENIUs that are powered up and in Run mode). Active Controller can only communicate with some of the ENIUs. One or more ENIUs are using the Output Exchanges from the standby controller. This case is not very likely to happen, depends on the Ethernet Architecture. This can happen if an intermediate Ethernet Switch is down or if certain Ethernet cables are disconnected. The Inputs from the ENIUs that can only communication with the Standby controller are the area of concern. Remember from Case 1, the Outputs are transferred from the Active Controller to the Standby Controller. That is what is happening, but the Outputs generated by the Active Controller are generated without the Inputs being updated. There are choices to be made: “Receive Outputs from the Active controller” could be used (needs to be set up in the configuration and cannot be changed while the system is running). If “Receive Outputs from the Active controller” is used then the Outputs in the ENIUs that are only communicating with the Standby Controller will be treated as if there is no communication to a controller. A command can be sent from the controllers to tell all the ENIUs to take their Outputs from the Standby Controller. The Controller logic program can command a Role Switch to make the Standby Controller the Active Controller. The recommendation is to either use “Receive Outputs from the Active controller” or command a role switch to make the Standby Controller the Active Controller. User’s Manual 34 / 78 Applied Solutions Case 3: Active Controller can communicate with some but not all ENIUs. Standby Controller can communicate with some but not all ENIUs. Both Controllers can communicate with some ENIUs but neither Controller can communicate will all ENIUs. This case is likely to happen, one case is the loss of a port in an Ethernet switch. No matter which controller is Active there are some ENIUs that will get their Outputs from the Standby Controller. The Outputs are solved in the Active Controller and transferred to the Standby Controller. The Outputs are solved without the Input from the ENIUs that the Active Controller can not communicate with. There are choices to be made: “Receive Outputs from the Active controller” could be used (needs to be set up in the configuration and cannot be changed while the system is running). If “Receive Outputs from the Active controller” is used then the Outputs in the ENIUs that are only communicating with the Standby Controller will be treated as if there is no communication to a controller. A command can be sent from the controllers to tell all the ENIUs to take their Outputs from the Standby Controller. This just moves the problem and does not fix it. The Controller logic program can command a Role Switch to make the Standby Controller the Active Controller. This just moves the problem and does not fix it. The recommendation is to use “Receive Outputs from the Active controller”. User’s Manual 35 / 78 Applied Solutions Addressing of SVC Exchanges All EGD Exchanges between the controller(s) and the ENIUs are multicast, which means they are sent to a group address. Each ENIU must have a different Group for the SVC exchange(s) it receives from the controller(s). This is done to decrease the Ethernet communication load on each ENIU, which maximizes the performance of the system. Note: All ENIUs use the same Group for the SVC exchange they produce. All ENIU use Group address 32 for the “SVC_Xchg_from_ENIU_xx” exchange Table of Group numbers for “SVC_Xchg_to_ENIU_xx” exchange ENIU Number SVC_Xchg_to_ENIU_xx ENIU Number Group Number SVC_Xchg_to_ENIU_xx Group Number 01 11 11 21 02 12 12 22 03 13 13 23 04 14 14 24 05 15 15 25 06 16 16 26 07 17 17 27 08 18 18 28 09 19 19 29 10 20 20 30 User’s Manual 36 / 78 Applied Solutions EGD Addresses for Multiple Systems on one Ethernet System If multiple ENIU systems are placed on the same Ethernet sub-network, great care must be taken with the Group numbers that are used in the ENIUs. Caution Improper choice of group numbers will cause the Ethernet performance of the ENIUs to be degraded which can result in communication timeouts and Outputs in the ENIUs being set to their command state for a loss of communication. The table below list the recommendation for how Group addresses should be assigned if multiple E05 ENIU systems are placed on the same Ethernet sub-network 1st system use Default Group #s Suggested Group #s for 2nd System Suggested Group #s for 3rd System Inputs_from… 2 4 6 Outputs_to… 1 3 5 SVC_Xchg_from… 32 9 8 ENIU# +10 Must be unique group numbers that are not used anywhere else Must be unique group numbers that are not used anywhere else Exchange Name SVC_Xchg_to… Note: Group numbers have a range of 1 to 32 Run Mode Store of Ethernet Global Data to the Ethernet NIU Logic Developer version 5.8 and later includes a Run Mode Store property for Ethernet Global Data exchanges, as shown in the illustration of the Inspector window on the previous page. By default, the Run Mode Store property is set to False. It should NOT be changed for most Ethernet NIU applications. Run Mode Store for Ethernet Global Data is not supported for redundancy systems. It is always possible to add new Ethernet Global Data exchanges in a Run Mode Store without setting the Run Mode Store property to True. Also, programmer-generated Ethernet Global Data exchanges in PPS applications can always be modified in a Run Mode Store, whether or not Run Mode Store is enabled in the exchange configuration. Caution The Ethernet NIU uses Ethernet Global Data to exchange input and output data for the I/O modules in the station with one or more CPUs. Modifying an Ethernet Global Data exchange in the Ethernet NIU using Run Mode Store can cause a bump in data transfer, or possibly take the exchange offline. It is important to understand the risk of data loss when making a Run Mode Store change to Ethernet Global Data. User’s Manual 37 / 78 Applied Solutions After careful consideration of the consequences, individual exchanges can be configured to allow modification or deletion in a Run Mode Store. Use of this feature requires an Ethernet NIU with revision 5.50 or later NIU firmware and revision 5.50 or later Ethernet firmware. The Ethernet Transmitter Module in the I/O Station must also support Run Mode Store of Ethernet Global Data (firmware revision 5.50 or later is required). Effect of a Run Mode Store on EGD Operation Changes to the Ethernet Global Data in the Ethernet NIU must correspond to changes made in the CPU(s). It is important to be aware that the Ethernet NIU and CPU(s) will NOT receive and apply new EGD configurations simultaneously. Performing a Run Mode Store does not stop the production or consumption of existing exchanges that have not been modified. Changes implemented with a Run Mode Store of Ethernet Global Data take effect while the Ethernet NIU is running - no stop is required. Added exchanges will start consumption or production shortly after the activation of any logic that is part of the Run Mode Store sequence. The Ethernet NIU does not use EGD signatures (if EGD signatures are enabled in the controller, they are ignored by the Ethernet NIU). After a Run Mode Store, the Ethernet NIU can only determine the compatibility of a modified Ethernet Global Data exchange that it consumes by the checking the length of the exchange. If the length does not match, the Ethernet NIU stops consuming the exchange. A store to update the corresponding producer/consumer is needed to resume consumption of the exchange. User’s Manual 38 / 78 Applied Solutions Redundant Controller Considerations Switching Logic Switching logic is provided in CRE and CRU Controller templates. Switching conditions are generated in the ladder block ENIUs_Ctrl_Check. The switching conditions are solved in the block ENIUs_Interface. The basic operation of the switching logic is: When an Ethernet NIU is powered up, the Ethernet NIU defaults to the Primary Controller. The application can use the switching logic to request that the Ethernet NIUs use the Secondary controller when it is the Active Controller. Transfer of controller causes the Ethernet NIU to follow the other controller using the same LAN as used before. The switching logic can be customized for the application by revising the logic in the block ENIUs_Interface. There are two rungs with a similar structure, which are used for switching to primary controller LAN A, or secondary controller LAN A. The following control signals control switching between the controllers: ControlWords_LANA_B[0].X[3], ControlWords_LANA_B[0].X[4], The logic controlling these coils can be modified as needed. User’s Manual 39 / 78 Applied Solutions Predefined Signals for Custom Switching Logic The following predefined signals are available for use in any custom switching logic or HMI application. These signals are in addition to the standard system variables (# variables) that are available in controller applications. See GFK-2222 PACSystems CPU Reference Manual and GFK-2308 PACSystems Hot Standby CPU Redundancy Manual for more details on system variables. Signal Name Description ENIUxx_on_PriA ENIUxx_on_SecA ENIUxx is being controlled by primary controller on LAN A ENIUxx_CommOK_PrimaryA ENIUxx_CommOK_SecondaryA ENIUxx communication good to primary controller on LAN A ENIUxx_Flt Ctl_by_Standby No communication to ENIUxx NoENIUonPriLANA No Ethernet NIUs are being controlled by primary controller on LAN A NoENIUonSecLANA No Ethernet NIUs are being controlled by secondary controller on LAN A ENIUonPriLANA At least one Ethernet NIU is being controlled by primary controller on LAN A ENIUonSecLANA At least one Ethernet NIU is being controlled by secondary controller on LAN A Pri_New_Mstr Sec_New_Mstr Operation has switched to the primary controller StatusWords_LANy_ENIU_xx 10 words of status data sent by Ethernet NIU to controller(s) ** ENIUxx is being controlled by secondary controller on LAN A ENIUxx communication good to secondary controller on LAN A Standby controller only – Standby controller in controlling one or more Ethernet NIUs Operation has switched to the secondary controller ** See chapter 3 for information on the ten words of status data sent by the Ethernet NIU to the controller(s) User’s Manual 40 / 78 Applied Solutions Dedicated Signals Certain signals should not be either deleted or renamed. These signals must be marked as Publish in their properties. Renaming, deleting or marking Publish as false will cause a failure when the program is downloaded to the controller. These signals are available for use in any custom switching logic or HMI annunciation. Signal Name Signal Name Signals for each Ethernet NIU (indicated by xx) and both LANs (indicated by y) ENIUxx_LAN_y_InputsDiscrete InEx_Status_LANy_ENIU_xx ENIUxx_LAN_y_InputsAnalog StatusWords_LANy_ENIU_xx ENIUxx_LAN_y_InputsRegister SVC_In_Status_LANy_ENIU_xx ENIUxx_LAN_y_Xtra_InputsAnalog SVC_Out_Status_LANy_ENIU_xx ENIUxx_LAN_y_Xtra_InputsDiscrete Fltdata_LANy_ENIUxx ENIUxx_LAN_y_Xtra_InputsRegister RCC_Response_LANy_ENIUxx ENIUxx_Xfer_Pri_InputsDiscrete ENIUxx_Xfer_Sec_InputsDiscrete ENIUxx_Xfer_Pri_InputsAnalog ENIUxx_Xfer_Sec _InputsAnalog ENIUxx_Xfer_Pri_InputsRegister ENIUxx_Xfer_Sec_InputsRegister ENIUxx_Xfer_Pri_Xtra_InsAnalog ENIUxx_Xfer_Sec_Xtra_InsAnalog ENIUxx_Xfer_Pri_Xtra_InsDiscrete ENIUxx_Xfer_Sec_Xtra_InsDiscrete ENIUxx_Xfer_Pri_Xtra_InsRegister ENIUxx_Xfer_Sec_Xtra_InsRegister ENIUxx_Xfer_Pri_StWords ENIUxx_Xfer_Sec_StWords Signals for each Ethernet NIU (indicated by xx) RCC_Request_ENIUxx fltbuf_eniu_xx Fltack_ENIUxx fltptr_eniu_xx ENIUxx_Register_Data ENIUxx_Register_Xtra_Data Signals for both LANs (indicated by y) OutEx_Status_LANy Signals common to all Ethernet NIUs and both LANs ControlWords_LANA_B Sw_Pri_A Eniuoffsetarray Sw_Pri_B LANA_LSW Sw_Sec_A LANB_LSW Sw_Sec_B User’s Manual 41 / 78 Applied Solutions Point Fault/Data Quality Feature If enabled, Discrete and Analog inputs have a property known as Point Faults References. PPS Systems data quality uses the Point Fault feature of the PACSystems controller. Refer to Proficy Process System documentation for use of Data Quality feature with in PPS Controller Function Block. See GFK-2222 PACSystems CPU Reference Manual for more details on Point Faults. Enabling Point Fault References Point Faults are always enabled in a PPS System. In a non-PPS System, the Point Faults feature is disabled by default and if needed must be enabled as shown below. Operation of Point Fault References When communication to an Ethernet NIU is lost, the CPU sets Point Faults for all %I and %AI inputs from that ENIU. When communication to an Ethernet NIU is restored and inputs are received the CPU clears Point Faults for all %I and %AI inputs from that ENIU. The setting/clearing of Point Fault data is performed by the Input_Processing block. User’s Manual 42 / 78 Applied Solutions Adding “Outputs2_xxx_to_ENIU” Exchange Adding a second produced exchange from the controllers allow the number of Outputs to be increased up to double (2048 %Q, 512 %AQ). %Q1 to %Q1024 and %AQ1 to %AQ256 are transmitted in the “Outputs_xxx_to ENIU” exchange which is received by some of the ENIUs (usually half). %Q1025 to %Q2048 and %AQ257 to %AQ512 are transmitted in the “Outputs2_to ENIU” exchange that is received by the remained of the ENIUs. Note that the Outputs in these ENIU show up in %Q1 to %Q1024 and %AQ1 to %AQ256 and this cannot be changed. Outputs2_to_ENIUs is created as a new Produced Exchange in the controllers(s) and is set up as shown in the figure. The Exchange ID and Destination must be set as shown in the Inspector window of the figure. The Produced Period and Consumption Timeout for “Outputs2_to_ENIUs” should be set the same as the respective values for “Outputs_to_ENIUs” Note: If redundant controllers are used the Produce in Backup Mode parameter will be in the Inspector window and must be set to True. User’s Manual 43 / 78 Applied Solutions In each ENIU that will receive the “Outputs2_xxx_to_ENIUs” exchange the existing “Outputs_xxx_to_ENIUs” exchange must have the ExchangeID and Destination changed as to match what the controller is using in the produced exchange This figure shows the setting from the Primary controller. For the exchange from the Secondary controller in a redundant system the Exchange ID will be 1002. Adding Data to Input Exchanges In addition to input data, the Ethernet NIU can send back other data to the controller(s). For example, intelligent modules or local logic in the I/O Station can produce data that is needed in the controller. There are two ways to send this additional data to the controller: Another data range can be added to the Inputs_from_ENIU_xx exchange. Local_User_Logic can move the data into unused portions on the %I or %AI data ranges. For example, the following Ethernet Global Data Exchange for ENIU_01 has ten input register words (%R15001-10) assigned for extra I/O station data. Multiple data ranges can be added as long as the total length of the EGD exchange is less than 1400 bytes in length. User’s Manual 44 / 78 Applied Solutions Configuring Input Registers in the Controller Input register data must be added to the Ethernet Global Data input exchange from the I/O Station in the controller application. The input register data is added in one or more separate data areas after the InputsAnalog in the exchange. Specific symbolic variables, “ENIUxx_LAN_y_InputsRegister must be used. An example is shown below. In the symbolic variable ENIUxx_LAN_y_InputsRegister (xx represents the Ethernet NIU number and y represents the LAN). The length of the data area is specified by setting the value in Array Dimension 1 in the properties of the variable. In addition, the length of variable ENIUxx_Register_Data must be set to match the length of variable ENIUxx_LAN_y_InputsRegister For systems with redundant controllers the ENIUxx_Xfer_(pri/sec)_InputsRegister need to have the array dimension set. Using Input Register Data in the Controller ENIUxx_Register_Data is the symbolic variable provided for use in the controller application. In addition ENIUxx_Xfer_pri_InputsRegister and ENIUxx_Xfer_sec_InputsRegister are used in redundant controller applications to transfer the Register data to the standby controller. User’s Manual 45 / 78 Applied Solutions How Certain Operational Features are Set up in the Template Set The following are described in this section: Input_Processing “C” block and the Inputs to it Input_Processing block Error Codes Chart for determining EGD Exchange Production Period and Timeout Value Input_Processing block The Input_Processing receives status and inputs from the EGD exchanges (Inputs_from_ENIU_xx) and does the following: Checks to see that Inputs are correctly configured by checking the values entered for the array dimensions on the Input exchange data range variables. Checks to see that Inputs are being received from the ENIU(s). Loads input values into the %I and %AI reference tables. Sets and Clears Input Fault bits if the option is selected in the Controller parameters. In redundant systems transfers input values from the Active unit to the Standby. The Input_Processing block has 8 input parameters and 1 output parameter. Inputs Start_Eniu – must be 1 End_ENIU – number of the last ENIU or number of ENIU in the system Start_is – This is an offset as to where the discrete inputs should be placed in the %I table Start_ais - This is an offset as to where the analog inputs should be placed in the %AI table More_is - This is an offset as to where the extra discrete inputs should be placed in the %I table. Requires adding a new data range in the EGD Input exchange More_ais - This is an offset as to where the extra analog inputs should be placed in the %AI table. Requires adding a new data range in the EGD Input exchange Num_lans – Must be 1 applications that use E05s as ENIUs Fail_mode – determines what to do with inputs if communication is lost to an ENIU. A value of “0” means zero inputs, a value if “1” means hold last value. Outputs Status – result of the Input_Processing. Must be “1” for inputs to be updated. Any other value indicates an error in the setup of the Input_Processing of Variables associated with inputs User’s Manual 46 / 78 Applied Solutions The Input_Processing Parameters and the Call are preconfigured in the templates. Figure of Call to Input_Processing block with display of the Parameters User’s Manual 47 / 78 Applied Solutions Using More Is or More Ais The Input_Processing block can accommodate two sets of pointer to determine where discrete and analog inputs are placed in the %I and %AI reference tables. More Is and More Ais are provided to solve the difficulty that occurs if additional discrete or analog inputs are needed after the program in the controllers is completed. If the number of inputs from an ENIU is increased, the address of all inputs in the controller(s) from higher numbered ENIUs increases. That would mean extensive rework of the program to readdress the inputs. More Is and More Ais provide a means to add more inputs without changing the addresses of existing inputs. The input parameters start_is and start_ais are pointers that specify where the discrete and analog inputs associated with the symbolic variables ENIUxx_LAN_A_InputsDiscrete/Analog. The Input parameter more_is and more_ais are pointer that specify where the discrete and analog inputs associated with the symbolic variables ENIUxx_LAN_A_Xtra_InputsDiscrete/Analog To use the more_is and more_ais, add data ranges to the Input Exchanges from the ENIU and use the ENIUxx_LAN_A_Xtra_InputsDiscrete/Analog symbolic variables for the ranges. The more_is and more_ais input parameters are set to the offset in the reference table where the Xtra inputs are to be placed. Eniuoffset array will indicated where the more input are located in array elements [x],[3] and [x],[4]. The input processing block will do error checking on the more inputs. For redundant systems remember to set the array dimensions for the symbolic variable for the transfer variables to the redundant controller. Input_Processing Error Codes The input processing function requires configuration of the I/O parameters. The status variable on the output of the block contains a value of 0001 when the configuration is correct. Most error codes identify the number of the Ethernet NIU in the upper byte and the error code in lower byte. Error codes that do not include an Ethernet NIU number have 00 in the upper byte and report the error code in the lower byte. It is best to display the error code in Hex. User’s Manual 48 / 78 Applied Solutions Error Codes are: BAD_I_DATATYPE_LANA BAD_AI_DATATYPE_LANA BAD_EX_DATATYPE_LANA BAD_I_DATATYPE_LANB BAD_AI_DATATYPE_LANB BAD_EX_DATATYPE_LANB BAD_I_DATASIZE_LANA BAD_AI_DATASIZE_LANA BAD_EX_DATASIZE_LANA BAD_I_DATASIZE_LANB BAD_AI_DATASIZE_LANB BAD_EX_DATASIZE_LANB I_DATASIZE_A_B_DIFFERENT AI_DATASIZE_A_B_DIFFERENT EX_DATASIZE_A_B_DIFFERENT xx10 xx11 xx12 xx13 xx14 xx15 xx16 xx17 xx18 xx19 xx1a xx1b xx1c xx1d xx1e HIGHEST_I_EXCEEDS_32000 HIGHEST_AI_EXCEEDS_TABLE xx21 xx22 I_DATA_START_NOT_BYTE_BOUNDARY 0024 BAD_I_DATATYPE_PRI_XFER BAD_I_DATATYPE_SEC_XFER BAD_AI_DATATYPE_PRI_XFER BAD_AI_DATATYPE_SEC_XFER BAD_EX_DATATYPE_PRI_XFER BAD_EX_DATATYPE_SEC_XFER BAD_I_MORE_DATATYPE_PRI_XFER BAD_I_MORE_DATATYPE_SEC_XFER BAD_AI_MORE_DATATYPE_PRI_XFER BAD_AI_MORE_DATATYPE_SEC_XFER BAD_I_MORE_DATATYPE_LANA BAD_AI_MORE_DATATYPE_LANA BAD_EX_MORE_DATATYPE_LANA BAD_I_MORE_DATATYPE_LANB BAD_AI_MORE_DATATYPE_LANB BAD_EX_MORE_DATATYPE_LANB BAD_I_MORE_DATASIZE_LANA BAD_AI_MORE_DATASIZE_LANA BAD_EX_MORE_DATASIZE_LANA BAD_I_MORE_DATASIZE_LANB BAD_AI_MORE_DATASIZE_LANB BAD_EX_MORE_DATASIZE_LANB xx41 xx42 xx43 xx44 xx45 xx46 xx47 xx48 xx49 xx4a xx50 xx51 xx52 xx53 xx54 xx55 xx56 xx57 xx58 xx59 xx5a xx5b I_MORE_DATASIZE_A_B_DIFFERENT AI_MORE_DATASIZE_A_B_DIFFERENT EX_MORE_DATASIZE_A_B_DIFFERENT xx5c xx5d xx5e I_MORE_DATA_SIZE_NOT_BYTE_MULTIPLE HIGHEST_MORE_I_EXCEEDS_32000 HIGHEST_MORE_AI_EXCEEDS_TABLE xx60 xx61 xx62 I_MORE_DATA_START_NOT_BYTE_BOUNDARY START_ADDR_ZERO_WITH_I_MORE_DATA_LEN START_ADDR_ZERO_WITH_AI_MORE_DATA_LEN I_DATASIZE_PRI_XFER_DIFFERENT I_DATASIZE_SEC_XFER_DIFFERENT AI_DATASIZE_PRI_XFER_DIFFERENT AI_DATASIZE_SEC_XFER_DIFFERENT EX_DATASIZE_PRI_XFER_DIFFERENT EX_DATASIZE_SEC_XFER_DIFFERENT I_MORE_DATASIZE_PRI_XFER_DIFFERENT I_MORE_DATASIZE_SEC_XFER_DIFFERENT AI_MORE_DATASIZE_PRI_XFER_DIFFERENT AI_MORE_DATASIZE_SEC_XFER_DIFFERENT I_DATA_OVERWRITES_XTRA_I_DATA AI_DATA_OVERWRITES_XTRA_AI_DATA 0064 xx66 xx67 xx71 xx72 xx73 xx74 xx75 xx76 xx77 xx78 xx79 xx7a 0xa0 0xa1 I_XTRA_DATA_OVERWRITES_I_DATA AI_XTRA_DATA_OVERWRITES_AI_DATA START_ENIU_INPUT_BAD END_ENIU_LESS_THAN_START_ENIU ENIU_GREATER_THAN_63 I_DATA_START_ADDRESS_BAD AI_DATA_START_ADDRESS_BAD I_XTRA_DATA_START_ADDRESS_BAD AI_XTRA_DATA_START_ADDRESS_BAD 0xa3 0xa4 0xb0 0xb1 0xb2 00c1 00c2 00c4 00c5 IO_LAN_STATUS_BAD ETM_LANA_BAD ETM_LANB_BAD REGISTER_DATA_TOO_SMALL 0xf2 0xf3 0xf4 0x31 Note: Inputs are not passed to the %I and %AI reference tables of the controller until the Input_Processing block is configured correctly and returning a status of 0001. User’s Manual 49 / 78 Applied Solutions Chart of Production Periods and Consumption Timeouts For proper operation of the system, the Production Period and Consumption Timeout of all the EGD Exchanges between the controller and ENIUs must be set correctly. If the Production Period or Timeout Values are set too small, the system will experience communication loss between the controller(s) and the ENIUs. This can show up as loss of communication to all ENIUs or can show up as occasional drops outs of communication to one or more ENIUs. The SVC_Xchgs are always set to 200 milliseconds Production Periods and 600 millisecond Timeouts in the Template Sets. The SVC_Xchg Production Periods and Timeouts can be changed to higher numbers without any problems. Changing them to higher numbers will result in a slower response of ENIU Faults being reported to the Fault Table in the controllers. The Timeout Value should always be 3 times the Production Period. Note: Decreasing the Production Period of the SVC_Xchgs is likely to cause communication dropouts with the Input and Output Exchange communication. The Production Period and Timeout values for Output and Input Exchanges are given in the following table. All Output and Input exchanges will have the same values for Production Period and Timeout. The values given in the table will result in the fastest response time of the I/O without communication dropouts occurring. The values given in the table were determined by testing the Template Set for 48 hours or more to insure no communication dropouts occurred. The Output and Input Exchange Production Periods and Timeouts can be changed to higher numbers without any problems. Changing them to higher numbers will result in a slower response of the I/O. All Output and Input Exchanges should have the same Value for Production Period. The Timeout Value should always be (3 times the Production Period plus 2) milliseconds. Note: Decreasing the Production Period of the SVC_Xchgs is likely to cause communication dropouts with the Input and Output Exchange communication. Communication dropouts will result in the ENIU Outputs going to the safe state (user defined: zero, hold last state, or use defaults) until communication is reestablished. This usually shows up as the outputs chattering. User’s Manual 50 / 78 Applied Solutions EGD Timing for the Project Templates In the preconfigured Template Sets, the Ethernet Global Data I/O exchanges have been set up with appropriate default produced periods and default consumed update timeouts. These default values accommodate almost any I/O mix and corresponding exchange sizes for a system with the number of Ethernet NIUs in the template, and accommodate a single programmer on the same Ethernet LAN that is used for the Ethernet I/O. The produced periods and consumer update timeouts can be modified, as long as the maximum number of I/O Stations and the exchange sizes listed below is not exceeded. Ethernet NIU Ethernet Global Data Settings for E05 as ENIU Version 2.4x or Greater Tested produced period and consumed update timeout settings for E05 as ENIU EGD Exchanges* with PACSystems RX7i or RX3i controllers for PPS/PME: IO Exchanges Suggested Values ENIU I/O Stations Input Exchanges per I/O Station Output Exchanges from Controller(s) SVC Exchanges Suggested Values Produced Period(ms) Consumed Timeout (ms) Produced Period(ms) Consumed Timeout(ms) Setting with RX7i Controller(s) and E05s as ENIUs Up to 5 1 (301 bytes) 1 (660 bytes) 20 62 200 600 Up to 10 1 (301 bytes) 1 (660 bytes) 20 62 200 600 Up to 20 1 (301 bytes) 2 (660 bytes) 28 86 200 600 Settings withRX3i Controller(s) and E05s as ENIUs Up to 5 1 (301 bytes) 1 (660 bytes) 20 62 200 600 Up to 10 1 (301 bytes) 1 (660 bytes) 20 62 200 600 Up to 20 1 (301 bytes) 2 (660 bytes) 28 86 200 600 If SVC exchanges (used for faults) are not needed for the application, they can all be deleted from the controller(s) and the Ethernet NIUs in Machine Edition. * The tables above are based on Ethernet NIU I/O Stations that consume a 660-byte output data Ethernet Global Data exchange, and produce a 301-byte input data EGD exchange. All I/O data EGD exchanges between Ethernet NIU(s) and controller(s) in a system should be set to the same produced period and consumed update timeout. For any Ethernet NIU I/O Stations requiring much slower update rates, different produced period and consumer update timeout values may be used for the EGD exchanges for that I/O Station. The suggested produced period and consumer update timeout values are based on Ethernet NIU I/O Stations consisting of: 200 discrete inputs (bits) and 128 Analog Inputs (16 bit words) The number of the Ethernet Global Data exchanges and their frequency of production have the greatest effect on performance. The size of the exchanges also impacts performance. User’s Manual 51 / 78 Applied Solutions The produced period parameter determines how frequently an Ethernet device attempts to send the output data. To account for latencies in the interface and any other network devices, as well as the possibility that a packet could be dropped on the network, the guideline for determining the consumed update timeout parameter is to multiply the produced period by 3 and add 2 milliseconds. If the update timeout period of a consumer is exceeded before a new exchange arrives, the timeout status informs the consumer that new data has not arrived within the expected period. The Ethernet NIU uses this timeout status as an indication that it should default the output data. Timeout status is also available to the application program in the Ethernet NIU or controller. Under normal operating conditions, exchanges are received within the consumed update times listed in the previous table. For example, an output exchange in a system that is configured as described above with five I/O Stations will be received in 18 milliseconds or less. This can be considered the one-way update rate for that configuration. As usual, for the overall system I/O response time, controller scan time also must be taken into consideration. Using Two Networks to Improve I/O Response Time For applications that require performance or update rates faster than the times listed in the preceding tables, consider breaking your single I/O network into two separate I/O networks. This will require an additional Ethernet module in each controller. Example: A single I/O network with 18 I/O Stations would typically have EGD exchange produce periods of 28 milliseconds and EGD exchange consumer timeout values of 86 milliseconds. The performance of the I/O system can be improved by splitting the single network with 18 I/O Stations into two networks with 9 I/O Station each. Each 9 I/O Station network then can be configured for produce periods of 20 milliseconds and EGD exchange consumed timeout values of 62 milliseconds. User’s Manual 52 / 78 Applied Solutions 5 Diagnostics ▪ This chapter describes: ▪ Version 2.40 (and higher) Fault Handling ▪ Viewing the Fault Tables in the Ethernet NIU ▪ Using the Station Manager - Checking the IP Address of the Ethernet NIU - Testing communications on the network - Viewing the Exception Log - Checking the Network Connection ▪ Stale Ethernet Global Data Status ▪ What to do if you can’t solve the problem Ethernet NIU Fault Handling Version 2.1x versus Version 2.40 The Fault handling operations in Version 2.40 and higher of the ENIU have been substantially changed from Version 2.10. Version 2.10 provided a bit in the first status word from the ENIU to indicate that a fault is present in the ENIU. To view the fault Proficy Machine Edition needed to be connected to the ENIU and the fault table(s) displayed. Version 2.10 provided a bit in the first control word sent to the ENIUs to clear faults in all of the ENIUs, or Proficy Machine Edition could be connected to the ENIU and the fault table(s) cleared. Version 2.40 and higher provides the same functionality as Version 2.10 but in addition provides the following ENIU non-fatal faults are sent to the controller (must be PACSystems) in the SVC_Xchg_from_ENIU_xx exchange and the ENIU_Faults “C” block puts the faults in the controller’s PLC Fault Table Faults can be cleared in an individual ENIU by sending commands in the “ClearFaults” data range in the SVC_Xchg_to_ENIU_xx exchange. User’s Manual 53 / 78 Applied Solutions Disabling Version 2.40 Fault Handling Version 2.40 fault handling can be disabled. To disable Version 2.40 fault handling and return to Version 2.10 fault handling, set the initial value of the ENIU variable “enable_ph1_flts” to some value other than “0” and store the program to the ENIU. This must be done for each ENIU that is to have Version 2.40 fault handling disabled. To re-enable Version 2.40 fault handling change the initial value of “enable_ph1_flts” to “0” and store the program to the ENIU. Checking for Faults Using the ENIU Status Data (Version 2.10 method) To use the ENIU status data for fault handling, the application program in the controller(s) should monitor Ethernet NIU status word 1 bit 7 to check for faults in an ENIU Bit 7: Faults Exist 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 10 9 8 7 6 5 4 3 2 1 0 2 1 0 Word 1: Status and Fault Data 15 14 13 12 11 Word 2: Copy of Control Data Word 2 (Application-based) from Primary Controller 15 14 13 12 11 10 9 8 7 6 5 4 3 Word 3: Copy of Control Data Word 3 (Application-based) from Secondary Controller Words 4 - 10: Reserved User’s Manual 54 / 78 Applied Solutions Clearing Faults using Word 1 of the ENIU Control Data The controller can clear faults by setting bit 7 in the control data portion of its produced exchange. This will clear all faults in ALL the Ethernet NIUs that receive the Outputs_to_ENIUs exchange. This works in all versions of the ENIU. Bit 7 15 14 13 12 Clear Faults 11 10 9 8 7 6 5 4 3 2 1 0 11 10 9 8 7 6 5 4 3 2 1 0 Word 1: Control Data 15 14 13 12 Word 2: Available for Use by Application Words 3 – 10 should be set to zero Clearing Faults using ClearFaults Data Range in SVC_Xchg_to_ENIU_xx (Version 2.40 and higher) Faults in an individual ENIU can be cleared by placing a value of 1 or 2 in the variable ClearFaults_ENIUxx in the controller. xx is the ENIU number. Placing a value of 1 in this variable will clear the ENIU PLC Fault Table. Placing a value of 2 in this variable will clear the ENIU IO Fault Table. The clear operation a one shot operation. After the clear is done the ClearFaults_ENIUxx variable should be set back to 0 for long enough for the ENIU to receive it before another clear is done. Note: Clearing the fault table in the controller does NOT clear the fault tables in the ENIU(s). ENIU Faults in the Controller PLC Fault Table (Version 2.40 and higher) A fault in the controller PLC fault table from an ENIU looks like this: “Application Msg (ENIU #) - <fault text, 24 characters>” A loss of an IO Module in rack 0 slot 7 from ENIU 02 would produce the following message: “Application Msg (2) - 0.7: Loss of Module” Any fatal faults will stop the ENIU. Because the ENIU has stopped, the fatal faults will not be sent to the controller. Fatal faults can be viewed by connecting the programmer to the ENIU and viewing the faults before the ENIU is restarted. User’s Manual 55 / 78 Applied Solutions Operation of Faults on Power Up, and Stop to Run of ENIU. On Power Up and Stop to Run transitions of an Ethernet NIU, the ENIU logs a message into its PLC Fault Table indicating the event has occurred. In addition, the ENIU retransmits the contents of its fault tables to the controller. If the Ethernet NIU’s PLC Fault Table has overflowed (has more than 16 faults stored), only the FIRST 8 and LAST 8 faults from the ENIU PLC Fault Table are retransmitted to the controller. Similarly, if the ENIU I/O Fault Table has overflowed (has more than 32 faults stored), only the FIRST 16 and LAST 16 faults from the ENIU I/O Fault Table are retransmitted to the controller. Like other faults from the ENIU, these faults are logged into the controller’s PLC Fault Table as application messages. ENIU_Faults “C Block The “C” block ENIU_Faults is required in the controller (only PACSystems supported) to provide the Version 2.40 functionality. If the “C” block is added to the controller the parameter for the block must be configured. The block has one input parameter, see figure below, which specifies the number of ENIUs. The input parameter specifies the number of ENIUs (number 1 to number of ENIUs) for fault processing. When the “C” block is called the input should be a constant which is the number of ENIUs in the system. If the input is left blank, a fault is generated in the controller’s PLC Fault Table. The block will only process faults from the number of ENIUs specified by this input. If the number on the input is greater than the number of Ethernet NIUs that are actually present, a fault is generated in the PLC Fault Table for any ENIUs that are not communicating with the controller (even if they do not exist). User’s Manual 56 / 78 Applied Solutions Symbolic Variables for Fault Handling Specific symbolic variables must be used in the controller for the SVC_Xchg EGD exchanges, or the fault-handling feature will not log faults. These symbolic variables must be declared as variables in the controller and published either Internally or Externally. Otherwise, either the controller program will not store to the PLC or the PLC will log a fault when it attempts to go to Run mode. The project templates described in this manual will automatically declare the variables in the controller and set up the SVC_Xchgs with the correct variables. Viewing the Fault Tables in the Ethernet NIU The Ethernet NIU maintains two fault tables that can be accessed with a connected programmer. The I/O Fault Table lists faults associated with modules in the I/O Station, such as the loss or addition of a module. The PLC Fault Table lists faults associated with the ENIU itself. Fault descriptions are listed on the next page. For each fault, see the “User Action” column for information about correcting the fault. Viewing Extra Fault Data In the PLC Fault Table, double-clicking a fault entry will display additional fault data as shown below: 280001000300050000000000000000000000000000000000 Note: The Station Manager utility can be used to view more detailed information about specific faults. For the Ethernet NIU, the leftmost 14 digits of fault extra data (underlined in the example above) show the corresponding Log Event (2 digits) and Entries 2, 3, and 4 in that order (4 digits each). The example above is reporting an Log Event 28, Entry 2=1, Entry 3=3, and Entry 4=5. User’s Manual 57 / 78 Applied Solutions PLC Fault Table Descriptions PLC Fault Backplane communications with PLC fault; lost request Bad local application request; discarded request Bad remote application request; discarded request Can’t locate remote node; discarded request User Action If problem persists, contact GE Fanuc. If problem persists, contact GE Fanuc. Try to validate the operation of the remote node. * Error reported when message received where IP/MAC address cannot be resolved. Error may indicate that remote host is not operational on the network. Comm_req - Bad task ID programmed Internal request for unknown Ethernet Interface task. Comm_req - Wait mode not allowed Internal request error. Config’d gateway addr bad; can’t talk off local net Error in configuration. Verify IP address, Subnetwork Mask, and default Gateway IP address are correct. Connection to remote node failed; Underlying communications software detects error resuming without it transferring data; resuming. If persistent error, check connection to LAN and operation of remote node. LAN controller fault; restart LAN I/F Hardware fault, perform power cycle. * LAN controller Tx underflow; attempt recovery Internal system error. * LAN controller underrun/overrun; resuming Internal system error. * LAN data memory exhausted - check parms; The Ethernet NIU does not have free memory to process resuming communications. * LAN duplicate MAC Address; resuming A frame was received in which the source MAC Address was the same as this station’s MAC Address. Immediately isolate the offending station; it may be necessary to turn it off or disconnect it from the network. This station remains Online unless you intervene to take it Offline. LAN I/F can’t init - check parms; running soft Sw utl Internal system error. * LAN I/F capacity exceeded; discarded request Verify that connection limits are not being exceeded. LAN interface hardware failure; switched off network Replace Ethernet NIU. LAN network problem exists; performance degraded Backlog of transmission requests due to excessive traffic on the network. For a sustained period the MAC was unable to send frames as quickly as requested. * LAN severe network problem; attempting recovery External condition prevented transmission of frame in specified time. Could be busy network or network problem. Check transceiver to make sure it is securely attached to the network. Check for unterminated trunk cable. LAN system-software fault; aborted Internal system error. * connection resuming LAN system-software fault; restarted LAN I/F Internal system error. * LAN system-software fault; resuming Internal system error. * LAN transceiver fault; OFF network until fixed Transceiver or transceiver cable failed or became disconnected. Reattach the cable or replace the transceiver cable. Check SQE test switch if present on transceiver. Local request to send was rejected; discarded Internal error. Check that the Ethernet NIU is online.* request Memory backup fault; may lose config/log on restart Internal error accessing FLASH device. * May need to replace Ethernet NIU. Module software corrupted; requesting reload Catastrophic internal system error. * Module state doesn’t permit Comm_req; discarded Ethernet NIU cannot process request. Make sure Ethernet NIU is configured and online. Unsupported feature in configuration Attempt has been made to configure a feature not supported by the Ethernet NIU version. *If this problem persists, contact GE Fanuc. User’s Manual 58 / 78 Applied Solutions Using the Station Manager Function The built-in Station Manager function of the Ethernet NIU provides additional tools for troubleshooting that are particularly useful during system startup. For Ethernet NIU systems with Dual LANs, each Ethernet interface has a separate Station Manager and both Station Managers must be accessed separately. Use of the Station Manager requires an operator interface device, either a computer running terminal emulation software or an ASCII terminal. The commands that can be used with the Station Manager are described in the Station Manager User’s Manual. For PACSystems controllers, this manual is catalog number GFK-2225. For Series 90 systems, it is GFK-1186. Both manuals are available online at GEFanuc.com. The Station Manager can be used to: Check the IP Address of the local Ethernet NIU. Make sure the IP Address is unique on the network. Display additional information about a node, such as its data rate and parity. Test communications on the network. View the Exception log, which lists the same types of faults as the PLC Fault Table. View communications errors with the TALLY command. Check Status of Exchanges with the Stat command. View Details of individual Exchanges with the Xchange command. Checking the IP Address of the Ethernet NIU With the terminal connected directly to the Station Manager port on the Ethernet NIU, issue the NODE command: > node IC695 Peripheral Ethernet Interface Copyright (c) 2003-2005. All rights reserved. Version 3.60 (35A1) TCP/IP Version 2.50 (20A1) Loader IP Address = 10.0.0.2 Subnet Mask = 255.255.0.0 Gateway = 0.0.0.0 MAC Address = <<080019010203>> SNTP Not Configured Station Manager Port: Data Rate = 9600, Parity = NONE, Flow Control = NONE Source of Soft Switches: PLC Configuration Source of IP Address: Oct 24, 2005 Configuration 16:33:31.8 Date/time initialized from PLC CPU User’s Manual 59 / 78 Applied Solutions The NODE command also displays other identifying information about the Ethernet NIU as shown above. Verifying that the IP Address of the Ethernet NIU is Unique Make sure the Ethernet NIU does not have the same IP Address as another node. Disconnect the LAN cable from the Ethernet NIU. Log on to another device on the network From the other device, ping the IP Address assigned to the Ethernet NIU. If you get an answer to the ping, it means the chosen IP address is already in use by another node. You must correct this situation by assigning unique IP Addresses. Testing Communications on the Network During system setup, use the Station Manager utility to test each installed Ethernet device to be sure that each is operational and configured with proper TCP/IP parameters. To do that: Enter the LOGIN command: login The password prompt appears: Password: The factory default password is: system (lower case). Enter the default password, or other password if it has been changed. If the password matches the current password for the Modify level, the Modify prompt appears: = Use the PING command to test the ability to reach individual nodes. The test works by sending an ICMP echo request message to a specific destination and waiting for a reply. Most nodes on TCP/IP networks implement ping. PING can reach remote IP networks through gateways. Enter the PING command using the IP address for the destination to be tested. A typical PING command is shown below: = ping 10.0.0.2 10 Ping initiated <<< Ping Results >>> Command: ping 10.0.0.2 10 100 64 Sent = 10, Received = 10, No Timely Response = 0 Late/Stray Responses = 0 Round–trip (ms) min/avg/max 0/1/10 User’s Manual 60 / 78 Applied Solutions Viewing the Exception Log When the Ethernet NIU detects an unusual condition, it records information about the condition in its exception log. The exception log can be viewed using the Station Manager LOG command. For example: > log <<< Extended Exception Log >>> IC695 Peripheral Ethernet Interface version 3.60 (35A1) Log displayed 24-OCT-2005 16:39:32.5 Log initialized using valid RAM information Log last cleared 21-OCT-2005 09:33:46.9 Date Time Event Count Entry 2 through Entry 6 24-OCT-2005 16:38:52.9 1H 1H 0000H 0001H 0000H 0000H 0000H 24-OCT-2005 14:01:22.2 20H 1H 0001H 0000H 0000H 0001H 0117H ->24-OCT-2005 09:33:47.2 2aH 1H 0004H 0000H 0000H 0004H 0192H Scode Remote IP Addr:Port or Producer ID:Exchg Local IP Addr: Port Each new (not repeating) log event is also sent to the PLC Fault Table, where it can be viewed using the programming software. The Station Manager LOG command returns the time/date of each exception event, a hexadecimal code that identifies the fault type (for example, 28H for an Ethernet Global Data fault), a count, and additional data in entries 2 through 6. When an error occurs, this information may pinpoint the cause more precisely than the PLC Fault Table display. Checking the Network Connection If the LAN LED is off, the Ethernet NIU is not able to send or receive on the network. The usual cause is some type of hardware problem. If this occurs, follow the procedure below. 1. Check to be sure that the network cables are securely fastened to the Ethernet NIU and to the network connection device (hub, switch, etc). 2. Use the Station Manager to check the network interface task using a TALLY L command. The TALLY L command displays a list of tallies for all network interface tasks, and will identify specific communications errors that may be occurring. If the Ethernet NIU is the only device experiencing problems: 1. Be sure the network cable is properly connected to the Ethernet NIU and to the network connection device. 2. Verify that the network connection device is operating properly on the network. (Are other devices operating on the same network segment?) 3. Make sure the Ethernet NIU is seated and secured properly. 4. Replace the network cable with a known good cable. 5. Verify that the system power supply is properly grounded. If all stations are experiencing the problem, the network is probably at fault. Contact the network administrator. User’s Manual 61 / 78 Applied Solutions Checking Exchanges with the STAT Command The existence and correct operation of Exchanges can be checked using the STAT command Using the Station Manager, type STAT G The Station Manager will show the configured exchanges for this device, show their status and indicate the number of exchanges that have occurred. > stat g <<< EGD Status >>> Ndx --0H 1H 2H Producer ID ------------10.10.10.3 10.10.10.2 10.10.10.11 24-OCT-2005 Exchange ID ----------1 1 1 16:46:05.0 Mode -------CONSUMER CONSUMER PRODUCER Transfers State Completed -------------- ----------ACTIVE(00H) 1379368 ACTIVE(00H) 1447992 ACTIVE(01H) 1399605 The State column indicates whether the Exchange is active or idle and gives a code in hexadecimal that indicates the status. For Produced Exchanges, (01H) indicates the exchange is being sent For Consumed Exchanges: 00H and 01H indicate the exchange is being received properly and on time 05H indicates the exchange is being received properly and on time, but the data is stale. The PLC has not updated the data since the last exchange was received. It is normal to receive Stale indications if the PLC Scan is longer than the EGD Production Period. 06H indicates the exchange is not being received. 0eH indicates the exchange is being received but the number of bytes received is different than expected. The exchange is not being used due to the length error. Individual Exchange setups can be viewed by using the Xchange command in station manager. Type “Xchange <producer ID> <exchange ID>” The Data Ranges in each exchange can be viewed using the EGDREAD command in the Station Manager. Type “EGDREAD <producer ID> <exchange ID>” User’s Manual 62 / 78 Applied Solutions Verifying that All Ethernet Global Data Exchanges are Working One at a time, connect a Station Manager to each Ethernet port in the controller(s) and each Ethernet NIU. For each connection, execute the stat g command in Station Manager to be sure all EGD Exchanges are working properly. Stat g should return a display like the one illustrated below, which shows stat g response data from ENIU_01 in a system with two controllers. Each line of the response represents one exchange. The State column shows whether an exchange is working. The state should be Active and the value should be 00H, 01H, 03H, or 05H if the exchange is working. If the value is 06H or 07H, the exchange is not being received or is taking too long to be received. If the state is 0eH, the size of the exchange in bytes at the producing and receiving ends is not the same and must be fixed. EGD Exchanges in a Single Controller System In a single controllers system, each Ethernet NIU should have the following exchanges (xx=ENIU#) Produced Exchange – ProducerID 10.10.10.xx; ExchangeID 1 – Inputs from ENIUxx Produced Exchange – ProducerID 10.10.10.xx; ExchangeID 1xx – SVC from ENIUxx Consumed Exchange – ProducerID 10.10.10.101; ExchangeID 1 – Outputs Pri to ENIUs Consumed Exchange – ProducerID 10.10.10.101; ExchangeID 1001 – Outputs Sec to ENIUs Consumed Exchange – ProducerID 10.10.10.101; ExchangeID 1xx – SVC Pri to ENIUs Consumed Exchange – ProducerID 10.10.10.101; ExchangeID 11xx – SVC Sec to ENIUs User’s Manual 63 / 78 Applied Solutions EGD Exchanges in a Dual Controller, Single LAN System In a dual controller system single LAN, the primary controller should have the following exchanges (xx=ENIU#) Produced Exchange – ProducerID 10.10.10.101; ExchangeID 1 – Outputs to ENIUxx Produced Exchange – ProducerID 10.10.10.101; ExchangeID 1xx – SVC to ENIUxx (one per ENIU) Consumed Exchange – ProducerID 10.10.10.xx; ExchangeID 1 – Inputs from ENIUxx (one per ENIU) Consumed Exchange – ProducerID 10.10.10.xx; ExchangeID 1xx – SVC from ENIUxx (one per ENIU) The secondary controller should have the following exchanges (xx=ENIU#) Produced Exchange – ProducerID 10.10.10.101; ExchangeID 1001 – Outputs to ENIUxx Produced Exchange – ProducerID 10.10.10.101; ExchangeID 11xx – SVC to ENIUxx (one per ENIU) Consumed Exchange – ProducerID 10.10.10.xx; ExchangeID 1 – Inputs from ENIUxx (one per ENIU) Consumed Exchange – ProducerID 10.10.10.xx; ExchangeID 1xx – SVC from ENIUxx (one per ENIU) Outputs %Q001 to %Q1024 are sent from both the controllers to all Ethernet NIUs . Analog outputs %AQ001 to %AQ256 are sent from both the controllers to all the Ethernet NIUs. Checking the Cable Connections Verification should be done on the communication path between each controller and the Ethernet NIUs. Put controller(s) in Run mode. Disconnect the Ethernet cable at each controller. One at a time, connect the Ethernet cables. For each cable connection: In the controller, turn one (or more) discrete outputs on and off. Verify that the outputs come on in all Ethernet NIUs. This can be done by using Reference View tables in the controller to control the outputs, and viewing the outputs in the Ethernet NIU’s Reference View table. Do the same with analog outputs. Repeat the same steps to check that the configured inputs from the Ethernet NIU are being correctly received by the controller(s). Each Ethernet NIU will be sending a different range of input to the controller(s). When the STAT LED is ON Sometimes problems can occur even when the STAT LED is on, indicating normal operation. In that case, check if the LAN LED is steadily on, indicating that the Ethernet NIU is successfully attached to the Ethernet network, but there is no network activity. To find out whether the Ethernet interface component in the Ethernet NIU can access the module’s CPU, issue successive TALLY C commands. If the PlcSweep tally is not increasing, there are no windows being provided by the CPU. If any of the following tallies: PlcAbt, MyAbt, or Timeout are incrementing, there may be a hardware problem with the backplane interface. Check the PLC Fault Table entries. User’s Manual 64 / 78 Applied Solutions Stale Ethernet Global Data Status A stale data status is a non-fatal status. Although an Ethernet Global Data exchange is producing at the correct period, the data in the exchange can be old (stale) if the controller has not yet updated it. If the produced period for an exchange is less than the controller’s scan time, the Ethernet device can send the same data in more than one Ethernet Global Data exchange. If the controller has not updated the EGD data before the exchange produced period expires, the Ethernet device sends the same data again. Stale data status can also occur from an Ethernet NIU if the ENIU uses local logic. The use of local logic can increase scan time to become close to or larger than the Ethernet Global Data input data exchange’s producer period. Each consumed EGD exchange status word received by the consumer of the exchange provides the indication of stale data. The stale data status is available for use by the application. The occurrence of stale data can also be determined by using the Ethernet Transmitter Module’s Station Manager command – “tally G”. A count of stale data occurrences for the Ethernet Transmitter Module’s produced EGD exchanges is displayed along with other tally G data. If You Can’t Solve the Problem If you are not able to solve the problem, call GE Fanuc Automation. Please have the following information available when you call. The name and catalog number marked on the module Description of symptoms of problem. Depending on the problem, you may also be asked for the following information: The application program and the PLC sweep time at the time the problem occurred. A list of the configuration parameters for the Ethernet device that failed. A list of reported errors. This can be the contents of the Ethernet exception log, the contents of the PLC Fault Table, or both. A description of the network configuration. This should include the following: The number of systems accessing the network The type of network cable used (for example, twisted pair, fiber optic, etc.) The length of network cable The manufacturer and quantity of hubs and network switches. User’s Manual 65 / 78 Applied Solutions 6 Local Program Logic in the Ethernet NIU This section describes the Local Logic feature of the Ethernet NIU. ▪ Using the Local Logic Block ▪ Reference Table Restrictions for Local Logic Using the Local Logic Block The E05 as Ethernet NIU allows the addition of logic to be executed locally in the I/O Station. When the E05 is load with the code to make in an Ethernet NIU, an empty LD logic block named “Usr_Lgc” is created and is called from Main. NOTE: Even if Usr)Lgc is not used, the block MUST be left in the program. Deleting the block will cause a store to the Ethernet NIU to fail. Reference Table Restrictions for User Logic Restricted Addresses The following reference table addresses MUST NOT be written to by Usr_Lgc: %R00001 to %R09999 All %M All %G All %T Addresses written to by EGD Exchanges The Ethernet Global Data exchanges “Outputs_Pri _to_ENIU” and “Outputs_Sec_to_ENIU” write to %M, %G, and %R addresses (which are in the Restricted Addresses listed above) and the Ethernet NIU then writes to the following addresses (listed below) every scan of the ENIU: %Q00001 to %Q01024 %AQ0001 to %AQ0256 The ENIU functionality writes to these reference addresses every scan of the ENIU. If Usr_Lgc writes to any of these reference addresses the Usr_Lgc values will go to the reference addresses. User’s Manual 66 / 78 Applied Solutions 7 Configuring PC-Based Controllers Any GE Fanuc Ethernet interface master capable of exchanging Ethernet Global Data messages, such as the Series 90-30 CPU, Series 90-70 CPU, or PC Control can function as a controller for the Ethernet NIU. However, these other controllers do NOT support Redundant I/O LANs, Fault Reporting to the controller or Remote COMMREQ Calls. In a system that has a primary and secondary controller, it is not necessary for the controllers to be the same type. This chapter describes configuration steps when a PC-based controller (either QuickPanel Control or PC Control) will be used as a controller for an Ethernet NIU: ▪ Configuring the ENIU ▪ Configuring the Controller Configuring the Ethernet NIU Follow the steps in chapter 6 to complete the hardware configuration of an Ethernet NIU. Follow the steps in chapter 7 to configure Ethernet Global Data exchanges. Because other controllers DO NOT support fault reporting to the controller or Remote COMMREQ Calls, if you are using any of the provided templates, delete the SVC exchanges from the Ethernet Global Data configuration in the Ethernet NIU. User’s Manual 67 / 78 Applied Solutions Configuring the PC-Based Controller For each Ethernet NIU, control variables are needed to handle both produced and consumed data. The produced data structure consists of three elements. Command, 10 words Discrete out, 1024 bits Analog out, 256 words The controller receives a consumed data structure from each Ethernet NIU. This structure consists of: Status, 10 words Discrete input data, as required for each Ethernet NIU Analog input data, as required for each Ethernet NIU Logic is required to drive the command words and respond to the status feedback. Refer to chapter 9 for more information on the data in the command and status words. Add an Ethernet Global Data driver for the I/O LAN, if it is not already present . Select Ethernet I/O from the New Driver list from Control I/O Drivers. Right-click on Ethernet I/O Driver and select Add Node. User’s Manual 68 / 78 Applied Solutions Create a node for each Ethernet NIU in the system. Right-click on a Node and select ‘Properties’ to open the Inspector window. Select Generic Device as the Node Type: Enter the IP Address of the Ethernet NIU. Enter 6 for Number of Slots. Select Slot 1 and open the properties inspector, expand the Module Properties field. Select Analog Output as the module type. Enter 10 for Number of Terminals (this is the 10 words of command data to the Ethernet NIU). User’s Manual 69 / 78 Applied Solutions Configure the remaining slots, as follows; Slot 2 - Discrete Outputs, 1024 Terminals Slot 3 – Analog Outputs, 256 Terminals Slot 4 – Analog Inputs, 10 Terminals (this is the ten status words from the Ethernet NIU) Slot 5 - Discrete Inputs, enter number of digital inputs from Ethernet NIU Slot 6 – Analog Inputs, enter number of analog inputs from Ethernet NIU When completed, the configuration screen should be similar to the example below: As shown above, slots 2, 3, 5, and 6 are for discrete/analog outputs and inputs, slot 1 is the ten control words to the Ethernet NIU, and slot 4 is the ten status words from the Ethernet NIU. User’s Manual 70 / 78 Applied Solutions Set Up I/O and Control/Feedback Data Create the variables to contain the data for the Ethernet Global Data exchanges. Each variable will be an array of the appropriate size. For each Ethernet NIU create the variables described below. The produced data consists of: Command, 10 words Discrete out, 1024 bits Analog out, 256 words This data is common to all Ethernet NIUs. However, each Ethernet NIU must have its own copy of this data. Provision must be made to aggregate the outputs and then copy all elements to the individual Ethernet NIU variables. The consumed data consists of: Status data, 10 words. Discrete inputs, as required for each Ethernet NIU. Analog inputs, as required for each Ethernet NIU. Open each slot and drag and drop the appropriate variable to each terminal: User’s Manual 71 / 78 Applied Solutions Select the node and open the Produced Exchange field in the property inspector window: Enter the Exchange ID. This must match the Exchange ID used in the Ethernet NIU’s consumed exchange. Set the Consumer Type field to Group ID and the Group ID to 1. This must match the value used in the Ethernet NIU’s consumed exchange Set the Producer Period (see chapter 8 for recommendations on Producer Period). User’s Manual 72 / 78 Applied Solutions Open up the Consumed Exchange field. Enter Exchange ID. This must match the Exchange ID used in the Ethernet NIU produced exchange. Set the Producer Type to Group ID and set the Group ID to 2. The Group ID value must match the Destination value in the ENIU produced data exchange. Consumer Period (leave at 10ms). Update Timeout (see chapter 7 for recommendations on Update Timeout value). Repeat for each Ethernet NIU node. User’s Manual 73 / 78 Applied Solutions 8 Setting Up Output Defaults This chapter explains how to establish output defaults for applications where needed. 1. In Proficy Machine Edition, select the Variable Table and locate the Ethernet NIU variables. The variables are in a table of the form <Devicename><variable name> 2. In the Ethernet NIU section, locate the specific output (Qxxxx or AQxxxx) that is to be given a default value. If unable to locate a variable with the current reference address, create a new variable and give it the desired address. A range of new variables with sequential addresses can be generated using the Duplicate command, available by right-clicking. 3. If creating output variables (Qxxxx), you must set the Retentive property to True or the Default value will not be stored properly. 4. Do not execute the command to delete unused variable as this will delete your added variables and initial values. 5. In the properties of the selected variable, change the Initial Value to the desired default value. 6. Download to the Ethernet NIU while Machine Edition is online. The initial values will be downloaded and also stored to flash. Default values are loaded into a holding buffer from flash when the Ethernet NIU starts up. User’s Manual 74 / 78 Applied Solutions 9 Worksheets for System Parameters ▪ Controller ▪ Second Controller (if used) ▪ ENIU(s) Controller Parameters of the Ethernet Module for I/O Lan IP Address: Subnet Mask: Gateway: EGD Local Producer ID: IP Address of the Ethernet Transmitter Module Subnet Mask of the Ethernet Transmitter Module If used NOTE: The Local Producer ID is set by the template set to 10.10.10.101 Parameters of the Ethernet Module for other communications IP Address: Subnet Mask: Gateway: User’s Manual IP Address of the Ethernet Transmitter Module Subnet Mask of the Ethernet Transmitter Module. If used 75 / 78 Applied Solutions Second Controller (if used) Parameters of the Ethernet Module for I/O Lan IP Address: Subnet Mask: Gateway: EGD Local Producer ID: IP Address of the Ethernet Transmitter Module Subnet Mask of the Ethernet Transmitter Module If used NOTE: The Local Producer ID is set up by the template set Parameters of the Ethernet Module for other communications IP Address: Subnet Mask: Gateway: User’s Manual IP Address of the Ethernet Transmitter Module Subnet Mask of the Ethernet Transmitter Module. If used 76 / 78 Applied Solutions ENIU (complete for each ENIU) Parameters of the Ethernet Module for I/O Lan IP Address: Subnet Mask: Gateway: EGD Local Producer ID: IP Address of the Ethernet Transmitter Module Subnet Mask of the Ethernet Transmitter Module If used NOTE: The Local Producer ID is set by the template set to 10.10.10.xx Parameters of the Ethernet Module for other communications (if used) IP Address: Subnet Mask: Gateway: User’s Manual IP Address of the Ethernet Transmitter Module Subnet Mask of the Ethernet Transmitter Module. If used 77 / 78 Applied Solutions IO Modules in ENIU Slot User’s Manual Module Type Ref Addresses COMMREQs 78 / 78
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
advertisement