PS69 DPM User Manual
PS69 DPM User Manual
PS69 DPM User Manual
October 1, 2014
USER MANUAL
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 our products, documentation, or support, please write or call us.
ProSoft Technology
5201 Truxtun Ave., 3rd Floor
Bakersfield, CA 93309
+1 (661) 716-5100
+1 (661) 716-5101 (Fax)
www.prosoft-technology.com
support@prosoft-technology.com
October 1, 2014
®
ProSoft Technology , is a registered copyright of ProSoft Technology, Inc. All other brand or product names are or
may be trademarks of, and are used to identify products and services of, their respective owners.
In an effort to conserve paper, ProSoft Technology no longer includes printed manuals with our product shipments.
User Manuals, Datasheets, Sample Ladder Files, and Configuration Files are provided on the enclosed DVD and are
available at no charge from our web site: http://www.prosoft-technology.com
Throughout this manual, you will see references to other product names such as:
RIF 1769-DPM
SYCON.net
These product names (RIF 1769, SYCON.net) are legacy versions, and are mentioned for backward compatibility
with existing implementations. These products are now supported and maintained by ProSoft Technology.
The ProSoft and legacy versions of these products may not be interchangeable.
PS69-DPM ♦ CompactLogix or MicroLogix Platform Contents
PROFIBUS DPV1 Master User Manual
Contents
Your Feedback Please ........................................................................................................................ 2
1 Start Here 7
1.1 General Information................................................................................................... 8
1.2 Software Requirements ............................................................................................. 8
1.3 Hardware Requirements ........................................................................................... 9
1.4 Reference Systems ................................................................................................... 9
1.5 Programmable Controller Functionality ................................................................... 10
1.6 Package Contents ................................................................................................... 10
1.7 Installing the Module ............................................................................................... 11
1.8 Sample Add-On Instruction Import Procedure ........................................................ 14
1.8.1 Create a new RSLogix 5000 project ....................................................................... 14
1.8.2 Create the Module ................................................................................................... 15
1.8.3 Import the Ladder Rung .......................................................................................... 18
1.8.4 Adding Multiple Modules (Optional) ........................................................................ 22
1.9 Connecting Your PC to the Processor .................................................................... 29
1.10 Downloading the Sample Program to the Processor .............................................. 30
1.10.1 Configuring the RSLinx Driver for the PC COM Port .............................................. 31
3 Communication 59
3.1 I/O Communication and I/O Memory Map ............................................................... 59
3.1.1 I/O Arrays Overview ................................................................................................ 59
3.1.2 Input Array ............................................................................................................... 61
3.1.3 Output Array ............................................................................................................ 69
3.2 CIP Messaging ........................................................................................................ 73
3.2.1 Using the MSG Instruction in RSLogix 5000 ........................................................... 73
3.2.2 Supported PROFIBUS-DP Messages ..................................................................... 76
6 Reference 105
6.1 Specifications ........................................................................................................ 105
6.1.1 General Specifications .......................................................................................... 105
6.1.2 PROFIBUS Interface ............................................................................................ 106
6.1.3 Functional Specifications ...................................................................................... 106
6.1.4 Hardware Specifications ....................................................................................... 107
6.2 PROFIBUS Functionality ...................................................................................... 108
6.2.1 DPV0 Services ...................................................................................................... 108
6.2.2 DPV1 Services ...................................................................................................... 109
6.2.3 Start/Stop Communication .................................................................................... 109
6.3 RSLogix 5000 User Defined Data Types .............................................................. 110
6.3.1 Input: DPM_INPUT_ARRAY................................................................................. 110
6.3.2 Input: DPM_DEV_STATUS_REGISTER .............................................................. 110
6.3.3 Input: DPM_FW_REVISION ................................................................................. 110
6.3.4 Input: DPM_GLOBAL_STATE_FIELD ................................................................. 111
6.3.5 Input: DPM_SLAVE_DIAG_DATA ........................................................................ 111
6.3.6 Input: DPM_DPV1_ALARM_INDICATION ........................................................... 112
6.3.7 Output: DPM_OUTPUT_ARRAY .......................................................................... 112
6.3.8 Output: DPM_DEV_COMMAND_REGISTER ...................................................... 113
6.3.9 Output: DPM_SLAVE_DIAG_COMMAND ........................................................... 113
6.3.10 Output-DPM_GLOBAL_CONTROL_COMMAND ................................................. 113
6.3.11 DDLM_GLOBAL_CONTROL_REQUEST ............................................................ 114
6.3.12 DDLM_GLOBAL_CONTROL_CONFIRM ............................................................. 114
6.3.13 DDLM_SET_PARAMETER_REQUEST ............................................................... 114
6.3.14 DDLM_SET_PARAMETER_CONFIRM ............................................................... 114
6.3.15 DDLM_SLAVE_DIAGNOSTIC_REQUEST .......................................................... 115
Index 129
1 Start Here
In This Chapter
General Information ................................................................................ 8
Software Requirements .......................................................................... 8
Hardware Requirements ......................................................................... 9
Reference Systems................................................................................. 9
Programmable Controller Functionality ..................................................10
Package Contents .................................................................................10
Installing the Module ..............................................................................11
Sample Add-On Instruction Import Procedure .......................................14
Connecting Your PC to the Processor ...................................................29
Downloading the Sample Program to the Processor .............................30
To get the most benefit from this User Manual, you should have the following skills:
Rockwell Automation® RSLogix™ software: launch the program, configure ladder
logic, and transfer the ladder logic to the processor
Microsoft Windows®: install and launch programs, execute menu commands, navigate
dialog boxes, and enter data
Hardware installation and wiring: install the module, and safely connect PROFIBUS
DPV1 and CompactLogix or MicroLogix devices to a power source and to the PS69-
DPM module’s application port(s)
CompactLogix System
RSLogix 5000, V13.00 or higher
Configuration Tool
PROSOFT.fdt (SYCON.net) for Rockwell Interfaces V1.023 or higher
CompactLogix System
Personal Computer
1769: Programmable Controller
1769: Power Supply
1769: Right or Left handed Termination End Cap
Serial Cable for interface to the 1769-Programmable Controller.
Serial Cable for PROSOFT.fdt (SYCON.net) to Diagnostic port connection ProSoft part
number CAB-SRV-MD8
CompactLogix System
PS69-DPM CompactLogix 1769-L20 CompactLogix 1769-L32E
Firmware V10.2 Firmware V13.18 Firmware V13.28
CompactLogix System
Processor/ Features 1769-L20 1769-L30 1769-L31 1769-L32E 1769-L35E
I/O yes yes yes yes yes
CIP Messaging no no yes yes Yes
Important: Before beginning the installation, please verify that all of the following items are present.
Qty. Part Name Part Number Part Description
1 PS69-DPM Module PS69-DPM PROFIBUS DPV1 Master
1 Cable CABLE-SRV-MD8 For Connection to Module’s Port
1 ProSoft Solutions DVD-001 Contains sample programs, utilities and
DVD documentation for the PS69-DPM module.
If any of these components are missing, please contact ProSoft Technology Support for
replacement parts.
Before you attempt to install the module, make sure that the bus lever of the adjacent
module is in the unlocked (fully right) position.
Warning: This module is not hot-swappable! Always remove power from the rack before inserting or
removing this module, or damage may result to the module, the processor, or other connected devices.
1 Align the module using the upper and lower tongue-and-groove slots with the adjacent
module and slide forward in the direction of the arrow.
2 Move the module back along the tongue-and-groove slots until the bus connectors on
the PS69 module and the adjacent module line up with each other.
3 Push the module’s bus lever back slightly to clear the positioning tab and move it firmly
to the left until it clicks. Ensure that it is locked firmly in place.
5 Press the DIN-rail mounting area of the controller against the DIN-rail. The latches will
momentarily open and lock into place.
Note: This section only applies if you are using RSLogix 5000 version 16 or higher.
The following file is required before you start this procedure. Copy the file from the ProSoft
Solutions DVD, or download it from Error! Hyperlink reference not valid..
2 Select 1769-MODULE
Parameter Value
Name Enter a module identification string. Example: PS69PDPMV1
Description Enter a description for the module. Example: PROFIBUS
DPV1 Master.
Comm Format Select DATA-INT
Slot Enter the slot number in the rack where the PS69-DPM
module will be installed.
Input Assembly Instance 101
Input Size 248
Output Assembly Instance 100
Output Size 248
Configuration Assembly Instance 102
Configuration Size 0
4 On the Connection tab, check or un-check, as desired the MAJOR FAULT option.
Now the PS69-DPM module will be visible at the I/O Configuration section.
7 The following window will be displayed showing the controller tags to be created during
the import procedure: If desired, the description, "PS69-DPM Interface AOI" may be
typed into the description field for AOIPS69DPM.L5X file.
8 If you are using the module in a different slot (or remote rack) select the correct
connection input and output variables associated to the module. If your module is
located in slot 1 of the local rack this step is not required.
Click OK to confirm the import. RSLogix will indicate that the import is under progress:
When the import is completed, the new rung with the Add-On instruction will be visible
as shown in the following illustration.
The procedure has also imported new user defined data types, data objects and the
Add-On instruction to be used at your project.
Important: If your application requires more than one PS69-DPM module into the same project, follow the steps
below and make certain that both modules are assigned identical Block Transfer Sizes.
In the I/O Configuration folder, click the right mouse button to open a shortcut menu, and then choose New
Module.
1 Select 1769-MODULE.
4 Expand the TASKS folder, and then expand the MAINTASK folder.
5 On the MainProgram folder, click the right mouse button to open a shortcut menu. On
the shortcut menu, choose New Routine.
6 In the New Routine dialog box, enter the name and description of your routine, and then
click OK.
7 Select an empty rung in the new routine, and then click the right mouse button to open a
shortcut menu. On the shortcut menu, choose IMPORT RUNG…
Note: It is not necessary to create a completely new routine. It is possible to add the PS69-DPM_2 module in the
previously created routine. If you need to create a new routine, insert a jump instruction in the previous routine to
the new routine.
10 Associate the I/O connection variables to the correct module. The default values are
Local:1:I and Local:1:O. These require re-assignment to the new module's location.
11 Change all the default tag names to avoid conflict with existing tags from previous
imports. In this step, you should append a string to the default tag names, such as "_2",
as shown in the following illustration.
Because the second module's logic was created in a new routine, enter a rung in the Main
routine with a JSR instruction to the new routine to enable the PLC logic to communicate
with both modules.
The setup procedure is now complete. Save the project and download the application to
your CompactLogix processor.
2 Connect the straight connector end of the cable to the serial port on your computer.
Note: The key switch on the front of the CompactLogix processor must be in the REM or PROG position.
1 If you are not already online to the processor, open the COMMUNICATIONS menu, and
then choose DOWNLOAD. RSLogix will establish communication with the processor.
2 When communication is established, RSLogix will open a confirmation dialog box. Click
the DOWNLOAD button to transfer the sample program to the processor.
3 RSLogix will compile the program and transfer it to the processor. This process may take
a few minutes.
4 When the download is complete, RSLogix will open another confirmation dialog box.
Click OK to switch the processor from PROGRAM mode to RUN mode.
Note: If you receive an error message during these steps, refer to your RSLogix documentation to interpret and
correct the error.
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
RS-232 DF1 Devices 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.
In This Chapter
Scanner (PROFIBUS-DP-Master) .........................................................34
PROSOFT.fdt (SYCON.net) ..................................................................36
RSLogix 5000 (version 15 or lower) .......................................................51
RSLogix 500 ..........................................................................................55
Back Up the Project ...............................................................................57
The following sections describe the individual steps for configuration and start-up of the
PS69-DPM module. Install the PROFIBUS Master module into a free slot in the
CompactLogix or MicroLogix 1500 controller. The information for installation of
communication modules in CompactLogix or MicroLogix 1500 systems can be found in the
section Installation and Wiring or in the Rockwell installation manual for the 1769 system.
The configuration and parameterization of the module is carried out in three steps
Configuration of the module in a CompactLogix / MicroLogix 1500 project of the RSLogix
5000 / RSLogix 500 programming tool.
Parameterization and configuration of the PROFIBUS Master with the PROSOFT.fdt
(SYCON.net) configuration tool.
Creating the data objects and the ladder diagram in RSLogix 5000 / RSLogix 500.
Important: This procedure converts your Sycon.net SPJ files. SPJ files that are opened and converted in
PROSOFT.fdt can no longer be edited in Sycon.net. Take care to save copies of your Sycon.net project files.
Important: SYCON.net and PROSOFT.fdt share components. The two applications cannot coexist on the same
PC.
3 Open each project file (SPJ file) that you saved from Sycon.net. PROSOFT.fdt will
prompt you to convert the project.
2.2.1 General
The PROFIBUS-DP system is configured by using the configuration and diagnostic tool
PROSOFT.fdt (SYCON.net). The configuration is downloaded to the module and stored into
the Flash memory of the Master module by using the download function of PROSOFT.fdt
(SYCON.net). Downloading of the configuration is done via the diagnostic interface.
Connect the diagnostic interface to a serial interface of the PC. Start PROSOFT.fdt
(SYCON.net) from the installation folder. Follow the basic steps to create a PROFIBUS
configuration. A comprehensive explanation for all configuration steps can be found in the
Online help in the Help > Topics... menu.
Then, in PROSOFT.fdt (SYCON.net), click and hold the left mouse button and drag the
PS69-DPM device from the device catalog area to either the Network View bus or the
netProject screen, add the device to the project by releasing the left button when the "+"
sign appears. Your screen should show the following:
Select the Baud Rate and Station Address for your Master. The rest of the settings do not
need adjustment and should be automatically calculate when changing the Baud Rate
setting. The default settings cover the most of cases.
Under some circumstances it might be necessary to adjust these values. If these settings
need to be changed, please refer to the Operating Instruction Manual for "DTM for
PROFIBUS Master Devices" for the meaning of these values and proper settings.
Address Table
Select Address Table in the navigation area. The dialog will appear as shown in the
following illustration.
The Address Table describes the Slaves configured and their dual port memory offsets for
input and output data. You do not have to change anything in this setup screen as long as
the Enable Auto Addressing checkbox is checked. If unchecked, you can change the offsets
manually.
Station Table
Note: The following illustration shows how to change the bus address for a Slave. This dialog box is the only
place that allows you to change the slave address.
Complete the process click the OK or Apply button and close the dialog box. The Master
settings are now complete.
Note: The slave offset addresses shown here are not the same you will find in the PLC memory. You have to
add 44 words the Input address (to allow space for the Status Information area) and 8 words to the Output
address (to allow space for the Command Information area). See IO Arrays Overview for details.
Slave Settings
Double click on the slave that has been added. A dialog box similar to the one show below
appears.
Insert or append appropriate data modules from the list of available modules into the list of
configured modules.
Verify or change the parameters as required. These parameters are vendor and device
specific.
Slave Groups
Select Groups in the navigation area. The dialog should appear as shown in the figure
below.
A Slave can be assigned to be member of one or more groups. The group membership
functions as a filter for the Sync and Freeze commands. The Global Control telegram
(containing Sync and Freeze commands) is sent as a broadcast telegram that allow slaves
synchronizing their input and output data. Only the Slaves assigned to groups react on Sync
and Freeze commands.
Select Extensions in the navigation area to view and change additional slave settings.
Make the appropriate settings for your application. Complete the process and click the OK
or Apply button to close the dialog box. Repeat the above process for every Slave in your
system. Save the project with File > Save As...
Important: Before you download the project, you must change the processor to PROG mode. You cannot
download the project to the PS69-DPM module while the processor is in RUN mode".
Once saved your project is now ready to be downloaded to the Module. Connect the serial
port of your PC to the Diagnostic port on the front of the Master module using supplied
interface cable (CABLE-SRV-MD8). Follow the steps below to download your project.
If the master is connected to a COM port on the PC, it will scan automatically for available
COM ports. Select the COM port to associate with the PS69-DPM.
Click the Scan button to retrieve a list of available devices and drivers, and then select the
PS69-DPM from the list.
Important: It is not possible at this time to upload the project from the PS69-DPM. You must create the project
as described in Create a New Project (page 37), and then download it to the module.
This dialog box is a warning regarding a possible interruption of the bus communication
during the download. Click Yes to begin the download. The download progress dialog box
will appear.
Note: The simplest way to startup the module in an RSLogix 5000 project is to use the example project provided
on the ProSoft Solutions DVD. In this example project, the slot number in the configuration dialog of the module
may have to be changed to match the users system.
The following dialog box appears for the selection of the new module.
Select "1769-MODULE Generic 1769 module" from the select module type list and then
OK.
Determine a name and enter a short description of the module. Select the slot number in
which the module is installed in the controller. Select Data - INT as the Comm_Format. Set
the connection parameters as they are shown in the dialog.
Connection Parameter Assembly Instance Size (in Words)
Input 101 44 + X (X = 0 ... 204)
Output 100 8 + Y (Y = 0 ... 240)
Configuration 102 0
X = Number of Words configured for the Master module (PROFIBUS input data); input size can be in the range
between 44 and 248 words
Y = Number of Words configured for the Master module (PROFIBUS output data); output size can be in the
range between 8 and 248 words
Input Size: The input size must be at least 88 Bytes (44 Words). It must be large enough
to accommodate the status information required by the module, which is 88 Bytes (44
Words) and the number of PROFIBUS input data. You can increase the size of this area
using the size of each Input module connected. The Input image starts with byte 88.
Output Size: The output size must be at least 16 Bytes (8 Words). It must be large
enough to accommodate the command information required by the module, which is 16
bytes (8 Words), and the number of PROFIBUS output data. You can increase the size
of this area using the size of each Output module connected. The Output image starts
with byte 16.
Note: If the parameters do not correspond to the template values, then the controller cannot establish a
communication relationship with the module.
The following dialog box appears for the selection of the new Module.
On the left side of the dialog set the focus to the slot number where the module is installed.
Set the focus to "Other - Requires I/O Card Type ID" from the available module types and
then double click on it.
Output Word: The output size must be at least 16 Bytes (8 Words). It must be large
enough to accommodate the command information required by the module, which is 16
bytes (8 Words), and the number of PROFIBUS output data. You can increase the size
of this area using the size of each Output module connected. The Output area image
with byte 16.
Configuration Size: The size for the configuration array must be always 0.
Note: If the parameters do not correspond to the template values, then the controller cannot build up
communication with the module.
3 Communication
In This Chapter
I/O Communication and I/O Memory Map..............................................59
CIP Messaging ......................................................................................73
Input Array
Below is a summary of the register layout of the input area of the PROFIBUS Master
module. The offset values are defined as byte.
Offset Register Type Name
0 Device Status Register Status Bits
1 Device Status Register Handshake Acknowledge Bits
2 Device Status Register Reserved
3 Device Status Register Reserved
4 Firmware Revision Minor Version
5 Firmware Revision Major Version
6 to 7 Reserved Reserved
8 Global State Field Ctrl
8 Global State Field Aclr
8 Global State Field Nexc
8 Global State Field Fat
8 Global State Field Eve
8 Global State Field NRdy
8 Global State Field Tout
8 Global State Field Reserved
9 Global State Field DPM_State
10 Global State Field Err_rem_adr
11 Global State Field Err_event
12 to 13 Global State Field Bus_err_cnt
14 to 15 Global State Field Time_out_cnt
16 to 23 Global State Field Reserved[8]
24 to 39 Global State Field Sl_cfg[128]
Output Array
Below is a summary of the register layout of the output area of the PROFIBUS Master
module. The offset values are defined as byte.
Offset Register Type Name
0 Device Command Register Command Bits
1 Device Command Register Handshake Request Bits
2 Device Command Register Reserved
3 Device Command Register Reserved
4 Slave Diag Slave Address
5 Slave Diag Function
6 Slave Diag Reserved
7 Slave Diag Reserved
8 Global Control Command Slave_ Address
9 Global Control Command Control _Command
10 Global Control Command Group_Select
11 Global Control Command Reserved
12 Reserved Register Reserved
13 Reserved Register Reserved
14 Reserved Register Reserved
15 Reserved Register Reserved
16 to 495 PROFIBUS Output area Outputs (480 Bytes)
HsAck0 := SlvDiagCnf
This bit indicates the processing of a SlaveDiag request. If this bit is equal to SlvDiagReq in
the Command register the command has been processed. If unequal, the command is still in
progress.
HsAck1 := GlbCtrlCnf
This bit indicates the processing of a Global Control request. If this bit is equal to
GlbCtrlReq in the Command register the command has been processed. If unequal, the
command is still in progress.
HsAck2..7 := Reserved
Reseved for future use.
Firmware Revision
This data field, which is part of the input image of the CompactLogix PROFIBUS Master
module, contains the current firmware revision. The Minor revision indication will be in the
low byte and the Major revision will be in the high byte. The Firmware Field is placed in the
Input area as shown in the following table.
Byte Offset Structure Member Data Type Description
4 FwMinor SINT Firmware Minor Revision
5 FwMajor SINT Firmware Major Revision
6 to 7 Reserved INT Reserved
Example:
If FwMajor = 10 and FwMinor = 1 then the firmware revision is 10.1.
Due to a different internal firmware numbering scheme than Major/Minor version the
following scheme is used to utilize this information to support requirements for a major
revision/minor revision. Details are provided in the following table. Because the first release
of the modules internal firmware will start with at least V01.000 the first firmware version in
Major Minor scheme will be at least 10.00.
FW Revision FW Major FW Minor
V01.000 10 00
V01.001 10 01
GLOBAL-BITS
Bit Offset Member Name Data Type Signification Meaning if Bit is set
0 Ctrl BOOL CONTROL-ERROR Parameterization error
1 Aclr BOOL AUTO-CLEAR- Module stopped communication
ERROR with all slaves and reached the
auto-clear-end state.
2 Nexc BOOL NON-EXCHANGE- At least one slave has not reached
ERROR the data exchange state and no
process data will be exchanged.
3 Fat BOOL FATAL-ERROR Because of major bus error, no
further bus communication is
possible.
4 Eve BOOL EVENT-ERROR The module has detected bus short
circuits. The number of detected
events is contained in the
Bus_error_cnt variable. This bit is
set when the first event was
detected and will remain set.
5 NRdy BOOL HOST-NOT- Indicates if the Application program
READY- has set its state to operative or not.
NOTIFICATION If this bit is set the Application
program is not ready to
communicate
6 Tout BOOL TIMEOUT-ERROR The module has detected an
overstepped timeout supervision
value because of rejected
PROFIBUS telegrams. It is an
indication for bus short circuits
while the master interrupts the
communication. The number of
detected timeouts is available in
the Time_out_cnt variable. This bit
will be set when the first timeout is
detected and will remain set.
7 Reserved1 BOOL Reserved Reserved
Note: The same Slave Diagnostic function can also be executed by CIP message functionality described later in
this manual. Some types of the CompactLogix controller family do not support messaging. This method below
can be used for controllers that only support I/O or I/O and CIP messaging. The slave diagnostic via I/O has the
limitation that it cannot show extended diagnostic information, if a slave supports this. It can only give the
mandatory diagnostic information of a slave. Extended diagnostic information can be received with the CIP
message functionality only.
Byte Offset Structure member Data Type Description
72 Slave Address SINT Address of Slave with the Diagnostic request
73 Slave Diag Failure SINT See Definition Below
74 Station Status_1 SINT See Definition Below
75 Station Status_2 SINT See Definition Below
76 Station Status_3 SINT See Definition Below
77 Master Address SINT This byte contains the master address of the PROFIBUS-
DP master which has done the parameterization of the
slave. If a slave is not parameterized the value is 255
78 to 79 Ident Number INT PROFIBUS Ident number from Slave in which the
diagnostic request was made
Station Status_1
This status byte will be zero indicating that the slave device has no errors. The non-zero
values which are errors are defined in the following table.
Bit Offset Member Name Data Type Meaning if Bit is set
0 Sta_Non_Exist BOOL No response from slave device. The station is non
existent
1 Sta_Not_Ready BOOL Slave not ready
2 Cfg_Fault BOOL Slave has incorrect parameterization
3 Ext_Diag BOOL The extended diagnostics area is used
4 Not_Supp BOOL Unknown command is detected by the slave
5 Inv_Slv_Res BOOL Invalid slave response
6 Prm_Fault BOOL Last parameterization telegram was faulty
7 Master_Lock BOOL Slave is controlled by another master
Station Status_2
Bit Offset Member Name Data Type Meaning if Bit is set
0 Prm_Req BOOL Slave must be parameterized
1 Stat_Diag BOOL This bit remains active until all diagnostic data has been
retrieved from the slave
2 Slave_Device BOOL This bit is always set by the Slave
3 WD_On BOOL Slave watchdog is activated
4 Freeze_Mode BOOL Freeze command active
5 Sync_Mode BOOL Sync command active
6 Reserved BOOL Reserved
7 Deactivated BOOL Slave not active
Station Status_3
Bit Offset Member Name Data Type Meaning if Bit is set
0 .. 6 Reserved0..6 BOOL Reserved
7 ExtDiagOverflow BOOL Slave has a large amount of diagnostic data and cannot
send it all
Alarm_Status
Bit Offset Member Name Data Type Description
0 AlarmInd BOOL Alarm Indication
1 Reserved BOOL Reserved
2 Reserved BOOL Reserved
3 Reserved BOOL Reserved
4 Reserved BOOL Reserved
5 Reserved BOOL Reserved
6 Reserved BOOL Reserved
7 AlarmOverrun BOOL Alarm Overrun
The alarm indication registers start with the byte "Alarm_Status". This byte is a collection of
bits to indicate alarm status. Bit D0 (AlarmInd) is set to "1" to indicate to the user application
that an alarm request has been received by the module. The specifics of the alarm request
will be present in the remaining alarm indication fields, which contain the slave station
address "Rem_Add", the slot number "Slot_Number", and so on. according to the
PROFIBUS specification. If an alarm is indicated, the user application has to decide what to
do with its application specific reaction.
The application has to respond to the alarm with a CIP message, which is described later in
this manual. With its response, the application confirms to the slave that the alarm was
received. When the user application responds to the alarm using a CIP message Bit 0 will
be set to "0" indicating that the alarm has been acknowledged and is no longer pending. The
alarm information Rem_Adr, Slot_Number, and so on. is not cleared. It can happen that a
second or more alarms are pending. In this case bit D0 will not be reset to "0" when the
application has responded to one alarm. Only the alarm information Rem_Add,
Slot_Number and so on. will be update in the case of multiple alarms pending.
To handle this situation the application has to look also to the variable "AlarmCnt". This
counter will be incremented every time a new alarm is pending.
NOTE: It is possible to receive several alarms from one or more slaves. The master module has a buffer for only
32 alarms. The application has to respond as fast as possible to alarms. If the internal alarm buffer runs over,
further alarms are lost. This situation is indicated by the "Alarm_Status" bit D7 "AlarmOverrun". If an alarm was
loss, this bit is set to "1". It will be cleared only if the bus communication is stopped for example if the controller
goes to stop or the application stops the bus communication by the NRDY bit in the command register.
INIT := Init
This function is not implemented.
RST := Reset
The user program can use this bit to execute a Reset (Cold Start) of the module.
Attention: Using the Reset command will cause an interruption in bus communication. All connected slaves go
to fail safe mode.
Note: The user application can only initiate a new command as long as the HsReq bit and the HsAck bit are
equal.
HsReq0..7 := Reserved
Reserved for future use.
The slave diagnostic command can be executed by using the corresponding handshake
request bit HsReq0 in the Device Command Register (page 69). The result of the slave
diagnostic command can be read in the Slave Diagnostic field of the input array.
Byte Offset Structure Member Data Type Description
4 SLA SINT Slave Address
5 FNC SINT Function
6 Reserved SINT Reserved
7 Reserved SINT Reserved
FNC := Function
If FNC is 0, the diagnostic data are requested from internal buffer of the Master. This is the
recommended method, because the master has always the most recent diagnostic data in
its internal buffer from the Slave.
If FNC is 1 the diagnostic data are requested directly from the slave itself. This is not the
preferred method because, this method causes additional bus loading and will influence the
bus cycle time.
Note: The same Slave Diagnostic function can also be executed by CIP message functionality described later in
this manual. Some types of the CompactLogix controller family do not support messaging. This method can be
used for controllers that only support I/O or I/O and CIP messaging. The slave diagnostic via I/O has the
limitation that it cannot show extended diagnostic information if a slave supports this. It can only give the
mandatory diagnostic information of a slave. Extended diagnostic information can be received with the CIP
message functionality.
Note: The same Global Control function can be also executed by CIP message functionality described later in
this manual. Some types of the CompactLogix controller family do not support messaging. This method is used
only for controllers that support I/O not messaging.
Byte Offset Structure Member Data Type Description
8 SLA SINT Slave Address
9 CC SINT Function
10 GS SINT Reserved
11 Reserved SINT Reserved
CC := Control Command
The parameter CC determines the function when using the Global Control Command.
Bit Offset Structure Member Data Type Description
0 Reserved BOOL Reserved
1 Clear_data BOOL Clear output data
2 UnFreeze BOOL Unfreeze input data
3 Freeze BOOL Freeze input data
4 Unsync BOOL Neutralize the sync command or unsync
5 Sync BOOL Freeze output data, until sync command is neutralized
6 Reserved BOOL Reserved
7 Reserved BOOL Reserved
Combination of the Unsync/Sync and Unfreeze/Freeze bits:
Bit 2 or 4 Bit 3 or 5 Meaning
0 0 No function
0 1 Function (sync or freeze) is active
1 0 Function (unsync or unfreeze) is active
1 1 Function (unsync or unfreeze) is active
GS := Group_Select
The parameter GS allows the user program to select which of the 8 possible slave groups is
addressed by this service. This command is activated in the Slave when the AND linkage
between its internal Group_Ident and the desired Group_Select logic result is a "1". The
Group_Ident parameter is configured by the Master during the startup phase. If the
Group_Ident parameter is set to a value of "0", the Slave does not carry out a group
evaluation (AND linkage) with the received command.
The global control command is processed by using the two handshake bits GlbCtrlReq in
the Device Command register and GlbCtrCnf in the Device Status register. The command is
sent on every High to Low and Low to High transition of the GlbCtrlReq bit. If both bits are
equal a command can be sent. To send a command setup the Global_Control_array with
the desired command. Set the bits GlbCtrlReq and GlbCtrlCnf to unequal by transition of the
GlbCtrlReq bit. If the GlbCtrlCnf was set equal to the GlbCtrlReq bit the command was sent.
The truth table below provides an explanation of this process.
GlbCtrlReq GlbCtrlCnf Meaning
0 0 No Control_Command is active. Next command can be send.
1 0 Control command in progress.
1 1 No Control_Command is active. Next command can be send
0 1 Control command in progress.
0 0 Process repeats
Note: Up to time of release of the PS69-DPM module not all of the MicroLogix 1500 controller support CIP
messaging or CIP messaging for generic Compact I/O modules. That's why CIP messaging, which means
PROFIBUS DPV1 services, are not yet supported with a MicroLogix 1500 System and a PS69-DPM module.
Select the "?" and enter the MESSAGE type created SlaveDiagMsg as shown below.
Note: You must create two user defined data types to send and receive the information for this command
message. In this example SlaveDiagReq and SlaveDiagCnf were created to hold the command specific
information.
The path in the dialog above must point to the 1769-Module. Use the Browse button to
select the path.
Note: The sample program "RIF_1796_DPM_messaging_L32E.ACD" has an example for each of these
services.
DDLM_Slave_Diag
The DDLM_SLAVE_Diag request is used to query the status of a PROFIBUS Slave by
using its address on the bus. This request can be used to determine the general health of
the slave device. The MSG instruction Request /Confirmation format is as follows.
DDLM_SLAVE_DIAG_REQUEST
Parameter Data Type Value Description
Reserved1 INT 0 Reserved
Reserved2 INT 0 Reserved
Reserved3 INT 0 Reserved
Command SINT 66 Command for the DDLM_Slave_Diag service
Reserved4 SINT 0 Reserved
DeviceAdr SINT 0..125 Address of the PROFIBUS Slave
DataArea SINT Reserved
DataAdr INT Reserved
DataIdx SINT Reserved
DataCnt SINT Reserved
DataType SINT Reserved
Function SINT 1,3 1 Read the diagnostic information from the internal buffer of
the Master
3 Read the diagnostic information directly from the Slave
DDLM_SLAVE_DIAG_CONFIRM
Name Data Type Value Description
Reserved1 INT 0 Reserved
Reserved2 INT 0 Reserved
Answer SINT 66 Answer DDLM_Slave_Diag
Failure SINT e Error, Status (see following section)
Reserved3 INT 0 Reserved
DeviceAdr SINT 0 .. 125 Slave Address
DataArea SINT 0 Reserved
DataAdr INT 0 Reserved
DataIdx SINT 0 Reserved
DataCnt SINT 6+x Length of the diagnostic structure (starting with
StationState_1)
DataType SINT 0 Reserved
Function SINT 1,3 Read function
StationState_1 SINT S1 Station status_1
StationState_2 SINT S2 Station status_2
StationState_3 SINT S3 Station status_3
MasterAddress SINT MA Master address
IdentNumber INT ID Ident Number
Reserved4 INT 0 Reserved
ExtDiag[0..99] SINT EX Extended Diagnostic
MA := Master Address
This byte contains the address of the Master that has configured the Slave.
ID := Ident Number
In this word the Slave answers with its Ident Number.
S1 := Station Status_1
This status byte will be zero indicating that the slave device has no errors. The non-zero
values which are errors are defined in the following table.
Bit Offset Member Name Data Type Meaning if Bit is set
0 Sta_Non_Exist BOOL No response from slave device. The station is non
existent
1 Sta_Not_Ready BOOL Slave not ready
2 Cfg_Fault BOOL Slave has incorrect parameterization
3 Ext_Diag BOOL The extended diagnostics area is used
4 Not_Supp BOOL Unknown command is detected by the slave
5 Inv_Slv_Res BOOL Invalid slave response
6 Prm_Fault BOOL Last parameterization telegram was faulty
7 Master_Lock BOOL Slave is controlled by another master
S2 := Station Status_2
Bit Offset Member Name Data Type Meaning if Bit is set
0 Prm_Req BOOL Slave must be parameterized
1 Stat_Diag BOOL This bit remains active until all diagnostic data has been
retrieved from the slave
2 Slave_Device BOOL This bit is always set by the Slave
3 WD_On BOOL Slave watchdog is activated
4 Freeze_Mode BOOL Freeze command active
5 Sync_Mode BOOL Sync command active
6 Reserved BOOL Reserved
7 Deactivated BOOL Slave not active
S3 := Station_status_3
Bit Offset Member Name Data Type Meaning if Bit is set
0 .. 6 Reserved0..6 BOOL Reserved
7 ExtDiagOverflow BOOL Slave has a large amount of diagnostic data and cannot
send it all
DDLM_Global_Control
The DDLM_Global_Control request makes it possible, to send commands to one or several
DP Slaves. A PROFIBUS-DP Slave accepts a control command only from the DP master.
This request makes it possible to do Sync and Freeze functions. The MSG instruction
Request / Confirmation format is as follows.
DDLM_GLOBAL_CONTROL_REQUEST
Parameter Data Type Value Description
Reserved1 INT 0 Reserved
Reserved2 INT 0 Reserved
Reserved3 INT 0 Reserved
Command SINT 70 Command for the DDLM_Global_Control service
Reserved4 SINT 0 Reserved
DeviceAdr SINT SLA Address of the PROFIBUS Slave
Conrol-Command SINT CC Control_Command
GroupSelect SINT GS Group Select
CC := Control Command
The parameter CC determines the function that is to be executed when using the Global
Control Command.
Bit Offset Structure Member Data Type Description
0 Reserved BOOL Reserved
1 Clear_data BOOL Clear Output Data
2 UnFreeze BOOL Unfreeze Input Data
3 Freeze BOOL Freeze Input Data
4 Unsync BOOL Neutralize Sync Command or Unsync
GS := Group_Select
The parameter GS allows the user program to select which of the 8 possible slave groups is
addressed by this service. This command is activated in the Slave when the AND linkage
between its internal Group_Ident and the desired Group_Select logic result in a "1". The
Group_Ident parameter is configured by the Master during the startup phase. If the
Group_Ident parameter is set to a value of "0", the Slave does not carry out a group
evaluation (AND linkage) with the received command.
DDLM_GLOBAL_CONTROL_CONFIRM
Parameter Data Type Value Description
Reserved1 INT 0 Reserved
Reserved2 INT 0 Reserved
Answer SINT 70 Answer DDLM_Global_Control
Failure SINT 0 Error, status
Reserved3 INT 0 Reserved
DeviceAdr SINT 0..127 Slave Address
The CIP parameterization of this MSG request is as follows.
Parameter Value Remarks
Message Type CIP Generic
Service Type Custom
Service Code 64 hex Service Code "Bridge Message"
Class 65 hex CIP Object "CIP_MSG_BRIDGE"
Instance 1
Attribute 0
Source Element GlbCtrlReq Reference to a Tag of type DDLM_GLOBAL_CONTROL_REQUEST
Destination GlbCtrlCnf Reference to a Tag of type DDLM_GLOBAL_CONTROL_CONFIRM
Source Length 12 Corresponds to the size of the DDLM_GLOBAL_CONTROL_REQUEST
structure
DDLM_Set _Parameter
The DDLM_Set_Parameter request is used to manually send new Slave parameters. This
service is only applicable for Slave devices which are configured within the PROSOFT.fdt
(SYCON.net) project. This service activates the DP-Norm primitive DDLM_Set_Parameter in
order to send parameters to a specific Slave during the run time. The Master creates the
parameters that are to be sent to the Slave in such a way that it adds 7 bytes to the
USR_PRM_DATA of the DDLM_Set_Parameter service. These 7 bytes contain standard
parameters of a Slave (Ident_Number, Watchdog_Factor, Group_Ident, and so on). The
parameters come from the internal configuration of the Master through the PROSOFT.fdt
(SYCON.net) configuration. The user program with this service has no influence on these 7
bytes. The MSG instruction Request /Confirmation format is as follows.
DDLM_SET_PARAMETER_REQUEST
Parameter Data Type Value Description
Reserved1 INT 0 Reserved
Reserved2 INT 0 Reserved
Reserved3 INT 0 Reserved
Command SINT 74 Command for the DDLM_Set_Parameter service
Reserved4 SINT 0 Reserved
UsrPrm[0] SINT 0..125 Address of the PROFIBUS Slave
UsrPrm[1..233] SINT n Slave parameter data, Slave specific
Note: The byte array UsrPrm[234] can be made smaller if needed. This saves memory. The value 234 is the
maximum number of parameters in bytes that can be transferred with the service.
DDLM_SET_PARAMETER_CONFIRM
Parameter Data Type Value Description
Reserved1 INT 0 Reserved
Reserved2 INT 0 Reserved
Answer SINT 74 Answer DDLM_Set_Parameter
Failure SINT e Error, Status (see following section)
Reserved3 INT 0 Reserved
DeviceAdr SINT 0..125 Slave Address
ATTENTION: Do not configure DPV1 services, if your controller does not allow CIP messaging.
MSAC1_Read
The MSAC1_Read request is used by the master to perform a DPV1 read request to a slave
device. The MSG instruction Request/Confirmation format is as follows.
MSAC1_READ_REQUEST
Parameter Data Type Value Description
Reserved1 INT 0 Reserved
Reserved2 INT 0 Reserved
Reserved3 INT 0 Reserved
Command SINT 17 Command for the MSAC1_Read and MSAC1_Write service
Reserved4 SINT 0 Reserved
DeviceAdr SINT 0.. 125 Address of the PROFIBUS Slave
DataArea SINT 0 Reserved
DataAdr INT 0.. 254 Slot Number
DataIdx SINT 0.. 254 Index
DataCnt SINT 1.. 240 Length of the data block to be read
DataType SINT 0 Reserved
Function SINT 1 MSAC1_Read
MSAC1_READ_CONFIRM
Name Data Type Value Description
Reserved1 INT 0 Reserved
Reserved2 INT 0 Reserved
Answer SINT 17 Answer MSAC1_Read
Failure SINT E Error, status (see following Section)
Reserved3 INT 0 Reserved
DeciceAdr SINT 0.. 125 Address of the Slave
DataArea SINT 0 Reserved
DataAdr INT 0.. 254 Slot Number
DataIdx SINT 0.. 254 Index
DataCnt SINT X Length of the received data block
= 1.. 240
DataType SINT 0 Reserved
Function SINT 1 MSAC1_Read
if ‚Failure' = CON_AD
Data[0] SINT Error_Code_1
Data[1] SINT Error_Code_2
if ‚Failure' = 0
Data[0..x-1] SINT Data to be received from the Slave
MSAC1_Write
The MSAC1_Write request is used by the master to perform a DPV1 write to a slave device.
The MSG instruction Request /Confirmation format is as follows.
MSAC1_WRITE_REQUEST
Parameter Data Type Value Description
Reserved1 INT 0 Reserved
Reserved2 INT 0 Reserved
Reserved3 SINT 0 Reserved
Command SINT 17 Command for Service MSAC1_Write
Reserved4 INT 0 Reserved
DeviceAdr SINT 0.. 125 Address of the PROFIBUS Slave
DataArea SINT 0 Reserved
DataAdr INT 0.. 254 Slot Number
DataIdx SINT 0.. 254 Index
Cnt SINT x =1.. 240 Length of the Data block to be written
DataType SINT 0 Reserved
Function SINT 2 MSAC1_Write
Data[0 .. x-1] SINT Data to be written
MSAC1_WRITE_CONFIRM
Parameter Data Type Value Meaning
Reserved1 INT 0 Reserved
Reserved2 INT 0 Reserved
Answer SINT 17 Answer MSAC1_Write
Failure SINT E Error, status (see following section)
Reserved3 INT 0 Reserved
DeviceAdr SINT 0.. 125 Slave address
DataArea SINT 0 Reserved
DataAdr INT 0.. 254 Slot Number
DataIdx SINT 0.. 254 Index
DataCnt SINT 1.. 240 Length of the data block that was written
Function SINT 2 MSAC1_Write
If ‚Failure' == CON_AD
ErrorCode1 SINT Error_Code_1
ErrorCode1 SINT Error_Code_2
MSAL1M_Alarm_Res
The MSAL1M_Alarm_Res request is used by the master to send a DPV1 Alarm response to
a slave device. The message acknowledges the alarm when the appropriate indication
appears in theDPV1 Alarm Indication (page 67) area. The information mapped to this area
must be used in the DPV1 Alarm Response message in order to process the alarm properly.
The mapping of this information shall be as follows.
MSAL1M_ALARM_RES_REQUEST
Parameter Data Type Value Description
Reserved1 INT 0 Reserved
Reserved2 INT 0 Reserved
Reserved3 INT 0 Reserved
Command SINT 18 Command for Service MSAL1M_Alarm_Res
Reserved4 SINT 0 Reserved
DeviceAdr SINT 0.. 125 Address of the PROFIBUS Slave from DPV1 Alarm Indication
Register.
SlotNum SINT 0.. 254 Slot Number from DPV1 Alarm Indication Register.
SeqNum SINT 0.. 31 Sequence Number from DPV1 Alarm Indication Register.
AlarmType SINT 1 to 6,32 to Alarm Type from DPV1 Alarm Indication Register.
126
AlarmSpec SINT 0..7 Alarm Spec from DPV1 Alarm Indication Register.
Reserved5 SINT 0 Reserved
MSAL1M_ALARM_RES_CONFIRM
Parameter Data Type Value Meaning
Reserved1 INT 0 Reserved
Reserved2 INT 0 Reserved
Answer SINT 18 Answer MSAL1M_Alarm_Res
Failure SINT E Error, status (see following section)
Reserved3 INT 0 Reserved
DeviceAdr SINT 0.. 125 Address of the PROFIBUS Slave from DPV1 Alarm Indication
Register.
SlotNum SINT 0.. 254 Slot Number from DPV1 Alarm Indication Register.
SeqNum SINT 0.. 31 Sequence Number from DPV1 Alarm Indication Register.
AlarmType SINT 1 to 6,32 to Alarm Type from DPV1 Alarm Indication Register.
126
AlarmSpec SINT 0..7 Alarm Spec from DPV1 Alarm Indication Register.
Reserved5 SINT 0 Reserved
Note: Some CIP error codes are public and can be generated also by the Controller. Make sure the error was
not generated by the controller.
CIP Extended Meaning Cause Help
Status Status
02 hex 00CA hex Resources System has no segments left to
unavailable execute the command
Out of segments
02 hex 03E8 hex Resources System has no CIP Check the number of parallel CIP
unavailable communication buffer left to messages send to the module.
Out of CIP com buffer execute the command The module can process 5 CIP
messages in parallel. Note that
RSLinx can already consume 2 of
this CIP com buffers if the online
browser is active.
02 hex 0519 hex Resources System has no command buffer Call support
unavailable left to execute the command
Out of command
buffer
08 hex 0000 hex Service not supported The service code of the Check parameter of the CIP
requested object is not Message
supported
14 hex 0000 hex Attribute not The attribute of the requested Check parameter of the CIP
supported object is not supported Message
13 hex 0000 hex Insufficient data Too little data was transferred Check the "Source Length"
with the CIP Message parameter in the parameter dialog
of the CIP Message and check
the consistency of all length
parameter within the requested
command.
DDLM_Slave_Diag
Failure Significance Error source Help
0 Service could be executed without an error
17 No response from the station DEVICE Check network wiring, check bus
address of slave or baud rate
support
18 Master not into the logical token ring Network in general Check master DP-Address or
highest-station-address of the
Master. Examine bus wiring for
bus short circuits
161 Remote Address in request service out of HOST Check parameter in request
range message
DDLM_Global_Control
The DDLM_Global_Control command initiates a multicast command on the PROFIBUS
network to all configured slaves. Therefore, this command is always assumed to be
successfully executed and no error will be placed in Cnf.Failure of the answer message.
Failure Significance Error source Help
0 Service was executed without an
error
DDLM_Set_Parameter
Failure Significance Error source Help
0= Service was executed without an
CON_OK error
2= Resource unavailable Slave Slave has no buffer space left for the
CON_RR requested service
3= Requested function of Master is not Slave Remote SAP is not activated
CON_RS activated within the Slave
81 hex = DEVICE is about to stop the DPV1- HOST, DPV1 communications must be configured to
REJ_SE communication or the DPV1 is not in configuration be activated by the DEVICE
OPEN state
82 hex = DEVICE has stopped the DPV1 Slave A previously addressed Slave has responded
REJ_ABORT communication automatically with non conform parameters
83 hex = A previous service is still in process HOST Wait for the outstanding answer first. Parallel
REJ_PS services are not allowed
84 hex = The length indicator msg.data_cnt HOST Reduce length of message or enlarge
REJ_LE exceeds maximum configured size maximum buffer size in PROSOFT.fdt
(SYCON.net) or in SLAVE data set
85 hex = REJ_IV Wrong parameter in request HOST Check msg.function or msg.device_adr
parameter of requested message
9a hex = Unknown msg.b command HOST Correct the requested msg.b parameter of
REJ_COM message
MSAL1M_Alarm_Res
Failure Significance Error source Help
86 hex = REJ_INT The alarm handler is not DEVICE No DPV1 capable device configured within the
initialized card
87 hex = REJ_SRT The alarm handler is currently DEVICE No DPV1 capable slave device is in process
stopped data exchange with the DEVICE. Check if
network is running
88 hex = REJ_ENA The alarm that shall be HOST Enable the corresponding alarm in slave
acknowledged is not enabled in configuration data set
slave parameter data
89 hex = REJ_NPD The alarm that shall be HOST Check the parameter Alarm_Type and
acknowledge is not pending on Seq_Nr. Both must be equal to the
a MSAL1_Alarm_Res MSAL1_Alarm_ind parameter
9a hex = REJ_COM Unknown msg.b command HOST Correct the requested msg.b parameter of
message
In This Chapter
CompactLogix I/O Example .................................................................912
CompactLogix Messaging Example .......................................................92
There are three example ladder logic programs on the ProSoft Solutions DVD. Two projects
are for a CompactLogix system and one for a MicroLogix 1500 system. These examples can
be used as templates for starting your project. An explanation of each project is in the
following sections. If you are using another type of Controller, change the Controller Type in
RSLogix and then store it to your individual project. If you setup up a new controller project
you can use the Copy and Paste functionality of RSLogix to transfer the user defined data
types or ladder logic needed with the module PS69-DPM.
Init_ReadReqMsg: This routine is used to form the DPV1 read request CIP message.
The routine is triggered by using the DoDPV1ReadReq tag. Once triggered a
MSAC1_Read_req command is sent to the Slave requesting a block of data. The return
data from this command shall appear as MSAC1_READ_CONFIRM user defined tag.
The user should make changes to this routine as needed for his application.
Init_SetParameterMsg: The Init_SetParameterMsg routine shows a simple example of
using CIP messaging to send user parameter data to a Slave. To trigger this routine the
DoDDLMSetPrm tag is used. Changes in this routine should be made to fit the users
particular Slave. See the Slaves user manual for the user settable values.
Init_SlaveDiagMsg: This routine shows an example of sending a Slave diagnostics
request using CIP messaging. The routine is called automatically by the logic found in
the MainRoutine or can be executed manually by toggling the DoDDLMSlaveDiag bit.
The response data from this message is contained in
DDLM_SLAVE_DIAGNOSTIC_CONFRIM user defined data type.
Init_WriteReqMsg: This routine is used to form the DPV1 write request CIP message.
The routine is triggered by using the DoDPV1WriteReq tag. Once triggered a
MSAC1_Write_req command is sent to the Slave containing a block of data. The return
data from this command shall appear as MSAC1_WRITE_CONFIRM user defined tag.
The user should make changes to this routine as needed for his application.
SR_Copy_Input: The SR_Copy_Input routine on every scan updates the
DpmInputArray structure with the Input Data of the module.
SR_Copy_Output: The SR_Copy_Output routine on every scan updates the
DpmOutputArray structure with the Output Data of the module.
SR_Main_Init: Initializes several variables used by different routines.
Numerous user defined data types have been created to make it easier to address different
elements of the Input and Output array of the module. The two main structures are
DpmInputArray and DpmOutputArray. Their definitions and the structures included in each
are shown in RSLogix 5000 User Defined Data Types (page 110).
In This Chapter
Diagnostic Interface ...............................................................................95
Hardware Diagnostics (LED) .................................................................96
PROSOFT.fdt (SYCON.net) Diagnostics ...............................................97
Troubleshooting ...................................................................................100
This section describes the possible diagnostics and troubleshooting procedures for the
PS69-DPM Master module.
5.2.1 CompactLogix
The following table shows the possible LED indications of the CompactLogix CPU.
Indicator Color/Status Description
RUN Off No task(s) running; controller in Program mode
Green One or more tasks are running; controller is in the Run mode
FORCE Off No forces enabled
Amber Forces enabled
Amber Flashing One or more input or output addresses have been forced to an On or Off state,
but the forces have not been enabled.
OK Off No power applied
Green Controller OK
Red flashing Recoverable controller fault
Red Non-recoverable controller fault:
Cycle power. The OK LED should change to flashing red.
If LED remains solid red, replace the controller.
I/O Off No activity; no I/O or communications configured
Green Communicating to all devices
Green flashing One or more devices not responding
Red flashing Not communicating to any devices
controller faulted
Select Station Diagnosis in the Navigation area to view status for each station connected to
the PS69-DPM Master.
Using the Master Diagnostic Dialog the user can determine the current running state of the
Master. For further definition of each item in this Diagnostic Dialog, refer to the Help within
PROSOFT.fdt (SYCON.net) and the Operating Instruction Manual for ProSoft DTM for
PROFIBUS Master Devices.
Using the Slave Diagnostic Dialog the user can determine the current running state of the
Slave as well as extended diagnostics data. For further definition of each item in this
Diagnostic Dialog, refer to the Help within PROSOFT.fdt (SYCON.net) and the Operating
Instruction Manual for Generic DTM for PROFIBUS-DP Slave Devices.
5.4 Troubleshooting
Troubleshooting the system is done by examining the LEDs on the front panel of the CPU
and the LEDs on the front of the module. The following sections contain some
troubleshooting ideas.
5.4.5 Cable
Check that the cable is Constructing a Bus Cable for PROFIBUS DP (page 119).
Check to confirm that the bus termination resistors are switched on at the beginning and
the end of the cable and switched off at all other connectors in between.
6 Reference
In This Chapter
Specifications.......................................................................................105
PROFIBUS Functionality .....................................................................108
RSLogix 5000 User Defined Data Types .............................................110
Constructing a Bus Cable for PROFIBUS DP ......................................119
6.1 Specifications
The PS69 PROFIBUS DP Master module expands the functionality of Rockwell
Automation’s CompactLogix or MicroLogix family of processors to include PROFIBUS. This
module supports both I/O control and messaging, thus integrating DPV0 and DPV1
functionality into CompactLogix or MicroLogix.
The PS69-DPM is a CompactLogix or MicroLogix compatible, PROFIBUS certified module,
which enables controllers to communicate with a PROFIBUS network. The configuration and
diagnostic of the PROFIBUS system is done via the serial diagnostic interface of the module
using the System Configuration tool PROSOFT.fdt (SYCON.net). The data exchange
between controller and module is done via the I/O process data image using CompactLogix
or MicroLogix backplane technology.
The maximum length of a bus segment depends on the baud rate used. Only PROFIBUS
certified cable, preferably the cable type A, should be used.
Baud rate in kBit/s Max. Distance
9.6 1,200 m / 4000 ft
19.2 1,200 m / 4000 ft
93.75 1,200 m / 4000 ft
187.5 1,000 m / 3280 ft
500 400 m / 1300 ft
1,500 200 m / 650 ft
3,000 100 m / 325 ft
6,000 100 m / 325 ft
12,000 100 m / 325 ft
Parameter Value
Impedance 135 to 65 Ohm
Capacity < 30 pF/m
Loop resistance 110 Ohm/km
Wire gauge 0.64 mm
Specification Description
Agency Certification: C-UL certified, UL 508 listed, CE
UL/CE
PROFIBUS conformance certified
Global Control
With the Global Control telegram, the master can send unsolicited commands like
Sync/Unsync, Freeze/Unfreeze and Clear Data to a slave or a group of slaves for
synchronization purposes. Group membership is defined during network start-up and can be
set in PROSOFT.fdt (SYCON.net).
Watchdog
Using the Watchdog functionality a network slave is able to monitor bus traffic in order to
ensure that the network master is still active and process data sent and received are still
being updated. The Watchdog time is configured in PROSOFT.fdt (SYCON.net) and is
transmitted to the slave during the network start-up phase. If the Watchdog time out has
been reached the slaves go to their Fail Safe state (if supported) or set their outputs to "0".
Read Request
With a Read Request telegram, the class 1 master can read data addressed by slot and
index within the data range of a slave device. This may take several DPV0 cycles. If the
master discovers a timeout, it aborts both DPV1 and DPV0 communication with the slave.
Then the communication to the slave has to be re-established. The master initiates the
Read Request service.
Write Request
With a Write Request telegram, the class 1 master can write data addressed by slot and
index into the data range of a slave device. The timeout handling is identical to the Read
Request. The master initiates the Write Request service.
Alarm Indication
DPV1 Alarm handling is an addition to the Device Diagnostic function in PROFIBUS. Alarms
are reported to the master as device specific diagnostic information. Therefore, the slave
initiates an Alarm Indication. Other than Device Diagnostic messages, Alarms have to be
acknowledged by the Master.
6.3.10 Output-DPM_GLOBAL_CONTROL_COMMAND
Name Data Type Description
SlaveAddress SINT Slave Address
ControlCommand SINT Control Command to be send
GroupSelect SINT Group Select
Reserved3 SINT
6.3.11 DDLM_GLOBAL_CONTROL_REQUEST
Name Data Type Description
Reserved1 INT
Reserved2 INT
Reserved3 INT
Command SINT
Reserved4 SINT
DeviceAdr SINT Device Address
ConrolCommand SINT Control Command
GroupSelect SINT Group Select
6.3.12 DDLM_GLOBAL_CONTROL_CONFIRM
Name Data Type Description
Reserved1 INT
Reserved2 INT
Answer SINT
Failure SINT
Reserved3 INT
DeviceAdr SINT
6.3.13 DDLM_SET_PARAMETER_REQUEST
Name Data Type Description
Reserved1 INT
Reserved2 INT
Reserved3 INT
Command SINT
Reserved4 SINT
UsrPrm SINT[234]
6.3.14 DDLM_SET_PARAMETER_CONFIRM
Name Data Type Description
Reserved1 INT
Reserved2 INT
Answer SINT
Failure SINT
Reserved3 INT
DeviceAdr SINT
6.3.15 DDLM_SLAVE_DIAGNOSTIC_REQUEST
Name Data Type Description
Reserved1 INT
Reserved2 INT
Reserved3 INT
Command SINT
Reserved4 SINT
DeviceAdr SINT
DataArea SINT
DataAdr INT
DataIdx SINT
DataCnt SINT
DataType SINT
Function SINT
6.3.16 DDLM_SLAVE_DIAGNOSTIC_CONFIRM
Name Data Type Description
Reserved1 INT
Reserved2 INT
Answer SINT
Failure SINT
Reserved3 INT
DeviceAdr SINT
DataArea SINT
DataAdr INT
DataIdx SINT
DataCnt SINT
DataType SINT
Function SINT
StationState_1 SINT
StationState_2 SINT
StationState_3 SINT
MasterAddress SINT
IdentNumber INT
Reserved4 INT
ExtDiag SINT[100]
6.3.17 DPM_DPV1_ALARM_INDICATION
Name Data Type Description
AlarmIndication BOOL Indicates an alarm
Reserved1 BOOL
Reserved2 BOOL
Reserved3 BOOL
Reserved4 BOOL
Reserved5 BOOL
Reserved6 BOOL
AlarmOverrun BOOL Overflow of the modules internal alarm buffer
AlarmCnt SINT Alarm indication counter
RemoteAddress SINT Address of Slave with Alarm
Slot SINT Slot Number
Sequence SINT Sequence Number
AlarmType SINT Alarm Type
AlarmSpec SINT Alarm Specification
Reserved7 SINT
6.3.18 DPV1_ALARM_INDICATION
Name Data Type Description
StaAlarmInd BOOL Indicated alarm is pending
StaAlarmReserved1 BOOL
StaAlarmReserved2 BOOL
StaAlarmReserved3 BOOL
StaAlarmReserved4 BOOL
StaAlarmReserved5 BOOL
StaAlarmReserved6 BOOL
StaAlarmOvrRun BOOL Alarm overrun
AlarmCnt SINT AlarmCounter
SlaveAdr SINT Slave address
SlotNum SINT Slot number
SeqNum SINT Sequence number
AlarmType SINT Alarm type
AlarmSpec SINT Alarm specifier
Reserved SINT
6.3.19 MSAC1_READ_REQUEST
Name Data Type Description
Reserved1 INT
Reserved2 INT
Reserved3 INT
Command SINT
Reserved4 SINT
DeviceAdr SINT
DataArea SINT
DataAdr INT
DataIdx SINT
DataCnt SINT
DataType SINT
Function SINT
6.3.20 MSAC1_READ_CONFIRM
Name Data Type Description
Reserved1 INT
Reserved2 INT
Answer SINT
Failure SINT
Reserved3 INT
DeciceAdr SINT
DataArea SINT
DataAdr INT
DataIdx SINT
DataCnt SINT
DataType SINT
Function SINT
Data SINT[240]
6.3.21 MSAC1_WRITE_REQUEST
Name Data Type Description
Reserved1 INT
Reserved2 INT
Reserved3 INT
Command SINT
Reserved4 SINT
DeviceAdr SINT
6.3.22 MSAC1_WRITE_CONFIRM
Name Data Type Description
Reserved1 INT
Reserved2 INT
Answer SINT
Failure SINT
Reserved3 INT
DeciceAdr SINT
DataArea SINT
DataAdr INT
DataIdx SINT
DataCnt SINT
DataType SINT
Function SINT
ErrorCode1 SINT
ErrorCode2 SINT
6.3.23 MSAL1M_ALARM_RESPONSE
Name Data Type Description
Reserved1 INT
Reserved2 INT
Reserved3 INT
Command SINT
Reserved4 SINT
SlaveAdr SINT
SlotNum SINT
SeqNum SINT
AlarmType SINT
AlarmSpec SINT
Reserved5 SINT
6.3.24 MSAL1M_ALARM_CONFIRM
Name Data Type Description
Reserved1 INT
Reserved2 INT
Answer SINT
Failure SINT
Reserved3 INT
SlaveAdr SINT
SlotNum SINT
SeqNum SINT
AlarmType SINT
AlarmSpec SINT
Reserved4 SINT
J PVC Jacket
S Braided shielding
3 Remove the PVC jacket J to the indicated length.
J PVC jacket
S Braided shielding
F Copper foil shielding
Additional foil can be obtained from 3M.
5 Plug the leads of the corresponding cable(s) into the terminals as shown:
o Green leads in terminal A
o Red lead in terminal B
A Incoming cable
B Outgoing cable
C Connection terminals (only once (B,A))
D Cable cleat for reliving tension
E Bus connector screws
6 Attach the cables with the provided cable cleat to create a robust shielded connection
and to relieve any tension as shown:
J PVC Jacket
S Braided shielding with foil shielding
C Cable cleat
Note: Half of the cable jacket must lie under the cable cleat!
Note: The shielding of both cables is connected internally with the metal housing of the connector.
9 Complete the Central Shielding Measures (below) and grounding operations for the
shielding before you connect the cable connector to the module.
10 Plug the PROFIBUS DP connector into the module and secure it with the screws.
This example indicates the shielding connection from the PROFIBUS cable to the FE/PE
rail.
Note: An equalization current can flow across a shield connected at both ends because of fluctuations in ground
potential. To prevent this, it is imperative that there is potential equalization between all the attached installation
components and devices.
This example indicates the system components and devices in a system with equipotential
bonding.
Note: Grounding and shielding is to be carried out the same as for systems with equipotential bonding.
If this is not possible because of system or construction specific reasons however, use
distributed ground with a capacitive coupling of high frequency interference signals.
In This Chapter
PROSOFT TECHNOLOGY END-USER LICENSE AGREEMENT ......125
SOFTWARE COPYRIGHT PRODUCT LICENSE ...............................125
GRANT OF LICENSE ..........................................................................125
LIMITATION OF LIABILITY .................................................................126
5 Customer agrees that it shall not authorize others to, copy the SOFTWARE PRODUCT
provided by ProSoft Technology (except as expressly permitted in any license
agreement accompanying such software); transfer software to a third party separately
from the SOFTWARE PRODUCT; modify, alter, translate, decode, decompile,
disassemble, reverse-engineer or otherwise attempt to derive the source code of the
software or create derivative works based on the software; export the software or
underlying technology in contravention of applicable US and international export laws
and regulations; or use the software other than as authorized in connection with use of
the SOFTWARE PRODUCT.
In This Chapter
Contacting Technical Support ..............................................................127
Warranty Information ...........................................................................128
Note: For technical support calls within the United States, an emergency after-hours answering system allows
24-hour/7-days-a-week pager access to one of our qualified Technical and/or Application Support Engineers.
Detailed contact information for all our worldwide locations is available on the following page.
DPM_DPV1_ALARM_INDICATION • 116
DPV0 Services • 108
DPV1 Alarm Indication • 67, 85
DPV1 Messaging • 82
Index DPV1 Services • 109
DPV1_ALARM_INDICATION • 116
A E
Add a Slave to a project • 42 End-User License Agreement - PROSOFT.fdt
Add a Slave to PROSOFT.fdt (SYCON.net) Device (SYCON.net) Software • 125
Catalog • 42 Error Sources and Reasons • 101
Adding Multiple Modules (Optional) • 22 Expansion General Configuration • 56
Address Table • 40 Extended Device Diagnostics • 108
Alarm Indication • 109
F
B
Fail Safe Mode • 108
Back Up the Project • 57 Firmware Revision • 62
Functional Specifications • 106
C
G
Cable • 103
CIP Messaging • 73 General • 36
CIP Messaging General • 87 General Information • 8
Communication • 59 General Specifications • 105
CompactLogix • 96 Generic Extra Data Config • 57
CompactLogix I/O Example • 92 Global Control • 108
CompactLogix I/O LED • 100, 101 Global Control Array • 71
CompactLogix Messaging Example • 92 Global State Field • 63
Configuration of PROFIBUS Slaves • 42 GRANT OF LICENSE • 125
Configuration of the PS69-DPM Master • 39
Configure the PROFIBUS Network • 33 H
Configuring the RSLinx Driver for the PC COM Port • Hardware Diagnostics (LED) • 96
31 Hardware Requirements • 9
Connecting Your PC to the Processor • 29 Hardware Specifications • 107
Constructing a Bus Cable for PROFIBUS DP • 103,
119 I
Contacting Technical Support • 127
Create a New Project • 37, 49 Import the Ladder Rung • 18
Create a new RSLogix 5000 project • 14 Input
Create the Module • 15 DPM_DEV_STATUS_REGISTER • 70, 110
DPM_DPV1_ALARM_INDICATION • 112
D DPM_FW_REVISION • 110
DPM_GLOBAL_STATE_FIELD • 111
DDLM_Global_Control • 79, 88 DPM_INPUT_ARRAY • 110
DDLM_GLOBAL_CONTROL_CONFIRM • 114 DPM_SLAVE_DIAG_DATA • 111
DDLM_GLOBAL_CONTROL_REQUEST • 114 Input Array • 59, 61
DDLM_Set _Parameter • 81 Installing the Module • 11
DDLM_Set_Parameter • 88 IO Arrays Overview • 59
DDLM_SET_PARAMETER_CONFIRM • 114 IO Communication and IO Memory Map • 59
DDLM_SET_PARAMETER_REQUEST • 114
DDLM_Slave_Diag • 76, 88 L
DDLM_SLAVE_DIAGNOSTIC_CONFIRM • 115
DDLM_SLAVE_DIAGNOSTIC_REQUEST • 115 LIMITATION OF LIABILITY • 126
Device Command Register • 69, 71
M
Device Status Registers • 61, 70
Diagnostic Interface • 95 Master Diagnostics • 98
Diagnostics and Troubleshooting • 95 Messaging Error Codes • 87
Downloading the Sample Program to the Processor • MicroLogix 1500 • 96
30 MicroLogix 1500 Fault LED • 101
R
Read Request • 109
Reference • 105
Reference Systems • 9
RIF 1769-DPM Compatibility • 34
RSLogix 500 • 55
RSLogix 5000 (version 15 or lower) • 51
RSLogix 5000 User Defined Data Types • 92, 93, 110
RSLogix Example Program • 91
S
Sample Add-On Instruction Import Procedure • 14
Scanner (PROFIBUS-DP-Master) • 34
Slave Diagnostic Request Register • 70
Slave Diagnostics • 100
Slave Diagnostics Field • 66
Slave Groups • 45
Slave Settings • 43