ProSoft Technology MVI69-DNP User Manual

MVI69-DNP
CompactLogix or MicroLogix Platform
DNP 3.0 Master/Slave Communication Module
11/3/2008
USER MANUAL
Please Read This Notice
Successful application of this module requires a reasonable working knowledge of the Ro ckwell Automation CompactLogix or MicroLogix hardware, the MVI69-DNP Module and the application in which the combination is to be used. For this reason, it is important that those responsible for implementation satisfy themselves that the combination will meet the needs of the application without exposing personnel or equipment to unsafe or inappropriate working conditions.
This manual is provided to assist the user. Every attempt has been made to ensure that the information provided is accurate and a true reflection of the product's installation requirements. In order to ensure a complete understanding of the operation of the product, the user should read all applicable Rockwell Automation documentation on the operation of the Rockwell Automation hardware.
Under no conditions will ProSoft Technology be responsible or liable for indirect or consequential damages resulting from the use or application of the product.
Reproduction of the contents of this manual, in whole or in part, without written permission from ProSoft Technology is prohibited.
Information in this manual is subject to change without notice and does not represent a commitment on the part of ProSoft Technology Improvements and/or changes in this manual or the product may be made at any time. These changes will be made periodically to correct technical inaccuracies or typograp hica l errors.
Battery Life Advisory
All modules in the MVI series use a rechargeable Lithium Vanadium Pentoxide battery to backup the 512K SRAM memory, real-time clock, and CMOS. The battery should last for the life of the module. The module must be powered for approximately twenty hours before it becomes fully charged. After it is fully charged, the battery provides backup power for the CMOS setup and configuration data, the real-time clock, and the 512K SRAM memory for approximately 21 days. Before you remove a module from its power source, ensure that the battery within the module is fully charged. A fully charged battery will hold the BIOS settings (after being removed from its power source) for a limited number of days. When the battery is fully discharged, the module will revert to the default BIOS settings.
Note: The battery is not user replaceable.
Your Feedback Please
We always want you to feel that you made the right decision to use our products. If you have suggestions, comments, compliments or complaints about the product, documentation or support, please write or call us.
ProSoft Technology 1675 Chester Avenue, Fourth Floor Bakersfield, CA 93301 +1 (661) 716-5100 +1 (661) 716-5101 (Fax) http://www.prosoft-technology.com
Copyright © ProSoft Technology, Inc. 2000 - 2008. All Rights Reserved. MVI69-DNP User Manual
11/3/2008 ProSoft Technology ®, ProLinx ®, inRAx ®, ProTalk® and RadioLinx ® are Registered Trademarks of ProSoft
Technology, Inc.
ProSoft® Product Documentation
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 provide d on the enclosed CD and are available at no charge from our web site: http://www.prosoft-technology.com Printed documentation is available for purchase. Contact ProSoft Technology for pricing and availability. Asia Pacific: +603.7724.2080 Europe, Middle East, Africa: +33.5.34.36.87.20 Latin America: +1.281.298.9109 North America: +1.661.716.5100
Contents MVI69-DNP ♦ CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
Contents
Please Read This Notice 2
Battery Life Advisory...........................................................................................................................2
Your Feedback Please........................................................................................................................2
ProSoft® Product Documentation.......................................................................................................3
Guide to the MVI69-DNP User Manual 7
1 Start Here 9
1.1 System Requirements...............................................................................................9
1.2 Package Contents...................................................................................................10
1.3 Setting Jumpers ......................................................................................................11
1.4 Install the Module in the Rack.................................................................................12
1.5 Connect your PC to the Processor..........................................................................15
1.6 Download the Sample Program to the Processor...................................................16
1.7 Connect your PC to the Module..............................................................................19
2 Configuring the MVI69-DNP Module 21
2.1 Configuration File....................................................................................................21
2.2 MVI69-DNP Communication Module Configuration................................................23
2.3 Slave List.................................................................................................................29
2.4 Command List.........................................................................................................29
2.5 Uploading and Downloading the Configuration File................................................34
3 Ladder Logic 41
3.1 Module Data Objects...............................................................................................41
3.2 Special Objects .......................................................................................................45
3.3 Adding the Module to an Existing CompactLogix Project.......................................47
3.4 Adding the Module to an Existing MicroLogix Project.............................................50
4 Diagnostics and Troubleshooting 53
4.1 Reading Status Data from the Module....................................................................53
4.2 LED Status Indicators..............................................................................................66
5 Reference 69
5.1 Product Specifications.............................................................................................69
5.2 Functional Overview................................................................................................72
5.3 Cable Connections..................................................................................................89
5.4 Error Status Table...................................................................................................95
5.5 Internal Indication Word........................................................................................103
5.6 DNP V3.00 Device Profile Document....................................................................104
ProSoft Technology, Inc. Page 5 of 129 November 3, 2008
Contents MVI69-DNP ♦ CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
5.7 DNP Subset Definition - Slave.............................................................................. 105
5.8 DNP Subset Definition - Master............................................................................ 112
6 Support, Service & Warranty 119
6.1 How to Contact Us: Technical Support................................................................. 119
6.2 Return Material Authorization (RMA) Policies and Conditions............................. 120
6.3 LIMITED WARRANTY.......................................................................................... 122
Index 127
Page 6 of 129 ProSoft Technology, Inc. November 3, 2008
Start Here MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
Guide to the MVI69-DNP User Manual
Function Section to Read Details
Introduction (Must Do)
Verify Communication, Diagnostic and Troubleshooting
Reference Product Specifications Functional Overview Glossary
Support, Service, and Warranty
Index
Start Here (page 9)
Verifying Communication (page 66)
Diagnostics and Troubleshooting (page 53)
Reference (page 69) Functional Overview
(page 72) Product
Specifications (page
69)
Support, Service and Warranty (page
119)
This Section introduces the customer to the module. Included are: package contents, system requirements, hardware installation, and basic configuration.
This section describes how to verify communications with the network. Diagnostic and Troubleshooting procedures.
These sections contain general references associated with this product, Specifications, and the Functional Overview.
This section contains Support, Service and Warranty information.
Index of chapters.
ProSoft Technology, Inc. Page 7 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Start Here DNP 3.0 Master/Slave Communication Module
Page 8 of 129 ProSoft Technology, Inc.
November 3, 2008
Start Here MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
1 Start Here
In This Chapter
System Requirements.............................................................................9
Package Contents.................................................................................10
Setting Jumpers ....................................................................................11
Install the Module in the Rack ...............................................................12
Connect your PC to the Processor........................................................15
Download the Sample Program to the Processor..................................16
Connect your PC to the Module ............................................................19
Installing the MVI69-DNP module requires a reasonable working knowledge of the Rockwell Automation hardware, the MVI69-DNP Module and the application in which they will be used.
Caution: It is important that those responsible for implementation can complete the
application without exposing personnel, or equipment, to unsafe or inappropriate working conditions. Safety, quality and experience are key factors in a successful installation.
1.1 System Requirements
The MVI69-DNP module requires the following minimum hardware and software components:
Rockwell Automation CompactLogix or MicroLogix processor, with
compatible power supply and one free slot in the rack, for the MVI69-DNP module. The module requires 800mA of available power.
Important: The MVI69-DNP module has a power supply distance rating of 2 (L43 and L45
installations on first 2 slots of 1769 bus).
Important: For 1769-L23x processors, please make note of the following limitations. 1769-L23-QBFC1B = 800mA at 5Vdc (1 MVI69-DNP will use all 800mA of available power. No
other modules can be used with an MVI69 module connected to this processor).
1769-L23E-QB1B = 1000mA at 5Vdc (1 MVI69-DNP will use 800mA of available power. One
other module can be used on this rack provided it consumes less than 200mA at 5Vdc.
1769-L23E-QBFC1B = 450mA at 5Vdc (no MVI69 module can be used with this processor) Rockwell Automation RSLogix 5000 (CompactLogix) or RSLogix 500
(MicroLogix) programming software
Rockwell Automation RSLinx communication software
ProSoft Technology, Inc. Page 9 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Start Here DNP 3.0 Master/Slave Communication Module
Pentium® II 450 MHz minimum. Pentium III 733 MHz (or better)
recommended
Supported operating systems:
o Microsoft Windows XP Professional with Service Pack 1 or 2 o Microsoft Windows 2000 Professional with Service Pack 1, 2, or 3 o Microsoft Windows Server 2003
128 Mbytes of RAM minimum, 256 Mbytes of RAM recommended 100 Mbytes of free hard disk space (or more based on application
requirements)
256-color VGA graphics adapter, 800 x 600 minimum resolution (True Color
1024 × 768 recommended)
CD-ROM drive HyperTerminal or other terminal emulator program capable of file transfers
using Ymodem protocol.
1.2 Package Contents
The following components are included with your MVI69-DNP module, and are all required for installation and configuration.
Important: Before beginning the installation, please verify that all of the following items are
present.
Qty. Part Name Part Number Part Description
1
1 Cable
3 Cable
2 Adapter 1454-9F
1
MVI69-DNP Module
ProSoft Solutions CD
MVI69-DNP DNP 3.0 Master/Slave Communication Module
Cable #15, RS232 Null Modem
Cable #14, RJ45 to DB9 Male Adapter cable
For RS232 Connection to the CFG Port
For DB9 Connection to Module's Port
Two Adapters, DB9 Female to Screw Terminal. For RS422 or RS485 Connections to Port 1 and 2 of the Module
Contains sample programs, utilities and documentation for the MVI69-DNP module.
If any of these components are missing, please contact ProSoft Technology Support for replacement parts.
Page 10 of 129 ProSoft Technology, Inc.
November 3, 2008
Start Here MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
1.3 Setting Jumpers
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.
The Setup Jumper acts as "write protection" for the module's flash memory. In "write protected" mode, the Setup pins are not connected, and the module's firmware cannot be overwritten. Do not jumper the Setup pins together unless you are directed to do so by ProSoft Technical Support.
ProSoft Technology, Inc. Page 11 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Start Here DNP 3.0 Master/Slave Communication Module
1.4 Install the Module in the Rack
This section describes how to install the module into a CompactLogix or MicroLogix rack
Before you attempt to install the module, make sure that the bus lever of the adjacent module is in the unlocked (fully right) position.
Warning: This module is not hot-swappable! Always remove power from the rack before
inserting or removing this module, or damage may result to the module, the processor, or other connected devices.
1 Align the module using the upper and lower tongue-and-groove slots with the
adjacent module and slide forward in the direction of the arrow.
2 Move the module back along the tongue-and-groove slots until the bus
connectors on the MVI69 module and the adjacent module line up with each other.
Page 12 of 129 ProSoft Technology, Inc.
November 3, 2008
Start Here MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
3 Push the module's bus lever back slightly to clear the positioning tab and
move it firmly to the left until it clicks. Ensure that it is locked firmly in place.
4 Close all DIN rail latches.
ProSoft Technology, Inc. Page 13 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Start Here DNP 3.0 Master/Slave Communication Module
5 Press the DIN rail mounting area of the controller against the DIN rail. The
latches will momentarily open and lock into place.
Page 14 of 129 ProSoft Technology, Inc.
November 3, 2008
Start Here MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
1.5 Connect your PC to the Processor
1 Connect the right-angle connector end of the cable to your controller at the
communications port.
2 Connect the straight connector end of the cable to the serial port on your
computer.
ProSoft Technology, Inc. Page 15 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Start Here DNP 3.0 Master/Slave Communication Module
1.6 Download the Sample Program to the Processor
Important: For most applications, the sample program will work without modification. Note: The key switch on the front of the CompactLogix processor must be in the REM position.
1 If you are not already online to the processor, open the Communications
menu, and then choose Download. RSLogix will establish communication with the processor.
2 When communication is established, RSLogix will open a confirmation dialog
box. Click the Download button to transfer the sample program to the processor.
3 RSLogix will compile the program and transfer it to the processor. This
process may take a few minutes.
4 When the download is complete, RSLogix will open another confirmation
dialog box. Click OK to switch the processor from Program mode to Run mode.
Note: If you receive an error message during these steps, refer to your RSLogix documentation to
interpret and correct the error.
Page 16 of 129 ProSoft Technology, Inc.
November 3, 2008
Start Here MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
1.6.1 Configuring RSLinx
If RSLogix is unable to establish communication with the processor, follow these steps:
1 Open RSLinx. 2 Open the Communications menu, and choose Configure Drivers.
This action opens the Configure Drivers dialog box.
Note: If the list of configured drivers is blank, you must first choose and configure a driver from the
Available Driver Types list. The recommended driver type to choose for serial communication with the processor is "RS-232 DF1 Devices".
ProSoft Technology, Inc. Page 17 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Start Here DNP 3.0 Master/Slave Communication Module
3 Click to select the driver, and then click Configure. This action opens the
Configure Allen-Bradley DF1 Communications Device dialog box.
4 Click the Auto-Configure button. RSLinx will attempt to configure your serial
port to work with the selected driver.
5 When you see the message "Auto Configuration Successful", click the OK
button to dismiss the dialog box.
Note: If the auto-configuration procedure fails, verify that the cables are connected correctly
between the processor and the serial port on your computer, and then try again. If you are still unable to auto-configure the port, refer to your RSLinx documentation for further troubleshooting steps.
Page 18 of 129 ProSoft Technology, Inc.
November 3, 2008
Start Here MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
1.7 Connect your PC to the Module
With the module securely mounted, connect your PC to the Configuration/Debug port using an RJ45-DB-9 Serial Adapter Cable and a Null Modem Cable.
1 Attach both cables as shown. 2 Insert the RJ45 cable connector into the Configuration/Debug port of the
module.
3 Attach the other end to the serial port on your PC or laptop.
ProSoft Technology, Inc. Page 19 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Start Here DNP 3.0 Master/Slave Communication Module
Page 20 of 129 ProSoft Technology, Inc.
November 3, 2008
Configuring the MVI69-DNP Module MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
2 Configuring the MVI69-DNP Module
In This Chapter
Configuration File ..................................................................................21
MVI69-DNP Communication Module Configuration ..............................23
Slave List...............................................................................................29
Command List .......................................................................................29
Uploading and Downloading the Configuration File...............................34
2.1 Configuration File
The MVI69-DNP module stores its configuration in a text file called DNP.CFG, located in the module's flash memory. When the module starts up, it reads the configuration file and uses the information to control how the DNP 3.0 Master/Slave protocol interacts with the module's application port(s).
The configuration file is arranged in Sections, with a heading in [ ] characters at the beginning of each section. Each Section contains a list of Parameters and Values, followed by an optional Comment that explains the parameter.
The following illustration shows an example of a Section, a Parameter, a Value, and a Comment.
The Parameter must be followed by a [:] (colon) character. The text following the [:] is a Value.
The module ignores "comment" text following the [#] character. Use comments to document your configuration settings.
You can get a sample configuration file for the module in the following places:
Copy (page 34) the DNP.CFG from the module's flash memory to your PC Copy the DNP.CFG from the ProSoft Solutions CD-ROM supplied with the
module
Download the DNP.CFG from the ProSoft Technology web site at
http://www.prosoft-technology.com
ProSoft Technology, Inc. Page 21 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Configuring the MVI69-DNP Module DNP 3.0 Master/Slave Communication Module
2.1.1 Editing the Configuration File
The DNP.CFG file is a plain ASCII text file. Use a text editor such as Notepad.exe (included with Microsoft Windows) to open and edit the file.
To open the configuration file in Notepad
1 Click the Start button, and then choose Programs 2 Expand the Programs menu, and then choose Accessories. 3 On the Accessories menu, choose Notepad.
4 In Notepad, open the File menu, and then choose Open
5 In the Open dialog box, select "All Files" in the Files of Type: dropdown list.
Tip: Sample configuration files are stored under the LadderLogic folder on the ProSoft Solutions
CD-ROM.
6 Navigate to the folder containing the configuration file, and then select the file
to edit.
7 Click Open to open the file. 8 When you have finished editing, save the file and close Notepad.
Important: Changes to the configuration file will not take effect until you download the file to the
module, and then reboot the module.
Page 22 of 129 ProSoft Technology, Inc.
November 3, 2008
Configuring the MVI69-DNP Module MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
2.2 MVI69-DNP Communication Module Configuration
[Section]/Item Value Range Description
[MODULE] General module configuration section Module Name: 0 to 80
characters
[Section]/Item Value Range Description
[DNP Slave] DNP Slave configuration information Internal Slave ID: 0 to 65534 This is the DNP address for the module. All messages
Baud Rate: Baud rate value Primary DNP Port Baud Rate: 300, 600, 1200, 2400,
RTS On: 0 to 65535
milliseconds
RTS Off: 0 to 65535
milliseconds
Min Response Delay: 0 to 65535
milliseconds
Modem: Yes or No This parameter defines if a dial-up modem is used on
Connect Timeout: 0 to 65535 Defines the number of milliseconds to wait for the CD
First Character Delay: 0 to 65535 Defines the number of milliseconds to wait before
Redial Delay Time: 0 to 32000 Defines the minimum number of milliseconds to wait
Redial Random Delay: 0 to 32000 Defines a random millisecond time range to be added
Idle Timeout: 0 to 65535 Defines the number of milliseconds the modem is
Phone Number: ASCII String
Data
Collision Avoidance: Yes or No This parameter defines if collision avoidance will be
CD Idle Time: 0 to 32000 Defines the minimum number of milliseconds to wait
CD Random Time: 0 to 32000 Defines the range of random time to be added to the
This parameter 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.
with this address from the master will be processed by the module.
4800, 9600, 19200, 384 (38400) , 576 (57600), 115 (115200)
This value represents the number of 1 ms increments to be inserted between asserting the RTS modem line and the actual transmission of the data.
This value represents the number of 1 ms increments to be inserted after the last character of data is transmitted before the RTS modem line is dropped.
Minimum time between receiving a request and transmitting a response. Allows master time to disable transmitter on an RS-485 network.
the secondary DNP slave port. A modem cannot be used if the port is configured as a master.
signal to be set high. The CD signal indicates a connection is made using a dial-up modem.
sending the first message after the connection is first made. This delay only applies to the first packet sent to the modem.
before a redial attempt is made by the slave.
to the redial delay time before the modem is accessed.
inactive before it will disconnect. This field contain a null-terminated, ASCII character
string used by the dial-up modem. The string must contain all characters required by the modem. An example string is ATDT1800222333. Maximum length is 34 bytes including the terminating 0.
utilized on the primary DNP slave port.
before transmitting a message after the CD signal is recognized as low.
CD Idle Time before a message will be transmitted from the slave.
ProSoft Technology, Inc. Page 23 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Configuring the MVI69-DNP Module DNP 3.0 Master/Slave Communication Module
[Section]/Item Value Range Description
CD Time Before Receive: 0 to 65535 Defines the number of milliseconds to wait before
receiving characters after the CD signal is recognized as high.
BI Class: 0 to 3 This parameter specifies the default class to be utilized
for all the binary input points in the DNP database that are not defined in the override list section.
AI Class: 0 to 3 This parameter specifies the default class to be utilized
for all the analog input points in the DNP database that are not defined in the override list section.
Float Class: 0 to 3 This parameter specifies the default class to be utilized
for all the floating-point input points in the DNP database that are not defined in the override list section.
AI Deadband: 0 to 32767 This parameter specifies the default deadband value
assigned to all points not defined in the override list for the analog input point type in the DNP database.
Float Deadband: 0 to maximum
float value
Select/Operate Arm Time: 1 to 65535
milliseconds
Write Time Interval: 0 to 1440
minutes
Data Link Confirm Mode: Coded Value
(N=Never, S=Sometimes, A=Always)
Data Link Confirm Tout: 1 to 65535
milliseconds
Data Link Max Retry: 0 to 255 retries Maximum number of retries at the Data Link level to
App Layer Confirm Tout: 1 to 65535
milliseconds
Unsolicited Response: Yes or No Set if the slave unit will send unsolicited response
Class 1 Unsol Resp Min: 1 to 255 events Minimum number of events in Class 1 required before
Class 2 Unsol Resp Min: 1 to 255 events Minimum number of events in Class 2 required before
Class 3 Unsol Resp Min: 1 to 255 events Minimum number of events in Class 3 required before
This parameter specifies the default deadband value assigned to all points not defined in the override list for the floating-point input point type in the DNP database.
Time period after select command received in which operate command will be performed. After the select command is received, the operate command will only be honored if it arrives within this period of time.
Time interval to set the need time IIN bit (0=never), which will cause the master to write the time. Stored in milliseconds in the module memory.
IED can request acknowledgement from master station when sending data. The codes are as follows: 0=Never, 1=Sometimes, 2=Always
Time period to wait for Master Data Link confirmation of last frame sent. This time is in milliseconds. This parameter is only used if the frame is sent with confirmation requested.
obtain a confirmation. If this value is set to 0, retries are disabled at the data link level of the protocol. This parameter is only used if the frame is sent with confirmation requested.
Event data contained in the last response may be sent again if not confirmed within the millisecond time period set. If application layer confirms are used with data link confirms, ensure that the application layer confirm timeout is set long enough.
messages. If set to No, the slave will not send unsolicited responses. If set to Yes, the slave will send unsolicited responses.
an unsolicited response will be generated.
an unsolicited response will be generated.
an unsolicited response will be generated.
Page 24 of 129 ProSoft Technology, Inc.
November 3, 2008
Configuring the MVI69-DNP Module MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
[Section]/Item Value Range Description
Unsol Resp Delay: 0 to 65535
milliseconds
Uresp Master Address: 0 to 65534 DNP destination address where unsolicited response
Uresp Retry Count: 0 to 255 retries Determines the number of unsolicited message retries
AI Events with time: Yes or No This parameter sets if the analog input events
Time Sync Before Events: Yes or No This parameter determines if events are to be
Initialize DNP Database: Y or N This parameter determines if the module will request
Use Trip/Close Single Point Y or N Used for backwards compatibility with older MVI69-
[Section]/Item Value Range Description
[DNP Slave Database] DNP Slave Database definition Binary Inputs: 0 to 7680
points
PLC Binary Inputs: 0 to 7680
points
Analog Inputs: 0 to 480 points Number of analog input points to configure in the DNP
PLC Analog Inputs: 0 to 480 points Number of analog input points configured above that
Float Inputs: 0 to 240 points Number of floating-point input points to configure in the
PLC Float Inputs: 0 to 240 points Number of floating-point input points configured above
Counters: 0 to 240 points Number of counter points to configure in the DNP
Maximum number of 1 millisecond intervals to wait after an event occurs before sending an unsolicited response message. If set to 0, only use minimum number of events.
messages are sent.
sent on primary DNP port before changing to secondary port. If the value is 0, port switching will be disabled.
generated by the module will include the date and time of the event. If the parameter is set to No, the default is set to no time data. If the parameter is set to Yes, the default object will include the time of the event.
generated by the module before the time synchronization from the master unit. If the parameter is set to No, no events will be generated until the module's time has been synchronized. If the parameter is set to Yes, events will always be generated.
data from the processor to initialize the DNP database output data areas. If this option is utilized, ladder logic is required to send the requested block from the processor to the module.
DNP modules, will cause Trip/Close operations to use a single point operation.
Number of digital input points to configure in the DNP slave device. Each point will be stored as a single bit in the module memory.
Number of digital input points configured above that are to be obtained from the CompactLogix processor. All other binary input points must come from the attached IED units.
slave device. Each point will occupy a one word area in the module memory.
are to be obtained from the CompactLogix processor. All other analog input points must come from the attached IED units.
DNP slave device. Each point will occupy a two-word area in the module memory.
that are to be obtained from the PLC.
slave device. Each point will occupy a two word area in the module memory. This number corresponds to the number of frozen counters. The application maps the counters to the frozen counters directly.
ProSoft Technology, Inc. Page 25 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Configuring the MVI69-DNP Module DNP 3.0 Master/Slave Communication Module
[Section]/Item Value Range Description
PLC Counters: 0 to 240 points Number of counter points configured above that are to
be obtained from the CompactLogix processor. All other counter points must come from the attached IED units.
Binary Outputs: 0 to 7680
points
PLC Binary Outputs: 0 to 7680
points
Analog Outputs: 0 to 480 points Number of analog output points to configure in the
PLC Analog Outputs: 0 to 480 points Number of analog output points configured above that
Float Outputs: 0 to 240 points Number of floating-point output points to configure in
PLC Float Outputs: 0 to 240 points Number of floating-point output points configured
[Section]/Item
[DNP Slave Binary Inputs] DNP database binary input override values # This area is to override the class assignment for binary input database points. Enter list of points between the # START and END labels. # # Point# Class START
END
[Section]/Item
[DNP Slave Analog Inputs] DNP database analog input override values START # This area is to override the class and deadband assignment for analog input database points. # Enter list of points between the START and END labels. # # Point# Class Deadband START
END
[Section]/Item
[DNP Slave Float Inputs] DNP database floating-point input override values # This area is to override the class and deadband assignment for float input database points. # Enter list of points between the START and END labels. # # Point# Class Deadband
Description
Description
Description
Number of digital output points to configure in the DNP slave device. Each point will be stored as a single bit in the module memory.
Number of digital output points configured above that are to be sent to the CompactLogix processor. All other binary output points will be sent to the attached IED units.
DNP slave device. Each point will occupy a one word area in the module memory.
are to be sent to the CompactLogix processor. All other analog output points will be sent to the attached IED units.
the DNP slave device. Each point will occupy a two­word area in the module memory.
above that are to be sent to the CompactLogix.
Page 26 of 129 ProSoft Technology, Inc.
November 3, 2008
Configuring the MVI69-DNP Module MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
[Section]/Item Description
START
END
[Section]/Item Value Range Description
[Secondary Port] Definitions for secondary port on module Type: M or S or blank This parameter defines the functionality of the
secondary port on the module. M = emulate a DNP master port S = back-up DNP slave port to the primary port. Any other value will disable the port.
Baud Rate: Baud rate
value
RTS On: 0 to 65535
milliseconds
RTS Off: 0 to 65535
milliseconds
Min Response Delay: 0 to 65535
milliseconds
Collision Avoidance: Yes or No This parameter defines if collision avoidance will be
CD Idle Time: 0 to 32000 Defines the minimum number of milliseconds to wait
CD Random Time: 0 to 32000 Defines the range of random time to be added to the
CD Time Before Receive: 0 to 65535 Defines the number of milliseconds to wait before
[Section]/Item Value Range Description
[DNP Master] Definitions for DNP Master port if utilized. Internal ID: 0 to 65534 This is the DNP address for the module. All messages
Initialize IED Database: Yes or No This parameter determines if the module will request
Event Messages to PLC: Yes or No This parameter determines if event messages received
Secondary DNP Port Baud Rate: 300, 600, 1200, 2400, 4800, 9600, 19200, 384 (38400) , 576 (57600), 115 (115200)
This value represents the number of 1 ms increments to be inserted between asserting the RTS modem line and the actual transmission of the data.
This value represents the number of 1 ms increments to be inserted after the last character of data is transmitted before the RTS modem line is dropped.
Minimum time between receiving a request and transmitting a response. Allows master time to disable transmitter on an RS-485 network.
utilized on the primary DNP slave port.
before transmitting a message after the CD signal is recognized as low.
CD Idle Time before a message will be transmitted from the slave.
receiving characters after the CD signal is recognized as high.
with this address from the master will be processed by the module.
data from the processor to initialize the IED database input data areas. If this option is utilized, ladder logic is required to send the requested block from the processor to the module.
on the master port will be sent to the processor. If this option is utilized, ladder logic must handle the 9903 blocks generated by the module.
ProSoft Technology, Inc. Page 27 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Configuring the MVI69-DNP Module DNP 3.0 Master/Slave Communication Module
[Section]/Item Value Range Description
[IED Database] Database definition for DNP master port if utilized Binary Inputs: 0 to 7680
points
Analog Inputs: 0 to 480 points Number of analog input points contained in the IED
Counters: 0 to 240 points Number of counter points contained in the IED
Binary Outputs: 0 to 7680
points
Analog Outputs: 0 to 480 points Number of analog output points contained in the IED
[Section]/Item
[DNP Master Slave List] Definition of the IED units to be interfaced with the
# This section stores information about each slave to be used by the master port. # There must be an entry in this table for each node to be used in the command list. # Two of the parameters in this list are coded values: # Conf Mode ==> 0=Never, 1=Sometimes and 2=Always (select 0). # Flags is bit coded as follows: # Bit 0 (decimal 1) ==> Enable the slave # Bit 1 (decimal 2) ==> Use Unsolicited messaging with this slave # Bit 2 (decimal 4) ==> Use delay measurement with this slave # Bit 3 (decimal 8) ==> Auto time synchronization enabled # # Node DL Conf Conf Conf App Rsp # Address Mode Timeout Retry Timeout Flags START
END
[Section]/Item
[DNP Master Commands] Definition of the commands to be issued to the IED
# This section contains the list of commands to process on the master port. # Node addresses present in the command list must have an entry in the # [DNP Slave List]. Commands with nodes not present in the list will not be # executed. # 1 2 3 4 5 6 7 8 9 10 #Flags/ Node Data Data Cmd Device Point DNP DB IED DB Poll #Enable Address Object Variation Func Address Count Address Address Interval START
END
Description
Description
Number of binary input points contained in the IED database to transfer to the CompactLogix processor and obtained from the attached IED units..
database to transfer to the CompactLogix processor and obtained from the attached IED units..
database to transfer to the CompactLogix processor and obtained from the attached IED units..
Number of binary output points contained in the IED database which are transferred from the CompactLogix processor and used by the attached IED units..
database which are transferred from the CompactLogix processor and used by the attached IED units..
DNP master port if utilized
units by the DNP master port.
Page 28 of 129 ProSoft Technology, Inc.
November 3, 2008
Configuring the MVI69-DNP Module MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
2.3 Slave List
The slave list defines the IED units and their specific communication parameters for a DNP master port. Up to 40 IED units can be defined in the module to be associated with the master port. The structure of each row in the list is defined in the following table.
Column Variable Name Data Range Description If Error
1 DNP Slave Address 0 to 65534 This is the slave address for the unit to
override the default values.
2 Data Link Confirm Mode Coded Value
(0 = Never, 1 = Sometimes,
2 = Always)
3 Data Link Confirm Tout 1 to 65535
milliseconds
4 Maximum Retries for Data
Link Confirm
5 Application Layer Response
Timeout
6 Slave Mode Coded Value (Bit
0 to 255 retries Maximum number of retries at the Data Link
1 to 65535 milliseconds
0 = Enable, Bit 1 = Unsol Msg., Bit 2 = Use DM, Bit 3 = Auto Time Sync)
This value specifies if data link frames sent to the remote device require a data link confirm. This value should always be set to zero for almost all applications.
This parameter specifies the time to wait for a data link confirm from the remote device before a retry is attempted.
level to obtain a confirmation. If this value is set to 0, retries are disabled at the data link level of the protocol. This parameter is only used if the frame is sent with confirmation requested.
Timeout period the master will wait for each response message fragment. If data link confirms are enabled, make sure the timeout period is set long enough to permit all data confirm retries.
This word contains bits that define the slave mode. The slave mode defines the functionality of the slave device and can be combined in any combination. The fields have the following definition: Enable: determines if this slave will be used. Unsol Msg.: causes an enabled unsolicited message to be sent to the slave when its RESTART IIN bit is set. This parameter is also required for unsolicited message reporting by the IED unit. Use DM: uses delay measurement. Auto Time Sync: time synchronization used when NEED TIME IIN bit set.
Ignore
0
300
3
5000
2.4 Command List
The command list stores the command list used by the DNP master port. This list only must be defined if the DNP master port is used. Up to 300 commands can be defined for the master port. The structure of each row in the list is shown in the following table.
Word Offset Definitions
0 Port/Flags 1 Slave Address 2 Object 3 Variation 4 Function
ProSoft Technology, Inc. Page 29 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Configuring the MVI69-DNP Module DNP 3.0 Master/Slave Communication Module
Word Offset Definitions
5 Address in Slave 6 Point Count 7 DNP DB Address 8 IED DB Address 9 Poll Interval
The definition of each parameter required for each command is provided in the following table.
Bits in the Port/Flags parameter are dependent on the data type. The following table defines the Port/Flags bits for binary input, analog input and counter data points.
Port/Flags Bits Description Decimal Equivalent
0 to 1 Communication port (0=Internal, 2=Port 2) 0 or 2 2 Enable/Disable Command (1=Enable, 0=Disable) 4 3 RBE Flag (0=Events from IED, 1=Events by module) 8 4 to 7 Not Used
For these data types the qualifier used in the data request is dependent on the Point Count and Address in Slave fields in the command as follows:
If Point Count < 0, then use Qualifier 06h (All points, packed & -Point Count = # of points to consider) If Address in Slave = 0 & Point Count > 0, then use Qualifier 00h or 01h (points 0 to Point Count -1) If Address in Slave > 0 & Point Count > 0, then use Qualifier 00h or 01h (Address in Slave to Address in Slave + Point Count - 1)
The following table defines the Port/Flags bits for binary output and analog output points.
Port/Flags Bits Description Decimal Equivalent
0 to 1 Communication port (0=Internal, 2=Port 2) 0 or 2 2 Enable/Disable Command (1=Enable, 0=Disable) 4 3 Poll Type (0=Poll, 1=Exception) 8 4 Data Source (0=DNP Database, 1=IED Database) 16 5 to 7 Not Used
For these data types the qualifier used in the data request is dependent on the Point Count and Address in Slave fields in the command as follows:
If Address in Slave = 0 & Point Count > 0, then use Qualifier 17h or 28h (Point Count specified starting at point 0) If Address in Slave > 0 & Point Count > 0, then use Qualifier 17h or28h (points from Address in Slave to Address in Slave + Point Count - 1) If Point Count <= 0, then ignore because this is illegal for outputs.
Digital input Digital input Events Digital Output Counter
0 Port/Flags Port/Flags Port/Flags Port/Flags 1 Slave Address Slave Address Slave Address Slave Address 2 1 2 12 20 3 0, 1 or 2 0, 1, 2 or 3 1* 0, 5 or 6 4 1* 1* 3, [4], 5 or 6 1, 7, 8, 9 or 10 5 Address in Slave Address in Slave Address in Slave Address in Slave
Page 30 of 129 ProSoft Technology, Inc.
November 3, 2008
Configuring the MVI69-DNP Module MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
Digital input Digital input Events Digital Output Counter
6 # of Points # of Points # of Points # of Points 7 DNP DB Address DNP DB Address DNP DB Address 8 IED DB Address IED DB Address IED DB Address 9 Poll Interval Poll Interval Poll Interval Poll Interval
Frozen Counter Analog Input
0 Port/Flags Port/Flags Port/Flags Port/Flags 1 Slave Address Slave Address Slave Address Slave Address 2 21 30 32 41 3 0, 9 or 10 0, 1, 2, 3 or 4 0, 1, 2, 3 or 4 2* 4 1* 1* 1* 3, [4], 5 or 6 5 Address in Slave Address in Slave Address in Slave Address in Slave 6 # of Points # of Points # of Points # of Points 7 DNP DB Address DNP DB Address DNP DB Address 8 IED DB Address IED DB Address IED DB Address 9 Poll Interval Poll Interval Poll Interval Poll Interval
Analog Input Events
Analog Output
Time and Date Class 0 Class 1 Class 2
0 Port/Flags Port/Flags Port/Flags Port/Flags 1 Slave Address Slave Address Slave Address Slave Address 2 50 60 60 60 3 1* 1 2 3 4 2* 5 6 1 1 1 1 7 8 9 Poll Interval Poll Interval Poll Interval Poll Interval
Class 3 Cls 1, 2 & 3 Cls 0, 1, 2 & 3 [Clear Restart Bit]
0 Port/Flags Port/Flags Port/Flags Port/Flags 1 Slave Address Slave Address Slave Address Slave Address 2 60 60 60 80 3 4 5 6 1 4 2 5 7 6 1 1 1 1 7 8 9 Poll Interval Poll Interval Poll Interval
ProSoft Technology, Inc. Page 31 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Configuring the MVI69-DNP Module DNP 3.0 Master/Slave Communication Module
Cold Restart Warm Restart Enable Unsol. Msg Disable Unsol. Msg
0 Port/Flags Port/Flags Port/Flags Port/Flags 1 Slave Address Slave Address Slave Address Slave Address 2 0 0 0 0 3 4 13 14 20 21 5 6 1 1 1 1 7 8 9
* Value assumed
[ ] Automatically implemented Word Offset Definitions 0 Port/Flags 1 Slave Address 2 Object 3 Variation 4 Function 5 Address in Slave 6 Point Count 7 DNP DB Address 8 IED DB Address 9 Poll Interval
Commands are issued based on the following criteria:
Commands Issued Each Scan Enabled
Poll Interval = 0 BO & AO have Exception Bit = 0
Commands Issued at Poll Time Enabled
Poll Interval > 0 BO and AO have Exception Bit = 0
Commands Issued on Data Change (BO and AO)
Commands Issued by PLC
Enabled BO and AO have Exception Bit = 1
Page 32 of 129 ProSoft Technology, Inc.
November 3, 2008
Configuring the MVI69-DNP Module MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
2.4.1 Slave Address
This parameter specifies the IED unit address on the DNP network to consider with the command. The parameter has a range of 0 to 65535. The value of 65535 is reserved for broadcast messages. Verify that the slave configuration information is set up in the module for each slave defined in the command list.
2.4.2 Object
This parameter specifies the DNP object type in the command. Valid objects for the module are 1, 2, 12, 20, 21, 30, 32, 41, 50, 60 and 80. A value of 0 is permitted in this field for a set of special commands.
2.4.3 Variation
This parameter is specific to the object type selected.
2.4.4 Function
This parameter specifies the DNP function for the command list object. The object type determines the value of the functions permitted. For example, the only function permitted for binary input data points is the read function (Function Code 1). For counter and output objects, more functions are available.
2.4.5 Address In Slave
This value must be greater-than or equal to zero. If it is set to a value less-than zero, the command will be ignored. This parameter specifies the starting point address to consider in the IED unit.
2.4.6 Point Count
This parameter defines the number of points in the IED unit. Refer to the discussion above for the interpretation of this parameter's values for the different object types.
2.4.7 DNP DB Address
This parameter defines the starting location in the DNP database to be used with the command. If the parameter has a value of -1, the DNP database is not used with the point.
2.4.8 IED DB Address
This parameter defines the starting location in the IED database to be used with the command. If the parameter has a value of -1, the IED database is not used with the point.
ProSoft Technology, Inc. Page 33 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Configuring the MVI69-DNP Module DNP 3.0 Master/Slave Communication Module
2.4.9 Poll Interval
This parameter specifies the minimum frequency at which the module should execute the command. The value is entered in units of seconds. For example, to execute a command every 10 seconds, enter a value of 10 in the field. A value of 0 for the parameter implies that the command should be executed every scan of the list.
2.5 Uploading and Downloading the Configuration File
ProSoft modules are shipped with a pre-loaded configuration file. In order to edit this file, you must transfer the file from the module to your PC. After editing, you must transfer the file back to the module.
This section describes these procedures.
Important: The illustrations of configuration/debug menus in this section are intended as a general
guide, and may not exactly match the configuration/debug menus in your own module. For specific information about the configuration/debug menus in your module, refer to The Configuration/Debug Menu (page 53).
2.5.1 Transferring the Configuration File to Your PC
1 Connect your PC to the Configuration/Debug port of the module using a
terminal program such as HyperTerminal. Press [?] to display the main menu.
Page 34 of 129 ProSoft Technology, Inc.
November 3, 2008
Configuring the MVI69-DNP Module MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
2 Press [>] key (Send Module Configuration). The message "Press Y to
confirm configuration send!" is displayed at the bottom of the screen.
3 Press [Y]. The screen now indicates that the module is ready to send. 4 From the Transfer menu in HyperTerminal, select Receive File. This action
opens the Receive File dialog box.
5 Use the Browse button to choose a folder on your computer to save the file,
and then click Receive.
Note: ProSoft Technology suggests that you download the configuration file pre-loaded on
your module. However, configuration files are also available on the ProSoft CD as well as the ProSoft Technology web site at http://www.prosoft-technology.com.
ProSoft Technology, Inc. Page 35 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Configuring the MVI69-DNP Module DNP 3.0 Master/Slave Communication Module
When the configuration file has been transferred to your PC, the dialog box will indicate that the transfer is complete.
6 You can now open and edit the file in a text editor such as Notepad. When
you have finished editing the file, save it and close Notepad.
Important: You must name this file DNP.CFG before you transfer it to the module. The module will
not recognize configuration files with any other name or extension.
2.5.2 Transferring the Configuration File to the Module
Perform the following steps to transfer a configuration file from your PC to the module.
1 Connect your PC to the Configuration/Debug port of the module using a
terminal program such as HyperTerminal. Press [?] to display the main menu.
Page 36 of 129 ProSoft Technology, Inc.
November 3, 2008
Configuring the MVI69-DNP Module MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
2 Press [<] (Receive Module Configuration). The message "Press Y key to
confirm configuration receive!" is displayed at the bottom of the screen.
3 Press [Y]. The screen now indicates that the PC is ready to send.
ProSoft Technology, Inc. Page 37 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Configuring the MVI69-DNP Module DNP 3.0 Master/Slave Communication Module
4 From the Transfer menu in HyperTerminal, select Send File.
The Send File dialog appears.
Page 38 of 129 ProSoft Technology, Inc.
November 3, 2008
Configuring the MVI69-DNP Module MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
5 Use the Browse button to locate the configuration file your computer.
Note: This procedure assumes that you are uploading a newly edited configuration file from your
PC to the module. However, configuration files are also available on the ProSoft CD as well as the ProSoft Technology web site.
6 Select Ymodem as the protocol. 7 Click the Send button. This action opens the Ymodem File Send dialog box.
ProSoft Technology, Inc. Page 39 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Configuring the MVI69-DNP Module DNP 3.0 Master/Slave Communication Module
When the upload is complete, the screen indicates that the module has reloaded program values and displays information about the module.
8 Your module now contains the new configuration. Press [?] to see the
module's main menu.
Page 40 of 129 ProSoft Technology, Inc.
November 3, 2008
Ladder Logic MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
3 Ladder Logic
In This Chapter
Module Data Objects.............................................................................41
Special Objects .....................................................................................45
Adding the Module to an Existing CompactLogix Project......................47
Adding the Module to an Existing MicroLogix Project............................50
Ladder logic is required for application of the MVI69-DNP module. Tasks that must be handled by the ladder logic are module data transfer, special block handling and status data receipt. Additionally, a power-up handler may be needed to handle the initialization of the module's data and to clear any processor fault conditions.
The sample ladder logic, on the ProSoft Solutions CD-ROM, is extensively commented, to provide information on the purpose and function of each rung. For most applications, the sample ladder will work without modification.
3.1 Module Data Objects
All data related to the MVI69-DNP is stored in two user defined data types. One contains the status data and the other contains the DNP and IED datasets. Two structures were used for ease of use. Any time an array's size is altered in the RSLogix 5000 software, all the data in the object is set to zero. Because the array sizes may need to be adjusted for the data types in an application, this data is placed in a separate object.
An instance of each data type is required before the module can be used. This is accomplished by declaring variables of the data types in the Controller Tags Edit Tags dialog box. Each object is discussed in the following topics:
3.1.1 DNPModuleDef Object
The DNPModuleDef object contains all the MVI69-DNP module status data. The structure of the object is displayed in the following example:
Tag Name Data Type Description
GenStat DNPSlvStat General status information ErrList INT[60] List of last 60 slave errors BP DNPBackplane Data to handle backplane logic CmdLstErr DNPCmdLstErr ComErrTble DNPComErrTble Readclock DNPtime_n_date WriteClock DNPtime_n_date
ProSoft Technology, Inc. Page 41 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Ladder Logic DNP 3.0 Master/Slave Communication Module
Tag Name Data Type Description
cmd1 DNPCROB cmd2 DNPCROB cmd3 DNPCROB cmd4 DNPCROB
This object contains objects that define the status related to the module. Each of these object types is discussed in the following topics of the document. The ErrList member of the object stores the list of last 60 errors generated by the module. This data is passed to the processor from the module the read block
100. Ladder logic transfers this information from the processor into the ErrList array.
3.1.2 DNPSlvStat Object
The DNPSlvStat object stores the status data passed from the module to the processor in the read blocks 112 to 114. This block of data contains information that can be used to determine the "health" of the module and the tasks running. The structure of the object is shown in the following example:
Tag Name Data Type Description
Cur_Port Decimal Current DNP Slave port Last_Err Decima l Last DNP slave error code Msg_Me Decimal Total message frames for slave Msg_Sent Decimal T otal message frames sent Msg_Rec Decimal Total message frames received Err_Sync Decimal Total number of synchronization errors Err_Overrun Decimal Total number of over runs errors Err_Length Decimal Total number of length errors Err_CRC Decimal Total number of CRC errors Err_Overflow Decimal Total number of overflow errors Err_Seq Decima l Total number of sequence errors Err_Address Decimal Total multi-frame request fragment errors BI_Events Decimal Total number of BI events BI_Buffer Decimal Total number of BI events in buffer AI_Events Decimal Total number of AI events AI_Buffer Decimal Total number of AI events in buffer Err_Func Decimal Total number of bad function errors Err_Obj Decimal Total number of object unknown errors Err_Range Decimal Total number of range errors Err_MOverflow Decimal Total number of app msg overflow errors Err_Frame Decimal Total number of multi-frame errors Blk_Total Decimal Total number of blocks transferred Blk_Good Decimal Total number of blocks transferred successfully Blk_Err Decimal Total number of blocks in error Blk_RErr Decimal Total number of read block errors
Page 42 of 129 ProSoft Technology, Inc.
November 3, 2008
Ladder Logic MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
Tag Name Data Type Description
Blk_WErr Decimal Total number of write block errors Blk_NErr Decimal Total number of block number errors Blk_ECntr Decimal Number of sequential block errors Blk_EFlag Decimal Block error flag Cfg_Type Decima l 0=Single Slave, 1-Dual-Slave, 2=Slave/Master Product Decimal Product name Rev Decimal Revision Op_Sys Decimal Operating system revision Run Decimal Run number Slave_Count Decimal Number of slaves configured Cmd_Count Decimal Number of commands configured Mem_Blk Decimal Number of memory blocks allocated Mem_Frame Decimal Number of frame blocks allocated Mem_DLRec Decimal Number of receive DL blocks allocated Mem_DLTx Decimal Number of transmit DL blocks allocated Mem_AppRec Decimal Number of receive app blocks allocated Mem_AppTx Decimal Number of transmit app blocks allocated Mem_DevErr Decimal Number of device mem alloc errors Mem_PhyErr Decimal Number of physical layer mem alloc errors Mem_DLRErr Decimal Number of data-link layer receive mem alloc errors Mem_DLTErr Decimal Number of data-link layer transmit mem alloc errors Mem_AppRErr Decimal Number of app layer receive mem alloc errors Mem_AppTErr Decimal Number of app layer transmit mem alloc errors Mstr_Sync Decimal Number of master port synchronization error s Mstr_Length Decimal Number of master port length errors Mstr_CRC Decimal Number of master port CRC errors Scan_Count Decimal Program scan counter Mem_Free Decimal Free memory for module P1_TX_State Decimal State of Port 1 transmit state machine FloatEvents Decimal Count of floating-point events DoubleEvents Decimal Count of double floating-point events EventQueue Decimal
EvtQueueOF Decimal Event message queue overflow flag (0=no, 1=yes)
Total number of events in message queue for processor
Ladder logic is required to transfer the data sent from the module to the processor into this data object. If the ladder logic is present and the module is operating, this object can be viewed in the Controller Tags Monitor window to observer the current status of the module.
ProSoft Technology, Inc. Page 43 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Ladder Logic DNP 3.0 Master/Slave Communication Module
3.1.3 DNPBackplane Object
The DNPBackplane object stores the variables required for backplane data transfer between the module and the processor. The structure of the object is displayed in the following example:
Tag Name Data Type Description
LastRead INT Index of last re ad block LastWrite INT Index of last write block BlockIndex INT Computed block offset for data table
3.1.4 DNPData Object
The DNPData object stores all the data for an MVI69-DNP module. This includes the data to interface with the DNP slave port (DNP data set) and the DNP master port (IED data set). Contained within the object is an array for each data type that can exist for each of the two data sets. The array sizes are set to match the configuration set for the module. If multiple MVI69-DNP modules are used within a rack, a copy of this structure may have to be made to permit each module to have its own database sizes. Ladder logic is required to transfer the data in this structure between the module and the processor. Each data type has its own set of unique block identification codes to distinguish the data contained in the read or write block.
The structure of the object is shown in the following example:
Tag Name Data Type Description
DNP_BI INT[480] Number of DNP BI data words DNP_BO INT[ 480] Number of DNP BO data words DNP_Cntr DINT[240] Number of DNP counter double-words DNP_AI INT[480] Number of DNP AI data words DNP_FLTI REAL[240] DNP_AO INT[ 480] Number of DNP AO data words DNP_FLTO REAL[240] IED_BI INT[480] Number of IED BI data words IED_BO INT[480] Number of IED BO data words IED_Cntr DINT[240] Number of IED counter double-wods IED_AI INT[480] Number of IED AI data words IED_AO INT[480] Number of IED AO data words
Page 44 of 129 ProSoft Technology, Inc.
November 3, 2008
Ladder Logic MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
3.2 Special Objects
These objects utilize some of the advanced features the module provides. If your application does not require the object, then you need not declare an instance of the object. Each of the objects and associated function are discussed in the following topics.
3.2.1 DNPCROB Object
The DNPCROB object is used in conjunction with the command control block
9901. This block sends a pulse output command to a single-point relay or a trip/close relay. All the parameters required for each command to be used in the block are contained in the object. Up to six of these objects can be contained in a single block 9901 command. The structure of the object is shown in the following example:
Tag Name Data Type Description
Port_Flag INT This field is ignored in the current implementation Slave_ID INT
Object INT This should always be 12 Variation INT This should always be 1 Function INT
Address INT
Control_Code INT This determines the CROB operation Pulse_Count INT This determines the number of pulses (0-255) Pulse_On INT T his determines the pulse on time Pulse_Off INT This determines the pulse off time
This is the DNP slave address to send the command to
This should be 3, 5 or 6 depending on the write method
This is the binary output starting point to operate in the slave
3.2.2 DNPEventMsg Object
The DNPEventMsg object stores event messages received on the DNP master port and passed to the processor. The structure of this object is shown in the following example:
Tag Name Data Type Description
DevIndex INT Logical slave device index in module IEDPoint INT Logical p oint address in IED database DNPPoint INT Logical p oint address in DNP database SlaveAddress INT Remote slave address that generated event PointNum INT Point address in remote device Object INT DNP object number for point Variation INT DNP variation for event LowTime INT Least-significant word of 48-bit DNP time HighTime DINT Most-significant double-word of 48-bit DNP time Value DINT Value for event
This information is passed to the processor from the module in a special read block with an identification code of 9903. Each block can send up to 20 event messages. Ladder logic must handle the receipt of this special data block and to place the data received into controller tags.
ProSoft Technology, Inc. Page 45 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Ladder Logic DNP 3.0 Master/Slave Communication Module
3.2.3 DNPSlave_Err Object
The DNPSlave_Err object stores the slave status information returned from the module after a 9949-block request from the ladder logic. An array of this object should be defined to hold the status data for each slave used by the module. The structure of the object is displayed in the following example:
Tag Name Data Type Description
Device_Index INT Index in the sla ve array for the master port Slave_ID INT Slave address for device Err_CRC INT Number of CRC errors Err_Overflow INT Number of overflow errors Err_Seq INT Number of sequence errors Err_DLConf INT Number of data-link confirm retry errors Err_DLCFail INT Number of data-link confirm failures Err_AppResp INT Number of application response errors
3.2.4 DNP_BI_Event Object
The DNP_BI_Event object stores the information for a single binary input event to be sent from the processor to the module in a command block 9958. The structure shown contains all the parameters required for a binary input event.
Tag Name Data Type Description
EventCount INT Event Count SeqCounter INT Sequence Counter BinInptDataPt INT DNP Binary Input Data Point MonDayState INT Month/Day/State HourMin INT Hour/Minute SecMilsec INT Second Millisecond Year INT Year Event2 INT[5] Event #2 Event3 INT[5] Event #3 Event4 INT[5] Event #4 Event5 INT[5] Event #5 Event6 INT[5] Event #6 Event7 INT[5] Event #7 Event8 INT[5] Event #8 Event9 INT[5] Event #9 Event10 INT[5] Event #10 Event11 INT[5] Event #11
3.2.5 DNP_AI_Event Object
The DNP_AI_Event object stores the information for a single analog input event to be sent from the processor to the module in a command block 9959. The structure shown contains all the parameters required for an analog input event.
Tag Name Data Type Description
EventCount INT Event Count SeqCounter INT Sequence Counter AIDataPt INT DNP Analog Input Data Point
Page 46 of 129 ProSoft Technology, Inc.
November 3, 2008
Ladder Logic MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
Tag Name Data Type Description
AIvalue INT DNP Analog Input Value MonDay INT Month/Day HourMin INT Hour/Minute SecMilsec INT Second Millisecond Year INT Year Event2 INT[6] Event #2 Event3 INT[6] Event #3 Event4 INT[6] Event #4 Event5 INT[6] Event #5 Event6 INT[6] Event #6 Event7 INT[6] Event #7 Event8 INT[6] Event #8 Event9 INT[6] Event #9
3.3 Adding the Module to an Existing CompactLogix Project
Important: The following steps describe how to install and configure the MVI69-DNP module with
RSLogix 5000 version 15 or older. If you are using RSLogix 5000 version 16, please refer to Sample Add-On Instruction Import Procedure.
Important: The MVI69-DNP module has a power supply distance rating of 2 (L43 and L45
installations on first 2 slots of 1769 bus)
If you are installing and configuring the module with a CompactLogix processor, follow these steps. If you are using a MicroLogix processor, refer to the next section.
1 Add the MVI69-DNP module to the project. Right-click the mouse button on
the I/O Configuration option in the Controller Organization window to display a pop-up menu. Select the New Module option from the I/O Configuration menu.
ProSoft Technology, Inc. Page 47 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Ladder Logic DNP 3.0 Master/Slave Communication Module
This action opens the following dialog box:
2 Select the 1769-Module (Generic 1769 Module) from the list and click OK.
3 Enter the Name, Description and Slot options for your application, using the
values in the illustration above. You must select the Comm Format as Data ­INT in the dialog box, otherwise the module will not communicate over the
backplane of the CompactLogix rack.
Page 48 of 129 ProSoft Technology, Inc.
November 3, 2008
Ladder Logic MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
Click OK to continue.
4 Select the Request Packet Interval value for scanning the I/O on the module.
This value represents the minimum frequency the module will handle scheduled events. This value should not be set to less than 1 millisecond. Values between 1 and 10 milliseconds should work with most applications.
5 Save the module. Click OK to dismiss the dialog box. The Controller
Organization window now displays the module's presence. The following illustration shows the Controller Organization window:
6 Copy the Controller Tags from the sample program. 7 Copy the User Defined Data Types from the sample program. 8 Copy the Ladder Rungs from the sample program. 9 Save and Download the new application to the controller and place the
processor in run mode.
ProSoft Technology, Inc. Page 49 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Ladder Logic DNP 3.0 Master/Slave Communication Module
3.4 Adding the Module to an Existing MicroLogix Project
If you are installing and configuring the module with a MicroLogix processor, follow these steps. If you are using a CompactLogix processor, refer to the previous section.
This chapter describes how to install and configure the module to work with your application. The configuration process consists of the following steps.
1 Use RSLogix to identify the module to the processor and add the module to a
project.
Note: The RSLogix software must be in "offline" mode to add the module to a project.
2 Modify the example ladder logic to meet the needs of your application, and
copy the ladder logic to the processor. Example ladder logic files are provided on the CD-ROM.
Note: If you are installing this module in an existing application, you can copy the necessary
elements from the example ladder logic into your application.
The rest of this chapter describes these steps in more detail. The first step in setting up the processor ladder file is to define the I/O type
module to the system. Start RSLogix 500, and follow these steps: 1 In RSLogix, open your existing application, or start a new application,
depending on your requirements.
2 Double-click the I/O Configuration icon located in the Controller folder in the
project tree. This action opens the I/O Configuration dialog box.
3 On the I/O Configuration dialog box, select "Other - Requires I/O Card Type
ID" at the bottom of the list in the right pane, and then double-click to open the Module dialog box.
Page 50 of 129 ProSoft Technology, Inc.
November 3, 2008
Ladder Logic MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
4 Enter the values shown in the following illustration to define the module
correctly for the MicroLogix processor, and then click OK to save your configuration.
The input words and output words parameter will depend on the Block Transfer Size parameter you specify in the configuration file. Use the values from the following table.
Block Transfer Size Input Words Output Words
60 62 61 120 122 121 240 242 241
5 Click Next to continue. 6 After completing the module setup, the I/O configuration dialog box will
display the module's presence.
The last step is to add the ladder logic. If you are using the example ladder logic, adjust the ladder to fit your application. Refer to the example Ladder Logic section in this manual.
Download the new application to the controller and place the processor in run mode. If you encounter errors, refer to Diagnostics and Troubleshooting (page
53) for information on how to connect to the module's Config/Debug port to use its troubleshooting features.
ProSoft Technology, Inc. Page 51 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Ladder Logic DNP 3.0 Master/Slave Communication Module
Page 52 of 129 ProSoft Technology, Inc.
November 3, 2008
Diagnostics and Troubleshooting MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
4 Diagnostics and Troubleshooting
In This Chapter
Reading Status Data from the Module ..................................................53
LED Status Indicators............................................................................66
The module provides information on diagnostics and troubleshooting in the following forms:
Status data values are transferred from the module to the processor. Data contained in the module can be viewed through the
Configuration/Debug port attached to a terminal emulator.
LED status indicators on the front of the module provide information on the
module's status.
4.1 Reading Status Data from the Module
The MVI69-DNP module returns a Status Data block that can be used to determine the module's operating status. This data is located in the module's database at a user set location. For a complete listing of the status data object, refer to the Reference chapter. The Configuration/Debug port provides the following functionality:
Full view of the module's configuration data View of the module's status data Complete display of the module's internal database (registers 0 to 3999) Version Information Control over the module (warm boot, cold boot, transfer configuration) Facility to upload and download the module's configuration file
4.1.1 The Configuration/Debug Menu
The Configuration and Debug menu for this module is arranged as a tree structure, with the Main Menu at the top of the tree, and one or more sub-menus for each menu command. The first menu you see when you connect to the module is the Main menu.
Because this is a text-based menu system, you enter commands by typing the command letter from your computer keyboard in the terminal application (for example, HyperTerminal). The module does not respond to mouse movements or clicks. The command executes as soon as you press the command letter — you do not need to press [Enter]. When you type a command letter, a new screen will be displayed in your terminal application.
ProSoft Technology, Inc. Page 53 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Diagnostics and Troubleshooting DNP 3.0 Master/Slave Communication Module
Navigation
All of the sub-menus for this module contain commands to redisplay the menu or return to the previous menu. You can always return from a sub-menu to the next higher menu by pressing [M] on your keyboard.
The organization of the menu structure is represented in simplified form in the following illustration:
The remainder of this section shows you the menus available for this module, and briefly discusses the commands available to you.
Keystrokes
The keyboard commands on these menus are almost always non-case sensitive. You can enter most commands in lower case or capital letters.
The menus use a few special characters ([?], [-], [+], [@]) that must be entered exactly as shown. Some of these characters will require you to use the [Shift], [Ctrl] or [Alt] keys to enter them correctly. For example, on US English keyboards, enter the [?] command as [Shift][/].
Also, take care to distinguish capital letter [I] from lower case letter [l] (L) and number [1]; likewise for capital letter [O] and number [0]. Although these characters look nearly the same on the screen, they perform different actions on the module.
4.1.2 Required Hardware
You can connect directly from your computer's serial port to the serial port on the module to view configuration information, perform maintenance, and send (upload) or receive (download) configuration files.
ProSoft Technology recommends the following minimum hardware to connect your computer to the module:
80486 based processor (Pentium preferred) 1 megabyte of memory At least one UART hardware-based serial communications port available.
USB-based virtual UART systems (USB to serial port adapters) often do not function reliably, especially during binary file transfers, such as when uploading/downloading configuration files or module firmware upgrades.
A null modem serial cable.
Page 54 of 129 ProSoft Technology, Inc.
November 3, 2008
Diagnostics and Troubleshooting MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
4.1.3 Required Software
In order to send and receive data over the serial port (COM port) on your computer to the module, you must use a communication program (terminal emulator).
A simple communication program called HyperTerminal is pre-installed with recent versions of Microsoft Windows operating systems. If you are connecting from a machine running DOS, you must obtain and install a compatible communication program. The following table lists communication programs that have been tested by ProSoft Technology.
DOS ProComm, as well as several other terminal emulation programs Windows 3.1 Terminal Windows 95/98 HyperTerminal Windows NT/2000/XP HyperTerminal
The module uses the Ymodem file transfer protocol to send (upload) and receive (download) configuration files from your module. If you use a communication program that is not on the list above, please be sure that it supports Ymodem file transfers.
4.1.4 Using the Configuration/Debug Port
To connect to the module's Configuration/Debug port:
1 Connect your computer to the module's port using a null modem cable. 2 Start the communication program on your computer and configure the
communication parameters with the following settings:
Baud Rate 57,600 Parity None Data Bits 8 Stop Bits 1 Software Handshaking None
3 Open the connection. When you are connected, press the [?] key on your
keyboard. If the system is set up properly, you will see a menu with the module name followed by a list of letters and the commands associated with
them. If there is no response from the module, follow these steps: 1 Verify that the null modem cable is connected properly between your
computer's serial port and the module. A regular serial cable will not work. 2 Verify that RSLinx is not controlling the COM port. Refer to Disabling the
RSLinx Driver for the Com Port on the PC (page 90). 3 Verify that your communication software is using the correct settings for baud
rate, parity and handshaking. 4 On computers with more than one serial port, verify that your communication
program is connected to the same port that is connected to the module. If you are still not able to establish a connection, you can contact ProSoft
Technology Technical Support for further assistance.
ProSoft Technology, Inc. Page 55 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Diagnostics and Troubleshooting DNP 3.0 Master/Slave Communication Module
4.1.5 Main Menu
When you first connect to the module from your computer, your terminal screen will be blank. To activate the main menu, press the [?] key on your computer's keyboard. If the module is connected properly, the following menu will appear on your terminal screen:
Caution: Some of the commands available to you from this menu are designed for advanced
debugging and system testing only, and can cause the module to stop communicating with the processor or with other devices, resulting in potential data loss or other failures. Only use these commands if you are specifically directed to do so by ProSoft Technology Technical Support staff. Some of these command keys are not listed on the menu, but are active nevertheless. Please be careful when pressing keys so that you do not accidentally execute an unwanted command.
Setting the Debug Level
You can increase or decrease the level of debug messages sent from the module to the Debug Menu. The following table shows the type of debugging information for each key [0] to [9], [A] to [F]
Key None DNP Statistics
0 X 1 X 2 X 3 X X 4 5 X 6 X 7 X X 8 X 9 X X A X X B X X X C X
Data Link Layer Messages
DPA Level Messages
Page 56 of 129 ProSoft Technology, Inc.
November 3, 2008
Diagnostics and Troubleshooting MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
Key None DNP Statistics
D X X E X X F X X X
Data Link Layer Messages
DPA Level Messages
Viewing the Error List
Press [L] to display the last 60 errors for the DNP slave port. Refer to the error list section of the user manual to interpret each error recorded by the module.
If there are no errors present for the module, the message "NO ERRORS FOR SYSTEM!" is displayed.
Viewing DNP Set Up & Pointers
Press [P] to display the memory allocation and the database setup parameters.
Viewing Operating Parameters
Press [O] to view the DNP Protocol setup information (Operating Parameters) for the module.
Warm Booting the Module
Caution: Some of the commands available to you from this menu are designed for advanced
debugging and system testing only, and can cause the module to stop communicating with the processor or with other devices, resulting in potential data loss or other failures. Only use these commands if you are specifically directed to do so by ProSoft Technology Technical Support staff. Some of these command keys are not listed on the menu, but are active nevertheless. Please be careful when pressing keys so that you do not accidentally execute an unwanted command.
Press [R] from the Main Menu to warm boot (restart) the module. This command will cause the program to exit and reload, refreshing configuration parameters that must be set on program initialization. Only use this command if you must force the module to re-boot.
Viewing Comm Stats
Press [S] to view the communication status for the DNP port.
Clearing the Error List
Press [W] to clear the error list. Use this command after viewing the error list (page 57) to delete the current list of errors and start a new list.
Viewing COM States
Press [V] to view the current state of the DNP application port and the port configuration information.
ProSoft Technology, Inc. Page 57 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Diagnostics and Troubleshooting DNP 3.0 Master/Slave Communication Module
Viewing Master Port Slave Setup
Press [T] to view configuration information for the Master Port Slave.
Viewing Version Information
Press [G] to view Version information for the module. Use this command to view the current version of the software for the module, as
well as other important values. You may be asked to provide this information when calling for technical support on the product.
Values at the bottom of the display are important in determining module operation. The Program Scan Counter value is incremented each time a module's program cycle is complete.
Tip: Repeat this command at one-second intervals to determine the frequency of program
execution.
Opening the Class Assignment Menu
Press [Y] to view the class and deadband override values for the binary, analog, float and double input DNP database.
Opening the DNP Database View Menu
Press [U] to open the DNP Database View Menu. This menu allows you to view all data associated with the DNP Server driver. For more information about the commands on this menu, refer to DNP Database View Menu (page 61).
Receiving the Configuration File
Press [<] (Shift Comma) to download (receive) the current configuration file from the module. For more information on receiving and sending configuration files, please see Uploading and Downloading the Configuration File (page 34).
Sending the Configuration File
Press [>] (Shift Period) to upload (send) an updated configuration file to the module. For more information on receiving and sending configuration files, please see Uploading and Downloading the Configuration File (page 34).
Viewing Block Transfer Statistics
Press [N] from the Main Menu to view the Block Transfer Statistics screen. Use this command to display the configuration and statistics of the backplane
data transfer operations between the module and the processor. The information on this screen can help determine if there are communication problems between the processor and the module.
Tip: Repeat this command at one-second intervals to determine the number of blocks transferred
each second.
Page 58 of 129 ProSoft Technology, Inc.
November 3, 2008
Diagnostics and Troubleshooting MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
Opening the Command List Menu
Press [X] to open the Command List menu. Use this command to view the configured command list for the module.
Opening the Command Error List Menu
Press [Z] to open the Command Error List. This list consists of multiple pages of command list error/status data. Press [?] to view a list of commands available on this menu.
4.1.6 The Class Assignment Menu
This menu allows you to view the class and deadband override values for the binary, analog, float and double input DNP database. Press [?] to display the commands available on this menu.
The following illustration shows the output for the Analog data set (menu key [1])
ProSoft Technology, Inc. Page 59 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Diagnostics and Troubleshooting DNP 3.0 Master/Slave Communication Module
Viewing Binary Inputs
Press [0] to view the override values for Binary Input Data.
Viewing Analog Inputs
Press [1] to view the override values for Analog Input Data.
Viewing Float Inputs
Press [2] to view the override values for Float Input Data.
Viewing Double Inputs
Press [3] to view the override values for Double Input Data.
Redisplaying the Current Page
Press [S] to display the current page of data.
Viewing the Previous Page of Data
Press [P] to display the previous page of data.
Viewing the Next Page of Data
Press [N] to display the next page of data.
Returning to the Main Menu
Press [M] to return to the Main Menu.
Page 60 of 129 ProSoft Technology, Inc.
November 3, 2008
Diagnostics and Troubleshooting MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
4.1.7 DNP Database View Menu
Use this menu command to view the current contents of the selected database. Press [?] to view a list of commands available on this menu.
Viewing Data Type Databases
Press [D] from the DNP menu, then hold down the [Shift] key and press the / key.
Use the number keys 1 to 6 to select the display of the data type you wish to view. For example, if the '1' key is pressed, the following is displayed:
ProSoft Technology, Inc. Page 61 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Diagnostics and Troubleshooting DNP 3.0 Master/Slave Communication Module
Viewing Register Pages
To view sets of register pages, use the keys described below:
Command Description [0] [1] [2]
Display registers 0 to 99 Display registers 1000 to 1099 Display registers 2000 to 2099
And so on. The total number of register pages available to view depends on your module's configuration.
Displaying the Current Page of Registers Again
This screen displays the current page of 100 registers in the database.
Moving Back Through 5 Pages of Registers
Press [-] from the Database View menu to skip back to the previous 500 registers of data.
Viewing the Previous 100 Registers of Data
Press [P] from the Database View menu to display the previous 100 registers of data.
Skipping 500 Registers of Data
Hold down [Shift] and press [=] to skip forward to the next 500 registers of data.
Viewing the Next 100 Registers of Data
Press [N] from the Database View menu to select and display the next 100 registers of data.
Viewing Data in Decimal Format
Press [D] to display the data on the current page in decimal format.
Viewing Data in Hexadecimal Format
Press [H] to display the data on the current page in hexadecimal format.
Page 62 of 129 ProSoft Technology, Inc.
November 3, 2008
Diagnostics and Troubleshooting MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
Viewing Data in Floating Point Format
Press [F] from the Database View menu. Use this command to display the data on the current page in floating point format. The program assumes that the values are aligned on even register boundaries. If floating-point values are not aligned as such, they are not displayed properly.
Viewing Data in ASCII (Text) Format
Press [A] to display the data on the current page in ASCII format. This is useful for regions of the database that contain ASCII data.
Viewing Data in Double Word Decimal Format
Press [L] to display the data on the current page in Double Word Decimal format. This is useful for regions of the database that contain Double Word Decimal data.
Viewing Data in Double Word Decimal Format
Press [X] to display the data on the current page in Double Word Hexadecimal format. This is useful for regions of the database that contain Double Word Hexadecimal data.
Viewing DNP Binary Inputs
Press [1] to view a list of DNP Binary Inputs.
Viewing DNP Binary Outputs
Press [2] to view a list of DNP Binary Outputs.
Viewing DNP Counters
Press [3] to view a list of DNP Counters.
Viewing DNP Analog Inputs
Press [4] to view a list of DNP Analog Inputs.
Viewing DNP Analog Outputs
Press [5] to view a list of DNP Analog Outputs.
Viewing DNP Frozen Counters
Press [6] to view a list of DNP Frozen Counters.
Viewing DNP Float Inputs
Press [7] to view a list of DNP Float Inputs.
Viewing DNP Float Outputs
Press [9] to view a list of DNP Float Outputs.
ProSoft Technology, Inc. Page 63 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Diagnostics and Troubleshooting DNP 3.0 Master/Slave Communication Module
Returning to the Main Menu
Press [M] to return to the Main Menu.
4.1.8 Master Command List Menu
Use this menu to view the command list for the module. Press [?] to view a list of commands available on this menu.
Redisplaying the Current Page
Press [S] to display the current page of data.
Viewing the Previous 50 Commands
Press [-] to view the previous 50 commands.
Viewing the Previous Page of Commands
Press [P] to display the previous page of commands.
Viewing the Next 50 Commands
Press [+] to view the next 50 commands from the master command list.
Viewing the Next Page of Commands
Press [N] to display the next page of commands.
Returning to the Main Menu
Press [M] to return to the Main Menu.
Page 64 of 129 ProSoft Technology, Inc.
November 3, 2008
Diagnostics and Troubleshooting MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
4.1.9 Master Command Error List Menu
Use this menu to view the command error list for the module. Press [?] to view a list of commands available on this menu.
Redisplaying the Current Page
Press [S] to display the current page of data.
Viewing the Previous 20 Commands
Press [-] to display data for the previous 20 commands.
Viewing the Previous Page of Commands
Press [P] to display the previous page of commands.
Viewing the Next 20 Commands
Press [+] to display data for the next 20 commands.
Viewing the Next Page of Commands
Press [N] to display the next page of commands.
Returning to the Main Menu
Press [M] to return to the Main Menu.
ProSoft Technology, Inc. Page 65 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Diagnostics and Troubleshooting DNP 3.0 Master/Slave Communication Module
4.2 LED Status Indicators
The LEDs indicate the module's operating status as follows:
Module Color Status Indication
CFG Green
BP Amber
OK Red/
Green
On
Off No data is being transferred on the Configuration/Debug port. On Data is being sent/received on this port P1 Green Off Waiting for data on this port On Data is being sent/received on this port P2 Green Off Waiting for data on this port Off The MVI69-DNP is working normally. APP Amber On
On
Off
Off
Green The module is operating normally. Red
Off The battery voltage is OK and functioning. BAT Red On
Data is being transferred between the module and a remote terminal using the Configuration/Debug port.
The MVI69-DNP module program has recognized a communication error on one of its DNP ports.
The LED is on when the module is performing a write operation on the backplane.
The LED is off when the module is performing a read operation on the backplane. Under normal operation, the LED should blink rapidly on and off.
The card is not receiving any power and is not securely plugged into the rack.
The program has detected an error or is being configured. If the LED remains red for over 10 seconds, the program has probably halted. Remove the card from the rack and re-insert the card to restart the module's program.
The battery voltage is low or battery is not present. Allow battery to charge by keeping module plugged into rack for 24 hours. If BAT LED still does not go off, contact ProSoft Technology, as this is not a user serviceable item.
If a configuration error is found for the client, the client configuration error word will have a value other than zero. The configuration error word bits have the following definitions:
Bit Description Value
0 0x0001 1 0x0002 2 0x0004 3 0x0008 4 Invalid retry count parameter 0x0010 5 The float flag parameter is not valid. 0x0020 6 The float start parameter is not valid. 0x0040 7 The float offset parameter is not valid. 0x0080 8 0x0100 9 0x0200 10 0x0400
Page 66 of 129 ProSoft Technology, Inc.
November 3, 2008
Diagnostics and Troubleshooting MVI69-DNP CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
Bit Description Value
11 0x0800 12 0x1000 13 0x2000 14 0x4000 15 0x8000
Correct any invalid data in the configuration for proper module operation. When the configuration contains a valid parameter set, all the bits in the configuration word will be clear. This does not indicate that the configuration is valid for the user application. Make sure each parameter is set correctly for the specific application.
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 support to arrange for repairs.
4.2.1 Clearing a Fault Condition
Typically, if the OK LED on the front of the module turns red for more than ten seconds, a hardware problem has been detected in the module, or the program has exited.
To clear the condition, follow these steps:
1 Turn off power to the rack 2 Remove the card from the rack 3 Verify that all jumpers are set correctly 4 If the module requires a Compact Flash card, verify that the card is installed
correctly
5 Re-insert the card in the rack and turn the power back on 6 Verify the configuration data being transferred to the module from the
CompactLogix or MicroLogix processor. 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 Support.
ProSoft Technology, Inc. Page 67 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Diagnostics and Troubleshooting DNP 3.0 Master/Slave Communication Module
4.2.2 Troubleshooting
Use the following troubleshooting steps if you encounter problems when the module is powered up. If these steps do not resolve your problem, please contact ProSoft Technology Technical Support.
Processor Errors
Problem Description Steps to take
Processor Fault
Processor I/O LED flashes
Module Errors
Problem Description Steps to take
BP ACT LED remains off or blinks slowly
OK LED remains red
Verify that the module is plugged into the slot that has been configured for the module.
Verify that the slot in the rack configuration has been set up correctly in the ladder logic.
This indicates a problem with backplane communications. Verify that all modules in the rack are configured in the ladder logic.
Module has a power supply distance rating of 2 on Compact Logix. The module must be within 2 slots of the power supply on Compact Logix, or that the MicroLogix backplane can supply the 800ma required for the modul e.
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 mode.  The backplane driver is loaded in the module.  The module is configured for read and write block data transfer.  The ladder logic handles all read and write block situations.  The module is configured in the processor.
The program has halted or a critical error has occurred. Connect to the Configuration/Debug port to see if the module is running. If the program has halted, turn off power to the rack, remove the card from the rack and re­insert the card in the rack, and then restore power to the rack.
Page 68 of 129 ProSoft Technology, Inc.
November 3, 2008
Reference MVI69-DNP ♦ CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
5 Reference
In This Chapter
Product Specifications...........................................................................69
Functional Overview..............................................................................72
Cable Connections................................................................................89
Error Status Table .................................................................................95
Internal Indication Word.......................................................................103
DNP V3.00 Device Profile Document..................................................104
DNP Subset Definition - Slave.............................................................105
DNP Subset Definition - Master...........................................................112
5.1 Product Specifications
The MVI69 DNP 3.0 module is a single slot, backplane compatible DNP 3.0 interface solution for the CompactLogix platform. This module provides highly configurable support of both DNP 3.0 Master and Slave implementations (level 2 minimum), allowing the many SCADA and field devices supporting the DNP protocol to be integrated into the powerful CompactLogix platform.
The module supports DNP Subset Level 2 features and some of the Level 3 features allowing the many SCADA and field devices supporting the DNP protocol to be integrated into the CompactLogix platform. The module acts as an input/output module between the DNP network and the CompactLogix processor. The data transfer from the CompactLogix processor is asynchronous from the actions on the DNP network. Databases are user defined and stored in the module to hold the data required by the protocol.
5.1.1 General Specifications
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 ladder file included. Configuration data obtained from configuration text file downloaded to
module. Sample configuration file included. Supports all CompactLogix processors: L20/L23/L30/L31/L32/L35, L43 and
L45 (L43 and L45 supported with RSLogix 5000 v16.03 or later) Also supports MicroLogix 1500 LRP
ProSoft Technology, Inc. Page 69 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Reference DNP 3.0 Master/Slave Communication Module
5.1.2 Hardware Specifications
Specification Description
Dimensions Standard 1769 Single-slot module Current Load 800 mA max@ 5 VDC
Power supply distance rating of 2 (L43 and L45
installations on first 2 slots of 1769 bus) Operating Temp. 0 to 60°C (32 to 140°F) Storage Temp. -40 to 85°C (-40 to 185°F) Relative Humidity 5% to 95% (non-condensing) LED Indicators Battery and Module Status
Application Status
Serial Port Activity
CFG Port Activity CFG Port (CFG) RJ45 (DB-9F with supplied cable)
RS-232 only
No hardware handshaking App Ports (P1,P2) (Serial modules) RS-232, RS-485 or RS-422 (jumper selectable)
RJ45 (DB-9F with supplied cable)
RS-232 handshaking configurable
500V Optical isolation from backplane Shipped with Unit RJ45 to DB-9M cables for e ach port
6-foot RS-232 configuration Cable
5.1.3 Functional Specifications
The MVI69-DNP module supports the DNP 3.0 protocol with a minimum of Level 2 functionality. DNP protocol Subset Definitions for the Master and the Slave drivers are available in the module's User Manual.
The module has two DNP protocol ports that can be user configured to operate in a Master/Slave or in a Slave/Slave redundant port configuration.
User defined internal register space is accessible to the protocol driver and to the CompactLogix processor memory.
Redundant Slave Port Operation
When configured in the Slave/Slave port configuration, the module's slave ports operate in a primary and secondary fashion. In this mode, a single host polls the module via redundant physical layer connections. Several methods are supported to automatically switch between the primary and secondary slave ports.
Page 70 of 129 ProSoft Technology, Inc.
November 3, 2008
Reference MVI69-DNP ♦ CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
DNP 3.0 Slave Protocol Specifications
The DNP Slave port(s) accepts DNP commands to control and monitor data stored in the module's DNP Slave databases. If a DNP Master port is also configured, a portion of these slave databases can be derived from or can control IED devices connected to the DNP master port.
Report-by-Exception data is logged to the module's database Supports unsolicited messaging Each DNP point type is user configurable by point Class assignments are completely user-definable on a Type and point basis
(BI, AI, FI point types)
The analog inputs are class and deadband configurable on a point basis for
all formats (integer, float)
Supports clock synchronization from a master or from the processor Support for four octet-strings are supported (object type 110) in the slave
driver to return version and other module information
Up to 400 events are stored for Analog Inputs (AI and FI) and 400 events for
Binary Inputs
In addition to the module generated events, AI and BI events can be
generated in the processor and transferred to the module (useful with external timestamping hardware)
Configurable event buffer transmission threshold based on count and/or time
since last event transmission
Collision avoidance algorithm per DNP organization for redundant port
switching (redundant slave mode)
Special modem AT command string and timing support for dialing out on
redundant port (redundant slave mode)
DNP 3.0 Master Protocol Specifications
The DNP 3.0 Master port can be configured as a virtual DNP Master device that actively issues user-defined DNP commands to nodes on the network.
The Master port supports 300 user defined commands, each one containing
its own set of data link and application layer characteristics
Master port logically supports up to 40 slave devices Individual command configuration includes conditional or continuous polling
and Poll Delay Time
Slave status and Command status available for transfer to the processor Event data received from the slave devices updates the module database
(Date and Time stamping is not stored or used by module)
Special command handling for Digital Output CROB under processor control
for pulse output control
Supports Report-by-Exception and Unsolicited Responses on a Time Interval
basis or on a user determined Event Count basis. Analog and Binary input points are supported
ProSoft Technology, Inc. Page 71 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Reference DNP 3.0 Master/Slave Communication Module
5.2 Functional Overview
This section provides an overview of how the MVI69-DNP module transfers data using the DNP protocol. You should understand the important concepts in this chapter before you begin installing and configuring the module.
5.2.1 General Concepts
The following discussion explains several concepts that are important for understanding the operation of the MVI69-DNP module.
Module Power Up
On power up the module begins performing the following logical functions: 1 Initialize hardware components.
o Initialize CompactLogix or MicroLogix backplane driver. o Test and Clear all RAM. o Initialize the serial communication ports. o Initialize the TCP/IP stack and Ethernet interface.
2 Read module configuration from DNP.CFG file on Compact Flash disk or
Flash RAM (depending on hardware configuration).
3 Initialize the Module Register Space. 4 Enable Client and/or Server driver on selected ports, as configured.
When this initialization procedure is complete, the module will begin communicating with other nodes on the network, depending on the configuration.
Main Logic Loop
Upon completing the power up configuration process, the module enters an infinite loop that performs the following functions:
Page 72 of 129 ProSoft Technology, Inc.
November 3, 2008
Reference MVI69-DNP ♦ CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
Backplane Data Transfer
The MVI69-DNP module communicates directly over the CompactLogix or MicroLogix 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 defined by the user for the module and the communication load on the module. Typical updates are in the range of 2 to 10 milliseconds.
The data is paged between the processor and the module using input and output image blocks.
This bi-directional transference of data is accomplished by the module filling in data in the module's input image to send to the processor. Data in the input image is placed in the Controller Tags in the processor by the ladder logic. The input image for the module may be set to 62 words.
The processor inserts data to the module's output image to transfer to the module. The module's program extracts the data and places it in the module's internal database. The output image for the module may be set to 61 words.
The following illustration shows the data transfer method used to move data between the CompactLogix processor, the MVI69-DNP module and the DNP network.
All data transferred between the module and the processor over the backplane is through the input and output images. Ladder logic must be written in the CompactLogix processor to interface the block data with user data files. All data used by the module is stored in its internal database. The following illustration shows the layout of the database:
ProSoft Technology, Inc. Page 73 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Reference DNP 3.0 Master/Slave Communication Module
Data Area Blocks
DNP DATA
LAST VALUE DATA
IED DATA
FLOAT INPUTS PLC DATA 80 to 87 DOUBLE INPUTS PLC DATA 88 to 95 FLOAT OUTPUTS PLC DATA 96 to 103 DOUBLE OUTPUTS PLC DATA 104 to 111 FROZEN COUNTER DATA BINARY INPUT EVENTS ANALOG INPUT EVENTS FLOAT INPUT EVENTS DOUBLE INPUT EVENTS BINARY INPUTS ANALOG INPUTS FLOAT INPUTS DOUBLE INPUTS DNP BIN OUTPUTS DNP ANAL OUTPUTS IED BIN OUTPUTS IED ANAL OUTPUTS BINARY INPUTS 40 to 47 BINARY OUTPUTS 48 to 55 COUNTER DATA 56 to 63 ANALOG INPUTS 64 to 71 ANALOG OUTPUTS 72 to 79 BINARY INPUT RBE FLAGS ANALOG INPUT
PLC DATA 0 to 7 BINARY INPUTS IED DATA PLC DATA 8 to 15 BINARY OUTPUTS IED DATA PLC DATA 16 to 23 COUNTER DATA IED DATA PLC DATA 24 to 31 ANALOG INPUTS IED DATA PLC DATA 32 to 39 ANALOG OUTPUTS IED DATA
Data contained in this database is paged through the input and output images by coordination of the CompactLogix ladder logic and the MVI69-DNP module's program. Up to 64 words of data can be transferred from the module to the processor at a time. Up to 64 words of data can be transferred from the processor to the module. The read and write block identification codes in each data block determine the function to be performed or the content of the data block. The module uses the following block numbers:
Page 74 of 129 ProSoft Technology, Inc.
November 3, 2008
Reference MVI69-DNP ♦ CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
Block Number function/Description
-1 to -2 Dummy blocks: Used when too few blocks are to be transferred. 0 to 39, 80 to 111 DNP Data bloc ks 40 to 79 IED Data blocks 112 to 114 Error/Status and Error List Blocks 9901 CROB Control Block for Digital Outputs 9902 Command Control Block (Add command to Command List Queue) 9903 Event Messages from Master port 9949 Slave IED unit errors on master port 9950 Command List Error data 9958 PLC Binary Input Event data 9959 PLC Analog Input Event Data 9970 Set PLC time using module's DNP time 9971 Set module's time using PLC time 9998 Warm Boot Request from PLC (Block contains no data) 9999 Cold Boot Request from PLC (Block contains no data)
Blocks 0 to 54 transfer data. Block 112 transfers error/status data. Blocks 9901 to 9999 are used for command control of the module. Each block group is described in the following topics.
Note: Block identification codes -1 and -2 are dummy blocks. The PLC should ignore any blocks
with these numbers as data does not represent any valid information in the module. The DNP application will ignore any write blocks with these numbers.
5.2.2 Normal Data Transfer
Normal data transfer includes the paging of the user data found in the module's internal database in registers 0 to 4999 and the status data. These data are transferred through read (input image) and write (output image) blocks. The structure and function of each block is discussed in the following topics.
The block transfer numbers are fixed in the program for each DNP data type for this application. Block numbers are assigned by the application based on the number of points of each type. The application only allocates the number of blocks required to hold the data point count specified. For example, if 200 digital input points are required for the application, only block 0 is allocated and if 150 counter points are required, blocks 16 to 20 are defined. These are separate data areas for the DNP data used by the PLC and the data used by attached IED units that are not part of the DNP database in the module. Each block transfers 60 word-size registers.
DATA TYPE START BLOCK # MAX BLOCK # MAX # OF POINTS
Digital Input 0 7 7680 Digital Output 8 15 7680 Counters 16 23 240 Analog Input 24 31 480 Analog Output 32 39 480
ProSoft Technology, Inc. Page 75 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Reference DNP 3.0 Master/Slave Communication Module
DATA TYPE START BLOCK # MAX BLOCK # MAX # OF POINTS
IED Digital Input 40 47 7680 IED Digital Output 48 55 7680 IED Counters 56 63 240 IED Analog Input 64 71 480 IED Analog Output 72 79 480 DNP Float Input 80 87 240 DNP Float Output 88 95 240
These blocks are mapped into a pre-defined memory area in the module. Pointers into the memory area are computed by the application for each data type. The application will only copy the portion of the block that contains valid data.
Read Block
These blocks of data transfer information from the module to the CompactLogix processor. The structure of the input image used to transfer this data is shown below:
Offset Description
0 Read Block ID 1 Write Block ID 2 to 61 Read Data
The Read Block ID is an index value used to determine the location of where the data will be placed in the CompactLogix processor controller tag array of module read data. Each transfer can move up to 60 words (block offsets 0 to 61) of data.
The Write Block ID associated with the block requests data from the CompactLogix processor. Under normal, program operation, the module sequentially sends read blocks and requests write blocks. For example, if three read and two write blocks are used with the application, the sequence will be as follows:
R1W1
R2W2 R3W1 R1W2 R2W1 R3W2 R1W1
Page 76 of 129 ProSoft Technology, Inc.
November 3, 2008
Reference MVI69-DNP ♦ CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
This sequence will continue until interrupted by other write block numbers sent by the controller or by a command request from a node on the DNP network or operator control through the module's Configuration/Debug port.
The following example shows a typical backplane communication application.
Write Block
These blocks of data transfer information from the CompactLogix or MicroLogix processor to the module. The structure of the output image used to transfer this data is shown below:
Offset Description
0 Write Block ID 1 to 60 Write Data 61 Spare
The Write Block ID is an index value used to determine the location in the module's database where the data will be placed as defined in the table presented in the previous section. Each transfer can move up to 60 words (block offsets 1 to 60) of data.
5.2.3 Command Control Blocks
Command control blocks are special blocks used to control the module or request special data from the module. The current version of the software supports several command control blocks, each of which are discussed in the following topics.
Block 9901 - Event Command
This block issues one or more command control requests to slaves attached to the DNP master port for object 12 data. When the module receives a block 9901 identification code, it places the included commands into the command queue.
Block Format for Write
Word Offset in Block Data Field(s) Description
0 Block ID
1 Command Count
2 to 11 Command #1
12 to 21 Command #2
22 to 31 Command #3
32 to 41 Command #4
42 to 51 Command #5
52 to 61 Command #6
This field contains the block identification code of 9901 for the block.
This field defines the number of CROB blocks to generate. The valid range for the field is 1 to 6.
Data for the command relay block (CROB) to be generated.
Data for the command relay block (CROB) to be generated.
Data for the command relay block (CROB) to be generated.
Data for the command relay block (CROB) to be generated.
Data for the command relay block (CROB) to be generated.
Data for the command relay block (CROB) to be generated.
ProSoft Technology, Inc. Page 77 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Reference DNP 3.0 Master/Slave Communication Module
The following fields are used for each 10-word record in the command list:
Word Offset Definitions Description
0 Port/Flags
1 Slave Address
2 Object Object type always 12 3 Variation Variation always 1 4 Function
5 Address in Slave Point in IED to consider with the CROB. 6 Control Code
7 Pulse Count
8 Pulse On Time
9 Pulse Off Time
This field is currently ignored as all 9901 blocks are sent immediately out the master port.
This is the IED node address for the slave to consider on the network.
Function codes 3, 5 and 6 supported. Function code 4 is automatically sent after a successful function 3.
This is a standard DNP protocol control code byte (see description below).
This parameter specifies the number of pulses to generate for pulse output control. This parameter has a range of 0 to 255 as the value is a byte parameter in the CROB. If a value of zero is entered, the operation will not execute.
This parameter specifies the on-time interval for pulse control.
This parameter specifies the off-time interval for pulse control.
The control code in the command is a bit coded byte value with the following definition:
Bits Definitions Description
0 to 3 Code
4 Queue
5 Clear
6 to 7 Trip/Close
Block Format for Read
Word Offset in Block Data Field(s) Description
0 Block ID
1
Next write block ID number
These bits determine the control operation to be performed by the command: 0=No operation, 1=Pulse on, 2=Pulse off, 3=Latch on and 4=Latch off. All other values are undefined in the DNP protocol.
0=Normal (execute once), 1=Requeue (place at end of queue after operation).
This parameter clears the queue. If the value is set to zero, the queue is not affected. If the value is set to 1, the queue will be cleared.
These two bits select the trip or close relay. For close relay control, set the bits to 01. For trip relay control, set the bits to 10. A value of 00 for the bits is used for single point control of normal digital output points.
This field contains the block identification code of 9901 for the block.
This field contains the ID number of the next write block.
Page 78 of 129 ProSoft Technology, Inc.
November 3, 2008
Reference MVI69-DNP ♦ CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
Block 9902 - Command Control Block
The 9902 identification code is used by the PLC to send a list of commands to be placed in the command queue. Commands placed in the queue with this method need not have their enable bit set. The format of the block is as follows:
Block Format for Write
Word Offset in Block Data Field(s) Description
0 Block ID
1 Command count
2 to 61
Command Numbers to enable
This field contains the value of 9902 identifying the enable command to the module.
This field contains the number of commands to enable in the command list. Valid values for this field are 1 to 60.
These 60 words of data contain the command numbers in the command list to enable. The commands in the list will be placed in the command queue for immediate processing by the module. The first command in the list has an index of 0.
There is no response to this block by the module. The module will place the selected commands in the command queue. If the command references a IED unit that is not in the slave list, the command will not be placed in the command queue. Normal processing of the command list will continue after the commands specified in this block are processed.
Block Format for Read
Word Offset in Block Data Field(s) Description
0 Block ID
1 2
Number of commands added
This field contains the value of 9902 identifying the enable command to the module.
This is the number of commands added to the command queue in the last 9902 block.
Block 9903 - Event Message Block
If the module contains a DNP master port and it is configured to pass event messages from the port to the processor, block identification code 9903 is used. When the master port receives an event message, it will place the data in the message into the event message queue. When the backplane task in the module recognizes data in this queue, it forms 9903 blocks to transfer the data to the processor. Ladder Logic extracts the event data from the 9903 block and place it in controller tags. The format of the block is as follows:
Block Format for Read
Word Offset in Block Data Field(s) Description
0 Block ID
1 Block ID This is the next block requested by the module. 2 Event Count
This field contains the block identification code of 9903 for the block.
This field contains the number of events present in the block. Values of 1 to 4 are valid.
ProSoft Technology, Inc. Page 79 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Reference DNP 3.0 Master/Slave Communication Module
Word Offset in Block Data Field(s) Description
3 to 14 Event 1 Event message 15 to 26 Event 2 Event message 27 to 38 Event 3 Event message 39 to 50 Event 4 Event message 51 to 61 Spare Not used
The format of each 12-word data region in the block is as follows:
Word Offset Definitions Description
0 Device Index
1 IED Address
2 DNP Address
3 Slave Address
4 Point Number
5 Object
6 Variation
7 Low Time
8 to 9 High Time
10 to 11 Value
This field contains the module's device index for the IED the message was received from (0 to
39). This field contains the IED database index for the
point. If set to -1, then not in database. This field contains the DNP database index for
the point. If set to -1, then not in database. This field contains the remote slave address for
the IED unit from which the message was received.
This field contains the point number in the remote IED unit for the event message.
This field contains the object code for the point and event.
This field contains the variation code for the point and event.
This field contains the least-significant word of the 48-bit DNP time for the event.
This field contains the most-significant double word of the 48-bit time for the event.
This field contains the a double word value for the point associated with the event message.
Block 9949 - Read Slave Communication Error Table
If the processor sends a block 9949, the module will respond with a slave communication error listing. The following example shows the format of the block:
Block Format for Write
Word Offset in Block Data Field(s) Description
0 Block ID
1 Number of slaves
2 Start Slave Index
3 to 61 Spare Not Used
This field contains the value of 9949 identifying the block type to the module.
This field contains the number of slaves to report in the response message. The value has a range of 1 to 7.
This parameter sets the index in the slave array where to start. The first slave in the array has a value of 0. The last index in the array has a value of MaxSlaves -1.
Page 80 of 129 ProSoft Technology, Inc.
November 3, 2008
Reference MVI69-DNP ♦ CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
The module responds to a valid request with a block 9949 containing the requested slave information. The following example shows the format of the block:
Block Format for Read
Word Offset in Block Data Field(s) Description
0 Block ID
1 Block ID This is the next block requested by the module. 2 Slave Count
3 Slave Start Index
4 to 11 Slave Data #1
12 to 19 Slave Data #2
20 to 27 Slave Data #3
28 to 35 Slave Data #4
36 to 43 Slave Data #5
44 to 51 Slave Data #6
52 to 59 Slave Data #7
60 to 61 Spare Not Used
This field contains the value of 9949 identifying the block type to the PLC.
This field contains the number of slave records contained in the block that must be processed by the PLC. This field will have a value of 1 to 7.
This field contains the index in the slave array for the first record in the file. This field will have a value of 0 to MaxSlaves-1.
This is the slave data for the first slave in the block. The slave index for the data is the Slave Start Index given in word 3.
This is the slave data for the second slave in the block.
This is the slave data for the third slave in the block.
This is the slave data for the third slave in the block.
This is the slave data for the third slave in the block.
This is the slave data for the third slave in the block.
This is the slave data for the third slave in the block.
Block 9950 - Read Command Error List
If the processor sends a block number of 9950 to the module, the application responds with a command error list. Each command in the system has a data word set aside for its last error code. The value is set by the DNP master port command list task and the values correspond to the error section of this manual. The format of the block is shown below:
Block Format for Write
Word Offset in Block Data Field(s) Description
0 Block ID
1
2
3 to 61 Spare Not Used
Number of Commands to report
Start Index of First Command
This field contains the value of 9950 identifying the block type to the module.
This field contains the number of commands to report in the response message. The value has a range of 1 to 58.
This parameter sets the index in the command list where to start. The first command in the list has a value of 0. The last index in the list has a value of MaxCommands -1.
ProSoft Technology, Inc. Page 81 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Reference DNP 3.0 Master/Slave Communication Module
The module responds to a valid request with a block containing the requested error information. The format of the block is shown in the following example:
Block Format for Read
Word Offset in Block Data Field(s) Description
0 Block ID
1 Block ID This is the next block requested by the module. 2
3
4 to 61 Command List Errors
Number of Commands reported
Start Index of First Command
This field contains the value of 9950 identifying the block type to the PLC.
This field contains the number of commands contained in the block that must be processed by the PLC. This field will have a value of 1 to
58. This field contains the index in the command list
for the first value in the file. This field will have a value of 0 to MaxCommands-1.
Each word of this area contains the last error value recorded for the command. The command index of the first value (offset 4) is specified in word 3 of the block. The number of valid command errors in the block is set in word 2 of the block. Refer to the command error list to interpret the error codes reported.
Block 9958 - Processor Binary Input Event
If the processor sends a block 9958, the module will place the binary input event data in the block into the event buffer and alter the data values for the points in the DNP binary input database. The format for the message is shown in the following table.
Block Format for Write
Word Offset in Block Data Field(s) Description
0 Block ID
1 Event Count
2 Sequence Counter
3
4 Month/Day/State
5 Hour/Minute
6 Sec/Millisecond
7 Year This is the four digit year for the event. 8 to 12 Five words of data for Event #2.
DNP Binary Input Data point
This field contains the value of 9958 identifying the event block to the module.
This field contains the number of events contained in the block. Valid values for this field are 1 to 11.
This field holds the sequence counter for each 9958 block transfer. This synchronizes and confirms receipt of the block by the module.
This is the data point in the DNP binary input database represented by the event.
Formatted: bits 0 to 4 = Day, bits 8 to 11 = Month, bit 15 = digital state for point. All other bits are ignored.
Formatted: bits 0 to 5 = Minutes, bits 8 to 12 = Hour. All other bits are ignored.
Formatted: bits 0 to 9 = Milliseconds, bits 10 to 15 = Seconds.
Page 82 of 129 ProSoft Technology, Inc.
November 3, 2008
Reference MVI69-DNP ♦ CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
Word Offset in Block Data Field(s) Description
13 to 17 Five words of data for Event #3. 18 to 22 Five words of data for Event #4. 23 to 27 Five words of data for Event #5. 28 to 32 Five words of data for Event #6. 33 to 37 Five words of data for Event #7. 38 to 42 Five words of data for Event #8. 43 to 47 Five words of data for Event #9. 48 to 52 Five words of data for Event #10. 53 to 57 Five words of data for Event #11. 58 to 61 Spare Not Used
To ensure the receipt of this block of information, the module returns a block 9958 with the sequence counter set to the value of the last successful block 9958 received.
Block Format for Read
Word Offset in Block Data Field(s) Description
0 Block ID Identification code for block set to 9958. 1 Block ID
2 Event Count
3 Sequence Counter
4 to 61 Spare Not used
Block identification code for request from PLC by the module.
This field contains the number of events processed by the module.
This field contains the sequence counter of the last successful block 9958 received.
Block 9959 - Processor Analog Input Event
If the processor sends a block 9959, the module will place the analog input event data in the block into the event buffer and alter the data values for the points in the DNP analog input database. The format for the event message is shown in the following table.
Block Format for Write
Word Offset in Block Data Field(s) Description
0 Block ID
1 Event Count
2 Sequence Counter
3
4 Analog Input Value
DNP Analog Input Data point
This field contains the value of 9959 identifying the event block to the module.
This field contains the number of events contained in the block. Valid values for this field are 1 to 9.
This field holds the sequence counter for each 9959 block transfer. This synchronizes and confirms receipt of the block by the module.
This is the data point in the DNP analog input database represented by the event.
This is the new analog input value represented in the event.
ProSoft Technology, Inc. Page 83 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Reference DNP 3.0 Master/Slave Communication Module
Word Offset in Block Data Field(s) Description
5 Month/Day
6 Hour/Minute
7 Sec/Millisecond
8 Year Four digit year value for event. 9 to 14 Six words of data for Event #2. 15 to 20 Six words of data for Event #3. 21 to 26 Six words of data for Event #4. 27 to 32 Six words of data for Event #5. 33 to 38 Six words of data for Event #6. 39 to 44 Six words of data for Event #7. 45 to 50 Six words of data for Event #8. 51 to 56 Six words of data for Event #9. 57 to 61 Spare Not Used
Formatted: bits 0 to 4 = Day, bits 8 to 11 = Month. All other bits are ignored.
Formatted: bits 0 to 5 = Minutes, bits 8 to 12 = Hour. All other bits are ignored.
Formatted: bits 0 to 9 = Milliseconds, bits 10 to 15 = Seconds.
To ensure the receipt of this block of information, the module returns a block 9959 with the sequence counter set to the value of the last successful block 9959 received.
Block Format for Read
Word Offset in Block Data Field(s) Description
0 Block ID Identification code for block set to 9959. 1 Block ID
2 Event Count
3 Sequence Counter
4 to 61 Spare Not used
Block identification code for request from PLC by the module.
This field contains the number of events processed by the module.
This field contains the sequence counter of the last successful block 9959 received.
Block 9970 - Set Processor Time Using Module Time
This block transfers the module's time to the processor. Ladder logic must be used to set the processor's clock using the data received. The format of the block sent from the processor has the following format:
Block Format for Write
Word Offset in Block Data Field(s) Description
0 Block ID
1 to 61 Not Used Not Used
This field contains the value of 9970 identifying the block type to the module.
The module will respond to a valid block 9970 request with a block containing the requested date and time. The following example shows the format of this block.
Page 84 of 129 ProSoft Technology, Inc.
November 3, 2008
Reference MVI69-DNP ♦ CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
Block Format for Read
Word Offset in Block Data Field(s) Description
0 Block Read ID
1 Block Write ID This is the next block requested by the module. 2 Year
3 Month
4 Day
5 Hour
6 Minute
7 Seconds
8 Milliseconds
9
Remote Time Synchronization
10 to 61 Not Used Not Used
This field contains the block identification code of 9970 for the block.
This field contains the four-digit year to be used with the new time value.
This field contains the month value for the new time. Valid entry for this field is in the range of 1 to 12.
This field contains the day value for the new time. Valid entry for this field is in the range of 1 to 31.
This field contains the hour value for the new time. Valid entry for this field is in the range of 0 to 23.
This field contains the minute value for the new time. Valid entry for this field is in the range of 0 to 59.
This field contains the second value for the new time. Valid entry for this field is in the range of 0 to 59.
This field contains the millisecond value for the new time. Valid entry for this field is in the range of 0 to 999.
This field informs the PLC if the date and time passed has been synchronized with a remote DNP master device on the module's slave port.
Block 9971 - Set Module's Time Using the Processor's Time
This block sets the clock in the module to match the clock in the processor. If the processor sends a block 9971, the module will set its time using the data contained in the block. The format of the block is shown in the following table.
Block Format for Write
Word Offset in Block Data Field(s) Description
0 Block ID
This field contains the block identification code of 9971 for the block.
1 Year
This field contains the four-digit year to be used with the new time value.
2 Month
This field contains the month value for the new time. Valid entry for this field is in the range of 1 to 12.
3 Day
This field contains the day value for the new time. Valid entry for this field is in the range of 1 to 31.
4 Hour
This field contains the hour value for the new time. Valid entry for this field is in the range of 0 to 23.
ProSoft Technology, Inc. Page 85 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Reference DNP 3.0 Master/Slave Communication Module
Word Offset in Block Data Field(s) Description
5 Minute
6 Seconds
7 Milliseconds
8 to 61 Not Used Not Used
This field contains the minute value for the new time. Valid entry for this field is in the range of 0 to 59.
This field contains the second value for the new time. Valid entry for this field is in the range of 0 to 59.
This field contains the millisecond value for the new time. Valid entry for this field is in the range of 0 to 999.
Warm Boot
This block is sent from the CompactLogix or MicroLogix processor to the module (output image) when the module is required to perform a warm-boot (software reset) operation. This block is commonly sent to the module any time configuration data modifications are made in the controller tags data area. This will force the module to read the new configuration information and to restart. The structure of the control block is shown below:
Offset Description Length
0 9998 1 1 to 63 Spare 63
Cold Boot
This block is sent from the CompactLogix processor to the module (output image) when the module is required to perform the cold boot (hardware reset) operation. This block is sent to the module when a hardware problem is detected by the ladder logic that requires a hardware reset. The structure of the control block is shown in the following table.
Offset Description Length
0 9999 1 1 to 63 Spare 63
Page 86 of 129 ProSoft Technology, Inc.
November 3, 2008
Reference MVI69-DNP ♦ CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
5.2.4 Data Flow between MVI69-DNP Module and CompactLogix Processor
The following topics describe the flow of data between the two pieces of hardware (CompactLogix processor and MVI69-DNP module) and other nodes on the DNP network under the module's different operating modes. Each port on the module is configured to emulate a DNP master device or a DNP slave device. The operation of each port is dependent on this configuration.
The following topics discuss the operation of these drivers.
Slave Driver
The Slave Driver mode allows the MVI69-DNP module to respond to data read and write commands issued by a Master on the DNP network. The following flow chart and associated table describe the flow of data into and out of the module.
Step Description
1
2
3
4
5
The slave port driver receives the configuration information from the configuration file. This information configures the serial port and define the slave node characteristics. Additionally, the configuration information contains data that can be used to offset data in the database to addresses requested in messages received from master units.
A host device (DNP Master Unit) issues a read or write command to the module's node address. The port driver qualifies the message before accepting it into the module.
After the module accepts the command, the data is immediately transferred to or from the internal database in the module. If the command is a read command, the data is read out of the database and a response message is built. If the command is a write command, the data is written directly into the database and a response message is built.
After the data processing has been completed in Step 3, the response is issued to the originating master node.
Counters are available in the Status Block that permit the ladder logic program to determine the level of activity of the Slave Driver.
ProSoft Technology, Inc. Page 87 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Reference DNP 3.0 Master/Slave Communication Module
Review the Installing and Configuring the Module section for a complete list of parameters that must be defined for a slave port. The response messages from the slave driver include an IIN (internal indication word) defined in the Reference chapter - Internal Indication Word.
The slave driver supports Object 110 (octet string data). Four points are pre­assigned values as shown in the following table.
OCTET STRING POINT LIST
Point # Description
0 Module Name as assigne d in configuration file. 1 Product Name 2 Version Information in format:
wwww xxxx yyyy zzzz Where wwww is product code, xxxx is the revision, yyyy is the operating
system number and zzzz is the run number.
3 Manufacturer name for modul e.
Master Driver Mode
In the Master mode, the MVI69-DNP module is responsible for issuing read or write commands to slave devices on the DNP network. These commands are user-configured in the module via the Master Command List received from the processor or issued directly from the processor (command control). Command status is returned to the processor for each individual command in the command list status block. The following flow chart and associated table describe the flow of data into and out of the module.
Page 88 of 129 ProSoft Technology, Inc.
November 3, 2008
Reference MVI69-DNP ♦ CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
Step Description
1
2
3
4
5
The Master driver obtains configuration data from the configuration file. The configuration data obtained includes the Master Slave and Command Lists. These values are used by the Master driver to determine the type of commands to be issued to other nodes on the DNP network.
After configuration, the Master driver begins transmitting read and/or write commands to the other nodes on the network. If writing data to another node, the data for the write command is obtained from the module's internal database to build the command.
Presuming successful processing by the node specified in the command, a response message is received into the Master driver for processing.
Data received from the node on the network is passed into the module's internal database, assuming a read command.
Status data is returned to the CompactLogix processor for each command in the Master Command List.
Refer to the Installing and Configuring the Module section for a complete description of the parameters required to define the virtual DNP Master port.
5.3 Cable Connections
The application ports on the MVI69-DNP module support RS-232, RS-422, and RS-485 interfaces. Please inspect the module to ensure that the jumpers are set correctly to correspond with the type of interface you are using.
Note: When using RS-232 with radio modem applications, some radios or modems require
hardware handshaking (control and monitoring of modem signal lines). Enable this in the configuration of the module by setting the UseCTS parameter to 1.
5.3.1 RS-232 Configuration/Debug Port
This port is physically an RJ45 connection. An RJ45 to DB-9 adapter cable is included with the module. This port permits a PC based terminal emulation program to view configuration and status data in the module and to control the module. The cable for communications on this port is shown in the following diagram:
ProSoft Technology, Inc. Page 89 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Reference DNP 3.0 Master/Slave Communication Module
Disabling the RSLinx Driver for the Com Port on the PC
The communication port driver in RSLinx can occasionally prevent other applications from using the PC's COM port. If you are not able to connect to the module's configuration/debug port using ProSoft Configuration Builder (PCB), HyperTerminal or another terminal emulator, follow these steps to disable the RSLinx Driver.
1 Open RSLinx and go to Communications>RSWho 2 Make sure that you are not actively browsing using the driver that you wish to
stop. The following shows an actively browsed network:
3 Notice how the DF1 driver is opened, and the driver is looking for a processor
on node 1. If the network is being browsed, then you will not be able to stop this driver. To stop the driver your RSWho screen should look like this:
Branches are displayed or hidden by clicking on the
or the icons.
4 When you have verified that the driver is not being browsed, go to
Communications>Configure Drivers
You may see something like this:
Page 90 of 129 ProSoft Technology, Inc.
November 3, 2008
Reference MVI69-DNP ♦ CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
If you see the status as running, you will not be able to use this com port for anything other than communication to the processor. To stop the driver press the "Stop" on the side of the window:
5 After you have stopped the driver you will see the following:
6 Upon seeing this, you may now use that com port to connect to the debug
port of the module.
Note: You may need to shut down and restart your PC before it will allow you to stop the driver
(usually only on Windows NT machines). If you have followed all of the above steps, and it will not stop the driver, then make sure you do not have RSLogix open. If RSLogix is not open, and you still cannot stop the driver, then reboot your PC.
5.3.2 RS-232
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 will be used, the cable to connect to the port is as shown below:
ProSoft Technology, Inc. Page 91 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Reference DNP 3.0 Master/Slave Communication Module
RS-232: Modem Connection
This type of connection is required between the module and a modem or other communication device.
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).
Page 92 of 129 ProSoft Technology, Inc.
November 3, 2008
Reference MVI69-DNP ♦ CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
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: If the port is configured with the "Use CTS Line" set to 'Y', then a jumper is required between
the RTS and the CTS line on the module connection.
5.3.3 RS-422
ProSoft Technology, Inc. Page 93 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Reference DNP 3.0 Master/Slave Communication Module
5.3.4 RS-485
The RS-485 interface requires a single two or three wire cable. The Common connection is optional and dependent on the RS-485 network. The cable required for this interface is shown below:
Note: Terminating resistors are generally not required on the RS-485 network, unless you are
experiencing communication problems that can be attributed to signal echoes or reflections. In this case, install a 120 ohm terminating resistor on the RS-485 line.
RS-485 and RS-422 Tip
If communication in the RS-422/RS-485 mode does not work at first, despite all attempts, try switching termination polarities. Some manufacturers interpret +/­and A/B polarities differently.
5.3.5 DB9 to RJ45 Adaptor (Cable 14)
Page 94 of 129 ProSoft Technology, Inc.
November 3, 2008
Reference MVI69-DNP ♦ CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
5.4 Error Status Table
The program maintains an error status table. You can use the error/status data to determine the "health" of the module.
The data in the block is structured as follows:
Word
0 2
1 3
2 4
3 5
4 6
5 7
6 8
7 9
8 10
9 11
10 12
11 13
Block Offset
Variable Name Description
Current DNP Slave Port status
DNP Slave Port last transmitted error code
DNP Slave Port total number of message frames received by slave
DNP Slave Port total number of response message frames sent from slave
DNP Slave Port total number of message frames seen by slave
DNP Slave synchronization error count (Physical Layer Error)
DNP Slave overrun error count (Physical Layer Error)
DNP Slave length error count (Physical Layer Error)
DNP Slave bad CRC error (Data Link Layer Error)
DNP Slave user data overflow error (Transport Layer Error)
DNP Slave sequence error (Transport Layer Error)
DNP Slave address error (Transport Layer Error)
This value represents the current value of the error code for the port. This value will only be valid if the port is configured as a slave. The possible values are described in the application documentation.
This value represents the last error code transmitted to the master by this slave port.
This value represents the total number of message frames that have matched this slaves address on this port. This count includes message frames which the slave may or may not be able to parse and respond.
This value represents the number of good (non­error) responses that the slave has sent to the master on this port. The presumption is that if the slave is responding, the message was good. Note: This is a frame count.
This value represents the total number of message frames received by the slave, regardless of the slave address.
This value counts the number of times a sync error occurs. The error occurs when extra bytes are received before the start bytes (0x05 and 0x64) are received.
This value counts the number of times the overrun error occurs. This error occurs when the mainline Data Link Layer routine cannot read the data received on the communication port before it is overwritten.
This value counts the number of times an invalid length byte is received. If the length of the message does not match the length value in the message, this error occurs.
This value counts the number of times a bad CRC value is received in a message.
This value counts the number of times the application layer receives a message fragment buffer which is too small.
This value counts the number of times the sequence numbers of multi-frame request fragments do not increment correctly.
This value counts the number of times the source addresses contained in a multi-frame request fragments do not match.
ProSoft Technology, Inc. Page 95 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Reference DNP 3.0 Master/Slave Communication Module
Word
12 14
13 15
14 16
15 17
16 18
17 19
18 20
19 21
20 22
21 23 Total blocks transferred
22 24
23 25
24 26 Total BTR or write errors
25 27 Total BTW or read errors
26 28 Block number error
27 29
28 30 Reserved Not used 29 31 Configuration Type
Block Offset
Variable Name Description
DNP Slave Binary Input Event count
DNP Slave Binary Input Event count in buffer
DNP Slave Analog Input Event count
DNP Slave Analog Input Event count in buffer
DNP Slave bad function code error (Application Layer Error)
DNP Slave object unknown error (Application Layer Error)
DNP Slave out of range error (Application Layer Error)
DNP Slave message overflow error (Application Layer Error)
DNP Slave multi-frame message from DNP Master error (Application Layer Error)
Successful blocks transferred
Total errors in block transfer
Continuous block error counter
This value contains the total number of binary input events which have occurred.
This value represents the number of binary input events which are waiting to be sent to the master.
This value contains the total number of analog input events which have occurred.
This value represents the number of analog input events which are waiting to be sent to the master.
This value counts the number of times a bad function code for a selected object/variation is received by the slave device.
This value counts the number of times a request for an unsupported object is received by the slave device.
This value counts the number of times a parameter in the qualifier, range or data field is not valid or out of range.
This value counts the number of times an application response message from the slave is too long to transmit.
This value counts the number of times the slave receives a multi-frame message from the master. The application does not support multi­frame master messages.
Total BTR/BTW or side-connect interface transfers attempted by the module.
This value represents the total number of transfer operations between the CompactLogix processor and module that are successful.
Total number of transfers that resulted in an error condition.
Total number of BTR or write transfers that resulted in an error.
Total number of BTW or read transfers that resulted in an error.
Number of BTW requests that resulted in an incorrect BTW identification code.
Count of sequential data transfer errors. When this value exceeds that specified for the data transfer operation, the error flag below will be set.
This is a coded field that defines the configuration of the module. The codes are as follows: 0=Single Slave Configuration, 1=Dual Slave Configuration, 2=Slave/Master Configuration
Page 96 of 129 ProSoft Technology, Inc.
November 3, 2008
Reference MVI69-DNP ♦ CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
Word
30 to 31 32 to 33 Product Name (ASCII)
32 to 33 34 to 35 Revision (ASCII)
34 to 35 36 to 37
36 to 37 38 to 39
38 40
39 41
40 42
41 43
42 44
43 45
44 46
45 47
46 48
47 49
48 50
49 51
Block Offset
Variable Name Description
These two words contain the product name of the module in ASCII format.
These two words contain the product revision level of the firmware in ASCII format.
Operating System Revision (ASCII)
Production Run Number (ASCII)
DNP Master Port Slave Count
DNP Master Port Command Count
DNP Master Port Device Memory Block Count
DNP Master Port Frame Block Count
DNP Master Port Data Link Receive Block Count
DNP Master Port Data Link Transmit Block Count
DNP Master Port Application Layer Receive Block Count
DNP Master Port Application Layer Receive Block Count
DNP Master Port Device Memory Allocation Error Count
DNP Master Port Physical Layer Memory Allocation Error Count
DNP Master Port Data Link Layer Receive Memory Allocation Error Count
DNP Master Port Data Link Layer Transmit Memory Allocation Error Count
These two words contain the module's internal operating system revision level in ASCII format.
These two words contain the production 'batch' number for the particular chip in the module in ASCII format.
This is the total number of slaves configured for the DNP Master port. This may not represent the number of active slaves as it includes slaves that are not enabled.
This is the total number of commands configured for the DNP Master port. This may not represent the number of active commands as it includes commands that are disabled.
This value represents the number of memory allocation blocks for slave devices. This number should be one greater than the number of slave devices. The extra device is held for the broadcast device.
This value represents the number of physical layer frame memory allocation blocks used by the program.
This value represents the number of receive data link layer memory blocks allocated.
This value represents the number of transmit data link layer memory blocks allocated.
This value represents the number of application layer receive memory blocks allocated.
This value represents the number of application layer transmit memory blocks allocated.
This value represents the number of memory allocation errors for device blocks.
This value represents the number of memory allocation errors for physical layer frame blocks.
This value represents the number of memory allocation errors for data link layer receive blocks.
This value represents the number of memory allocation errors for data link layer transmit blocks.
ProSoft Technology, Inc. Page 97 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Reference DNP 3.0 Master/Slave Communication Module
Word
50 52
51 53
52 54
53 55
54 56
55 57 Scan Counter LSB Program scan counter 56 58 Scan Counter MSB 57 59 Free Memory LSB Free memory in module 58 60 Free Memory MSB 59 61
60 62 DNP Float Event Count
61 63
62 64
63 65
64 to 77 66 to 79 Reserved Future Use 78 80 Error_List[0] First value in error list 79 81 Error_List[1] Second value in error list
- - - ­137 139 Error_List[59] Last value in error list
Block Offset
Variable Name Description
DNP Master Port Application Layer Receive Memory Allocation Error Count
DNP Master Port Application Layer Transmit Memory Allocation Error Count
DNP Master Synchronization Error Count (Physical Layer Error)
DNP Master Length Error Count (Physical Layer Error)
DNP Master Bad CRC Error Count (Physical Layer Error)
DNP Slave Port Transmit State
DNP Double Event Count
Event Message Queue Count
Event Message Queue Overflow
This value represents the number of memory allocation errors for application layer receive blocks.
This value represents the number of memory allocation errors for application layer transmit blocks.
This value counts the number of times a sync error occurs. The error occurs when extra bytes are received before the start bytes (0x05 and 0x64) are received.
This value counts the number of times an invalid length byte is received. If the length of the message does not match the length value in the message, this error occurs.
This value counts the number of times a bad CRC value is received in a message.
Value of the DNP Slave state machine for transmit.
Total number of events generated for analog floating-point input data points.
Total number of events generated for analog double, floating-point input data points.
Number of event messages waiting to send to processor.
Flag to indicate if the event message queue has overflowed. If more than 200 event messages are received on the master port and they are not sent to the processor, this flag will be set (1). The flag will clear after the messages are sent to the processor.
Page 98 of 129 ProSoft Technology, Inc.
November 3, 2008
Reference MVI69-DNP ♦ CompactLogix or MicroLogix Platform DNP 3.0 Master/Slave Communication Module
5.4.1 Module Error Codes
If the module's program encounters an error during execution, it will log the error to the error list. This list is transferred to the CompactLogix processor using block identification code 100 (see section above) in at offsets 62 to 119. This data is also available for viewing on the debug monitor port. The following tables list the error codes generated by the program with their associated description. Use the errors to help define where problems exist in the system.
Slave Port Communication Errors
Error Code
0 OK The module is operating correctly and there are no errors. 10
11
12
13
14
15
16
17
18
19
20
21
Name Description
DNP synchronization error (Physical Layer Error)
DNP overrun error (Physical Layer Error)
DNP length error (Physical Layer Error)
DNP bad CRC error (Data Link Layer Error)
DNP user data overflow error (Transport Layer Error)
DNP sequence error (Transport Layer Error)
DNP address error (Transport Layer Error)
DNP bad function code error (Application Layer Error)
DNP object unknown error (Application Layer Error)
DNP out of range error (Application Layer Error)
DNP message overflow error (Application Layer Error)
DNP master multi-frame message error (Application Layer Error)
Extra bytes are received before the start bytes (0x05 and 0x64).
Mainline Data Link Layer routine could not read data received on DNP port before it was overwritten.
Length of message does not match length value in message.
Computed CRC value for message does not match that received in message.
Application layer received a message fragment buffer which is too small.
Sequence numbers of multi-frame request fragments do not increment correctly.
Source addresses contained in multi-frame request fragments do not match.
Function code received from DNP master is not supported for selected object/variation.
Slave does not have the specified objects or there are no objects assigned to the requested class.
Qualifier, range or data fields are not valid or out of range for the selected object/variation.
Application response buffer overflow condition. The response message from the slave is too long to transmit.
Received a multi-frame message from the DNP master. This application does not support multi-frame messages from the master.
ProSoft Technology, Inc. Page 99 of 129 November 3, 2008
MVI69-DNP CompactLogix or MicroLogix Platform Reference DNP 3.0 Master/Slave Communication Module
System Configuration Errors
Error
Name Description
Code
100
Too many binary input points
101
Too many binary output points
102
Too many counter points
103
Too many analog input points
104
Too many analog input points
105
Too many binary input events
106
Too many analog input events
107
Invalid analog input deadband
108 Not enough memory
Too many binary input points are configured for the module. Maximum value is 7680
Too many binary output points are configured for the module. Maximum value is 7680
Too many counter points are configured for the module. Maximum value is 240
Too many analog input points are configured for the module. Maximum value is 480
Too many analog output points are configured for the module. Maximum value is 480
Too many binary input events are configured for the module. Maximum value is 400.
Too many analog input events are configured for the module. Maximum value is 400.
Deadband value for analog input events is out of range. Value must be in the range of 0 to 32767.
There is not enough memory in the module to configure the module as specified.
109
Invalid block transfer
Block transfer delay value specified is too low. delay for blocks error/status blocks
110 File count invalid The file count must be in the range of 0 to 6. 111 Invalid file record size The file record size must be in the range of 1 to 120. 112
Invalid block identification code for file
The file block transfer code must be in the range of 100 to
120.
DNP Port Configuration Errors
Error
Name Description
Code
212 Invalid DNP address
The DNP address specified in the configuration is not valid (0
to 65534).
213
Invalid DNP port baud
The baud rate code specified in the configuration is not valid. rate
219
220
222
Invalid DNP data link layer confirm mode
Invalid DNP data link confirm time-out
Invalid DNP select/operate arm time
The data link confirmation mode code is not valid in the
configuration.
The data link time-out period specified in the configuration is
0. It must be an integer in the range of 1 to 65535.
The select/operate arm timer is set to 0. It must be an integer
in the range of 1 to 65535. duration
223
224
Invalid DNP application layer confirm time-out
Invalid DNP write time interval
The application layer confirm time-out value is set to 0. It
must be an integer in the range of 1 to 65535.
The write time interval is not in the data range in the
configuration. The value must be in the range of 0 to 1440.
Page 100 of 129 ProSoft Technology, Inc.
November 3, 2008
Loading...