PLX3x UM001
PLX3x UM001
PLX3x UM001
Multi-Protocol Gateways
USER MANUAL
Your Feedback Please
We always want you to feel that you made the right decision to use our products. If you have suggestions, comments,
compliments or complaints about our products, documentation, or support, please write or call us.
How to Contact Us
ProSoft Technology, Inc.
+1 (661) 716-5100
+1 (661) 716-5101 (Fax)
www.prosoft-technology.com
[email protected]
ProSoft Technology®, is a registered copyright of ProSoft Technology, Inc. All other brand or product names are or
may be trademarks of, and are used to identify products and services of, their respective owners.
In an effort to conserve paper, ProSoft Technology no longer includes printed manuals with our product shipments.
User Manuals, Datasheets, Sample Ladder Files, and Configuration Files are provided at our website:
http://www.prosoft-technology.com
Content Disclaimer
This documentation is not intended as a substitute for and is not to be used for determining suitability or reliability of
these products for specific user applications. It is the duty of any such user or integrator to perform the appropriate
and complete risk analysis, evaluation and testing of the products with respect to the relevant specific application or
use thereof. Neither ProSoft Technology nor any of its affiliates or subsidiaries shall be responsible or liable for
misuse of the information contained herein. Information in this document including illustrations, specifications and
dimensions may contain technical inaccuracies or typographical errors. ProSoft Technology makes no warranty or
representation as to its accuracy and assumes no liability for and reserves the right to correct such inaccuracies or
errors at any time without notice. If you have any suggestions for improvements or amendments or have found errors
in this publication, please notify us.
No part of this document may be reproduced in any form or by any means, electronic or mechanical, including
photocopying, without express written permission of ProSoft Technology. All pertinent state, regional, and local safety
regulations must be observed when installing and using this product. For reasons of safety and to help ensure
compliance with documented system data, only the manufacturer should perform repairs to components. When
devices are used for applications with technical safety requirements, the relevant instructions must be followed.
Failure to use ProSoft Technology software or approved software with our hardware products may result in injury,
harm, or improper operating results. Failure to observe this information can result in injury or equipment damage.
Copyright © 2019 ProSoft Technology, Inc. All Rights Reserved.
Printed documentation is available for purchase. Contact ProSoft Technology for pricing and availability.
North America: +1 (661) 716-5100
Asia Pacific: +603.7724.2080
Europe, Middle East, Africa: +33 (0) 5.3436.87.20
Latin America: +1.281.298.9109
Important Installation Instructions
Power, Input, and Output (I/O) wiring must be in accordance with Class I, Division 2 wiring methods, Article 501-4 (b)
of the National Electrical Code, NFPA 70 for installation in the U.S., or as specified in Section 18-1J2 of the Canadian
Electrical Code for installations in Canada, and in accordance with the authority having jurisdiction. The following
warnings must be heeded:
WARNING - EXPLOSION HAZARD - SUBSTITUTION OF COMPONENTS MAY IMPAIR SUITABILITY FOR CLASS
I, DIV. 2;
WARNING - EXPLOSION HAZARD - WHEN IN HAZARDOUS LOCATIONS, TURN OFF POWER BEFORE
REPLACING OR WIRING MODULES
WARNING - EXPLOSION HAZARD - DO NOT DISCONNECT EQUIPMENT UNLESS POWER HAS BEEN
SWITCHED OFF OR THE AREA IS KNOWN TO BE NON-HAZARDOUS.
Class 2 Power
Contents
Your Feedback Please ........................................................................................................................ 2
How to Contact Us .............................................................................................................................. 2
Content Disclaimer .............................................................................................................................. 2
Important Installation Instructions ....................................................................................................... 3
Agency Approvals and Certifications .................................................................................................. 3
1 Start Here 9
1.1 Overview.................................................................................................................... 9
1.2 System Requirements ............................................................................................. 10
1.3 Package Contents ................................................................................................... 10
1.4 Mounting the Gateway on a DIN-rail ....................................................................... 11
1.5 Jumper Settings ...................................................................................................... 12
1.6 SD Card ................................................................................................................... 13
1.7 Connecting Power to the Unit ................................................................................. 13
1.8 Installing ProSoft Configuration Builder Software ................................................... 14
4 Hardware Information 43
4.1 Hardware Specifications ......................................................................................... 43
4.1.1 Serial Port Specifications ........................................................................................ 44
4.2 Serial Port Cables (for Gateways with Serial Ports) ............................................... 44
4.2.1 DB9 to RJ45 Adaptor (Cable 14) ............................................................................ 45
4.2.2 Serial Port Specifications ........................................................................................ 45
4.2.3 RS-232 - Null Modem (DTE without Hardware Handshaking) ............................... 46
4.2.4 RS-232 - DTE to DCE Modem Connection ............................................................ 46
4.2.5 RS-422 Interface Connections ................................................................................ 47
4.2.6 RS-485 Interface Connection ................................................................................. 47
5 EIP Protocol 49
5.1 EIP Functional Overview ........................................................................................ 49
5.1.1 EtherNet/IP General Specifications ........................................................................ 50
5.1.2 EIP Internal Database ............................................................................................. 51
5.2 EIP Configuration .................................................................................................... 53
5.2.1 Configuring EIP Class 3 Server .............................................................................. 53
5.2.2 Configuring EIP Class 1 Connection ...................................................................... 56
5.2.3 Configuring EIP Class 3 Client[x]/UClient Connection ........................................... 60
5.3 Network Diagnostics ............................................................................................... 70
5.3.1 EIP PCB Diagnostics .............................................................................................. 70
5.3.2 EIP Status Data in Upper Memory.......................................................................... 71
5.3.3 EIP Error Codes ...................................................................................................... 73
5.4 EIP Reference......................................................................................................... 76
5.4.1 SLC and MicroLogix Specifics ................................................................................ 76
5.4.2 PLC5 Processor Specifics ...................................................................................... 80
5.4.3 ControlLogix and CompactLogix Processor Specifics ............................................ 84
5.4.4 EIP Command Entry Form ...................................................................................... 93
6 MBTCP Protocol 95
6.1 MBTCP Functional Overview.................................................................................. 95
6.1.1 MBTCP General Specifications .............................................................................. 96
6.1.2 MBTCP Internal Database ...................................................................................... 97
6.2 MBTCP Configuration ........................................................................................... 101
6.2.1 Configuring MBTCP Servers ................................................................................ 101
6.2.2 Pass Through Feature .......................................................................................... 103
6.2.3 Configuring MBTCP Client [x] ............................................................................... 104
6.2.4 Configuring MBTCP Client [x] Commands ........................................................... 106
6.3 Network Diagnostics ............................................................................................. 108
6.3.1 MBTCP PCB Diagnostics ..................................................................................... 109
6.3.2 MBTCP Status Data in Upper Memory ................................................................. 109
6.3.3 MBTCP Error Codes ............................................................................................. 112
6.4 MBTCP Reference ................................................................................................ 113
6.4.1 About the Modbus Protocol .................................................................................. 113
Index 213
1 Start Here
In This Chapter
Overview ................................................................................................. 9
System Requirements ........................................................................... 10
Package Contents ................................................................................. 10
Mounting the Gateway on a DIN-rail ..................................................... 11
Jumper Settings .................................................................................... 12
SD Card................................................................................................. 12
Connecting Power to the Unit ................................................................ 13
Installing ProSoft Configuration Builder Software .................................. 14
To get the most benefit from this User Manual, you should have the following
skills:
PLC or PAC configuration software: Launch the program and use it to
configure the processor if required
Microsoft Windows®: Install and launch programs, execute menu
commands, navigate dialog boxes, and enter data
Hardware installation and wiring: Install the module, and safely connect
devices to a power source and to the PLX3x gateway port(s)
1.1 Overview
This document explains the features of the PLX3x gateway. It guides you through
configuration, showing how to map data between a device or network, through
the gateway, to a PLC or PAC. The ProSoft Configuration Builder software
creates files to import into the PLC or PAC programming software, integrating the
gateway into your system. You can also map data between areas in the
gateway's internal database. This allows you to copy data to different addresses
within the gateway database in order to create easier data requests and control.
The PLX3x gateways are stand-alone DIN-rail mounted units that provide one
Ethernet port for communications, remote configuration, and diagnostics. Your
specific gateway may include additional ports depending on the supported
protocols. The module has an SD Card slot (SD card optional) that allows you to
store configuration files that you can use for recovery, transferring the
configuration to another gateway, or general configuration backup.
Important: Before beginning the installation, please verify that all of the following items are
present.
o This jumper also disables access to the PLX3x web page, making
it impossible to upgrade the firmware.
1.6 SD Card
You can order a PLX3x gateway with an optional SD card (Part Number SDI-1G).
In the event of a module failure, you can move the SD card from one module to
the next and resume operation.
In general, if the SD card is present when you power up or reboot the module,
the module uses the configuration on the SC card.
With an SD Card
PCB downloads the configuration to the SD Card in the module.
The module does not transfer the configuration data from the SD card to
internal memory. If you remove the SD card and reboot to the module, the
module loads the configuration data from the module’s memory. If there is no
configuration data in the module’s memory, the module uses the factory
default configuration.
Without an SD Card
PCB downloads the configuration to the module’s internal memory.
If you insert a blank SD Card into the module after the module has been
configured, the module does not use the configuration on the SD card unless
you reboot the module. If you want to copy the configuration to the SD card,
you must download the configuration while the SD card is in the module.
WARNING: Be sure not to reverse polarity when applying power to the gateway. This causes
permanent damage to the gateway’s internal power distribution circuits.
Note: To use the ProSoft Configuration Builder under the Windows 7 OS, you must be sure to
install it using the Run as Administrator option. To find this option, right-click the Setup.exe
program icon, and then click RUN AS ADMINISTRATOR on the context menu. You must install using
this option even if you are already logged in as an Administrator on your network or personal
computer (PC). Using the Run as Administrator option allows the installation program to create
folders and files on your PC with proper permissions and security.
If you do not use the Run as Administrator option, the ProSoft Configuration Builder may appear to
install correctly, but you will receive multiple file access errors whenever the ProSoft Configuration
Builder is running, especially when changing configuration screens. If this happens, you must
completely uninstall the ProSoft Configuration Builder and then re-install using the Run as
Administrator option to eliminate the errors.
ProSoft Configuration Builder (PCB) provides a quick and easy way to manage
gateway configuration files customized to meet your application needs. PCB is
not only a powerful solution for new configuration files, but also allows you to
import information from previously installed (known working) configurations to
new projects.
Important: ProSoft Discovery Service (PDS) locates the gateway through UDP broadcast
messages. PDS is an application that is built into PCB. These messages may be blocked by
routers or layer 3 switches. In that case, PDS is unable to locate the gateways.
To use PDS, arrange the Ethernet connection so that there is no router or layer 3 switch between
the computer and the gateway OR reconfigure the router or layer 3 switch to allow the routing of
the UDP broadcast messages.
3 In the Connection Setup dialog box, click the BROWSE DEVICE(S) button under
the ProSoft Discovery Service (PDS) heading.
4 In the ProSoft Discovery Service dialog box, click on the BROWSE FOR
PROSOFT MODULES icon to search for ProSoft Technology modules on the
network.
2 In the Product Line Filter area of the dialog box, select the appropriate
product type radio button.
3 In the STEP 1: Select Module Type dropdown list, select the model number
that matches your gateway.
4 For some gateways, you can disable one or more ports on the gateway if you
do not need them. See Disabling Gateway Ports (page 20).
5 Click OK to save your settings and return to the PCB Main window.
Note: Disabling ports does not affect the performance of the gateway and is not required.
When you click OK, PCB inserts the gateway into the tree view with the disabled
configuration options hidden.
Note that MBS Port 3 and MBS Port 4 do not appear in the configuration options
for the gateway.
To disable or enable ports on the gateway after you add it to the project
1 Right-click the gateway (PLX31-EIP-MBS4 in this example) in the tree view,
and then choose CHOOSE MODULE TYPE. This opens the Choose Module
Type dialog box, with the correct MODULE TYPE.
Warning: Note that all of the ports are enabled by default, and that the port state in the Choose
Module Type dialog box DOES NOT MATCH THE ACTUAL STATE OF THE PORTS. If you want
any disabled ports to remain disabled, you must disable them again in this dialog box so that the
red circle or yellow triangle appears next to the port name.
2 Click the port name to change its status from enabled to disabled, or from
disabled to enabled. The same rules noted above still apply. For example,
you can disable MBS Port 3 only if MBS Port 4 is already disabled.
3 When you click OK, PCB updates the gateway in the tree view, showing the
configuration options for the enabled ports, and hiding the disabled ports.
2 Click any parameter in the Edit - WATTCP dialog box to change the value. If
your gateway has two Ethernet ports (PLX32) there are separate
configuration options for each port.
Parameter Description
IP Address Unique IP address assigned to the module
Netmask Subnet mask of module
Gateway Gateway (if used)
1 In the ProSoft Configuration Builder, expand the module tree by clicking the
[+] next to the module name.
2 Click the [+] next to COMMONNET, and then double-click DATA MAP.
5 To change the value of a parameter, click the parameter and enter a new
value. Click OK when finished.
6 Repeat the steps above to add more memory mappings.
2.7.2 To Address
0 to 3999
Specifies the beginning destination register address for the copy operation. This
address must always be within the user data area. Make sure you specify a
destination address that does not overwrite data that is stored in memory by one
of the communication protocols running on the gateway.
If multiple copy operations (several rows in the Data map section) happen too
frequently or all happen in the same update interval, they could delay the process
scan of the gateway protocols, which could result in slow data updates or missed
data on communication ports. To avoid these potential problems, set the Delay
Preset to different values for each row in the Data Map section and set them to
higher, rather than lower, numbers.
For example, Delay Preset values below 1000 could cause a noticeable delay in
data updates through the communication ports. Do not set all Delay Presets to
the same value. Instead, use different values for each row in the Data Map such
as 1000, 1001, and 1002 or any other different Delay Preset values you like. This
prevents the copies from happening concurrently and prevents possible process
scan delays.
Note: For instructions on connecting to the module with your PC, see Connecting the PC to the
Gateway (page 15).
In order for the module to use the settings you configured, you must download
(copy) the updated Project file from your PC to the module.
Note: If jumper 3 of the module is set, this function is not available.
1 In the tree view in ProSoft Configuration Builder, right-click the PLX3X
GATEWAY icon and then choose DOWNLOAD FROM PC TO DEVICE. This opens
the Download dialog box.
2 In the Download dialog box, in the Select Connection Type dropdown box,
use the default ETHERNET option.
Note: If you connected to the module using a temporary IP address, the
Ethernet address field contains that temporary IP address. ProSoft
Configuration Builder uses this temporary IP address to connect to the
module.
3 Click TEST CONNECTION to verify that the IP address allows access to the
module.
4 If the connection succeeds, click DOWNLOAD to transfer the Ethernet
configuration to the module.
If the Test Connection procedure fails, you will see an error message. To correct
the error, follow these steps.
1 Click OK to dismiss the error message.
2 In the Download dialog box, click BROWSE DEVICE(S) to open ProSoft
Discovery Service.
Note: For instructions on connecting to the module with your PC, see Connecting the PC to the
Gateway (page 15).
You can upload the project settings from the PLX3x gateway into the current
project in ProSoft Configuration Builder on your PC.
1 In the tree view in ProSoft Configuration Builder, right-click the PLX3X
GATEWAY icon and then choose UPLOAD FROM DEVICE TO PC. This opens the
Upload dialog box.
2 In the Upload dialog box, in the Select Connection Type dropdown box, use
the default ETHERNET setting.
Note: If you connected to the module using a temporary IP address, the
Ethernet address field contains that temporary IP address. ProSoft
Configuration Builder uses this temporary IP address to connect to the
module.
3 Click TEST CONNECTION to verify that the IP address allows access to the
module.
4 If the connection succeeds, click UPLOAD to transfer the Ethernet
configuration to the PC.
If the Test Connection procedure fails, you will see an error message. To correct
the error, follow these steps.
1 Click OK to dismiss the error message.
2 In the Upload dialog box, click BROWSE DEVICE(S) to open ProSoft Discovery
Service.
In This Chapter
LED Indicators ....................................................................................... 31
Using Diagnostics in ProSoft Configuration Builder ............................... 33
Gateway Status Data in Upper Memory ................................................ 40
Tip: You can have a ProSoft Configuration Builder Diagnostics window open for more than one
gateway at a time.
Note: The image above is for a specific version of the PLX3x gateway. The contents of the
Diagnostics window for your module depends on the protocols supported by the gateway.
See Diagnostics Menu (page 36) for more information. If there is no response
from the gateway, as in the example above, follow these steps:
3 In the Connection Setup dialog box, select ETHERNET from the SELECT
CONNECTION TYPE list.
4 Type in the gateway’s IP address in the ETHERNET field.
5 Click CONNECT.
6 Verify that the Ethernet is connected properly between your computer’s
communication port and the gateway.
7 If you are still not able to establish a connection, contact ProSoft Technology
Technical Support for assistance.
Caution: Some of the commands from this menu are designed for advanced debugging and
system testing only, and can cause the gateway to stop communicating, potentially resulting in
data loss or other communication failures. Use these commands only if you fully understand their
potential effects, or if you are specifically directed to do so by ProSoft Technology Technical
Support engineers.
*Use the scroll bar on the right edge of the window to navigate through the
database. Each page displays 100 words of data. The total number of pages
available depends on your gateway’s configuration.
3 To view the log file, from the toolbar, click the VIEW LOG FILE button. The log
file opens as a text file, which you can rename and save to a different
location.
4 To email the log file to ProSoft Technology’s Technical Support team, from
the toolbar, click the EMAIL LOG FILE button. This only works if you have
installed Microsoft Outlook on your PC.)
5 If you capture multiple sequential sessions, PCB appends the new data to the
end of the previously captured data. If you want to clear the previous data
from the log file, you must click the CLEAR DATA button each time before you
start capturing data.
Note: The PCB Data Analyzer is for serial ports only. To analyze data traffic on an Ethernet port,
ProSoft Technology recommends using a network protocol analyzer available on the Internet, such
as Wireshark.
3 In the Data Analyzer Setup dialog box, specify the time tick interval, the serial
port number, and whether the data packet contents should be displayed in
hexadecimal number or ASCII character format. Click OK.
Note: The time tick is a symbol (_TT_) displayed on the Data Analyzer screen that allows you to
estimate time intervals during a Data Analyzer session. The time tick prints at the time interval you
choose in the Data Analyzer Setup dialog box. For example, if you select 10 mS Ticks, it prints
_TT_ every 10 milliseconds.
4 If you wish to capture the Data Analyzer session to a log file, from the toolbar,
click the LOG FILE button.
5 From the toolbar, click the START DATA ANALYZER button to start the Data
Analyzer. Click the button again to stop it.
For Modbus protocol users: To interpret the data packets, refer to the Modbus Protocol
Specification. See About the Modbus Protocol (page 113) or visit www.modbus.org.
4 Hardware Information
In This Chapter
EIP Functional Overview ....................................................................... 43
Serial Port Cables (for Gateways with Serial Ports) .............................. 44
Type Specifications
Serial Port Isolation 2500 Vrms port signal isolation per UL 1577
serial port communication signal uses RF (Radio Frequency)
modulation signal as isolation media, IC chip model is Silicon
Labs Si844x (Si8440,Si8441,Si8442).
Serial Port Protection RS-485/422 port interface lines TVS diode protected at +/- 27V
standoff voltage.
RS-232 port interface lines fault protected to +/- 36V power on,
+/- 40V power off.
Note:
The PLX31-EIP-MBS4 gateway contains four serial communication ports.
Each physical serial port has a RJ45 jack connector. A six-inch RJ45 to DB9
Male adapter cable is provided for each serial port. The DB9 Male adapter cable
provides connections for RS-232, wired as Data Terminal Equipment (DTE), RS-
422 and RS-485.
Note: If the port is configured to use RTS/CTS handshaking, then a jumper is required between the
RTS and the CTS line on the gateway connection.
NOTE: This type of connection is commonly called a RS-485 half-duplex, 2-wire connection. If you
have RS-485 4-wire, full-duplex devices, they can be connected to the gateway's serial ports by
wiring together the TxD+ and RxD+ from the two pins of the full-duplex device to Pin 1 on the
gateway and wiring together the TxD- and RxD- from the two pins of the full-duplex device to Pin 8
on the gateway. As an alternative, you could try setting the gateway to use the RS-422 interface
and connect the full-duplex device according to the RS-422 wiring diagram. For additional
assistance, please contact ProSoft Technical Support.
5 EIP Protocol
In This Chapter
EIP Functional Overview ....................................................................... 49
EIP Configuration .................................................................................. 53
Network Diagnostics .............................................................................. 70
EIP Reference ....................................................................................... 76
Either protocol in the PLX3x gateway can write data to and read data from the
user data area.
If the module is acting as a client/master, you create commands to read data
from external client/server devices and store the data in a specific location in
the user data area.
If the module is acting as a server/slave, the external client/master devices
write data to a specific location in the user data area.
Note: If you want to access module status data in the upper memory, you can use the data
mapping feature in the gateway to copy data from the module status data area to the user data
area. See Mapping Data in Module Memory (page 24). Otherwise, you can use the diagnostic
functions in ProSoft Configuration Builder to view module status data. For more information on the
module status data, see Network Diagnostics (page 70).
The gateway must be correctly configured and connected to the network before
any attempt is made to use it. Use a network verification program, such as
ProSoft Discovery Service or the command prompt PING instruction, to verify
that the gateway can be seen on the network. Use ProSoft Configuration Builder
to confirm proper configuration of the gateway and to transfer the configuration
files to and from the gateway.
2 Double-click the second EIP Class 3 Server to display the Edit - EIP Class 3
Server dialog box.
3 Select the SERVER FILE SIZE (100 or 1000).
o For a value of 100, the registers are from N10:0 to N10:99.
o For a value of 1000, the valid registers are from N10:0 to N10:999.
Data- CIP CIP Boolean CIP Bit Array CIP Byte CIP DINT CIP Real
base Integer
Address
Database Address File size 100 Database Address File size 100
0 N10:0 0 N10:0
999 N19:99 999 N19:99
1000 N20:0 1000 N20:0
1999 N29:99 1999 N29:99
2000 N30:0 2000 N30:0
Note: RSLogix5000 may need to be restarted in order to complete the EDS installation.
3 After you restart RSLogix 5000, open the desired RSLogix 5000 project.
4 In the Controller Organizer, right-click the EtherNet/IP bridge in the I/O tree
and choose NEW MODULE.
5 In the Select Module Type dialog box, in the Enter search text box, type
PLX3.
6 Click your PLX3x gateway, and then click CREATE. This opens the New
Module dialog box.
7 In the New Module dialog box, enter a name for the gateway, then enter the
IP address of the PLX3x gateway.
10 You can add up to eight I/O connections (depending on the PLX3x module).
The I/O connections have a fixed size of 496 bytes of input data and 496
bytes of output data. When finished click OK.
11 In the Module Properties dialog box, click the CONNECTION tab to configure
each I/O connection with its own RPI time. When finished, click OK. The new
gateway appears in the Controller Organizer under the EtherNet/IP bridge.
Note: Class 1 connections are not supported in RSLogix v.15 and older
5 Add a new module under the Generic EtherNet Bridge and add a CIP
Connection (CIP-MODULE). Here is where you specify the parameters for
the I/O connection. The input and output sizes need to match the input and
output sizes configured in PCB. The ADDRESS field value represents the
connection number in PCB. By default all of the connections have 248 Input
words, 248 Output words, and 0 Configuration words. Set the Comm format
to Data type INT, and set the Assembly instances to be "1" for input, "2" for
output, and "4" for configuration.
6 Add and configure a CIP Connection for each I/O connection.
2 Double-click the EIP Class 1 Connection [x] to display the Edit - EIP Class 1
Connection [x] dialog box.
3 In the dialog box, click a parameter and then enter a value for the parameter.
There are four configurable parameters for each I/O connection in ProSoft
Configuration Builder.
Class 3 Client[x]/UClient
2 Double-click the second EIP Class 3 Client [x] to display the Edit - EIP Class
3 Client [x] dialog box.
3 In the dialog box, click any parameter to change its value.
The following table specifies the configuration for the EIP client (master) device
on the network port:
Parameter Value Description
Minimum 0 to 65535 Specifies the number of milliseconds to wait between the initial issuances of
Command milliseconds a command. This parameter can be used to delay all commands sent to
Delay servers to avoid "flooding" commands on the network. This parameter does
not affect retries of a command as they will be issued when failure is
recognized.
Response 0 to 65535 Specifies the amount of time in milliseconds that a Client will wait before re-
Timeout milliseconds transmitting a command if no response is received from the addressed
server. The value to use depends on the type of communication network
used, and the expected response time of the slowest device connected to
the network.
Retry Count 0 to 10 Specifies the number of times a command will be retried if it fails.
2 Double-click the desired command type to display the Edit - EIP Class 3
Client [x] Commands or Edit - EIP Class 3 UClient [x] Commands dialog box.
3 Click ADD ROW to add a new command.
4 Click EDIT ROW or double-click the row to display the Edit dialog box where
you configure the command.
Internal 0 to 3999 Specifies the database address in the module’s internal database to
Address be associated with the command. If the command is a read function,
the data received in the response message is placed at the specified
location. If the command is a write function data used in the command
is sourced from specified data area.
Poll Interval 0 to 65535 Specifies the minimum interval to execute continuous commands. The
parameter is entered in 1/10 of a second. If a value of 100 is entered
for a command, the command executes no more frequently than every
10 seconds.
Reg Count 0 to 125 Specifies the number of data points to be read from or written to the
target device. For REAL datatype, the max count is 62.
Swap Code None Specifies if the data from the server is to be ordered differently than it
Word swap was received. This parameter is typically used when dealing with
Word and Byte swap floating-point or other multi-register values.
Byte swap NONE - No change is made (abcd)
WORD SWAP - The words are swapped (cdab)
WORD AND BYTE SWAP - The words and bytes are swapped (dcba)
Byte swap - The bytes are swapped (badc)
IP Address xxx.xxx.xxx.xxx Specifies the IP address of the target device to be addressed by this
command.
Slot -1 Specifies the slot number for the device. Use a value of -1 when
interfacing to an SLC 5/05. These devices do not have a slot
parameter. When addressing a processor in a ControlLogix or
CompactLogix, the slot number corresponds to the slot in the rack
containing the controller being addressed.
Func Code 502 Specifies the function code to be used in the command.
510 502 - Protected Typed Read
511 510 - Protected Typed Write
511 - Protected Typed Write w/Mask
Data Type Bool Specifies the data type of the target controller tag name.
SINT
INT
DINT
REAL
DWORD
Tag Name Specifies the controller tag in the target PLC.
Offset 0 to 3999 Specifies the offset database where the value corresponds to the Tag
Name parameter
Comment Optional 32 character comment for the command.
Note: Due to the behavior of Connected Clients, please note the following:
- You cannot configure multiple commands with different Class objects to the same device.
- You cannot configure multiple commands with different Class objects to different devices.
- You can configure multiple commands using the Get_Attribute_Single of the same Class and
address different Attributes.
- If you have commands in any of the other command types (i.e. Controller Tag Access) and
configure a CIP Generic command to the same device, it will not work due to the Connected Client
having an active connection to a device. However, you can use both Controller Tag Access and
CIP Generic if the target devices are different.
- To avoid any or all these scenarios, it is recommended to use the Unconnected Client if you wish
to send commands to different devices, since these connections are reset/closed after each
command is executed.
The following table summarizes the status information available in PCB for the
EIP driver:
Connection Type Submenu Item Description
EIP Class 1 Config Configuration settings for Class 1 Connections.
Status Status of the Class 1 Connections. Displays any
configuration error, as well as the number of Class 1
Connections.
EIP Class 3 Server Config Configuration settings for Class 3 Server Connections.
Comm Status Status information for each Class 3 Server Connection.
Displays port numbers, IP addresses, socket status, and
read and write counts.
EIP Class 3 Config Configuration settings for Class 3 Client/UClient
Client/UClient [x] Connections.
Comm Status Status information for Class 3 Client/UClient [x]
commands. Displays a summary of all the errors
resulting from Class 3 Client/UClient [x] commands.
Commands Configuration for the Class 3 Client/UClient [x] command
list.
Cmd Errors Current error codes for each command on the Class 3
(Decimal) Client/UClient [x] command list in decimal number
format. A zero means there is currently no error for the
command.
Cmd Errors Current error codes for each command on the Class 3
(Hex) Client/UClient [x] command list in hexadecimal number
format. A zero means there is currently no error for the
command.
For specific information on error codes, see EIP Error Codes (page 73).
The content of each client’s status data area is structured in the same way. The
following table describes the content of each register in the status data area:
Offset Description
0 Number of Command Requests
1 Number of Command Responses
2 Number of Command Errors
3 Number of Requests
4 Number of Responses
5 Number of Errors Sent
6 Number of Errors Received
7 Reserved
8 Current Error Code
9 Last Error Code
The first word in each client’s command list error data area contains the
status/error code for the first command in the client’s command list. Each
successive word in the command error list is associated with the next command
in the list. Therefore, the size of the command list error data area depends on the
number of commands defined.
The structure of the command list error data area (which is the same for all
clients) is displayed in the following table:
Offset Description
0 Command #1 Error Code
1 Command #2 Error Code
2 Command #3 Error Code
3 Command #4 Error Code
4 Command #5 Error Code
. .
. .
. .
97 Command #98 Error Code
98 Command #99 Error Code
99 Command #100 Error Code
The content of each server’s status data area is structured the same. The
following table describes the content of each register in the status data area:
Offset Description
0 through 1 Connection State
2 through 3 Open Connection Count
4 through 5 Socket Read Count
6 through 7 Socket Write Count
8 through 15 Peer IP
Warning: The gateway-specific error codes (not EtherNet/IP/PCCC compliant) are returned from
the gateway and never returned from an attached EtherNet/IP/PCCC slave device. These are error
codes that are part of the EtherNet/IP/PCCC protocol or are extended codes unique to the PLX3x
gateway. The most common errors for the EtherNet/IP/PCCC protocol are shown below.
2 In the MSG object, click SETUP SCREEN in the MSG object to complete the
configuration of the MSG instruction. This displays the following dialog box.
3 Set the TARGET DEVICE DATA TABLE ADDRESS to a valid file element (such as,
N11:0) for SLC and PLC5 messages.
4 Set the MULTIHOP option to YES.
5 Complete the MULTIHOP tab portion of the dialog box shown in the following
image.
3 Set the TARGET DEVICE DATA TABLE ADDRESS to a valid file element (such
as, N11:0) for SLC and PLC5 messages.
4 Set the MULTIHOP option to YES.
5 Fill in the MULTIHOP tab portion of the dialog box as shown in the following
image.
The File Type Command Code is the ASCII character code value of the File Type
letter. This is the value to enter for the FILE TYPE parameter of the PCCC
Command configurations in the data tables in the ladder logic.
Additionally, the SLC specific functions (502, 510 and 511) support a sub-
element field. This field selects a sub-element field in a complex data table. For
example, to obtain the current accumulated value for a counter or timer, set the
sub-element field to 2.
1 In the MSG object, click SETUP SCREEN in the MSG object to complete the
configuration of the MSG instruction. This displays the following dialog box.
3 Set the TARGET DEVICE DATA TABLE ADDRESS to a valid file element (such
as,N11:0) for SLC and PLC5 messages. For the PLC2 Unprotected Write
message, set the address to the database index (such as, 1000) for the
command.
4 Set the MULTIHOP option to YES.
5 Complete MULTIHOP tab portion of the dialog box as shown in the following
image.
1 In the MSG object, click SETUP SCREEN in the MSG object to complete the
configuration of the MSG instruction. This displays the following dialog box.
Timer / Counter
Code Description
0 Control
1 Preset
2 Accumulated
Control
Code Description
0 Control
1 Length
2 Position
PD
All PD values are floating point values, they are two words long.
Code Description
0 Control
2 SP
4 Kp
6 Ki
8 Kd
26 PV
BT
Code Description
0 Control
1 RLEN
2 DLEN
3 Data file #
4 Element #
5 Rack/Grp/Slot
MG
Code Description
0 Control
1 Error
2 RLEN
3 DLEN
The following diagram shows an example rung that executes a write command.
1 In the Message Configuration dialog box, define the data set to be transferred
from the processor to the gateway as shown in the following image.
4 Make sure you select CIP as the COMMUNICATION METHOD. The PATH
specifies the message route from the processor to the EIP gateway. Path
elements are separated by commas. In the example path shown:
o The first element is "Enet", which is the user-defined name given to the
1756-ENET gateway in the chassis (you can substitute the slot number of
the ENET gateway for the name)
o The second element, "2", represents the Ethernet port on the 1756-ENET
gateway.
o The last element of the path, "192.168.0.75" is the IP address of the
gateway, which is the target for the message.
More complex paths are possible if routing to other networks using multiple 1756-
ENET gateways and racks. Refer to the ProSoft Technology Technical Support
Knowledgebase for more information on Ethernet routing and path definitions
(www.prosoft-technology.com/support).
1 In the Message Configuration dialog box, define the data set to be transferred
from the processor to the gateway as shown in the following image.
4 Make sure you select CIP as the COMMUNICATION METHOD. The PATH
specifies the message route from the processor to the EIP gateway. Path
elements are separated by commas. In the example path shown:
o The first element is "Enet", which is the user-defined name given to the
1756-ENET gateway in the chassis (you can substitute the slot number of
the ENET gateway for the name)
o The second element, "2", represents the Ethernet port on the 1756-ENET
gateway.
o The last element of the path, "192.168.0.75" is the IP address of the
gateway, and the target for the message.
More complex paths are possible if routing to other networks using multiple 1756-
ENET gateways and racks. Refer to the ProSoft Technology Technical Support
Knowledgebase for more information on Ethernet routing and path definitions
(www.prosoft-technology.com/support).
1 In the Message Configuration dialog box, define the data set to be transferred
from the processor to the gateway as shown in the following image.
2 Complete the dialog box for the data area to be transferred. CIP Data Table
messages require a tag database element for both the source and
destination.
o The SOURCE TAG is a tag defined in the Controller Tag database.
o The DESTINATION ELEMENT is the tag element in the gateway.
o The gateway simulates a tag database as an array of elements defined by
the maximum register size for the gateway with the tag name INT_DATA
(with the maximum value of int_data[3999]).
3 In the previous example, the first element in the database is the starting
location for the write operation of ten elements. Click the COMMUNICATION tab
and complete the communication information as shown in the following
image.
4 Make sure you select CIP as the COMMUNICATION METHOD. The PATH
specifies the message route from the processor to the EIP gateway. Path
elements are separated by commas. In the example path shown:
o The first element is "Enet", which is the user-defined name given to the
1756-ENET gateway in the chassis (you can substitute the slot number of
the ENET gateway for the name)
o The second element, "2", represents the Ethernet port on the 1756-ENET
gateway.
o The last element of the path, "192.168.0.75" is the IP address of the
gateway, which is the target for the message.
More complex paths are possible if routing to other networks using multiple 1756-
ENET gateways and racks. Refer to the ProSoft Technology Technical Support
Knowledgebase for more information on Ethernet routing and path definitions
(www.prosoft-technology.com/support).
1 In the Message Configuration dialog box, define the data set to be transferred
from the processor to the gateway as shown in the following image.
2 Complete the dialog box for the data area to be transferred. CIP Data Table
messages require a tag database element for both the source and
destination.
o The DESTINATION TAG is a tag defined in the Controller Tag database.
o The SOURCE ELEMENT is the tag element in the gateway.
o The gateway simulates a tag database as an array of elements defined by
the maximum register size for the gateway (user configuration parameter
"Maximum Register" in the [Gateway] section) with the tag name
INT_DATA.
3 In the previous example, the first element in the database is the starting
location for the read operation of ten elements. Click the COMMUNICATION tab
and complete the communication information as shown in the following
image.
4 Make sure you select CIP as the COMMUNICATION METHOD. The PATH
specifies the message route from the processor to the EIP gateway. Path
elements are separated by commas. In the example path shown:
o The first element is "Enet", which is the user-defined name given to the
1756-ENET gateway in the chassis (you can substitute the slot number of
the ENET gateway for the name)
o The second element, "2", represents the Ethernet port on the 1756-ENET
gateway.
o The last element of the path, "192.168.0.75" is the IP address of the
gateway, which is the target for the message.
More complex paths are possible if routing to other networks using multiple 1756-
ENET gateways and racks. Refer to the ProSoft Technology Technical Support
Knowledgebase for more information on Ethernet routing and path definitions
(www.prosoft-technology.com/support).
6 MBTCP Protocol
In This Chapter
MBTCP Functional Overview ................................................................ 95
MBTCP Configuration ......................................................................... 101
Network Diagnostics ............................................................................ 108
MBTCP Reference .............................................................................. 113
Parameter Description
Modbus Commands 1: Read Coil Status 15: Force (Write) Multiple Coils
Supported 2: Read Input Status 16: Preset (Write) Multiple Holding Registers
(client and server) 3: Read Holding Registers 22: Mask Write Holding Register (Slave Only)
4: Read Input Registers 23: Read/Write Holding Registers (Slave
5: Force (Write) Single Coil Only)
6: Preset (Write) Single Holding
Register
Configurable Gateway IP Address
Parameters: PLC Read Start Register (%MW)
(client and server) PLC Write Start Register (%MW)
Number of MBAP and MBTCP servers
Gateway Modbus Read Start Address
Gateway Modbus Write Start Address
Configurable Minimum Command Delay
Parameters: Response Timeout
(client only) Retry Count
Command Error Pointer
Command List Up to 160 Modbus commands (one tag per command)
Status Data Error codes reported individually for each command.
High-level status data available from Modbus TCP/IP client (for example
PLC)
Command List Polling Each command can be individually enabled or disabled; write-only-on-data-
change is available
Lower memory for the user data area. This is where incoming data from
external devices is stored and accessed.
Either protocol in the PLX3x gateway can write data to and read data from the
user data area.
If the module is acting as a client/master, you create commands to read data
from external client/server devices and store the data in a specific location in
the user data area.
If the module is acting as a server/slave, the external client/master devices
write data to a specific location in the user data area.
Note: If you want to access module status data in the upper memory, you can use the data
mapping feature in the gateway to copy data from the module status data area to the user data
area. See Mapping Data in Module Memory (page 24). Otherwise, you can use the diagnostic
functions in ProSoft Configuration Builder to view module status data. For more information on the
module status data, see Network Diagnostics (page 108).
When configured as a server, the gateway uses its internal database as the
source for read requests and the destination for write requests from remote
clients. Access to the database is controlled by the command type received in
the incoming message from the client. The following table specifies the
relationship of the gateway’s internal database to the addresses required in the
incoming Modbus TCP/IP requests.
The following virtual addresses are not part of the normal gateway user database
and are not valid addresses for standard data. However, these addresses may
be used for incoming commands that are requesting floating-point data.
To use addresses in this upper range requires that you configure the following
parameters in Prosoft Configuration Builder (PCB):
Set the Float Flag in the MBTCP server configuration to YES
Set the Float Start to a database address in the range below
Set the Float Offset to a database address in the gateway user memory area
shown above.
Remember that, once this is done, all data above the Float Start address must be
floating-point data. See Configuring MBTCP Servers (page 101).
The gateway must be correctly configured and connected to the network before
any attempt is made to use it. Use a network verification program, such as
ProSoft Discovery Service or the command prompt PING instruction, to verify
that other devices can find the gateway on the network. Use ProSoft
Configuration Builder to confirm proper configuration of the gateway and to
transfer the configuration files to and from the gateway.
To configure the Pass Through feature, refer to the MBTCP Servers section to
configure the MBAP Pass Through parameters:
2 Double-click the second MBTCP Client [x] to display the Edit - MBTCP Client
[x] dialog box.
3 In the dialog box, click a parameter and then enter a value for the parameter.
Note that the Float Start and Float Offset parameters only appear if you set
Float Flag to YES.
2 Double-click MBTCP Client [x] Commands to display the Edit - MBTCP Client
[x] Commands dialog box.
3 In the dialog box, click ADD ROW to add a command, then click EDIT ROW to
enter values for the command.
You must construct a command list in order to interface the PLX3x gateway with
Modbus TCP/IP server devices. The commands in the list specify the server
device to be addressed, the function to be performed (read or write), the data
area in the device to interface with and the registers in the internal database to
be associated with the device data. The client command list supports up to 16
commands per client. The gateway processes the command list from top
(command #0) to bottom.
The following table describes the command list configuration parameters:
Parameter Value Description
Enable YES Specifies if the command is to be executed and under what conditions.
NO NO (0) - the command is disabled and is not executed in the normal
CONDITONAL polling sequence.
YES (1) - the command is executed upon each scan of the Command
List if the Poll Interval is set to zero (0). If the Poll Interval is set to a non-
zero value, the command is executed when the interval timer for that
command expires.
CONDITIONAL (2) - the command is executed only if the internal bit data
associated with the command changes. This parameter is valid for write
commands (FC 5, 6, 15 and 16).
Internal 0 to 3999 (for Specifies the database address in the gateway's internal database to
Address register-level use as the destination for data from a read command, or as the source
addressing) for data sent by a write command. The database address is interpreted
or as a bit address or a 16-bit register (word) address, depending on the
0 to 63999 (for Modbus Function Code used in the command.
bit-level For Modbus functions 1, 2, 5, and 15, this parameter is interpreted
addressing) as a bit-level address.
For Modbus functions 3, 4, 6, and 16, this parameter is interpreted
as a register-level address.
Poll Interval 0 to 65535 Specifies the minimum interval between executions of continuous
The content of each server's status data area is structured the same. The
following table describes the content of each register in the status data area:
Offset Description
0 Number of Command Requests
1 Number of Command Responses
2 Number of Command Errors
3 Number of Requests
4 Number of Responses
5 Number of Errors Sent
6 Number of Errors Received
7 Configuration Error Word
8 Current Error Code
9 Last Error Code
. .
The content of each Client’s status data area is structured the same. The
following table describes the content of each register in the status data area:
Offset Description
0 Command Request Count (total Client commands sent)
1 Command Response Count (total command responses received)
2 Command Error Count
3 Number of Request Packets
4 Number of Response Packets
5 Errors Sent
6 Errors Received
7 Reserved
8 Current Error
9 Last Error
The Current Error (offset 8) has a non-zero value if the currently executing
client command experiences an error.
The Last Error (offset 9) stores the most recent non-zero value error code
that was reported by the client the last time it experienced an error. Note that
this value is protected. This register holds the last error value until you clear
the memory by a restart, reset, cold-boot, or warm-boot operation. Therefore,
any value here may be from an error that occurred at any time since the
PLX3x gateway was last restarted.
. .
8 15718 to 15733
9 15744 to 15759
The first word in each client’s command list error data area contains the
status/error code for the first command in the client’s Command List. Each
successive word in the Command Error List is associated with the next command
in the client Command List. Therefore, the number of valid error values depends
on on the number of commands defined.
The structure of the command list error data area (which is the same for all
Clients) is displayed in the following table:
Offset Description
0 Command #1 Error Code
1 Command #2 Error Code
2 Command #3 Error Code
. .
. .
13 Command #14 Error Code
14 Command #15 Error Code
15 Command #16 Error Code
Each command list record has the same general format. The first part of the
record contains the information relating to the communication module and the
second part contains information required to interface to the Modbus server
device.
7 MBS Protocol
In This Chapter
MBS Functional Overview ................................................................... 116
MBS Configuration............................................................................... 120
MBS Diagnostics ................................................................................. 128
MBS Reference ................................................................................... 134
The following illustration shows the functionality of the Modbus TCP/IP protocol:
Command List Up to 100 commands per Master port, each fully configurable for
Function Code, slave address, register to/from addressing and word/bit
count.
Supported Modbus 1: Read Coil Status
Function Codes 2: Read Input Status
3: Read Holding Registers
4: Read Input Registers
5: Force (Write) Single Coil
6: Preset (Write) Single Holding Register
15: Force (Write) Multiple Coils
16: Preset (Write) Multiple Holding Registers
Polling of Command Configurable polling of command list, including continuous and on
List change of data, and dynamically user or automatic enabled.
Status Data Error codes available on an individual command basis. In addition, a
slave status list is maintained per active Modbus Master port.
Node Address 1 to 247 (software selectable)
RS Interface RS232, RS422, and RS485
Type Specifications
General Parameters
Internal Database Up to 4000 registers (words) available.
Communication Port 0: Baud Rate: 110 to 115K baud
parameters Port 1, 2, 3: Baud Rate: 110 to 115K baud
Stop Bits: 1 or 2
Data Size: 5 to 8 bits
Parity: None, Even, Odd RTS Timing delays: 0 to 65535 milliseconds
Modbus Modes RTU mode (binary) with CRC-16
ASCII mode with LRC error checking
Floating Point Data Floating point data movement supported, including configurable support
for Enron implementation
Type Specifications
Modbus Function 1: Read Coil Status
Codes 2: Read Input Status
3: Read Holding Registers
4: Read Input Registers
5: Force (Write) Single Coil
6: Preset (Write) Single Register
15: Force(Write) Multiple Coils
16: Force (Write) Multiple Register
22: Mask Write Holding Register (Slave Only)
23: Read/Write Holding Registers (Slave Only)
Modbus Master
Command List Up to 100 command per Master port, each fully configurable for function,
slave address, register to/from addressing and word/bit count
Status Data Error codes available on an individual command basis. In addition, a
slave status list is maintained per active Modbus Master port.
Polling of command list Configurable polling of command list, including continuous and on change
of data
Modbus Slave
Node address 1 to 247 (software selectable)
Status Data Error codes, counters and port status available per configured slave port
starting at register 4400.
Either protocol in the PLX3x gateway can write data to and read data from the
user data area.
If the module is acting as a client/master, you create commands to read data
from external client/server devices and store the data in a specific location in
the user data area.
If the module is acting as a server/slave, the external client/master devices
write data to a specific location in the user data area.
Note: If you want to access module status data in the upper memory, you can use the data
mapping feature in the gateway to copy data from the module status data area to the user data
area. See Mapping Data in Module Memory (page 24). Otherwise, you can use the diagnostic
functions in ProSoft Configuration Builder to view module status data. For more information on the
module status data, see MBS Diagnostics (page 128).
2 Double-click the Modbus Port [x] to display the Edit - Modbus Port [x] dialog
box.
3 In the dialog box, click a parameter and then enter a value for the parameter.
Note that the Float Start and Float Offset parameters only appear if you set
Float Flag to YES.
Data Bits 7 or 8 Specifies the number of data bits for each word for the protocol.
All devices on this port must use the same number of data bits.
Stop Bits 1 or 2 Specifies the number of stop bits that signal the end of a character in the data
stream. For most applications, use one stop bit. For slower devices that
require more time to re-synchronize, use two stop bits.
All devices on this port must use the same number of stop bits.
RTS On 0 to 65535 Specifies the number of milliseconds to delay data transmission after Ready
To Send (RTS) is asserted.
RTS Off 0 to 65535 Specifies the number of milliseconds to delay after the last byte of data is sent
before the RTS modem signal is set low.
Use CTS YES or NO Specifies if the Clear To Send (CTS) modem control line is used or not.
Line NO - The gateway does not monitors the CTS line.
YES - The gateway monitors the CTS line and it must be high before the
gateway sends data. Normally, this parameter is required when half-duplex
modems are used for communication (2-wire). This procedure is commonly
referred to as hardware handshaking.
2 Double-click the Modbus Port [x] Commands to display the Edit - Modbus
Port [x] Commands dialog box.
3 In the dialog box, click ADD ROW to add a command, then click EDIT ROW to
enter values for the command.
Warning: None of these addresses are available in the Modbus address range. In order to access
this data through a Modbus request, you must move the data into the 0 to 3999 address range.
See Mapping Data in Module Memory (page 24).
Note: There are two additional port status parameters that are not available from the General
Modbus Error and Status Data area. The status values, Port State and Port ComState (circled in
red in the graphic below), can be found only in the PCB diagnostic menus under Comm Status for
a port.
These status values are state registers. They are used as "scratchpad" areas by
the gateway firmware to keep track of the current logical state of activities on a
slave port. These state registers are constantly changing as the gateway
progresses through the various stages needed to process communication on the
serial ports. This processing happens faster than can be followed, unless a port
error causes the value to remain constant for some noticeable length of time.
The diagnostic screen display a snapshot of the data; that is, the current values
at the time they are displayed, but the module does not update the data. They
are not live-data screens. Therefore, to see a change in State or ComState, you
must repeatedly update the screen by pressing the appropriate menu key to have
the screen refreshed. Depending on the refresh timing you may or may not see a
change in the displayed values every time you call for an update.
The State register may display any of the following values:
State Value Description
-2 Preparing port, Flushing all buffers, Scan for RTS-Off, or Waiting for port
enable signal
-1 Waiting for receipt of data
0 Undefined state
1 Receiving a message from the Master
2 Building a slave response message
7 Modbus master is fetching next command
2000 Sending slave response to the Master
Warning: None of these addresses are available in the Modbus address range. In order to access
this data through a Modbus request, you must move the data into the 0 to 3999 address range.
See Mapping Data in Module Memory (page 24).
Note that the gateway initializes the Command Error List tables to zero (0) at
power-up, cold boot, and warm boot. If a command executes successfully, the
value in the associated register remains at zero (0), indicating no command error
was detected. Any non-zero value in this table indicates the corresponding
command experienced an error.
The data in this table is dynamic and is updated each time a command is
executed. Therefore, if the command fails once and succeeds on the next
attempt, the error code from the previously failed attempt is overwritten with zero
and be lost. Error codes are not archived in the gateway's database. To see if the
port has experienced an error since the most recent restart and what the most
recently occurring error was, if any, you can check the Last Error/Index.
Warning: None of these addresses are available in the Modbus address range. In order to access
this data through a Modbus request, you must move the data into the 0 to 3999 address range.
See Mapping Data in Module Memory (page 24).
. .
The slave status list contains the current poll status of each slave device on a
master port. Slaves attached to a master port can have one of three states.
Status Description
0 The slave has is not defined in the command list for the master port and is not polled
from the Command List.
1 The slave is configured to be polled by the master port and the most recent
communication attempt was successful.
2 The Master port failed to communicate with the slave device. Communication with the
slave is suspended for a user-defined period based on the scanning of the command list.
Slaves are defined to the system when the gateway loads the Master Command
List during start-up and initialization. Each slave defined is set to a state value of
1 in this initial step. If the master port fails to communicate with a slave device
(timeout expired on a command, retries failed), the master sets the state of the
slave to a value of 2 in this status table. This suspends communication with the
slave device for a user-specified Error Delay Count.
When the master first suspends polling of a particular slave, it creates an Error
Delay Counter for this slave address and set the value in that counter equal to
the Error Delay Counter parameter in the configuration file. Then, each time the
gateway scans a command in the list that has the address of a suspended slave,
the gateway decrements the delay counter value. When the value reaches zero,
the gateway sets the slave state to 1. This re-enables polling of the slave.
The first word in the defined register locations contains the status code for slave
node address 1. Each successive word in the list is associated with the next
node in sequence, up to slave node address 247.
8 ASCII Protocol
In This Chapter
ASCII Functional Overview.................................................................. 135
ASCII Configuration ............................................................................. 142
ASCII Diagnostics ............................................................................... 147
Data received from the ASCII device is accepted by the receive driver and placed
in the receive database location configured by the user. The receive driver waits
until the termination condition that you define is recognized while receiving the
data before placing the new data into the database.
For example, if you use the carriage-return character (ASCII 13) as the
termination condition for a received message, this signals the end of the
message. When the receive driver sees this character in the input stream, it
takes all received characters and places them in the internal database.
In both receive and transmit operations, the driver requires a signal to determine
when new data is received or must be transmitted. The first word in the two data
area is used for this purpose. When the value of the first word changes, new data
is available.
Here is a receive example.
1 The sequence number in the receive data block has a value of 0 (set when
the module initializes).
2 The ASCII device sends a new data packet and the termination condition is
present.
3 The receive driver copies the data into the internal data area, sets the
message length in the data area, and finally, sets the new sequence number.
Receive Data
The gateway places data from the receive driver in the module’s internal
database in a fixed format at the location that you define in ProSoft Configuration
Builder (PCB). The receiver driver is disabled if you set the receive database
start location to a value of -1 when you configure the gateway in PCB. The
following table shows the structure of the received data.
Word Offset Description
0 Receive sequence number. This register is incremented by the module’s Receive
Driver for each new packet received.
1 Number of characters transmitted (0 to 255) from last transmit request on this port.
2 Number of characters received (0 to 255) in the last received terminated string.
3 Receive State
4 Receive Total Count (number of characters received on the port since last reboot).
5 Receive Message Count (number of messages/terminated strings received on the
port since the last reboot).
6 Transmit State
7 Transmit Total Count (number of characters transmitted on this port since the last
reboot).
8 Configuration Error Code
9 to 136 Byte Values for data received, up to 254 characters.
Transmit Data
Data to transmit by the transmit driver is placed in the module’s internal database
in a fixed format at the location that you define in ProSoft Configuration Builder
(PCB). The transmit driver is disabled if you set the database start location to a
value of -1. The following table shows the structure of transmit data.
Word Offset Description
0 Transmit sequence number. This number is incremented by the user’s application
for each new packet to transmit.
1 Number of characters received (0 to 256) from last receive request.
2 Inter-character delay for this message (milliseconds between characters)
3 Number of characters to transmit on Port (0 to 255)
4 to 131 Data to transmit on port
The first word of the data block signals when new transmit data is available.
Word 1 of the block optionally contains the number of characters processed
in the last receive message.
Word 2 of the message paces the characters during the transmission
process. This may be required when interfacing with slow ASCII devices (for
example, modems in command mode). If the word is set to a value other than
zero, the driver inserts a time delay corresponding to the number of
milliseconds between each character transmitted. If you set word 2 to zero,
the transmit driver sends the whole data packet as fast as the driver can
function.
Word 3 of the data block contains the number of bytes present in the transmit
data area to send out the ASCII port.
Words 4 to 131 contain the data to transmit.
Data can be written to and read from the user data area.
To use the transmit function in the module, you define the starting location in
the user data area for the transmitted data.
To use the receive function in the module, you define the starting location in
the user data area for the received data.
Note: If you want to access module status data in the upper memory, you can use the data
mapping feature in the gateway to copy data from the module status data area to the user data
area. See Mapping Data in Module Memory (page 24). Otherwise, you can use the diagnostic
functions in ProSoft Configuration Builder to view module status data. For more information on the
module status data, see ASCII Diagnostics (page 147).
Receive-Only Mode
A port on the module configured to function in receive-only mode only receives
data from an ASCII device. In this mode, the gateway never transmits data back
to the ASCII device. Any data received from the ASCII device is passed from the
receiver driver (Rx Driver) to the gateway’s internal database (Rx Data). The
following illustration shows the flow of data on a port configured for receive-only
mode.
Transmit-Only Mode
A port on the module configured to function in transmit-only mode only transmits
data from the gateway’s internal database (received from an external source or
mapped from upper memory) to an ASCII device. When the transmit driver (Tx
Driver) recognizes a new write block containing data in the module’s internal
database, it transmits this data out to the port. The sequence number in the block
is different than that of the previous block. This signals that the packet is fully
assembled and ready to send. The following illustration shows flow of data on a
port configured for transmit-only mode.
Transmit-Receive Mode
A port configured in transmit-receive mode can send and receive data from an
ASCII device (for example, a terminal). This mode functions in both the transmit
and receive modes. Data flow to and from an ASCII device is handled by the
module’s transmit and receive drivers.
Data received from the ASCII device is stored in the module’s internal
database until ready to be sent to an external device.
Data received by an external device is also stored in the module’s internal
database until ready to be transmitted to the ASCII device.
The following illustration shows the flow of data on a port configured for transmit-
receive mode.
2 Double-click the second ASCII PORT [x] to display the Edit - ASCII PORT [x]
dialog box.
3 In the dialog box, click a parameter and then enter a value for the parameter.
and the Rx message length. If the parameter is set to -1, the port will not
receive data. See Receive Data (page 137) for detailed information on Rx
data structure.
Tx DB Start -1 or 0 to Specifies the starting location in the internal database where the transmit
3896 data will be stored. The buffer holds 130 words, however, the first three
words of the data area define the sequence number, last write byte count
and the Rx message length. If the parameter is set to -1, the port will not
transmit data. See Transmit Data (page 138) for detailed information on Tx
data structure.
Baud Rate Specifies the bits per second rate to use on the port. Enter the baud rate
(bits per second or bps) as a value. You may omit any trailing zeros from
the entered value for the higher bps rates and the gateway firmware will
interpret the setting correctly. For example:
To select 19200 bps, you may enter 192 or 19200.
Valid Values Bits per Second (bps)
110 110 bps
150 150 bps
300 3000 bps
600 6000 bps
1200 1200 bps
2400 2400 bps
4800 4800 bps
96 or 9600 9600 bps
192 or 19200 19200 bps
384 or 38400 38400 bps
576 or 57600 57600 bps
115 or 115200 115200 bps
Parity None, Odd, Specifies the type of parity checking to use. Parity is a simple error
Even checking algorithm used in serial communication. All devices
communicating through this port must use the same parity setting.
Data Bits 5, 6, 7 or 8 Specifies the number of data bits for each word used by the protocol. All
devices communicating through this port must use the same number of
data bits.
Stop Bits 1 or 2 Specifies the number of stop bits. Stop bits signal the end of a character in
the data stream. For most applications, use one stop bit. For slower
devices that require more time to re-synchronize, use two stop bits. All
devices communicating through this port must use the same number of
stop bits.
RTS On 0 to 65535 Specifies the number of milliseconds to delay after Ready To Send (RTS)
milliseconds is asserted before data will be transmitted.
RTS Off 0 to 65535 Specifies the number of milliseconds to delay after the last byte of data is
milliseconds sent before the RTS modem signal will be set low.
Handshaking N, Y, D, X Specifies the handshaking used on the port.
N - No hardware or software handshaking
Y - RTS/CTS hardware handshaking
D - DTR/DSR hardware handshaking
X - XON/XOFF software handshaking.
Rx 0 to 15 Specifies the receive termination characteristics for the port. This value is
Termination bit mapped as follows:
Type Bit 0 - Termination character(s) used
Bit1- Message timeout used
Bit2 - Intercharacter delay timeout used
Bit3 - Packet size limit used. If the parameter is set to zero, the port is
placed in stream mode.
Rx Term 0 to 12 Specifies the number of termination characters used to define the end of
Count received message if bit 0 of the Type parameter is set.
Rx Term ASCII This array of 12 characters specifies the termination characters at the end
Chars characters of each received message. Each character occupies one position in the
array. The number of characters to be used in the array is set in the Rx
Term Count parameter.
Rx Packet 0 to 200 Specifies the length of data required to be received on the port before
Length transferring the data to the processor if bit 3 is set in the RX Termination
Type parameter.
Rx Timeout 0 to 65535 Specifies the number of milliseconds to wait after the first character is
received on the port before automatically sending the data to the processor
if bit 1 is set in the RX Termination Type parameter.
Rx Delay 0 to 65535 Specifies the number of milliseconds to wait between each character
received on the port before sending the data to the processor if bit 2 is set
in the RX Termination Type parameter.
Swap Rx Yes or No Specifies if the data received by the module has the byte order of the data
Data Byte swapped.
NO - no byte swapping occurs.
YES - the odd byte is swapped with the even byte in each word of data
received.
Tx Timeout 0 to 65535 Specifies the timeout period to transmit a message out the port. A
message must be transmitted out the port within the specified timeout
period. Message transmission is aborted if the timeout is exceeded.
Tx Minimum 0 to 65535 Specifies the minimum number of milliseconds to delay before transmitting
Delay a message out the port. This pre-send delay is applied before the RTS on
time. This may be required when communicating with slow devices.
Swap Tx Yes or No Specifies if the data to be transmitted by the module has the byte order of
Data Bytes the data swapped.
NO - no byte swapping occurs.
YES - the odd byte is swapped with the even byte in each word of data
received.
Bit(s) 4 to 7 3 2 1 0
Bit Value - 8 4 2 1
Definition Reserved Packet size Intercharacter Message Termination
limit used delay timeout timeout used character(s)
used used
If none of the bits are set (Type=0), the port is configured for stream mode. Any
characters received on the port are immediately sent to the processor. The
processor must buffer and assemble a packet of information if this mode is
selected as required by the application. If the data can be handled by the
processor in this mode and it is appropriate for your application, this is the fastest
method of communication between the device and the processor.
Any combination of bits is acceptable to the module and should be set to match
the device on the specific port. An example of each termination type appears
below.
A B C 0x0d D E
Comment:
The characters "ABC" will be sent along with the 0x0d character to the controller after the
0x0d character is received. The characters "DE" will not be sent until the 0x0d character is
received.
A B C D E F G
Comment:
After the 'A' character is received on the port, the message timeout is started.
The characters "ABCDE" will be sent to the controller in one block. The characters
"FG" will follow in the second block one second later.
A B C D E F G H
>=300mSec time gap
Comment:
After each character is received, the intercharacter delay timer is reset. The characters
"ABCDEF" will be sent to the controller in one block because the delay timer expires.
The characters "GH" will follow in the second block when the next time gap is recognized.
A B C D E F G H I J
Comment:
The first block sent to the controller will contain the characters "ABCD", and the second
block will contain the characters "EFGH". The characters "IJ" will not be sent until two
more characters are received on the port.
9 SIE Protocol
In This Chapter
SIE Functional Overview ..................................................................... 153
SIE Configuration ................................................................................ 157
SIE Diagnostics ................................................................................... 170
SIE Reference ..................................................................................... 174
10/100 MB Ethernet Communication Actively reads data from and writes data to Siemens
port Industrial Ethernet devices, using Siemens Industrial
Ethernet protocol
Siemens Industrial Ethernet data types overlap in the
gateway's memory database, so the same data can be
conveniently read or written as bit-level or register-level
data
Offers 20 client connections with up to 16 commands
each to multiple servers
Configurable floating-point data movement
Status and error information is generated by the
gateway
Supported PLC Data Exchange Siemens S7-200, Siemens S7-300, Siemens S7-400,
(Read and Write) Siemens S7-1200, Siemens S7-1500
Supported Register Types DB, Inputs, Outputs, Flags, Counters, Timers
Either protocol in the PLX3x gateway can write data to and read data from the
user data area.
If the module is acting as a client/master, you create commands to read data
from external client/server devices and store the data in a specific location in
the user data area.
If the module is acting as a server/slave, the external client/master devices
write data to a specific location in the user data area.
Note: If you want to access module status data in the upper memory, you can use the data
mapping feature in the gateway to copy data from the module status data area to the user data
area. See Mapping Data in Module Memory (page 24). Otherwise, you can use the diagnostic
functions in ProSoft Configuration Builder to view module status data. For more information on the
module status data, see SIE Diagnostics (page 170).
2 Double-click the second SIE Client [x] to display the Edit - SIE Client [x]
dialog box.
3 In the dialog box, click a parameter and then enter a value for the parameter.
The following table defines the configuration parameters for the SIE client
(master):
Parameter Value Description
Minimum Command 0 to 65535 Specifies the number of milliseconds to wait between the initial
Delay issuances of a command. This parameter can be used to delay all
commands sent to servers to avoid "flooding" commands on the
network. This parameter does not affect retries of a command as
they will be issued when failure is recognized.
Response Timeout 0 to 65535 Specifies the time in milliseconds that a Client will wait before re-
transmitting a command if no response is received from the
addressed server. The value to use depends on the type of
communication network used, and the expected response time of
the slowest device on the network.
Retry Count 0 to 65535 Specifies the number of times a command will be retried if it fails.
Command Error 0 to 300 Number of intervals to wait after command error (in seconds).
Delay
2 Double-click SIE Client [x] Commands to display the Edit - SIE Client [x]
Commands dialog box.
3 Click ADD ROW to add a new command.
4 Click EDIT ROW or double-click the row to display the Edit dialog box where
you configure the command.
The gray area represents the byte memory locations being overlapped when the
word address is used consecutively (DB1.DBW0, DB1.DBW1, DB1.DBW2, etc.).
If DB1-DBW0 is used as the first address in the Siemens processor, the next
word address that can be used without overwriting the data is DB1.DBW2.
The gray area above represents the byte memory locations being overlapped
when the double word address is used consecutively (DB1.DBD0, DB1.DBD1,
DB1.DBD2, etc.).
If DBD1.DBD0 is used as the first address in the Siemens processor, the next
double word address that can be used without overwriting the data would be
DB1.DBD4.
All of the above share the same memory locations in the processor.
Note: Incorrect memory location addressing can cause the data to be overwritten.
Example:
Sending an integer value of 11733 from gateway register 1000 to a Siemens S7-
300 processor demonstrates the addressing scheme in the Siemens S7-300
processor. The following image from ProSoft Configuration Builder shows a client
command sent from the gateway to INT data to DB1 address 0.
Row 1 in the SIMATICS Manager screen (below) shows the data transferred
from the gateway
If the data is broken up and displayed in binary format, you can see that the
binary data stored in the first byte of DB1.DBW0 is identical to that stored in byte
address DB1.DBB 0. This is because the memory locations referenced by the
first byte of DB1.DBW 0 and by DB1.DBB0 are one and the same, as explained
above.
The second byte of DB1.DBW0 is the same as DB1.DBB1, and is the same as
the first byte of DB1.DBW1. In reality, the memory space looks like the following:
To access the first address of Data Block, Flag, Input, Output, Timer, and
Counter memory locations in the S7-300 and S7-1200 processors, use the
following address syntax:
Data Block: DB1.DBB0, DB1.DBW0, DB1.DBD0
Flag: MB0, MW0, MD0
Input: IB0, IW0, ID0
Output: QB0, QW0, QD0
Timers: T0 - T65535
Counters: C0 - C65535
To access the first address of Data Block, Flag, Input, and Output memory
locations in the S7-200 processor, use the following address syntax:
Data Block: VB0, VW0, VD0
Flag: MB0, MW0, MD0
Input: IB0, IW0, ID0
Output: QB0, QW0,QD0
The following table describes the content of each client's status data area:
Word Offset Description
0 Command Request Count
1 Command Response Count
2 Command Error Count
3 Number of Request Packets
4 Number of Response Packets
5 Errors Sent
6 Errors Received
7 Configuration Error Word
8 Current Error
9 Last Error
10 to 25 Command List Errors (16 per Client)
For every command that generates an error, the gateway automatically sets the
poll delay parameter for that command to 30 seconds. This instructs the gateway
to wait 30 seconds before it attempts to issue the command again.
As the gateway polls and executes the commands in the Client Command List,
the gateway maintains an error code for each command. The gateway stores the
current error value for each command in the Command List Errors section of
each client's status data area. There is one register for each of the 16 commands
in the command list. An error code of 0 means no error is currently detected for
the specified command.
10 PND Protocol
In This Chapter
PND Functional Overview ................................................................... 181
PND Configuration .............................................................................. 183
Step 7 Configuration ............................................................................ 188
PND Diagnostics ................................................................................. 205
PND Performance ............................................................................... 207
Either protocol in the PLX3x gateway can write data to and read data from the
user data area. The gateway functions as a PROFINET Device, and an external
PROFINET Controller can read data from, or write data to, the gateway user data
area.
Note: If you want to access module status data in the upper memory, you can use the data
mapping feature in the gateway to copy data from the module status data area to the user data
area. See Mapping Data in Module Memory (page 24). Otherwise, you can use the diagnostic
functions in ProSoft Configuration Builder to view module status data. For more information on the
module status data, see PND Diagnostics (page 205).
3 Click OK.
5 In the Edit - PND MODULE MAP dialog, click ADD ROW and double-click on
the row that appears.
6 In the Module in Slot field, select the number of input or output bytes to be
used for each slot. This example uses 32-bytes input and 32-bytes output.
Note: The PND module map is very important because the values enter here must match the
values that are entered in the Siemens processor in order for them to communicate correctly.
7 Click OK. You can now download the configuration to the module.
2 Double-click the second PND to display the Edit - PND dialog box.
In the dialog box, click a parameter and then enter a value for the parameter.The
following table defines the configuration parameters for the PND
communications.
Note: The gateway can store up to 720 registers (1440 bytes) of input data, and up to 720
registers of output data. Make sure that the input and output data regions do not overlap.
2 Double-click PND MODULE MAP to display the Edit - PND MODULE MAP
dialog box.
3 Click ADD ROW to add a new module mapping.
4 Click EDIT ROW or double-click the row to display the Edit dialog box where
you configure module mapping.
1 On the menu bar, click OPTIONS and then click INSTALL GSD FILE.
2 Click BROWSE and browse to the location of the GSD file stored on your PC.
3 Select the file and click INSTALL. The system informs you when the install is
complete.
4 Click OK.
2 Drag and drop the processor that will be used in the network. In this example,
we use 315-2 PN/DP.
3 Right-click the PN-IO option and then click INSERT PROFINET IO SYSTEM.
4 Insert the ProfiNet bus network where the ProSoft gateway is located by
clicking the PN-IO option and the clicking NEW to open Properties - Ethernet
Interface dialog box.
5 Click NEW to open the Properties - New subnet Industrial Ethernet dialog box.
9 Configure the inputs and outputs to match the PCB configuration. In this
example, 32 inputs and 32 outputs were configured in the module.
11 If the module is correctly configured, the following appears. If the status is not
a green checkmark, you must assign the gateway name and IP by selecting
the gateway and then clicking ASSIGN NAME.
Once you download the program, the RUN LED and the DC5V on the processor
should be green. There should be no red LEDs.
The values coming into the processor are displayed at the input section.
2 To modify the values that the processor sends to the module, choose the
output, select the desired value, and click MODIFY VALUE.
2 128 Bytes 128 Bytes 128 Bytes 128 Bytes 128 Bytes 128 Bytes 128 Bytes 128 Bytes
256 Bytes 256 Bytes 256 Bytes 256 Bytes 256 Bytes 256 Bytes NA NA
496 Bytes 496 Bytes 496 Bytes NA NA NA NA NA
4 128 Bytes 128 Bytes 128 Bytes 128 Bytes 128 Bytes 128 Bytes 128 Bytes 128 Bytes
256 Bytes 256 Bytes 256 Bytes 256 Bytes 256 Bytes 256 Bytes NA NA
496 Bytes 496 Bytes 496 Bytes NA NA NA NA NA
8 128 Bytes 128 Bytes 128 Bytes 128 Bytes 128 Bytes 128 Bytes 128 Bytes 128 Bytes
256 Bytes 256 Bytes 256 Bytes 256 Bytes 256 Bytes 256 Bytes NA NA
496 Bytes 496 Bytes 496 Bytes NA NA NA NA NA
2* YES NO NO NO NO NO NO
Example:
PLX3x gateway sending/receiving 128 bytes of EIP data on a single 4 ms Class
1 connection and PLX3x gateway sending/receiver 128 bytes of PROFINET data
with a 4 ms update rate.
The maximum cycle time is calculated as:
EIP = 4 ms/in + 4 ms/out = 8 ms
PND = 4 ms/in + 4 ms/out = 8 ms
PLX3x latency = 4 ms
Total: 20 ms
To use a 2 to 4 ms update rate, you must use a different GSDML file. This
GSDML is available at www.prosoft-technology.com
Under certain conditions (high network load, low update rate, etc.) the
PROFINET Controller may need to raise the watchdog time.
In This Chapter
Contacting Technical Support ............................................................. 209
Warranty Information ........................................................................... 211
Note: For technical support calls within the United States, ProSoft’s 24/7 after-hours phone support
is available for urgent plant-down issues. Detailed contact information for all our worldwide
locations is available on the following page.
Brazil
Phone: +55.11.5084.5178
[email protected]
Languages spoken: Portuguese, English
REGIONAL TECH SUPPORT
[email protected]
Mexico
Phone: +52.222.264.1814
[email protected]
Languages spoken: Spanish, English
REGIONAL TECH SUPPORT
[email protected]
T
TCP/IP Interface Error Codes • 75
Termination of Received Data • 145
Timer / Counter • 83
To Address • 26
Transmit Data • 138, 143
Transmit-Only Mode • 141
Transmit-Receive Mode • 141