SUP0061-01

HE693RTM705-01 and HE693OIU037 Supplement A1.1 Product Descriptions The HE693OIU037 is a Horner Operator Interface Unit which indirectly communicates with a GE Fanuc Series 90-30 or Series 90-70 PLC using the RTU/Modbus communications protocol. The OIU037 functions as a RTU/Modbus slave. The 9-pin RS -232 port is connected to a PC for configuration using the OIUCFG software. The 15-pin RS -485 port connects to the RTU communications bus. The HE693RTM705-01 is a Horner RTU Master for the OIU037. The RTM705-01 is an optimized RTU/Modbus master that runs on a Series 90-30 PCM-based platform and manages communications between several multi-dropped OIU037s and a Series 90-30 PLC. Communications is typically through RS-485 serial single or dual twisted pair and provides a pseudo peer-to-peer method that provides transfer of Series 90-30 data to and from each OIU037. Maximum use of the serial protocol bandwidth is realized by broadcasting up to 2000 points of 90-30 discrete data (%I, %Q, etc.) and up to 250 points of 90-30 analog data (%R, %AQ, etc.) on a regular basis. Data changes at each OIU037 are queued and returned to the RTU Master in response to a Read_Analog_Input command. The Read_Analog_Input command is transmitted by the master to each OIU037 in a poll manner. Included in the data returned from each OIU037 is the current function key status, current display screen status and, if pending, a reference data change. Changes to the function key and display screen returned status are not written to the 90-30 until all stations are scanned. In an effort to conserve response time, no data will be written at the end of the scan if no changes were made. This data is assumed to be read-only data by the Series 90-30. One the other hand, a reference data change returned from an OIU037 is written immediately to the Series 90-30. This is done because both the Series 90-30 and the OIU037 have write access to the same data and a write delay could be critical to the operation. All discrete reference data broadcasted and received from each slave is stored in a contiguous section of 90-30 memory of a discrete type. The type, offset, and size of this reference is configurable by the user and is referred to as the Discrete Global Data Table. All analog reference data broadcasted and received is stored in a contiguous section of 90-30 memory of an analog type. The type, offset and size of this reference is configurable by the user and is referred to as the Analog Global Data Table. Also stored in the PLC reference data tables is an individual status field which reflects the condition of communications with each OIU037. (The slave status is referred to in the COMM_REQ as the slave status information.) By continuously monitoring each status field, the PLC can detect configuration or communication problems on a slave by slave basis. See Section A3.6 for the error definitions. Configuration of the RTU Master port and initialization of parameters is easily accomplished through a COMM_REQ command in the 90-30 ladder program. Baud rates of up to 19.2K are supported in either RS232 or RS422/RS485 mode. All popular handshaking, parity, stop bits, and RTU transfer (ANSII [7-bit] or RTU [8-bit]) modes are available. While two communications ports are physically available, only the second port, COM2, is used. COM2 provides both RS-232 and RS-485 capability. A2.1 Mounting Requirements The RTU Master Module is designed to plug into any Series 90-30 local rack slot. Please refer to the 90-30 Installation manual for information on installing the module. 12-10-97 SUP0061-01 2 A2.2 RTU Master Installation 1. 2. 3. 4. 5. 6. A3.1 Remove power to the 90-30 CPU/Rack. Install the module in a free slot. Apply power to the PLC. Connect serial cables and execute LM90. Choose F2 for the I/O Configuration software Go to the I/O Configuration section (F1) a. Select F8 for ‘other’. b. Select F1 for ‘pcm’. c. Select F10 for ‘zoom’ and set configuration mode for ‘PCM CFG’. RTU/Modbus Protocol The RTU/Modbus protocol uses a Master/Slave protocol that can support a common bus of one master and up to 247 Modbus Slaves. However, the RTU Master can only support up to 32 multi-dropped and contiguously addressed OIU037s. The RTU Master will construct commands to request data from each configured OIU037 slave address. Only the addressed slave is expected to respond to the command. Message integrity is assured through use of checksums included in a message. Should a slave receive a message with a bad checksum, no response will be returned. To transmit data to the OIU037s, the RTU Master will use the broadcast capability of the RTU/Modbus protocol. No slaves will respond to the broadcast. Again, message integrity is assured through use of checksums. Should a slave receive a broadcast message with a bad checksum, the data will be ignored. While no means exists for a master to detect that the slave did not properly receive a broadcast, this does not present a problem since data is continuously broadcasted on a high-speed basis. The RTU Master will only broadcast the RTU commands Force_Multiple_Outputs (15h) to write discrete data and Preset_Multiple_Registers (16h) to write analog data. Furthermore, the RTU Master will only issue a Read_Analog_Inputs (4) to read data. This data structure returned by this command contains several pieces of information including any changed global reference data at the OIU037 of either a discrete or analog type. Please refer to GE Fanuc Series 90 PLC Serial Communications User’s Manual (GFK-0582B) for more detailed information on the RTU/Modbus communications protocol. A3.2 RTU Master Configuration On power-up, the RTU Master waits for a configuration through a COMM_REQ before initiating communications with the OIU037. While waiting for a COMM_REQ the lower LED will remain solidly lit. Before the COMM_REQ can be issued, space must be reserved for the discrete and analog global reference data tables, slave status table and slave info table. The slave status and slave info tables in the Series 90-30 reference data should be cleared by the ladder logic before issuing the COMM_REQ. Additionally, the communications port will require configuration information. Each of the two global data reference tables broadcasted are retrieved from a contiguous section of a corresponding type Series 90-30 data reference tables. One table will be for discrete data and will require a discrete-type (%I, %Q, etc.) date reference. The other table will be for the analog data and will require an analog-type (%R, %AQ, etc.) data reference. In the COMM_REQ, the user must specify a Series 90-30 data reference type, offset, and length for each of the two tables broadcasted. The supported reference types and their associated type value are shown on the following page: 3 Supported PLC types (decimal values): 70 - %I 72 - %Q 74 - %T 76 - %M 8 - %R 10 - %AI 12 - %AQ Any other reference type value will generate an error. Specifying a reference offset which exceeds the specified reference data table size will generate an error. Additionally, broadcast length is limited internally to 2000 for discrete I/O and 250 for analog I/O. Specifying a reference length value greater than these broadcast limits will also generate an error. The user must also specify a reference type and offset for the slave OIU037 status (communication) table. The reference type for this table must be an analog (word) type value. This table is 32 entries long and will start with slave address 1 status in the first location. If a station is online and communicating with no errors, the status value will be zero. If an error occurs and communications is not restored during the next 3 retries, an error value will be placed in that station’s appropriate status field. Additionally, no further communications will be attempted with that station until the Series 90-30 logic clears that status field back to zero. The user must also specify a reference type and offset for the slave OIU037 information table. The reference type of this table must be an analog (word) type. This table is 96 entries long and is divided into two parts. The first part displays the current status of the OIU037 function keys. These are 32 bit entries with the first word containing the bitmap status of the lower 16 keys. The second word contains the bitmap of the status of the upper 16 keys. Two words per OIU037 are contiguous with slave address 1, taking the first two words. The second part of the table starting a offset 64 contains the current screen register being displayed by the OIU037. Again, offset 64 contains that register from slave address 1 with the remaining stations placed contiguously in order. NOTE: Since the RTU Master is slower to power up than the Series 90-30, a delay of 5 seconds should be implemented in the ladder logic before the COMM_REQ is called. Additionally, the PLC should set the provided (task) status reference to zero before making the call. 4 A COMM_REQ can be issued at any time to re-initialize the operation of the RTU Master. COMM_REQ configuration data: Address Address + 1 Address + 2 Address + 3 Address + 4 Address + 5 Address + 6 Address + 7 Address + 8 Address + 9 Address + 10 Address + 11 Address + 12 Address + 13 Address + 14 Address + 15 Address + 16 Address + 17 Address +18 Address + 19 Address + 20 Data Block Length (15) No Wait (0) Status Pointer Type Status Pointer Offset (origin 0) Idle Time-out (N/A) Max. Comm. Time (N/A) Number of Slave OIU037 Port Baud Rate Port Parameter Word Expected Turn-around Time Reserved (must be zero) Slave Status Table Type Slave Status Table Offset Slave Information Table Type Slave Information Table Offset Discrete Global Table Type Discrete Global Table Offset Discrete Global Table Length Analog Global Table Type Analog Global Table Offset Analog Global Table Length • Data Length Specifies the number of additional data words in the COMM_REQ. This value must be 15. • No Wait Specify No Wait to guarantee PLC does not wait indefinitely should the RTM not respond to the COMM_REQ. This value should be zero. • Status Pointer Type and Offset Specifies the PLC word reference that will receive the RTU Master task status after initialization. • Number of slave OIU037s Specifies the number of OIU037s to be polled during normal operation. These slave OIU037s must be addressed in order and start with address 1. The maximum is 32. • Port BAUD rate Specifies the baud rate of the communications port. The following rates are supported: 300, 600, 1200, 2400, 4800, 9600, 14400, 19200. The values are entered as the unsigned decimal value of the baud rate. 5 • Port Parameter word Specifies the frame protocol: Bit 0 - Stop bits [0-1bit, 1-2bit] Bit 1 - Enable Parity [0-none] Bit 2 - Odd parity [0 - even] Bit 3 - Data mode [0 - RTU, 1 - ASCII] Bit 4 - Serial mode [0 - RS485, 1 - RS232] Bit 5 - Broadcast [0 - All, 1 - Cycle] Bit 6-15 - Reserved for factory, must be set to zero. • Expected Turn-around Time Specifies the time that the RTU Master wait after sending the broadcast commands before polling each individual slave. Two times the Expected Turn-around Time is the amount of time that is allowed for response to the polled request before a time-out error is generated. • Slave Status Table reference type and offset Specifies the starting location in the 90-30 memory where the slave OIU037 status will be stored. • Slave Information Table reference type and offset Specifies the starting location in the 90-30 memory where the slave OIU037 status will be stored. • Discrete and Analog Global Data Table reference type, offset and length. Specifies the starting location and length of 90-30 memory to broadcast to the OIU037’s. The input parameters to the COMM_REQ include the associated data address, task id and location. The data address contains the starting address of the reference containing the pre-initialized values described above. The task id is always 101 decimal for this RTU Master and the location is described with the upper 8 bits specifying the rack and the lower 8 bits specifying the position of the RTU Master module. See the RTU Master Communications Module manual for wiring details. A3.3 OIU037 Configuration The HE693OIU037 is fully configurable using the OIU configuration software, OIUCFG.EXE. The steps below detail how to set slave addressing, protocol, idle timeout, and modem TAT. 1. 2. 3. 4. 5. 6. Execute the OIU configuration software, OIUCFG.EXE Press the ‘HOME’ key and select choice B for the HE693OIU037. The MAIN MENU should now be displayed. Select F8 for the ‘Select AUTO/SETUP Mode’. The ‘Modbus Parameters’ screen should now be displayed. Configure the OIU037 accordingly. See the RTU Master Communications Module manual for wiring details. 6 A3.4 Normal Operation Upon receiving a valid COMM_REQ, the RTU Master first verifies the communications parameters and initializes the communications port. Then the reference parameters will be verified and pointers set to the type and offset passed in the COMM_REQ. Any invalid parameters within the COMM_REQ data block will cause the RTU Master to halt and generate an error value in the task status field. Finally, the internal copy of the slave info table will be cleared and the broadcast / poll scan will begin. On the ladder logic side, after the COMM_REQ call is made in NO_WAIT mode, the task status field should be sampled for a non-zero response. If the RTU Master initializes without errors, an OK [0x0001] status will be returned. If an error occurs, the associated value will be placed in the status field. If no status response is received from the COMM_REQ after waiting one second, the RTU Master should be considered unreachable or in fatal error. The COMM_REQ FT output can also provide an indication of fault conditions. After initialization, the RTM Master will first access the Series 90-30 Slave Status table to determine what stations are currently faulting. If communications to all stations should be attempted, the Series 90-30 ladder logic should clear this table before issuing the COMM_REQ. Thereafter, the RTM Master will begin the broadcast phase of the scan. An RTU/Modbus broadcast message can send up to 250 bytes of data. The imposed Discrete Global Data Table limit of 2000 points (or 250 bytes) allows the maximum discrete data to be passed in a single broadcast. The imposed Analog Global Data Table limit of 250 points (or 500 bytes) allows the maximum analog data to be passed in two broadcast messages. The actual amount of data broadcasted is configurable though each Global Data Table length field in the COMM_REQ. Additionally, either Global Data Table length can be configured to be zero which would disable the broadcast frame entirely for that type. Therefore, that number of broadcast frames sent can be configured from zero to three. To transmit a broadcast frame, usually a large amount of data must be retrieved form the Series 90-30. The time required for this access is 2.5 times the Series 90-30 logic scan time. Additionally, the time to actually transmit this data packet is relatively large at 19.2K baud. Therefore, a configuration option exists which will allow all or only one broadcast to be transmitted on each scan. Selecting only one broadcast per scan will decrease the time interval between individual station poll messages but will increase the time interval to update all global data. After the broadcast phase, the RTM Master will enter the poll phase when all the non-faulted stations are polled for data updates. Function key and display registers will, from each slave, be stored in a temporary table to be compared for changes at the end of the poll phase. However, if any reference data value has changed at the slave it will be written immediately to the Series 90-30. At the end of the scan, the temporary info table is compared to the table from the last scan. If any changes were made, the entire temporary info table is written to the 90-30 copy of the Info table. This write only on change is required for optimization since any write to 90-30 reference memory will take 2.5 times the Series 90-30 logic scan time to complete. If a polled response to an RTU Master request is corrupted or not returned, the RTU Master will retry the command on the next three scans. If there is still no valid response, an error will be registered in the associated Slave’s Status field in the Series 90-30 and that slave will no longer be serviced until the ladder program clears that status field. Data change values will not be lost at the OIU037 when a retry occurs since an ACK/NAK handshaking method is utilized. Logical errors such as Bad-RTU-Command or Data error, or Bad-PLC-Type or Address error will not be retried. While the RTU Master is running, the ladder program should monitor each OIU037 Slave Status Table field. This allows the user to access the current state of a slave. If a slave is marked in error (value > 0), that error must be cleared before communications will be continued. When the RTU Master is running, the Series 90-30 run mode is also being sampled. Should the PLC be taken out of run mode, the RTM Master will halt operation and wait for re-initialization. Pressing the reset button for less than 5 sec. (soft reset) will halt operation and cause it to wait for re-initialization through new COMM_REQ’s: 7 Warning: Pressing the reset button for longer than 5 sec. (hard reset) will cause the RTM Master to halt. To restart from halted state, press the reset button for less than 5 sec. or power-cycle the rack. A3.5 Timing considerations Example timing values are calculated with the following parameters: Number of stations = 16 Global Discrete Data Table length = 250 points Global Analog Data Table length = 250 points Expected Remote Turn-around time response to 256 byte broadcast = 10mS response to Read_Analog_Input = 4mS Series 90-30 PLC scan time = 20mS Phase 1 Broadcast: Discrete access 2.5 * scan_time 50mS Station Status access 2.5 * scan_time 50mS Xfer .8mS * data bytes 26mS Expected_TAT (note 1) 10mS ------------------------------------------------------------------------------------136mS Phase 2 and 3 Broadcast: Analog access 2.5 * scan_time 50mS Xfer .8mS * data bytes 200mS Expected_TAT (note 1) 10mS ------------------------------------------------------------------------------------260mS Per Station Access: Request Xfer 4mS Expected_TAT (remote dependent) 4mS Response Xfer 9mS Process Time 12mS ------------------------------------------------------------------------------------29mS 16 ---------464 mS All broadcast mode (note 2): = 126mS + 2(250mS) + 464mS = 1090mS Cycled broadcast mode (note 2): Phase 1 update Phase 2/3 update = 136mS + 464mS = 590mS = 260mS + 464mS = 724 mS Note 1: Expected_TAT may be ignored in All broadcast mode in calculating response time if ETAT < 2.5 * scan time. 8 Note 2: Any reference data change at a slave will add approximately 2.5 * PLC scan_time to the RTM scan time. Any status or function key change at slave will only add one 2.5 * PLC scan_time delay at end of an RTM scan for all stations. A3.6 Errors: Fatal errors (Port LED blinks code) [contact Technical Support]: 1 count - Allocate timer fault 2 counts - Device Open fault 3 counts - Device Read fault 4 counts - Device Write fault 5 counts - Com Device configuration fault 6 counts - Backplane Device configuration fault 7 counts - PLC write protected (password) 8 counts - Com write buffer overflow 9 counts - Bad Session transfer RTU Master System Status Errors: COMM_REQ errors: 0x00C0 - Specified bad number of slave nodes [ 0 or >32 ]. 0x00C1 - Specified unsupported communications baud rate. 0x00C2 - Specified bad slave status table type [ 8:%R, 10:%AI, 12:%AQ ] 0x00C3 - Specified slave status table offset which exceeds size of specified type. 0x00C4 - Specified bad info table type [ 8:%R, 10:%AI, 12:%AQ ]. 0x00C5 - Specified info table offset that exceeds size of specified type. 0x00C6 - Specified bad global discrete data table type [ 70:%I, 72:%Q, 74:%T, 76:%M ] 0x00C7 - Specified global discrete data table offset that exceeds size of specified type. 0x00C8 - Specified global discrete data table length that exceeds broadcast size. 0x00C9 - Specified bad global analog data table type [ 8:%R, 10:%AI, 12:%AQ ] 0x00CA - Specified global analog data table offset that exceeds size of specified type. 0x00CB - Specified global analog data table length that exceeds broadcast size. Station Status Errors: Local Modbus frame errors (contact Technical Support): 0x00A1 - Internal: bad Modbus command. 0x00A2 - Internal: data length exceeds Modbus frame size. 0x00A3 - Internal: invalid PLC reference offset. 0x00A4 - Internal: invalid PLC reference type. Remote Modbus frame errors: 0x0091 - Unsupported Modbus command. 0x0092 - Invalid Modbus data offset. 0x0093 - Invalid Modbus data. 0x0094 - Failure in remote device Transport Frame response errors: 0x0081 - Timeout waiting for response. 0x0082 - Bad checksum. 0x0083 - Protocol Error 0x0084 - Buffer overflow 0x0085 - Receive data length does not match expected. 9
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
Related manuals
Download PDF
advertisement