prosoft MVI69-DFCM User Guide

MVI69-DFCM
CompactLogix Platform DF1 Interface Module
User Manual
Successful application of this module requires a reasonable working knowledge of the Allen­Bradley CompactLogix hardware 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 Allen-Bradley documentation on the operation of the A-B hardware.
Under no circumstances will ProSoft Technology, Inc. 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, Inc. is prohibited.
Information in this manual is subject to change without notice and does not represent a commitment on the part of ProSoft Technology, Inc. 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.
ProSoft Technology, Inc.
1675 Chester Avenue, 4 Bakersfield, CA 93301 (661) 716-5100 (661) 716-5101 (Fax) www.prosoft-technology.com
InRAx is a trademark of ProSoft Technology, Inc. CompactLogix is a trademark of Allen-Bradley Company, Inc. All other trademarks in the document are the properties of their respective owners/companies.
Copyright 2004 ProSoft Technology, Inc. All rights reserved. MVI69-DFCM User Manual June 24, 2004
th
Floor
ii
Table of Contents
Table of Contents
1 PRODUCT SPECIFICATIONS.............................................................................. 1
1.1 G
ENERAL SPECIFICATIONS................................................................................... 1
1.1.1 Slave Functional Specifications.................................................................. 1
1.1.2 Master Functional Specifications ............................................................... 1
1.1.3 Physical....................................................................................................... 2
1.1.4 CompactLogix Interface.............................................................................. 2
1.2 H
ARDWARE SPECIFICATIONS ............................................................................... 2
2 FUNCTIONAL OVERVIEW .................................................................................. 3
2.1 GENERAL CONCEPTS............................................................................................ 3
2.1.1 Module Power Up....................................................................................... 3
2.1.2 Main Logic Loop......................................................................................... 3
2.1.3 Backplane Data Transfer............................................................................ 4
2.2 N
ORMAL DATA TRANSFER .................................................................................. 5
2.2.1 Read Block .................................................................................................. 6
2.2.2 Write Block.................................................................................................. 9
2.3 SPECIAL BLOCKS ................................................................................................. 9
2.3.1 Slave Status Blocks ..................................................................................... 9
2.4 COMMAND CONTROL BLOCKS........................................................................... 12
2.4.1 Event Command ........................................................................................ 12
2.4.2 Command Control..................................................................................... 13
2.4.3 Set Module Time Using Processor Time................................................... 14
2.4.4 Warm Boot ................................................................................................ 15
2.5 D
ATA FLOW BETWEEN MVI69-DFCM MODULE AND COMPACTLOGIX
PROCESSOR .................................................................................................................... 17
2.5.1 Slave Driver Mode .................................................................................... 17
2.5.2 Master Driver Mode ................................................................................. 20
3 MODULE CONFIGURATION............................................................................. 23
3.1 POWER UP.......................................................................................................... 23
3.2 C
ONFIGURATION FILE ........................................................................................ 23
3.3 SETTING UP THE MODULE ................................................................................. 27
3.3.1 Module Data Object (DFCMModuleDef)................................................. 32
3.4 S
3.5 U
TATUS OBJECT (DFCM_STATUS) ................................................................. 34
SER DATA OBJECTS......................................................................................... 34
3.6 SLAVE POLLING CONTROL AND STATUS ............................................................ 35
3.7 DFCM S
3.8 E
3.9 C
3.10 C
VENT COMMAND (DFCMEVENTCOMMAND) .................................................. 36
OMMAND CONTROL (DFCMCOMMANDCONTROL) ......................................... 37
LOCK (DFCMCLOCK) ..................................................................................... 37
LAVE POLLING CONTROL (DFCMSLAVEPOLLINGCONTROL) ............. 35
4 LADDER LOGIC ................................................................................................... 39
4.1 M
4.2 R
4.3 W
AINROUTINE ................................................................................................... 39
EADDATA ........................................................................................................ 40
RITEDATA ...................................................................................................... 43
iii
Table of Contents
5 DIAGNOSTICS AND TROUBLESHOOTING .................................................. 51
5.1 READING STATUS DATA FROM THE MODULE ..................................................... 51
5.2 LED S
TATUS INDICATORS ................................................................................. 51
5.3 CLEARING A FAULT CONDITION ........................................................................ 52
5.4 T
5.5 U
ROUBLESHOOTING ........................................................................................... 52
SING THE CONFIGURATION/DEBUG PORT ........................................................ 54
5.5.1 Required Hardware .................................................................................. 54
5.6 REQUIRED SOFTWARE........................................................................................ 54
5.7 USING THE PORT .......................................................................................... 55
5.7.1 Menu Options............................................................................................ 55
5.7.1.1 A = Data Analyzer ................................................................................ 55
5.7.1.2 B = Block Transfer Statistics ................................................................ 58
5.7.1.3 C = Module Configuration.................................................................... 58
5.7.1.4 D = Database View ............................................................................... 59
5.7.1.5 E and F = Master Command Errors (Ports 1 and 2) ............................. 60
5.7.1.6 I and J = Master Command List (Ports 1 and 2)................................... 61
5.7.1.7 O and P = Slave Status List (Port 1 and 2) ........................................... 62
5.7.1.8 R = Receive Module Configuration...................................................... 62
5.7.1.9 S = Send Module Configuration ........................................................... 62
5.7.1.10 T or U = DF1 Override File Map List for Port 1 or Port 2 ............... 62
5.7.1.11 V = Version Information................................................................... 63
5.7.1.12 W = Warm Boot Module .................................................................. 63
5.7.1.13 1 and 2 = Communication Status (Ports 1 and 2) ............................. 63
5.7.1.14 6 and 7 = Port Configuration (Ports 1 and 2).................................... 64
5.7.1.15 Esc = Exit Program ........................................................................... 64
6 CABLE CONNECTIONS ...................................................................................... 65
6.1 DF1 C
OMMUNICATION PORTS ........................................................................... 65
6.1.1 Connecting the Cable to the Connector.................................................... 65
6.2 RS-232 CONFIGURATION/DEBUG PORT............................................................. 67
APPENDIX A – DFCM DATABASE DEFINITION .................................................. 69
APPENDIX B – STATUS DATA DEFINITION ......................................................... 71
APPENDIX C – CONFIGURATION DATA DEFINITION...................................... 73
APPENDIX D – DFCM COMMAND CONTROL...................................................... 83
APPENDIX E – COMMAND ERROR LIST VALUES ............................................. 85
APPENDIX F - UPLOADING AND DOWNLOADING THE CONFIGURATION
FILE ................................................................................................................................. 87
D
OWNLOAD A CONFIGURATION FILE TO YOUR PC........................................................ 87
U
PLOADING THE CONFIGURATION FILE TO THE MODULE .............................................. 92
APPENDIX G – COMMAND FUNCTION CODES .................................................. 97
iv
Table of Contents
SUPPORT, SERVICE, AND WARRANTY .............................................................. 107
v

Product Specifications

1 Product Specifications
The MVI69-DFCM (“DF1 Communication Module”) product allows Allen-Bradley CompactLogix I/O compatible processors to easily interface with other DF1 protocol compatible devices. Compatible devices include not only Allen-Bradley PLC's (which all support the DF1 protocol) but also a wide assortment of end devices.
1.1 General Specifications
The MVI69-DFCM module acts as a gateway between the DF1 network and the Allen­Bradley backplane. The data transfer from the CompactLogix processor is asynchronous from the actions on the DF1 network. A 5000-word register space in the module is used to exchange data between the processor and the DF1 network.
Some of the general specifications include:
Support for the storage and transfer of up to 5000 registers to/from the
CompactLogix processor's controller tags
Module memory usage that is completely user definable
Two ports to emulate any combination of DF1 master or slave device
Configurable parameters include:
Protocol : Full- or half-duplex Termination Type BCC or CRC Local Station ID 0 to 254 Baud Rate : 110 to 115,200 Parity : None, Odd and Even Stop Bits : 1 or 2 RTS On and Off Timing : 0 to 65535 milliseconds Minimum Response Delay : 0 to 65535 milliseconds Use of CTS Modem Line : Yes or No ENQ Delay 0 to 65535 milliseconds Response Timeout 0 to 65535 milliseconds Retry Count 0 to 10
Address 255 is used for broadcast messages.
1.1.1 Slave Functional Specifications
The MVI69-DFCM module accepts DF1 commands from an attached DF1 master unit. A port configured as a virtual DF1 slave permits a remote master to interact with all data contained in the module. This data can be derived from other DF1 slave devices on the network through a master port or from the CompactLogix processor.
1.1.2 Master Functional Specifications
A port configured as a virtual DF1 master device on the MVI69-DFCM module will actively issue DF1 commands to other nodes on the DF1 network. One hundred commands are supported on each port. Additionally, the master ports have an optimized polling characteristic that will poll slaves with communication problems less frequently. The CompactLogix processor can be programmed to control the activity on the port by
ProSoft Technology, Inc. 1 MVI69-DFCM User Manual June 24, 2004
Product Specifications
actively selecting commands from the command list to execute or issuing commands directly from the ladder logic. The CompactLogix processor also has the ability to control the scanning of slaves on the port.
1.1.3 Physical
This module is designed by ProSoft Technology and incorporates licensed technology from Allen-Bradley (CompactLogix backplane technology).
CompactLogix Form Factor - Single Slot
Connections :
o RJ45 connectors for DF1 support of RS-232, RS-422 or RS-485
interfaces
o 1 – RJ45 RS-232 Configuration Tool Connector
1.1.4 CompactLogix Interface
Operation via simple ladder logic
Complete monitoring of module through RSLogix 5000 software
CompactLogix backplane interface via I/O access
All data related to the module is contained in a single controller tag with defined
objects to ease in the monitoring and interfacing with the module
1.2 Hardware Specifications
The MVI69-DFCM module is designed by ProSoft Technology and incorporates licensed technology from Allen-Bradley (CompactLogix backplane technology).
Current Loads 800 mA @ 5V (from backplane) Operating Temperature
Storage Temperature
Relative Humidity 5 – 95% (w/o condensation) DF1 Port Connector Two RJ45 connectors (RJ45 to DB9 cable
Configuration Connector RJ45 RS-232 Connector (RJ45 to DB9
0 to 60° C 32 to 140° F
-40 to 85°C
-40 to 185° F
shipped with unit (supporting RS-232, RS­422 and RS-485 interfaces (RJ45 to DB9 cables shipped with unit.
cable shipped with unit.
2 ProSoft Technology, Inc. MVI69-DFCM User Manual June 24, 2004

Functional Overview

2 Functional Overview
This section provides a functional overview of the MVI69-DFCM module. A thorough understanding of the information contained in this document is required for successful implementation of the module in a user application. If you are not familiar with the data transfer and DF1 protocol operations, read this document before setting up the module.
2.1 General Concepts
The following discussion covers several concepts that are key to understanding the operation of the MVI69-DFCM module.
2.1.1 Module Power Up
On power up the module begins performing the following logical functions:
Initialize hardware components
o Initialize CompactLogix backplane driver o Test and Clear all RAM o Initialize the serial communication ports
Read module configuration from the Compact Flash
Initialize Module Register space
Enable Slave Driver on selected ports
Enable Master Driver on selected ports
Once this initialization procedure is complete, the module will begin communicating with other nodes on the network, depending on the configuration.
2.1.2 Main Logic Loop
Upon completing the power up configuration process, the module enters an infinite loop that performs the following functions:
From P o wer Up Logic
From P o wer Up Logic
Call I/O Handler
Call I/O Handler
Call Cfg/ Dbg P o rt
Call Cfg/ Dbg P o rt
Call Cfg/ Dbg P o rt
Driver
Driver
Driver
Call DF 1
Call DF 1
Call DF 1
Driver
Driver
Driver
Call I/O Handler
Call I/O Handler
- Trans fers dat a betw een mo dule and p rocess or
- Trans fers dat a betw een mo dule and p rocess or (user, status, configuratio n, et c. )
(user, status, configuratio n, et c. )
Call Serial Port Driver (Configuration/Debug Port)
Call Serial Port Driver (Configuration/Debug Port)
- Rx and Tx buffer rout ines are interr upt driven
- Rx and Tx buffer rout ines are interr upt driven
- Call to serial port routines chec ks to see if there is any data
- Call to serial port routines chec ks to see if there is any data in the buffer, and de pen ding o n the value will ei th er servic e
in the buffer, and de pen ding o n the value will ei th er servic e the buffer or wait for more c har act ers
the buffer or wait for more c har act ers
Cal l DF1 Dri ve r
Cal l DF1 Dri ve r
- If DF1 Mas ter P ort, poll s la ves using c omm and lis t
- If DF1 Mas ter P ort, poll s la ves using c omm and lis t
- If DF1 Slave P ort, respo nd to comman ds rec ei ved
- If DF1 Slave P ort, respo nd to comman ds rec ei ved
ProSoft Technology, Inc. 3 MVI69-DFCM User Manual June 24, 2004
Functional Overview
2.1.3 Backplane Data Transfer
The MVI69-DFCM module is unique in the way that the CompactLogix backplane is utilized. Data is paged between the module and the CompactLogix processor across the backplane using the module's input and output images. The update frequency of the images is determined by the scheduled scan rate defined by the user for the module and the communication load on the module. Typical updates are in the range of 2 to 10 milliseconds.
The data is paged between the processor and the module using input and output image blocks. You can configure the size of the blocks using the Block Transfer Size parameter in the configuration file. You can configure blocks of 60, 120, or 240 words of data depending on the number of words allowed for your own application.
This bi-directional transference of data is accomplished by the module filling in data in the module's input image to send to the processor. Data in the input image is placed in the Controller Tags in the processor by the ladder logic. The input image for the module may be set to 62, 122, or 242 words depending on the block transfer size parameter set in the configuration file.
The processor inserts data to the module's output image to be transferred to the module. The module's program extracts the data and places it in the module's internal database. The output image for the module may be set to 61, 121, or 241 words depending on the block transfer size parameter set in the configuration file.
The following diagram displays the data transfer method used to move data between the CompactLogix processor, the MVI69-DFCM module and the DF1 network.
Processor
Processor
MVI69-DFCM Module
MVI69-DFCM Module
Processor
Processor
Controller Tags
Controller Tags
Or User Files
Or User Files
Status
Status
Read Data
Read Data
Write Data
Write Data
Special Control
Special Control Blocks
Blocks
Ladder
Ladder
Logic
Logic
Transfers
Transfers
Data from
Data from
module’s input
module’s input
image to data
image to data
areas in the
areas in the
processor
processor
Ladder
Ladder
Logic
Logic
Transfers
Transfers
Data from
Data from Processor
Processor data areas
data areas
to output image
to output image
Backplane Driver
Backplane Driver
Input Image
Input Image
Output Image
Output Image
Module’s
Module’s
Internal
Internal
Database
Database
Master
Master
Master
Driver
Driver
Driver Logic
Logic
Logic
Slave
Slave
Slave
Driver
Driver
Driver
Logic
Logic
Logic
DF1
DF1 Port
Port
Drivers
Drivers
As shown in the diagram above, all data transferred between the module and the processor over the backplane is through the input and output images. Ladder logic must be written in the CompactLogix processor to interface the input and output image data
To DF1
To DF1 Network
Network
4 ProSoft Technology, Inc. MVI69-DFCM User Manual June 24, 2004
Functional Overview
with data defined in the Controller Tags. All data used by the module is stored in its internal database. The diagram below displays the layout of the database:
Module’s Internal Database Structure
Data
Status
and
Config
0
4999
5000
7999
5000 registers for us e r data
3000 words of configu ration and status data
Regist er
Data contained in this database is paged through the input and output images by coordination of the CompactLogix ladder logic and the MVI69-DFCM module's program. Up to 242 words of data can be transferred from the module to the processor at once. Up to 241 words of data can be transferred from the processor to the module. The read and write block identification codes in each data block determine the function to be performed or the content of the data block. The block identification codes used by the module are listed below:
Block Range Descriptions
-1 Status Block
0 Status Block
1 to 999 Read or write data
1000 Event Port 1
2000 Event Port 2
3000 to 3001 Port 1 slave polling control
3002 to 3006 Port 1 slave status
3100 to 3101 Port 2 slave polling control
3102 to 3106 Port 2 slave status
5000 to 5006 Port 1 command control
5100 to 5106 Port 2 command control
9972 Set module time using received time
9973 Pass module time to processor
9998 Warm-boot control block
9999 Cold-boot control block
Each image has a defined structure depending on the data content and the function of the data transfer as defined in the sections below:
2.2 Normal Data Transfer
Normal data transfer includes the paging of the user data found in the module's internal database in registers 0 to 4999 and the status data. These data are transferred through read (input image) and write (output image) blocks. The structure and function of each block is discussed in the following sections:
ProSoft Technology, Inc. 5 MVI69-DFCM User Manual June 24, 2004
Functional Overview
2.2.1 Read Block
These blocks of data are used to transfer information from the module to the CompactLogix processor. The structure of the input image used to transfer this data is shown below:
2 to (n+1) Read Data n
where
n = 60, 120, or 240 depending on the Block Transfer Size parameter (refer to the
configuration file).
The Read Block ID is an index value used to determine the location of where the data will be placed in the CompactLogix processor controller tag array of module read data. The number of data words per transfer depends on the configured Block Transfer Size parameter in the configuration file (possible values are 60, 120, or 240).
The Write Block ID associated with the block is used to request data from the CompactLogix processor. Under normal, program operation, the module sequentially sends read blocks and requests write blocks. For example, if three read and two write blocks are used with the application, the sequence will be as follows:
R1W1-->R2W2-->R3W1-->R1W2-->R2W1-->R3W2-->R1W1-->
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 DF1 network or operator control through the module's Configuration/Debug port.
The following example shows a typical backplane communication application.
Assume that the backplane parameters are configured as follows:
Read Register Start: 0 Read Register Count: 480 Write Register Start: 480 Write Register Count: 480
The backplane communication would be configured as follows:
Offset Description Length
0 Read Block ID 1
1 Write Block ID 1
6 ProSoft Technology, Inc. MVI69-DFCM User Manual June 24, 2004
Functional Overview
Database address 0 to 479 will be continuously transferred from the module to the processor. Database address 480 to 959 will continuously be transferred from the processor to the module.
The Block Transfer Size parameter basically configures how the Read Data and Write Data areas are broken down into data blocks (60, 120, or 240).
ProSoft Technology, Inc. 7 MVI69-DFCM User Manual June 24, 2004
Functional Overview
If Block Transfer Size = 60:
If Block Transfer Size = 120:
8 ProSoft Technology, Inc. MVI69-DFCM User Manual June 24, 2004
Functional Overview
If Block Transfer Size = 240:
2.2.2 Write Block
These blocks of data are used to transfer information from the CompactLogix processor to the module. The structure of the output image used to transfer this data is shown below:
Offset Description Length
0 Write Block ID 1
1 to n Write Data n
where n = 60, 120, or 240 depending on the Block Transfer Size parameter (refer to the configuration file).
The Write Block ID is an index value used to determine the location in the module's database where the data will be placed. Each transfer can move up to 200 words (block offsets 1 to 200) of data.
2.3 Special Blocks
2.3.1 Slave Status Blocks
Slave status blocks are used to send status information of each slave device on a master port. Slaves attached to the master port can have one of the following states:
ProSoft Technology, Inc. 9 MVI69-DFCM User Manual June 24, 2004
Functional Overview
State Description
0 The slave is inactive and not defined in the command list
1 The slave is actively being polled or controlled by the
2 The master port has failed to communicate with the slave
3 Communications with the slave has been disabled by the
Slaves are defined to the system when the module initializes the master command list. Each slave defined will be set to a state of one in this initial step. If the master port fails to communicate with a slave device (retry count expired on a command), the master will set the state of the slave to a value of 2 in the status table. This suspends communication with the slave device for a user specified scan count (Error Delay Count parameter in the configuration file). Each time a command in the list is scanned that has the address of a suspended slave, the delay counter value will be decremented. When the value reaches zero, the slave state will be set to one.
In order to read the slave status table, you should refer to the sample ladder logic. The ladder logic must send a special block to the module to request the data. Each port has a specific set of blocks to request the data as follows:
BLOCK ID DESCRIPTION
3002 Request status for slaves 0 to 59 for Port 1 3003 Request status for slaves 60 to 119 for Port 1 3004 Request status for slaves 120 to 179 for Port 1 3005 Request status for slaves 180 to 239 for Port 1 3006 Request status for slaves 240 to 255 for Port 1 3102 Request status for slaves 0 to 59 for Port 2 3103 Request status for slaves 60 to 119 for Port 2 3104 Request status for slaves 120 to 179 for Port 2 3105 Request status for slaves 180 to 239 for Port 2 3106 Request status for slaves 240 to 255 for Port 2
The format of these blocks is as shown below:
Write Block – Request Slave Status
Offset Description Length
0 3002 – 3006 or 3102 – 3106 1
1 to n Spare n
n=60, 120, or 240 depending on what is entered in the Block Transfer Size parameter (see the configuration file).
for the master port.
master port and communications is successful.
device. Communications with the slave is suspended for a user defined period based on the scanning of the command list.
ladder logic. No communication will occur with the slave until this state is cleared by the ladder logic.
10 ProSoft Technology, Inc. MVI69-DFCM User Manual June 24, 2004
Functional Overview
The module will recognize the request by receiving the special write block code and respond with a read block with the following format:
Read Block – Read Slave Status
Offset Description Length
0 3002-3006 or 3102-3106 1 1 Write Block ID 1
2-61 Slave Poll Status Data 60
62 to n Spare (if present)
The sample ladder logic shows how to override the value in the slave status table to disable slaves (state value of 3) by sending a special block of data from the processor to the slave. Port 1 slaves are disabled using block 3000, and Port 2 slaves are disabled using block 3100. Each block contains the slave node addresses to disable. The structure of the block is displayed below:
Write Block – Disable Slaves
Offset Description Length
0 3000 or 3100 1 1 Number of slaves in block 1
2 to 61 Slave indexes 60
62 to (n+1) Spare
n=120, or 240 (if configured)
The module will respond with a block with the same identification code received and indicate the number of slaves acted on with the block. The format of this response block is displayed below:
Read Block – Disable Slaves
Offset Description Length
0 3000 or 3100 1 1 Write Block ID 1 2 Number of slaves processed 1
3 to (n+1) Spare
n=60, 120, or 240 (if configured)
The sample ladder logic explains how to override the value in the slave status table to enable the slave (state value of 1) by sending a special block. Port 1 slaves are enabled using block 3001, and Port 2 slaves are enabled using block 3101. Each block contains the slave node addresses to enable. The format of the block is displayed below:
Write Block – Enable Slaves
Offset Description Length
0 3001 or 3101 1 1 Number of slaves in block 1 2 Slave indexes 1
ProSoft Technology, Inc. 11 MVI69-DFCM User Manual June 24, 2004
Functional Overview
3 to n Spare
n=60, 120, or 240 depending on what is entered in the Block Transfer Size parameter (see the configuration file).
The module will respond with a block with the same identification code received and indicate the number of slaves acted on with the block. The format of this response block is displayed below:
Read Block – Enable Slaves
Offset Description Length
0 3001 or 3101 1 1 Write Block ID 1 2 Number of slaves processed 1
3-n Spare
n=60, 120, or 240 depending on what is entered in the Block Transfer Size parameter (see the configuration file).
Important: The slaves are enabled by default. Therefore, this block should only be used after Block 3000 or 3001 to re-enable the slaves.
2.4 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 five command control blocks: event command control, command control, transfer time, warm boot and cold boot.
2.4.1 Event Command
Event command control blocks are used to send DF1 commands directly from the ladder logic to one of the master ports. The format for these blocks is displayed below:
Write Block – Event Command
Offset Description Length
0 1000 or 2000 1 1 Internal DB Address 1 2 Point Count 1 3 Swap Code 1 4 Node Address 1 5 Function Code 1 6 Parameter #1 1 7 Parameter #2 1 8 Parameter #3 1 9 Parameter #4 1
10 to n Spare
n=60, 120, or 240 depending on what is entered in the Block Transfer Size parameter (see the configuration file).
12 ProSoft Technology, Inc. MVI69-DFCM User Manual June 24, 2004
Functional Overview
The block number defines the DF1 port to be considered. Block 1000 commands are directed to Port 1, and block 2000 commands are directed to Port 2. The parameters passed with the block are used to construct the command. The Internal DB Address parameter specifies the module's database location to associate with the command. The
Point Count parameter defines the number of registers for the command. The Swap Code is used to change the word or byte order. The Node Address parameter is used
to define the device on the DF1 network to consider. The Function Code parameter is one of those defined in the ProSoft DF1 Command Set documentation. The parameter fields in the block should be completed as required by the selected function code. Each command has its own set of parameters. When the block is received, the module will process it and place the command in the command queue. The module will respond to each event command block with a read block with the following format:
Read Block – Event Command
Offset Description Length
0 1000 or 2000 1 1 Write Block ID 1 2 0=Fail, 1=Success 1
3 to n Spare
n=60, 120, or 240 depending on what is entered in the Block Transfer Size parameter (see the configuration file).
Word two of the block can be used by the ladder logic to determine if the command was added to the command queue of the module. The command will only fail if the command queue for the port is full (100 commands for each queue) or the command requested is invalid.
2.4.2 Command Control
Command control blocks are used to place commands in the command list into the command queue. Each port has a command queue of up to 100 commands. The module services commands in the queue before the master command list. This gives high priority to commands in the queue. Commands placed in the queue through this mechanism must be defined in the master command list. Under normal command list execution, the module will only execute commands with the Enable parameter set to one or two. If the value is set to zero, the command is skipped. Commands may be placed in the command list with an Enable parameter set to zero. These commands can then be executed using the command control blocks.
One to six commands can be placed in the command queue with a single request. The format of the block is displayed in the following table:
Write Block – Command Control
Offset Description Length
0 5001-5006 or 5101-5106 1 1 Command index 1 2 Command index 1 3 Command index 1 4 Command index 1
ProSoft Technology, Inc. 13 MVI69-DFCM User Manual June 24, 2004
Functional Overview
n=60, 120, or 240 depending on what is entered in the Block Transfer Size parameter (see the configuration file).
Blocks in the range of 5001 to 5006 are used for Port 1, and blocks in the range of 5101 to 5106 are used for Port 2. The last digit in the block code defines the number of commands to process in the block. For example, a block code of 5003 contains 3 command indexes that are to be used with Port 1. The Command index parameters in the block have a range of 0 to 99 and correspond to the master command list entries. The module responds to a command control block with a block containing the number of commands added to the command queue for the port. The format of the block is displayed below:
Read Block – Command Control
5 Command index 1 6 Command index 1
7 to n Spare
Offset Description Length
0 5000-5006 or 5100-5106 1 1 Write Block ID 1
2 Number of commands added to
command queue
1
3 to (n+1) Spare
n=60, 120, or 240 depending on what is entered in the Block Transfer Size parameter (see the configuration file).
2.4.3 Set Module Time Using Processor Time
This block can be used to update the module’s internal clock (date and time).
Write Block – Set Module Time
Offset Description Length
0 9972 1 1 Year (0-9999) 1 2 Month (1-12) 1 3 Day (1-31) 1 4 Hour (0-23) 1 5 Minutes (0-59) 1 6 Seconds (0-59) 1
7 to n Spare
n=60, 120, or 240 depending on what is entered in the Block Transfer Size parameter (see the configuration file).
14 ProSoft Technology, Inc. MVI69-DFCM User Manual June 24, 2004
Functional Overview
Set Module Time Response
Read Block – Set Module Time
Offset Description Length
0 9972 1 1 Write Block ID 1
2 to (n+1) Spare
n=60, 120, or 240 depending on what is entered in the Block Transfer Size parameter (see the configuration file).
Get Module Time for Processor Time
Write Block – Get Module Time
Offset Description Length
0 9973 1
1 to n Spare
n=60, 120, or 240 depending on what is entered in the Block Transfer Size parameter (see the configuration file).
Read Block – Write Module TIme
Offset Description Length
0 9973 1 1 Write Block ID 1 2 Year (0-9999) 1 3 Month (1-12) 1 4 Day (1-31) 1 5 Hour (0-23) 1 6 Minutes (0-59) 1 7 Seconds (0-59) 1
8 to n Spare
n=60, 120, or 240 depending on what is entered in the Block Transfer Size parameter (see the configuration file).
2.4.4 Warm Boot
This block is sent from the CompactLogix processor to the module (output image) when the module is required to perform a warm-boot (software reset) operation. The structure of the control block is shown below:
Offset Description Length
0 9998 1
1 to n Spare 247
n=60, 120, or 240 depending on what is entered in the Block Transfer Size parameter (see the configuration file).
ProSoft Technology, Inc. 15 MVI69-DFCM User Manual June 24, 2004
Functional Overview
Cold Boot
This block is sent from the CompactLogix processor to the module (output image) when the module is required to perform the cold boot (hardware reset) operation. This block is sent to the module when a hardware problem is detected by the ladder logic that requires a hardware reset. The structure of the control block is shown below:
n=60, 120, or 240 depending on what is entered in the Block Transfer Size parameter (see the configuration file).
Offset Description Length
0 9999 1
1 to n Spare 247
16 ProSoft Technology, Inc. MVI69-DFCM User Manual June 24, 2004
Functional Overview
2.5 Data Flow between MVI69-DFCM Module and CompactLogix Processor
The following discussion details the flow of data between the two pieces of hardware (CompactLogix processor and MVI69-DFCM module) and other nodes on the DF1 network under the module’s different operating modes. Each port on the module is configured to emulate a DF1 master device or a DF1 slave device. The operation of each port is dependent on this configuration. The sections below discuss the operation of each mode.
2.5.1 Slave Driver Mode
The Slave Driver Mode allows the MVI69-DFCM module to respond to data read and write commands issued by a master on the DF1 network. The following flow chart and associated table detail the flow of data into and out of the module.
Processor Memory DFCM ModuleBackplane Interface
Processor Memory DFCM ModuleBackplane Interface
User Files Or
User Files Or
Controller Tags
Controller Tags
Database
Database
Addresses
Addresses
0
0
from Module
from Module
Register
Register
Data
Data
storage
storage
Status
Status
2
2
Register
Register
Data
4999
4999
Data
Status
Status
Configuration
Configuration
Status
Status
3
3
5
5
3
3
Slave
Slave Mode
Mode
Driver
Driver
1
1
4
4
Step Description
1 The DF1 slave port driver receives the configuration information from the
internal Compact Flash disk. This information is used to configure the serial port and define the slave node characteristics. The module simulates N-files to permit remote access of the database. Each file has a configurable length of 60, 120, or 240-word registers.
2 A Host device, such as an Allen-Bradley PLC or an MMI package issues a
read or write command to the module’s node address. The port driver qualifies the message before accepting it into the module.
3 Once the module accepts the command, the data is immediately
transferred to or from the internal database in the module. If the command is a read command, the data is read out of the database and a response message is built. If the command is a write command, the data is written directly into the database and a response message is built.
4 Once the data processing has been completed in Step 3, the response is
issued to the originating master node.
5 Counters are available in the Status Block that permit the ladder logic
program to determine the level of activity of the Slave Driver.
ProSoft Technology, Inc. 17 MVI69-DFCM User Manual June 24, 2004
A
A
A
A
A
A
Functional Overview
Review the Module Set Up section for a complete list of the parameters that must be defined for a slave port. The slave driver supports the following DF1 command set:
Basic Command Set Functions
Command Function Definition
0x00 N/A Protected Write X
0x01 N/A Unprotected Read X
0x02 N/A Protected Bit Write X
0x05 N/A Unprotected Bit Write X
0x06 0x00 Echo Request X
0x06 0x03 Status Request X
0x08 N/A Unprotected Write X
PLC-5 Command Set Functions
Command Function Definition
Slave
Supported in
Slave
Supported in
0x0F 0x00 Word Range Write (Binary
ddress)
0x0F 0x01 Word Range Read (Binary
ddress)
0x0F 0x26 Read-Modify-Write (Binary
ddress)
0x0F 0x00 Word Range Write (ASCII
ddress)
0x0F 0x01 Word Range Read (ASCII
ddress)
0x0F 0x26 Read-Modify-Write (ASCII
ddress)
X
X
X
X
18 ProSoft Technology, Inc. MVI69-DFCM User Manual June 24, 2004
Functional Overview
SLC-500 Command Set Functions
Command Function Definition
0x0F 0xA1 Protected Typed Logical Read
With Two Address Fields
0x0F 0XA2 Protected Typed Logical Read
With Three Address Fields
0x0F 0XA9 Protected Typed Logical Write
With Two Address Fields
0x0F 0XAA Protected Typed Logical Write
With Three Address Fields
0x0F 0XAB Protected Typed Logical Write
With Mask (Three Address Fields)
The PLC-5 and SLC-500 command set require the use of files. These files are emulated in the module. The module defines these files depending on the following parameters in the configuration file:
First File
File Size
File Offset
For example, if these parameters are configured as:
First File: 7 File Size: 200 File Offset: 0
The database would be emulated as shown in the following table:
Slave
Supported in
X
X
X
X
X
ProSoft Technology, Inc. 19 MVI69-DFCM User Manual June 24, 2004
r
Functional Overview
In order to retrieve data from the modules database register 200, the remote master would issue a command using the address N8:0. In order to interface with database base register 405, the remote master would use the address N9:5. The following table outlines the complete file emulation for the module:
Register Range Content Size
0 – 4999 User Data 5000 5000 – 5099 Backplane Configuration 10 5010 – 5039 Port 1 Setup 30 5040 – 5069 Port 2 Setup 30 5070 – 5199 Reserved 130 5200 – 6399 Port 1 Commands 1200 6400 – 7599 Port 2 Commands 1200 7600 – 7700 Misc. Status Data 200 7800 – 7999 Command Control 200 8000 – 9999 Reserved 2000
All the data in the module is available to a remote host. This permits the host device to remotely configure the module and view the status data.
Database
Registe
N7:0 ------------> 0 N8:0 ------------> 200 N9:0 ------------> 400 N10:0 ------------> 600 N11:0 ------------> 800 N12:0 ------------> 1000 N13:0 ------------> 1200 N14:0 ------------> 1400 N15:0 ------------> 1600 N16:0 ------------> 1800 N17:0 ------------> 2000 N18:0 ------------> 2200 N19:0 ------------> 2400 N20:0 ------------> 2600 N21:0 ------------> 2800 N22:0 ------------> 3000 N23:0 ------------> 3200 N24:0 ------------> 3400 N25:0 ------------> 3600 N26:0 ------------> 3800 N27:0 ------------> 4000 N28:0 ------------> 4200 N29:0 ------------> 4400 N30:0 ------------> 4600 N31:0 ------------> 4800 N32:0 ------------> 5000
2.5.2 Master Driver Mode
In the Master Mode of operation, the MVI69-DFCM module is responsible for issuing read or write commands to slave devices on the DF1 network. These commands are user configured in the module via the Master Command List received from the CompactLogix processor or issued directly from the CompactLogix processor (event command control). Command status is returned to the processor for each individual command in the command list status block. The location of this status block in the module's internal database is user defined. The following flow chart and associated table detail the flow of data into and out of the module.
20 ProSoft Technology, Inc. MVI69-DFCM User Manual June 24, 2004
Functional Overview
Processor Memory Backplane Interface
Processor Memory Backplane Interface
User Files Or
User Files Or
Controller Tags
Controller Tags
Register
Register
Data
Data
storage
storage
Status
Status
from Module
from Module
Event Cmd
Event Cmd
Data
Data
Command
Command
Control
Control
Database
Database
Addresses
Addresses
0
0
4999
4999
Register
Register
Data
Data
Status
Status
Event Cmd
Event Cmd
Data
Data
Command
Command
Control
Control
4
4
Status
Status
Configuration
Configuration
Event Cmd
Event Cmd
Data
Data
Command
Command
Control
Control
DFCM Memory
DFCM Memory
5
5
4
4
Master
Master
Command List
Command List
Master
Master
Mode
Mode
Driver
Driver
1
1
Step Description
1 The Master driver obtains configuration data from the internal Compact
Flash disk. The configuration data obtained includes the number of commands and the Master Command List. These values are used by the Master driver to determine the type of commands to be issued to the other nodes on the DF1 network.
2 Once configured, the Master driver begins transmitting read and/or write
commands to the other nodes on the network. If writing data to another node, the data for the write command is obtained from the module's internal database to build the command.
3 Presuming successful processing by the node specified in the command, a
response message is received into the Master driver for processing.
4 Data received from the node on the network is passed into the module's
internal database, assuming a read command.
5 Status is returned to the CompactLogix processor for each command in the
Master Command List.
Refer to the appendix for a complete discussion of the structure and content of each command. Care must be taken in constructing each command in the list for predictable operation of the module. If two commands write to the same internal database address of the module, the results will not be as desired. All commands containing invalid data will be ignored by the module. The following table displays the functions supported by the module and the format of each command:
3
3
2
2
ProSoft Technology, Inc. 21 MVI69-DFCM User Manual June 24, 2004
A
Functional Overview
DF1 COMMAND STRUCTURE
Column # 1 2 3 4 5 6 7 8 9 10 11
Function Enable Internal Poll Interval Swap Node Function Code Code Address Tim e Count Code
FC 1 Code Register Seconds Count Code Node 1 W ord Address FC 2 Code Register Seconds Count Code Node 2 W ord Address FC 3 Code Register Seconds Count 0 Node 3 W ord Address FC 4 Code Register Seconds Count 0 Node 4 W ord Address FC 5 Code Register Seconds Count Code Node 5 W ord Address FC 100 Code Register Seconds Count Code Node 100 File Number Element Sub-Element FC 101 Code Register Seconds Count Code Node 101 File Number Element Sub-Element FC 102 Code Register Seconds Count 0 Node 102 File Number Element Sub-Element FC 150 Code Register Seconds Count Code Node 150 File String FC 151 Code Register Seconds Count Code Node 151 File String FC 152 Code Register Seconds Count 0 Node 152 File String FC 501 Code Register Seconds Count Code Node 501 File Type File Number Element FC 502 Code Register Seconds Count Code Node 502 File Type File Number Element Sub-Element FC 509 Code Register Seconds Count Code Node 509 File Type File Number Element FC 510 Code Register Seconds Count Code Node 510 File Type File Number Element Sub-Element FC 511 Code Register Seconds Count 0 Node 511 File Type File Number Element Sub-Element
Node Address = Destination Address for Message
Module Information Data Device Information Data
ddress Code Function Parameters
22 ProSoft Technology, Inc. MVI69-DFCM User Manual June 24, 2004

Module Configuration

3 Module Configuration
3.1 Power Up
On power up, the module enters into a logical loop waiting to receive configuration data from the processor. Upon receipt, the module will begin execution of the command list if it is present.
3.2 Configuration File
In order for the module to operate, a configuration file (DFCM.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 DF1 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.
The following provides an example of a DFCM configuration file. Please refer to Appendix F for information on how to transfer the configuration file between the module and the PC.
# DFCM69_120.CFG # # This file contains the configuration for the MVI69-DFCM communication # module. # # LOCATION : Test Bench # DATE : 02/19/2004 # CONFIGURED BY : RAR # MODIFIED : # # This section is used to define the configuration for the Module level # data. # [Module] Module Name : Test Example of MVI69-DFCM Communication Module
Backplane Fail Count : 0 # Error/Status Pointer : 2000 #Location for module status data (-1=ignore)
Block Transfer Size : 120 #Data size for BTR/BTW 60, 120 or 240
Read Register Start : 0 #Starting DB location where data read by processor Read Register Count : 360 #Number of words transferred to processor (BT size * n) Write Register Start : 1000 #Starting DB location where data placed by processor Write Register Count : 240 #Number of words transferred from processor (BT size * n)
ProSoft Technology, Inc. 23 MVI69-DFCM User Manual June 24, 2004
Module Configuration
# This section is used to define the configuration for the DF1 master device # simulated on Port 1. #
[DF1 Port 1] Enabled : Yes #Y=Use port, N=Do not use port Type : Master #M=Master, S=Slave Local Station ID : 0 #DF1 node address Protocol : Full #F=Full-Duplex, H=Half-Duplex Termination Type : CRC #B=BCC, C=CRC Baud Rate : 19200 #Baud rate for port 110-115K Parity : None #N=None,O=Odd,E=Even,M=Mark,S=Space Data Bits : 8 #5, 6, 7 or 8 Stop Bits : 1 #1 or 2 Minimum Response Delay : 0 #0-65535 mSec before sending response msg RTS On : 0 #0-65536 mSec before message RTS Off : 1 #0-65536 mSec after message Use CTS Line : No #Use CTS modem control line (Y/N) Response Timeout : 15000 #Response messgage timeout (0-65535 mSec) Retry Count : 2 #Response failure retry count
ENQ Delay : 0 #0-65535 mSec before DLE-ENQ sent Minimum Command Delay : 10 #Minimum number of msec's between commands Error Delay Count : 100 #0-65535 Command cycle count if error Command Error Pointer : 3000 #Cmd Error list data (-1=ignore) Slave List Pointer : 3100 #Slave status list data (-1=ignore)
First File : 7 #First file number for SLC simulation File Size : 200 #Number of elements in each file File Offset : 0 #Database offset for first file element
[DF1 Port 1 Commands] # The file contains examples for a SLC 5/03 processor. # # LOCATION : # DATE : 06/24/99 # CONFIGURED BY : RAR # MODIFIED : # 07/23/99 -- Set to read more data file types. # START # 1 2 3 4 5 6 7 8 9 10 11 # Internal Poll Swap Node Func File File Elm Sub # Enable Address Interval Count Code Address Code Type # # Elm
24 ProSoft Technology, Inc. MVI69-DFCM User Manual June 24, 2004
Loading...
+ 86 hidden pages