ProSoft Technology MVI69L-MBS ProductsModbus Serial Lite Communication Module for CompactLogix User Manual
تبلیغات
تبلیغات
MVI69L-MBS
CompactLogix ™ Platform
Modbus Serial Lite Communication
Module
USER MANUAL
April 7, 2021
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Your Feedback Please
Contents
User Manual
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 contact us.
How to Contact Us
ProSoft Technology, Inc.
+1 (661) 716-5100
+1 (661) 716-5101 (Fax) www.prosoft-technology.com
MVI69L-MBS User Manual
April 7, 2021
ProSoft Technology ® , is a registered copyright of ProSoft Technology, Inc. All other brand or product names are or may be trademarks of, and are used to identify products and services of, their respective owners.
In an effort to conserve paper, ProSoft Technology no longer includes printed manuals with our product shipments. User Manuals, Datasheets, Sample Ladder Files, and Configuration Files are provided at our website: www.prosoft-technology.com
Content Disclaimer
This documentation is not intended as a substitute for and is not to be used for determining suitability or reliability of these products for specific user applications. It is the duty of any such user or integrator to perform the appropriate and complete risk analysis, evaluation and testing of the products with respect to the relevant specific application or use thereof. Neither ProSoft Technology nor any of its affiliates or subsidiaries shall be responsible or liable for misuse of the information contained herein. Information in this document including illustrations, specifications and dimensions may contain technical inaccuracies or typographical errors. ProSoft Technology makes no warranty or representation as to its accuracy and assumes no liability for and reserves the right to correct such inaccuracies or errors at any time without notice. If you have any suggestions for improvements or amendments or have found errors in this publication, please notify us.
No part of this document may be reproduced in any form or by any means, electronic or mechanical, including photocopying, without express written permission of ProSoft Technology. All pertinent state, regional, and local safety regulations must be observed when installing and using this product. For reasons of safety and to help ensure compliance with documented system data, only the manufacturer should perform repairs to components. When devices are used for applications with technical safety requirements, the relevant instructions must be followed. Failure to use ProSoft Technology software or approved software with our hardware products may result in injury, harm, or improper operating results. Failure to observe this information can result in injury or equipment damage.
Copyright © 2021 ProSoft Technology, Inc. All Rights Reserved.
For professional users in the European Union
If you wish to discard electrical and electronic equipment (EEE), please contact your dealer or supplier for further information.
Warning – Cancer and Reproductive Harm – www.P65Warnings.ca.gov
ProSoft Technology, Inc. Page 2 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Important Safety Information
Contents
User Manual
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/IECEx 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 ATEX/IECEx Certified, tool-secured, 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 Before operating the reset switch, be sure the area is known to be non-hazardous.
If the equipment is used in a manner not specified by the manufacturer, the protection provided by the equipment may be impaired.
Agency Approvals & Certifications
Please visit our website: www.prosoft-technology.com
ProSoft Technology, Inc. Page 3 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Contents
Contents
User Manual
Your Feedback Please ................................................................................................................ 2
How to Contact Us ....................................................................................................................... 2
Content Disclaimer ...................................................................................................................... 2
Important Safety Information ....................................................................................................... 3
1 Start Here
1.1
1.2
1.3
1.4
1.5
7
System Requirements ....................................................................................... 7
Deployment Checklist ........................................................................................ 8
Package Contents ............................................................................................. 8
Setting Jumpers ................................................................................................. 9
Installing the Module in the Rack ..................................................................... 10
2 Adding the Module to RSLogix
2.1
2.1.1
2.2
2.1.2
2.3
2.3.1
2.4
2.3.2
2.5
2.6
2.6.1
2.6.2
14
Creating the Module in an RSLogix 5000 Project............................................ 14
Creating a Module in the Project Using an Add-On Profile ............................. 15
Creating a Module in the Project Using a Generic 1769 Module Profile ......... 19
Installing ProSoft Configuration Builder ........................................................... 22
Generating the AOI (.L5X File) in ProSoft Configuration Builder .................... 22
Setting Up the Project in PCB .......................................................................... 22
Creating and Exporting the .L5X File ............................................................... 24
Creating a New RSLogix 5000 Project ............................................................ 26
Importing the Add-On Instruction ..................................................................... 27
Adding Multiple Modules in the Rack (Optional) .............................................. 31
Adding an Additional Module in PCB ............................................................... 31
Adding Additional MVI69L-MBS Modules in RSLogix 5000 ............................ 33
3 Configuring the MVI69L-MBS Using PCB
3.1
3.1.1
3.1.2
3.1.3
3.2
3.1.4
3.3
3.4
3.2.1
3.2.2
3.2.3
3.2.4
40
Basic PCB Functions ....................................................................................... 40
Creating a New PCB Project and Exporting an .L5X File ................................ 40
Renaming PCB Objects ................................................................................... 40
Editing Configuraiton Parameters .................................................................... 40
Printing a Configuration File ............................................................................ 43
Module Configuration Parameters ................................................................... 43
Module Parameters ......................................................................................... 43
MBS Port 1 Parameters ................................................................................... 44
Modbus Port 1 Commands .............................................................................. 48
Ethernet 1 ........................................................................................................ 50
Downloading the Configuration File to the Processor ..................................... 51
Uploading the Configuration File from the Processor ...................................... 53
4 MVI69L-MBS Backplane Data Exchange
4.1
4.2
4.3
4.3.1
56
General Concepts of the MVI69L-MBS Data Transfer .................................... 56
Backplane Data Transfer ................................................................................. 56
Normal Data Transfer ...................................................................................... 57
Write Block: Request from the Processor to the Module ................................. 57
ProSoft Technology, Inc. Page 4 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
4.4
4.3.2
4.3.3
4.4.1
4.4.2
Contents
User Manual
Read Block: Response from the Module to the Processor .............................. 58
Read and Write Block Transfer Sequences .................................................... 58
Data Flow Between the Module and Processor .............................................. 59
Slave Mode ...................................................................................................... 59
Master Mode .................................................................................................... 61
5 Using Controller Tags
5.1
5.1.1
5.2
5.3
5.2.1
5.3.1
5.3.2
5.3.3
5.3.4
5.3.5
63
Controller Tags ................................................................................................ 63
MVI69L-MBS Controller Tags .......................................................................... 64
User-Defined Data Types (UDTs).................................................................... 64
MVI69L-MBS User-Defined Data Types .......................................................... 65
MBS Controller Tag Overview ......................................................................... 66
MBS.CONFIG .................................................................................................. 66
MBS.DATA ....................................................................................................... 66
MBS.CONTROL............................................................................................... 67
MBS.STATUS .................................................................................................. 70
MBS.UTIL ........................................................................................................ 71
6 Diagnostics and Troubleshooting
6.1
6.2
6.3
6.3.1
6.4
6.2.1
6.2.2
6.4.1
6.4.2
6.4.3
6.4.4
6.5
6.4.5
6.4.6
6.5.1
6.5.2
6.6
6.5.3
72
Ethernet LED Indicators ................................................................................... 72
LED Status Indicators ...................................................................................... 73
Clearing a Fault Condition ............................................................................... 73
Troubleshooting ............................................................................................... 74
Connecting the PC to the Module's Ethernet Port ........................................... 75
Setting Up a Temporary IP Address ................................................................ 76
Using the Diagnostics Menu in PCB ................................................................ 78
Diagnostics Menu ............................................................................................ 80
Monitoring General Information ....................................................................... 80
Monitoring Network Configuration Information ................................................ 81
Monitoring Backplane Information ................................................................... 82
Port 1 Module Information ............................................................................... 83
Monitoring Data Values in the Module’s Database.......................................... 83
Communication Error Codes ........................................................................... 84
Standard MODBUS Protocol Exception Code Errors ...................................... 84
Module Communication Error Codes .............................................................. 84
Command List Entry Errors ............................................................................. 84
Connecting to the MVI69L-MBS Webpage ...................................................... 85
7 Reference 87
7.1
7.1.1
7.1.2
7.1.3
7.2
7.2.1
7.2.2
7.2.3
7.2.4
7.2.5
7.2.6
ProSoft Technology, Inc.
Product Specifications ..................................................................................... 87
MVI69L General Specs .................................................................................... 87
Hardware Specifications .................................................................................. 87
General Specifications - Modbus Master/Slave ............................................... 88
About the Modbus Protocol ............................................................................. 89
Modbus Master ................................................................................................ 89
Modbus Slave .................................................................................................. 89
Function Codes Supported by the Module ...................................................... 90
Read Coil Status (Function Code 01) .............................................................. 91
Read Input Status (Function Code 02) ............................................................ 93
Read Holding Registers (Function Code 03) ................................................... 94
Page 5 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.2.7
7.2.8
7.2.9
7.2.10
7.2.11
7.2.12
7.3
7.3.1
7.4
7.3.2
7.4.1
7.4.2
7.4.3
7.4.4
7.4.5
7.4.6
7.4.7
7.4.8
7.4.9
7.4.10
7.4.11
7.4.12
7.4.13
(9956)
7.4.14
(9957)
7.4.15
7.4.16
7.4.17
7.4.18
7.4.19
7.4.20
7.4.21
7.4.22
7.5
7.4.23
7.6
7.5.1
7.6.1
7.6.2
7.6.3
7.6.4
Contents
User Manual
Read Input Registers (Function Code 04) ....................................................... 95
Force Single Coil (Function Code 05) ............................................................. 96
Preset Single Register (Function Code 06) ..................................................... 97
Diagnostics (Function Code 08) ...................................................................... 98
Force Multiple Coils (Function Code 15) ....................................................... 100
Preset Multiple Registers (Function Code 16) ............................................... 101
Floating-Point Support ................................................................................... 102
ENRON Floating Point Support ..................................................................... 102
Configuring the Floating Point Data Transfer ................................................ 103
Function Blocks.............................................................................................. 108
Event Command Blocks (1000 to 1255) ........................................................ 109
Slave Polling Disable Block (3000) ................................................................ 110
Slave Polling Enable Blocks (3001) ............................................................... 110
Slave Polling Status Block (3002 to 3006) .................................................... 111
Command Control Blocks (5001 to 5006) ..................................................... 112
Add Event with Data Block (8000) ................................................................. 113
Get Event with Data Status Block (8100) ...................................................... 114
Get Configuration File Information Block (9000 or -9000) ............................. 114
Get Configuration File Block (9001 or -9001) ................................................ 115
Get General Module Status Data Block (9250) ............................................. 116
Set Port and Command Active Bits Block (9500) .......................................... 117
Get Port and Command Active Bits Block (9501).......................................... 118
Pass-through Formatted Block for Functions 6 and 16 with Word Data Block
119
Pass-through Formatted Block for Functions 6 and 16 with Float Data Block
120
Pass-through Formatted Block for Function 5 (9958).................................... 121
Pass-through Formatted Block for Function 15 (9959) ................................. 122
Pass-through Formatted Block for Function 23 (9961) ................................. 123
Pass-through Block for Function 99 (9970) ................................................... 124
Set Module Time Using Received Time Block (9972) ................................... 125
Pass Module Time to Processor Block (9973) .............................................. 126
Reset Status Block (9997) ............................................................................. 127
Warm-boot Control Block (9998) ................................................................... 127
Cold-boot Control Block (9999) ..................................................................... 128
Ethernet Port Connection .............................................................................. 129
Ethernet Cable Specifications ........................................................................ 129
Modbus Application Port Connection ............................................................ 130
RS-232 Wiring................................................................................................ 130
RS-422 Wiring................................................................................................ 133
RS-485 Wiring................................................................................................ 133
DB9 to RJ45 Adaptor (Cable 14) ................................................................... 134
8 Support, Service & Warranty
8.1
8.2
135
Contacting Technical Support ........................................................................ 135
Warranty Information ..................................................................................... 135
ProSoft Technology, Inc. Page 6 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Start Here
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 connect Modbus and
CompactLogix devices to a power source and to the MVI69L-MBS ’s application port(s)
1.1 System Requirements
The MVI69L-MBS 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 MVI69L-MBS.
Important: The MVI69L-MBS has a power supply distance rating of 4 (L43 and L45 installations on first 4 slots of 1769 bus). It consumes 450 mA at 5 VDC.
The module requires 450 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 10 o Microsoft Windows 7 Professional (32-or 64-bit) o Microsoft Windows XP Professional with Service Pack 1 or 2 o Microsoft Windows Vista 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)
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.
ProSoft Technology, Inc. Page 7 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
1.2 Deployment Checklist
Start Here
User Manual
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 MVI69L-MBS 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 Package Contents
The following components are included with your MVI69L-MBS, and are all required for installation and configuration.
Important: Before beginning the installation, please verify that all of the following items are present.
Qty.
1
1
1
Part Name
MVI69L-MBS
Adapter Cable
Screw Terminal
Adapter
Part Number
MVI69L-MBS
Cable #14
1454-9F
Part Description
Modbus Serial Lite Communication Module
RJ45 to DB9 Male Adapter cable. For DB9 connection to module’s serial application port
DB9 female to 9-pin screw terminal. Used for RS422 or RS485 connections to Port 1 of the module
If any of these components are missing, please contact ProSoft Technology Technical
Support for replacement parts.
ProSoft Technology, Inc. Page 8 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
1.4 Setting Jumpers
Start Here
User Manual
When the module is manufactured, the port selection jumpers are set to RS-232. To use
RS-422 or RS-485, you must set the jumpers to the correct position. The following diagram describes the jumper settings.
Note: Jumper pin placement on the circuit board may vary.
The Setup Jumper acts as "write protection" for the module’s firmware. In "write protected" mode, the Setup pins are not connected, and t he module’s firmware cannot be overwritten. The module is shipped with the Setup jumper OFF. If an update of the firmware is needed, apply the Setup jumper to both pins.
ProSoft Technology, Inc. Page 9 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Start Here
User Manual
The following illustration shows the MVI69L-MBS jumper configuration, with the Setup
Jumper OFF.
1.5 Installing the Module in the Rack
Make sure the processor and power supply are installed and configured before installing the MVI69L-MBS. 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 MVI69L-MBS 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.
ProSoft Technology, Inc. Page 10 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Start Here
User Manual
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.
ProSoft Technology, Inc. Page 11 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Start Here
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 12 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Start Here
User Manual
5 Press the DIN-rail mounting area of the controller against the DIN-rail. The latches momentarily open and lock into place.
ProSoft Technology, Inc. Page 13 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
2 Adding the Module to RSLogix
Adding the Module to RSLogix
User Manual
To add the MVI69L-MBS 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: o o
You can use the Add-On Profile from ProSoft Technology. This is the preferred way, but requires RSLogix version 15 or later.
You 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 MVI69L-MBS.
2.1 Creating the Module in an RSLogix 5000 Project
In an RSLogix 5000 project, there are two ways you can add the MVI69L-MBS 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 15).
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.
ProSoft Technology, Inc. Page 14 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Adding the Module to RSLogix
User Manual
2.1.1 Creating a Module in the Project Using an Add-On Profile
Installing an Add-On Profile
1 Download the AOP file (MVI69x_RevX.X_AOP.zip) from the product webpage (found at www.prosoft-technology.com
) and extract the files from the zip archive. Make sure you have shut down RSLogix 5000 and RSLinx before you install the Add-On Profile
(AOP).
2 Run the MPSetup.exe
file to start the Setup Wizard. Follow the Setup Wizard to install the AOP.
ProSoft Technology, Inc. Page 15 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Adding the Module to RSLogix
3 Continue to follow the steps in the wizard to complete the installation.
User Manual
4 Click F
INISH when complete . The AOP is now installed in RSLogix 5000. You do not need to reboot the PC.
ProSoft Technology, Inc. Page 16 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Adding the Module to RSLogix
User Manual
Using an Add-On Profile
1 In RSLogix 5000, expand the I/O C ONFIGURATION folder in the Project tree. Rightclick the appropriate communications bus, and then click N
EW
M
ODULE
.
This opens the Select Module Type dialog box. In the Module Type Vendor Filters area, uncheck all boxes except the P RO S OFT T ECHNOLOGY box. A list of ProSoft
Technology modules appears in the dialog box.
ProSoft Technology, Inc. Page 17 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
2 Select the MVI69L-MBS in the list and click C REATE :
Adding the Module to RSLogix
User Manual
3 A New Module dialog box opens. Edit the N
AME
and S
LOT
for the module and click
OK .
Note: This module uses a block transfer size of 240 only. Therefore, it uses an I/O T ABLE S IZE of 242/241 words.
ProSoft Technology, Inc. Page 18 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
The MVI69L-MBS is now visible in the I/O Configuration tree.
Adding the Module to RSLogix
User Manual
2.1.2 Creating a Module in the Project Using a Generic 1769 Module Profile
This procedure is not required if you installed the ProSoft Technology Add-On Profile for this module.
1 Expand the I/O C
ONFIGURATION
folder in the Project tree. Right-click the appropriate communications bus and choose N EW M ODULE .
This opens the Select Module Type dialog box.
ProSoft Technology, Inc. Page 19 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Adding the Module to RSLogix
User Manual
2 In the Select Module Type dialog, select the 1769-MODULE and click on the
CREATE button.
3 Set the Module Properties values as follows:
Parameter
Name
Description
Comm Format
Slot
Input Assembly Instance
Input Size
Output Assembly Instance
Output Size
Configuration Assembly Instance
Configuration Size
101
242
100
241
102
0
Value
Enter a module identification string. Example: MVI69L_MBS
Enter a description for the module. Example: ProSoft communication module for Serial Modbus communications.
Select D ATA -INT
Enter the slot number in the rack where the MV69L-MBS module is installed.
ProSoft Technology, Inc. Page 20 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Adding the Module to RSLogix
User Manual
This module must be configured with a block transfer size of 240 words (input block size = 242 words, output block size = 241 words).
4 On the Connection tab, set the R
EQUESTED
P
ACKET
I
NTERVAL
value for your project and click OK . A value of 10.0
ms or more is recommended.
The MVI69L-MBS is now visible in the I/O Configuration tree.
ProSoft Technology, Inc. Page 21 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
2.2 Installing ProSoft Configuration Builder
Adding the Module to RSLogix
User Manual
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: www.prosoft-technology.com
. The installation filename contains the PCB version number. For example, PCB_4.3.4.5.0238.
EXE
.
Installing PCB from the ProSoft website:
1 Open a browser window and navigate to www.prosoft-technology.com
.
2 Perform a search for 'pcb' in the Search bar. Click on the ProSoft Configuration
Builder search result.
3 On the PCB page, click the download link for ProSoft Configuration Builder, and save the file to your Windows desktop.
4 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 R UN AS
A DMINISTRATOR . Follow the instructions that appear on the screen.
5 If you want to find additional software specific to your MVI69L-MBS, enter the model number into the ProSoft website search box and press the E NTER key.
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 P RO S OFT C ONFIGURATION B UILDER (PCB).
ProSoft Technology, Inc. Page 22 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Adding the Module to RSLogix
User Manual
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.
Your first task is to add the MVI69L-MBS to the project.
1 In the Tree view, right-click D EFAULT M ODULE , and then click C HOOSE M ODULE T YPE .
This opens the Choose Module Type dialog box.
ProSoft Technology, Inc. Page 23 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Adding the Module to RSLogix
User Manual
2 In the Product Line Filter area of the dialog box, click MVI69 . In the Select Module
Type dropdown list, click MVI69L-MBS , and then click OK to save your settings and return to the ProSoft Configuration Builder window. The MVI69L-MBS icon is now visible in the tree view.
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 MVI69L-MBS icon by clicking the [+] symbol beside it. Similarly, expand the icon. Double-click the icon to open the Edit - Module dialog box.
2 Edit the Slot Number indicating where the module is placed in the 1769 bus.
3 Click OK to close the Edit – Module dialog box. The .L5X file is now ready to export to the PC/Laptop.
ProSoft Technology, Inc. Page 24 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Adding the Module to RSLogix
User Manual
4 Right-click the MVI69L-MBS icon in the project tree and then click E XPORT AOI F ILE .
5 Save the .L5X file to the PC/Laptop in an easily found location, such as Windows
Desktop.
ProSoft Technology, Inc. Page 25 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
2.4 Creating a New RSLogix 5000 Project
1 Click the F ILE menu and then choose N EW .
Adding the Module to RSLogix
User Manual
2 Select your CompactLogix controller model.
3 Select R EVISION 16 or newer.
4 Enter a name for your controller, such as My_Controller .
5 Select your CompactLogix chassis type.
ProSoft Technology, Inc. Page 26 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
2.5 Importing the Add-On Instruction
Adding the Module to RSLogix
User Manual
1 Open the application in RSLogix 5000.
2 Expand the T
ASKS folder, and expand the M
AIN
T
ASK
folder.
3 Expand the M AIN P ROGRAM folder. The M AIN R OUTINE contains rungs of logic. The very last rung in this routine is blank. This is where you can import the Add-On
Instruction.
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 I MPORT R UNGS .
ProSoft Technology, Inc. Page 27 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
5 Select the .L5X
file that you exported from PCB.
Adding the Module to RSLogix
User Manual
This opens the Import Configuration dialog box. Click T
AGS
under M
AIN
R
OUTINE
to display the controller tags in the Add-On Instruction.
ProSoft Technology, Inc. Page 28 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Adding the Module to RSLogix
User Manual
Note: If you are using RSLogix version 16 or earlier, the Import Configuration dialog box does not contain the Import Content tree.
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 F INAL
N AME column ( N AME column for RSLogix version 16 or less). For example, if your module is located in slot 3, change Local:1:I in the F INAL N AME 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 OK to confirm the import.
ProSoft Technology, Inc. Page 29 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Adding the Module to RSLogix
When the import is complete, the new Add-On Instruction rung is present.
User Manual
The procedure also imports new user-defined data types, data objects and the Add-
On instruction to be used in the project with the MVI69L-MBS.
ProSoft Technology, Inc. Page 30 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
2.6 Adding Multiple Modules in the Rack (Optional)
Adding the Module to RSLogix
User Manual
Important: This procedure is for multiple MVI69L-MBSs running in the same CompactLogix rack
You can add additional modules of the same type to the rack.
1 Add a new MVI69L-MBS to the ProSoft Configuration Builder (PCB) project.
2 Export the module configuration as an L5X file.
3 Add a new MVI69L-MBS 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.
2 Right click D EFAULT L OCATION (which you can rename) and choose A DD M ODULE .
3 Right-click N
EW
M
ODULE
and choose C
HOOSE
M
ODULE
T
YPE
.
4 In the Choose Module Type dialog box, select MVI69L in the P RODUCT L INE F ILTER area, and then select MVI69L-MBS as the M ODULE T YPE . Click OK .
5 Select the MVI69L-MBS in the tree and repeat the above steps to add a second (or more) module in the PCB project.
ProSoft Technology, Inc. Page 31 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Adding the Module to RSLogix
User Manual
Note: You must give each MVI69L-MBS a unique name. The default name on a duplicate module appends a number to the end such as MVI69L-MBS_000, MVI69L-MBS_001, etc.
6 You can rename the module by right clicking the module and choosing Rename .
7
Configure the module parameters. See Module Configuration Parameters (page 43)
and then export the AOI .L5X file for the new module (right-click the module and choose E
XPORT
AOI F
ILE
. See Creating and Exporting the .L5X File.
ProSoft Technology, Inc. Page 32 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Adding the Module to RSLogix
User Manual
2.6.2 Adding Additional MVI69L-MBS Modules in RSLogix 5000
You can place multiple MVI69L-MBS modules in the same rack provided it does not exceed the power distance rating of the CompactLogix rack, see System Requirements
(page 7). Adding an additional module to the rack 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/O C ONFIGURATION folder. Right click C OMPACT B US
L OCAL and choose N EW M ODULE .
3 In the Select Module Type dialog box, select the MVI69L-MBS. o o
If you are using an Add-On Profile (AOP), this adds the MVI69L-MBS and configures the relevant parameters. You must be using RSLogix version 15 or later to to use an AOP.
If using an AOP is not an option, select G ENERIC 1769 M ODULE and click C REATE .
ProSoft Technology, Inc. Page 33 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Adding the Module to RSLogix
User Manual
4 The New Module dialog box appears. Enter a unique name for the new module, and confirm the slot number of the new module.
5 Click OK . The new module is now visible.
6 You must also import the Add-On Instruction (AOI) for the new module. In the
Controller Organizer pane, double-click M AIN R OUTINE to open the ladder for the routine.
ProSoft Technology, Inc. Page 34 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Adding the Module to RSLogix
User Manual
7 Right-click an empty rung in the routine, and then choose I MPORT R UNGS
…
ProSoft Technology, Inc. Page 35 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Adding the Module to RSLogix
User Manual
8 Select the .L5X file you created and exported for the new module, and click I MPORT .
Recall that the new .L5X file has a unique filename that is specific to the new module.
ProSoft Technology, Inc. Page 36 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Adding the Module to RSLogix
User Manual
9 This opens the I MPORT C ONFIGURATION dialog box. Click T AGS to show the controller tags in the AOI. You must edit the F INAL N AME column of the tags for the second module to make them unique.
ProSoft Technology, Inc. Page 37 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Adding the Module to RSLogix
User Manual
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 F INAL
N AME to Local:2:I and Local:2:O. Also, you can append a ‘_2’ at the end of the F INAL
N AME of ‘AOI69_MBS’ and ‘MBS’ arrays as shown below.
ProSoft Technology, Inc. Page 38 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
11 Click OK .
Adding the Module to RSLogix
User Manual
The setup procedure is now complete. Save the project. It is ready to download to the
CompactLogix processor.
ProSoft Technology, Inc. Page 39 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Configuring the MVI69L-MBS Using PCB
User Manual
3 Configuring the MVI69L-MBS Using PCB
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 mod ule’s configuration in ProSoft Configuration Builder. You use
PCB to download the configuration file to the CompactLogix processor, where it is stored in the MBS.CONFIG controller tag generated by the previously exported AOI. See
Creating and Exporting the .L5X File. When the MVI69L-MBS boots up, it requests the processor to send the configuration over the backplane in special Configuration Blocks.
See Adding the Module to RSLogix (page 14) 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.
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 14).
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 choose R ENAME .
2 Type the new name for the object and press Enter .
3.1.3 Editing Configuraiton Parameters
1 Click the [+] sign next to the module icon to expand module information.
2 Click the [+] sign next to any icon to view module information and configuration options.
ProSoft Technology, Inc. Page 40 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Configuring the MVI69L-MBS Using PCB
User Manual
3 Double-click any icon to open an Edit dialog box.
To edit a parameter, select the parameter in the left pane and 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 OK to save your changes.
5 Double-click any icon to open an Edit dialog box with a table. Use this dialog box to build and edit Modbus Master commands.
Page 41 of 135 ProSoft Technology, Inc.
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
6 To add a row to the table, click A DD R OW .
Configuring the MVI69L-MBS Using PCB
User Manual
7 To edit the row, click E DIT R OW . This opens an Edit dialog box.
ProSoft Technology, Inc. Page 42 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
3.1.4 Printing a Configuration File
Configuring the MVI69L-MBS Using PCB
User Manual
1 In the main PCB window, right-click the MVI69L-MBS icon and then choose V IEW
C
ONFIGURATION
.
2 In the View Configuration dialog box, click the F ILE menu and click P RINT .
3 In the Print dialog box, choose the printer to use from the drop-down list, select the printing options, and click OK .
3.2 Module Configuration Parameters
3.2.1 Module Parameters
This section contains general module configuration parameters. The module uses 240 words of read data (user input data), fixed at module memory 0 to 239. The module uses
240 words of write data (user output data), fixed at module memory 240 to 479.
In the ProSoft Configuration Builder (PCB) tree view, double-click the M ODULE icon.
Parameter
Module Name
Backplane Fail Count
Error/Status Block
Pointer
Initialize Input Image
Value
ASCII characters
(max. 38)
Description
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.
0 to 65535 Specifies the number of consecutive backplane transfer failures that can occur before communications are halted.
-1 to 419 Starting register location in the module’s database for the error/status table. 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 must be placed in the read data range of module memory.
This data area includes the module version information and all server error/status data. Refer to MBS.STATUS for more information.
Yes or No This parameter determines if the input image data and the m odule’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.
1 to x Specifies the slot in the CompactLogix rack for the module.
Slot Number
ProSoft Technology, Inc. Page 43 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
3.2.2 MBS Port 1 Parameters
Configuring the MVI69L-MBS Using PCB
User Manual
In the ProSoft Configuration Builder tree view, double-click the M ODBUS P ORT 1 icon.
Configuration Parameters Common to Master and Slave
Parameter
Start Active
Type
Protocol
Baud Rate
Parity
Data Bits
Stop Bits
RTS On
RTS Off
Use CTS Line
Enron-Daniels
Value Description
Yes or No
Master, Slave, or Slave with
Pass-Through
Specifies whether or not the port and commands are active upon module boot-up.
This parameter specifies which device type the port emulates.
See Slave Mode (page 59) for more information on Slave
Pass-Through options.
RTU or ASCII Specifies the Modbus protocol for the port.
Multiple options Specifies the baud rate for the port.
None
Odd
Even
7 or 8
1 or 2
0 to 65535 milliseconds
0 to 65535 milliseconds
Yes or No
Specifies the type of parity error checking to use. All devices communicating through this port must use the same parity setting.
Sets the number of data bits for each word used by the protocol. All devices communicating through this port must use the same number of data bits.
Sets the number of stop bits that signal the end of a character in the data stream. For most applications, use one stop bit. For slower devices that require more time to re-synchronize, use two stop bits. All devices communicating through this port must use the same number of stop bits.
Sets the number of milliseconds to delay after Ready To Send
(RTS) is asserted before data is transmitted.
Yes or No
Sets the number of milliseconds to delay after the last byte of data is sent before the RTS modem signal is set low.
Specifies if the Clear To Send (CTS) modem control line is to be used or not. If you set the parameter to N
O
, the CTS line is not monitored. If you set the parameter to Y ES , the CTS line is monitored and must be high before the module sends data.
Normally, this parameter is required when half-duplex modems are used for communication (2-wire). This procedure is commonly referred to as hardware handshaking .
Specifies how the Slave driver responds to Function Code 3, 6, and 16 commands (read and write Holding Registers) from a remote Master when it is moving 32-bit floating-point data.
Note: Most applications using floating-point data do not need this parameter enabled.
ProSoft Technology, Inc. Page 44 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Enron-Daniels
Float Start
Enron-Daniels
Float Offset
0 to 478
0 to 478
Configuring the MVI69L-MBS Using PCB
User Manual
If the remote Master expects to receive or sends one complete
32-bit floating-point value for each count of one (1), then set this parameter to Y
ES
. When set to Y
ES
, the Slave 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 Master for write commands.
Example: Count = 10 , Slave driver sends 20 16-bit registers for
10 total 32-bit floating-point values.
If, however, the remote Master 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 N O , which is the default setting.
You also need to set the Float Start and Float Offset parameters to appropriate values whenever the Float Flag parameter is set to Y ES . See Floating-Point Support (page
Defines the first register of floating-point data. All requests with register values greater-than or equal to this value is considered floating-point data requests. This parameter is only used if the
Float Flag is enabled. For example, if you enter a value of 200, all requests for registers 200 and above are considered as floating-point data.
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 100 and the float start parameter to 200, data requests for register
200 use the internal Modbus register 100.
ProSoft Technology, Inc. Page 45 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Configuring the MVI69L-MBS Using PCB
User Manual
Additional Configuration Parameters as Master
The Type parameter must be M ASTER to configure these parameters. See Configuration
Parameters Common to Master and Slave (page 44).
Parameter
Response
Timeout
Retry Count
Minimum
Command Delay
Error Delay
Counter
Inter-character
Timeout
Command Error
Offset
Value
0 to 65535 milliseconds
0 to 10
0 to 32767 milliseconds
0 to 60000
0 to 65535 milliseconds
-1 to 239
Description
Specifies the command response timeout period in 1 millisecond increments. This is the time that a port configured as a Master waits for a response from the addressed slave before re-transmitting the command (Retries) or skipping to the next command in the Command List. The value to specify depends on the communication network used and the expected response time (plus or minus) of the slowest device on the network.
Specifies the number of times a command is retried if it fails.
Specifies the number of milliseconds to wait between receiving the end of a slave'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 slaves can receive them. This parameter does not affect retries of a command, as retries are issued when a command failure is recognized.
Specifies the number of poll attempts to be skipped before trying to re-establish communications with a slave that has failed to respond to a command within the time limit set by the
Response Timeout parameter. After the slave fails to respond, the master skips sending commands that should have been sent to the slave until the number of skipped commands matches the value entered in this parameter. This creates a sort of slow poll mode for slaves that are experiencing communication problems.
Specifies a time delay in milliseconds to be added to the 3.5 character time delay used by the module to recognize the end of a message. Certain applications may require validation of
Modbus messages with more than 3.5 character time between consecutive bytes (example: modem applications). A value of
0 causes the default end of message delay to be used
Sets the address in the module’s database where the command error data is placed. If the value is set to -1, the data is not transferred to the database. The valid range of values for this parameter is -1 to 4899. For example, if this parameter is configured for 230, the command errors are copied to the database as follows:
230: error code for command 0
231: error code for command 1
…
An error code of 0 means that the command was successfully sent (no error).
ProSoft Technology, Inc. Page 46 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Configuring the MVI69L-MBS Using PCB
User Manual
Additional Configuration Parameters as Slave
The Type parameter must be S LAVE or P ASS T HRU S LAVE to configure these parameters.
See Configuration Parameters Common to Master and Slave (page 44).
Parameter
Minimum
Response Delay
Internal Slave ID
Bit Input Offset
Holding Register
Offset
Value
0 to 65535 milliseconds
1 to 247
0 to 479
Word Input Offset 240 to 479
Output Offset
0 to 479
0 to 479
Description
Sets the number of milliseconds to wait before responding to a command received on the port from a remote Master. This delay is sometimes required to accommodate slower Master devices.
Defines the Slave Node Address for the internal database. All requests received by the port with this address are processed by the module. Verify that each device has a unique address on a network.
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.
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 350, an address request of 0 returns the value at register 350 in the database.
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.
Specifies the offset address in the internal Modbus database for network requests for Modbus function 3, 6, or 16 commands.
For example, if you set the value to 250, a request for address 0 corresponds to the register 250 in the database.
Note: In Pass-Through mode, this range is limited to 0 to 240.
ProSoft Technology, Inc. Page 47 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
3.2.3 Modbus Port 1 Commands
Configuring the MVI69L-MBS Using PCB
User Manual
This section defines the master command list specifications for a Master port. In the
ProSoft Configuration Builder tree view, double-click the M
ODBUS
P
ORT
1 C
OMMANDS icon.
In order to interface the MVI69L-MBS with Modbus slave devices, you must create a command list. The commands in the list specify the slave device to be addressed, the function to be performed (read or write), the data area in the device to interface with and the registers in the internal database to be associated with the device data.
The Master command list supports up to 30 commands. 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 MBS Modbus Master (and Slave) communication drivers support several data read and write commands. When a command is configured, the type of data (bit, 16-bit integer, 32-bit float, etc), and the level of Modbus support in the slave equipment needs to be considered. For information on floating-point support, please see Floating-Point
Parameter
Enable
Value
0 to 4
Description
This field defines whether the command is to be executed and under what conditions.
Disabled (0) = The command is disabled and is not executed in the normal polling sequence.
Continuous (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 upon Error (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.
ProSoft Technology, Inc. Page 48 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Configuring the MVI69L-MBS Using PCB
User Manual
Internal
Address
Poll Interval
Register
Count
Swap Code
0 to 479
(word-level) or
0 to 7679 (bitlevel)
0 to 65535
(1/10 second)
1 to 125
(words) or
1 to 800
(coils)
Float Override upon Error (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.
Speci fies the module’s internal database register to be associated with the command.
If the command is a read function, the data read from the slave device is stored beginning at the module’s internal database register value entered in this field. This register value must be within the fixed Read
Data area of the module’s memory 0 to 239 (0 to 3839 bit-level).
If the command is a write function, the data to be written to the slave device is sourced beginning from the module’s internal database register specified. This register value must be within the fixed Write
Data area of the module’s memory 240 to 479 (3840 to 7679 bit-level).
Note: When using a bit level command, you must define this field at the bit level. For example, when using function codes 1 or 2 for a Read command, you must have a enter of 160 to place the data in the
MBS.DATA.ReadData[10] controller tag in RSLogix 5000. Think of it as the 160th bit of MBS internal memory (MBS Internal register 10 * 16 bits per register = 160). Use this formula for function codes 5 or 15 for writing bits also.
Specifies the minimum interval between executions of continuous commands ( Enable code = 1).
Example: The parameter is entered in 1/10th of a second. Therefore, if a value of 100 is entered, the command executes no more frequently than 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.
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 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 Function Codes 3, 4 and 16, this parameter sets the number of 16bit registers to be associated with the command.
0,1,2,3
Node Address 1 to 255
(0 = broadcast)
Defines if the data received from the Modbus slave is to be ordered differently than received from the slave 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 slave devices. You can set this parameter to order the register data received in an order useful by other applications.
No Change (0)= No change is made in the byte ordering (ABCD =
ABCD)
Word Swap (1)= The words are swapped (ABCD= CDAB)
Word and Byte Swap (2) = The words are swapped, then the bytes in each word are swapped (ABCD=DCBA)
Byte Swap (3) = The bytes in each word are swapped (ABCD=BADC)
Note: Each pair of characters is a byte. Ex: AB and CD. Two pairs of characters is 16-bit register Ex: ABCD.
Specifies the Modbus slave node address on the network to be considered. Most Modbus devices only accept an address in the range of 1 to 247. If set 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.
ProSoft Technology, Inc. Page 49 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Modbus
Function
MB Address in
Device
0 to 65535
Override
Value Upon
Error
Comment
1,2,3,4,5,6,15
,16
Configuring the MVI69L-MBS Using PCB
User Manual
Specifies the Modbus function to be executed.
1 – Read Coil Status (0xxxx)
2
– Read Input Status (1xxxx)
3
– Read Holding Registers (4xxxx)
4
– Read Input Registers (3xxxx)
5 – Force (Write Single) Coil (0xxxx)
6
– Force (Write Single) Holding Register (4xxxx)
15
– Preset (Write) Multiple Coils (0xxxx)
16
– Preset (Write) Multiple Registers (4xxxx)
Specifies the register or digital point address offset within the Modbus slave device. The MBS Master reads or writes from/to this address within the slave.
Refer to the documentation of each Modbus slave device for their register and digital point address assignments.
Note: The value entered here does not need to include the "Modbus
Prefix" addressing scheme. Also, this value is an offset of the zerobased Modbus addressing scheme.
Example: Using a Modbus Function Code 3 to read from address
40010 in the s lave, a value of ‘9’ would be entered in 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).
This parameter is only applicable for Enable Codes 3 (Bit/Word
Override) or 4 (Float Override).
If an error occurs associated to a read command the module automatically populates the associated database area with this override value.
32-character text field.
3.2.4 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 E THERNET 1 icon.
Parameter
IP Address
Netmask
Gateway
Description
Unique IP address assigned to the module
Subnet mask of module
Gateway (if used)
ProSoft Technology, Inc. Page 50 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Configuring the MVI69L-MBS Using PCB
User Manual
3.3 Downloading the Configuration File to the Processor
1 In the ProSoft Configuration Builder tree view, right-click the module icon and choose
D
OWNLOAD FROM
PC
TO
D
EVICE
.
2 In the Download Configuration File dialog box, click RSW HO .
ProSoft Technology, Inc. Page 51 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Configuring the MVI69L-MBS Using PCB
3 Browse to, and then highlight the CompactLogix processor and click OK .
User Manual
4 Notice the CIPConnect path has been updated in the Download Configuration File dialog box. Click T EST C ONNECTION to verify the path is active and can successfully connect to the processor.
ProSoft Technology, Inc. Page 52 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Configuring the MVI69L-MBS Using PCB
User Manual
5 When ready, click D OWNLOAD to download the configuration file to the processor.
Following the download process, the module reboots.
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.
3.4 Uploading the Configuration File from the Processor
1 In the ProSoft Configuration Builder tree view, right-click the MVI69L-MBS icon and choose U PLOAD FROM D EVICE TO PC .
ProSoft Technology, Inc. Page 53 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Configuring the MVI69L-MBS Using PCB
User Manual
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 RSW HO , browse to, and then select the CompactLogix Processor, and click OK .
ProSoft Technology, Inc. Page 54 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Configuring the MVI69L-MBS Using PCB
User Manual
3 Click T EST C ONNECTION to verify the path is active and can successfully connect to the processor.
4 When ready, click U PLOAD . When upload is complete, click C LOSE .
5 ProSoft Configuration Builder now displays the uploaded configuration file.
ProSoft Technology, Inc. Page 55 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
MVI69L-MBS Backplane Data Exchange
User Manual
4 MVI69L-MBS Backplane Data Exchange
4.1 General Concepts of the MVI69L-MBS Data Transfer
The MVI69L-MBS 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 MVI69L-MBS. This is the order of operations on power-up:
1 The module begins the following logical functions: o o o
Initialize hardware components
Initialize CompactLogix backplane driver
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 application port(s)
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.
4.2 Backplane Data Transfer
The MVI69L-MBS 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 is
242 words. 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 is 241 words.
ProSoft Technology, Inc. Page 56 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
MVI69L-MBS Backplane Data Exchange
User Manual
The following illustration shows the data transfer method used to move data between the
CompactLogix processor, the MVI69L-MBS 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 MBS data tables with addresses from 0 to 239 each.
4.3 Normal Data Transfer
Normal data transfer includes the paging of the user data found in the module’s internal database 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:
Offset
0
1 to 240
Description
Write Block ID
Write Data
Length (words)
1
240
The Write Block ID is an index value that determines the location in the module’s database where the data is placed.
ProSoft Technology, Inc. Page 57 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
MVI69L-MBS Backplane Data Exchange
User Manual
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:
Offset
0
1
2 to 241
Description
Read Block ID
Write Block ID
Read Data
Length (words)
1
1
240
4.3.3 Read and Write Block Transfer Sequences
There are 240 words of data transferred per block along the backplane between the module and the processor.
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. The application uses one read and one write block, the sequence is as follows:
R1W1
R1W1
R1W1
R1W1
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 Ethernet port.
The backplane parameters are configured as follows:
Database address 0 to 239 is continuously transferred from the module to the processor.
Database address 240 to 479 is continuously transferred from the processor to the module.
ProSoft Technology, Inc. Page 58 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
4.4 Data Flow Between the Module and Processor
MVI69L-MBS Backplane Data Exchange
User Manual
The following topics describe the flow of data between the two pieces of hardware
(CompactLogix processor and MVI69L-MBS) and other nodes on the Modbus network.
You can configure each port on the module to emulate a Modbus Master device or a
Modbus Slave device.
4.4.1 Slave Mode
In Slave Driver mode, the MVI69L-MBS responds to read and write commands issued by a master on the Modbus network. The following diagram shows the data flow for normal Slave mode.
Step
1
2
3
4
5
Description
Any time the module restarts (boots or reboots), the Modbus slave port driver receives configuration information from the MBS controller tags. This information configures the application ports and defines slave node 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.
A Modbus Master device, such as a Modicon PLC or an HMI application, issues a read or write command to the module’s node address. The port driver qualifies the message before accepting it into the module. Rejected commands cause an Exception Response.
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.
After Steps 2 and 3 have been completed, either a normal response message or an
Exception Response message is sent to the Master.
Counters are available in the Status Block to permit the ladder logic program to determine the level of activity of the Slave driver.
In Slave Pass-Through mode, write commands from the Master are handled differently than they are in Normal mode. In Slave Pass-Through mode, all write requests are passed directly to the processor and data is not written directly into the module’s database.
ProSoft Technology, Inc. Page 59 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
MVI69L-MBS Backplane Data Exchange
User Manual
This mode is especially useful when both a Modbus Master and the module’s processor logic need to be able to read and write values to the same internal database addresses.
Note: In Slave Pass-Through mode, the Read Data range is no longer used. The Write Data range now occupies database address 0 to 239.
The following diagram shows the data flow for a slave port with pass-through enabled:
4
5
Step
1
2
3
Description
Same as normal mode.
Same as normal mode. a. In Pass-Through mode, if the Slave 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 Slave driver so it can build a response message. c. In Pass-Through mode, if the Slave 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.
Same as normal mode.
Same as normal mode.
ProSoft Technology, Inc. Page 60 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
4.4.2 Master Mode
MVI69L-MBS Backplane Data Exchange
User Manual
In Master mode, the MVI69L-MBS issues read or write commands to slave devices on the Modbus network. These commands are user-configured in PCB; refer to Modbus
Port 1 Commands (page 48). 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.
3
4
5
Step
1
2
Description
Upon module boot-up, the Master driver obtains configuration data from the MBS controller tags. The configuration data retrieved includes port configuration and the
Master Command List.
Special Commands can be issued directly from the CompactLogix processor using Event
Commands and Command Control. These command values are used by the Master driver to determine the types and order of commands to send to slaves on the network.
After configuration, the Master driver begins transmitting read and/or write commands to slave nodes on the network. If the Master driver is writing data to a slave, the data for the write command is retrieved from the module’s internal database.
Once the specified slave has successfully processed the command, it returns a response message to the Master driver for processing.
Data received from a slave in response to a read command is stored in the module’s internal database.
Status is returned to the processor for each command in the Master Command List.
ProSoft Technology, Inc. Page 61 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
MVI69L-MBS Backplane Data Exchange
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.
Master Command List
For a port to function in Master Mode, its Master Command List must be defined in
Prosoft Configuration Builder; refer to Modbus Port 1 Commands (page 48). This list
contains up to 30 individual entries, with each entry containing the information required to construct a valid command. A valid command includes the following items:
Command enable mode: (0) disabled, (1) continuous or (2) conditional
Source or destination database address: The module 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.
Slave node address
Modbus Function Code: This is the type of command that is issued.
Source or destination address in the slave 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 84). You can view the
command error codes through the Ethernet diagnostics port; refer to Diagnostics and
Troubleshooting (page 72 ). 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; refer to Additional Configuration Parameters as Master (page 46).
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.
ProSoft Technology, Inc. Page 62 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
5 Using Controller Tags
Using Controller Tags
User Manual
Controller tags are a feature of the RSLogix software and are part of the MVI69L-MBS
Add-On Instruction. Refer to the section Adding the Module to RSLogix (page 14) for
information on importing the Add-On Instruction into RSLogix.
5.1 Controller Tags
Data related to the MVI69L-MBS is stored in the ladder logic in variables called controller tags. You use controller tags to manage communication between the MVI69L-MBS and the CompactLogix processor:
View the read and write data 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).
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 are included in the MVI69L-MBS Add-On Instruction 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.
The Add-On Instruction also includes user-defined data types (UDTs). UDTs are collections of data types and declares the data types for the controller tag structures.
The MVI69L-MBS Add-On Instruction is extensively commented to provide information on the purpose and function of each user-defined data type and controller tag. For most applications, the Add-On Instruction works without needing any modification.
ProSoft Technology, Inc. Page 63 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
5.1.1 MVI69L-MBS Controller Tags
Using Controller Tags
User Manual
The main MVI69L-MBS controller tag structure, MBS , is broken down into five lowerlevel 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 MBS.DATA
controller tag structure, you see that it contains two controller tag arrays, MBS.DATA.ReadData
and MBS.DATA.WriteData
, which are 240-element integer arrays.
The controller tags in the Add-On Instruction are commented in the D
ESCRIPTION column.
Notice that the D ATA T YPE 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 userdefined 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 for the MVI69L-MBS 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.
ProSoft Technology, Inc. Page 64 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
5.2.1 MVI69L-MBS User-Defined Data Types
Using Controller Tags
User Manual
Twenty different UDTs are defined for the MVI69L-MBS Add-On Instruction. The main
UDT, MBSMODULEDEF , contains all the data types for the module and was used to create the main controller tag structure, MBS . There are five UDTs one level below
MBSMODULEDEF . These lower-level UDTs were used to create the MBS.CONFIG
,
MBS.DATA, MBS. CONTROL , MBS.STATUS
, and MBS.UTIL
controller tag structures.
Click the [+] signs to expand the UDT structures and view lower-level UDTs.
For example, if you expand MBS.DATA
, you see that it contains two UDTs, ReadData and WriteData . Both of these are 240-element integer arrays.
Notice that these UDTs are the data types used to declare the MBS.DATA.ReadData
and MBS.DATA.WriteData
controller tag arrays.
The UDTs are commented in the D
ESCRIPTION
column.
ProSoft Technology, Inc. Page 65 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
5.3 MBS Controller Tag Overview
Using Controller Tags
User Manual
This and the following sections describe the MBS controller tags in detail.
Tag Name
MBS.CONFIG
MBS.DATA
MBS.CONTROL
MBS.STATUS
MBS.UTIL
Description
Configuration information
MBS input and output data transferred between the processor and the module
Governs the data movement between the PLC rack and the module
Status information
Generic tags used for internal ladder processing (DO NOT MODIFY)
5.3.1 MBS.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
MBS.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 will not match the calculated CRC.
Tag Name
Description
MBS.CONFIG.FileData
This parameter contains the MBS configuration data after it has been downloaded from PCB. It is displayed in ASCII format.
Note : MBS configuration changes cannot be made directly in this array; the configuration must be downloaded with PCB.
MBS.CONFIG.FileSize
Configuration file size ( MBS.CONFIG.FileData
array) in bytes.
MBS.CONFIG.FileCRC32 CRC checksum of the configuration file stored in the array.
MBS.CONFIG.FileStatus
Configuration file status. 0 = No file present, 1 = File present
5.3.2 MBS.DATA
This structure contains the Read Data and Write Data arrays for processor-to-module communication.
Tag Name
MBS.DATA.ReadData
MBS.DATA.WriteData
Description
Data area copied from the module to the processor. This 240 element array stores the Modbus data coming into the module from the Modbus network.
Data area copied from the processor to the module. This 240 element array stores the outgoing data sent from the module to the Modbus network.
ProSoft Technology, Inc. Page 66 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
5.3.3 MBS.CONTROL
This array handles special tasks requested by the processor.
Using Controller Tags
User Manual
MBS.CONTROL.PortControl
This array allows port commands to be controlled by the processor.
Tag Name
Set
Get
Port1
Port1.Active
Port1.CmdEnableBits[x]
Range
0 or 1
0 or 1 n/a
0 or 1
0 or 1
Description
Sends Port Control to module
Reads Port Control from module
Definition of Port 1 Control
Port Control: Disable = 0, Enable = 1
Index of command to be controlled.
Example: Command 20 in port 1 command list can be controlled at CmdEnableBits[1].3 - This is the 20 th bit offset.
MBS.CONTROL.CmdControl
This array allows the processor to dynamically enable configured commands.
Tag Name
CmdControlTrigger
NumberOfCommands
PortNumber
CommandIndex[x]
Range
0 or 1
0 to 6
1
0 or 29
Description
One-shot command control: Disable = 0, Enable = 1
Total number of commands to be executed.
Port number to be associated with command.
Command Index of port command [x] to be enabled. Up to 6 command indexes can be populated at a time.
MBS.CONTROL.EventCmd_DBData
This array allows the processor to dynamically build Modbus commands with data associated to the MBS database. This feature is meant for periodic execution such as resetting the clock and zeroing-out counters.
Tag Name
EventCmdTrigger
PortNumber
SlaveID
InternalDBAddress
PointCount
SwapCode
ModbusFunctionCode
DeviceDBAddress
EventCmdStatusReturned
Range
0 or 1
1
1 to 248
Description
Toggle to send Event Command.
0 = Disable, 1 = Enable
Port number to be associated with command.
Slave ID of Modbus slave
0 to 479 or
0 to 3839
(bit-level)
0 to 125
0 to 3
Used only if UseModuleDBAddress = 1. Allowable range is 0 to 479 for Modbus Function Codes 3, 4, 6, or
16, and 0 to 3839 for Function Codes 1, 2, 5, or 15
Number of bit/words used in this command.
Swap code 0 = no swap, 1 = word swap, 2 = words & byte swap, 3 = byte swap
- Modbus function code (1,2,3,4,5,6,15, or 16)
0 to 9999 Modbus address of the target slave database
- Event status returned by the module
ProSoft Technology, Inc. Page 67 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Using Controller Tags
User Manual
MBS.CONTROL.EventCmd_ProcessorData
This array allows the processor to dynamically build Modbus commands with processor data. This feature is meant for periodic execution such as resetting the clock and zeroing-out counters.
Tag Name
CmdTrigger
GetStatusTrigger
PortNumber
SlaveAddress
ModbusFunctionCode
DeviceDBAddress
PointCount
Data[x]
EventCmdStatusReturned
Port1Status
Port1Status.Status
Range
0 or 1
Description
Toggle to send Event Command.
0 = Disable, 1 = Enable
0 or 1 Toggle to retrieve event status.
0 = Disable, 1 = Enable
1 Port number to be associated with command
1 to 248 Slave ID of Modbus slave
- Modbus function code (5,6,15, or 16)
-
-
-
0 to 9999 Modbus address of the target slave database
0 to 125 Number of bit/words associated with this command.
0 to 49 Data values to be sent to the slave
-
Command status
Port 1 Status array
Status code. See Communication Error Codes
Last error code
Port1Status.LastError
MBS.CONTROL.SlavePoll
This array allows the processor to enable, disable and retrieve status for slaves.
Tag Name
Port1
Port1.EnableSlaves
Port1.EnableSlaveCount
Port1.EnableSlavesIDs[x]
Port1.DisableSlaves
Port1.DisableSlaveCount
Port1.DisableSlavesIDs[x]
Port1.GetSlavesStatus
Port1.SlavesStatus[x]
Range
-
0 or 1
1 to 60
-
0 or 1
1 to 60
-
0 or 1
-
Description
Port 1 slave polling control array
Slave Poll request
0 = Disable, 1 = Enable
Number of slaves to be enabled
Data array associated to enable slave request where word x corresponds to slave ID x (0-based).
1 = Enable slave
Triggers disable slaves request
0 = Disable, 1 = Enable
Number of slaves to be disabled
Data array associated to disable slave request where word x corresponds to slave ID x (0-based).
1 = Disable slave
Triggers request to read slave status
0 = Disable, 1 = Enabled
Data array with status
ProSoft Technology, Inc. Page 68 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
MBS.CONTROL.Time
This array allows the processor to get or set module time.
Tag Name
SetTime
GetTime
Year
Month
Day
Hour
Minute
Second
Milliseconds
Using Controller Tags
Range
0 or 1
Description
Sends the PLC time to the module
0 = Disable, 1 = Enable
0 or 1 Retrieves the time from the module to PLC
0 = Disable, 1 = Enable
0 to 9999 Four digit year value. Example: 2015
1 to 12 Month
1 to 31
0 to 23
0 to 59
0 to 59
Day
Hour
Minute
Second
0 to 999 Millisecond
User Manual
MBS.CONTROL.GetStatus
This tag allows the processor to retrieve status from the module.
Tag Name
GetStatus
Range
0 or 1
Description
Triggers status retrieval from the module
0 = Disable, 1 = Enable
MBS.CONTROL.ResetStatus
This tag allows the processor to reset the module status counters.
Tag Name
ResetStatus
Range
0 or 1
Description
Triggers module status counter reset
0 = Disable, 1 = Enable
MBS.CONTROL.ColdBoot
This tag allows the processor to Coldboot the module (full reboot).
Tag Name
ColdBoot
Range
0 or 1
Description
Triggers a cold boot of the module
0 = Disable, 1 = Enable
MBS.CONTROL.WarmBoot
This tag allows the processor to Warmboot the module (driver reboot).
Tag Name
WarmBoot
Range
0 or 1
Description
Triggers a warm boot the module
0 = Disable, 1 = Enable
ProSoft Technology, Inc. Page 69 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
5.3.4 MBS.STATUS
Using Controller Tags
User Manual
This array contains status data for the module.
Tag Name
PassCnt
Product
Rev
OP
Run
Port1Stats
Port1Stats.CmdListReq
Port1Stats.CmdListResp
Port1Stats.CmdListErr
Port1Stats.PortReq
Port1Stats.PortResp
Description
Program cycle counter
– this value is incremented each time a complete program cycle occurs in the module
Product code
Firmware revision level number
Operating level number
Run number
Port 1 status
Total number of requests made from port 1 to slave devices on the network
Total number of slave response messages received on port 1
Total number of command errors processed on port 1. These errors could be due to a bad response or command
Total number of messages sent out of port 1
Total number of messages received on port 1
Port1Stats.PortErrSent
Port1Stats.PortErrRec
Port1Stats.CurrErr
Port1Stats.LastErr
Block
Block.Read
Block.Write
Block.Parse
Block.Event
Block.Cmd
Block.Err
Port1LastErr
Port1PreviousErr
Total number of message errors sent out of port 1
Total number of message errors received on port 1
Not used
Not used
Backplane transfer status
Total number of read blocks transferred from the module to the processor
Total number of write blocks transferred from the processor to the module
Total number of blocks successfully parsed that were received from the processor
Total number of event command blocks received from the processor
Total number of command blocks received from the processor
Total number of block transfer errors recognized by the module
For a slave port, this field contains the value of the current error code returned.
For a master port, this field contains the index of the currently executing command.
For a slave port, this field contains the value of the last error code returned.
For a master port, this field contains the index of the command with an error.
ProSoft Technology, Inc. Page 70 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
5.3.5 MBS.UTIL
Using Controller Tags
User Manual
The array is used for internal ladder processing, and must not be modified.
Tag Name
ReadDataSizeGet
WriteDataSizeGet
ReadDataBlkCount
WriteDataBlkCount
RBTSremainder
WBTSremainder
BlockIndex
LastRead
LastWrite
LastWriteInit
ConfigFile
ConfigFile.WordLength
ConfigFile.BlockCount
ConfigFile.FileOffset
ConnectionInputSize
BlockTransferSize
SlotNumber
EventBlockID
EventCmdPending
PollStatusOffset
CmdsAddedToQueue
CmdControlBlockID
CmdCntrlPending
EventDataCmdPending
BootTimer
PassThru[ ] Array
Description
Holds Read Data array size (240)
Holds Write Data array size (240)
Number of Read Data blocks (1)
Number of Write Data blocks (1)
Not used
Not used
Computed block offset for data
Latest Read Block ID received from the module
Latest Write Block ID to be sent to the module
Latest Write Block ID used during initialization
Holds variables for configuration file transfer
Length of configuration data to be included in block transfer
Not used
Offset in configuration file to use as a starting point for copying over configuration data
Holds size of the Connection Input array (240)
Size of the backplane transfer blocks (240)
Slot number of the module in the rack
Holds Block ID for Event Command
Keeps an Event Command message from being sent to the module before the previous Event Command is completed
Offset in slave status data array to use as a starting point for copying over slave status data
Number of Command Control messages added to the command queue
Holds Block ID for Command Control
Keeps a Command Control message from being sent to the module before the previous Command Control is completed
Keeps an Event Command with Data message from being sent to the module before the previous Event Command with Data is completed
Timer used to clear both cold and warm boot requests
Holds variables used for processing pass-through messages
ProSoft Technology, Inc. Page 71 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
6 Diagnostics and Troubleshooting
Diagnostics and Troubleshooting
User Manual
The MVI69L-MBS 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.
LED
Data
State
OFF
Description
Ethernet connected at 10 Mbps duplex speed
AMBER Solid Ethernet connected at 100 Mbps duplex speed
Link
OFF
GREEN Solid or Blinking
No physical network connection is detected. No Ethernet communication is possible. Check wiring and cables.
Physical network connection detected. This LED must be ON solid for Ethernet communication to be possible.
ProSoft Technology, Inc. Page 72 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
6.2 LED Status Indicators
Diagnostics and Troubleshooting
User Manual
The LEDs indicate the module’s operating status.
LED
ETH
Status
On
Off
Indication
Ethernet communications are ok
No Ethernet cable connected
P1
Green
Red
Off
Data is being transferred between the module and the Modbus network on Port 1
Communication error detected
No Modbus network activity detected
CFG Green Configuration is ok
BP
OK
Yellow
Red
Off
Green
Red
Green
Red
Module is reading configuration
Error setting up Modbus protocol driver, failed startup, or module shutting down
Processor is in Program mode
The LED is on when the module is performing a write operation on the backplane. Under normal operation, the LED should blink rapidly on and off.
Major fault or module shutting down
Module is ok
The program has detected an error or is being configured. If the
LED remains red for over 10 seconds, the program has probably halted.
During module configuration, the OK LED is red and the BP ACT LED is on. If the APP,
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 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 it 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.
ProSoft Technology, Inc. Page 73 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
6.2.2 Troubleshooting
Diagnostics and Troubleshooting
User Manual
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
Problem description
Processor fault
Processor I/O LED flashes
Steps to take
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.
This indicates a problem with backplane communications. A problem could exist between the processor and any installed I/O module, not just the MVI69L-MBS. Verify that all modules in the rack are correctly configured.
Module Errors
Problem description
BP ACT LED (not present on MVI56E modules) remains OFF or blinks slowly
MVI69 modules with scrolling LED display:
<Backplane Status> condition reads ERR
OK LED remains RED
Steps to take
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.
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, then re-insert it, and then restore power to the rack.
ProSoft Technology, Inc. Page 74 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
6.3 Connecting the PC to the Module's Ethernet Port
Diagnostics and Troubleshooting
User Manual
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 ETH 1 Port on the module.
ProSoft Technology, Inc. Page 75 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
6.3.1 Setting Up a Temporary IP Address
Diagnostics and Troubleshooting
User Manual
Important: ProSoft Configuration Builder (PCB) locates MVI69L-MBSs through UDP broadcast messages.
These messages may be blocked by routers or layer 3 switches. In that case, 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 MVI69L-MBS . (For instructions on opening and using a project in PCB, please refer to Configuring the
MVI69L-MBS Using PCB (page 40).
2 Right-click the module icon in the tree and choose D IAGNOSTICS .
3 In the Diagnostics window, click the S ET U P C ONNECTION button.
ProSoft Technology, Inc. Page 76 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Diagnostics and Troubleshooting
User Manual
4 In the Connection Setup dialog box, click B ROWSE D EVICE ( S ) to start ProSoft
Discovery Service. Right-click the module and choose A SSIGN T EMPORARY IP .
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 50).
6 Close the ProSoft Discovery Service window. Enter the temporary IP address in the
E THERNET ADDRESS field of the Connection Setup dialog box, then click T EST
C ONNECTION to verify that the module is accessible with the current settings.
7 If the Test Connection is successful, click C ONNECT . The Diagnostics window is now accessible.
ProSoft Technology, Inc. Page 77 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
6.4 Using the Diagnostics Menu in PCB
Diagnostics and Troubleshooting
User Manual
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, right-click the MVI69L-MBS and then choose D IAGNOSTICS . For instructions on opening and using a project in PCB,
please refer to Configuring the MVI69L-MBS Using PCB (page 40).
2 After the Diagnostics window opens, click the S ET UP C ONNECTION button to browse for the module’s IP address.
ProSoft Technology, Inc. Page 78 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Diagnostics and Troubleshooting
User Manual
3 In the Ethernet field of the Connection Setup dialog box, enter the current IP address, whether it is temporary or permanent. Click T EST C ONNECTION to verify that the module is accessible with the current settings.
4 If the T EST C ONNECTION is successful, click C ONNECT . The Diagnostics window is now visible.
ProSoft Technology, Inc. Page 79 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
6.4.1 Diagnostics Menu
Diagnostics and Troubleshooting
User Manual
In the Diagnostics window in ProSoft Configuration Builder, the Diagnostics menu is available through the Ethernet configuration port. The menu is arranged as a tree structure.
6.4.2 Monitoring General Information
In the Diagnostics window in ProSoft Configuration Builder, click MODULE and then click V ERSION to view module version information.
ProSoft Technology, Inc. Page 80 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
6.4.3 Monitoring Network Configuration Information
Diagnostics and Troubleshooting
User Manual
In the Diagnostics window in Prosoft Configuration Builder, click NETWORK and then click C
ONFIG
to view the Ethernet network configuration information.
ProSoft Technology, Inc. Page 81 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
6.4.4 Monitoring Backplane Information
Diagnostics and Troubleshooting
User Manual
In the Diagnostics window in ProSoft Configuration Builder, click BACKPLANE to view the backplane information. This menu has two submenus:
C ONFIGURATION
S TATUS
ProSoft Technology, Inc. Page 82 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
6.4.5 Port 1 Module Information
Diagnostics and Troubleshooting
User Manual
The MODBUS PORT 1 menu includes the following submenus:
Configuration
Status (General status for the port)
Master Commands (Used when port is configured as a Modbus master)
Slave Status List (Status of each slave on the network, used when port is configured as a Modbus master)
Master Command Status (Status code for each master command, used when port is configured as a Modbus master)
6.4.6
Monitoring Data Values in the Module’s Database
In the Diagnostics window in ProSoft Configuration Builder, click DATABASE and then click D ECIMAL to view the contents of the MVI69L-MBS ’s internal database. You can view data values in ASCII, Hexadecimal, and Float format.
ProSoft Technology, Inc. Page 83 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
6.5 Communication Error Codes
Diagnostics and Troubleshooting
User Manual
Note: If an error code is reported that is not listed below, check with the documentation of the Modbus device(s) on the module's application ports. Modbus devices can produce device-specific error codes.
6.5.1 Standard MODBUS Protocol Exception Code Errors
4
5
6
Code
1
2
3
Description
Illegal Function Code
Illegal Data Address
Illegal Data Value
Failure in Associated Device
Acknowledge
Busy, Rejected Message
Code
-1
-2
-11
253
254
255
6.5.2 Module Communication Error Codes
Description
CTS modem control line not set before transmit
Timeout while transmitting message
Timeout waiting for response after request
Incorrect slave address in response
Incorrect function code in response
Invalid CRC/LRC value in response
Code
-41
-42
-43
-44
-45
-46
6.5.3 Command List Entry Errors
Description
Invalid enable code
Internal address > maximum address
Invalid node address (< 0 or > 255)
Count parameter set to 0
Invalid function code
Invalid swap code
ProSoft Technology, Inc. Page 84 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Diagnostics and Troubleshooting
User Manual
6.6 Connecting to the MVI69L-MBS Webpage
The module’s internal web server provides access to module version and status information, as well as the ability to set the date and time, reboot the module, and download firmware upgrade to the module. Enter the assigned IP address of the module into a web browser or use the following steps in PCB.
1 In the PCB Diagnostics window, click the S
ET
U
P
C
ONNECTION
button.
2 In the Connection Setup dialog box, click B ROWSE D EVICE ( S ) to start ProSoft
Discovery Service.
3 Right-click the module icon and choose V IEW M ODULE
’
S W EBPAGE to launch your default browser and display the module’s webpage.
ProSoft Technology, Inc. Page 85 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Diagnostics and Troubleshooting
User Manual
ProSoft Technology, Inc. Page 86 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7 Reference
Reference
User Manual
7.1 Product Specifications
The MVI69L-MBS allows Rockwell Automation ® CompactLogix ® I/O compatible processors to interface easily with other Modbus protocol compatible devices.
The module acts as an input/output communications module between the Modbus network and the CompactLogix backplane. The data transfer from the CompactLogix processor is asynchronous from the actions on the Modbus network. Databases are user-defined and stored in the module to hold the data required by the protocol.
7.1.1 MVI69L General Specs
Single-slot, 1769 backplane-compatible
The module is recognized as an Input/Output module and has access to processor memory for data transfer between processor and module.
Ladder Logic is used for data transfer between module and processor. Sample
Add-On Instruction file included.
Configuration data obtained from and stored in the processor.
Supports CompactLogix processors with 1769 I/O bus capability and at least 800 mA of 5 VDC backplane current available.
7.1.2 Hardware Specifications
Specification
Dimensions
Current Load
Operating Temp.
Storage Temp.
Relative Humidity
LED Indicators
CFG Port (ETH)
App Port (P1)
Shipped with Unit
Description
Standard 1769 Single-slot module
500 mA max @ 5 VDC
Power supply distance rating of 4 (L43 and L45 installations on first 2 slots of 1769 bus)
32° F to 140° F (0° C to 60°C)
-40° F to 185° F (-40° C to 85° C)
5% to 95% (with no condensation)
Module OK Status
Backplane Activity
Ethernet Port Activity
Configuration Activity
Diagnostics over Ethernet connection
RS-232, RS-485 or RS-422 (jumper selectable)
RJ45 Port (DB-9F with supplied cable)
500V Optical isolation from backplane
RJ45 to DB-9M cable for application port
ProSoft Technology, Inc. Page 87 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.1.3 General Specifications - Modbus Master/Slave
Communication
Parameters
Baud rate: 110 to 115K baud
Stop bits: 1 or 2
Data size: 7 or 8 bits
Parity: None, Even, Odd
RTS timing delays: 0 to 65535 milliseconds
Modbus Modes
RTU mode (binary) with CRC-16
ASCII mode with LRC error checking
Floating-Point
Data
Modbus Function
Codes Supported
Floating-point data movement supported, including configurable support for Enron, Daniel ® , and other implementations
1: Read Coil Status
2: Read Input Status
3: Read Holding Registers
4: Read Input Registers
5: Force (Write) Single Coil
6: Preset (Write) Single
Holding Register
8: Diagnostics (Slave Only,
Responds to
Subfunction 00)
15: Force( Write) Multiple Coils
16: Preset (Write) Multiple
Holding Registers
17: Report Slave ID (Slave Only)
22: Mask Write Holding
Register (Slave Only)
23: Read/Write Holding
Registers (Slave Only)
Reference
User Manual
ProSoft Technology, Inc. Page 88 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.2 About the Modbus Protocol
Reference
User Manual
Modbus is a widely-used protocol originally developed by Modicon in 1978. Since that time, the protocol has been adopted as a standard throughout the automation industry.
The original Modbus specification uses a serial connection to communicate commands and data between Master and Slave devices on a network. Later enhancements to the protocol allow communication over other types of networks.
Modbus is a Master/Slave protocol. The Master establishes a connection to the remote
Slave. When the connection is established, the Master sends the Modbus commands to the Slave. The MVI69L-MBS can work as a Master and as a Slave.
The MVI69L-MBS also works as an input/output module between itself and the Rockwell
Automation backplane and CompactLogix processor. The module uses an internal database to pass data and commands between the processor and Master and Slave devices on Modbus networks.
7.2.1 Modbus Master
A port configured as a virtual Modbus Master actively issues Modbus commands to other nodes on the Modbus network, supporting up to 30 commands on the port. The
Master port has an optimized polling characteristic that polls slaves with communication problems less frequently.
Command List
Up to 30 commands per Master port, each fully configurable for function, slave address, register to/from addressing and word/bit count.
Polling of command list Configurable polling of command list, including continuous and on change of data, and dynamically user or automatic enabled.
Status Data Error codes available on an individual command basis. In addition, a slave status list is maintained per active Modbus
Master port.
7.2.2 Modbus Slave
A port configured as a Modbus slave permits a remote Master to interact with all data contained in the module. This data can be derived from other Modbus slave devices on the network, through a Master port, or from the CompactLogix processor.
Node address
Status Data
1 to 247 (software selectable)
Error codes, counters and port status available per configured slave port
ProSoft Technology, Inc. Page 89 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Reference
User Manual
7.2.3 Function Codes Supported by the Module
The format of each command in the list depends on the Modbus Function Code being executed. The following table lists the Function Codes supported by the MVI69L-MBS.
4
5
6
Function Code
1
2
3
Definition
Read Coil Status 0x
Read Input Status 1x
Read Holding Registers 4x
Read Input Registers 3x
Set Single Coil 0x
Single Register Write 4x
Supported as Master Supported as Slave
X
X
X
X
X
X
X
X
X
X
X
X
8
Diagnostics X
15
16
17
Multiple Coil Write 0x
Multiple Register Write 4x
Report Slave ID
X
X
X
X
X
22
Mask Write 4X X
23
Read/Write X
Each command list record has the same general format. The first part of the record contains the information relating to the communication module and the second part contains information required to interface to the Modbus slave device.
ProSoft Technology, Inc. Page 90 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.2.4 Read Coil Status (Function Code 01)
Reference
User Manual
Query
This function allows you to obtain the ON/OFF status of logic coils (Modbus 0x range) used to control discrete outputs from the addressed slave only. Broadcast mode is not supported with this function code. In addition to the slave address and function fields, the message requires that the information field contain the initial coil address to be read
(Starting Address) and the number of locations that are interrogated to obtain status data.
The addressing allows up to 2000 coils to be obtained at each request; however, the specific slave device may have restrictions that lower the maximum quantity. The coils are numbered from zero; (coil number 1 = zero, coil number 2 = one, coil number 3 = two, and so on).
The following table is a sample read output status request to read coils 0020 to 0056 (37 coils) from slave device number 11.
Note: This is the structure of the message being sent out to the Modbus network. The byte values below are in hexadecimal display
Node
Address
0B
Function
Code
01
Data Start
Point High
00
Data Start
Point Low
13
Number of
Points High
00
Number of
Points Low
25
Error Check
Field (2 bytes)
CRC
Response
An example response to Read Coil Status is as shown in the table below. The data is packed one bit for each coil. The response includes the slave address, function code, quantity of data characters, the data characters, and error checking. Data is packed with one bit for each coil (1 = ON, 0 = OFF). The low order bit of the first character contains the addressed coil, and the remainder follows. For coil quantities that are not even multiples of eight, the last characters are filled in with zeros at high order end. The quantity of data characters is always specified as quantity of RTU characters, that is, the number is the same whether RTU or ASCII is used.
Because the slave interface device is serviced at the end of a controller's scan, data reflects coil status at the end of the scan. Some slaves limit the quantity of coils provided each scan; thus, for large coil quantities, multiple PC transactions must be made using coil status from sequential scans.
Node
Address
Func
Code
Byte
Count
Data Coil
Status 20 to 27
Data Coil
Status 28 to 35
Data Coil
Status 36 to 43
Data Coil
Status 44 to 51
Data Coil
Status 52 to 56
Error Check
Field
(2 bytes)
01 05 CD 6B B2 OE 1B CRC 0B
ProSoft Technology, Inc. Page 91 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Reference
User Manual
The status of coils 20 to 27 is shown as CD (HEX) = 1100 1101 (Binary). Reading from left to right, this shows that coils 27, 26, 23, 22, and 20 are all on. The other Data Coil
Status bytes are decoded similarly. Due to the quantity of coil statuses requested, the last data field, which is shown 1B (HEX) = 0001 1011 (Binary), contains the status of only 5 coils (52 to 56) instead of 8 coils. The 3 left most bits are provided as zeros to fill the 8-bit format.
ProSoft Technology, Inc. Page 92 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.2.5 Read Input Status (Function Code 02)
Reference
User Manual
Query
This function allows you to obtain the ON/OFF status of discrete inputs (Modbus 1x range) in the addressed slave. PC Broadcast mode is not supported with this function code. In addition to the slave address and function fields, the message requires that the information field contain the initial input address to be read (Starting Address) and the number of locations that are interrogated to obtain status data.
The addressing allows up to 2000 inputs to be obtained at each request; however, the specific slave device may have restrictions that lower the maximum quantity. The inputs are numbered form zero; (input 10001 = zero, input 10002 = one, input 10003 = two, and so on, for a 584).
The following table is a sample read input status request to read inputs 10197 to 10218
(22 coils) from slave number 11.
Note: This is the structure of the message being sent out to the Modbus network. The byte values below are in hexadecimal display.
Node
Address
0B
Function
Code
02
Data Start
Point High
00
Data Start
Point Low
C4
Number of
Points High
00
Number of
Points Low
16
Error Check Field
(2 bytes)
CRC
Response
An example response to Read Input Status is as shown in the table below. The data is packed one bit for each input. The response includes the slave address, function code, quantity of data characters, the data characters, and error checking. Data is packed with one bit for each input (1=ON, 0=OFF). The lower order bit of the first character contains the addressed input, and the remainder follows. For input quantities that are not even multiples of eight, the last characters are filled in with zeros at high order end. The quantity of data characters is always specified as a quantity of RTU characters, that is, the number is the same whether RTU or ASCII is used.
Because the slave interface device is serviced at the end of a controller's scan, the data reflect input status at the end of the scan. Some slaves limit the quantity of inputs provided each scan; thus, for large coil quantities, multiple PC transactions must be made using coil status for sequential scans.
Node
Address
0B
Func
Code
02
Byte
Count
03
Data Discrete
Input 10197 to
10204
AC
Data Discrete
Input 10205 to
10212
DB
Data Discrete
Input 10213 to
10218
35
Error Check
Field
(2 bytes)
CRC
The status of inputs 10197 to 10204 is shown as AC (HEX) = 10101 1100 (binary).
Reading left to right, this show that inputs 10204, 10202, and 10199 are all on. The other input data bytes are decoded similar.
ProSoft Technology, Inc. Page 93 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Reference
User Manual
Due to the quantity of input statuses requested, the last data field which is shown as 35
HEX = 0011 0101 (binary) contains the status of only 6 inputs (10213 to 102180) instead of 8 inputs. The two left-most bits are provided as zeros to fill the 8-bit format.
7.2.6 Read Holding Registers (Function Code 03)
Query
This function allows you to retrieve the contents of holding registers 4xxxx (Modbus 4x range) in the addressed slave. The registers can store the numerical values of associated timers and counters which can be driven to external devices. The addressing allows retrieving up to 125 registers at each request; however, the specific slave device may have restrictions that lower this maximum quantity. The registers are numbered form zero (40001 = zero, 40002 = one, and so on). The broadcast mode is not allowed.
The example below reads registers 40108 through 40110 (three registers) from slave number 11.
Note: This is the structure of the message being sent out to the Modbus network. The byte values below are in hexadecimal display.
Node
Address
0B
Function
Code
03
Data Start
Registers
High
00
Data Start
Registers Low
6B
Data Number of Registers
High
00
Data Number of Registers
Low
03
Error Check Field
(2 bytes)
CRC
Response
The addressed slave responds with its address and the function code, followed by the information field. The information field contains 1 byte describing the quantity of data bytes to be returned. The contents of the registers requested (DATA) are two bytes each, with the binary content right justified within each pair of characters. The first byte includes the high order bits and the second, the low order bits.
Because the slave interface device is normally serviced at the end of the controller's scan, the data reflect the register content at the end of the scan. Some slaves limit the quantity of register content provided each scan; thus for large register quantities, multiple transmissions are made using register content from sequential scans.
In the example below, the registers 40108 to 40110 have the decimal contents 555, 0, and 100 respectively.
Node
Address
Function
Code
0B 03
Byte
Count
06
High
Data
02
Low
Data
2B
High
Data
00
Low
Data
00
High
Data
00
Low
Data
64
Error Check
Field
(2 bytes)
CRC
ProSoft Technology, Inc. Page 94 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.2.7 Read Input Registers (Function Code 04)
Reference
User Manual
Query
This function retrieves the contents of the controller's input registers from the Modbus 3x range. These locations receive their values from devices connected to the I/O structure and can only be referenced, not altered from within the controller, The addressing allows retrieving up to 125 registers at each request; however, the specific slave device may have restrictions that lower this maximum quantity. The registers are numbered for zero
(30001 = zero, 30002 = one, and so on). Broadcast mode is not allowed.
The example below requests the contents of register 30009 in slave number 11.
Note: This is the structure of the message being sent out to the Modbus network. The byte values below are in hexadecimal display.
Node
Address
Function
Code
Data Start
Point High
0B 04 00
Data Start
Point Low
08
Data Number of Points High
Data Number of Points Low
00 01
Error Check
Field
(2 bytes)
CRC
Response
The addressed slave responds with its address and the function code followed by the information field. The information field contains 1 byte describing the quantity of data bytes to be returned. The contents of the registers requested (DATA) are 2 bytes each, with the binary content right justified within each pair of characters. The first byte includes the high order bits and the second, the low order bits.
Because the slave interface is normally serviced at the end of the controller's scan, the data reflect the register content at the end of the scan. Each PC limits the quantity of register contents provided each scan; thus for large register quantities, multiple PC scans are required, and the data provided is from sequential scans.
In the example below the register 30009 contains the decimal value 0.
Node
Address
Function
Code
Byte Count Data Input
Register High
Data Input
Register Low
Error Check Field
(2 bytes)
0B 04 02 00 00 CRC
ProSoft Technology, Inc. Page 95 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.2.8 Force Single Coil (Function Code 05)
Reference
User Manual
Query
This Function Code forces a single coil (Modbus 0x range) either ON or OFF. Any coil that exists within the controller can be forced to either state (ON or OFF). However, because the controller is actively scanning, unless the coil is disabled, the controller can also alter the state of the coil. Coils are numbered from zero (coil 0001 = zero, coil 0002
= one, and so on). The data value 65,280 (FF00 HEX) sets the coil ON and the value zero turns it OFF; all other values are illegal and do not affect that coil.
The use of slave address 00 (Broadcast Mode) forces all attached slaves to modify the desired coil.
Note: Functions 5, 6, 15, and 16 are the only messages that are recognized as valid for broadcast.
The example below is a request to slave number 11 to turn ON coil 0173.
Note: This is the structure of the message being sent out to the Modbus network. The byte values below are in hexadecimal display.
Node
Address
0B
Function
Code
05
Data Start Bit
High
00
Data Start Bit
Low
AC
Number of
Bits High
FF
Number of
Bits Low
00
Error Check
Field (2 bytes)
CRC
Response
The normal response to the Command Request is to re-transmit the message as received after the coil state has been altered.
Node
Address
Function
Code
Data Coil Bit
High
Data Coil Bit
Low
Data On/Off Data Error Check
Field (2 bytes)
0B 05 00 AC FF 00 CRC
The forcing of a coil via Modbus function 5 happens regardless of whether the addressed coil is disabled or not ( In ProSoft products, the coil is only affected if you implement the necessary ladder logic).
Note: The Modbus protocol does not include standard functions for testing or changing the DISABLE state of discrete inputs or outputs. Where applicable, this may be accomplished via device specific Program commands (In ProSoft products, this is only accomplished through ladder logic programming).
Coils that are reprogrammed in the controller logic program are not automatically cleared upon power up. Thus, if such a coil is set ON by function Code 5 and (even months later), an output is connected to that coil, the output is "hot".
ProSoft Technology, Inc. Page 96 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.2.9 Preset Single Register (Function Code 06)
Reference
User Manual
Query
This Function Code allows you to modify the contents of a Modbus 4x range in the slave.
This writes to a single register only. Any holding register that exists within the controller can have its contents changed by this message. However, because the controller is actively scanning, it also can alter the content of any holding register at any time. The values are provided in binary up to the maximum capacity of the controller. Unused high order bits must be set to zero. When used with slave address zero (Broadcast mode), all slave controllers load the specified register with the contents specified.
Note: Functions 5, 6, 15, and 16 are the only messages that are recognized as valid for broadcast.
Note: This is the structure of the message being sent out to the Modbus network. The byte values below are in hexadecimal display.
The example below is a request to write the value ‘3’ to register 40002 in slave 11.
Node
Address
0B
Function
Code
06
Data Start Bit
High
00
Data Start
Bit Low
01
Preset Data
Register High
00
Preset Data
Register Low
03
Error Check
Field (2 bytes)
CRC
Response
The response to a preset single register request is to re-transmit the query message after the register has been altered.
Node
Address
0B
Function
Code
06
Data Register
High
00
Data Register
Low
01
Preset Data
Register High
00
Preset Data
Register Low
03
Error Check
Field (2 bytes)
CRC
ProSoft Technology, Inc. Page 97 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Reference
User Manual
7.2.10 Diagnostics (Function Code 08)
This function provides a series of tests for checking the communication system between a master device and a slave, or for checking various internal error conditions within a slave.
The function uses a two-byte sub-function code field in the query to define the type of test to be performed. The slave echoes both the function code and sub-function code in a normal response. Some of the diagnostics commands cause data to be returned from the remote device in the data field of a normal response.
In general, issuing a diagnostic function to a remote device does not affect the running of the user program in the remote device. Device memory bit and register data addresses are not accessed by the diagnostics. However, certain functions can optionally reset error counters in some remote devices.
A server device can, however, be forced into 'Listen Only Mode' in which it monitors the messages on the communications system but not respond to them. This can affect the outcome of your application program if it depends upon any further exchange of data with the remote device. Generally, the mode is forced to remove a malfunctioning remote device from the communications system.
Sub-function Codes Supported
Only Sub-function 00 is supported by the MVI69L-MBS.
00 Return Query Data
The data passed in the request data field is to be returned (looped back) in the response. The entire response message should be identical to the request.
Sub-function
00 00
Data Field (Request)
Any
Data Field (Response)
Echo Request Data
Example and State Diagram
Here is an example of a request to remote device to Return Query Data. This uses a sub-function code of zero (00 00 hex in the two-byte field). The data to be returned is sent in the two-byte data field (A5 37 hex).
Request
Field Name
Function
Sub-function Hi
Sub-function Lo
Data Hi
Data Lo
(Hex)
08
00
00
A5
37
Response
Field Name
Function
Sub-function Hi
Sub-function Lo
Data Hi
Data Lo
(Hex)
08
00
00
A5
27
ProSoft Technology, Inc. Page 98 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Reference
User Manual
The data fields in responses to other kinds of queries could contain error counts or other data requested by the sub-function code.
ProSoft Technology, Inc. Page 99 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.2.11 Force Multiple Coils (Function Code 15)
Reference
User Manual
Query
This function forces each coil (Modbus 0x range) in a consecutive block of coils to a desired ON or OFF state. Any coil that exists within the controller can be forced to either state (ON or OFF). However, because the controller is actively scanning, unless the coils are disabled, the controller can also alter the state of the coil. Coils are numbered from zero (coil 00001 = zero, coil 00002 = one, and so on). The desired status of each coil is packed in the data field, one bit for each coil (1= ON, 0= OFF). The use of slave address
0 (Broadcast Mode) forces all attached slaves to modify the desired coils.
Note: Functions 5, 6, 15, and 16 are the only messages (other than Loopback Diagnostic Test) that are recognized as valid for broadcast.
The following example forces 10 coils starting at address 20 (13 HEX). The two data fields, CD =1100 and 00 = 0000 000, indicate that coils 27, 26, 23, 22, and 20 are to be forced on.
Note: This is the structure of the message being sent out to the Modbus network. The byte values below are in hexadecimal display.
Node
Address
Func
Code
Coil
Address
High
Coil
Address
Low
Number of
Coils High
Number of
Coils Low
Byte
Count
Force
Data High
20 to 27
Force
Data Low
28 to 29
Error Check
Field (2 bytes)
0B 0F 00 13 00 0A 02 CD 01 CRC
Response
The normal response is an echo of the slave address, function code, starting address, and quantity of coils forced.
Node
Address
Func
Code
0B 0F
Coil
Address
High
00
Coil
Address
Low
13
Number of
Coils High
00
Number of
Coils Low
Error Check
Field (2 bytes)
0A CRC
Writing to coils with Modbus function 15 is accomplished regardless of whether the addressed coils are disabled or not.
Coils that are not programmed in the controller logic program are not automatically cleared upon power up. Thus, if such a coil is set ON by function code 15 and (even months later) an output is connected to that coil, the output is hot.
ProSoft Technology, Inc. Page 100 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.2.12 Preset Multiple Registers (Function Code 16)
Reference
User Manual
Query
This Function Code allows you to modify the contents of a Modbus 4x range in the slave.
This writes up to 125 registers at time. Since the controller is actively scanning, it also can alter the content of any holding register at any time.
Note: Function codes 5, 6, 15, and 16 are the only messages that are recognized as valid for broadcast.
The example below is a request to write 2 registers starting at register 40002 in slave 11.
Note: This is the structure of the message being sent out to the Modbus network. The byte values below are in hexadecimal display.
Node
Address
Func
Code
Data Start
Address
High
Data Start
Address
Low
Number of Points
High
Number of Points
Low
Byte
Count
Data
High
Data
Low
Data
High
00 01 00 02 04 00 0A 01
Data
Low
02
Error
Check
Field (2
bytes)
CRC 0B 10
0B
Response
The normal response to a function 16 query is to echo the address, function code, starting address and number of registers to be loaded.
Node
Address
Func
Code
Data Start
Address
High
Data Start
Address
Low
Number of Points
High
Number of Points
Low
Error Check
Field (2 bytes)
10 00 01 00 02 CRC
ProSoft Technology, Inc. Page 101 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Reference
User Manual
7.3 Floating-Point Support
You can easily move floating point data between the MBS module and other devices as long as the device supports IEEE 754 Floating Point format. This IEEE format is a 32-bit single-precision floating-point format.
The logic necessary to move the floating-point data takes advantage of the COP instruction in RSLogix 5000. The COP instruction is unique for data movement commands in that it is an untyped function, meaning that no data conversion is done when data is moved between controller tags with different data types (that is, it is an image copy, not a value copy).
The COP instruction to move data from a floating-point controller tag into an integer controller tag (something you would do to move floating-point values to the module) is shown below.
This instruction moves one floating-point value in two 16-bit integer images to
MBS.DATA.WriteData[0] , which is an integer tag. For multiple floating-point values increase the Length field by a factor of 2 per floating-point value.
The COP instruction to move data from MBS.DATA.ReadData[0] , which is an integer tag, to a floating-point tag (something you would do to receive floating-point values from the module) is shown below.
This instruction moves two 16-bit integer registers containing one floating point value image into the floating-point tag. For multiple values increase the Length field.
7.3.1 ENRON Floating Point Support
Many manufacturers have implemented special support in their drivers for what is commonly called the Enron version of the Modbus protocol. In this implementation, addresses greater than 7000 are presumed to contain floating-point values. The significance to this is that the count descriptor for a data transfer now denotes the number of floating-point values to transfer, instead of the number of words.
ProSoft Technology, Inc. Page 102 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.3.2 Configuring the Floating Point Data Transfer
Reference
User Manual
A common question is how to handle floating-point data when using the module as a
Modbus master. This really depends on the slave device and how it addresses this application.
Just because your application is reading or writing floating-point data, does not mean that you must configure the Float Flag, Float Start, and Float Offset parameters within the module.
These parameters are only used to support what is typically referred to as Enron or
Daniel Modbus, where one register address must have 32 bits, or one floating point value. Below is an example:
Example #1
Modbus Address
47101
47102
47103
47104
Data Type
32 bit REAL
32 bit REAL
32 bit REAL
32 bit REAL
Parameter
TEMP Pump #1
Pressure Pump #1
TEMP Pump #2
Pressure Pump #2
With the module configured as a master, you only need to enable these parameters to support a write to this type of addressing (Modbus FC 6 or 16).
If the slave device uses addressing as shown in Example #2, then you do not need to do anything with the Float Flag or Float Start parameters, as this addressing scheme uses two Modbus addresses to represent each floating-point value:
Example #2
Modbus Address
47101
47103
47105
47107
Data Type
32 bit REAL
32 bit REAL
32 bit REAL
32 bit REAL
Parameter
TEMP Pump #1
Pressure Pump #1
TEMP Pump #2
Pressure Pump #2
Because each 32 bit REAL value is represented by two Modbus addresses (example
47101 and 47102 represent TEMP Pump #1), then you do not need to set the Float
Flag , or Float Start for the module for Modbus FC 6 or 16 commands being written to the slave.
The next few pages show three specific examples.
ProSoft Technology, Inc. Page 103 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Reference
User Manual
Example #1: Master issuing Modbus command with FC 16 (with Float Flag: Yes) to transfer Float data to slave.
(Float specific module parameters)
Float Flag: "Y" tells the master to consider the data values that need to be sent to the slave as floating point data where each data value is composed of 2 words (4 bytes or
32 bits).
Float Start - Tells the master that if this address number is <= the address number in
Addr in Dev parameter to double the byte count quantity to be included in the Command
FC6 or FC16 to be issued to the slave. Otherwise the master ignores the Float Flag: Y and treat data as composed of 1 word, 2 bytes.
(Modbus Command parameters)
DB Addr - Tells the master where in its data memory is the beginning of data to obtain and write out to the slave device.
Reg Count - Tells the master how many data points to send to the slave. Two counts mean two floating points with Float Flag: Y and the Addr in Dev greater than or equal to the Float Start Parameter.
Swap Code - Tells the master how to orient the Byte and Word structure of the data value. This is device dependent. Check Command Entry formats Section.
Func Code - Tells the master to write the float values to the slave. FC16.
Addr in Dev - Tells the master where in the slave's database to locate the data.
ProSoft Technology, Inc. Page 104 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Reference
User Manual
In the above example, the master's Modbus command to transmit inside the Modbus packet is as follows.
Reg Count Byte Count Data
DEC
HEX
Slave
Address
01
01
Function
Code
16
10
Address in
Device
7100
1B BC
2
00 02
8
08
85.37 22.86
BD 71 42 AA E1 48 41 B6
In this example, the master's Modbus packet contains the data byte and data word counts that have been doubled from the amount specified by Reg Count due to the Float flag set to Y. Some slaves look for the byte count in the data packet to know the length of the data to read from the wire. Other slaves know at which byte the data begins and read from the wire the remaining bytes in the packet as the data the master is sending.
ProSoft Technology, Inc. Page 105 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Reference
User Manual
Example #2: Master issuing Modbus command with FC 16 (with Float Flag: No) to transfer Float data.
Float Flag: "N" tells the master to ignore the floating values and treat each register data as a data point composed of 1 word, 2 bytes or 16 bits.
Float Start: Ignored.
DB Addr - same as when Float Flag: Y.
Reg Count - Tells the master how many data points to send to the slave.
Swap Code - same as when Float Flag: Y.
Func Code - same as when Float Flag: Y.
Addr in Dev - same as when Float Flag: Y as long as the slave's Float Flag = Y.
In the above example, the master's Modbus command to transmit inside the Modbus packet is as follows.
Data
DEC
HEX
Slave
Address
01
01
Function
Code
16
10
Address in
Device
7100
1B BC
Reg
Count
2
00 02
Byte
Count
4
04
85.37
BD 71 42 AA
In this example, the master's Modbus packet contains the data byte and data word counts that have NOT been doubled from the amount specified by Reg Count due to the
Float Flag set to N. The slave looks for the byte count in the data packet to know the length of the data to read from the wire. Because of insufficient byte count, some slaves read only half the data from the master's transmission. Other slaves read all 8 bytes in this example because they know where in the packet the data starts and ignore the byte count parameter inside the Modbus packet.
ProSoft Technology, Inc. Page 106 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Example #3: Master issuing Modbus command with FC 3 to transfer Float data from slave.
Reference
User Manual
Float Flag: Not applicable with Modbus Function Code 3.
Float Start: Not applicable with Modbus Function Code 3.
DB Addr - Tells the master where in its data memory to store the data obtained from the slave.
Reg Count - Tells the master how many registers to request from the slave.
Swap Code - same as above.
Func Code - Tells the master to read the register values from the slave. FC3.
Addr in Dev - Tells the master where in the slave's database to obtain the data.
In the above example, the master's Modbus command to transmit inside the Modbus packet is as follows.
DEC
HEX
Slave Address Function Code Address in Device Reg Count
01 3 6100 2
01 03 17 D4 00 02
In the above example the (Enron/Daniel supporting) slave's Modbus command to transmit inside the Modbus packet is as follows.
DEC
HEX
Slave Address Function Code Byte Count Data
01 3 8 32.75 275.69
01 03 08 00 00 42 03 D8 52 43 89
In the above example the (a NON-Enron/Daniel supporting) slave's Modbus command that is transmitted inside the Modbus packet is as follows.
DEC
HEX
Slave Address Function Code Byte Count Data
01 3 4 32.75
01 03 04 00 00 42 03
ProSoft Technology, Inc. Page 107 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.4 Function Blocks
Reference
User Manual
9956
9957
9958
9959
9961
9970
9972
9973
8000
8100
9000 or -9000
9001 or -9001
9250
9500
9501
9997
9998
9999
Data contained in this database is paged through the input and output images by coordination of the CompactLogix ladder logic and the MVI69L-MBS's program. Each block transferred from the module to the processor or from the processor to the module contains a block identification code that describes the content of the block.
Block ID Range
-1000 to -1166
-1 to -999
0
1 to 167
Description
Get input image data for initialization
Dummy block
Read or write data for small data sets
Read or write data
1000 to 1255
3000 to 3001
3002 to 3006
5001 to 5006
Event Command Port 1
Port 1 slave polling control
Port 1 slave status
Port 1 Command Control
Add Event with data for Port 1
Get Event with data status
Specifications of configuration file data from the processor to the module
Get configuration file from the processor to the module (continued)
Get general module status data
Set port and command active bits
Get port and command active bits
Pass-through formatted block for functions 6 and 16 with word data
Pass-through formatted block for functions 6 and 16 with float data
Pass-through formatted block for function 5
Pass-through formatted block for function 15
Pass-through formatted block for function 23
Pass-through block for function 99
Set module time using received time
Pass module time to processor
Reset status block
Warm-boot control block
Cold-boot control block
ProSoft Technology, Inc. Page 108 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Reference
User Manual
7.4.1 Event Command Blocks (1000 to 1255)
Blocks 1000 to 1255: Event Port 1
Event Command blocks send Modbus commands directly from the ladder logic the
Master port. The Event Command is added to the high-priority queue and interrupts normal polling so that this special command can be sent as soon as possible.
Note: Overusing Event Commands may substantially slow or totally disrupt normal polling. Use Event
Commands sparingly. Event Commands are meant to be used as one-shot commands triggered by special circumstances or uncommon events.
Blocks 1000 to 1255: Request from Processor to Module
Offset
0
Description
Write Block ID: 1000 to 1255 for a Port 1 command. The last 3 digits of the command specify the slave address to use for the command.
1
2
3
4
5
6 to 239
Internal address in the module to be used with the command.
Count parameter that determines the number of digital points or registers to associate with the command.
Swap type for the data.
Modbus Function Code to be associated with the command.
Modbus address in the slave device to be used in the command.
Spare
Blocks 1000 to 1255: Response from Module to Processor
Offset
0
1
2
Description
Read Block ID: 1000 to 1255 requested by the processor.
Write Block ID: To be used by the processor in its next Write block
Result of the event request. 1 = the command was placed in the command queue; 0 = no room was found in the command queue.
Number of commands in the command queue for the specified port.
Spare
3
4 to 239
ProSoft Technology, Inc. Page 109 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.4.2 Slave Polling Disable Block (3000)
Block 3000: Port 1 Slave Polling Disable
This block allows the processor to disable polling for specific slaves.
Reference
User Manual
Block 3000: Request from Processor to Module
Offset
0
1
2 to 61
Description
Write Block ID: 3000 for Port 1 slave polling disable request.
Number of slaves listed in the block (1 to 60).
Slave indexes to disable in the command list for the selected port. The number of slaves to process is set in Word 1 of the block.
Block 3000: Response from Module to Processor
Offset
0
1
2
3 to 239
Description
Read Block ID: 3000 requested by the processor.
Write Block ID: To be used by the processor in its next Write block.
Number of slaves processed in the last request. This number should match the value passed in Word 1of the request block.
Spare
7.4.3 Slave Polling Enable Blocks (3001)
Block 3001: Port 1 Slave Polling Enable
This block allows the processor to enable polling for specific slaves.
Block 3001: Request from Processor to Module
Offset
0
1
2 to 61
Description
Write Block ID: 3001 for Port 1 slave polling enable request.
Number of slaves listed in the block (1 to 60).
Slave indexes to enable in the command list for the selected port. The number of slaves to process is set in Word 1 of the block.
Block 3001: Response from Module to Processor
Offset
0
1
2
3 to 299
Description
Read Block ID: 3000 to 3101 requested by the processor.
Write Block ID: To be used by the processor in its next Write block.
Number of slaves processed in the last request. This number should match the value passed in Word 1of the request block.
Spare
ProSoft Technology, Inc. Page 110 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.4.4 Slave Polling Status Block (3002 to 3006)
Reference
User Manual
Blocks 3002 to 3006: Port 1 Slave Status
Two arrays are allocated in the module’s primary object to hold the polling status of each slave on the Master port. You can use this status data to determine which slaves are currently active on the port, in communication error, or have their polling suspended and disabled.
Block 3002 to 3006: Request from Processor to Module
Offset
0
1 to 239
Description
Write Block ID: 3002 to 3006 for Port 1 slave polling status request.
Spare
Block 3002 to 3006: Response from Module to Processor
Offset
0
Description
Read Block ID: 3002 to 3006 requested by the processor.
1
2
3
4 to 61
62 to 239
Write Block ID: To be used by the processor in its next Write block.
Slave ID offset: Index of first slave in block
Number of slaves in this block
Slave polling status data
Spare
Slave Status values
Value
0
Description
OK
1
2
Exceeded retry count and in error delay count mode
Block 3000 or 3100
ProSoft Technology, Inc. Page 111 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.4.5 Command Control Blocks (5001 to 5006)
Reference
User Manual
Blocks 5001 to 5006: Port 1 Command Control
If the CompactLogix processor sends a command control block, the module places the commands referenced in the block in the command queue. Commands placed in the queue with this method need not have their enable bit set. Only valid commands are placed in the queue.
Up to 6 commands can be enabled and placed in the command queue with one write request from the CompactLogix processor.
Blocks 5001 to 5006: Request from Processor to Module
Offset
0
1
2
3
4
5
6
7 to 239
Description
Write Block ID: 5001 to 5006 for Port 1. The last digit indicates how many commands are to be placed in the command queue by this block.
Index in the command list for the first command to be entered into the command queue (applies to blocks 5001 to 5006).
Index for the second command (applies to blocks 5002 to 5006).
Index for the third command (applies to blocks 5003 to 5006).
Index for the fourth command (applies to blocks 5004 to 5006).
Index for the fifth command (applies to blocks 5005 to 5006).
Index for the sixth command (applies to blocks 5006).
Spare
Blocks 5001 to 5006: Response from Module to Processor
Offset
0
1
2
3
4 to 239
Description
Read Block ID: 5001 to 5006 requested by the processor.
Write Block ID: To be used by the processor in its next Write block.
Number of commands in the block placed in the command queue.
Number of commands in the command queue for the specified port.
Spare
ProSoft Technology, Inc. Page 112 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.4.6 Add Event with Data Block (8000)
Reference
User Manual
Block 8000: Add Event with Data for Port 1
The 8000-series blocks are similar to the 1000-series blocks. The 8000-series blocks sou rce the command data from the processor, instead of from the module’s database.
Block 8000: Request from Processor to Module
Offset
0
1
2
3
4
5 to 54
55 to 239
Description
Write Block ID: 8000 for Port 1 event command with data request
Slave address of Modbus device to reach with the command request
Modbus function code to use with command (5, 6, 15 or 16)
Modbus address in slave device
Count value for operation- bit count for function 15 (1 to 800 points) and word count for function 16 (1 to 50 words or 1 to 25 float values). For functions 5 and 6, the count is assumed to be 1.
Data to be used by command.
Spare
Block 8000: Response from Module to Processor
Offset
0
1
2
Description
Read Block ID: 8000 for Port 1 event command with data request
Write Block ID: To be used by the processor in its next Write block.
Error Code for request:
0 = No error
-1 = Port is not enabled
-2 = Port is not a master port
-3 = Port is not active (enabled)
-4 = Port busy with previous event command
-5 = Invalid Modbus command
-6 = Invalid point count for command
Spare
3 to 239
ProSoft Technology, Inc. Page 113 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.4.7 Get Event with Data Status Block (8100)
Block 8100: Get Event with Data Status
This block requests status data for Event with Data Commands.
Block 8100: Request from Processor to Module
Offset
0
1 to 239
Description
Write Block ID: 8100 status data request for Event with Data Commands.
Spare
Block 8100: Response from Module to Processor
Offset
0
1
2
3
6 to 239
Description
Read Block ID: 8100 status data for Event with Data Commands.
Write Block ID: To be used by the processor in its next Write block.
Event command status for Port 1:
0=No message active
1=Waiting to execute command
2=Command complete
Error code for last command executed for Port 1
Spare
Reference
User Manual
7.4.8 Get Configuration File Information Block (9000 or -9000)
Block 9000 or -9000: Get Configuration File Information
This block requests information from the processor about the configuration file, in preparation for transferring the configuration file from the processor to the module. It specifies the location in the configuration file to start copying and sending the information.
1
Block 9000 or -9000: Request from Module to Processor
Offset
0
Description
Read Block ID: 9000 or -9000 request for configuration file information from processor
Write Block ID: 9000 or -9000 to be used by the processor in its next Write block.
ProSoft Technology, Inc. Page 114 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Block 9000 or -9000: Response from Processor to Module
Description
Write Block ID: 9000 or -9000 configuration file information
Module's slot number.
Size of the module's Input image to the processor.
Size of the module's Output image from the processor.
Status of configuration file.
These two registers contain the size of the configuration file in bytes.
These two registers contain the CRC for the configuration file.
Offset
0
1
2
3
4
5-6
7-8
Reference
User Manual
7.4.9 Get Configuration File Block (9001 or -9001)
Block 9001 or -9001: Get Configuration File Information
This block requests the configuration file from the processor. The module returns the requested contents of the configuration file.
Block 9001 or -9001: Request from Module to Processor
Offset
0
1
2 to 3
4 to 5
6 to 7
Description
Read Block ID: 9001 or -9001 request for configuration file from processor
Write Block ID: 9001 or -9001 to be used by the processor in its next Write block.
File offset: Offset of the first register in the configuration file to begin transferring data from. If the size of the configuration file exceeds the block transfer size, the file is transferred in multiple blocks, and the file offset tells the processor which part of the configuration file is being requested by the individual block.
Number of bytes of the configuration file to include in next block
Copy of the data contained in registers 2 to 3.
Block 9001 or -9001: Response from Processor to Module
Offset
0
1 to 2
3 to 4
5 to 239
Description
Write Block ID: 9001 or -9001 configuration file data
File offset: Same as registers 2-3 of the previous request block
Data length: Same as registers 4-5 of the previous request block
Contents of configuration file. If the size of the configuration file exceeds the block transfer size, this information is transferred in multiple blocks.
ProSoft Technology, Inc. Page 115 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.4.10 Get General Module Status Data Block (9250)
Block 9250: Get General Module Status Data
This block requests the general module status.
Reference
User Manual
Block 9250: Request from Processor to Module
Offset
0
1 to 239
Description
Write Block ID: 9250 request for general module status
Spare
Block 9250: Response from Module to Processor
Offset
0
1
2
3 to 4
5 to 6
7 to 8
9 to 10
11
12
13
14
15
16
17
18 to 24
Description
Read Block ID: 9250 requested by processor.
Write Block ID: To be used by the processor in its next Write block.
Program Scan Count: This value is incremented each time a complete program cycle occurs in the module.
Product Code: These two registers contain the product code of "MB6E" for the
MVI69L-MBS.
Product Version: These two registers contain the product version for the current running software.
Operating System: These two registers contain the month and year values for the program operating system.
Run Number: These two registers contain the run number value for the currently running software.
Port 1 Command List Requests: Number of requests made from this port to slave devices on the network.
Port 1 Command List Response: Number of slave response messages received on the port.
Port 1 Command List Errors: Number of command errors processed on the port.
These errors could be due to a bad response or command.
Port 1 Requests: Total number of messages sent out of the port.
Port 1 Responses: Total number of messages received on the port.
Port 1 Errors Sent: Total number of message errors sent out of the port.
Port 1 Errors Received: Total number of message errors received on the port.
Spare
25
26
27
28
29
Read Block Count: Total number of read blocks transferred from the module to the processor.
Write Block Count: Total number of write blocks transferred from the processor to the module.
Parse Block Count: Total number of blocks successfully parsed that were received from the processor.
Event Command Block Count: Total number of Event Command blocks received from the processor.
Command Control Block Count: Total number of Command Control blocks received from the processor.
Error Block Count: Total number of block errors recognized by the module.
30
ProSoft Technology, Inc. Page 116 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Offset
31
Reference
User Manual
Description
Port 1 Current Error: For a slave port, this field contains the value of the current error code returned. For a master port, this field contains the index of the currently executing command.
32
33 to 239
Port 1 Last Error: For a slave port, this field contains the value of the last error code returned. For a master port, this field contains the index of the command with an error.
Spare
7.4.11 Set Port and Command Active Bits Block (9500)
Block 9500: Set Port and command active bits
This block enables and disables Port 1, as well as individual Master commands for a port.
Block 9500: Request from Processor to Module
Offset
0
1
2 to 21
22
23 to 42
43 to 239
Description
Write Block ID: 9500 to set port and command enable/disable state
Port 1 active state: 0=disabled, 1=enabled
Command enable bits for Port 1 commands (0=disabled, 1=enabled)
Spare
Command enable bits for Port 2 commands (0=disabled, 1=enabled)
Spare
Block 9500: Response from Module to Processor
Offset
0
1
2 to 239
Description
Read Block ID: 9500 requested by processor.
Write Block ID: To be used by the processor in its next Write block.
Spare
ProSoft Technology, Inc. Page 117 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.4.12 Get Port and Command Active Bits Block (9501)
Reference
User Manual
Block 9501: Get Port and command active bits
This block requests the enabled/disabled status of the application port and Master commands.
Block 9501: Request from Processor to Module
Offset
0
1 to 239
Description
Write Block ID: 9501 to get port and command enable/disable state
Spare
Block 9501: Response from Module to Processor
Offset
0
1
2
3 to 22
23
24 to 43
44 to 239
Description
Read Block ID: 9501 requested by processor.
Write Block ID: To be used by the processor in its next Write block.
Port 1 active state: 0=disabled, 1=enabled
Command enable bits for Port 1 commands (0=disabled, 1=enabled)
Spare
Command enable bits for Port 2 commands (0=disabled, 1=enabled)
Spare
ProSoft Technology, Inc. Page 118 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Reference
User Manual
7.4.13 Pass-through Formatted Block for Functions 6 and 16 with Word
Data Block (9956)
Block 9956: Pass-Through Formatted Block for Functions 6 and 16 with Word Data
Block
If the slave port on the module is configured for formatted Pass-Through mode, the module sends input image blocks with identification codes of 9956, 9957, 9958 or 9959 to the processor for each write command received. Any incoming Modbus Function 5, 6,
15 or 16 command is passed from the port to the processor using a block identification number that identifies the Function Code received in the incoming command.
The MBS Add-On Instruction handles the receipt of all Modbus write functions and to respond as expected to commands issued by the remote Modbus Master device.
Block 9956: Request from Module to Processor
Offset
0
1
2
3
4 to 239
Description
Read Block ID: 9956
Write Block ID: 9956
Number of word registers in Modbus data set
Starting address for Modbus data set
Data
The ladder logic is responsible for parsing and copying the received message and performing the proper control operation as expected by the Master device. The processor must then respond to the Pass-Through control block with an output image write block with the following format.
This informs the module that the command has been processed and can be cleared from the Pass-Through queue.
Block 9956: Response from Processor to Module
Offset
0
1 to 239
Description
Write Block ID: 9956
Spare
ProSoft Technology, Inc. Page 119 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Reference
User Manual
7.4.14 Pass-through Formatted Block for Functions 6 and 16 with Float Data
Block (9957)
Block 9957: Pass-Through Formatted Block for Functions 6 and 16 with Float Data Block
Block 9957: Request from Module to Processor
Offset
0
1
2
3
4 to 239
Description
Read Block ID: 9957
Write Block ID: 9957
Number of word registers in Modbus data set
Starting address for Modbus data set
Data
The ladder logic is responsible for parsing and copying the received message and performing the proper control operation as expected by the Master device. The processor must then respond to the Pass-Through block with a write block with the following format.
Block 9957: Response from Processor to Module
Offset
0
1 to 239
Description
Write Block ID: 9957
Spare
This informs the module that the command has been processed and can be cleared from the Pass-Through queue.
ProSoft Technology, Inc. Page 120 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Reference
User Manual
7.4.15 Pass-through Formatted Block for Function 5 (9958)
Block 9958: Pass-Through Formatted Block for Function 5
Block 9958: Request from Module to Processor
Offset
0
1
2
3
4 to 239
Description
Read Block ID: 9958
Write Block ID: 9958
Number of word registers in Modbus data set
Starting address for Modbus data set
Data
The ladder logic is responsible for parsing and copying the received message and performing the proper control operation as expected by the Master device. The processor must then respond to the Pass-Through control block with an output image write block with the following format.
Block 9958: Response from Processor to Module
Offset
0
1 to 239
Description
Write Block ID: 9958
Spare
This informs the module that the command has been processed and can be cleared from the Pass-Through queue.
ProSoft Technology, Inc. Page 121 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Reference
User Manual
7.4.16 Pass-through Formatted Block for Function 15 (9959)
Block 9959: Pass-Through Formatted Block for Function 15
When the module receives a function code 15 in Pass-Through mode, the module writes the data using block ID 9959 for multiple-bit data. First the bit mask clears the bits to be updated. This is accomplished in RSLogix 5000 by ANDing the inverted mask with the existing data.
Next, the new data ANDed with the mask is ORed with the existing data. This protects the other bits in the INT registers from being affected.
Block 9959: Request from Module to Processor
Offset
0
1
2
3
4 to 28
29 to 53
Description
Read Block ID: 9959
Write Block ID: 9959
Length in words
Data address
Modbus Data
Bit mask to use with the data set. Each bit to be considered with the data set has a value of 1 in the mask. Bits to ignore in the data set has a value of 0 in the mask.
Spare
54 to 239
The ladder logic is responsible for parsing and copying the received message and performing the proper control operation as expected by the Master device. The processor must then respond to the Pass-Through control block with a write block with the following format.
Block 9959: Response from Processor to Module
Offset
0
1 to 239
Description
Write Block ID: 9959
Spare
This informs the module that the command has been processed and can be cleared from the Pass-Through queue .
ProSoft Technology, Inc. Page 122 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.4.17 Pass-through Formatted Block for Function 23 (9961)
Block 9961: Pass-Through Formatted Block for Function 23
Reference
User Manual
Block 9961: Request from Module to Processor
Offset
0
1
2
3
4 to 239
Description
Read Block ID: 9961
Write Block ID: 9961
Number of word registers in Modbus data set
Starting address for Modbus data set
Data
The ladder logic is responsible for parsing and copying the received message and performing the proper control operation as expected by the Master device. The processor must then respond to the pass-through control block with an output image write block with the following format.
Block 9961: Response from Processor to Module
Offset
0
1 to 239
Description
Write Block ID: 9961
Spare
This informs the module that the command has been processed and can be cleared from the Pass-Through queue.
ProSoft Technology, Inc. Page 123 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Reference
User Manual
7.4.18 Pass-through Block for Function 99 (9970)
Block 9970: Pass-Through Block for Function 99
Block 9970: Request from Module to Processor
Offset
0
1
2
3
4 to 239
Description
Read Block ID: 9970
Write Block ID: 9970
1
0
Spare
The ladder logic is responsible for parsing and copying the received message and performing the proper control operation as expected by the Master device. The processor must then respond to the Pass-Through control block with an output image write block with the following format.
Block 9970: Response from Processor to Module
Offset
0
1 to 239
Description
Write Block ID: 9970
Spare
This informs the module that the command has been processed and can be cleared from the Pass-Through queue.
ProSoft Technology, Inc. Page 124 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.4.19 Set Module Time Using Received Time Block (9972)
Block 9972: Set Module Time Using Received Time Block
This block uses the time information from the processor to set the module time.
Offset
0
5
6
7
1
2
3
4
8 to 239
Block 9972: Request from Processor to Module
Description
Write Block ID: 9972
Year (0-9999)
Month (1-12)
Day (1-31)
Hour (0-23)
Minutes (0-59)
Seconds (0-59)
Milliseconds (0-999)
Spare
Block 9972: Response from Module to Processor
Offset
0
1
2
3 to 239
Description
Read Block ID: 9972
Write Block ID: To be used by the processor in its next Write block.
Return code 0=OK, -1=error
Spare
Reference
User Manual
ProSoft Technology, Inc. Page 125 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.4.20 Pass Module Time to Processor Block (9973)
Block 9973: Pass Module Time to Processor Block
This block uses the time information from the module to set the processor time.
Block 9973: Request from Processor to Module
Offset
0
1 to 239
Description
Write Block ID: 9973
Spare
Offset
0
1
2
3
4
5
6
7
8
9 to 239
Block 9973: Response from Module to Processor
Description
Read Block ID: 9973
Write Block ID: To be used by the processor in its next Write block.
Year (0-9999)
Month (1-12)
Day (1-31)
Hour (0-23)
Minutes (0-59)
Seconds (0-59)
Milliseconds
Spare
Reference
User Manual
ProSoft Technology, Inc. Page 126 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.4.21 Reset Status Block (9997)
Block 9997: Reset Status Block
This block resets the module and port 1 status.
Block 9997: Request from Processor to Module
Offset
0
1
2
4 to 239
Description
Write Block ID: 9997
Reset Module status (0=no, else yes)
Reset Port 1 status (0=no, else yes)
Spare
Block 9997: Response from Module to Processor
Offset
0
1
2 to 239
Description
Read Block ID: 9997
Write Block ID: To be used by the processor in its next Write block.
Spare
Reference
User Manual
7.4.22 Warm-boot Control Block (9998)
Block 9998: Warm-boot Control Block
If the CompactLogix sends a block number 9998, the module performs a warm-boot operation. The module reconfigures the application port and reset the error and status counters.
Block 9998: Request from Processor to Module
Offset
0
1 to 239
Description
Write Block ID: 9998
Spare
ProSoft Technology, Inc. Page 127 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Reference
User Manual
7.4.23 Cold-boot Control Block (9999)
Block 9999: Cold-boot Control Block
If the CompactLogix processor sends a block number 9999, the firmware performs a cold-boot operation. The firmware reloads the configuration file from the processor to the module and resets all MBS memory, error and status data.
Block 9999: Request from Processor to Module
Offset
0
1 to 239
Description
Write Block ID: 9999
Spare
ProSoft Technology, Inc. Page 128 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Crossover cable
RJ-45 PIN
1 Rx+
2 Rx-
3 Tx+
6 Tx-
RJ-45 PIN
3 Tx+
6 Tx-
1 Rx+
2 Rx-
Reference
User Manual
7.5 Ethernet Port Connection
7.5.1 Ethernet Cable Specifications
The recommended cable is Category 5 or better. A Category 5 cable has four twisted pairs of wires, which are color-coded and cannot be swapped. The module uses only two of the four pairs.
The Ethernet port or ports on the module are Auto-Sensing. You can use either a standard Ethernet straight-through cable or a crossover cable when connecting the module to an Ethernet hub, a 10/100 Base-T Ethernet switch, or directly to a PC. The module detects the cable type and uses the appropriate pins to send and receive
Ethernet signals.
Some hubs have one input that can accept either a straight-through or crossover cable, depending on a switch position. In this case, you must ensure that the switch position and cable type agree.
Refer to Ethernet Cable Configuration (page 129) for a diagram of how to configure
Ethernet cable.
Ethernet Cable Configuration
Note: The standard connector view shown is color-coded for a straight-through cable.
Straight- through cable
RJ-45 PIN
1 Rx+
2 Rx-
3 Tx+
6 Tx-
RJ-45 PIN
1 Tx+
2 Tx-
3 Rx+
6 Rx-
ProSoft Technology, Inc. Page 129 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Reference
User Manual
Ethernet Performance
Ethernet performance in the MVI69L-MBS can be affected in the following way:
Accessing the web interface (refreshing the page, downloading files, and so on) may affect performance
Also, high Ethernet traffic may impact performance, so consider one of these options: o o
Use managed switches to reduce traffic coming to module port
Use CIPconnect for these applications and disconnect the module Ethernet port from the network
7.6 Modbus Application Port Connection
The module supports RS-232, RS-422, and RS-485 wiring to remote devices.
7.6.1 RS-232 Wiring
When the RS-232 interface is selected, the use of hardware handshaking (control and monitoring of modem signal lines) is user definable. If no hardware handshaking is used, here are the cable pin-outs to connect to the port.
ProSoft Technology, Inc. Page 130 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
RS-232: Modem Connection (Hardware Handshaking Required)
This type of connection is required between the module and a modem or other communication device.
Reference
User Manual
The "Use CTS Line" parameter for the port configuration should be set to 'Y' for most modem applications.
RS-232: Null Modem Connection (Hardware Handshaking)
This type of connection is used when the device connected to the module requires hardware handshaking (control and monitoring of modem signal lines).
ProSoft Technology, Inc. Page 131 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Reference
User Manual
RS-232: Null Modem Connection (No Hardware Handshaking)
This type of connection can be used to connect the module to a computer or field device communication port.
Note: For most null modem connections where hardware handshaking is not required, the Use CTS Line parameter should be set to N and no jumper is required between Pins 7 (RTS) and 8 (CTS) on the connector. If the port is configured with the Use CTS Line set to Y, then a jumper is required between the
RTS and the CTS lines on the port connection.
ProSoft Technology, Inc. Page 132 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
7.6.2 RS-422 Wiring
Reference
User Manual
The RS-422 interface requires a single four or five wire cable. The Common connection is optional, depending on the RS-422 network devices used. The cable required for this interface is shown below:
7.6.3 RS-485 Wiring
The RS-485 interface requires a single two or three wire cable. The Common connection is optional, depending on the RS-485 network devices used. The cable required for this interface is shown below:
Note: This type of connection is commonly called a RS-485 half-duplex, 2-wire connection. If you have RS-
485 4-wire, full-duplex devices, they can be connected to the gateway's serial ports by wiring together the
TxD+ and RxD+ from the two pins of the full-duplex device to Pin 1 on the gateway and wiring together the
TxD- and RxD- from the two pins of the full-duplex device to Pin 8 on the gateway. As an alternative, you could try setting the gateway to use the RS-422 interface and connect the full-duplex device according to the RS-422 wiring diagram. For additional assistance, please contact ProSoft Technical Support.
Note: Depending upon devices on the network, if there are problems in RS-485 communication that can be attributed to the signal echoes or reflections, then consider adding 120 OHM terminating resistors at both ends of the RS-485 line.
ProSoft Technology, Inc. Page 133 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
Reference
User Manual
RS-485 and RS-422 Tip
If communication in the RS-422 or RS-485 mode does not work at first, despite all attempts, try switching termination polarities. Some manufacturers interpret + and -, or A and B, polarities differently.
7.6.4 DB9 to RJ45 Adaptor (Cable 14)
ProSoft Technology, Inc. Page 134 of 135
MVI69L-MBS ♦ CompactLogix™ Platform
Modbus Serial Lite Communication Module
8 Support, Service & Warranty
Support, Service & Warranty
User Manual
8.1 Contacting Technical Support
ProSoft Technology, Inc. is committed to providing the most efficient and effective support possible. Before calling, please gather the following information to assist in expediting this process:
1 Product Version Number
2 System architecture
3 Network details
If the issue is hardware related, we will also need information regarding:
1 Module configuration and associated ladder files, if any
2 Module operation and any unusual behavior
3 Configuration/Debug status information
4 LED patterns
5 Details about the interfaced serial, Ethernet or Fieldbus devices
Note: For technical support calls within the United States, ProSoft’s 24/7 after-hours phone support is available for
urgent plant-down issues.
North America (Corporate Location)
Phone: +1.661.716.5100 [email protected]
Languages spoken: English, Spanish
REGIONAL TECH SUPPORT [email protected]
Latin America Regional Office
Phone: +52.222.264.1814 [email protected]
Languages spoken: Spanish, English
REGIONAL TECH SUPPORT [email protected]
Europe / Middle East / Africa Regional Office
Phone: +33.(0)5.34.36.87.20 [email protected]
Languages spoken: French, English
REGIONAL TECH SUPPORT [email protected]
Asia Pacific Regional Office
Phone: +60.3.2247.1898 [email protected]
Languages spoken: Bahasa, Chinese, English,
Japanese, Korean
REGIONAL TECH SUPPORT [email protected]
For additional ProSoft Technology contacts in your area, please visit: https://www.prosoft-technology.com/About-Us/Contact-Us .
8.2 Warranty Information
For complete details regarding ProSoft Technology’s TERMS & CONDITIONS OF SALE,
WARRANTY, SUPPORT, SERVICE AND RETURN MATERIAL AUTHORIZATION
INSTRUCTIONS, please see the documents at: www.prosoft-technology/legal
ProSoft Technology, Inc. Page 135 of 135
دانلود
تبلیغات