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.
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 on the enclosed DVD and are
available at no charge from our web site: 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.
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
Agency
ATEX; Category 3, Zone 2
CE Mark
CSA; CB Safety
Environmental
KCC
RoHS Compliant
UL/cUL; Class 1, Div. 2 Groups A, B, C, D
Important Safety Information
North America Warnings
A This Equipment is Suitable For Use in Class I, Division 2, Groups A, B, C, D or Non-Hazardous Locations Only.
B Warning – Explosion Hazard – Substitution of Any Components May Impair Suitability for Class I, Division 2.
C Warning – Explosion Hazard – Do Not Disconnect Equipment Unless Power Has Been Switched Off Or The
Area is Known To Be Non-Hazardous.
D The subject devices are powered by a Switch Model Power Supply (SMPS) that has regulated output voltage of
5 VDC.
ATEX Warnings and Conditions of Safe Usage:
Power, Input, and Output (I/O) wiring must be in accordance with the authority having jurisdiction.
A Warning - Explosion Hazard - When in hazardous locations, turn off power before replacing or wiring modules.
B Warning - Explosion Hazard - Do not disconnect equipment unless power has been switched off or the area is
known to be non-hazardous.
C These products are intended to be mounted in an IP54 enclosure. The devices shall provide external means to
prevent the rated voltage being exceeded by transient disturbances of more than 40%. This device must be used
only with ATEX certified backplanes.
D DO NOT OPEN WHEN ENERGIZED.
Agency Approvals and Certifications
MVI69E-MBTCP ♦ CompactLogix Platform Contents
Modbus TCP/IP Enhanced Communication Module User Manual
Contents
Your Feedback Please ........................................................................................................................ 2
Modbus TCP/IP Enhanced Communication Module User Manual
1 Start Here
To get the most benefit from this User Manual, you should have the following
skills:
Rockwell Automation® RSLogix™ software: launch the program, configure
ladder logic, and transfer the ladder logic to the processor
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
Modbus and CompactLogix devices to a power source and to the MVI69EMBTCP module’s Ethernet port
ProSoft Technology, Inc. Page 9 of 150
May 20, 2015
Start Here MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
1.1 System Requirements
The MVI69E-MBTCP module requires the following minimum hardware and
software components:
Rockwell Automation CompactLogix® processor (firmware version 10 or
higher), with compatible power supply and one free slot in the rack, for the
MVI69E-MBTCP module.
Important: The MVI69E-MBTCP module has a power supply distance rating of 2 (L43 and L45
installations on first 2 slots of 1769 bus). It consumes 500 mA at 5 Vdc.
Important: For 1769-L23x processors, please make note of the following limitation:
1769-L23E-QBFC1B = 450 mA at 5 Vdc (No MVI69E module can be used with this processor.)
The module requires 500 mA of available 5 Vdc power
Rockwell Automation RSLogix 5000 programming software version 16 or
higher
Rockwell Automation RSLinx® communication software version 2.51 or higher
ProSoft Configuration Builder (PCB) (included)
ProSoft Discovery Service (PDS) (included in PCB)
Pentium® II 450 MHz minimum. Pentium III 733 MHz (or better)
recommended
Supported operating systems:
o Microsoft Windows
o Microsoft Windows Vista
o Microsoft Windows XP Professional with Service Pack 1 or 2
o Microsoft Windows 2000 Professional with Service Pack 1, 2, or 3
o Microsoft Windows Server 2003
128 Mbytes of RAM minimum, 256 Mbytes of RAM recommended
100 Mbytes of free hard disk space (or more based on application
requirements)
256-color VGA graphics adapter, 800 x 600 minimum resolution (True Color
1024 x 768 recommended)
DVD drive
®
7
Note: The Hardware and Operating System requirements in this list are the minimum
recommended to install and run software provided by ProSoft Technology®. Other third party
applications may have different minimum requirements. Refer to the documentation for any third
party applications for system requirements.
Page 10 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Start Here
Modbus TCP/IP Enhanced Communication Module User Manual
1.2 Deployment Checklist
Before you begin to configure the module, consider the following questions. Your
answers will help you determine the scope of your project, and the configuration
requirements for a successful deployment.
Are you creating a new application or integrating the module into an existing
application?
Most applications can use the Sample Add-On Instruction or Sample Ladder
Logic without any modification.
Which slot number in the chassis does the MVI69E-MBTCP module occupy?
For communication to occur, you must enter the correct slot number in the
sample program.
Are the RSLogix 5000 and RSLinx software installed?
RSLogix and RSLinx are required to communicate to the CompactLogix
processor.
How many words of data do you need to transfer in your application (from
CompactLogix to Module / to CompactLogix from Module)?
1.3 Setting Jumpers
The Setup Jumper acts as "write protection" for the module’s firmware. In "write
protected" mode, the Setup pins are not connected, and the module’s firmware
cannot be overwritten. The module is shipped with the Setup jumper OFF. Do not
jumper the Setup pins together unless you are directed to do so by ProSoft
Technical Support (or you want to update the module firmware).
The following illustration shows the MVI69E-MBTCP jumper configuration with
the Setup Jumper OFF.
Note: If you are installing the module in a remote rack, you may prefer to leave the Setup pins
jumpered. That way, you can update the module’s firmware without requiring physical access to
the module.
ProSoft Technology, Inc. Page 11 of 150
May 20, 2015
Start Here MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
1.4 Installing the Module in the Rack
Make sure the processor and power supply are installed and configured before
installing the MVI69E-MBTCP module. Refer to the Rockwell Automation product
documentation for installation instructions.
Warning: Please follow all safety instructions when installing this or any other electronic devices.
Failure to follow safety procedures could result in damage to hardware or data, or even serious
injury or death to personnel. Refer to the documentation for each device to be connected to verify
that suitable safety procedures are in place before installing or servicing the device.
After you verify the jumper placements, insert the MVI69E-MBTCP into the rack.
Use the same technique recommended by Rockwell Automation to remove and
install CompactLogix modules.
Warning: This module is not hot-swappable! Always remove power from the rack before
inserting or removing this module, or damage may result to the module, the processor, or other
connected devices.
1 Align the module using the upper and lower tongue-and-groove slots with the
adjacent module and slide forward in the direction of the arrow.
2 Move the module back along the tongue-and-groove slots until the bus
connectors on the MVI69 module and the adjacent module line up with each
other.
Page 12 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Start Here
Modbus TCP/IP Enhanced Communication Module User Manual
3 Push the module’s bus lever back slightly to clear the positioning tab and
move it firmly to the left until it clicks. Ensure that it is locked firmly in place.
4 Close all DIN-rail latches.
ProSoft Technology, Inc. Page 13 of 150
May 20, 2015
Start Here MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
5 Press the DIN-rail mounting area of the controller against the DIN-rail. The
latches momentarily open and lock into place.
Page 14 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Start Here
Qty.
Part Name
Part Number
Part Description
1
MVI69E-MBTCP Module
MVI69E-MBTCP
Modbus TCP/IP Enhanced
Communication Module
1
Ethernet Cable
RL-CBL025
Straight-through Ethernet cable
1
ProSoft Solutions DVD
DVD-001
Contains sample programs, ProSoft
Configuration Builder (PCB), and
documentation.
Modbus TCP/IP Enhanced Communication Module User Manual
1.5 DVD Contents
The DVD contains all the necessary files for the module including the User
Manual and the ProSoft Configuration Builder (PCB) software. It also may
contain module-specific configuration files such as the RSLogix 5000 Add-On
Profile and sample Add-On Instruction (where applicable to the module).
If the DVD is not present, please visit http://www.prosoft-technology.com for the
latest files.
1.6 Package Contents
The following components are included with your MVI69E-MBTCP module, and
are all required for installation and configuration.
Important: Before beginning the installation, please verify that all of the following items are
present.
If any of these components are missing, please contact ProSoft Technology
Technical Support for replacement parts. For the latest files, or if the DVD is not
present, please visit http://www.prosoft-technology.com.
ProSoft Technology, Inc. Page 15 of 150
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
Page 16 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Adding the Module to RSLogix
In This Chapter
Creating the Module in an RSLogix 5000 Project .................................. 17
Generating the AOI (.L5X File) in ProSoft Configuration Builder ........... 25
Creating a New RSLogix 5000 Project .................................................. 30
Importing the Add-On Instruction ........................................................... 31
Adding Multiple Modules in the Rack (Optional) .................................... 34
Modbus TCP/IP Enhanced Communication Module User Manual
2 Adding the Module to RSLogix
To add the MVI69E-MBTCP module in RSLogix 5000, you must:
1 Create a new project in RSLogix 5000.
2 Add the module to the RSLogix 5000 project. There are two ways to do this:
oYou can use the Add-On Profile from ProSoft Technology. This is the
preferred way, but requires RSLogix version 15 or later.
oYou can manually create the module using a generic 1769 profile, and
then manually configure the module parameters. Use this method if you
have RSLogix version 14 or earlier.
3 Create an Add-On Instruction file using ProSoft Configuration Builder (PCB)
and export the Add-On Instruction to an RSLogix 5000 compatible file (.L5X
file).
4 Import the Add-On Instruction (the .L5X file) into RSLogix 5000.
The .L5X file contains the Add-On Instruction, user-defined data types, controller
tags and ladder logic required to configure the MVI69E-MBTCP module.
2.1 Creating the Module in an RSLogix 5000 Project
In an RSLogix 5000 project, there are two ways you can add the MVI69EMBTCP module to the project.
You can use an Add-On Profile (AOP) from ProSoft Technology. The AOP
contains all the configuration information needed to add the module to the
project. This is the preferred way, but requires RSLogix version 15 or later.
Refer to Creating a Module in the Project Using an Add-On Profile (page 18).
If using an AOP is not an option, you can manually create and configure the
module using a generic 1769 profile. Use this method if you have RSLogix
version 14 or earlier. Refer to Creating a Module in the Project Using a
Generic 1769 Module Profile (page 21).
ProSoft Technology, Inc. Page 17 of 150
May 20, 2015
Adding the Module to RSLogix MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
2.1.1 Creating a Module in the Project Using an Add-On Profile
Installing an Add-On Profile
Download the AOP file (MVI69x_RevX.X_AOP.zip) from the product webpage
(found at http://www.prosoft-technology.com) or from the ProSoft Solutions DVD
onto your local hard drive and then extract the files from the zip archive. Make
sure you have shut down RSLogix 5000 and RSLinx before you install the AddOn Profile (AOP).
Run the MPSetup.exe file to start the Setup Wizard. Follow the Setup Wizard to
install the AOP.
Continue to follow the steps in the wizard to complete the installation.
Page 18 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Adding the Module to RSLogix
Modbus TCP/IP Enhanced Communication Module User Manual
Click FINISHwhen complete. The AOP is now installed in RSLogix 5000. You do
not need to reboot the PC.
Using an Add-On Profile
1 In RSLogix 5000, expand theI/OCONFIGURATION folder in the Project tree.
Right-click the appropriate communications bus and choose NEW MODULE.
This opens the Select Module Type dialog box.
ProSoft Technology, Inc. Page 19 of 150
May 20, 2015
Adding the Module to RSLogix MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
2 In the Module Type Vendor Filters area, uncheck all boxes except the
PROSOFT TECHNOLOGY box. A list of ProSoft Technology modules appears.
3 Select theMVI69E-MBTCP module in the list and click CREATE.
4 In the New Module dialog box, edit the NAME and SLOT. Click OK.
Note : The I/OTABLE SIZES above should reflect the Block Transfer Size parameter set in ProSoft
Configuration Builder (see Module Configuration Parameters (page 47)).
A Block Transfer Size of 60 uses an I/OTABLE SIZE of 62/61 words.
A Block Transfer Size of 120 uses an I/OTABLE SIZE of 122/121 words.
A Block Transfer Size of 240 uses an I/OTABLE SIZE of 242/241 words.
Page 20 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Adding the Module to RSLogix
Modbus TCP/IP Enhanced Communication Module User Manual
The MVI69E-MBTCP module is now visible in the I/O Configuration tree.
2.1.2 Creating a Module in the Project Using a Generic 1769 Module
Profile
1 Expand theI/OCONFIGURATION folder in the Project tree. Right-click the
appropriate communications bus and choose NEW MODULE.
This opens the Select Module Type dialog box.
ProSoft Technology, Inc. Page 21 of 150
May 20, 2015
Adding the Module to RSLogix MVI69E-MBTCP ♦ CompactLogix Platform
Parameter
Value
Name
Enter a module identification string. Example: MVI69E_MBTCP
Description
Enter a description for the module. Example: ProSoft
communication module for Serial Modbus communications.
Comm Format
Select DATA-INT
Slot
Enter the slot number in the rack where the MVI69E-MBTCP
module is installed.
Input Assembly Instance
101
Input Size
62 / 122 / 242
Output Assembly Instance
100
Output Size
61 / 121 / 241
Configuration Assembly Instance
102
Configuration Size
0
User Manual Modbus TCP/IP Enhanced Communication Module
2 Enter GENERIC in the search text box and select the GENERIC 1769MODULE. If
you're using an earlier version of RSLogix, expand OTHER in the Select
Module dialog box, and then select the GENERIC 1769MODULE.
3 Set the Module Properties values as follows:
Page 22 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Adding the Module to RSLogix
Block Transfer Size
Input Block Size
Output Block Size
60
62
61
120
122
121
240
242
241
Modbus TCP/IP Enhanced Communication Module User Manual
The following illustration shows an example where the module was
configured for a block transfer size of 60 words (input block size = 62 words,
output block size = 61 words):
The following options are available:
4 On the Connection tab, set the REQUESTED PACKET INTERVAL value for your
project and click OK.
ProSoft Technology, Inc. Page 23 of 150
May 20, 2015
Adding the Module to RSLogix MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
The MVI69E-MBTCP module is now visible in the I/O Configuration tree.
2.2 Installing ProSoft Configuration Builder
Use the ProSoft Configuration Builder (PCB) software to configure the module.
You can find the latest version of the ProSoft Configuration Builder (PCB) on our
web site: http://www.prosoft-technology.com, or you can install it from the ProSoft
Solutions DVD. The installation filename contains the PCB version number. For
example, PCB_4.3.4.5.0238.EXE.
If you are installing PCB from the ProSoft website:
1 Open a browser window and navigate to
http://www.prosoft-technology.com/pcb.
2 Click the download link for ProSoft Configuration Builder, and save the file to
your Windows desktop.
3 After the download completes, double-click the file to install. If you are using
Windows 7, right-click the PCB installation file and then choose RUN AS
ADMINISTRATOR. Follow the instructions that appear on the screen.
4 If you want to find additional software specific to your MVI69E-MBTCP, enter
the model number into the ProSoft website search box and press the Enter
key.
If you are installing PCB from the ProSoft Solutions DVD:
1 Insert the ProSoft Solutions DVD into your computer's DVD drive and wait for
the ProSoft Installation program to start.
2 If the ProSoft Installation program does not start, open the Windows file
Explorer, navigate to the DVD, and double-click the ProSoft_DVD.exe file.
3 Navigate to the MVI69E-MBTCP selection using the PLATFORM and PRODUCT
selections.
4 ClickPROSOFT CONFIGURATION BUILDER.
5 Follow the instructions that appear on the screen.
Page 24 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Adding the Module to RSLogix
Modbus TCP/IP Enhanced Communication Module User Manual
2.3 Generating the AOI (.L5X File) in ProSoft Configuration Builder
The following sections describe the steps required to set up a new configuration
project in ProSoft Configuration Builder (PCB), and to export the .L5X file for the
project.
2.3.1 Setting Up the Project in PCB
To begin, start PROSOFT CONFIGURATION BUILDER (PCB).
The PCB window consists of a tree view on the left, and an information pane and
a configuration pane on the right side of the window. The tree view consists of
folders for Default Project and Default Location, with a Default Module in the Default Location folder. The following illustration shows the PCB window with a
new project.
ProSoft Technology, Inc. Page 25 of 150
May 20, 2015
Adding the Module to RSLogix MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
Your first task is to add the MVI69E-MBTCP module to the project.
1 In the Tree view, right-click DEFAULT MODULE, and then choose CHOOSE
MODULE TYPE. This opens theChoose Module Type dialog box.
2 In the Product Line Filter area of the dialog box, click MVI69. In the Select
Module Type dropdown list, click MVI69E-MBTCP, and then click OKto save
your settings and return to the ProSoft Configuration Builder window. The
MVI69E-MBTCP icon is now visible in the tree view.
Page 26 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Adding the Module to RSLogix
Modbus TCP/IP Enhanced Communication Module User Manual
2.3.2 Creating and Exporting the .L5X File
There are two parameters in the PCB configuration that affect the format of the
.L5X file that is exported. Before exporting the .L5X file to the PC/Laptop, check
the Block Transfer Size and Slot Number parameters.
1 Expand the MVI69E-MBTCP icon by clicking the [+] symbol beside it.
Similarly, expand the icon.
2 Double-click the icon to open the Edit - Module dialog box.
3 Set the Block Transfer Size to the desired size of the data blocks transferred
between the module and processor (60, 120 or 240 words). You can find
block transfer size information starting in Normal Data Transfer (page 65).
ProSoft Technology, Inc. Page 27 of 150
May 20, 2015
Adding the Module to RSLogix MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
4 Edit the Slot Number indicating where the module is located in the 1769 bus.
5 Click OK to close the Edit – Module dialog box. The .L5X file is now ready to
export to the PC/Laptop.
6 Right-click the MVI69E-MBTCP icon in the project tree and choose EXPORT
AOIFILE.
Page 28 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Adding the Module to RSLogix
Modbus TCP/IP Enhanced Communication Module User Manual
7 Save the .L5X file to the PC/Laptop in an easily found location, such as the
Windows Desktop.
ProSoft Technology, Inc. Page 29 of 150
May 20, 2015
Adding the Module to RSLogix MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
2.4 Creating a New RSLogix 5000 Project
1 Click the FILE menu and then choose NEW.
2 Select your CompactLogix controller model.
3 Select REVISION 16 or newer.
4 Enter a name for your controller, such as My_Controller.
5 Select your CompactLogix chassis type.
Page 30 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Adding the Module to RSLogix
Modbus TCP/IP Enhanced Communication Module User Manual
2.5 Importing the Add-On Instruction
1 Open the application in RSLogix 5000.
2 Expand the TASKS folder, and expand the MAINTASK folder.
3 Expand the MAINPROGRAM folder and then double-click the MAINROUTINE
icon to display the Routine Editor. The MainRoutine contains rungs of logic.
The very last rung in this routine is blank. This is where you can import the
Add-On Instruction (AOI).
Note: You can place the Add-On Instruction in a different routine than the MainRoutine. Make sure
to add a rung with a jump instruction (JSR) in the MainRoutine to jump to the routine containing the
Add-On Instruction.
4 Right-click an empty rung in the routine and choose IMPORT RUNGS.
ProSoft Technology, Inc. Page 31 of 150
May 20, 2015
Adding the Module to RSLogix MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
5 Select the .L5Xfile that you exported from ProSoft Configuration Builder. See
Creating and Exporting the .L5X File (page 27).
This opens the Import Configuration dialog box. Click TAGS under
MAINROUTINE to display the controller tags in the Add-On Instruction.
Note: If you are using RSLogix version 16 or earlier, the Import Configuration dialog box does not
contain the Import Content tree.
Page 32 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Adding the Module to RSLogix
Modbus TCP/IP Enhanced Communication Module User Manual
6 If the module is not located in the default slot (or is in a remote rack), edit the
connection input and output variables that define the path to the module in
the FINAL NAME column (NAME column for RSLogix version 16 or less). For
example, if your module is located in slot 3, change Local:1:I in the FINAL NAME column to Local:3:I. Do the same for Local:1:O.
Note: If your module is located in Slot 1 of the local rack, this step is not required.
7 Click OKto confirm the import. RSLogix indicates that the import is in
progress:
When the import is completed, the new rung with the Add-On Instruction is
visible as shown in the following image.
The procedure has also imported new user-defined data types, data objects
and the Add-On instruction to be used in the project with the MVI69E-MBTCP
module.
ProSoft Technology, Inc. Page 33 of 150
May 20, 2015
Adding the Module to RSLogix MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
2.6 Adding Multiple Modules in the Rack (Optional)
Important: This procedure is for multiple MVI69E-MBTCP modules running in the same
CompactLogix rack
You can add additional modules of the same type to the rack.
1 Add a new MVI69E-MBTCP module to the ProSoft Configuration Builder
(PCB) project.
2 Export the module configuration as an L5X file.
3 Add a new MVI69E-MBTCP to the RSLogix 5000 project.
4 Import the .L5X file into RSLogix 5000 for the new module as an Add-On
Instruction.
2.6.1 Adding an Additional Module in PCB
1 Start ProSoft Configuration Builder (PCB).
2 Right click DEFAULT LOCATION (which you can rename) and choose ADD
MODULE.
3 Right-click NEW MODULE and choose CHOOSE MODULE TYPE.
4 In the Choose Module Type dialog box, select MVI69E in the PRODUCT LINE
FILTER area, and then select MVI69E-MBTCP as the MODULE TYPE. Click
OK.
Page 34 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Adding the Module to RSLogix
Modbus TCP/IP Enhanced Communication Module User Manual
5 Select the MVI69E-MBTCP module in the tree and repeat the above steps to
add a second (or more) module in the PCB project.
Note: You must give each MVI69E-MBTCP module a unique name. The default name on a
duplicate module appends a number to the end such as MVI69E-MBTCP_000, MVI69E-MBTCP_001, etc.
6 You can rename the module by right clicking the module and selecting
Rename.
7 Configure the module parameters. See Module Configuration Parameters
(page 47), and then export the AOI .L5X file for the new module (right-click
the module and then choose EXPORT AOIFILE). See Creating and Exporting
the .L5X File (page 27).
ProSoft Technology, Inc. Page 35 of 150
May 20, 2015
Adding the Module to RSLogix MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
2.6.2 Adding an Additional Module in RSLogix 5000
You can place multiple MVI69E-MBTCP modules in the same rack provided it
does not exceed the power distance rating of the CompactLogix rack (see
System Requirements (page 10)). Adding an additional module is similar to
installing a new module; however, the name of the module must be unique.
1 Start RSLogix 5000 and open the project.
2 In RSLogix 5000, locate the I/OCONFIGURATION folder. Right click
COMPACTBUS LOCAL and choose NEW MODULE.
3 In the Select Module Type dialog box, select theMVI69E-MBTCP module.
oIf you are using an Add-On Profile (AOP), this adds the MVI69E-MBTCP
module and configures the relevant parameters. You must be using
RSLogix version 15 or later to to use an AOP.
oIf using an AOP is not an option, select GENERIC 1769MODULE and click
CREATE.
4 The New Module dialog box appears. Enter a unique name for the new
module, and confirm the slot number of the new module.
Page 36 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Adding the Module to RSLogix
Modbus TCP/IP Enhanced Communication Module User Manual
5 Click OK. The new module is now visible.
6 You must also import the Add-On Instruction(AOI) for the new module (see
Adding another module in PCB). In the Controller Organizer pane, doubleclick MAINROUTINE to open the ladder for the routine.
ProSoft Technology, Inc. Page 37 of 150
May 20, 2015
Adding the Module to RSLogix MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
7 Right-click an empty rung in the routine and then choose IMPORT RUNGS…
8 Select the .L5X file you created and exported for the new module, and click
IMPORT.Recall that the new .L5X file has a unique filename that is specific to
the new module.
Page 38 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Adding the Module to RSLogix
Modbus TCP/IP Enhanced Communication Module User Manual
9 This opens the Import Configuration dialog box. Click TAGS to show the
controller tags in the AddOn Instruction. You must edit the FINAL NAME
column of the tags for the second module to make them unique.
ProSoft Technology, Inc. Page 39 of 150
May 20, 2015
Adding the Module to RSLogix MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
10 Associate the I/O connection variables to the correct module in the
corresponding slot number. The default values are Local:1:I and Local:1:O.
You must edit these values if the card is placed in a slot location other than
slot 1 (Local:1:x means the card is located in slot 1). Since the second card is
placed in slot 2, change the FINAL NAME to Local:2:I and Local:2:O. Also,
you can append a ‘_2’ at the end of the FINAL NAMEof ‘AOI69_MBTCP’ and
‘MBTCP’ arrays as shown below.
Page 40 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Adding the Module to RSLogix
Modbus TCP/IP Enhanced Communication Module User Manual
11 Click OK.
The setup procedure is now complete. Save the project. It is ready to download
to the CompactLogix processor.
ProSoft Technology, Inc. Page 41 of 150
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
Page 42 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Configuring the MVI69E-MBTCP Using PCB
Modbus TCP/IP Enhanced Communication Module User Manual
Downloading the Configuration File to the Processor ............................ 56
Uploading the Configuration File from the Processor ............................ 59
ProSoft Configuration Builder (PCB) provides a quick and easy way to manage
module configuration files customized to meet your application needs.
You build and edit the module’s configuration in ProSoft Configuration Builder.
You use PCB to download the configuration file to the CompactLogix processor,
where it is stored in the MBTCP.CONFIG controller tag generated by the
previously exported AOI. See Creating and Exporting the .L5X File (page 27).
When the MVI69E-MBTCP module boots up, it requests the processor to send
the configuration over the backplane in special Configuration Blocks.
See the chapter Adding the Module to RSLogix (page 16) for the procedures to
create a new PCB project and export a .L5X file for the processor. This chapter
describes the module configuration parameters in detail, as well as how to
download the configuration to the processor using PCB.
ProSoft Technology, Inc. Page 43 of 150
May 20, 2015
Configuring the MVI69E-MBTCP Using PCB MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
3.1 Basic PCB Functions
3.1.1 Creating a New PCB Project and Exporting an .L5X File
Please see the chapter Adding the Module to RSLogix (page 16).
3.1.2 Renaming PCB Objects
You can rename objects such as the Default Project and Default Location folders
in the tree view. You can also rename the Module icon to customize the project.
1 Right-click the object you want to rename and then hoose RENAME.
2 Type the new name for the object and press Enter.
3.1.3 Editing Configuraiton Parameters
1 Click the [+] sign next to the MVI69E-MBTCP icon to expand module
information.
2 Click the[+]sign next to any icon to view module information and
configuration options.
3 Double-click any icon to open an Editdialog box.
To edit a parameter, click the parameter in the left pane and then make your
changes in the right pane.
Note: Depending on the parameter, you must enter text, or a valid number, or select from a list of
options.
4 Click OKto save your changes.
Page 44 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Configuring the MVI69E-MBTCP Using PCB
Modbus TCP/IP Enhanced Communication Module User Manual
5 Double-click any icon to open an Edit dialog box with a table. Use this
dialog box to build and edit Modbus Client commands.
6 To add a row to the table, click ADD ROW.
ProSoft Technology, Inc. Page 45 of 150
May 20, 2015
Configuring the MVI69E-MBTCP Using PCB MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
7 To edit the row, click EDIT ROW. This opens an Edit dialog box.
3.1.4 Printing a Configuration File
1 In the main PCB window, right-click the MVI69E-MBTCP icon and then
choose VIEW CONFIGURATION.
2 In the View Configuration dialog box, click the FILE menu and then click
PRINT.
3 In the Print dialog box, choose the printer to use from the drop-down list,
select the printing options, and then click OK.
Page 46 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Configuring the MVI69E-MBTCP Using PCB
Parameter
Value
Description
Module Name
ASCII
characters
(max. 80)
Assigns a name to the module that can be viewed using the
configuration/debug port. Use this parameter to identify the module
and the configuration file.
Read Register Start
0 to 9999
Specifies the starting address of the module's Read Data area.
Data in this area is transferred from the module to the processor.
Read Register Count
0 to 10,000
Specifies the size of the Read Data area.
Write Register Start
0 to 9999
Specifies the start of the Write Data area in module memory. Data
in this area is transferred in from the processor.
Write Register Count
0 to 10,000
Specifies the size of the Write Data area.
Failure Flag Count
0 to 65535
Specifies the number of consecutive backplane transfer failures
that can occur before Modbus communications are halted.
Error/Status Block Pointer
-1 to 9939
Starting register location in the module’s database for the
error/status table. This data must be placed in the read data range
of module memory. If a value of -1 is entered, the error/status data
is not placed in the database. All other valid values determine the
starting location of the data.
This data area includes the module version information and all
server error/status data. Refer to MBTCP.STATUS.GeneralStatus
(page 88) for more information.
Initialize Input Image
Yes or No
This parameter determines if the input image data and the
module’s Read Register Data values are initialized with Read
Register Data values from the processor. If you set the parameter
to No, the Read Register Data values in the module are set to 0
upon initialization. If you set the parameter to Yes, the data is
initialized with Read Register Data values from the processor.
Using this option requires associated ladder logic to pass the data
from the processor to the module.
Block Transfer Size
60, 120 or 240
Specifies the number of words in each block transferred between
the module and processor.
Slot Number
1 to x
Specifies the slot in the CompactLogix rack for the module.
Modbus TCP/IP Enhanced Communication Module User Manual
3.2 Module Configuration Parameters
3.2.1 Module
This section contains general module configuration parameters. In the ProSoft
Configuration Builder (PCB) tree view, expand the MVI69E-MBTCP icon, then
expand MODULE, and then double-click the MODULE icon.
Important: The sum of the Read Register Count and Write Register Count cannot exceed 10,000
total registers. Furthermore, neither the Read Data nor the Write Data area may extend above
module register 9999. The Read Data and Write Data areas must have separate address ranges in
the module database and must not overlap.
ProSoft Technology, Inc. Page 47 of 150
May 20, 2015
Configuring the MVI69E-MBTCP Using PCB MVI69E-MBTCP ♦ CompactLogix Platform
Parameter
Value
Description
Start Active
Yes or No
Specifies whether or not the port and commands are active
upon module boot-up.
Pass-Through
Mode
Client, Server,
or Server with
Pass-Through
Specifies which device type the port emulates. Refer to the
section Data Flow Between the Module and Processor (page
70) for more information on the server with Pass-Through
option.
Float Flag
Yes or No
Specifies how the Server driver responds to Function Code 3,
6, and 16 commands (read and write Holding Registers) from a
remote client when it is moving 32-bit floating-point data.
If the remote client expects to receive or send one complete
32-bit floating-point value for each count of one (1), then set
this parameter to YES. When set to YES, the Server driver
returns values from two consecutive 16-bit internal memory
registers (32 total bits) for each count in the read command, or
receive 32-bits per count from the client for write commands.
Example: Count = 10, Server driver sends 20 16-bit registers
for 10 total 32-bit floating-point values.
If, however, the remote client sends a count of two (2) for each
32-bit floating-point value it expects to receive or send, or if
you do not plan to use floating-point data in your application,
then set this parameter to NO (the default setting).
You also must set the Float Start and Float Offset parameters
to appropriate values whenever the Float Flag parameter is set
to YES.
Float Start
0 to 32767
Defines the first register of floating-point data. All requests with
register values greater-than or equal to this value are
considered floating-point data requests. This parameter is only
used if the Float Flag is enabled. For example, if you enter a
value of 7000, all requests for registers 7000 and above are
considered as floating-point data.
Float Offset
0 to 9999
Defines the start register for floating-point data in the internal
database. This parameter is used only if the Float Flag is
enabled. For example, if you set the Float Offset value to 3000
and set the float start parameter to 7000, data requests for
register 7000 use the internal Modbus register 3000.
User Manual Modbus TCP/IP Enhanced Communication Module
3.2.2 MBTCP Servers
This section applies to configuring the MVI69E-MBTCP Server (Slave) Driver.
In the ProSoft Configuration Builder tree view, double-click the MBTCPSERVERS
icon.
Page 48 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Configuring the MVI69E-MBTCP Using PCB
Output Offset
0 to 9998
Specifies the offset address into the internal Modbus database
for network requests for Modbus function 1, 5 or 15
commands. For example, if you set the value to 100, an
address request of 0 corresponds to register 100 in the
database.
Bit Input Offset
0 to 9998
Specifies the offset address into the internal Modbus database
for network requests for Modbus function 2 commands. For
example, if you set the value to 150, an address request of 0
returns the value at register 150 in the database.
Holding Register
Offset
0 to 9998
Specifies the offset address in the internal Modbus database
for network requests for Modbus function 3, 6, or 16
commands. For example, if you enter a value of 50, a request
for address 0 corresponds to the register 50 in the database.
Word Input Offset
0 to 9998
Specifies the offset address into the internal Modbus database
for network requests for Modbus function 4 commands. For
example, if you set the value to 150, an address request of 0
returns the value at register 150 in the database.
Connection
Timeout
0 to 1200
Specifies the server’s timeout period if it is not receiving any
new data in the amount of seconds preset.
Modbus TCP/IP Enhanced Communication Module User Manual
ProSoft Technology, Inc. Page 49 of 150
May 20, 2015
Configuring the MVI69E-MBTCP Using PCB MVI69E-MBTCP ♦ CompactLogix Platform
Parameter
Value
Description
Enabled
Yes or No
Enables this client
Start Active
Yes or No
Specifies whether to start with commands active on boot up
Error/Status Pointer
-1 to 9990
Specifies the starting register location in the module’s database for
the error/status table for this client. If you enter a value of -1, the
error/status data is not placed in the database.
All other valid values determine the starting location of the data. This
data should be placed within the read data range of module memory.
Command Error Pointer
-1 to 9999
Specifies the address in the module’s database where the command
error data is placed. If you set the value to -1, the data is not
transferred to the database. This data should be placed within the
read data range of module memory.
Minimum Command
Delay
0 to 65535
milliseconds
Specifies the number of milliseconds to wait between receiving the
end of a server's response to the most recently transmitted command
and the issuance of the next command.
You can use this parameter to place a delay after each command to
avoid sending commands on the network faster than the servers can
be ready to receive them. It does not affect retries of a command, as
retries are issued when a command failure is recognized.
Response Timeout
1 to 65535
milliseconds
Specifies the command response timeout period in 1 millisecond
increments. The client waits for a response from the addressed
server within the timeout period before re-transmitting the command
(Retries) or skipping to the next command in the Command List.
The value depends on the communication network used and the
expected response time (plus or minus) of the slowest device on the
network.
Retry Count
0 to 10
Specifies the number of times a command is retried if it fails.
Float Flag
Yes or No
Specifies if the Daniel/ENRON-specific floating-point data access
functionality is to be implemented. If you set the Float Flag to Y,
Modbus functions 3, 6 and 16 interpret floating point values for
registers as specified by the two following parameters (Float Start,
Float Offset).
Note: You do not need to enable this parameter for most
applications using floating-point data.
Float Start
0 to 65535
Specifies the first register of floating-point data. All requests with
register values greater-than or equal to this value are considered
floating-point data requests. This parameter is only used if the Float Flag is enabled.
User Manual Modbus TCP/IP Enhanced Communication Module
3.2.3 MBTCP Client x
This section defines the general configuration for MBTCP Client x. You can
configure up to 20 MBTCP clients, each using the parameters below. In the
ProSoft Configuration Builder tree view, double-click the MBTCPCLIENT X icon.
Page 50 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Configuring the MVI69E-MBTCP Using PCB
Float Offset
0 to 9999
Specifies the start register for floating-point data in the internal
database. This parameter is used only if the Float Flag is enabled.
ARP Timeout
1 to 60 seconds
Specifies the number of seconds to wait for an ARP reply after a
request is issued. If the value is out of range, the module uses the
default value of 5.
Command Error Delay
0 to 300
Specifies the number of 100 millisecond intervals to turn off a
command in the error list after an error is recognized for the
command. If you set this parameter to 0, there is no delay.
MBAP Port Override
Yes or No
Override default port settings.
NO = Use standard server Port 502 with MBAP format messages. All
other server Port values use encapsulated Modbus message format
(RTU via TCP).
YES = Use MBAP format messages for all server Port values. RTU
via TCP is not used.
Modbus TCP/IP Enhanced Communication Module User Manual
3.2.4 MBTCP Client x Commands
In order to interface the MVI69E-MBTCP module with Modbus server devices,
you must create a command list. 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.
Each of the 20 Client Command Lists supports up to 16 commands each. The
command list is processed from top (Command #0) to bottom.
Read commands are executed without condition. You can set write commands to
execute only if the data in the write command changes (Conditional Enable). If
the register data values in the command have not changed since the command
was last issued, the command is not executed. You can use this feature to
optimize network performance.
The MBTCP Modbus client (and server) communication drivers support several
data read and write commands. When you configure a command, you need to
consider the type of data (bit, 16-bit integer, 32-bit float, etc), and the level of
Modbus support in the server equipment. For information on floating-point
support, please see Floating-Point Support.
In the ProSoft Configuration Builder tree view, double-click the MBTCPCLIENT X COMMANDS icon.
ProSoft Technology, Inc. Page 51 of 150
May 20, 2015
Configuring the MVI69E-MBTCP Using PCB MVI69E-MBTCP ♦ CompactLogix Platform
Parameter
Value
Description
Enable
Disable, Enable,
Conditional,
Bit/Word Override,
Float Override
Specifies whether the command is executed and under what
conditions.
DISABLE (0) = The command is disabled and is not executed in the
normal polling sequence.
ENABLE (1) = The command is executed each scan of the command
list if the Poll Interval (see below) is set to zero. If the Poll Interval is
set to a nonzero value, the command is executed when the interval
timer expires.
CONDITIONAL (2) = For write commands only. The command executes
only if the internal data associated with the command changes.
BIT/WORD OVERRIDE (3) = For read commands only. If a command
error occurs, the module overrides the associated database area with
the Override Value Upon Error parameter value.
FLOAT OVERRIDE (4) = For read commands only. If a command error
occurs, the module overrides the associated database area (2x word
count) with the Override Value Upon Error parameter value.
Internal Address
0 to 9999 (wordlevel)
or
0 to 65535 (bit-level)
Specifies the module’s internal database register to be associated
with the command. Allowable range is 0 to 9999 for Modbus Function
Codes 3, 4, 6, or 16, and 0 to 65535 for Modbus Function Codes 1, 2,
5, or 15.
If the command is a read function, the data read from the server
device is storedbeginning at the module’s internal database register
value entered in this field. This register value must be in the Read
Data area of the module’s memory, defined by the Read Register
Start and Read Register Count parameters in the Module section.
If the command is a write function, the data to be written to the server
device is sourcedbeginning from the module’s internal database
register specified. This register value must come from the Write Data
area of the module’s memory, defined by the Write Register Start and Write Register Count parameters in the Module section.
Poll Interval
0 to 65535 seconds
Specifies the minimum interval between executions of continuous
commands (Enable code = 1).
Example: If you set the value to 10, the command executes no more
frequently than once every 10 seconds. When the command reaches
the top of the command queue and 10 seconds has not elapsed, it is
skipped until the poll interval has expired.
Register Count
1 to 125 (words) or
1 to 800 (coils)
Specifies the number of registers or digital points to be associated
with the command. Modbus Function Codes 5 and 6 ignore this field
as they only apply to a single data point.
For Modbus Function Codes 1, 2, and 15, this parameter sets the
number of single bit digital points (inputs or coils) to be associated
with the command.
For Modbus Function Codes 3, 4, and 16, this parameter sets the
number of 16-bit registers to be associated with the command.
Swap Code
No Change,
Word Swap,
Word and Byte
Swap,
Byte Swap
Defines if the data received from the Modbus server is to be ordered
differently than received from the server device. This parameter is
helpful when dealing with floating-point or other multi-register values,
as there is no standard method of storing these data types in server
devices. You can set this parameter to order the register data
received in an order useful by other applications.
NO CHANGE = No change is made in the byte ordering (ABCD =
ABCD)
WORD SWAP = The words are swapped (ABCD= CDAB)
WORD AND BYTE SWAP = The words are swapped, then the bytes in
each word are swapped (ABCD=DCBA)
BYTE SWAP = The bytes in each word are swapped (ABCD=BADC)
Note: Each pair of characters is a byte (example: AB and CD). Two
pairs of characters is a 16-bit register (example: ABCD).
User Manual Modbus TCP/IP Enhanced Communication Module
Page 52 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Configuring the MVI69E-MBTCP Using PCB
Node IP Address
xxx.xxx.xxx.xxx
Specifies the IP address of the target device being addressed by the
command.
Service Port
1 to 9999
Use a value of 502 when addressing Modbus TCP/IP servers which
are compatible with the Schneider Electric MBAP specifications (most
devices).
If a server implementation supports another service port, enter the
value here. Service Port 2000 is common for encapsulated format
messages.
Slave Address
0 to 255
Mainly used for Modbus TCP/IP to serial conversion. This specifies
the Modbus slave node address on the serial network to be
considered.
If a Modbus TCP/IP server device does not have or need a slave
address, use a value of ‘1’.
If you set the value to zero, the command is a broadcast message on
the network. The Modbus protocol permits broadcast commands for
write operations. Do not use this node address for read operations.
Modbus Function
1, 2, 3, 4, 5, 6, 15,
16
Specifies the Modbus function to be executed by the command.
These function codes are defined in the Modbus protocol.
Specifies the register or digital point address offset within the Modbus
server device. The MBTCP client reads or writes from/to this address
within the server.
Refer to the documentation of each Modbus server device for their
register and digital point address assignments.
Note: The value you enter here does not need to include the "Modbus
Prefix" addressing scheme. Also, this value is an offset of the zerobased Modbus addressing scheme.
Example: When using a Modbus Function Code 3 to read from
address 40010 in the server, enter a value of ‘9’ for this parameter.
The firmware (internally) adds a ‘40001’ offset to the value entered.
This is the same for all Modbus addresses (0x, 1x, 3x, 4x).
Override Value
Upon Error
This parameter is only applicable when the Enable parameter is 3
(Bit/Word Override) or 4 (Float Override).
If an error occurs associated with a read command, the module
automatically populates the associated database area with this
override value.
Modbus TCP/IP Enhanced Communication Module User Manual
ProSoft Technology, Inc. Page 53 of 150
May 20, 2015
Configuring the MVI69E-MBTCP Using PCB MVI69E-MBTCP ♦ CompactLogix Platform
Parameter
Description
IP Address
Unique IP address assigned to the module
Netmask
Subnet mask of module
Gateway
Gateway (if used)
User Manual Modbus TCP/IP Enhanced Communication Module
3.2.5 Ethernet 1
This section defines the permanent IP address, Subnet Mask, and Gateway of
the module.
In the ProSoft Configuration Builder tree view, double-click the ETHERNET 1 icon.
Page 54 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Configuring the MVI69E-MBTCP Using PCB
Parameter
Value
Description
IP Address
xxx.xxx.xxx.xxx
This table contains a list of static IP addresses that the module
uses when an ARP is required. The module accepts up to 40
static IP/MAC address data sets.
Important: If the device in the field is changed, this table must be
updated to contain the new MAC address for the device and
downloaded to the module. If the MAC is not changed, there is no
communication with the module.
Hardware MAC
Address
FF.FF.FF.FF.FF.FF
This table contains a list of static MAC addresses that the module
uses when an ARP is required. The module accepts up to 40
static IP/MAC address data sets.
Important: If the device in the field is changed, this table must be
updated to contain the new MAC address for the device and
downloaded to the module. If the MAC is not changed, there is no
communication with the module.
Modbus TCP/IP Enhanced Communication Module User Manual
3.2.6 Static ARP Table
This section defines a list of static IP addresses that the module uses when an
ARP (Address Resolution Protocol) is required. The module accepts up to 40
static IP/MAC Address data sets.
Use the Static ARP table to reduce the amount of network traffic by specifying IP
addresses and their associated MAC (hardware) addresses that the MVI69EMBTCP module communicates with regularly.
In ProSoft Configuration Builder tree view, double-click the STATICARPTABLE
icon.
ProSoft Technology, Inc. Page 55 of 150
May 20, 2015
Configuring the MVI69E-MBTCP Using PCB MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
3.3 Downloading the Configuration File to the Processor
1 In the ProSoft Configuration Builder tree view, right-click the module icon and
then click DOWNLOAD FROM PC TO DEVICE.
2 In the Download Configuration File dialog box, click RSWHO.
Page 56 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Configuring the MVI69E-MBTCP Using PCB
Modbus TCP/IP Enhanced Communication Module User Manual
3 Browse to, and then click the CompactLogix processor and click OK.
4 Notice the CIPConnect path has been updated in the Download Configuration
File dialog box. Click TEST CONNECTION to verify the path is active and can
successfully connect to the processor.
ProSoft Technology, Inc. Page 57 of 150
May 20, 2015
Configuring the MVI69E-MBTCP Using PCB MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
5 When ready, click DOWNLOAD to download the configuration file to the
processor. Following the download process, the module is automatically
rebooted.
6 After rebooting, the ladder logic sends the configuration data from the
processor to the module. When that is complete, the module starts Modbus
communications.
Page 58 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Configuring the MVI69E-MBTCP Using PCB
Modbus TCP/IP Enhanced Communication Module User Manual
3.4 Uploading the Configuration File from the Processor
1 In the ProSoft Configuration Builder tree view, right-click the MVI69E-MBTCP
icon and choose UPLOAD FROM DEVICE TO PC.
ProSoft Technology, Inc. Page 59 of 150
May 20, 2015
Configuring the MVI69E-MBTCP Using PCB MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
2 In the Upload Configuration File dialog box, the CIPConnect path should
already be constructed if you have previously downloaded the configuration
file from the same PC. If not, click RSWHO, browse to, and then select the
CompactLogix Processor, and click OK.
Page 60 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Configuring the MVI69E-MBTCP Using PCB
Modbus TCP/IP Enhanced Communication Module User Manual
3 Click TEST CONNECTION to verify the path is active and can successfully
connect to the processor.
4 When ready, click UPLOAD. When upload is complete, click CLOSE.
5 PCB now displays the uploaded configuration file.
ProSoft Technology, Inc. Page 61 of 150
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
Page 62 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform MVI69E-MBTCP Backplane Data Exchange
In This Chapter
General Concepts of the MVI69E-MBTCP Data Transfer ..................... 63
Backplane Data Transfer ....................................................................... 64
Normal Data Transfer ............................................................................ 65
Data Flow Between the Module and Processor ..................................... 70
Modbus TCP/IP Enhanced Communication Module User Manual
4 MVI69E-MBTCP Backplane Data Exchange
4.1 General Concepts of the MVI69E-MBTCP Data Transfer
The MVI69E-MBTCP module uses ladder logic to communicate with the
CompactLogix processor across the backplane. The ladder logic handles the
module data transfer, configuration data transfer, special block handling, and
status data receipt.
The following topics describe several concepts that are important for
understanding the operation of the MVI69E-MBTCP module. This is the order of
operations on power-up:
1 The module begins the following logical functions:
o Initialize hardware components
o Initialize CompactLogix backplane driver
o Test and clear all RAM
2 Read configuration from the CompactLogix processor through ladder logic
3 Allocate and initialize Module Register space
4 Enable Modbus TCP/IP Ethernet port
After the module has received the module configuration, the module begins
communicating with other devices on the Modbus network, depending on the
Modbus configuration of the module.
ProSoft Technology, Inc. Page 63 of 150
May 20, 2015
MVI69E-MBTCP Backplane Data Exchange MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
4.2 Backplane Data Transfer
The MVI69E-MBTCP module communicates directly over the CompactLogix
backplane. Data is paged between the module and the CompactLogix processor
across the backplane using the module's input and output images. The update
frequency of the images is determined by the scheduled scan rate that you
define for the module and the communication load on the module. Typical
updates are in the range of 1 to 10 milliseconds per block of information.
This bi-directional data transfer is accomplished by the module filling in data in
the module's input image to send to the processor. Data in the input image is
placed in the Controller Tags in the processor by the ladder logic. The input
image for the module may be set to 62, 122, or 242 words depending on the
block transfer size parameter set in the configuration file. This data area permits
fast throughput of data between the module and the processor.
The processor inserts data to the module's output image to transfer to the
module. The module's program extracts the data and places it in the module's
internal database. The output image for the module may be set to 61, 121, or 241
words depending on the block transfer size parameter set in the configuration
file.
The following illustration shows the data transfer method used to move data
between the CompactLogix processor, the MVI69E-MBTCP module and the
Modbus Network.
All data transferred between the module and the processor over the backplane is
through the input and output images. Ladder logic in the CompactLogix
processor interfaces the input and output image data with data defined in the
Controller Tags. All data used by the module is stored in its internal database.
This database is defined as virtual MBTCP data tables with addresses from 0 to
the maximum number of points for each data type.
Page 64 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform MVI69E-MBTCP Backplane Data Exchange
Offset
Description
Length (words)
0
Write Block ID
1
1 to (n)
Write Data
(n)
Offset
Description
Length (words)
0
Read Block ID
1
1
Write Block ID
1
2 to (n+1)
Read Data
(n)
Modbus TCP/IP Enhanced Communication Module User Manual
4.3 Normal Data Transfer
Normal data transfer includes the paging of the user data found in the module’s
internal database (Registers 0 to 9999) and the status data. These data are
transferred through read (input image) and write (output image) blocks. The
following topics describe the structure and function of each block.
4.3.1 Write Block: Request from the Processor to the Module
These blocks of data transfer information from the processor to the module. The
structure of the output image used to transfer this data is shown below:
(n) = 60, 120, or 240 depending on the Block Transfer Size parameter (refer to the configuration
file).
The Write Block ID is an index value that determines the location in the module’s
database where the data is placed.
4.3.2 Read Block: Response from the Module to the Processor
These blocks of data transfer information from the module to the processor. The
structure of the input image used to transfer this data is shown below:
(n) = 60, 120, or 240 depending on the Block Transfer Size parameter (refer to the configuration
file).
ProSoft Technology, Inc. Page 65 of 150
May 20, 2015
MVI69E-MBTCP Backplane Data Exchange MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
4.3.3 Read and Write Block Transfer Sequences
The Read Block ID is an index value that determines the location where the data
is placed in the processor controller tag array of module read data. The number
of data words per transfer depends on the configured Block Transfer Size
parameter in the configuration file (possible values are 60, 120, or 240).
The Write Block ID associated with the block requests data from the processor.
Under normal program operation, the module sequentially sends read blocks and
requests write blocks. For example, if the application uses three read and two
write blocks, the sequence is as follows:
R1W1R2W2R3W1R1W2R2W1R3W2R1W1
This sequence continues until interrupted by other write block numbers sent by
the controller or by a command request from a node on the Modbus network or
operator control through the module’s Configuration/Debug port.
The following example shows a typical backplane communication application.
If the backplane parameters are configured as follows:
The backplane communication would be configured as follows:
Database address 0 to 479 is continuously transferred from the module to the
processor. Database address 480 to 959 is continuously transferred from the
processor to the module.
The Block Transfer Size parameter configures how the Read Data and Write
Data areas are broken down into data blocks (60, 120, or 240).
Page 66 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform MVI69E-MBTCP Backplane Data Exchange
Modbus TCP/IP Enhanced Communication Module User Manual
If Block Transfer Size = 60
ProSoft Technology, Inc. Page 67 of 150
May 20, 2015
MVI69E-MBTCP Backplane Data Exchange MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
If Block Transfer Size = 120
Page 68 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform MVI69E-MBTCP Backplane Data Exchange
Modbus TCP/IP Enhanced Communication Module User Manual
If Block Transfer Size = 240
ProSoft Technology, Inc. Page 69 of 150
May 20, 2015
MVI69E-MBTCP Backplane Data Exchange MVI69E-MBTCP ♦ CompactLogix Platform
Step
Description
1
Any time the module restarts (boots or reboots), the server port driver receives
configuration information from the MBTCP controller tags. This information configures the
Ethernet port and defines Server driver characteristics. The configuration information may
also contain instructions to offset data stored in the database to addresses different from
addresses requested in the received messages.
2
A Modbus client device, such as a Modicon PLC or an HMI application, issues a read or
write command to the module’s IP address. The Server driver qualifies the message before
accepting it into the module. Rejected commands cause an Exception Response.
3
After the module accepts the command, the data is immediately transferred to or from the
module’s internal database. On a read command, the data is read from of the database and
a response message is built. On a write command, the data is written directly into the
database and a response message is built.
4
After Steps 2 and 3 have been completed, either a normal response message or an
Exception Response message is sent to the client.
5
Counters are available in the Status Block to permit the ladder logic program to determine
the level of activity of the Server driver.
User Manual Modbus TCP/IP Enhanced Communication Module
4.4 Data Flow Between the Module and Processor
The following topics describe the flow of data between the two pieces of
hardware (CompactLogix processor and MVI69E-MBTCP module) and other
nodes on the Modbus network. The module can act as a Modbus TCP/IP client
(master), server (slave), or both simultaneously.
4.4.1 Server Mode
In Server driver mode, the MVI69E-MBTCP module responds to read and write
commands issued by a client on the Modbus network. The following diagram
shows the data flow for normal Server mode.
Page 70 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform MVI69E-MBTCP Backplane Data Exchange
Step
Description
1
Same as normal mode.
2
Same as normal mode.
3
a. In Pass-Through mode, if the Server driver receives a read request, it looks for the
data in module’s internal database, just as it would in Normal mode.
b. The data needed to respond to the read command is retrieved directly from the
internal database and returned to the Server driver so it can build a response message.
c. In Pass-Through mode, if the Server Driver receives a write request, it does not send
the data directly to the module’s internal database. It puts the data to be written into a
special Input Image with a special Block ID code to identify it as a Pass-Through Write
Block and substitutes this special block in place of the next regular Read Data Block. The
special block is processed by the ladder logic and the data to be written is placed into the
WriteData controller tag array at an address that corresponds to the Modbus Address
received in the write command.
d. During normal backplane communications, the data from the WriteData array,
including the data updated by the Pass-Through Write Block, is sent to the module’s
internal database. This gives the ladder logic the opportunity to also change the values
stored in these addresses, if need be, before they are written to the database.
Note: The ReadData array is not used in Pass-Through mode.
4
Same as normal mode.
5
Same as normal mode.
Modbus TCP/IP Enhanced Communication Module User Manual
In Server Pass-Through mode, write commands from the client are handled
differently than they are in Normal mode. In Server Pass-Through mode, all write
requests are passed directly to the processor and data is not written directly into
the module’s database.
This mode is especially useful when both a Modbus client and the module’s
processor logic need to be able to read and write values to the same internal
database addresses.
The following diagram shows the data flow for a server port with Pass-Through
enabled:
ProSoft Technology, Inc. Page 71 of 150
May 20, 2015
MVI69E-MBTCP Backplane Data Exchange MVI69E-MBTCP ♦ CompactLogix Platform
Step
Description
1
Upon module boot-up, the Client driver obtains configuration data from the MBTCP
controller tags. The configuration data retrieved includes Ethernet configuration and the
Client Command List.
Special Commands can be issued directly from the CompactLogix processor using Event
Commands and Command Control. The Client driver uses these command values to
determine the types and order of commands to send to server on the network.
2
After configuration, the Client driver begins transmitting read and/or write commands to
server nodes on the network. If the Client driver is writing data to a server, the data for
the write command is retrieved from the module’s internal database.
3
Once the specified server has successfully processed the command, it returns a
response message to the Client driver for processing.
4
Data received from a server in response to a read command is stored in the module’s
internal database.
5
Status is returned to the processor for each command in the Client Command List.
User Manual Modbus TCP/IP Enhanced Communication Module
4.4.2 Master Mode
In Client mode, the MVI69E-MBTCP module issues read or write commands to
server devices on the Modbus network. You configure these commands in
ProSoft Configuration Builder in the Client Command List. This list is transferred
to the module when the module receives its configuration from the processor.
The commands can also be issued directly from the CompactLogix processor
(Special Command Blocks).
Command status is returned to the processor for each individual command in the
command list. The location of this command status list in the module’s internal
database is user-defined. The following flow chart and associated table describe
the flow of command data into and out of the module.
Page 72 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform MVI69E-MBTCP Backplane Data Exchange
Modbus TCP/IP Enhanced Communication Module User Manual
Important: Take care when constructing each command in the list to ensure predictable operation
of the module. If two commands write to the same internal database address of the module, the
results are invalid. All commands containing invalid data are ignored by the module.
Client Command List
You can define up to 10 Modbus TCP/IP client connections in the MVI69EMBTCP. Each client connection can contain up to 16 commands each.
A valid command includes the following items:
Command enable mode: (0) disabled, (1) continuous, or (2) conditional for
write commands only.
Source or destination database address: The module’s database address
where data is written or read.
Count: The number of words or bits to be transferred: up to 125 words for
Function Codes 3, 4, or 16; and up to 2000 bits for Function Codes 1, 2, or
15.
Note: 125 words is the maximum count allowed by the Modbus protocol. Some field devices may
support less than the full 125 words. Check with the device manufacturer for the maximum count
supported by the particular slave device.
Server IP Address.
Modbus Service Port of the server.
Modbus Function Code: This is the type of command that is issued.
Source or destination address in the server device.
Command Error Codes
As the list is read in from the processor and as the commands are processed, an
error value is maintained in the module for each command. The definition for
these command error codes is listed in Communication Error Codes (page 104).
You can view the command error codes through the Ethernet diagnostics port;
refer to Diagnostics and Troubleshooting (page 92). They can also be transferred
from the module’s database to the processor.
To transfer the Command Error List to the processor, set the Command Error Offset parameter in the port configuration to a module database address that is in
the module’s Read Data area.
Note: The Command Error List must be placed in the Read Data area of the database, so it can be
transferred to the processor in the input image. Each MBTCP client must place their own
Command Error List within the Read Data area so that they do not overlap each other.
ProSoft Technology, Inc. Page 73 of 150
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
Page 74 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Using Controller Tags
User-Defined Data Types (UDTs) ......................................................... 76
MBTCP Controller Tag Overview .......................................................... 79
Modbus TCP/IP Enhanced Communication Module User Manual
5 Using Controller Tags
Ladder logic is required for managing communication between the MVI69EMBTCP module and the CompactLogix processor. The ladder logic handles
tasks such as:
Module backplane data transfer
Special block handling
Status data receipt
Additionally, a power-up handler may be needed to initialize the module’s
database and may clear some processor fault conditions.
The sample Import Rung with Add-On Instruction (from the ProSoft DVD or
http://www.prosoft-technology.com) is extensively commented to provide
information on the purpose and function of each user-defined data type and
controller tag. For most applications, the Import Rung with Add-On Instruction
works without needing any modification.
5.1 Controller Tags
Data related to the MVI69E-MBTCP is stored in the ladder logic in variables
called controller tags. Individual controller tags can be grouped into collections of
controller tags called controller tag structures. A controller tag structure can
contain any combination of:
Individual controller tags
Controller tag arrays
Lower-level controller tag structures
The controller tags for the module are pre-programmed into the Add-On
Instruction Import Rung ladder logic. After you import the Add-On Instruction, you
can find the controller tags in the Controller Tags subfolder, located in the Controller folder in the Controller Organizer pane of the main RSLogix 5000
window.
This controller tag structure is arranged as a tree structure. Individual controller
tags are found at the lowest level of the tree structure. Each individual controller
tag is defined to hold data of a specific type, such as integer or floating-point
data. Controller tag structures are declared with user-defined data types (UDTs),
which are collections of data types.
ProSoft Technology, Inc. Page 75 of 150
May 20, 2015
Using Controller Tags MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
5.1.1 MVI69E-MBTCP Controller Tags
The main controller tag structure, MBTCP, is broken down into five lower-level
controller tag structures.
The five lower-level controller tag structures contain other controller tags and
controller tag structures. Click the [+] sign next to any controller tag structure to
expand it and view the next level in the structure.
For example, if you expand the MBTCP.DATA controller tag structure, you see
that it contains two controller tag arrays, MBTCP.DATA.ReadData and
MBTCP.DATA.WriteData, which are 600-element integer arrays by default.
The controller tags in the Add-On Instruction are commented in the DESCRIPTION
column.
Notice that the DATA TYPE column displays the data types used to declare each
controller tag, controller tag array or controller tag structure. Individual controller
tags are declared with basic data types, such as INT and BOOL. Controller tag
arrays are declared with arrays of basic data types. Controller tag structures are
declared with user-defined data types (UDTs).
5.2 User-Defined Data Types (UDTs)
User-defined data types (UDTs) allow you to organize collections of data types
into groupings. You can use these groupings, or data type structures, to declare
the data types for controller tag structures. Another advantage of defining a UDT
is that you may reuse it in other controller tag structures that use the same data
types.
The Add-On Instruction Import Rung ladder logic for the module has pre-defined
UDTs. You can find them in the User-Defined subfolder, located in the Data Types folder in the Controller Organizer pane of the main RSLogix window. Like
the controller tags, the UDTs are organized in a multiple-level tree structure.
Page 76 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Using Controller Tags
Modbus TCP/IP Enhanced Communication Module User Manual
5.2.1 MVI69E-MBTCP User-Defined Data Types
Twenty-two different UDTs are defined for the MVI69E-MBTCP Add-On
Instruction.
The main UDT, MBTCPMODULEDEF, contains all the data types for the module
and was used to create the main controller tag structure, MBTCP. There are five
UDTs one level below MBTCPMODULEDEF. These lower-level UDTs were used
to create the MBTCP.CONFIG, MBTCP.DATA, MBTCP.CONTROL, MBTCP.STATUS, and MBTCP.UTIL controller tag structures.
Click the [+] signs to expand the UDT structures and view lower-level UDTs.
ProSoft Technology, Inc. Page 77 of 150
May 20, 2015
Using Controller Tags MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
For example, if you expand MBTCP.DATA, you see that it contains two UDTs,
ReadData and WriteData. Both of these are 600-element integer arrays by
default.
Notice that these UDTs are the data types used to declare the
MBTCP.DATA.ReadData and MBTCP.DATA.WriteData controller tag arrays.
The UDTs are commented in the DESCRIPTION column.
Tip: If more than 600 words of Read or Write Data are needed, the MBTCP.DATA.ReadData and
MBTCP.DATA.WriteData controller tag arrays can be expanded. Simply edit the size of the
ReadData or WriteData integer array in the Data Type column of the MBTCPDATA UDT. In the
example below, the ReadData array size has been changed to 2000. Save and download the
ladder program for this change to take effect.
Page 78 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Using Controller Tags
Tag Name
Description
MBTCP.CONFIG
Configuration information
MBTCP.DATA
MBTCP input and output data transferred between the processor
and the module
MBTCP.CONTROL
Governs the data movement between the PLC rack and the
module
MBTCP.STATUS
Status information
MBTCP.UTIL
Generic tags used for internal ladder processing (DO NOT
MODIFY)
Tag Name
Description
MBTCP.CONFIG.FileData
This parameter contains the MBTCP configuration data after it
has been downloaded from PCB. It is displayed in ASCII format.
Note: MBTCP configuration changes cannot be made directly in
this array; the configuration must be downloaded with PCB.
MBTCP.CONFIG.FileSize
Configuration file size (MBTCP.CONFIG.FileData array) in bytes.
MBTCP.CONFIG.FileCRC32
CRC checksum of the configuration file stored in the array.
Modbus TCP/IP Enhanced Communication Module User Manual
5.3 MBTCP Controller Tag Overview
You use controller tags to:
View the read and write being transferred between the module and the
processor.
View status data for the module.
Set up and trigger special functions.
Initiate module restarts (Warm Boot or Cold Boot).
The following sections describe each of these controller tag structures in more
detail.
5.3.1 MBTCP.CONFIG
When ProSoft Configuration Builder (PCB) downloads the configuration file from
the PC to the processor, the processor stores the configuration file data in the
MBTCP.CONFIG.FileData array. Its CRC is also included in this array.
You cannot edit this array directly. You must use PCB to edit the module
configuration since PCB calculates a unique CRC to protect data integrity. Any
change to the configuration parameters directly in this array do not match the
calculated CRC.
ProSoft Technology, Inc. Page 79 of 150
May 20, 2015
Using Controller Tags MVI69E-MBTCP ♦ CompactLogix Platform
Tag Name
Description
MBTCP.DATA.ReadData
Data area copied from the module to the processor. This array
stores the Modbus data coming into the module from the Modbus
network.
MBTCP.DATA.WriteData
Data area copied from the processor to the module. This array
stores the outgoing data sent from the module to the Modbus
network.
Tag Name
Range
Description
MBTCP.CONTROL.
CommandControl.Trigger
0 or 1
Command Control: Disable = 0, Enable = 1
MBTCP.CONTROL.
CommandControl.CommandID
1 to 16
This value represents the quantity of commands to
be requested in the Command Control block (1 to
16). The ladder logic uses this value to generate
the Command Control Block ID. The rightmost
digits of the Command Control Block ID are the
number of commands requested by the block.
MBTCP.CONTROL.
CommandControl.ClientID
0 to 19
Client ID associated with the command to be
executed. There are 20 MBTCP clients available.
MBTCP.CONTROL.
CommandControl.CommandIndex
0 to 15
This array stores the command index within the
client ID. It can be determined by command row
number minus 1. Up to 16 command indexes can
be stored here
MBTCP.CONTROL.
CommandControl.CmdsAddedToQue
This value is returned from the module. This is the
number of commands added to the queue.
-1 = Client not enabled and active.
-2 = Client index not valid.
MBTCP.CONTROL.
CommandControl.CmdInQue
Number of commands in the queue waiting to be
executed
User Manual Modbus TCP/IP Enhanced Communication Module
5.3.2 MBTCP.DATA
This array contains the Read Data and Write Data arrays for processor-tomodule communication.
5.3.3 MBTCP.CONTROL
This array handles special tasks requested by the processor.
MBTCP.CONTROL
This array allows the processor to dynamically enable configured commands for
execution.
Page 80 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Using Controller Tags
register to be associated with the command.
Allowable range is:
0 to 9999 for Modbus Function Codes 3, 4, 6, or
16
0 to 65535 for Modbus Function Codes 1, 2, 5,
or 15.
MBTCP.CONTROL.EventCommand
_DBData.RegisterCount
1 to 125
(words)
or
1 to 800
(coils)
Specifies the number of registers or digital
points to be associated with the command.
Modbus Function Codes 5 and 6 ignore this field
as they only apply to a single data point.
MBTCP.CONTROL.EventCommand
_DBData.SwapCode
0,1,2,3
Specifies if the data received from the Modbus
server is to be ordered differently than received
from the server device.
This parameter is helpful when dealing with
floating-point or other multi-register values, as
there is no standard method of storage of these
data types in server devices.
MBTCP.CONTROL.EventCommand
_DBData.ModbusFC
1,2,3,4,5,6,
15,16
Specifies the Modbus function to be executed
by the command.
Specifies the register or digital point address
offset within the Modbus server device. The
MBTCP client reads or writes from/to this
address within the server.
MBTCP.CONTROL.EventCommand
_DBData.StatusReturned
0 = Fail
1 = Success
-1 = Client is not Enabled and Active
MBTCP.CONTROL.EventCommand
_DBData.CmdInQue
Number of commands in the queue waiting to
be executed
Modbus TCP/IP Enhanced Communication Module User Manual
MBTCP.CONTROL.EventCommand_DBData
This array allows the processor to dynamically build Modbus commands with
data associated to the module’s database. This feature is meant for periodic
execution such as resetting clock and zeroing-out counters.
ProSoft Technology, Inc. Page 81 of 150
May 20, 2015
Using Controller Tags MVI69E-MBTCP ♦ CompactLogix Platform
Specifies the register or digital point address
offset within the Modbus server device. The
MBTCP client reads or writes from/to this
address within the server.
MBTCP.CONTROL.EventCommand
_PLCData.PointCount
1 to 125
(words)
or
1 to 800
(coils)
Specifies the number of registers or digital
points to be associated with the command.
Modbus Function Codes 5 and 6 ignore this field
as they only apply to a single data point.
MBTCP.CONTROL.EventCommand
_PLCData.Data
Data values associated with the command
MBTCP.CONTROL.EventCommand
_PLCData.ErrorStatus
Command status after execution
User Manual Modbus TCP/IP Enhanced Communication Module
MBTCP.CONTROL.EventCommand_PLCData
This array allows the processor to dynamically build Modbus commands with
PLC processor data. This feature is meant for periodic execution such as
resetting the clock and zeroing-out counters.
Page 82 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Using Controller Tags
register to be associated with the command.
Allowable range is:
0 to 9999 for Modbus Function Codes 3, 4, 6, or
16
0 to 65535 for Modbus Function Codes 1, 2, 5,
or 15.
MBTCP.CONTROL.EventSequence
Command.RegisterCount
1 to 125
(words)
or
1 to 800
(coils)
Specifies the number of registers or digital
points to be associated with the command.
Modbus Function Codes 5 and 6 ignore this field
as they only apply to a single data point.
MBTCP.CONTROL.EventSequence
Command.SwapCode
0,1,2,3
Specifies if the data received from the Modbus
server is to be ordered differently than received
from the server device.
This parameter is helpful when dealing with
floating-point or other multi-register values, as
there is no standard method of storage of these
data types in server devices.
MBTCP.CONTROL.EventSequence
Command.ModbusFC
1,2,3,4,5,6,
15,16
Specifies the Modbus function to be executed
by the command.
Specifies the register or digital point address
offset within the Modbus server device. The
MBTCP client reads or writes from/to this
address within the server.
Modbus TCP/IP Enhanced Communication Module User Manual
MBTCP.CONTROL.EventSequenceCommand
This tag array contains the values needed to build one Modbus TCP/IP
command, have it sent to a specific client on the module, and control the
processing of the returned response block.
ProSoft Technology, Inc. Page 83 of 150
May 20, 2015
Using Controller Tags MVI69E-MBTCP ♦ CompactLogix Platform
Tag Name
Range
Description
MBTCP.CONTROL.Time.SetTime
0 or 1
Sends the PLC time to the module
0 = Disable, 1 = Enable
MBTCP.CONTROL.Time.GetTime
0 or 1
Retrieves the time from the module to PLC
0 = Disable, 1 = Enable
MBTCP.CONTROL.Time.Year
0 to 9999
Four digit year value. Example: 2014
MBTCP.CONTROL.Time.Month
1 to 12
Month
MBTCP.CONTROL.Time.Day
1 to 31
Day
MBTCP.CONTROL.Time.Hour
0 to 23
Hour
MBTCP.CONTROL.Time.Minute
0 to 59
Minute
MBTCP.CONTROL.Time.Second
0 to 59
Second
MBTCP.CONTROL.Time.Milliseconds
0 to 999
Millisecond
MBTCP.CONTROL.Time.Error
0 or -1
0 = OK
-1 = Error present
Tag Name
Range
Description
MBTCP.CONTROL.ClientServerControl.
Trigger
0 or 1
Toggle client/server control
0 = Disable, 1 = Enable
Each bit in this word is used to enable/disable the commands for
client 0.
User Manual Modbus TCP/IP Enhanced Communication Module
MBTCP.STATUS.EventSeqCounts
This array indicates the number of commands waiting in the command queue.
Byte 1: Number of Event sequence commands for which status has not yet been
retrieved (up to 15). This corresponds to the
MNETC.STATUS.EventSeqCmdPending.Client[x]_QueueCount controller tag.
Byte 2: Total number of commands waiting in the command queue. This includes
Event Commands, Event Commands with Sequence Numbers, and Command
Control messages. This corresponds to the
Two words per client.
Word 1 = Client (0 to19)
Word 2 = Error code for last executed command for
corresponding client
Tag Name
Description
MBTCP.UTIL.ReadDataSizeGet
Holds Read Data array size
MBTCP.UTIL.WriteDataSizeGet
Holds Write Data array size
MBTCP.UTIL.ReadDataBlkCount
Number of Read Data blocks – this value is the Read Register
Count divided by the Block Transfer Size
Modbus TCP/IP Enhanced Communication Module User Manual
MBTCP.STATUS.GetEventDataStatus
This array contains the status of the event command last executed.
5.3.5 MBTCP.UTIL
The array is used for internal ladder processing. It should not be modified.
ProSoft Technology, Inc. Page 89 of 150
May 20, 2015
Using Controller Tags MVI69E-MBTCP ♦ CompactLogix Platform
MBTCP.UTIL.WriteDataBlkCount
Number of Write Data blocks – this value is the Write Register
Count divided by the Block Transfer Size
MBTCP.UTIL.RBTSremainder
Remainder from the Read Register Count divided by the Block
Transfer Size
MBTCP.UTIL.WBTSremainder
Remainder from the Write Register Count divided by the Block
Transfer Size
MBTCP.UTIL.BlockIndex
Computed block offset for data
MBTCP.UTIL.LastRead
Latest Read Block ID received from the module
MBTCP.UTIL.LastWrite
Latest Write Block ID to be sent to the module
MBTCP.UTIL.LastWriteInit
Latest Write Block ID used during initialization
MBTCP.UTIL.ConfigFile [ ] Array
Holds variables for configuration file transfer
MBTCP.UTIL.ConfigFile.
WordLength
Length of configuration data to be included in block transfer
MBTCP.UTIL.ConfigFile.
BlockCount
Block transfer count for transferring the whole configuration file
from PLC to the Module
MBTCP.UTIL.ConfigFile.FileOffset
Offset in configuration file to use as a starting point for copying
over configuration data
MBTCP.UTIL.ConnectionInputSize
Holds size of the Connection Input array
MBTCP.UTIL.BlockTransferSize
Size of the backplane transfer blocks
MBTCP.UTIL.SlotNumber
Slot number of the module in the rack
MBTCP.UTIL.CommandControl
Pending
Waiting for response from module
MBTCP.UTIL.
CommandControlWriteBlockID
Block ID for Command Control
MBTCP.UTIL.
EventCommandDBDataPending
Keeps an Event Command with Data message from being sent
to the module before the previous Event Command with Data
is completed
MBTCP.UTIL.
EventCmd_DBDataBlockID
Block ID of last read block
MBTCP.UTIL.EventCmd_
DBDataWriteEventBlockID
Event response write block ID.
MBTCP.UTIL.EventCmd_
ProcessorDataPending
Event Command Processor Data Pending – Yes (0) or No (1)
MBTCP.UTIL.EventCmd_
ProcessorDataBlockID
Event Command processor data block ID
MBTCP.UTIL.
EventSeqCmdPending
Event Sequence Command Pending – Yes (0) or No (1)
MBTCP.UTIL.
EventSeqCmdBlockID
Event Sequence Command Block ID
MBTCP.UTIL.
EventSeqCmdWriteEventBlockID
Event Sequence Command Write Event Block ID
MBTCP.UTIL.PassThrough.
MBControlx [ ] Array
Holds variables used for processing Pass-Through messages
MBTCP.UTIL.
ClientServerControlBlockID
Client and Server Control Block ID
MBTCP.UTIL.ClientStatusPending
Client Status Pending – Yes (0) or No (1)
MBTCP.UTIL.
Client Status Write Block ID
User Manual Modbus TCP/IP Enhanced Communication Module
Page 90 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Using Controller Tags
ClientStatusWriteBlockID
MBTCP.UTIL.
EventSeqStatusPending
Event Sequence Status Pending – Yes (0) or No (1)
MBTCP.UTIL.
EventSeqStatusWriteBlockID
Event Sequence Status Write Block ID
MBTCP.UTIL.
EventSeqCountsWriteBlockID
Event Sequence Counts Write Block ID
MBTCP.UTIL.
EventSeqCountsPending
Event Sequence Counts Pending – Yes (0) or No (1)
MBTCP.UTIL.TimeWriteBlockID
Time Write Block ID
MBTCP.UTIL.
ResetStatusWriteBlockID
Reset Status Write Block ID
MBTCP.UTIL.
GetEventDataStatusBlockID
Get Event Data Status Block ID
Modbus TCP/IP Enhanced Communication Module User Manual
ProSoft Technology, Inc. Page 91 of 150
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
Page 92 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Diagnostics and Troubleshooting
In This Chapter
Ethernet LED Indicators ........................................................................ 93
LED Status Indicators ............................................................................ 94
Connecting the PC to the Module's Ethernet Port ................................. 96
Using the Diagnostics Menu in ProSoft Configuration Builder ............... 98
Communication Error Codes ............................................................... 104
Connecting to the Module’s Webpage ................................................. 105
LED
State
Description
Data
OFF
Ethernet connected at 10Mbps duplex speed
AMBER Solid
Ethernet connected at 100Mbps duplex speed
Link
OFF
No physical network connection is detected. No Ethernet
communication is possible. Check wiring and cables.
GREEN Solid
or Blinking
Physical network connection detected. This LED must be ON solid
for Ethernet communication to be possible.
Modbus TCP/IP Enhanced Communication Module User Manual
6 Diagnostics and Troubleshooting
The module provides information on diagnostics and troubleshooting in the
following forms:
LED status indicators on the front of the module provide general information
on the module's status.
You can view status data contained in the module through the Ethernet port,
using the troubleshooting and diagnostic capabilities of ProSoft Configuration Builder (PCB).
You can transfer status data values from the module to processor memory
and can monitor them in the processor manually or by customer-created
logic.
6.1 Ethernet LED Indicators
The Ethernet LEDs indicate the module's Ethernet port status.
ProSoft Technology, Inc. Page 93 of 150
May 20, 2015
Diagnostics and Troubleshooting MVI69E-MBTCP ♦ CompactLogix Platform
ETH
CFG
BP
OK
LED
Color
Indication
ETH
Green
Application is running and Ethernet is ready
Off
Application is not running
CFG
Red
Error in configuration
Green
Configuration is OK
Amber
Configuration state
Off
Application is not running or backplane has failed
BP
Red
Processor is not in RUN mode
Green
(Flashing) BP transfer is operational
Amber
Initialization state
Off
Application is not running
OK
Red
Application is not running
Green
Application is running
User Manual Modbus TCP/IP Enhanced Communication Module
6.2 LED Status Indicators
The LEDs indicate the module’s operating status.
During module configuration, the OK LED is red and the BP LED is on. If the BP
ACT and OK LEDs blink at a rate of every one-second, this indicates a serious
problem with the module. Call ProSoft Technology Technical Support to arrange
for repairs.
6.2.1 Clearing a Fault Condition
Typically, if the OK LED on the front of the module remains RED for more than
ten seconds, a hardware problem has been detected in the module or the
program has exited.
To clear the condition, follow these steps:
1 Turn off power to the rack.
2 Remove the card from the rack.
3 Verify that all jumpers are set correctly.
4 If the module requires a Compact Flash card, verify that the card is installed
correctly.
5 Re-insert the card in the rack and turn the power back on.
6 Verify correct configuration data is being transferred to the module from the
CompactLogix controller.
If the module's OK LED does not turn GREEN, verify that the module is inserted
completely into the rack. If this does not cure the problem, contact ProSoft
Technology Technical Support.
Page 94 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Diagnostics and Troubleshooting
Problem description
Steps to take
Processor fault
Verify that the module is securely plugged into the slot that has been
configured for the module in the I/O Configuration in RSLogix.
Verify that the slot location in the rack has been configured correctly in
the ladder logic.
Processor I/O LED
flashes
This indicates a problem with backplane communications. A problem
could exist between the processor and any installed I/O module, not just
the MVI69E-MBTCP. Verify that all modules in the rack are correctly
configured.
Problem description
Steps to take
BP ACT LED (not
present on MVI56E
modules) remains OFF
or blinks slowly
MVI69 modules with
scrolling LED display:
<Backplane Status>
condition reads ERR
This indicates that backplane transfer operations are failing. Connect to
the module’s Configuration/Debug port to check this.
To establish backplane communications, verify the following items:
The processor is in RUN or REM RUN mode.
The backplane driver is loaded in the module.
The module is configured for read and write data block transfer.
The ladder logic handles all read and write block situations.
The module is properly configured in the processor I/O configuration
and ladder logic.
OK LED remains RED
The program has halted or a critical error has occurred. Connect to the
Configuration/Debug (or communication) port to see if the module is
running. If the program has halted, turn off power to the rack, remove the
card from the rack and re-insert it, and then restore power to the rack.
Modbus TCP/IP Enhanced Communication Module User Manual
6.2.2 Troubleshooting
Use the following troubleshooting steps if you encounter problems when the
module is powered up. If these steps do not resolve your problem, please contact
ProSoft Technology Technical Support.
Processor Errors
Module Errors
ProSoft Technology, Inc. Page 95 of 150
May 20, 2015
Diagnostics and Troubleshooting MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
6.3 Connecting the PC to the Module's Ethernet Port
With the module securely mounted, connect one end of the Ethernet cable to the
ETH1 Port, and the other end to an Ethernet hub or switch accessible from the
same network as the PC. Or, connect directly from the Ethernet Port on the PC
to the ETH1Port on the module.
6.3.1 Setting Up a Temporary IP Address
Important: ProSoft Configuration Builder locates MVI69E-MBTCP modules through UDP
broadcast messages. These messages may be blocked by routers or layer 3 switches. In that
case, the ProSoft Discovery Service is unable to locate the modules.
To use ProSoft Configuration Builder, arrange the Ethernet connection so that there is no router/
layer 3 switch between the computer and the module, OR reconfigure the router/ layer 3 switch to
allow routing of the UDP broadcast messages.
1 In the tree view in ProSoft Configuration Builder (PCB), select the MVI69E-
MBTCPmodule. (For instructions on opening and using a project in PCB,
please refer to the chapter Configuring the MVI69E-MBTCP Using PCB
(page 42).
Page 96 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Diagnostics and Troubleshooting
Modbus TCP/IP Enhanced Communication Module User Manual
2 Right-click the module icon in the tree and choose DIAGNOSTICS.
3 In the Diagnostics window, click the SET UP CONNECTION button.
4 In the Connection Setup dialog box, click BROWSE DEVICE(S)to start ProSoft
Discovery Service. Right-click themodule and choose ASSIGN TEMPORARY
IP.
ProSoft Technology, Inc. Page 97 of 150
May 20, 2015
Diagnostics and Troubleshooting MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
5 The module’s default IP address is usually 192.168.0.250. Choose an unused
IP within your subnet, and then click OK.
Important: The temporary IP address is only valid until the next time the module is initialized. For
information on how to set the module’s permanent IP address, see Ethernet 1 (page 54) .
6 Close the ProSoft Discovery Service window. Enter the temporary IP address
in the Ethernet address field of the Connection Setup dialog box, then click
TEST CONNECTION to verify that the module is accessible with the current
settings.
7 If the Test Connection is successful, click CONNECT. The Diagnostics window
is now accessible. See Using the Diagnostics Menu in ProSoft Configuration
Builder (page 98) for more information.
6.4 Using the Diagnostics Menu in ProSoft Configuration Builder
ProSoft Configuration Builder (PCB) provides diagnostic menus for debugging
and troubleshooting.
To connect to the module’s Configuration/Debug Ethernet port
1 In the tree view in ProSoft Configuration Builder (PCB), select the MVI69E-
MBTCP module. For instructions on opening and using a project in PCB,
please refer to the chapter Configuring the MVI69E-MBTCP Using PCB
(page 42).
Page 98 of 150 ProSoft Technology, Inc.
May 20, 2015
MVI69E-MBTCP ♦ CompactLogix Platform Diagnostics and Troubleshooting
Modbus TCP/IP Enhanced Communication Module User Manual
2 Right-click the module and choose DIAGNOSTICS.
3 After the Diagnostics window opens, click the SETUP CONNECTION button to
browse for the module’s IP address.
4 In the Ethernet field of theConnection Setup dialog box, enter the current IP
address, whether it is temporary or permanent. Click TEST CONNECTION to
verify that the module is accessible with the current settings.
ProSoft Technology, Inc. Page 99 of 150
May 20, 2015
Diagnostics and Troubleshooting MVI69E-MBTCP ♦ CompactLogix Platform
User Manual Modbus TCP/IP Enhanced Communication Module
5 If the TEST CONNECTION is successful, click CONNECT. The Diagnostics
Window is now accessible.
6.4.1 Diagnostics Menu
The DIAGNOSTICS menu in the Diagnostics window in ProSoft Configuration
Builder is available through the Ethernet configuration port. The menu is
arranged as a tree structure.
Page 100 of 150 ProSoft Technology, Inc.
May 20, 2015
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.