ProSoft Technology MVI71-DNP User Manual

MVI71-DNP
PLC Platform
DNP 3.0 Master/Slave Communication
Module
User Manual
August 23, 2007
Successful application of this module requires a reasonable working knowledge of the PLC hardware, the MVI71-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 assure that the information provided is accurate and a true reflection of the product's installation requirements. In order to assure a complete understanding of the operation of the product, the user should read all applicable documentation on the operation of the 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 typographical errors.
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.
Power, Input, and Output (I/O) wiring must be in accordance with Class 1, Division 2 wiring methods, Article 501-4 (b) of the National Electrical Code, NFPA 70 for installation in the U.S., or as specified in Section 18–1J2 of the Canadian Electrical Code for installations in Canada, and in accordance with the authority having jurisdiction.
A Warning – Explosion Hazard – Substitution of components may impair
suitability for Class 1, Division 2.
B Warning – Explosion Hazard – When in hazardous locations, turn off
power before replacing or wiring modules.
C Warning – Explosion Hazard – Do not disconnect equipment unless power
has been switched off or the area is known to be non-hazardous.
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 - 2007. All Rights Reserved.
MVI71-DNP User Manual August 23, 2007 PSFT.DNP.MVI71.UM.07.08.23
ProSoft Technology ®, ProLinx ®, inRAx ®, ProTalk® and RadioLinx ® are Registered Trademarks of ProSoft Technology, Inc.
Contents MVI71-DNP ♦ PLC Platform DNP 3.0 Master/Slave Communication Module
Contents
PLEASE READ THIS NOTICE.............................................................................................................................. 2
Your Feedback Please ...................................................................................................................................... 3
GUIDE TO THE MVI71-DNP USER MANUAL...................................................................................................... 9
1 START HERE ..............................................................................................................................................11
1.1 System Requirements.............................................................................................................................11
1.2 Package Contents ..................................................................................................................................12
1.3 Setting Jumpers......................................................................................................................................13
1.4 Install the Module in the Rack.................................................................................................................13
1.5 Connect your PC to the Processor .........................................................................................................15
1.6 Download the Sample Program to the Processor ...................................................................................16
1.6.1 Configuring RSLinx .......................................................................................................................17
1.7 Connect your PC to the Module..............................................................................................................19
2 INSTALLING AND CONFIGURING THE MODULE....................................................................................21
2.1 Module Data ...........................................................................................................................................23
2.1.1 Status Data ...................................................................................................................................23
2.1.2 User Data ......................................................................................................................................25
2.2 Configuration File....................................................................................................................................26
2.2.1 [Module] ........................................................................................................................................27
2.2.2 [DNP Slave]...................................................................................................................................27
2.2.3 [DNP Slave Database] ..................................................................................................................34
2.2.4 [DNP Slave Binary Inputs].............................................................................................................36
2.2.5 [DNP Slave Analog Inputs]............................................................................................................36
2.2.6 [DNP Slave Float Inputs] ...............................................................................................................37
2.2.7 [Secondary Port]............................................................................................................................37
2.2.8 [DNP Master].................................................................................................................................39
2.2.9 [IED Database]..............................................................................................................................40
2.2.10 [DNP Master Slave List] ................................................................................................................41
2.2.11 [DNP Master Commands] .............................................................................................................41
2.2.12 Slave List.......................................................................................................................................46
2.2.13 Command List ...............................................................................................................................47
2.3 Uploading and Downloading the Configuration File ................................................................................50
2.3.1 Transferring the Configuration File to Your PC..............................................................................50
2.3.2 Transferring the Configuration File to the Module .........................................................................52
3 LADDER LOGIC..........................................................................................................................................57
4 DIAGNOSTICS AND TROUBLESHOOTING..............................................................................................59
4.1 Reading Status Data From the Module...................................................................................................59
4.1.1 The Configuration/Debug Menu ....................................................................................................59
4.1.2 Required Hardware .......................................................................................................................60
4.1.3 Required Software.........................................................................................................................61
4.1.4 Using the Configuration/Debug Port..............................................................................................61
4.1.5 Main Menu ....................................................................................................................................62
4.1.6 The Class Assignment Menu ........................................................................................................65
4.1.7 DNP Database View Menu............................................................................................................67
4.1.8 Master Command List Menu .........................................................................................................70
4.1.9 Master Command Error List Menu ................................................................................................71
ProSoft Technology, Inc. Page 5 of 172 August 23, 2007
MVI71-DNP PLC Platform Contents DNP 3.0 Master/Slave Communication Module
4.2 LED Status Indicators.............................................................................................................................72
4.3 Clearing a Fault Condition ......................................................................................................................72
4.4 Troubleshooting......................................................................................................................................73
5 REFERENCE...............................................................................................................................................75
5.1 Product Specifications ............................................................................................................................75
5.1.1 Features and Benefits ...................................................................................................................76
5.1.2 General Specifications ..................................................................................................................76
5.1.3 Hardware Specifications ...............................................................................................................76
5.1.4 Functional Specifications ..............................................................................................................77
5.2 Functional Overview ...............................................................................................................................78
5.2.1 General Concepts .........................................................................................................................78
5.2.2 Data Flow Between MVI71-DNP Module and PLC Processor ......................................................91
5.3 Designing the system .............................................................................................................................94
5.3.1 System Design Considerations .....................................................................................................94
5.3.2 Data Requirements .......................................................................................................................95
5.4 Cable Connections ...............................................................................................................................111
5.4.1 RS-232 Configuration/Debug Port...............................................................................................111
5.4.2 RS-232........................................................................................................................................113
5.4.3 RS-422........................................................................................................................................115
5.4.4 RS-485........................................................................................................................................116
5.4.5 DB9 to RJ45 Adaptor (Cable 14).................................................................................................116
5.5 Collision Avoidance (DNP modules only) .............................................................................................117
5.6 Block Assignments ...............................................................................................................................118
5.6.1 PLC Program Block Assignments vs. File:Offset ........................................................................118
5.7 DNP Configuration Forms.....................................................................................................................121
5.7.1 DNP User File Configuration.......................................................................................................121
5.8 MVI71-DNP Communication Module Configuration..............................................................................124
5.9 Error Status Table.................................................................................................................................132
5.10 Module Error Codes.........................................................................................................................136
5.10.1 Slave Port Communication Errors ...............................................................................................136
5.10.2 System Configuration Errors .......................................................................................................137
5.10.3 DNP Port Configuration Errors ....................................................................................................137
5.11 Command Error Codes ....................................................................................................................138
5.11.1 General Command Errors ...........................................................................................................138
5.11.2 Application Layer Errors ..............................................................................................................139
5.12 Event Size Computation ..................................................................................................................140
5.13 Device Profile...................................................................................................................................141
5.14 Slave Unit Device Profile Object Subset ..........................................................................................142
5.15 Master Unit Device Profile Object Subset ........................................................................................150
6 PROSOFT TECHNOLOGY, INC., SUPPORT, SERVICE & WARRANTY................................................159
6.1 How to Contact Us: Sales and Support ................................................................................................160
6.2 Return Material Authorization (RMA) Policies and Conditions..............................................................161
6.2.1 All Product Returns .....................................................................................................................161
6.3 Procedures for Return of Units Under Warranty ...................................................................................161
6.4 Procedures for Return of Units Out of Warranty ...................................................................................162
6.4.1 Un-repairable Units .....................................................................................................................162
6.4.2 Purchasing Warranty Extension..................................................................................................163
Page 6 of 172 ProSoft Technology, Inc.
August 23, 2007
Contents MVI71-DNP ♦ PLC Platform DNP 3.0 Master/Slave Communication Module
6.5 LIMITED WARRANTY ..........................................................................................................................163
6.5.1 What Is Covered By This Warranty .............................................................................................163
6.5.2 What Is Not Covered By This Warranty.......................................................................................164
6.5.3 DISCLAIMER REGARDING HIGH RISK ACTIVITIES................................................................165
6.5.4 DISCLAIMER OF ALL OTHER WARRANTIES...........................................................................165
6.5.5 LIMITATION OF REMEDIES**....................................................................................................165
6.5.6 Time Limit for Bringing Suit .........................................................................................................165
6.5.7 No Other Warranties ...................................................................................................................166
6.5.8 Intellectual Property.....................................................................................................................166
6.5.9 Additional Restrictions Relating To Software And Other Intellectual Property.............................166
6.5.10 Allocation of risks ........................................................................................................................166
6.5.11 Controlling Law and Severability .................................................................................................167
INDEX.................................................................................................................................................................169
ProSoft Technology, Inc. Page 7 of 172 August 23, 2007
MVI71-DNP PLC Platform Contents DNP 3.0 Master/Slave Communication Module
Page 8 of 172 ProSoft Technology, Inc.
August 23, 2007
Start Here MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
Guide to the MVI71-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 21, page 11)
Verifying Communication (page 59)
Diagnostics and Troubleshooting (page 59)
Reference
75) Functional
Overview (page 78) Product
Specifications (page 75)
Support, Service and Warranty (page 159)
(page
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 9 of 172 August 23, 2007
MVI71-DNP PLC Platform Start Here DNP 3.0 Master/Slave Communication Module
Page 10 of 172 ProSoft Technology, Inc.
August 23, 2007

Start Here MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module

1 Start Here
In This Chapter
¾ System Requirements............................................................ 11
¾ Package Contents.................................................................. 12
¾ Setting Jumpers ..................................................................... 13
¾ Install the Module in the Rack ................................................ 13
¾ Connect your PC to the Processor......................................... 15
¾ Download the Sample Program to the Processor ..................16
¾ Connect your PC to the Module ............................................. 19
Installing the MVI71-DNP module requires a reasonable working knowledge of the Rockwell Automation hardware, the MVI71-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 MVI71-DNP module requires the following minimum hardware and software components:
Rockwell Automation PLC processor, with compatible power supply and one
free slot in the rack, for the MVI71-DNP module. The module requires 800mA of available power.
Rockwell Automation RSLogix 5 programming software. Rockwell Automation RSLinx communication software Pentium® 100 MHz minimum. Pentium III 700 MHz (or better) recommended Supported operating systems:
o Microsoft Windows XP o Microsoft Windows 2000 o Microsoft Windows NT v4.0 with Service Pack 3 or greater o Microsoft Windows ME o Microsoft Windows 98
64 Mbytes of RAM minimum, 256 Mbytes of RAM recommended
ProSoft Technology, Inc. Page 11 of 172 August 23, 2007
MVI71-DNP PLC Platform Start Here DNP 3.0 Master/Slave Communication Module
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 3.5 inch floppy disk 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 MVI71-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
MVI71-DNP Module
ProSoft Solutions CD
MVI71-DNP DNP 3.0 Master/Slave Communication Module
RS232 Null Modem
Cable #14, RJ45 to DB9 Male Adapter
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 MVI71-DNP module.
If any of these components are missing, please contact ProSoft Technology Support for replacement parts.
Page 12 of 172 ProSoft Technology, Inc.
August 23, 2007
Start Here MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
1.3 Setting Jumpers
The following illustration shows the jumper configurations for the various RS interfaces. If you are using an interface other than RS-232 (default), you must change the jumpers as shown:
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.

1.4 Install the Module in the Rack

If you have not already installed and configured your PLC processor and power supply, please do so before installing the MVI71-DNP module. Refer to your Rockwell Automation product documentation for installation instructions.
Warning: You must follow all safety instructions when installing this or any other electronic devices. Failure to follow safety procedures could result in damage to hardware or data, or even serious injury or death to personnel. Refer to the documentation for each device you plan to connect to verify that suitable safety procedures are in place before installing or servicing the device.
After you have checked the placement of the jumpers, insert MVI71-DNP into the PLC™ chassis. Use the same technique recommended by Rockwell Automation to remove and install PLC modules.
ProSoft Technology, Inc. Page 13 of 172 August 23, 2007
MVI71-DNP PLC Platform Start Here DNP 3.0 Master/Slave Communication Module
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 Turn power OFF. 2 Align the module with the top and bottom guides, and slide it into the rack
until the module is firmly against the backplane connector.
3 With a firm but steady push, snap the module into place. 4 Check that the holding clips on the top and bottom of the module are securely
in the locking holes of the rack.
5 Make a note of the slot location. You will need to identify the slot in which the
module is installed in order for the sample program to work correctly. Slot numbers are identified on the green circuit board (backplane) of the PLC rack.
6 Turn power ON.
Note: If you insert the module improperly, the system may stop working, or may
behave unpredictably.
Page 14 of 172 ProSoft Technology, Inc.
August 23, 2007
Start Here MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module

1.5 Connect your PC to the Processor

7 Connect the right-angle connector end of the cable to your controller at the
communications port.
8 Connect the straight connector end of the cable to the serial port on your
computer.
ProSoft Technology, Inc. Page 15 of 172 August 23, 2007
MVI71-DNP PLC Platform Start Here DNP 3.0 Master/Slave Communication Module

1.6 Download the Sample Program to the Processor

¾ To download the sample program from RSLogix 5 to the PLC
processor:
Note: The key switch on the front of the PLC 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 Click the Download button to transfer the sample program to the processor. 3 When prompted, choose Computer to PLC
4 RSLogix will compile the program and transfer it to the processor. This
process may take a few minutes.
Page 16 of 172 ProSoft Technology, Inc.
August 23, 2007
Start Here MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
5 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.
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.
ProSoft Technology, Inc. Page 17 of 172 August 23, 2007
MVI71-DNP PLC Platform Start Here DNP 3.0 Master/Slave Communication Module
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".
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 172 ProSoft Technology, Inc.
August 23, 2007
Start Here MVI71-DNP PLC 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 172 August 23, 2007
MVI71-DNP PLC Platform Start Here DNP 3.0 Master/Slave Communication Module
Page 20 of 172 ProSoft Technology, Inc.
August 23, 2007
Installing and Configuring the Module MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module

2 Installing and Configuring the Module

In This Chapter
¾ Module Data........................................................................... 23
¾ Configuration File................................................................... 26
¾ Uploading and Downloading the Configuration File ............... 50
This chapter describes how to install and configure the module to work with your application. The configuration process consists of the following steps.
1 Modify the module's configuration files to meet the needs of your application,
and copy the updated configuration to the module. Example configuration files are provided on the CD-ROM. Refer to the Modifying the Example Configuration File section, later in this chapter, for more information on the configuration files.
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. Before installing and configuring the module, design the application. Determine
the number points for each data type. Review the Application Design section to aid in application design.
It is now time to edit the DNP.CFG file to set up the module for the specific application. Refer to the Configuration File section of this document. Download this configuration to the module along with the associated ladder logic.
The next step in installing and configuring the module is to define whether the block transfer or side-connect interface will be utilized. If the block transfer interface is to be used you should be ready to connect the module to the DNP network if the ladder logic is defined correctly. If the side-connect interface is to be used, you must obtain the side-connect kit, which is sold separately.
ProSoft Technology, Inc. Page 21 of 172 August 23, 2007
MVI71-DNP PLC Platform Installing and Configuring the Module DNP 3.0 Master/Slave Communication Module
If the side-connect interface is utilized, make sure the file SC_DATA.TXT on the Compact Flash Disk contains the correct first file number. You can run the setdnpsc.exe program to set the file number to be used with your application. Install the module in the rack and turn on the power. Connect the terminal server to the module's debug/configuration port and exit the program by pressing the Esc key followed by the 'X' key. This will cause the program to exit and remain at the operating system prompt. Run the setdnpsc.exe program with a command line argument of the file number to use for the first file. For example, to select N10: as the first file, enter the following:
SETDNPSC 10 The program will build the SC_DATA.TXT on the Compact Flash Disk (C: drive in
the root directory). The next step in module setup is to define the data files to be used with the
application. If the block transfer interface is used, define the data files to hold the user data (read and write data). Enter the ladder logic to handle the blocks transferred between the module and the PLC. Download the program to the PLC and test the program with the module.
If the side-connect interface is used, no ladder logic is required for data transfer. The user data files to interface with the module must reside in contiguous order in the processor. The first file to be used by the interface is the status/control file. This is file number set in the SC_DATA.TXT file using the SETDNPSC.EXE program. The following table lists the files used by the side-connect interface:
Cfg+# File # File Size Description
0 N 150
1 N Reserved 2 N 124 Error/Status and Error List data destination 3 N (960 max) Digital input data source 4 N (960 max) Digital output data source 5 N (960 max) Counter data source and destination 6 N (960 max) Analog input data source 7 N (960 max) Analog output data destination 8 N (960 max) IED digital input data destination 9 N (960 max) IED digital output data source 10 N (960 max) IED counter data destination 11 N (960 max) IED analog input data destination 12 N (960 max) IED analog output data source 13 F (240 max) DNP slave floating-point input data 14 N Reserved 15 F (240 max) DNP slave floating-point output data 16 N Reserved
Command control data starting at offset 80 (80 to 143 data area)
n is the number of read data files minus one. Each file contains up to a maximum of 960 words.
Page 22 of 172 ProSoft Technology, Inc.
August 23, 2007
Installing and Configuring the Module MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
Special care must be taken when defining the files for the side-connect interface. Because the module directly interacts with the PLC processor and its memory, any errors in the configuration may cause the processor to fault and it may even lose its configuration and program. After defining the files and populating them with the correct data, download the program to the processor, and place the processor in run mode. If everything is configured correctly, the module should start its normal operation.
The module is now and ready to be used with your application. Insert the module in the rack (with the power turned off) and attach the serial communication cable. Download the new application to the controller and place the processor in run mode. Download the new DNP.CFGfile to the module using a terminal emulation program. If all the configuration parameters are set correctly and the module is attached to a network, the module's Application LED (APP LED) should remain off and the backplane activity LED (BP ACT) should blink very rapidly. Refer to the Diagnostics and Trouble Shooting section if you encounter errors. Attach a computer or terminal to Port 0 on the module and look at the status of the module using the Configuration/Debug Menu in the module.
2.1 Module Data
All data related to the MVI71-DNP module is stored in a user defined data file. It is the responsibility of the ladder logic programmer to construct all the data files required by the program and to write the ladder logic required to interface to these files.
2.1.1 Status Data
When the side-connect interface is employed in the application, the status data is automatically transferred from the module to the first file used by the interface. The data is placed at an offset of 0 in the file and has the following format:
Word Variable Name Description
0 Scan Counter
1 to 2 Product Name (ASCII)
3 to 4 Revision (ASCII)
5 to 6
7 to 8
9 Read Block Count
10 Write Block Count
11 Parse Block Count
Operating System Revision (ASCII)
Production Run Number (ASCII)
Program scan counter incremented each time the program loop is executed.
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.
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.
Total number of blocks transferred from the module to the processor.
Total number of blocks transferred from the processor to the module.
Total number of blocks parsed by the module that were received from the processor.
ProSoft Technology, Inc. Page 23 of 172 August 23, 2007
MVI71-DNP PLC Platform Installing and Configuring the Module DNP 3.0 Master/Slave Communication Module
Word Variable Name Description
12 Block number error
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
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) 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)
Number of BTW requests that resulted in an incorrect BTW identification code.
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.
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.
Page 24 of 172 ProSoft Technology, Inc.
August 23, 2007
Installing and Configuring the Module MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
Word Variable Name Description
28
29
30
31
32 Free MemoryLSB 33 Free MemoryMSB
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)
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.
Free memory in module
When the block transfer interface is used, the status data is placed in the module's internal database. If this data area is transferred to the processor in the read data area, it will be passed from the module to the processor in a normal BTR block. The format of the data is exactly the same as shown above, but the user determines its position. Refer to the Reference Chapter for a complete listing of the data stored in this object.
2.1.2 User Data
When the side-connect interface is utilized, the read and write data is moved between the module and the processor without any ladder logic. The size of the data area and position of the data areas in the module's database is determined by the parameters set in the configuration file.
When the block transfer interface is used, ladder logic is required to page the data between the module and the processor. The size of the data area and position of the data areas in the module's database is determined by the parameters set in the configuration file.
Module data is paged up to 60 words at a time from the module to the processor. The Ladder Logic task is responsible for placing the data received into the proper position in the data files.
ProSoft Technology, Inc. Page 25 of 172 August 23, 2007
MVI71-DNP PLC Platform Installing and Configuring the Module DNP 3.0 Master/Slave Communication Module
2.2 Configuration File
In order for the module to operate, a configuration file (DNP.CFG) is required. This configuration file contains information to set the data transfer characteristics between the module and the processor, to configure the communication information, to establish the DNP protocol parameters and to define the databases required to hold the protocol data sets. Each parameter in the file must be set carefully in order for the application to be implemented successfully. Before editing the file, design your system using the forms located in the Reference chapter of this document.
The configuration file is separated into sections with topic header names enclosed in the [ ] characters. The configuration file consists of the following topics:
[Section] Description
[Module] General Module configuration section [DNP Slave] DNP slave protocol definitions [DNP Slave Database] Database definition for the DNP slave driver [DNP Slave Binary Inputs]
[DNP Slave Analog Inputs]
[DNP Slave Float Inputs]
[Secondary Port]
[DNP Master] Definitions of the DNP Master port on the module if utilized [IED Database]
[DNP Master Slave List]
[DNP Master Commands]
Class assignments for each binary input point in the DNP database. These assignments will override the default setting.
Class and deadband assignments for each analog input point in the DNP database. These assignments will override the default settings.
Class and deadband assignments for each analog floating­point input point in the DNP database. These assignments will override the default settings.
Communication settings for the secondary port on the module (secondary slave or master port)
Database definition for the DNP Master port to hold data to interface with the IEDs.
Slave set up information for the DNP Master port. This list contains the settings required for each IED unit the master will interface with.
This list contains the command list to be utilized by the DNP Master port. These commands will be issued to configured IED units.
After each section header, the file contains a set of parameters. Unique labels are used under each section to specify a parameter. Each label in the file must be entered exactly as shown in the file for the parameter to be identified by the program. If the module is not considering a parameter, look at the label for the data item. Each parameter's value is separated from the label with the ':' character. This character is used by the program to delimit the position in the data record where to start reading data. All data for a parameter must be placed after the ':' character. For numeric parameter values any text located after the value will not be used. There must be at least one space character between the end of the parameter value and the following text. The following example shows a parameter entry:
Page 26 of 172 ProSoft Technology, Inc.
August 23, 2007
Installing and Configuring the Module MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
RTS On : 6 #Set RTS On delay value from 0 to 65535 milliseconds
The parameter label is "RTS On" and the parameter value is 6. The characters after the parameter value are ignored and are used for internal documentation of the configuration file.
Any record that begins with the '#' character is considered to be a comment record. These records can be placed anywhere in the file as long as the '#' character is found in the first column of the line. These lines are ignored in the file and can be used to provide documentation within the configuration file. Liberal use of comments within the file can ease the use and interpretation of the data in the file.
Sections of the configuration file that contain lists of data are formatted differently. Each list begins with the label START and ends when the END label is reached. When entering the list data, make certain that the first character in each line is left blank.
2.2.1 [Module]
Module Name
0 to 80 characters 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.
2.2.2 [DNP Slave]
This section provides information required to configure a slave application with the module. Most entries contained within this section are self explanatory with the possible exception of the Use IP List directive. This directive instructs the module to verify the address of the received message and ignore the message if it is not on our list of acceptable clients. Another item of concern is the maximum size of the total database, although it is possible to configure a database of considerable size, this would not work, as the maximum Class 0 request may not exceed 2048 bytes in size.
The following example shows a sample [DNP Slave] section:
# This section is used to define the configuration for the Module. # port. This port will receive requests from a remote DNP master unit. # [DNP Slave] Internal Slave ID : 6 #0-65534 slave identification code for this unit # DNP slave communication port configuration Baud Rate : 19200 #Baud rate for port 110-115200 RTS On : 0 #0-32000 mSec before message RTS Off : 0 #0-32000 mSec after message Min Response Delay : 0 #0-32000 mSec before response sent from slave
# DNP slave modem configuration Modem : No #Use a dial-up modem on this port (Yes or No)
ProSoft Technology, Inc. Page 27 of 172 August 23, 2007
MVI71-DNP PLC Platform Installing and Configuring the Module DNP 3.0 Master/Slave Communication Module
Connect Timeout : 20000 #0-65535 milliseconds before connect timeout First Character Delay : 1000 #0-65535 milliseconds before 1st char after connect Redial Delay Time : 100 #0-65535 1/10 seconds min before redial attempt Redial Random Delay : 150 #0-65535 1/10 seconds random before redial attempt Idle Timeout : 200 #0-65535 1/10 seconds inactive timeout Phone Number : ATDT18001234567
# Collision Avoidance parameters Collision Avoidance : No #Use Collision Avoidance (Yes or No) CD Idle Time : 10 #0-32000 mSec min idle time before transmit CD Random Time : 15 #0-32000 mSec random idle time before transmit CD Time Before Receive : 5 #0-65535 milliseconds before receive
#Default Class Settings BI Class : 1 #Default class for binary input events AI Class : 2 #Default class for analog input events Float Class : 3 #Default class for float input events Double Class : 0 #(Not Used)
# DNP specific parameters AI Deadband : 10 #0-32767 analog deadband value for events Float Deadband : 10.0 #Single float deadband Double Deadband : 0 #(Not Used) Select/Operate Arm Time: 2000 #1-65535 milliseconds arm timeout for select/op outputs Write Time Interval : 60 #0-1440 minutes for time sync from master
Data Link Confirm Mode : Never #DL confirm mode (N=Never,S=Sometimes,A=Always) Data Link Confirm Tout : 1000 #1-65535 milliseconds DL confirm timeout Data Link Max Retry : 2 #0-255 maximum DL confirm retry count App Layer Confirm Tout : 2000 #1-65535 milliseconds App Layer confirm timeout
Unsolicited Response : No #Generate Unsolicited responses (Yes or No) Class 1 Unsol Resp Min : 2 #1-255 min number of events before send Class 2 Unsol Resp Min : 3 #1-255 min number of events before send Class 3 Unsol Resp Min : 4 #1-255 min number of events before send Unsol Resp Delay : 10000 #0-65535 milliseconds before events sent UResp Master Address : 2 #DNP address of master to send UResp data UResp Retry Count : 0 #0-255 Number of retries before switching ports
AI Events with time : No #timestamp AI Event data default (Yes or No) Time Sync Before Events: No #timesync module before events gen (Yes or No) Initialize DNP Database: No #Initialize the DNP Slave output database areas (Y/N)
Modify each parameter based on the needs of your application:
Internal Slave ID
Internal Slave ID : 6 #0-65534 slave identification code for this unit
This is the DNP address for the module. All messages with this address received from the master will be processed by the module. This example shows the slave identification code of 6.
Page 28 of 172 ProSoft Technology, Inc.
August 23, 2007
Installing and Configuring the Module MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
Baud Rate
Baud Rate : 19200 #Baud rate for port 110-115200
Primary DNP Port Baud Rate: 300, 600, 1200, 2400, 4800, 9600, 19200, 384 (38400) , 576 (57600), 115 (115200). The module has been tested for baud rates up to 19200.
RTS On
RTS On : 0 #0-65535 milliseconds before message
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.
RTS Off
RTS Off : 0 #0-65535 milliseconds after message
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 Response Delay
Min Response Delay : 0 #0-65535 milliseconds before response sent from slave
Minimum time between receiving a request and transmitting a response. Allows master time to disable transmitter on an RS-485 network.
Modem
Modem : No #Use a dial-up modem on this port (Yes or No)
This parameter defines if a dial-up modem is used on the secondary DNP slave port. A modem cannot be used if the port is configured as a master.
Connect Timeout
Connect Timeout : 20000 #0-65535 milliseconds before connect timeout
Defines the number of milliseconds to wait for the CD signal to be set high. The CD signal indicates a connection is made using a dial-up modem.
First Character Delay
First Character Delay : 1000 #0-65535 milliseconds before 1st char after connect
Defines the number of milliseconds to wait before sending the first message after the connection is first made. This delay only applies to the first packet sent to the modem.
Redial Delay Time
Redial Delay Time : 100 #0-65535 1/10 seconds min before redial attempt
Defines the minimum number of milliseconds to wait before a redial attempt is made by the slave.
ProSoft Technology, Inc. Page 29 of 172 August 23, 2007
MVI71-DNP PLC Platform Installing and Configuring the Module DNP 3.0 Master/Slave Communication Module
Redial Random Delay
Redial Random Delay : 150 #0-65535 1/10 seconds random before redial attempt
Defines a random millisecond time range to be added to the redial delay time before the modem is accessed.
Idle Timeout
Idle Timeout : 200 #0-65535 1/10 seconds inactive timeout
Defines the number of milliseconds the modem is inactive before it will disconnect.
Phone Number
Phone Number : ATDT18001234567
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 ATDT18001234567. Maximum length is 34 bytes including the terminating 0.
Collision Avoidance
Collision Avoidance : No #Use Collision Avoidance (Yes or No)
This parameter defines if collision avoidance will be utilized on the primary DNP slave port.
CD Idle Time
CD Idle Time : 10 #0-32000 mSec min idle time before transmit
Defines the minimum number of milliseconds to wait before transmitting a message after the CD signal is recognized as low.
CD Random Time
CD Random Time : 15 #0-32000 mSec random idle time before transmit
Defines the range of random time to be added to the CD Idle Time before a message will be transmitted from the slave.
CD Time Before Receive
CD Time Before Receive : 5 #0-65535 milliseconds before receive
Defines the number of milliseconds to wait before receiving characters after the CD signal is recognized as high.
BI Class
0=disable, else 1 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.
Page 30 of 172 ProSoft Technology, Inc.
August 23, 2007
Installing and Configuring the Module MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
AI Class
0=disable, else 1 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=disable, else 1 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
AI Deadband : 1 #0-32767 analog deadband value for events
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
Float Deadband : 1000.0 #Single float deadband
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.
Double Deadband
Double Deadband : 4000.0 #Double float deadband (Not Used)
This parameter specifies the default deadband value assigned to all points not defined in the override list for the double floating-point input point type in the DNP database.
Select/Operate Arm Time
Select/Operate Arm Time: 2000 #1-65535 milliseconds arm timeout for select/op outputs
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.
Write Time Interval
Write Time Interval : 60 #0-1440 minutes for time sync from master
Time interval to set the need time IIN bit (0=never), which will cause the master to write the time. For example, if this parameter is configured for 60 minutes, it would mean 60 minutes after the last write date and time request. The module would set the "Need Time" bit again.
ProSoft Technology, Inc. Page 31 of 172 August 23, 2007
MVI71-DNP PLC Platform Installing and Configuring the Module DNP 3.0 Master/Slave Communication Module
Data Link Confirm Mode
Data Link Confirm Mode : Never #DL confirm mode (N=Never, S=Sometimes, A=Always)
IED can request acknowledgement from master station when sending data. The codes are as follows: 0=Never, 1=Sometimes, 2=Always.
Data Link Confirm Tout
Data Link Confirm Tout : 1000 #1-65535 milliseconds DL confirm timeout
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.
Data Link Max Retry
Data Link Max Retry : 2 #0-255 maximum DL confirm retry count
Maximum number of retries at the Data Link 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.
App Layer Confirm Tout
App Layer Confirm Tout : 2000 #1-65535 milliseconds App Layer confirm timeout
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.
Unsolicited Response
Unsolicited Response : No #Generate Unsolicited responses (Yes or No)
Set if the slave unit will send unsolicited response messages. If set to No, the slave will not send unsolicited responses. If set to Yes, the slave will send unsolicited responses. The module will send the event when one of the following conditions are satisfied:
1 Minimum number of events is reached 2 Delay time is reached
Class 1 Unsol Resp Min
Class 1 Unsol Resp Min : 10 #1-255 min number of events before send
Minimum number of events in Class 1 required before an unsolicited response will be generated.
Class 2 Unsol Resp Min
Class 2 Unsol Resp Min : 10 #1-255 min number of events before send
Minimum number of events in Class 2 required before an unsolicited response will be generated.
Page 32 of 172 ProSoft Technology, Inc.
August 23, 2007
Installing and Configuring the Module MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
Class 3 Unsol Resp Min
Class 3 Unsol Resp Min : 10 #1-255 min number of events before send
Minimum number of events in Class 3 required before an unsolicited response will be generated.
Unsol Resp Delay
Unsol Resp Delay : 2000 #0-65535 milliseconds before events sent
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.
UResp Master Address
UResp Master Address : 1 #DNP address of master to send UResp data
DNP destination address where unsolicited response messages are sent.
UResp Retry Count
UResp Retry Count : 0 #0-255 Number of retries before switching ports
Determines the number of unsolicited message retries sent on primary DNP port before changing to secondary port. If the value is 0, port switching will be disabled.
AI Events with Time
AI Events with time : No #timestamp AI Event data default (Yes or No)
This parameter sets if the analog input events 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.
Time Sync Before Events
Time Sync Before Events: No #timesync module before events gen (Yes or No)
This parameter determines if events are to be generated by the module before the time synchronization from the master unit. If the parameter is set to Yes, no events will be generated until the module's time has been synchronized. If the parameter is set to No, events will always be generated.
Initialize DNP Database
Initialize DNP Database: No #Initialize the DNP Slave output database areas (Y/N)
This parameter determines if the module will request data from the processor to initialize the DNP database output data areas. During the first scan, the module will read all output points from the processor to initialize its internal database.
ProSoft Technology, Inc. Page 33 of 172 August 23, 2007
MVI71-DNP PLC Platform Installing and Configuring the Module DNP 3.0 Master/Slave Communication Module
2.2.3 [DNP Slave Database]
The following shows an example [DNP Slave Database] section:
[DNP Slave Database] Binary Inputs : 160 #0-8000 point count to hold BI data PLC Binary Inputs : 160 #0-8000 BI point count from PLC Analog Inputs : 10 #0-500 points of analog input data PLC Analog Inputs : 10 #0-500 analog input points from PLC Float Inputs : 10 #0-250 points of floating-point format data PLC Float Inputs : 10 #0-250 points of floating-point format data Double Inputs : 0 #(Not Used) PLC Double Inputs : 0 #(Not Used) Counters : 10 #0-250 points of counter data PLC Counters : 10 #0-250 counter points from PLC Binary Outputs : 160 #0-2000 point count to hold BO data PLC Binary Outputs : 160 #0-2000 BO point count from PLC Analog Outputs : 10 #0-500 points of analog output data PLC Analog Outputs : 10 #0-500 analog output points from PLC Float Outputs : 10 #0-250 points of floating-point format data PLC Float Outputs : 10 #0-250 points of floating-point format data Double Outputs : 0 #(Not Used) PLC Double Outputs : 0 #(Not Used)
Edit each parameter as required for your application. The following topics describe each parameter.
Binary Inputs
Binary Inputs : 160 #0-8000 point count to hold BI data
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.
PLC Binary Inputs
PLC Binary Inputs : 160 #0-8000 BI point count from PLC
Number of digital input points configured above that are to be obtained from the processor. All other binary input points must come from the attached IED units.
Analog Inputs
Analog Inputs : 50 #0-500 points of analog input data
Number of analog input points to configure in the DNP slave device. Each point will occupy a one word area in the module memory.
PLC Analog Inputs
PLC Analog Inputs : 50 #0-500 analog input points from PLC
Number of analog input points configured above that are to be obtained from the processor. All other analog input points must come from the attached IED units.
Page 34 of 172 ProSoft Technology, Inc.
August 23, 2007
Installing and Configuring the Module MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
Float Inputs
Float Inputs : 5 #0 to 250 points of floating-point format data
Number of floating-point input points to configure in the DNP slave device. Each point will occupy a two-word area in the module memory.
PLC Float Inputs
PLC Float Inputs : 5 #0-250 points of floating-point format data
Number of floating-point input points configured above that are to be obtained from the PLC.
Counters
Counters : 20 #0-250 points of counter data
Number of counter points to configure in the DNP 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.
PLC Counters
PLC Counters : 20 #0-250 counter points from PLC
Number of counter points configured above that are to be obtained from the processor. All other counter points must come from the attached IED units.
Binary Outputs
Binary Outputs : 160 #0-2000 point count to hold BO data
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.
PLC Binary Outputs
PLC Binary Outputs : 160 #0-2000 BO point count from PLC
Number of digital output points configured above that are to be sent to the processor. All other binary output points will be sent to the attached IED units.
Analog Outputs
Analog Outputs : 28 #0-500 points of analog output data
Number of analog output points to configure in the DNP slave device. Each point will occupy a one word area in the module memory.
PLC Analog Outputs
PLC Analog Outputs : 28 #0-500 analog output points from PLC
Number of analog output points configured above that are to be sent to the processor. All other analog output points will be sent to the attached IED units.
ProSoft Technology, Inc. Page 35 of 172 August 23, 2007
MVI71-DNP PLC Platform Installing and Configuring the Module DNP 3.0 Master/Slave Communication Module
Float Outputs
Float Outputs : 4 #0-250 points of floating-point format data
Number of floating-point output points to configure in the DNP slave device. Each point will occupy a two- word area in the module memory.
PLC Float Outputs
PLC Float Outputs : 4 #0-250 points of floating-point format data
Number of floating-point output points configured above that are to be sent to the processor.
2.2.4 [DNP Slave Binary Inputs]
This section of the configuration file overrides the Class 2 binary database points. Enter the list of points between the start and end labels:
[DNP Slave Binary Inputs] # This area is to override the class (2) binary input database points. # # Point# Class Start # 0 1 # 1 2 # 2 3 # 3 0 #Events will never be generated for this point End
This section takes the following parameters:
Parameter Number
1 Point # This is the information object address of the point. 2 Class Class 1 – Highest priority
Parameter Name Parameter Description
Class 2 – Middle priority Class 3 – Lowest priority 0 – Disable.
2.2.5 [DNP Slave Analog Inputs]
This section of the configuration file overrides the Class 3 and deadband for the integer analog input database. The point number is the offset from the start of the analog input database.
[DNP Slave Analog Inputs] # This area is to override the class (3) and deadband for the integer analog # input database. The point # is the offset from the start of the analog # input database. # # Point# Class Deadband Start # 6 1 2000 #points 0-5=class 1, deadband = 1000 # 7 1 2000 # 8 2 1000 End
Page 36 of 172 ProSoft Technology, Inc.
August 23, 2007
Installing and Configuring the Module MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
This section takes the following parameters:
Parameter Number
1 Point # This is the information object address of the point. 2 Class Class 1 – Highest priority
3 Deadband
Parameter Name Parameter Description
Class 2 – Middle priority Class 3 – Lowest priority 0 – Disable A range of values within which the module will avoid
generating events.
2.2.6 [DNP Slave Float Inputs]
This area overrides the Class 3 and deadband for the single float database. The point number is not the address in the analog database, but rather the offset from the start of the single floating-point database.
[DNP Slave Float Inputs] # This area is to override the class (3) and deadband for the single float # database. The point # is not the address in the analog database, but is # the offset from the start of the single floating-point database. # # Point# Class Deadband Start 0 1 100. 1 2 12.34 3 0 13.45 #Events will never be generated for this point 4 2 3000.0 #points 5 to 11=class 1, deadband = 1000.00 End
This section takes the following parameters:
Parameter Number
1 Point # This is the information object address of the point. 2 Class Class 1 – Highest priority
3 Deadband
Parameter Name Parameter Description
Class 2 – Middle priority Class 3 – Lowest priority 0 – Disable. A range of values within which the module will avoid
generating events.
2.2.7 [Secondary Port]
The following is an example of the [Secondary Port] section:
[Secondary Port] Type : M #' '=Disabled, M=Master, S=Slave Baud Rate : 19200 #Baud rate for port 110-115200 RTS On : 10 #0-65535 milliseconds before message RTS Off : 0 #0-65535 milliseconds after message Min Response Delay : 0 #0-65535 milliseconds before response sent from slave
ProSoft Technology, Inc. Page 37 of 172 August 23, 2007
MVI71-DNP PLC Platform Installing and Configuring the Module DNP 3.0 Master/Slave Communication Module
# Collision Avoidance parameters Collision Avoidance : No #Use Collision Avoidance (N=No, Y=Yes) CD Idle Time : 10 #0-32000 mSec min idle time before transmit CD Random Time : 20 #0-32000 mSec random idle time before transmit CD Time Before Receive : 6 #0-65535 milliseconds before receive
Configure each parameter to work with your application.
Type
Type : M #' '=Disabled, M=Master, S=Slave
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 : 19200 #Baud rate for port 110-115200
Secondary DNP Port Baud Rate: 300, 600, 1200, 2400, 4800, 9600, 19200, 384 (38400) , 576 (57600), 115 (115200).
RTS On
RTS On : 10 #0-65535 milliseconds before message
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.
RTS Off
RTS Off : 0 #0-65535 milliseconds after message
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.
Min Response Delay
Min Response Delay : 0 #0-65535 milliseconds before response sent from slave
Minimum time between receiving a request and transmitting a response. Allows master time to disable transmitter on an RS-485 network.
Collision Avoidance
Collision Avoidance : No #Use Collision Avoidance (N=No, Y=Yes)
This parameter defines if collision avoidance will be utilized on the primary DNP slave port.
Page 38 of 172 ProSoft Technology, Inc.
August 23, 2007
Installing and Configuring the Module MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
CD Idle Time
CD Idle Time : 10 #0-32000 mSec min idle time before transmit
Defines the minimum number of milliseconds to wait before transmitting a message after the CD signal is recognized as low.
CD Random Time
CD Random Time : 20 #0-32000 mSec random idle time before transmit
Defines the range of random time to be added to the CD Idle Time before a message will be transmitted from the slave.
CD Time Before Receive
CD Time Before Receive : 6 #0-65535 milliseconds before receive
Defines the number of milliseconds to wait before receiving characters after the CD signal is recognized as high.
2.2.8 [DNP Master]
The following shows an example of the [DNP Master] section:
[DNP Master] Internal ID : 1 #0-65534 identification code for this unit Initialize IED Database: Yes #Initialize the IED input database areas (Y/N) Event Messages to PLC : Yes #Pass received events to processor (Y/N)
Configure each parameter to suit the needs of your application:
Internal ID
Internal ID : 1 #0-65534 identification code for this unit
This is the DNP address for the module. All messages with this address from the master will be processed by the module.
Initialize IED Database
Initialize IED Database: Yes #Initialize the IED input database areas (Y/N)
This parameter determines if the module will request 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.
Event Messages to PLC
Event Messages to PLC : Yes #Pass received events to processor (Y/N)
Enables the pass-through functionality that allows the module to pass received timestamp events from the remote slave device to the processor. It requires the configuration of block 9903 in the backplane command section. Refer to the Block 9903 section of this User Manual for further information.
ProSoft Technology, Inc. Page 39 of 172 August 23, 2007
MVI71-DNP PLC Platform Installing and Configuring the Module DNP 3.0 Master/Slave Communication Module
2.2.9 [IED Database]
The following shows an example of an [IED Database] section:
[IED Database] Binary Inputs : 160 #0-2048 point count to hold BI data Analog Inputs : 50 #0-256 points of analog input data Counters : 10 #0-64 points of counter data Binary Outputs : 48 #0-2048 point count to hold BO data Analog Outputs : 8 #0-128 points of analog output data
Binary Inputs
Binary Inputs : 160 #0-2048 point count to hold BI data
Number of binary input points contained in the IED database to transfer to the processor and obtained from the attached IED units.
Analog Inputs
Analog Inputs : 50 #0-256 points of analog input data
Number of analog input points contained in the IED database to transfer to the processor and obtained from the attached IED units.
Counters
Counters : 10 #0-64 points of counter data
Number of counter points contained in the IED database to transfer to the processor and obtained from the attached IED units.
Binary Outputs
Binary Outputs : 48 #0-2048 point count to hold BO data
Number of binary output points contained in the IED database which are transferred from the processor and used by the attached IED units.
Analog Outputs
Analog Outputs : 8 #0-128 points of analog output data
Number of analog output points contained in the IED database, which are transferred from the processor and used by the attached IED units.
Page 40 of 172 ProSoft Technology, Inc.
August 23, 2007
Installing and Configuring the Module MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
2.2.10 [DNP Master Slave List]
The [DNP Master Slave List] section stores information about each slave being 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 and are described in the following two sections.
[DNP Master Slave List] # This section is used to store 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 # START # Node DL Conf Conf Conf App Rsp # Address Mode Timeout Retry Timeout Flags 32 0 1000 0 7000 9 END
2.2.11 [DNP Master Commands]
The [DNP Master Commands] 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. The module supports up to 100 commands.
The following shows an example of a [DNP Master Commands] section:
[DNP Master Commands] # 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. # START # 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 6 32 60 5 1 0 60 -1 -1 2 6 32 1 1 1 0 60 -1 0 5 6 32 30 1 1 0 50 -1 0 6 END
This section takes the following parameters:
Parameter Number
1 Flags/Enable See following topics for descriptions 2 Node Address
Parameter Name Parameter Description
ProSoft Technology, Inc. Page 41 of 172 August 23, 2007
MVI71-DNP PLC Platform Installing and Configuring the Module DNP 3.0 Master/Slave Communication Module
Parameter Number
3 Data Object 4 Data Variation 5 Cmd Func 6 Device Address 7 Point Count 8 DNP DB Address 9 IED DB Address 10 Poll Interval
Parameter Name Parameter Description
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
2 Enable/Disable Command (1=Enable, 0=Disable) 4 3 RBE Flag
4 to 7 Not Used
Communication port (0=Internal, 1=Port 1, 2=Port 2, 3=Port 3)
(0=Events from IED, 1=Events by module)
0 to 3
8
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
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
Communication port (0=Internal, 1=Port 1, 2=Port 2, 3=Port 3)
0 to 3
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)
Page 42 of 172 ProSoft Technology, Inc.
August 23, 2007
Installing and Configuring the Module MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
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.
Node 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. Be certain the slave configuration information is set up in the module for each slave defined in the command list.
Data 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.
Data Variation
This parameter is specific to the object type selected.
Cmd 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.
Device Address
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.
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.
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.
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 43 of 172 August 23, 2007
MVI71-DNP PLC Platform Installing and Configuring the Module DNP 3.0 Master/Slave Communication Module
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.
Binary Input Command Examples
Port/Flg Slave Object Var Func Addr
Word Value
Port/Flg Slave Object Var Func Addr
Word Value
0 1 2 3 4 5 6 7 8 9 6 15 1 0 1 0 -32 200 –1 2
0 1 2 3 4 5 6 7 8 9 6 15 1 0 1 0 -32 –1 0 2
Pnt Cnt
Pnt Cnt
DNP DB
DNP DB
IED DB
IED DB
Poll Int
Poll Int
Page 44 of 172 ProSoft Technology, Inc.
August 23, 2007
Installing and Configuring the Module MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
Word Value
Port/ Flg
0 1 2 3 4 5 6 7 8 9 14 15 1 0 1 0 -32 200 0 2
Slave Object Var Func Addr
Pnt Cnt
DNP DB
IED DB
Poll Int
Binary Output Command Examples
Word Value
Port/ Flg
0 1 2 3 4 5 6 7 8 9 14 15 12 1 5 10 2 200 0 0
Slave Object Var Func Addr
Pnt Cnt
DNP DB
IED DB
Poll Int
Word Value
Port/ Flg
0 1 2 3 4 5 6 7 8 9 30 15 12 1 5 10 1 0 25 0
Slave Object Var Func Addr
Pnt Cnt
DNP DB
IED DB
Poll Int
ProSoft Technology, Inc. Page 45 of 172 August 23, 2007
MVI71-DNP PLC Platform Installing and Configuring the Module DNP 3.0 Master/Slave Communication Module
Word Value
Port/ Flg
0 1 2 3 4 5 6 7 8 9 6 15 12 1 5 100 10 200 0 120
Slave Object Var
Fun c
Add r
Pnt Cnt
DNP DB
IED DB
Poll Int
2.2.12 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
2
3
4
5
DNP Slave Address
Data Link Confirm Mode
Data Link Confirm Time-out
Maximum Retries for Data Link Confirm
Application Layer Response Time­out
0 to 65534
Coded Value (0=Never, 1=Sometimes , 2=Always)
1 to 65535 milliseconds
0 to 255 retries
1 to 65535 milliseconds
This is the slave address for the unit to override the default values.
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.
Maximum number of retries at the Data Link 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.
Time-out period the master will wait for each response message fragment. If data link confirms are enabled, make sure the time-out period is set long enough to permit all data confirm retries.
Ignore
0
300
3
5000
Page 46 of 172 ProSoft Technology, Inc.
August 23, 2007
Installing and Configuring the Module MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
Column Variable Name Data Range Description IF Error
6 Slave Mode
Coded Value (Bit 0=Enable, Bit 1=Unsol Msg, Bit 2=Use DM, Bit 3=Auto Time Sync)
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 response 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.
5
2.2.13 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 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
2 Enable/Disable Command (1=Enable, 0=Disable) 4 3 RBE Flag(0=Events from IED, 1=Events by module) 8
Communication port (0=Internal, 2=Port 2, 3=Port 3). Any value from 1 to 3 sends out P2 (Master Port)
0 to 3
ProSoft Technology, Inc. Page 47 of 172 August 23, 2007
MVI71-DNP PLC Platform Installing and Configuring the Module DNP 3.0 Master/Slave Communication Module
Port/Flags Bits Description Decimal Equivalent
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
0 to 1
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
Communication port(0=Internal, 1=Port 1, 2=Port 2, 3=Port 3). Any value from 1 to 3 sends out P2 (Master Port)
Decimal Equivalent
0 to 3
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.
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. Be certain the slave configuration information is set up in the module for each slave defined in the command list.
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.
Variation
This parameter is specific to the object type selected.
Page 48 of 172 ProSoft Technology, Inc.
August 23, 2007
Installing and Configuring the Module MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
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.
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.
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.
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.
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.
The IED database is the only database that will send and receive data to and from the PLC processor.
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.
ProSoft Technology, Inc. Page 49 of 172 August 23, 2007
MVI71-DNP PLC Platform Installing and Configuring the Module DNP 3.0 Master/Slave Communication Module

2.3 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.
2.3.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.
2 Press [>] key (Send Module Configuration). The message "Press Y to
confirm configuration send!" is displayed at the bottom of the screen.
Page 50 of 172 ProSoft Technology, Inc.
August 23, 2007
Installing and Configuring the Module MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
3 Press [Y]. The module will automatically start a Zmodem file transfer. The
configuration file will be stored in the default file transfer folder on your PC.
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.
When the configuration file has been transferred to your PC, the dialog box will indicate that the transfer is complete.
The configuration file is now in a folder on your PC. To view the location of this folder, open the Transfer menu in Hyperterminal and choose Receive File.
4 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.
ProSoft Technology, Inc. Page 51 of 172 August 23, 2007
MVI71-DNP PLC Platform Installing and Configuring the Module DNP 3.0 Master/Slave Communication Module
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.3.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.
2 Press [<] (Receive Module Configuration). The message "Press Y key to
confirm configuration receive!" is displayed at the bottom of the screen.
Page 52 of 172 ProSoft Technology, Inc.
August 23, 2007
Installing and Configuring the Module MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
3 Press [Y]. The screen now indicates that the PC is ready to send.
4 From the Transfer menu in HyperTerminal, select Send File.
ProSoft Technology, Inc. Page 53 of 172 August 23, 2007
MVI71-DNP PLC Platform Installing and Configuring the Module DNP 3.0 Master/Slave Communication Module
The Send File dialog appears.
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 Zmodem as the protocol. 7 Click the Send button. This action opens the Zmodem File Send dialog box.
Page 54 of 172 ProSoft Technology, Inc.
August 23, 2007
Installing and Configuring the Module MVI71-DNP PLC Platform 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.
ProSoft Technology, Inc. Page 55 of 172 August 23, 2007
MVI71-DNP PLC Platform Installing and Configuring the Module DNP 3.0 Master/Slave Communication Module
Page 56 of 172 ProSoft Technology, Inc.
August 23, 2007

Ladder Logic MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module

3 Ladder Logic
Ladder logic is required for application of the MVI71-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.
ProSoft Technology, Inc. Page 57 of 172 August 23, 2007
MVI71-DNP PLC Platform Ladder Logic DNP 3.0 Master/Slave Communication Module
Page 58 of 172 ProSoft Technology, Inc.
August 23, 2007

Diagnostics and Troubleshooting MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module

4 Diagnostics and Troubleshooting
In This Chapter
¾ Reading Status Data From the Module.................................. 59
¾ LED Status Indicators ............................................................ 72
¾ Clearing a Fault Condition...................................................... 72
¾ Troubleshooting ..................................................................... 73
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 MVI71-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 status database and error status list. This data is transferred to the PLC processor read blocks with an identification code of 100. For a complete listing of the status data object, refer to the Installing and Configuring the Module section.
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 59 of 172 August 23, 2007
MVI71-DNP PLC 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 60 of 172 ProSoft Technology, Inc.
August 23, 2007
Diagnostics and Troubleshooting MVI71-DNP PLC 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 XON/XOFF
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 111).
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 61 of 172 August 23, 2007
MVI71-DNP PLC 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
Data Link Layer Messages
DPA Level Messages
Page 62 of 172 ProSoft Technology, Inc.
August 23, 2007
Diagnostics and Troubleshooting MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
Key None DNP Statistics
C X 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 63) 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 63 of 172 August 23, 2007
MVI71-DNP PLC 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 67).
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
Sending the Configuration File
(page 50).
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 50).
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 64 of 172 ProSoft Technology, Inc.
August 23, 2007
Diagnostics and Troubleshooting MVI71-DNP PLC 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.
ProSoft Technology, Inc. Page 65 of 172 August 23, 2007
MVI71-DNP PLC Platform Diagnostics and Troubleshooting DNP 3.0 Master/Slave Communication Module
The following illustration shows the output for the Analog data set (menu key [1])
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 66 of 172 ProSoft Technology, Inc.
August 23, 2007
Diagnostics and Troubleshooting MVI71-DNP PLC 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.
M = Main Menu
D = Database Me nu
? = Display Menu Redisplays (refreshes) this menu
0 – 5 = Pages 0 to 5000
S = Show Again Redisplays last selected page of data
– = Back 5 Pages
P = Previous Page
+ = Skip 5 Pages
N = Next Page
D = Decimal Display
H = Hexadecimal Display
F = Float Display
A = ASCII Display
M = Main Menu Goes up one level to main m enu
Selects page 0, 1000, 2000 or 3000
Goes back five pages of data
Goes back one page of data
Goes forward five pages of data
Goes forward one page of data
Displays data in decimal format
Displays data in hex format
Displays data in floating point format
Displays data in text format
ProSoft Technology, Inc. Page 67 of 172 August 23, 2007
MVI71-DNP PLC Platform Diagnostics and Troubleshooting DNP 3.0 Master/Slave Communication Module
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:
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 68 of 172 ProSoft Technology, Inc.
August 23, 2007
Diagnostics and Troubleshooting MVI71-DNP PLC 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 69 of 172 August 23, 2007
MVI71-DNP PLC 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.
Use keys [0] through [E] to view each range of commands. The following illustration shows the status of command 0.
Refer to Command List for a description of the fields on this list. The Last Poll field is the count timer compared to the user configured poll
interval. When the Last Poll value is >= to the poll interval, the command is ready to execute.
The Last Error field contains the value 65535 when the next command is
being executed. Refer to Command Error Codes explanation of other values that may appear in this field.
(page 138) for an
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.
Page 70 of 172 ProSoft Technology, Inc.
August 23, 2007
Diagnostics and Troubleshooting MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
Returning to the Main Menu
Press [M] to return to the Main Menu.
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.
Use keys [0] through [3] to view the command list for each group of slaves. The following illustration shows the status of slaves 0 and 1.
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 71 of 172 August 23, 2007
MVI71-DNP PLC 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:
ProSoft Module
CFG Green
BP ACT Amber
OK Red/
Color Status Indication
On
Off No data is being transferred on the Configuration/Debug port. On Data is being transferred by the module on Port 1. P1 Green Off No data is being transferred on the port. On Data is being transferred by the module on Port 2 P2 Green Off No data is being transferred on the port. On The MVI module is working normally. APP Amber Off
On
Off
Off
Green
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 MVI module program has recognized a communication error on one of its 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. Power down and remove the card from the rack and re­insert the card, then power up the rack.
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 the factory, as this is not a user serviceable item.
During module configuration, the OK LED will be red and the APP and BP ACT LEDs will be on. If the LEDs are latched in this mode for a long period of time, look at the configuration error words in the configuration request block.

4.3 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
Page 72 of 172 ProSoft Technology, Inc.
August 23, 2007
Diagnostics and Troubleshooting MVI71-DNP PLC Platform DNP 3.0 Master/Slave Communication Module
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 PLC
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.
4.4 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
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 Errors
Problem Description Steps to take
BP ACT LED remains off or blinks slowly
OK LED remains red
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.
ProSoft Technology, Inc. Page 73 of 172 August 23, 2007
MVI71-DNP PLC Platform Diagnostics and Troubleshooting DNP 3.0 Master/Slave Communication Module
Page 74 of 172 ProSoft Technology, Inc.
August 23, 2007
Reference MVI71-DNP ♦ PLC Platform DNP 3.0 Master/Slave Communication Module
5 Reference
In This Chapter
¾ Product Specifications............................................................ 75
¾ Functional Overview............................................................... 78
¾ Designing the system............................................................. 94
¾ Cable Connections............................................................... 111
¾ Collision Avoidance (DNP modules only)............................. 117
¾ Block Assignments............................................................... 118
¾ DNP Configuration Forms .................................................... 121
¾ MVI71-DNP Communication Module Configuration .............124
¾ Error Status Table ................................................................ 132
¾ Module Error Codes ............................................................. 136
¾ Command Error Codes ........................................................138
¾ Event Size Computation....................................................... 140
¾ Device Profile....................................................................... 141
¾ Slave Unit Device Profile Object Subset ..............................142
¾ Master Unit Device Profile Object Subset ............................ 150
5.1 Product Specifications
The MVI71 DNP 3.0 Master/Slave Communication Module is a single slot, backplane compatible DNP 3.0 interface solution for the PLC 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 PLC platform.
ProSoft Technology, Inc. Page 75 of 172 August 23, 2007
MVI71-DNP PLC Platform Reference DNP 3.0 Master/Slave Communication Module
5.1.1 Features and Benefits
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 PLC platform. The module acts as an input/output module between the DNP network and the PLC backplane. The data transfer from the PLC 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.2 General Specifications
Single Slot – 1771 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.
5.1.3 Hardware Specifications
Specification Description
Form Factor
Backplane current load 800 mA @ 5 V Operating temperature 0 to 60°C (32 to 140°F) Storage temperature –40 to 85°C (–40 to 185°F) Shock
Vibration 5 g from 10150 Hz Relative humidity 5% to 95% (non-condensing) LED Indicators
Debug/Configuration port (CFG)
CFG Port (P1)
Configuration Connector
Application Ports
Application Serial port (P2, P3) (Serial Modules)
Single Slot 1771 chassis compatible BTR/BTW data transfer Local or remote rack
30g operational 50g non-operational
Module status Backplane transfer status Application status Serial activity and error LED status
RJ45 (DB-9M with supplied cable) RS-232 only
RJ45 RS-232 Connector (RJ45 to DB-9 cable shipped with unit)
Two RJ45 RS-232/422/485 Application ports
Page 76 of 172 ProSoft Technology, Inc.
August 23, 2007
Reference MVI71-DNP ♦ PLC Platform DNP 3.0 Master/Slave Communication Module
5.1.4 Functional Specifications
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 PLC processor memory.
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)
Supports clock synchronization from a master or from the processor Up to 400 events are stored for Floats, Binary In and Analog In Inputs 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
DNP 3.0 ports (PRT1 & PRT2)
User-definable module memory usage Full radio, modem and multi-drop support Support for the storage and transfer of all DNP data types across the
backplane
Communication parameters
o Address: 0 to 65534 (slave mode) o Baud rate: 110 to 115K o Parity: none, data bits: 8, Stop bit: 1 o RTS on delay: 0 to 65535 milliseconds o RTS off delay: 0 to 65535 milliseconds
ProSoft Technology, Inc. Page 77 of 172 August 23, 2007
MVI71-DNP PLC Platform Reference DNP 3.0 Master/Slave Communication Module
5.2 Functional Overview
This section provides an overview of how the MVI71-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 topics describe several concepts that are important for understanding the operation of the MVI71-DNP module.
1 On power up the module begins performing the following logical functions: 2 Initialize hardware components
o Initialize PLC backplane driver o Test and Clear all RAM o Initialize the serial communication ports
3 Reads configuration from the DNP.CFG file 4 Allocate and initialize Module Register space 5 Enable Slave Driver on selected ports 6 Enable Master Driver on selected port if configured
After the module has received the Module Configuration, the module will begin communicating with other nodes on the network, depending on the configuration.
Module Power Up and Configuration
Configuration information is stored on the module's Compact Flash. Setup of the module requires software configuration using the RSLogix 5 program and the DNP.CFG configuration file on the Compact Flash. The easiest method to implement the module is to start with the example provided with the module (MVI71DNP.RSP) and the example configuration file (DNP.CFG). Module Configuration describes how to use and/or modify the two files.
If the DNP master port is to be used, the module reads the slave configuration information and builds the slave list during the configuration process. The module also reads the command list from the .CFG file. Valid commands will be added to the command list. Binary input, counter and analog input objects will be added to the point lists for each slave based on the commands processed. In addition, the RBE (Report By Exception) flags for the binary and analog input points are set in the RBE flag database.
The module next checks the DNP BO/AO (Binary Output / Analog Output) preset flag to determine if the DNP binary and analog output data must be read from the PLC. The option permits the PLC to set these read-only data at startup. There is no static memory available on the module to remember the last values for these data types. In order to prevent "shock" to the system at boot time, this option can be used to set the module's database to the last transferred set of data. Ladder logic must transfer the data to the module using BTR/BTW instructions for these data types.
Page 78 of 172 ProSoft Technology, Inc.
August 23, 2007
Reference MVI71-DNP ♦ PLC Platform DNP 3.0 Master/Slave Communication Module
The module now checks the IED (Intelligent Electronic Device) BI/AI/C (Binary Input / Analog Input / Counter) preset flag to determine if the IED binary and analog input and counter data must be read from the PLC. The option permits the PLC to set these read-only data at startup. There is no static memory available on the module to remember the last values for these data types. In order to prevent "shock" to the system at boot time, this option can be used to set the module's database to the last transferred set of data. Ladder logic must transfer the data to the module using the BTR/BTW instructions for these data types.
Main Logic Loop
Upon completing the power up configuration process, the module enters an infinite loop that performs the following functions:
From Power Up Logic
Call I/O Handler
Call CFG/DEBUG Port
Driver
Call Network Master &
Slave Drivers
Transfers data between the module and processor
Rx and Tx buffer routines are interrupt driven. Call to
serial port routines check to see if there is any data
in the buffer, and depending on the value, will either
service the buffer or wait for more characters.
Call Network Master & Slave D rivers
Call I/O Hand le r
(user, status, etc.)
Call Serial Port Driver
Generate messages and
respond to messages received.
Backplane Data Transfer
The MVI71-DNP module communicates directly over the PLC backplane. Data is paged between the module and the PLC processor across the backplane using BTR and BTW operations. Data is transferred from the module to the processor using the BTR blocks, and data is transferred from the processor to the module using BTW blocks.
ProSoft Technology, Inc. Page 79 of 172 August 23, 2007
MVI71-DNP PLC Platform Reference DNP 3.0 Master/Slave Communication Module
The following illustration shows the data transfer method used to move data between the PLC processor, the MVI71-DNP module, and the DNP network.
As shown in the diagram above, all data transferred between the module and the processor over the backplane is through the BTR and BTW blocks. Ladder logic must be written in the PLC processor to interface the block data with user data files. All data used by the module is stored in its internal databases. These databases are defined as virtual DNP data tables with addresses from 0 to the maximum number of points for each data type. The following illustration shows the layout of the databases:
DATA AREA BLOCKS
DNP DATA BINARY INPUTS PLC DATA 0 to 15 IED DATA BINARY OUTPUTS PLC DATA 20 to 35 IED DATA COUNTER DATA PLC DATA 40 to 55 IED DATA ANALOG INPUTS PLC DATA 60 to 75 IED DATA ANALOG OUTPUTS PLC DATA 80 to 95 IED DATA FLOAT INPUTS PLC DATA 1100 to 1107
Page 80 of 172 ProSoft Technology, Inc.
August 23, 2007
Reference MVI71-DNP ♦ PLC Platform DNP 3.0 Master/Slave Communication Module
DATA AREA BLOCKS
FLOAT OUTPUTS PLC DATA 1140 to 1147
FROZEN COUNTER DATA
BINARY INPUT EVENTS
ANALOG INPUT EVENTS
FLOAT INPUT EVENTS
LAST VALUE DATA
ANALOG INPUTS FLOAT INPUTS DNP BINARY OUTPUTS DNP ANALOG OUTPUTS IED BINARY OUTPUTS IED ANALOG OUTPUTS IED DATA BINARY INPUTS 1000 to 1015 BINARY OUTPUTS 1020 to 1035 COUNTER DATA 1040 to 1055 ANALOG INPUTS 1060 to 1075 ANALOG OUTPUTS 1080 to 1095 RBE FLAGS BINARY INPUT ANALOG INPUT
BINARY INPUTS
Data contained in this database is paged through the BTR and BTW images by coordination of the PLC ladder logic and the MVI71-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.
Each block transferred from the module to the processor or from the processor to the module contains a block identification code that describes the content of the block. The following table defines the blocks used by this module:
Data Type Start Block # Max Block # Max # of Points
Digital Input 0 15 15360 Digital Output 20 35 15360 Counters 40 55 480 Analog Input 60 75 960 Analog Output 80 95 960 IED Digital Input 1000 1015 15360 IED Digital Output 1020 1035 15360 IED Counters 1040 1055 480
ProSoft Technology, Inc. Page 81 of 172 August 23, 2007
MVI71-DNP PLC Platform Reference DNP 3.0 Master/Slave Communication Module
Data Type Start Block # Max Block # Max # of Points
IED Analog Input 1060 1075 960 IED Analog
Output Float Input 1100 1107 240 Float Output 1140 1147 240
1080 1095 960
Reserved Block Numbers
Block Number Function/Description
249 or 9949 Read Slave Communication Error Table block 250 or 9950 Read Command Error List Block 251 DNP Slave Status/Error Block from module 252 DNP Error List Block from module 253 or 9999 Cold Boot Request from PLC (Block contains no data) 254 Dummy Block: Used by module when no data is to be transferred 255 or 9998 Warm Boot Request 258 or 9958 PLC Binary Input Event data (FUTURE) 259 or 9959 PLC Analog Input Event Data (FUTURE) 270 or 9970 Set PLC time using module's DNP time 271 or 9971 Set module's time using PLC time 297 or 9901 CROB Control Block for Digital Outputs 299 or 9902 Command Control Block (Add command to Command List Queue) 9903 Event message block from module to processor (Master Driver)
Blocks 1 through 149 transfer data between the module and the processor. Blocks 1000 to 1148 transfer the initial output databases (binary and analog output data) from the processor to the module at startup. Blocks 9958 to 9999 are used for command control of the module. Each group of blocks are described in the following topics.
Module DNP Protocol Operation
Unsolicited Messaging
If the module is configured for unsolicited messaging, the module immediately sends an unsolicited response out Port 1 (Primary DNP port) informing the master of a module restart. The module will not log events or process any data read operations from the master until the master clears the restart IIN data bit. The master must also synchronize the time with the module before events are generated if the module is so configured. The master is also responsible for enabling the unsolicited message facility in the module by sending the Enable Unsolicited Messaging command to the module.
Page 82 of 172 ProSoft Technology, Inc.
August 23, 2007
Reference MVI71-DNP ♦ PLC Platform DNP 3.0 Master/Slave Communication Module
Solicited Messaging
If the module is not configured for unsolicited messaging, the program listens on Port 1 for DNP messages from a DNP master and sends responses to requests after initialization. The DNP master must clear the restart IIN bit before the module starts logging events. The master must also synchronize the time with the module before events are generated if the module is so configured.
If the DNP master port is used, the port starts processing the command list. It sends commands and requests out the port to slave units. Data acquired is placed in the correct database in the module. Event messages received from the IED units are placed directly in the event buffer or the values are placed in the database. The communication statistics for each slave unit is tracked by the module and is available for the PLC to request.
While the program is running, a status/error table is maintained. This data is automatically passed to the PLC at a frequency set in the configuration. Refer to the following section on the contents of the table.
If an error is encountered in the module's program, it is logged to the error list maintained by the system. The program maintains a list of the last 60 errors. This data is automatically passed to the PLC at a frequency set in the configuration. Refer to the following section on the error codes contained in the list.
If the module is configured to use the secondary slave DNP port (Port 2), the module may automatically switch communications to that port under the following conditions:
If the module receives a request on the port from the master If unsolicited messages are enabled and the module is configured to switch to
the port if application confirm messages are not received while using the primary port (user sets the number of reties in the configuration)
Communications will switch back to the primary DNP port when the module receives a message on that port. If the module restarts, communications will always be attempted on the primary DNP port first.
ProSoft Technology, Inc. Page 83 of 172 August 23, 2007
MVI71-DNP PLC Platform Reference DNP 3.0 Master/Slave Communication Module
Normal Data Transfer
Normal data transfer includes the paging of the user data found in the module's internal databases between the module and the controller. These data are transferred through read (BTR) and write (BTW) blocks. Refer to the Module Configuration section for a description of the data objects used with the blocks and the ladder logic required. Each data block transferred between the module and the processor has a specific block identification code that defines the data set contained in the block. The following illustration shows the direction of movement of the DNP data types between the module and the processor:
DNP MEMORY
WRITE BLOCK FROM
PROCESSOR
WRITE BLOCK FROM
PROCESSOR
READ BLOCK FROM
MODULE
READ BLOCK FROM
MODULE
DIGITAL INPUT DATA ANALOG INPUT DATA
COUNTER DATA
BINARY OUTPUT DATA
READ BLOCK FROM
MODULE
READ BLOCK FROM
MODULE
ANALOG OUTPUT DATA
FROZEN COUNTER, LAST VALUE AND EVENT DATA
The structure and function of each block is described in the following topics:
Read Block
These blocks of data transfer information from the module to the PLC processor. The structure of the BTR image used to transfer this data is shown in the following table:
Block Offset Content
0 Read block ID 1 Write block ID 2 to 61 Read data 62 to 63 Spare (Not used)
The Read Block ID is an index value used to determine the location of where the data will be placed in the PLC processor user data file. Each transfer can move up to 60 words (block offsets 2 to 61) of data.
Page 84 of 172 ProSoft Technology, Inc.
August 23, 2007
Reference MVI71-DNP ♦ PLC Platform DNP 3.0 Master/Slave Communication Module
The Write Block ID associated with the block requests data from the PLC processor. Under normal, program operation, the module sequentially sends read blocks and requests write blocks. For example, if two blocks of read data and three blocks of write data are to be moved between the module and the processor, the sequence will be as follows:
R1W1
R2W2 R1W3 R2W1 R1W2 R2W3 R1W1
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.
Write Block
These blocks of data transfer information from the PLC processor to the module. The structure of the BTW image used to transfer this data is shown in the following table:
Block Offset Content
0 Write block ID 1 to 60 Write data 61 to 63 Spare (Not used)
The Write Block ID is an index value used to determine the location in the module's database where the data will be placed. Each transfer can move up to 60 words (block offsets 1 to 60) of data.
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 is discussed in the following topics.
Block 9958 or 258 – PLC Binary Input Event
If the PLC 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 event message is shown in the following table.
Word Offset in Block Data Field(s) Description
0 Block ID
1 Event Count
2
3
4 Month/Day/State
Sequence Counter
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 12.
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.
ProSoft Technology, Inc. Page 85 of 172 August 23, 2007
MVI71-DNP PLC Platform Reference DNP 3.0 Master/Slave Communication Module
Word Offset in Block Data Field(s) Description
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. 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 62 Five words of data for Event #12. 63 Spare Not Used
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.
Up to 12 events can be passed from the PLC to the module in each block. To ensure that the block reached the module and was processed, the module will send a response read block 9958 to the PLC. The format of the block is shown in the following table.
Word Offset in Block Data Field(s) Description
0 Block ID Identification code for block set to 9958. 1 Block ID
2 Event Count
Sequence This field contains the sequence counter of 3 Counter the last successful block 9958 received.
4 to 63 Spare Not used
Block identification code for request from PLC by the module.
This field contains the number of events processed by the module.
The sequence counter field in the returned block is set to the last successfully processed block 9958 from the PLC. Compare this value to that sent by the PLC. If the values match, the events can be removed from the PLC. If the values do not match, or the PLC does not receive a 9958 block, the PLC must re-send the block.
Block 9959 or 259 – PLC Analog Input Event
If the PLC 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.
Page 86 of 172 ProSoft Technology, Inc.
August 23, 2007
Reference MVI71-DNP ♦ PLC Platform DNP 3.0 Master/Slave Communication Module
Word Offset in Block Data Field(s) Description
0 Block ID
1 Event Count
2
3
4
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 62 Six words of data for Event #10. 63 Spare Not Used
Sequence Counter
DNP Analog Input Data point
Analog Input Value
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 10.
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.
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.
Up to 10 events can be passed from the PLC to the module in each block. To ensure that the block reached the module and was processed, the module will send a response read block 9959 to the PLC. The format of the block is shown in the following table.
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
4 to 63 Spare Not used
Sequence Counter
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.
ProSoft Technology, Inc. Page 87 of 172 August 23, 2007
MVI71-DNP PLC Platform Reference DNP 3.0 Master/Slave Communication Module
The sequence counter field in the returned block is set to the last successfully processed block 9959 from the PLC. Compare this value to that sent by the PLC. If the values match, the events can be removed from the PLC. If the values do not match, or the PLC does not receive a 9959 block, the PLC must re-send the block.
Block 9970 or 270 – Set PLC Time Using Module Time
This block transfers the module's time to the PLC processor. Ladder logic must be used to set the processor's clock using the data received. The format of the block sent from the PLC has the following format:
Word Offset in Block Data Field(s) Description
0 Block ID
1 to 63 Not Used Not Used
This field contains the value of 9970 identifying the block type to the module.
The module responds to the request with a read block 9970 with the following format:
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
10 to 63 Not Used Not Used
Remote Time Synchronization
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.
Page 88 of 172 ProSoft Technology, Inc.
August 23, 2007
Reference MVI71-DNP ♦ PLC Platform DNP 3.0 Master/Slave Communication Module
Block 9971 or 271 – Set Module's Time Using PLC Time
This block sets the clock in the module to match the clock in the PLC processor. If the PLC sends a block 9971, the module will set its time using the data contained the block. The format of the block is shown in the following table:
Word Offset in Block Data Field(s) Description
0 Block ID
1 Year
2 Month
3 Day
4 Hour
5 Minute
6 Seconds
7 Milliseconds
8 to 63 Not Used Not Used
This field contains the block identification code of 9971 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.
The module responds to a valid 9971 block with a read block of the following format:
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 to 63 Not Used Not Used
This field contains the block identification code of 9971 for the block.
Block 9998 or 255 – Warm Boot Module
If the PLC sends a block number 9998, the module performs a warm-boot operation.
Block 9999 or 253 – Cold Boot Module
If the PLC sends a block number 9999, the application will perform the cold-boot operation. The module exits the program and performs a soft restart on the module.
ProSoft Technology, Inc. Page 89 of 172 August 23, 2007
MVI71-DNP PLC Platform Reference DNP 3.0 Master/Slave Communication Module
Side-Connect Backplane Data Transfer
The side-connect interface is the simplest method to implement the module. No ladder logic is required for the interface because the driver handles data movement between the module and the processor automatically. The data flow associated with this interface is shown in the following diagram:
The configuration information for the module determines the size of the read and write data areas and the locations of these data sets in the module's internal database. Therefore, to use this interface, just set up the files required by the module. The following table lists the files required for the side-connect interface:
File Number Example Size Description
Cfg File N10 100 Control/Status File
Data transferred from the module to the processor Cfg File+1 N11 to 1000
Other files for read data Cfg File+1+n N12 to 1000 Data transferred from the processor to the module Cfg File+1+n+m Other files for write data
n is the number of read data files minus one.
Side-Connect Interface File List
Cfg+# File # File Size Description
0 N 150
1 N Reserved 2 N 124 Error/Status and Error List data destination
Command control data starting at offset 80 (80 to 143 data area)
Page 90 of 172 ProSoft Technology, Inc.
August 23, 2007
Reference MVI71-DNP ♦ PLC Platform DNP 3.0 Master/Slave Communication Module
Cfg+# File # File Size Description
3 N (960 max) Digital input data source 4 N (960 max) Digital output data source 5 N (960 max) Counter data source and destination 6 N (960 max) Analog input data source 7 N (960 max) Analog output data destination 8 N (960 max) IED digital input data destination 9 N (960 max) IED digital output data source 10 N (960 max) IED counter data destination 11 N (960 max) IED analog input data destination 12 N (960 max) IED analog output data source 13 F (240 max) DNP slave floating-point input data 14 N Reserved 15 F (240 max) DNP slave floating-point output data 16 N Reserved
5.2.2 Data Flow Between MVI71-DNP Module and PLC Processor
The following topics describe the flow of data between the two pieces of hardware (PLC processor and MVI71-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 each mode.
Slave Driver
The Slave Driver Mode allows the MVI71-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.
ProSoft Technology, Inc. Page 91 of 172 August 23, 2007
MVI71-DNP PLC Platform Reference DNP 3.0 Master/Slave Communication Module
Step Description
1
2
3
4
5
The DNP slave port driver receives the configuration information from the DNP.CFG 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 appropriate 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.
Review the Installing and Configuring the Module section for a complete list of the 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 defined in the following table.
Point # Description
0 Module Name as assigned in configuration file. 1 Product Name 2
3 Manufacturer name for module.
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.
The variation used in the request message determines the length of the string returned for each point. The maximum string length used by the module is 100.
Page 92 of 172 ProSoft Technology, Inc.
August 23, 2007
Reference MVI71-DNP ♦ PLC Platform DNP 3.0 Master/Slave Communication Module
Master Driver Mode
In the Master mode, the MVI71-DNP module issues 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 DNP.CFG file. 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.
Step Description
1
2
3
4
5
The Master driver obtains configuration data from the DNP.CFG 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 the other nodes on the DNP network (Refer to the MVI71-DNP Module Set Up Guide).
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 one of the module's internal databases 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 appropriate internal database, assuming a read command.
Status is returned to the PLC 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
ProSoft Technology, Inc. Page 93 of 172 August 23, 2007
MVI71-DNP PLC Platform Reference DNP 3.0 Master/Slave Communication Module

5.3 Designing the system

System design defines the data requirements of the system, communication parameters, and module functionality. The application developer should refer to the person responsible for the DNP master and slave device configurations to be certain the functionality and data types required for the whole system are consistent. Review the DNP Device Profile and DNP Subset documentation for a definition of the level of DNP support offered by the module.
The following topics describe each element of system design.
5.3.1 System Design Considerations
In order to implement a solution using the module, the PLC must be set up using both program and data files. The data transfer interface requires ladder logic in order to interface data in the module with that in the PLC. Data is transferred between the module and the PLC through BTR and BTW instructions. These data areas are shared data regions available to both the processor and the module. The ladder logic required is discussed in the ladder logic section. This program interacts with the module by sending and receiving data.
Before you generate the program or layout the data files, you must first design your system. Time spent doing system design at the outset of the project will greatly enhance the success and ease of development of the project.
DNP Functionality Review
This phase of design defines the features of the DNP Level 2 Subset supported by the module and to be utilized in the specific application. For example, will the unit use unsolicited messaging? Coordination with the DNP master developer is required to be certain the host will support the functionality you select. If a DNP master port is to be used, the parameters required to communicate with the slave devices must be known and considered in installing and configuring the module.
The features that must be defined in this design step are as follows:
Mode DNP Feature Discussion
Slave
Slave
Slave
Is collision avoidance required for the primary DNP port?
Will the module use events and the Report by Exception feature?
Will analog events be returned with or without a time value?
Collision avoidance is required when unsolicited messaging is used. Any node on the network (master or slave) can transmit a message when data is ready. Collision avoidance prevents two or more units from transmitting data at the same time. This feature requires special cabling and timing considerations. It will only operate in RS-232 mode, and is not supported in RS­485 or RS-422 modes.
If the DNP Slave driver will generate event messages, they must be retrieved from the module using class polls or polls for the specific event objects. Refer to Event Size Computation for computing event size for digital and analog inputs.
The default for analog events is to return them without time. This is as specified in the DNP Subset document. The module supports analog event reporting with time. This is selected setting bit 5 in the configuration word (offset 21) for the module.
Page 94 of 172 ProSoft Technology, Inc.
August 23, 2007
Reference MVI71-DNP ♦ PLC Platform DNP 3.0 Master/Slave Communication Module
Mode DNP Feature Discussion
Slave
Slave
Slave
Master
Master & Slave
Slave
Will events be logged before time synchronization has occurred?
Will unsolicited messages be used? If so, how may for each class before triggering and what is the delay time?
Will the module use the secondary DNP Slave port?
Will the module use the DNP Master port?
What will be the memory mapping for the DNP and IED memory areas?
Will the secondary DNP port have a dial-up modem attached?
This feature will avoid logging events without the proper date and time stamping. When the DNP slave driver is initialized, it will have the IIN bit set to request time synchronization from the remote master unit. The master must synchronize the time before the module will generate events. This feature is selected using bit 8 in the module's configuration word.
Unsolicited messaging provides the means for a slave unit to send event data asynchronously to the master unit without a request from the master. This requires the use of collision avoidance to prevent two or more units from transmitting data on the network at one time.
The secondary DNP slave port on the module is a backup port to the primary slave port. Only one port can be used at any one time. The module supports automatic switching between the two ports based on several factors.
The module can be configured as a DNP master unit to interface with DNP slave (IED) units. This feature requires configuration of the communication characteristics for each slave and the definition of a command list. The command list polls the slave units and to map the data from the IED units to the databases contained in the module.
There are many databases maintained within the module for all the specific DNP data types and for the virtual master and slave unit simulated in the module. For successful application of the module, an understanding of the databases is required to carefully design them.
The secondary DNP slave port on the module can be configured to have a dial-up modem attached. Use of this feature requires bit 2 be set in the configuration word. Additionally, many aspects of the modem timing features must also be configured.
5.3.2 Data Requirements
This design phase defines what data elements are to be interfaced in the PLC with the DNP master and slave. The module provides the following data types:
digital input and output counter analog input and output Floating-Point
All communications between the DNP master and the PLC is through these data types. Therefore, all data to be used by the system must be contained and configured in one of these data types.
ProSoft Technology, Inc. Page 95 of 172 August 23, 2007
MVI71-DNP PLC Platform Reference DNP 3.0 Master/Slave Communication Module
The following illustration shows the databases maintained by the module for the DNP and IED data.
DNP DATA BINARY INPUTS PLC DATA IED DATA BINARY OUTPUTS PLC DATA IED DATA COUNTER DATA PLC DATA IED DATA ANALOG INPUTS PLC DATA IED DATA ANALOG OUTPUTS PLC DATA IED DATA FLOAT INPUTS PLC Data FROZEN COUNTER DATA BINARY INPUT EVENTS ANALOG INPUT EVENTS FLOAT INPUT EVENTS LAST VALUE DATA BINARY INPUTS ANALOG INPUTS FLOAT INPUTS DNP BIN OUTPUTS DNP ANALOG OUTPUTS IED BIN OUTPUTS IED ANALOG OUTPUTS IED DATA BINARY INPUTS BINARY OUTPUTS COUNTER DATA ANALOG INPUTS ANALOG OUTPUTS RBE FLAGS BINARY INPUT ANALOG INPUT
The module is responsible for maintaining the databases using data acquired from the PLC IED units attached to the DNP master port and DNP master attached to the DNP slave port.
Page 96 of 172 ProSoft Technology, Inc.
August 23, 2007
Reference MVI71-DNP ♦ PLC Platform DNP 3.0 Master/Slave Communication Module
The following illustration shows the interaction of the binary and analog input points with the databases.
The DNP database consists of data from the PLC and the IED units. The IED database contains only data acquired from IED units. This data can be used in the PLC's ladder logic, and is the only path to get IED data into the PLC. The RBE flags and last value database are used for event generation. Events received from the IED unit can be placed directly in the event buffer. This requires that the RBE flag for the data points be set to a value of 1. For all points in the RBE flags database with a value of zero, the module will generate the events.
ProSoft Technology, Inc. Page 97 of 172 August 23, 2007
MVI71-DNP PLC Platform Reference DNP 3.0 Master/Slave Communication Module
The following illustration shows the interaction of the counter points with the databases.
The DNP database consists of data from the PLC and the IED units. The IED database contains only data acquired from IED units. You can use this data in the PLC's ladder logic. When the DNP slave port receives a counter freeze command, the current counter values are passed to the frozen counter database. If the DNP slave port receives a counter freeze with reset command, the current counter values will be passed to the frozen counter database and only the values in the DNP counter database will be set to 0.
Page 98 of 172 ProSoft Technology, Inc.
August 23, 2007
Reference MVI71-DNP ♦ PLC Platform DNP 3.0 Master/Slave Communication Module
The following illustration shows the interaction of the binary and analog output points with the databases.
The DNP database consists of data from the DNP master on the slave port. This data is passed to the PLC and to the IED units through the command list. The IED database contains control data generated in the PLC. This is the only data path for PLC control of IED units on the DNP master port. A command must be set up to handle the transfer of data from the IED database to the IED unit. The last value databases are used for exception processing of control commands. Commands can be configured to only generate a message if there is a change in the database. The current values are compared against the last value database to recognize the changes. When a change is recognized, the DNP master port executes a command to the specific IED unit containing the new data.
Side Connect Interface
Data is directly transferred between the module and the PLC data files over the side-connect interface. Code within the module automatically handles the transfer of the data using the module's configuration. Up to 1000 words of data can be transferred on each read or write operation. Because the interface permits direct memory access, each data transaction is almost instantaneous. This interface requires none of the ladder logic or BTR/BTW operations required by the block transfer mode. Each data type used by the module must have a corresponding PLC data file in order for the data transfer to occur.
ProSoft Technology, Inc. Page 99 of 172 August 23, 2007
MVI71-DNP PLC Platform Reference DNP 3.0 Master/Slave Communication Module
The following illustration shows the relationship between the PLC5 data files and the DNP and IED memory areas in the module. Note that each data type is allocated its own PLC file. This limits the number of data points that can be defined for each data type to the maximum size of a PLC5 data file.
Block Data Transfer Interface
Data can be transferred between the PLC and the module using BTR and BTW operations. Each block transfer operation transfers 64 words of information of which 60 holds data. The other four words in the block contain block header identification codes or are not used. The module defines the blocks to be transferred between the PLC and the module when the system is initialized.
The block transfer numbers are fixed in the program for each data type for your specific 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. If 50 counter points are required, blocks 40 and 41 are defined.
The following table shows the block identification numbers used for data transfer.
Data Type Start Blo ck # Max Block # Max # Of Points
Digital Input 0 15 15360 Digital Output 20 35 15360 Counters 40 55 480 Analog Input 60 75 960 Analog Output 80 95 960 IED Digital Input 1000 1015 15360 IED Digital Output 1020 1035 15360 IED Counters 1040 1055 480 IED Analog Input 1060 1075 960 IED Analog Output 1080 1095 960 Float Input 1100 1107 240 Float Output 1140 1147 240
Page 100 of 172 ProSoft Technology, Inc.
August 23, 2007
Loading...