Allen-Bradley 1756 L1, L1Mx, L55Mxx, L63 ControlLogix system User manual
Below you will find brief information for ControlLogix system 1756 L1, ControlLogix system 1756 L1Mx, ControlLogix system 1756 L55Mxx, ControlLogix system 1756 L63. These devices allow you to communicate over a variety of networks, including EtherNet/IP, ControlNet™, remote I/O, DH+™, DH-485, and serial. They also provide the ability to program motion control and maintain the 1756-BA1 battery.
Advertisement
Advertisement
ControlLogix™
System
1756-L1, -L1Mx, -L55Mxx, -L63
File Name: AB_ControlLogix_1756_L1_L1Mx_L5Mxx_L63_user_D1101
User Manual
Important User Information Because of the variety of uses for the products described in this publication, those responsible for the application and use of these products must satisfy themselves that all necessary steps have been taken to assure that each application and use meets all performance and safety requirements, including any applicable laws, regulations, codes and standards. In no event will Allen-Bradley be responsible or liable for indirect or consequential damage resulting from the use or application of these products.
Any illustrations, charts, sample programs, and layout examples shown in this publication are intended solely for purposes of example. Since there are many variables and requirements associated with any particular installation, Allen-Bradley does not assume responsibility or liability (to include intellectual property liability) for actual use based upon the examples shown in this publication.
Allen-Bradley publication SGI-1.1, Safety Guidelines for the
Application, Installation and Maintenance of Solid-State Control
(available from your local Allen-Bradley office), describes some important differences between solid-state equipment and electromechanical devices that should be taken into consideration when applying products such as those described in this publication.
Reproduction of the contents of this copyrighted publication, in whole or part, without written permission of Rockwell Automation, is prohibited.
Throughout this publication, notes may be used to make you aware of safety considerations. The following annotations and their accompanying statements help you to identify a potential hazard, avoid a potential hazard, and recognize the consequences of a potential hazard:
WARNING
!
Identifies information about practices or circumstances that can cause an explosion in a hazardous environment, which may lead to personal injury or death, property damage, or economic loss.
ATTENTION
!
Identifies information about practices or circumstances that can lead to personal injury or death, property damage, or economic loss.
IMPORTANT
Identifies information that is critical for successful application and understanding of the product.
Introduction
Updated Information
Summary of Changes
This release of this document contains new and updated information.
To find new and updated information, look for change bars, as shown next to this paragraph.
The document contains the following changes:
This new or updated information: Starts on page:
Communicate with an RSView Project over an EtherNet/IP Network 7-1
Communicate with 1771 I/O Over a ControlNet
Communicate with an RSView Project over a ControlNet
Communicate Over a Remote I/O Network
1 Publication 1756-UM001D-EN-P - November 2001
Summary of Changes 2
Notes:
Publication 1756-UM001D-EN-P - November 2001
1
Preface
Purpose of this Manual This manual guides the development of projects for ControlLogix controllers. It provides step-by-step procedures on how to establish communications:
• over the following networks
– EtherNet/IP
– ControlNet
™
– remote I/O
– DH+
™
– DH-485
– serial
• with the following devices
– controllers
– I/O
– workstations
– PanelView
™
terminals
This manual works together with the Logix5000 Controllers Common
Procedures, publication 1756-PM001, which covers the following tasks:
•
Manage project files
•
Organize your logic
•
Organize tags
•
Program routines
•
Test a project
•
Handle faults
Who Should Use this
Manual
This manual is intended for those individuals who program applications that use ControlLogix controllers, such as:
• software engineers
• control engineers
• application engineers
• instrumentation technicians
Publication 1756-UM001D-EN-P - November 2001
Preface 2
When to Use this Manual Use this manual:
• when you are ready to integrate your application with the I/0 devices, controllers, and networks in your system.
•
after you perform these actions:
– develop the basic code for your application
– perform isolated tests of your application
How to Use this Manual
Text that is:
Italic courier
This manual is divided into the basic tasks that you perform while programming a ControlLogix controller.
•
Each chapter covers a task.
•
The tasks are organized in the sequence that you will typically perform them.
As you use this manual, you will see some terms that are formatted differently from the rest of the text:
Identifies: the actual name of an item that you see on your screen or in an example information that you must supply based on your application (a variable)
For example:
Right-click
Right-click
User-Defined … name_of_program …
Means:
Right-click on the item that is named
User-Defined.
You must identify the specific program in your application. Typically, it is a name or variable that you have defined.
Publication 1756-UM001D-EN-P - November 2001
i
Table of Contents
Chapter 1
Configure an EtherNet/IP Module
When to Use This Procedure . . . . . . . . . . . . . . . . . . . . . . . 1-1
Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2
RSLogix 5000 Software . . . . . . . . . . . . . . . . . . . . . . . . . 1-3
RSLinx Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-4
BOOTP Server Software . . . . . . . . . . . . . . . . . . . . . . . . 1-5
How to Use This Procedure. . . . . . . . . . . . . . . . . . . . . . . . 1-6
Configure a Module Using RSLogix 5000 Software . . . . . . . 1-7
Connect the Hardware . . . . . . . . . . . . . . . . . . . . . . . . . 1-7
Connect to the Module. . . . . . . . . . . . . . . . . . . . . . . . . 1-8
Configure the Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-10
Check the Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-12
Configure a Module Using RSLinx Software . . . . . . . . . . . . 1-13
Connect the Hardware . . . . . . . . . . . . . . . . . . . . . . . . . 1-13
Configure the Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-13
Check the Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-15
Configure a Module Using BOOTP . . . . . . . . . . . . . . . . . . 1-16
Install BOOTPServer Software . . . . . . . . . . . . . . . . . . . 1-16
Connect the Hardware . . . . . . . . . . . . . . . . . . . . . . . . . 1-16
Enter the Default Network Settings . . . . . . . . . . . . . . . . 1-17
Configure the Module . . . . . . . . . . . . . . . . . . . . . . . . . 1-18
Disable BOOTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-19
Save the Relation List . . . . . . . . . . . . . . . . . . . . . . . . . . 1-19
Renew the IP Address of a 1794-AENx Module. . . . . . . . . . 1-20
Install BOOTPServer Software . . . . . . . . . . . . . . . . . . . 1-20
Set Up the Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . 1-20
Enter the New Configuration . . . . . . . . . . . . . . . . . . . . 1-21
Send the Configuration. . . . . . . . . . . . . . . . . . . . . . . . . 1-22
Disable BOOTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-22
Save the Relation List . . . . . . . . . . . . . . . . . . . . . . . . . . 1-23
Test the Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-24
Connect Directly to a Controller. . . . . . . . . . . . . . . . . . . . . 1-24
Connect a Serial Cable . . . . . . . . . . . . . . . . . . . . . . . . . 1-24
Configure a Serial Driver . . . . . . . . . . . . . . . . . . . . . . . 1-26
Download and Go Online over an
EtherNet/IP Network
Chapter 2
When to Use This Procedure . . . . . . . . . . . . . . . . . . . . . . . 2-1
How to Use This Procedure. . . . . . . . . . . . . . . . . . . . . . . . 2-1
Configure an Ethernet Driver . . . . . . . . . . . . . . . . . . . . . . . 2-2
Select a Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3
Publication 1756-UM001D-EN-P - November 2001
Table of Contents ii
Communicate with 1756 I/O over an EtherNet/IP Network
Chapter 3
When to Use This Procedure . . . . . . . . . . . . . . . . . . . . . . . 3-1
Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1
How to Use This Procedure. . . . . . . . . . . . . . . . . . . . . . . . 3-2
Add the Local 1756-ENBx or -ENET Module . . . . . . . . . . . . 3-3
Add the Remote 1756-ENBx or -ENET Module . . . . . . . . . . 3-5
Add I/O Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-8
Create Aliases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-12
Validate Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-15
Communicate with 1794 I/O Over an
EtherNet/IP Network
Chapter 4
When to Use This Procedure . . . . . . . . . . . . . . . . . . . . . . . 4-1
Before You Use This Procedure. . . . . . . . . . . . . . . . . . . . . 4-2
How to Use This Procedure. . . . . . . . . . . . . . . . . . . . . . . . 4-2
Add the local 1756-ENBx or -ENET module . . . . . . . . . . . . 4-3
Add the Remote 1794-AENx Module . . . . . . . . . . . . . . . . . 4-5
Add I/O Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-8
Address I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-11
Validate Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-13
Communicate with Another
Controller over an EtherNet/IP
Network
Chapter 5
When to Use This Procedure . . . . . . . . . . . . . . . . . . . . . . . 5-1
Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1
Select a Communication Method . . . . . . . . . . . . . . . . . . . . 5-2
Produce a Tag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3
Add the Local 1756-ENBx or -ENET Module . . . . . . . . . . . . 5-4
Add the Remote 1756-ENBx or -ENET Module . . . . . . . . . . 5-6
Add the Other Controller. . . . . . . . . . . . . . . . . . . . . . . . . . 5-9
Consume a Tag. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-11
Validate Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-12
Does Another Controller Require the Data? . . . . . . . . . . . . 5-13
Add the Local 1756-ENBx or -ENET Module . . . . . . . . . . . . 5-14
Enter a Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-16
Configure the Message . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-18
Stagger the Messages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-22
Access ControlLogix Data . . . . . . . . . . . . . . . . . . . . . . . . . 5-23
Publication 1756-UM001D-EN-P - November 2001
Table of Contents iii
Communicate with a PanelView
Terminal Over a EtherNet/IP
Network
Chapter 6
When to Use This Procedure . . . . . . . . . . . . . . . . . . . . . . . 6-1
Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1
How to Use This Procedure. . . . . . . . . . . . . . . . . . . . . . . . 6-2
Add the Local 1756-ENBx or -ENET Module . . . . . . . . . . . . 6-3
Add the PanelView Terminal . . . . . . . . . . . . . . . . . . . . . . . 6-5
Organize Your Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-8
Configure the PanelView Terminal. . . . . . . . . . . . . . . . . . . 6-10
Create PanelView Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-12
Validate Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-14
Communicate with an RSView
Project over an EtherNet/IP
Network
Chapter 7
When to Use This Procedure . . . . . . . . . . . . . . . . . . . . . . . 7-1
How to Use This Procedure. . . . . . . . . . . . . . . . . . . . . . . . 7-1
Configure an Ethernet Driver . . . . . . . . . . . . . . . . . . . . . . . 7-2
Select a Communication Method . . . . . . . . . . . . . . . . . . . . 7-3
Create a Polled Topic . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-4
Create a Polled Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-6
Import Logix5000 Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-7
Create an .L5K File. . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-7
Install the Logix 5000 Tag Import Utility . . . . . . . . . . . . 7-8
Use the Utility to Create a .CSV File . . . . . . . . . . . . . . . 7-8
Import the .CSV File. . . . . . . . . . . . . . . . . . . . . . . . . . . 7-10
Create a Polled Tag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-12
Create a Unsolicited Topic. . . . . . . . . . . . . . . . . . . . . . . . . 7-14
Add the 1756-ENBx or -ENET Module . . . . . . . . . . . . . . . . 7-16
Enter a Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-18
Configure the Message . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-20
Create an Unsolicited Node . . . . . . . . . . . . . . . . . . . . . . . . 7-22
Create an Unsolicited Tag . . . . . . . . . . . . . . . . . . . . . . . . . 7-23
Validate an RSView32 Tag . . . . . . . . . . . . . . . . . . . . . . . . . 7-24
Communicate with 1756 I/O over a
ControlNet™ Network
Chapter 8
When to Use This Procedure . . . . . . . . . . . . . . . . . . . . . . . 8-1
How to Use This Procedure. . . . . . . . . . . . . . . . . . . . . . . . 8-1
Add the Local 1756-CNB Module . . . . . . . . . . . . . . . . . . . . 8-2
Add the Remote 1756-CNB Module . . . . . . . . . . . . . . . . . . 8-4
Add I/O Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-6
Create Aliases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-10
Schedule the ControlNet Network . . . . . . . . . . . . . . . . . . . 8-13
Validate Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-14
Publication 1756-UM001D-EN-P - November 2001
Table of Contents iv
Communicate with 1771 I/O Over a
ControlNet
Network
Chapter 9
When to Use This Procedure . . . . . . . . . . . . . . . . . . . . . . . 9-1
How to Use This Procedure. . . . . . . . . . . . . . . . . . . . . . . . 9-1
Add the Local 1756-CNB Module . . . . . . . . . . . . . . . . . . . . 9-3
Add the 1771-ACN Module . . . . . . . . . . . . . . . . . . . . . . . . 9-5
Read or Write Data To or From a Block Transfer Module . . 9-7
Read Data From a Block Transfer Module . . . . . . . . . . . 9-8
Write Configuration or Output Data To a Block Transfer
Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-10
Configure the Messages . . . . . . . . . . . . . . . . . . . . . . . . 9-11
Read or Write Data To or From Multiple Block Transfer Modules
Create a User-Defined Data Type . . . . . . . . . . . . . . . . . 9-13
Create the Array for the Input Data. . . . . . . . . . . . . . . . 9-14
Send a Block Transfer Read Message . . . . . . . . . . . . . . 9-15
Enter the BTR Properties for Each Module . . . . . . . . . . 9-17
Convert the INTs to DINTs . . . . . . . . . . . . . . . . . . . . . . 9-18
Step to the Next BT Module . . . . . . . . . . . . . . . . . . . . . 9-19
Write Data to Multiple Block Transfer Modules . . . . . . . 9-20
Address I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-22
Schedule the ControlNet Network . . . . . . . . . . . . . . . . . . . 9-24
Validate Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-25
Stagger the Messages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-27
Communicate with 1794 I/O Over a
ControlNet
Network
Chapter 10
When to Use This Procedure . . . . . . . . . . . . . . . . . . . . . . . 10-1
How to Use This Procedure. . . . . . . . . . . . . . . . . . . . . . . . 10-1
Add the local 1756-CNB module . . . . . . . . . . . . . . . . . . . . 10-2
Add the Remote 1794-ACN Module . . . . . . . . . . . . . . . . . . 10-4
Add I/O Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-6
Create Aliases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-10
Schedule the ControlNet Network . . . . . . . . . . . . . . . . . . 10-13
Validate Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-14
Communicate with Another
Controller over a ControlNet
Network
™
Chapter 11
When to Use This Procedure . . . . . . . . . . . . . . . . . . . . . . . 11-1
How to Use This Procedure. . . . . . . . . . . . . . . . . . . . . . . . 11-2
Step 1: Add the 1756-CNB Module . . . . . . . . . . . . . . . . . . . 11-3
Step 2: Add the Remote 1756-CNB Module. . . . . . . . . . . . . 11-5
Step 3: Add the 1788-CNC Module . . . . . . . . . . . . . . . . . . . 11-8
Step 4: Add the Other Controller . . . . . . . . . . . . . . . . . . . 11-10
Step 5: Enter a Message. . . . . . . . . . . . . . . . . . . . . . . . . . 11-12
Step 6: Configure the Message . . . . . . . . . . . . . . . . . . . . . 11-14
Step 7: Stagger the Messages . . . . . . . . . . . . . . . . . . . . . . 11-16
Step 8: Access ControlLogix Data . . . . . . . . . . . . . . . . . . . 11-16
Publication 1756-UM001D-EN-P - November 2001
Table of Contents v
Route PLC-5
Messages Between
ControlNet
™
Networks
Chapter 12
When to Use This Procedure . . . . . . . . . . . . . . . . . . . . . . . 12-1
Route a ControlNet Message . . . . . . . . . . . . . . . . . . . . . . . 12-2
Communicate with a PanelView
Terminal Over a ControlNet
™
Network
Chapter 13
When to Use This Procedure . . . . . . . . . . . . . . . . . . . . . . . 13-1
How to Use This Procedure. . . . . . . . . . . . . . . . . . . . . . . . 13-2
Add the Local 1756-CNB Module . . . . . . . . . . . . . . . . . . . . 13-2
Add the PanelView Terminal . . . . . . . . . . . . . . . . . . . . . . . 13-5
Organize Your Scheduled Data . . . . . . . . . . . . . . . . . . . . . 13-8
Organize Your Unscheduled Data . . . . . . . . . . . . . . . . . . 13-10
Configure the PanelView Terminal. . . . . . . . . . . . . . . . . . 13-12
Create PanelView Tags . . . . . . . . . . . . . . . . . . . . . . . . . . 13-14
Schedule the ControlNet Network . . . . . . . . . . . . . . . . . . 13-16
Validate Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-17
Communicate with an RSView
Project over a ControlNet
™
Network
Monitor Connections
Chapter 14
When to Use This Procedure . . . . . . . . . . . . . . . . . . . . . . . 14-1
How to Use This Procedure. . . . . . . . . . . . . . . . . . . . . . . . 14-1
Configure a ControlNet Driver . . . . . . . . . . . . . . . . . . . . . . 14-2
Select a Communication Method . . . . . . . . . . . . . . . . . . . . 14-3
Create a Polled Topic . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-4
Create a Polled Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-6
Import Logix5000 Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-7
Create an .L5K File. . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-7
Install the Logix 5000 Tag Import Utility . . . . . . . . . . . . 14-8
Use the Utility to Create a .CSV File . . . . . . . . . . . . . . . 14-8
Import the .CSV File. . . . . . . . . . . . . . . . . . . . . . . . . . 14-10
Create a Polled Tag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-12
Create a Unsolicited Topic. . . . . . . . . . . . . . . . . . . . . . . . 14-14
Add the 1756-CNB Module . . . . . . . . . . . . . . . . . . . . . . . 14-16
Enter a Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-18
Configure the Message . . . . . . . . . . . . . . . . . . . . . . . . . . 14-20
Create an Unsolicited Node . . . . . . . . . . . . . . . . . . . . . . . 14-22
Create an Unsolicited Tag . . . . . . . . . . . . . . . . . . . . . . . . 14-23
Validate an RSView32 Tag . . . . . . . . . . . . . . . . . . . . . . . . 14-24
Chapter 15
When To Use This Procedure . . . . . . . . . . . . . . . . . . . . . . 15-1
Monitor a Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-2
Publication 1756-UM001D-EN-P - November 2001
Table of Contents vi
Communicate with a DeviceNet
Device
Chapter 16
When to Use This Procedure . . . . . . . . . . . . . . . . . . . . . . . 16-1
How to Use This Procedure. . . . . . . . . . . . . . . . . . . . . . . . 16-1
Step 1: Add the 1756-DNB Module . . . . . . . . . . . . . . . . . . 16-1
Step 2: Create Aliases . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-4
Step 3: Set the Scanner to Run Mode . . . . . . . . . . . . . . . . . 16-6
Communicate with Another
Controller Over a DH+
™
Network
Chapter 17
When to Use This Procedure . . . . . . . . . . . . . . . . . . . . . . . 17-1
How to Use This Procedure. . . . . . . . . . . . . . . . . . . . . . . . 17-2
Configure Routing Tables . . . . . . . . . . . . . . . . . . . . . . . . . 17-3
Configure a 1756-DHRIO Channel . . . . . . . . . . . . . . . . . . . 17-8
Add a 1756-DHRIO Module . . . . . . . . . . . . . . . . . . . . . . . 17-11
Enter a Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-14
Configure the Message . . . . . . . . . . . . . . . . . . . . . . . . . . 17-16
Stagger the Messages. . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-20
Access ControlLogix Data . . . . . . . . . . . . . . . . . . . . . . . . 17-20
Route PLC-5
or SLC 500
™
Messages From a DH+
™
Network
Chapter 18
When to Use This Procedure . . . . . . . . . . . . . . . . . . . . . . . 18-1
Configure Routing Tables . . . . . . . . . . . . . . . . . . . . . . . . . 18-2
Configure a PLC-5 or SLC 500 Message . . . . . . . . . . . . . . . 18-6
Communicate with Another
Controller over a DH-485 Network
Chapter 19
When to Use this Procedure . . . . . . . . . . . . . . . . . . . . . . . 19-1
How to Use This Procedure. . . . . . . . . . . . . . . . . . . . . . . . 19-2
Step 1: Connect the Controller to an AIC+ . . . . . . . . . . . . . 19-3
Step 2: Configure the Serial Port . . . . . . . . . . . . . . . . . . . . 19-4
Step 3: Enter a Message. . . . . . . . . . . . . . . . . . . . . . . . . . . 19-6
Step 4: Configure the Message . . . . . . . . . . . . . . . . . . . . . . 19-8
Step 5: Check the LED. . . . . . . . . . . . . . . . . . . . . . . . . . . 19-10
Step 6: Stagger the Messages . . . . . . . . . . . . . . . . . . . . . . 19-10
Publication 1756-UM001D-EN-P - November 2001
Table of Contents vii
Communicate Over a Remote I/O
Network
Chapter 20
When to Use This Procedure . . . . . . . . . . . . . . . . . . . . . . . 20-1
How to Use This Procedure. . . . . . . . . . . . . . . . . . . . . . . . 20-2
Add a 1756-DHRIO Module . . . . . . . . . . . . . . . . . . . . . . . . 20-3
Add a Remote I/O Adapter . . . . . . . . . . . . . . . . . . . . . . . . 20-6
Add a Block Transfer Module . . . . . . . . . . . . . . . . . . . . . . 20-9
Read or Write Data To or From a Block Transfer Module . 20-10
Read Data From a Block Transfer Module . . . . . . . . . . 20-11
Write Configuration or Output Data To a Block Transfer
Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-13
Configure the Messages . . . . . . . . . . . . . . . . . . . . . . . 20-14
Read or Write Data To or From Multiple Block Transfer Modules
Create a User-Defined Data Type . . . . . . . . . . . . . . . . 20-17
Create the Data Array. . . . . . . . . . . . . . . . . . . . . . . . . 20-18
Send the Message to a BT Module . . . . . . . . . . . . . . . 20-19
Enter the Message Properties for Each Module . . . . . . 20-21
Convert the INTs to DINTs . . . . . . . . . . . . . . . . . . . . . 20-22
Step to the Next BT Module . . . . . . . . . . . . . . . . . . . . 20-23
Write Data to Multiple Block Transfer Modules . . . . . . 20-24
Address I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-26
Validate Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-28
Stagger the Messages. . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-30
Download and Go Online over a
Serial Cable
Chapter 21
When to Use this Procedure . . . . . . . . . . . . . . . . . . . . . . . 21-1
How to Use This Procedure. . . . . . . . . . . . . . . . . . . . . . . . 21-1
Step 1: Connect a Serial Cable . . . . . . . . . . . . . . . . . . . . . . 21-2
Step 2: Configure a Serial Driver . . . . . . . . . . . . . . . . . . . . 21-3
Step 3: Select a Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-4
Configure DF1 Master and Slave
Communications
Chapter 22
When to Use this Procedure . . . . . . . . . . . . . . . . . . . . . . . 22-1
How to Use This Procedure. . . . . . . . . . . . . . . . . . . . . . . . 22-2
Step 1: Connect and Configure the Modems . . . . . . . . . . . . 22-2
Step 2: Select a Polling Mode. . . . . . . . . . . . . . . . . . . . . . . 22-3
Step 3: Configure the Master Controller for Standard Polling . . .
Step 4: Configure the Master Controller for Message-Based
Polling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-8
Step 5: Configure a Slave Controller . . . . . . . . . . . . . . . . . 22-10
Step 6: Enter a Message. . . . . . . . . . . . . . . . . . . . . . . . . . 22-12
Step 7: Configure the Message . . . . . . . . . . . . . . . . . . . . . 22-14
Step 8: Stagger the Messages . . . . . . . . . . . . . . . . . . . . . . 22-17
Publication 1756-UM001D-EN-P - November 2001
Table of Contents viii
Configure Dial-Up
Communications
Program Motion Control
Maintain the 1756-BA1 Battery
Chapter 23
When to Use this Procedure . . . . . . . . . . . . . . . . . . . . . . . 23-1
How to Use This Procedure. . . . . . . . . . . . . . . . . . . . . . . . 23-1
Step 1: Connect and Configure the Modems . . . . . . . . . . . . 23-2
Step 2: Configure the Serial Port of the Controller. . . . . . . . 23-3
Step 3: Dial the Other Controller . . . . . . . . . . . . . . . . . . . . 23-5
Step 4: Send the Message . . . . . . . . . . . . . . . . . . . . . . . . . 23-6
Step 5: Configure the Message . . . . . . . . . . . . . . . . . . . . . . 23-8
Step 6: Hang-Up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23-11
Step 7: Stagger the Messages . . . . . . . . . . . . . . . . . . . . . . 23-12
Chapter 24
When to Use This Procedure . . . . . . . . . . . . . . . . . . . . . . . 24-1
How to Use This Procedure. . . . . . . . . . . . . . . . . . . . . . . . 24-2
Select a CST Master Device . . . . . . . . . . . . . . . . . . . . . . . . 24-2
Define the Controller as the CST Master . . . . . . . . . . . . 24-3
Define a 1756-SYNCH Module as the CST Master . . . . . 24-3
Add the Motion Module . . . . . . . . . . . . . . . . . . . . . . . . . . 24-4
1756-M08SE - Add the SERCOS Drive. . . . . . . . . . . . . . . . . 24-7
Create a Motion Group . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-9
Assign the Properties of the Motion Group. . . . . . . . . . . . 24-10
Configure the Axis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-12
Display the Properties for the Axis . . . . . . . . . . . . . . . 24-12
Select an Axis Configuration . . . . . . . . . . . . . . . . . . . . 24-12
Assign Units for Measurements . . . . . . . . . . . . . . . . . . 24-13
Assign a Conversion Constant. . . . . . . . . . . . . . . . . . . 24-13
1756-M02AE - Select the Configuration of the Servo Drive . .
1756-M08SE - Select the Catalog Number of the Amplifier . .
1756-M08SE - Select the Motor and Feedback . . . . . . . 24-16
Run Hookup Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-17
Download Your Project and Go Online . . . . . . . . . . . 24-17
Display the Properties for the Axis . . . . . . . . . . . . . . . 24-18
Complete the Hookup Tests . . . . . . . . . . . . . . . . . . . . 24-18
Develop Logic for Motion Control . . . . . . . . . . . . . . . . . . 24-19
Handle Motion Faults . . . . . . . . . . . . . . . . . . . . . . . . . 24-20
Chapter 25
When to Use This Procedure . . . . . . . . . . . . . . . . . . . . . . . 25-1
How to Use This Procedure. . . . . . . . . . . . . . . . . . . . . . . . 25-1
Estimate Battery Life . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-1
Store Replacement Batteries. . . . . . . . . . . . . . . . . . . . . . . . 25-4
Replace a Battery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-4
Publication 1756-UM001D-EN-P - November 2001
Table of Contents ix
Map a PLC/SLC Address
Estimate Execution Time
Appendix A
When To Use This Procedure . . . . . . . . . . . . . . . . . . . . . . A-1
Map an Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1
Appendix B
When to Use This Procedure . . . . . . . . . . . . . . . . . . . . . . . B-1
Estimate Execution Time of a Ladder Instruction . . . . . . . . B-1
Estimate Execution Time of a Function Block Routine . . . B-23
Estimate Execution Time of a Motion Action . . . . . . . . . . B-28
Estimate Memory Use
Appendix C
Using This Appendix. . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-1
Data Conversions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-1
Sign-Extension Memory Requirements . . . . . . . . . . . . . C-1
Zero-Fill Memory Requirements . . . . . . . . . . . . . . . . . . C-2
Ladder Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-3
Function Block Instructions . . . . . . . . . . . . . . . . . . . . . . . . C-7
Array Indexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-9
Appendix D
Determine When Data Is Updated
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-1
Appendix E
Reconfigure an I/O module
Publication 1756-UM001D-EN-P - November 2001
Table of Contents x
Publication 1756-UM001D-EN-P - November 2001
1
Chapter
1
Configure an EtherNet/IP Module
When to Use This
Procedure
Use this procedure to configure any of the following modules:
1756-ENBx or -ENET module
1794-AENx module switch 42872
You can configure a module either:
• before you install the module
– Configure the module in a temporary location, such as a chassis that is on a test bench.
– After you configure the module, install it in your system.
• after you install the module in your system
Publication 1756-UM001D-EN-P - November 2001
1-2 Configure an EtherNet/IP Module
Before You Begin The configuration of an EtherNet/IP module includes:
•
IP address (required)
• subnet mask (recommended)
• gateway address (optional)
• domain name (optional)
•
DNS server addresses (optional)
You use software to configure an EtherNet/IP module. (The modules
do not have hardware switches to assign an address.) To configure a module, use one of these software:
•
•
•
To determine which software lets you configure your module, use the following table:
To configure this module: Use one of these software:
1756-ENBx
1756-ENET
1794-AENx
RSLogix 5000
✔
✔
RSLinx
✔
✔
BOOTP server
✔
✔
✔
Publication 1756-UM001D-EN-P - November 2001
Configure an EtherNet/IP Module 1-3
RSLogix 5000 Software
RSLogix 5000 software lets you configure a 1756-ENBx or -ENET module via another module that is in the chassis.
controller another communication module module to configure
RSLogix 5000 software
ControlLogix chassis
P/S L
5
5 x x
E
N
B
P/S D
H
R
I
O
C
N
B
E
N
B
E
N
B
ControlLogix chassis network
1756-CP3 or 1747-CP3 serial cable
Use RSLogix 5000 software to assign:
•
IP address (required)
• subnet mask (recommended)
• gateway address (optional)
• domain name (optional)
•
DNS server addresses (optional)
When you configure a module with RSLogix 5000 software, you enter an IP address or host name in two locations:
On this tab:
General (first screen of the
Module Properties wizard)
Port Configuration
You:
Identify the module on the EtherNet/IP network with which you want to connect
Assign configuration information to the module, such as its
IP address. This information is stored in the module and identifies the module on the EtherNet/IP network.
Publication 1756-UM001D-EN-P - November 2001
1-4 Configure an EtherNet/IP Module
RSLinx Software
RSLinx software lets you configure a 1756-ENBx or -ENET module via another module in the chassis.
controller another communication module module to configure
RSLinx software
ControlLogix chassis
P/S L
5
5 x x
E
N
B
P/S
1756-CP3 or 1747-CP3 serial cable
Use RSLinx software to assign:
•
IP address (required)
• subnet mask (recommended)
• gateway address (optional)
• domain name (optional)
•
DNS server addresses (optional)
D
H
R
I
O
C
N
B
E
N
B
E
N
B
ControlLogix chassis network
Publication 1756-UM001D-EN-P - November 2001
Configure an EtherNet/IP Module 1-5
BOOTP Server Software
To configure a module over an EtherNet/IP network, use any of the following BOOTP server software:
•
BOOTPServer software from Rockwell Automation
• any BOOTP server software that is commercially available
BOOTP server software
P/S E
N
B
ControlLogix chassis switch
EtherNet/IP network
P/S A
E
N
Flex I/O
The default setting for a Rockwell Automation EtherNet/IP module is to use BOOTP to get its configuration information.
•
At power-up, the module sends a message with its hardware address to the BOOTP server.
•
The BOOTP server sends the appropriate configuration to the module.
The BOOTPServer software from Rockwell Automation lets you assign:
•
IP address (required)
• subnet mask (recommended)
• gateway address (optional)
Publication 1756-UM001D-EN-P - November 2001
1-6 Configure an EtherNet/IP Module
How to Use This Procedure Use the following table to find the information that you need:
If you have this module:
1756-ENBx
1756-ENET
1794-AENx any
And you want: Then: See page: configure the module via another module that is in the chassis (e.g., controller, 1756-CNB,
1756-DHRIO)
Configure a Module Using RSLogix 5000
or
Configure a Module Using RSLinx
configure the module directly over an EtherNet/IP network configure the module re-establish communication because either:
•
The configuration of the module is incorrect for your network.
•
You do not know the IP address of the module.
make sure that you can communicate with the module
Note: Both software let you configure the module. Use the one that you prefer.
Configure a Module Using BOOTP
Configure a Module Using BOOTP
Renew the IP Address of a 1794-AENx
Publication 1756-UM001D-EN-P - November 2001
Configure an EtherNet/IP Module 1-7
Configure a Module Using
RSLogix 5000 Software
To configure a module using RSLogix 5000 software:
•
•
•
•
Connect the Hardware
1. Install the module.
2. Connect your computer to a module with which you can already communicate. The module must be in the same chassis as the module that you want to configure.
TIP
To set up communication between your computer
and a controller, see “Connect Directly to a
3. Turn on the power to the module.
Publication 1756-UM001D-EN-P - November 2001
1-8 Configure an EtherNet/IP Module
Connect to the Module
1. Open the RSLogix 5000
project offline.
42376
2. Right-click I/O Configuration and select New Module.
3. Select your type of ENB or ENET module and choose OK.
Publication 1756-UM001D-EN-P - November 2001
Configure an EtherNet/IP Module 1-9
4.
7.
5.
42579
6.
4. Type a name for the module.
5. Type or select the slot number where the module is installed.
6. How closely must any module that is installed in this slot match the information on this tab?
If: all information must match:
• type
• catalog number
• vendor
• major and minor revision number
Then select:
Exact Match all information except the minor revision number Compatible Module
Notes:
If you select Compatible Module , you can still replace a 1756-ENET/B module with a 1756-ENBT module. However, you cannot replace an ENBT module with an ENET/B module.
no information must match Disable Keying
7. Type the IP address or host name of the module:
To specify an:
IP address host name
Do this:
A. Select the IP Address button.
B. Type the IP address
Type the host name
Example:
130.151.136.164
aurora6
8. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
1-10 Configure an EtherNet/IP Module
9. From the File menu, choose Save.
10. Download the project to the controller.
Configure the Port
1. In the controller organizer, right-click the ENB or ENET module and select Properties.
2. Click the Port Configuration tab.
42423
3. Clear (uncheck) the Enable Bootp check box.
4. Type the IP address of the module.
5. Type the subnet mask for the module, if you need one.
6. Type the gateway address for the module, if you need one.
Publication 1756-UM001D-EN-P - November 2001
42423
Configure an EtherNet/IP Module 1-11
7. Will you use host names to specify other EtherNet/IP devices?
(I.e., When you send a message or configure a remote ENB or
ENET module, will you use a host name instead of an IP address?)
If:
Yes
No
Then:
8. .Type the name of the domain of the module.
9. Type the IP address of the server or servers that contain the DNS database for the domain.
10. Choose Set.
A dialog box asks you to confirm your changes.
11. To apply your changes, choose OK.
12. To close the Module Properties dialog box, choose OK.
Publication 1756-UM001D-EN-P - November 2001
1-12 Configure an EtherNet/IP Module
Check the Module
To make sure that this procedure was successful, look at the front of the module:
For this module:
1756-ENET
1756-ENBx
Check this indicator:
OK LED four character display
For this indication: solid green
IP address of the module
Publication 1756-UM001D-EN-P - November 2001
Configure an EtherNet/IP Module 1-13
Configure a Module Using
RSLinx Software
To configure a module using RSLinx software:
•
•
•
Connect the Hardware
1. Install the module.
2. Connect your computer to a module with which you can already communicate. The module must be in the same chassis as the module that you want to configure.
TIP
To set up communication between your computer and a controller, see “Connect Directly to a
3. Turn on the power to the module.
Configure the Port
1. Start RSLinx software.
To expand a network one level, do one of the following:
•
Double-click the network.
• Select the network and press the
→
key.
•
Click the + sign.
−
Workstation
+
+
Linx Gateways, Ethernet
AB_DF1-x, DF1
Publication 1756-UM001D-EN-P - November 2001
1-14 Configure an EtherNet/IP Module
2. Expand a network until you see the module.
−
Workstation
+
−
Linx Gateways, Ethernet
AB_DF1-x, DF1
− xx, 1756-Lx
−
Backplane, 1756-Ax
+ xx, 1756-ENB
3. Right-click the module and choose Module Configuration.
4. Click the Port Configuration tab.
42472
5. Clear (uncheck) the Obtain IP Address from Bootp Server check box.
6. Type the IP address for the module.
7. Type the subnet mask for the module, if you need one.
8. Type the gateway address for the module, if you need one.
Publication 1756-UM001D-EN-P - November 2001
Configure an EtherNet/IP Module 1-15
9. Will you use host names to specify other EtherNet/IP devices?
(I.e., When you send a message or configure a remote ENB or
ENET module, will you use a host name instead of an IP address?)
If:
Yes
No
Then:
10. Type the IP address of the server or servers that contain the DNS database for the domain.
11. Type the name of the domain of the module.
12. Choose OK.
Check the Module
To make sure that this procedure was successful, look at the front of the module:
For this module:
1756-ENET
1756-ENBx
1756-AENx
Check this indicator:
OK LED four character display
NETWORK STATUS
For this indication: solid green
IP address of the module flashing green or steady green
Publication 1756-UM001D-EN-P - November 2001
1-16 Configure an EtherNet/IP Module
Configure a Module Using
BOOTP
To configure a module using BOOTP software:
•
•
•
Enter the Default Network Settings
•
•
•
Install BOOTPServer Software
This procedure requires BOOTPServer software from Rockwell
Automation. You can find the software at either of these locations:
•
RSLogix 5000 software CD, ENU \ TOOLS \ BootP Utility folder,
BootPServer.exe
• www.ab.com\networks
Connect the Hardware
1. Install the module.
2. Connect the module to the network.
3. Turn on the power to the module.
4. Connect your computer to the same network subnet as the module.
Publication 1756-UM001D-EN-P - November 2001
Enter the Default Network Settings
1. Start the BOOTPServer software.
Configure an EtherNet/IP Module 1-17
The module sends its Ethernet address to the BOOTP server on a regular basis.
2. From the Tools menu, choose Default Network Settings.
42890
3. Type the subnet mask for the module, if you need one.
4. Type the gateway address for the module, if you need one.
5. Choose OK.
Publication 1756-UM001D-EN-P - November 2001
1-18 Configure an EtherNet/IP Module
Configure the Module
The module shows up in the
Relation List.
1. Double-click the address of the module.
42859
2. Type the IP address for the module.
3. Choose OK.
42858
The status line shows that the software sent the address to the module.
Publication 1756-UM001D-EN-P - November 2001
42860
Configure an EtherNet/IP Module 1-19
Disable BOOTP
Each time you turn on the module, what do you want it to do?
If you want the module to:
Use the same configuration
Then:
Request a configuration from a BOOTP server
Notes:
This disables BOOTP for the module. It no longer requests a configuration from BOOTP servers.
•
This leaves BOOTP enabled for the module. When you turn off the module, it loses its configuration information.
•
Use this option only when a BOOTP server is continually available to configure the module..
42860
1. In the Relation List, select the module.
2. Choose Disable.
The status line shows that BOOTP is disabled for the module.
42892
Save the Relation List
The relation list contains the configuration that you have just sent to a module. You can use it as a record of the configuration of each module or to re-configure the module in the future.
1. From the File menu, choose Save Relation List.
2. Type or select a file name.
3. Choose Save.
Publication 1756-UM001D-EN-P - November 2001
1-20 Configure an EtherNet/IP Module
Renew the IP Address of a
1794-AENx Module
To renew (reset) the IP address of a 1794-AENx module:
•
•
•
•
•
•
Install BOOTPServer Software
To renew the IP address of a 1794-AENx module, use BOOTPServer software from Rockwell Automation. You can find the software at either of these locations:
•
RSLogix 5000 software CD, ENU \ TOOLS \ BootP Utility folder,
BootPServer.exe
• www.ab.com\networks
Set Up the Hardware
1. Cycle the power to the module.
Publication 1756-UM001D-EN-P - November 2001
31247a
00:00:BC:06:00:6A
Ethernet Adapter
2. Write down the Ethernet address of the module.
3. Connect your computer to the same network subnet as the module.
Enter the New Configuration
1. Start the BOOTPServer software.
Configure an EtherNet/IP Module 1-21
2. Choose New.
42891
3. Type the Ethernet address of the module
(e.g., 00:00:BC:06:00:6A).
4. Type the IP address for the module.
5. Type the subnet mask for the module, if you need one.
6. Type the gateway address for the module, if you need one.
7. Choose OK.
42860
Publication 1756-UM001D-EN-P - November 2001
1-22 Configure an EtherNet/IP Module
Send the Configuration
1. In the Relation List, select the module.
2. Choose Renew.
The software resets the module and sends the new IP address.
42860
Disable BOOTP
Each time you turn on the module, what do you want it to do?
If you want the module to:
Use the same configuration
Then:
Request a configuration from a BOOTP server
Notes:
This disables BOOTP for the module. It no longer requests a configuration from BOOTP servers.
•
This leaves BOOTP enabled for the module. When you turn off the module, it loses its configuration information.
•
Use this option only when a BOOTP server is continually available to configure the module..
42860
Publication 1756-UM001D-EN-P - November 2001
Configure an EtherNet/IP Module 1-23
42860
1. In the Relation List, select the module.
2. Choose Disable.
The status line shows that BOOTP is disabled for the module.
42892
Save the Relation List
The relation list contains the configuration that you have just sent to a module. You can use it as a record of the configuration of each module or to re-configure the module in the future.
1. From the File menu, choose Save Relation List.
2. Type or select a file name.
3. Choose Save.
Publication 1756-UM001D-EN-P - November 2001
1-24 Configure an EtherNet/IP Module
Test the Configuration
Connect Directly to a
Controller
1. If you have not already done so: a. Connect the module to the network.
b. Connect your computer to the same network subnet as the module.
2. From the Windows NT Start menu, select Programs
→
Command Prompt.
3. Type ping IP_address and press the Enter key.
where:
IP_address is the IP address of the module.
4. Did you receive a reply from the module?
If:
Yes
No
Then:
You have a valid configuration for the module.
Check your configuration.
5. Close the Command Prompt window.
To set up communications between your computer and a controller:
•
•
Connect a Serial Cable
40043
Publication 1756-UM001D-EN-P - November 2001
Configure an EtherNet/IP Module 1-25
1. Obtain a 1756-CP3 serial cable. (You can also use a 1747-CP3 cable from the SLC product family, but once the cable is connected you cannot close the controller door.)
I
TIP
If you make your own serial cable:
•
Limit the length to 15.2m (50 ft).
•
Wire the connectors as follows:
Workstation Controller
1 CD
2 RDX
3 TXD
4 DTR
COMMON
6 DSR
7 RTS
8 CTS
9
1 CD
2 RDX
3 TXD
4 DTR
COMMON
6 DSR
7 RTS
8 CTS
9
•
Attach the shield to both connectors.
42231
1756-CP3 cable
20884
2. Connect the cable to the controller and to your workstation.
Publication 1756-UM001D-EN-P - November 2001
1-26 Configure an EtherNet/IP Module
Configure a Serial Driver
1. Start RSLinx
™
software.
2. From the Communications menu, select Configure Drivers.
3. From the Available Driver Types list, select RS-232 DF1 Devices.
4. Click Add New.
5. Click OK to accept the default name for the driver.
6. From the Comm Port drop-down list, select the serial port (on the workstation) that the cable is connected to.
7. From the Device drop-down list, select Logix 5550-Serial Port.
8. Click Auto-Configure.
9. Does the dialog box display the following message:
Auto Configuration Successful!
If:
Yes
No
Then:
Click OK .
Go to step 6. and verify that you selected the correct Comm Port.
10. Click Close.
Publication 1756-UM001D-EN-P - November 2001
1
Chapter
2
Download and Go Online over an EtherNet/IP
Network
When to Use This
Procedure
Use this procedure when you want to perform any of the following over an EtherNet/IP network:
• download a project
• go online and monitor a controller
• upload a controller
RSLogix 5000 Software eface
ControlLogix Chassis with 1756-ENBx or
-ENET Module
42473 switch
How to Use This Procedure
IMPORTANT
Before you use this procedure, configure the
1756-ENBx or -ENET module that is in the chassis
with the controller. Refer to "Configure an
EtherNet/IP Module" on page 1-1.
To complete this procedure, do the following tasks:
•
•
Publication 1756-UM001D-EN-P - November 2001
2-2 Download and Go Online over an EtherNet/IP Network
Configure an Ethernet
Driver
In this task, you configure an RSLinx driver to communicate with devices on an EtherNet/IP network. You can configure the driver to communicate with up to 63 devices on this network, such as
1756-ENET modules or PLC-5E controllers.
A. Go to RSLinx software.
B. From the Communications menu, choose Configure Drivers.
C. From the Available Driver Types list, choose Ethernet devices.
D. Choose Add New.
E. If you want assign a descriptive name to the driver, change the default name.
F. Choose OK.
G.
H.
Publication 1756-UM001D-EN-P - November 2001
42585
G. In the Host Name column, type the IP address or host name of an EtherNet/IP device with which you want to communicate.
Examples:
• aurora6
•
130.151.136.164
H. Do you want to communicate with another EtherNet/IP device on this network?
If:
Yes
No
I. Choose OK.
J. Choose Close.
Then:
1. Choose Add New .
2. Go to Step G.
Go to the next step.
Select a Path
Download and Go Online over an EtherNet/IP Network 2-3
A. Open the RSLogix 5000
™
project for the controller.
B. From the Communications menu, select Who Active.
To expand a network one level, do one of the following:
•
Double-click the network.
•
Select the network and press the
→
key.
•
Click the + sign.
−
Workstation
+
+
+
Linx Gateways, Ethernet
AB_DF1-x, DF1
AB_ETH-x, Ethernet
C. Expand the Ethernet driver to the level of the controller.
−
Workstation
+
−
−
Linx Gateways, Ethernet
AB_DF1-x, DF1
AB_ETH-x, Ethernet
− xxx.xxx.xxx.xxx, 1756-ENBx
−
Backplane, 1756-Ax
+ xx, 1756-Lx
D. Select the controller and choose a button. You may have to confirm the action.
To: monitor the project in the controller transfer a copy of the project from the controller to
RSLogix 5000 software transfer the open project to the controller
Choose:
Go Online
Upload
Download
Publication 1756-UM001D-EN-P - November 2001
2-4 Download and Go Online over an EtherNet/IP Network
Notes:
Publication 1756-UM001D-EN-P - November 2001
1
When to Use This
Procedure
Before You Begin
Communicate with 1756 I/O over an
EtherNet/IP Network
Chapter
3
Use this procedure to monitor and control devices that wired to 1756
I/O modules:
• local modules
• remote modules where 1756-ENBx or 1756-ENET/B modules connect the local and remote chassis over an EtherNet/IP network
Local I/O Controller Remote I/O
ControlLogix Chassis with 1756-ENBx or
-ENET/B Modules
42608 switch
Before you use this procedure, do the following:
1. To communicate with 1756 I/O over an EtherNet/IP network, you must use 1756-ENBx or -ENET/B modules. If you have a
1756-ENET/A module, determine if you can update the module:
For this 1756-ENET/A revision:
1.18 or later (latch of the RJ--45 connector points to the left) earlier than 1.18 (latch of the RJ--45 connector points to the right)
Then:
Update the firmware of module to revision 2.6 or later.
Contact your Rockwell Automation representative or local distributor.
2. Configure the ENB or ENET modules in the local and remote
chassis. Refer to "Configure an EtherNet/IP Module" on page 1-1.
Publication 1756-UM001D-EN-P - November 2001
3-2 Communicate with 1756 I/O over an EtherNet/IP Network
How to Use This Procedure
IMPORTANT
If the all the I/O modules are in the same chassis as
the controller (no remote I/O), go to Add I/O
If you have not already done so in a previous procedure, do the following preliminary tasks:
•
Add the Local 1756-ENBx or -ENET Module
•
Add the Remote 1756-ENBx or -ENET Module
To complete this procedure, do the following tasks:
•
•
•
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1756 I/O over an EtherNet/IP Network 3-3
Add the Local 1756-ENBx or
-ENET Module
A. Open the RSLogix 5000
project offline.
42376
B. Is the local ENB or ENET module already in the I/O configuration of the controller?
If: yes no
Then:
Go to Add the Remote 1756-ENBx or -ENET Module
Right-click I/O Configuration and select New Module .
C. Select your type of ENB or ENET module and choose OK.
Publication 1756-UM001D-EN-P - November 2001
3-4 Communicate with 1756 I/O over an EtherNet/IP Network
D.
G.
E.
42579
F.
D. Type a name for the module.
E. Type or select the slot number where the module is installed.
F. How closely must any module that is installed in this slot match the information on this tab?
If: Then select: all information must match:
• type
• catalog number
• vendor
• major and minor revision number
Exact Match all information except the minor revision number Compatible Module
Notes:
If you select Compatible Module , you can still replace a 1756-ENET/B module with a 1756-ENBT module. However, you cannot replace an ENBT module with an ENET/B module.
no information must match Disable Keying
G. Type the IP address or host name of the module:
To specify an:
IP address host name
Do this:
1. Select the IP Address button.
2. Type the IP address
Type the host name
Example:
130.151.136.164
aurora6
H. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
D.
E.
Communicate with 1756 I/O over an EtherNet/IP Network 3-5
Add the Remote 1756-ENBx or -ENET Module
−
I/O Configuration
−
[x] 1756-ENBx local_ENB/ENET
A. Right-click local_ENB/ENET and select New Module.
B. Select your type of ENB or ENET module and choose OK.
C.
42580
F.
C. Type a name for the module. Use a name that identifies the I/O in the chassis.
D. Are most of the modules in the chassis non-diagnostic, digital
I/O modules?
If:
Yes
No
Then select
Rack Optimization
None
E. Type or select the slot number where the module is installed
F. Type or select the number of slots in the remote chassis.
Publication 1756-UM001D-EN-P - November 2001
3-6 Communicate with 1756 I/O over an EtherNet/IP Network
H.
42580
G.
G. How closely must any module in this slot match the information on this tab?
Notes: If: all information must match:
• type
• catalog number
• vendor
• major and minor revision number
Then select:
Exact Match all information except the minor revision number Compatible Module If you select Compatible Module , you can still replace a 1756-ENET/B module with a 1756-ENBT module. However, you cannot replace an ENBT module with an ENET/B module.
no information must match Disable Keying
H. Type the IP address or host name of the module:
To specify an:
IP address host name
Do this:
1. Select the IP Address button.
2. Type the IP address
Type the host name
Example:
130.151.136.164
aurora6
I. Click Next.
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1756 I/O over an EtherNet/IP Network 3-7
J.
K.
L.
J. In step
D.
, which Comm Format did you select?
If:
Rack Optimization
None
Then:
Type the rate at which the fastest device in the chassis must update.
No RPI is required. Go to the next step.
42401
K. Initially, do you want the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared
(unchecked).
Select the check box.
Notes:
When you test this portion of the system, clear the check box.
L. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
M. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
3-8 Communicate with 1756 I/O over an EtherNet/IP Network
Add I/O Modules
If: no yes
And it is an: output module input module
In this task, you add I/O modules to the I/O configuration of the controller.
A. Is the module in the I/O configuration of another controller?
And you want to: Then:
Go to the next step.
Go to the next step.
maintain communication with the module if it loses communication with the other controller
1. Copy the module from the I/O configuration of the other controller.
2. Paste the module into the I/O configuration of this controller.
Go to the next step.
stop communication with the module if it loses communication with the other controller
−
I/O Configuration
−
[x] 1756-ENBx local_ENB/ENET
Add a local I/O module here.
[x] 1756-ENBx remote_ENB/ENET Add a remote I/O module here.
B. Where is the module located?
If it is in: remote chassis
Then: same chassis as controller right-click I/O Configuration and select New
Module .
right-click the remote ENB or ENET module and select New Module .
C. Select the type of module and click OK.
D. Type a name for the module.
E. Type or select the slot number where the module is installed.
42420
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1756 I/O over an EtherNet/IP Network 3-9
F. Select a Comm Format:
IMPORTANT
If the module is also in the I/O configuration of another controller, then select the Listen
Only version of the Comm Format (e.g., Listen Only - Input Data).
If this module is a: diagnostic digital input
And: And you want to: Then select:
Full Diagnostics - Input Data non-diagnostic digital input diagnostic digital output fused digital output non-diagnostic and non-fused digital output non-isolated analog input isolated or temperature measuring analog input analog output local chassis remote chassis time stamp a change in data omit time stamps schedule when to apply outputs not schedule when to apply outputs schedule when to apply outputs local chassis not schedule when to apply outputs schedule when to apply outputs not schedule when to apply outputs remote chassis floating point mode provides sufficient sample time floating point mode does not provide sufficient sample time
25 ms sample time or greater is sufficient sample time must be less than
25 ms associated inputs are REALs associated inputs are INTs time stamp when the data is sampled omit the time stamp time stamp when the data is sampled omit the time stamp time stamp when the data is sampled omit the time stamp time stamp when the data is sampled omit the time stamp time stamp the data echo omit the time stamp time stamp the data echo omit the time stamp
CST Timestamped Input Data
Input Data
Rack Optimization
Full Diagnostics - Scheduled
Output Data
Full Diagnostics - Output Data
CST Timestamped Fuse Data -
Scheduled Output Data
CST Timestamped Fuse Data -
Output Data
Scheduled Output Data
Output Data
Rack Optimization
CST Timestamped Float Data - wiring_mode
Float Data - wiring_mode
CST Timestamped Integer Data - wiring_mode
Integer Data - wiring_mode
CST Timestamped Float Data
Float Data
CST Timestamped Integer Data
Integer Data
CST Timestamped Float Data
Float Data
CST Timestamped Integer Data
Integer Data
Publication 1756-UM001D-EN-P - November 2001
3-10 Communicate with 1756 I/O over an EtherNet/IP Network
42420
G. How closely must any module in this slot match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
H. Click Next.
42401
I. In step
F.
, did you select Rack Optimization as the Comm
Format?
If:
No
Yes
Then:
Type the rate at which the fastest device that is wired to the module must update.
No RPI is required. Go to the next step.
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1756 I/O over an EtherNet/IP Network 3-11
J. Initially, do you want the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared
(unchecked).
Select the check box.
Notes:
When you test this portion of the system, clear the check box.
K. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
L. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
3-12 Communicate with 1756 I/O over an EtherNet/IP Network
Create Aliases
In this task, you convert tags in your programs to aliases for I/O points or channels (devices). As an alias for an I/O point or channel, each tag:
• provides a descriptive name for the device that is wired to the point or channel
• represents the value of the point or channel. When one changes, the other reflects the change.
EXAMPLE
Create aliases
The following logic was initially programmed using descriptive tag names, such as start and motor. Later, the tags were converted to aliases for the corresponding I/O devices.
start is an alias for the push button that is wired to point 1 of the module that is in slot 2 of the local chassis. When the push button is on, start is on.
motor is an alias for the starter contactor that is wired to point 0 of the module that is in slot 0 of a remote chassis (named conveyor).
When motor turns on, the starter contactor turns on.
stop
<Local:2:I.Data.0> start
<Local:2:I.Data.1> motor
<conveyor:0:O.Data.0>
A. From the Logic menu, select Edit Tags.
motor
<conveyor:0:O.Data.0>
42435
B.
42421
C.
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1756 I/O over an EtherNet/IP Network 3-13
B. Select the scope of the descriptive tag.
C. To the right of the tag name, click the Alias For cell.
The cell displays a ▼
D. Click the ▼
E. Click the Controller Scoped Tags button, if it is available. (All the data for I/O modules is at the controller scope.)
F. Select the I/O device that the tag represents:
If the device is: digital analog
Then:
1. Next to name:slot:X, click the + sign.
2. Click the Data member.
3. To the right of the Data member, click ▼
4. Click the point number of the device.
1. Next to name:slot:X, click the + sign.
2. Scroll down and double-click Chz Data .
Where: name slot
X
Chz
Is: name of the chassis:
If: Then the name is: local remote
Local name of the communication module in the chassis, such as a 1756-ENBx or 1756-CNB module.
slot number of the module type of device:
If: Then: input output
I
O channel that the device is wired to
G. Press the Enter key or click another cell.
Publication 1756-UM001D-EN-P - November 2001
3-14 Communicate with 1756 I/O over an EtherNet/IP Network
When you finish, the Tags window should look similar to the following:
Tag Name start
Alias For conveyor:1:I.Data.1(C)
Base Tag conveyor:1:I.Data.1(C) start is an alias for point 1 of the input module that is in slot 1 of a remote chassis (named conveyor).
TIP
Even if the I/O module uses the Rack Optimization Comm Format, address the required point as described in step F.
Tag Name start
Alias For conveyor:1:I.Data.1(C)
Base Tag conveyor:I.Slot[1].Data.1(C) start is an alias for point 1 of the input module that is in slot 1 of a remote chassis (named conveyor).
Because the module uses the Rack Optimization format, a structure associated with the communication module in the remote chassis actually transfers the data.
However, the ladder logic displays the address of the data within the structure for the communication module (e.g., ENB, CNB): start
<conveyor:I.Slot[1].Data.1>
42435
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1756 I/O over an EtherNet/IP Network 3-15
Validate Connections Is this task, you verify that the controller can communicate with the devices that you have just configured.
Step:
A. Determine if communications are established.
B. Identify a fault. Start at the local communication module and work down through the tree.
C. Identify the fault code.
Detailed actions:
Is a
!
over the I/O Configuration folder?
If:
No
Yes
Then:
The controller can communicate with the module.
Communications are not established. Go to the next step.
1.
2.
−
−
!
I/O Configuration
3.
−
!
[x] 1756-YYY/x local_com_module
!
z 17xx-YYY adapter_1
!
[0] 17xx-YYY module_1
!
[1] 17xx-YYY module_2
1. Right-click the module and select Properties .
2. Click the Connection tab.
3.
3. Identify the code for the fault.
42437
Publication 1756-UM001D-EN-P - November 2001
3-16 Communicate with 1756 I/O over an EtherNet/IP Network
Step:
D. Clear the fault.
Detailed actions:
1. From the Help menu, select Contents .
2. Click the Index tab.
3. Type module faults .
E. Go to step A.
4.
4. Select the range for the code and click Display .
5. Scroll down to your fault code and follow the recommendations.
42439
Publication 1756-UM001D-EN-P - November 2001
1
Communicate with 1794 I/O Over an
EtherNet/IP Network
Chapter
4
When to Use This
Procedure
Use this procedure to monitor and control I/O devices that are wired to 1794 I/O modules when a:
•
1756-ENBx or a 1756-ENET/B module connects the local chassis to a EtherNet/IP network.
•
1794-AENx module connects the 1794 I/O modules to the same
EtherNet/IP network.
1756-ENBx or -ENET module
1794-AENx module switch 42872
Publication 1756-UM001D-EN-P - November 2001
4-2 Communicate with 1794 I/O Over an EtherNet/IP Network
Before You Use This
Procedure
Before you use this procedure, do the following:
1. To communicate with I/O modules over an EtherNet/IP network, you must use a 1756-ENBx or -ENET/B module in the local chassis. If you have a 1756-ENET/A module, determine if you can update the module:
For this 1756-ENET/A revision:
1.18 or later (latch of the RJ--45 connector points to the left) earlier than 1.18 (latch of the RJ--45 connector points to the right)
Then:
Update the firmware of module to revision 2.6 or later.
Contact your Rockwell Automation representative or local distributor.
2. Configure the following modules:
•
ENB or ENET module in the local chassis
•
AEN module
Refer to "Configure an EtherNet/IP Module" on page 1-1.
How to Use This Procedure If you have not already done so in a previous procedure, do the following preliminary step:
•
Add the local 1756-ENBx or -ENET module
To complete this procedure, do the following steps:
•
Add the Remote 1794-AENx Module
•
•
To check your work, do the following step:
•
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1794 I/O Over an EtherNet/IP Network 4-3
Add the local 1756-ENBx or
-ENET module
1. Open the RSLogix 5000
project offline.
42376
2. Is the local ENB or ENET module already in the I/O configuration of the controller?
If:
Yes
No
Then:
Go to Add the Remote 1794-AENx Module.
Right-click I/O Configuration and select New Module .
3. Select your type of ENB or ENET module and choose OK.
Publication 1756-UM001D-EN-P - November 2001
4-4 Communicate with 1794 I/O Over an EtherNet/IP Network
4.
7.
5.
42579
6.
4. Type a name for the module.
5. Type or select the slot number where the module is installed.
6. How closely must any module that is installed in this slot match the information on this tab?
If: all information must match:
• type
• catalog number
• vendor
• major and minor revision number
Then select:
Exact Match all information except the minor revision number Compatible Module
Notes:
If you select Compatible Module , you can still replace a 1756-ENET/B module with a 1756-ENBT module. However, you cannot replace an ENBT module with an ENET/B module.
no information must match Disable Keying
7. Type the IP address or host name of the module:
To specify an:
IP address host name
Do this:
A. Select the IP Address button.
B. Type the IP address
Type the host name
Example:
130.151.136.164
aurora6
8. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1794 I/O Over an EtherNet/IP Network 4-5
Add the Remote 1794-AENx
Module
−
I/O Configuration
−
[x] 1756-ENBx local_ENB/ENET
1. Right-click local_ENB/ENET and select New Module.
2. Select the type of AEN module that you are using and click OK.
42816
3. Type a name for the module. Use a name that identifies the I/O on this rail.
4. Are most of the modules on this rail digital I/O modules?
If:
Yes
No
Then select
Rack Optimization
None
5. Type or select the number of I/O modules on this rail.
Publication 1756-UM001D-EN-P - November 2001
4-6 Communicate with 1794 I/O Over an EtherNet/IP Network
42816
6. How closely must any module in this slot match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
7. Type the IP address or host name of the module:
To specify an:
IP address host name
Do this:
A. Select the IP Address button.
B. Type the IP address
Type the host name
Example:
130.151.136.164
aurora6
8. Click Next.
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1794 I/O Over an EtherNet/IP Network 4-7
42401
9. In step
4.
, which Comm Format did you select?
If:
Rack Optimization
None
Then:
Type the rate at which the fastest device on the rail must update.
No RPI is required. Go to the next step.
10. Initially, do you want the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared
(unchecked).
Select the check box.
Notes:
When you test this portion of the system, clear the check box.
11. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
12. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
4-8 Communicate with 1794 I/O Over an EtherNet/IP Network
Add I/O Modules
If: no yes
And it is an: output module input module
In this task, you add I/O modules to the I/O configuration of the controller.
1. Is the module in the I/O configuration of another controller?
And you want to: Then:
Go to the next step.
Go to the next step.
maintain communication with the module if it loses communication with the other controller
A. Copy the module from the I/O configuration of the other controller.
B. Paste the module into the I/O configuration of this controller.
C. Go to the next task.
Go to the next step.
stop communication with the module if it loses communication with the other controller
−
I/O Configuration
−
[x] 1756-ENBx local_ENB/ENET
− z 1794-AENx/y name_of_rail Add a 1794 I/O module here.
2. Right-click the AEN module and select New Module.
3. Select the type of module and click OK.
5.
4.
6.
42420
4. Type a name for the module.
5. Type or select the slot number where the module is installed.
7.
Publication 1756-UM001D-EN-P - November 2001
If this module is a: digital input digital input/output digital output analog
Communicate with 1794 I/O Over an EtherNet/IP Network 4-9
6. Select a Comm Format:
IMPORTANT
If the module is also in the I/O configuration of another controller, then select the Listen Only version of the Comm Format (e.g., Listen Only - Input Data).
And the:
Comm Format of the AEN is
Rack Optimization
Comm Format of the AEN is
None
Comm Format of the AEN is
Rack Optimization
Comm Format of the AEN is
None
Comm Format of the AEN is
Rack Optimization
Comm Format of the AEN is
None
And the module must: update at the RPI of the AEN update faster than the RPI of the
AEN
Then select:
Rack Optimization
Input Data
Input Data update at the RPI of the AEN update faster than the RPI of the
AEN
Rack Optimization
Data
Data update at the RPI of the AEN update faster than the RPI of the
AEN
Rack Optimization
Output Data
Output Data
Data
7. How closely must any module in this slot match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
8. Click Next.
Publication 1756-UM001D-EN-P - November 2001
4-10 Communicate with 1794 I/O Over an EtherNet/IP Network
9.
10.
11.
42401
9. In step
6.
, did you select Rack Optimization as the Comm
Format?
If:
No
Yes
Then:
Type the rate at which the fastest device that is wired to the module must update.
No RPI is required. Go to the next step.
10. Initially, do you want the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared
(unchecked).
Select the check box.
Notes:
When you test this portion of the system, clear the check box.
11. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
12. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
Address I/O
Communicate with 1794 I/O Over an EtherNet/IP Network 4-11 analog input analog output
To monitor or control an I/O device, assign the tag name of the device to an instruction in your logic:
•
For step-by-step instructions on how to enter logic and tag names, see the Logix5000 Controllers Common Procedures, publication 1756-PM001.
•
All the data for I/O modules is at the controller scope. As you assign addresses, click the Controller Scoped Tags button to see the I/O tags.
•
Use the following table to select the address of an I/O device:
If the device is: digital
And it Comm Format is:
Data (e.g., Input Data, Output
Data)
Rack Optimization
Then use this address: name:slot:type.
Data .bit
name:slot:type. bit name:slot:type.Ch# InputData name:slot:type.Ch# OutputData
Where: name slot type bit
Ch#
Is: name of the adapter module on the rail, such as an AEN or ACN module slot number of the I/O module type of device:
If: Then: input output
I
O point (bit) number of the device channel that the device is wired to
Publication 1756-UM001D-EN-P - November 2001
4-12 Communicate with 1794 I/O Over an EtherNet/IP Network
•
When you choose rack optimization for an I/O module, its tags are created as aliases for the tags of the adapter module. In your logic, you see the tag of the device as aliases for a tag of the adapter module. (The tag name of the adapter is in angle brackets.) tag name of the adapter tag name of the I/O device conveyor:2:I.0
<conveyor:I.Data[2].0>
42435
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1794 I/O Over an EtherNet/IP Network 4-13
Validate Connections Is this task, you verify that the controller can communicate with the devices that you have just configured.
Step:
A. Determine if communications are established.
B. Identify a fault. Start at the local communication module and work down through the tree.
C. Identify the fault code.
Detailed actions:
Is a
!
over the I/O Configuration folder?
If:
No
Yes
Then:
The controller can communicate with the module.
Communications are not established. Go to the next step.
1.
2.
−
−
!
I/O Configuration
3.
−
!
[x] 1756-YYY/x local_com_module
!
z 17xx-YYY adapter_1
!
[0] 17xx-YYY module_1
!
[1] 17xx-YYY module_2
1. Right-click the module and select Properties .
2. Click the Connection tab.
3.
3. Identify the code for the fault.
42437
Publication 1756-UM001D-EN-P - November 2001
4-14 Communicate with 1794 I/O Over an EtherNet/IP Network
Step:
D. Clear the fault.
Detailed actions:
1. From the Help menu, select Contents .
2. Click the Index tab.
3. Type module faults .
E. Go to step A.
4.
4. Select the range for the code and click Display .
5. Scroll down to your fault code and follow the recommendations.
42439
Publication 1756-UM001D-EN-P - November 2001
Chapter
5
Communicate with Another Controller over an
EtherNet/IP Network
When to Use This
Procedure
ControlLogix Controller
Use this procedure to transfer data from one controller to another controller over an EtherNet/IP network:
•
ControlLogix controller to another ControlLogix controller
•
ControlLogix controller to a PLC-5E
®
or SLC 5/05
™
controller
•
PLC-5E or SLC 5/05 controller to a ControlLogix controller
ControlLogix Controller
1
Before You Begin switch
PLC-5E Controller SLC 5/05 Controller
42607
Before you use this procedure, do the following:
1. To produce and consume tags over an EtherNet/IP network, you must use 1756-ENBx or -ENET/B modules. If you have a
1756-ENET/A module, determine if you can update the module:
For this 1756-ENET/A revision:
1.18 or later (latch of the RJ--45 connector points to the left) earlier than 1.18 (latch of the RJ--45 connector points to the right)
Then:
Update the firmware of module to revision 2.6 or later.
Contact your Rockwell Automation representative or local distributor.
2. Configure the ENB or ENET modules. Refer to "Configure an
EtherNet/IP Module" on page 1-1.
Publication 1756-UM001D-EN-P - November 2001
5-2 Communicate with Another Controller over an EtherNet/IP Network
Select a Communication
Method
If the other controller is:
ControlLogix
PLC-5
SLC 5/05
To communicate with another controller, you have the following options:
And:
The data needs delivery at a specific rate.
The data is sent when a specific condition in your application occurs.
The ControlLogix controller sends the message.
The PLC-5 or SLC 5/05 sends the message.
Then:
Produce and consume a tag. Go to Produce a Tag on page 5-3.
Send a message. Go to Add the Local 1756-ENBx or
Send a message. Go to Add the Local 1756-ENBx or
Send a message. Go to Access ControlLogix Data on page 5-23.
Publication 1756-UM001D-EN-P - November 2001
Produce a Tag
Communicate with Another Controller over an EtherNet/IP Network 5-3
A. Open the RSLogix 5000™ project for the controller that produces
(sends) the data.
B. From the Logic menu, select Edit Tags.
IMPORTANT
To produce a tag, the tag must meet be:
• controller scope
• one of these data types:
– DINT
– REAL
– array of DINTs or REALs
– user-defined
• less than or equal to 500 bytes
If the tag does not meet these requirements, reorganize the tag.
C. From Scope, select name_of_controller (controller). (Only tags that are controller scope can produce data.)
D. Select the tag that will produce the data and press the
ALT + Enter keys.
42352
E. Select the Produced option button.
F. Type or select the number of controllers that will consume
(receive) the tag.
G. Choose OK.
Publication 1756-UM001D-EN-P - November 2001
5-4 Communicate with Another Controller over an EtherNet/IP Network
Add the Local 1756-ENBx or
-ENET Module
A. Open the RSLogix 5000
project for the controller that consumes (receives) the data.
42376
B. Is the local ENB or ENET module already in the I/O configuration of the controller?
If: yes no
Then:
Go to the next step.
Right-click I/O Configuration and select New Module .
C. Select your type of ENB or ENET module and choose OK.
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller over an EtherNet/IP Network 5-5
D.
G.
E.
42579
F.
D. Type a name for the module.
E. Type or select the slot number where the module is installed.
F. How closely must any module that is installed in this slot match the information on this tab?
If: Then select: all information must match:
• type
• catalog number
• vendor
• major and minor revision number
Exact Match all information except the minor revision number Compatible Module
Notes:
If you select Compatible Module , you can still replace a 1756-ENET/B module with a 1756-ENBT module. However, you cannot replace an ENBT module with an ENET/B module.
no information must match Disable Keying
G. Type the IP address or host name of the module:
To specify an:
IP address host name
Do this:
1. Select the IP Address button.
2. Type the IP address
Type the host name
Example:
130.151.136.164
aurora6
H. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
D.
E.
5-6 Communicate with Another Controller over an EtherNet/IP Network
Add the Remote 1756-ENBx or -ENET Module
−
I/O Configuration
−
[x] 1756-ENBx local_ENB/ENET
A. Right-click local_ENB/ENET and select New Module.
B. Select your type of ENB or ENET module and choose OK.
C.
42580
F.
C. Type a name for the module. Use a name that identifies the I/O in the chassis.
D. Are most of the modules in the chassis non-diagnostic, digital
I/O modules?
If:
Yes
No
Then select
Rack Optimization
None
E. Type or select the slot number where the module is installed
F. Type or select the number of slots in the remote chassis.
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller over an EtherNet/IP Network 5-7
H.
42580
G.
G. How closely must any module in this slot match the information on this tab?
Notes: If: all information must match:
• type
• catalog number
• vendor
• major and minor revision number
Then select:
Exact Match all information except the minor revision number Compatible Module If you select Compatible Module , you can still replace a 1756-ENET/B module with a 1756-ENBT module. However, you cannot replace an ENBT module with an ENET/B module.
no information must match Disable Keying
H. Type the IP address or host name of the module:
To specify an:
IP address host name
Do this:
1. Select the IP Address button.
2. Type the IP address
Type the host name
Example:
130.151.136.164
aurora6
I. Click Next.
Publication 1756-UM001D-EN-P - November 2001
5-8 Communicate with Another Controller over an EtherNet/IP Network
J.
K.
L.
J. In step
D.
, which Comm Format did you select?
If:
Rack Optimization
None
Then:
Type the rate at which the fastest device in the chassis must update.
No RPI is required. Go to the next step.
42401
K. Initially, do you want the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared
(unchecked).
Select the check box.
Notes:
When you test this portion of the system, clear the check box.
L. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
M. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller over an EtherNet/IP Network 5-9
Add the Other Controller
−
I/O Configuration
−
[x] 1756-ENBx local_ENB/ENET
[x] 1756-ENBx remote_ENB/ENET
A. Right-click remote_ENB/ENET and select New Module.
B. Select the type of controller and choose OK.
C. Type the name of the controller.
D. Type or select the slot number of the controller:
E. Click Next.
42377
Publication 1756-UM001D-EN-P - November 2001
5-10 Communicate with Another Controller over an EtherNet/IP Network
F. Initially, do you want the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared (unchecked).
Select the check box.
42398
EXAMPLE
Inhibit a module
To make it easier to test a system one module or section at a time:
1. Initially, inhibit all the modules.
2. To test a section of the system, clear the check boxes for the modules of that section
(i.e., uninhibit the modules).
G. If communication fails, how do you want the controller to respond?
ATTENTION
!
If communication with a modules fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
H. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
Consume a Tag
Communicate with Another Controller over an EtherNet/IP Network 5-11
In RSLogix 5000 software:
A. From the Logic menu, select Edit Tags.
B. From Scope, select name_of_controller (controller). (Only tags that are controller scope can consume other tags.)
C. Select the tag in this controller that will consume the produced tag and press the ALT + Enter keys.
D. Select the Consumed option button.
E. Select the controller that contains the produced tag.
F. Type the name of the produced tag.
G. Select the same data type as the produced tag.
H. Type or select the time between updates of the tag. Use the highest value permissible for your application.
I. Choose OK.
42353
Publication 1756-UM001D-EN-P - November 2001
5-12 Communicate with Another Controller over an EtherNet/IP Network
Validate Connections Is this task, you verify that the controller can communicate with the devices that you have just configured.
Step:
A. Determine if communications are established.
B. Identify a fault. Start at the local communication module and work down through the tree.
C. Identify the fault code.
Detailed actions:
Is a
!
over the I/O Configuration folder?
If:
No
Yes
Then:
The controller can communicate with the module.
Communications are not established. Go to the next step.
1.
2.
−
−
!
I/O Configuration
3.
−
!
[x] 1756-YYY/x local_com_module
!
z 17xx-YYY adapter_1
!
[0] 17xx-YYY module_1
!
[1] 17xx-YYY module_2
1. Right-click the module and select Properties .
2. Click the Connection tab.
3.
3. Identify the code for the fault.
42437
Publication 1756-UM001D-EN-P - November 2001
Step:
D. Clear the fault.
Communicate with Another Controller over an EtherNet/IP Network 5-13
Detailed actions:
1. From the Help menu, select Contents .
2. Click the Index tab.
3. Type module faults .
4.
4. Select the range for the code and click Display .
5. Scroll down to your fault code and follow the recommendations.
42439
E. Go to step A.
Does Another Controller
Require the Data?
Multiple controllers can consume a produced tag:
If: no other controller requires the data
Then: another controller requires the same data
Go to Add the Local 1756-ENBx or -ENET
You are done. Skip the rest of this procedure.
Publication 1756-UM001D-EN-P - November 2001
5-14 Communicate with Another Controller over an EtherNet/IP Network
Add the Local 1756-ENBx or
-ENET Module
A. Open the RSLogix 5000
project for the ControlLogix controller that sends the message.
42376
B. Is the local ENB or ENET module already in the I/O configuration of the controller?
If: yes no
Then:
Right-click I/O Configuration and select New Module .
C. Select your type of ENB or ENET module and choose OK.
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller over an EtherNet/IP Network 5-15
42579
D. Type a name for the module.
E. Type or select the slot number where the module is installed.
F. How closely must any module that is installed in this slot match the information on this tab?
If: Then select: all information must match:
• type
• catalog number
• vendor
• major and minor revision number
Exact Match all information except the minor revision number Compatible Module
Notes:
If you select Compatible Module , you can still replace a 1756-ENET/B module with a 1756-ENBT module. However, you cannot replace an ENBT module with an ENET/B module.
no information must match Disable Keying
G. Type the IP address or host name of the module:
To specify an:
IP address host name
Do this:
1. Select the IP Address button.
2. Type the IP address
Type the host name
Example:
130.151.136.164
aurora6
H. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
5-16 Communicate with Another Controller over an EtherNet/IP Network
Enter a Message e e e e e e condition ?
/ e e e e e condition ?
/
A. Enter a MSG instruction and associated input instruction (s).
Message
Message Control
MSG
? ...
EN
DN
ER
42424
B. In the MSG instruction, type a name for the message control tag and press the Enter key.
C. In the MSG instruction, right-click the message control tag and select New tag_name. (In older revisions of the software, the menu option is Create tag_name.
)
D. From the Scope list, select name_of_controller (controller), and click OK.
E.
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER
42424
E. Enter message.
EN.
where: message is the message control tag from step B.
F. If your message is to a PLC-5
®
or SLC 500
™
controller and it reads or writes integers (not REALs), use a buffer of INTs in the message.
•
ControlLogix controllers execute more efficiently and use less memory when working with 32-bit integers (DINTs). Use the
DINT data type for integers whenever possible.
•
PLC-5 and SLC 500 controllers require 16-bit integers.
•
Use an INT buffer in the message and move the data into or out of the buffer as required.
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller over an EtherNet/IP Network 5-17
The following examples show how to use a buffer of INTs
EXAMPLE condition
Read integers from a PLC-5 controller
When condition turns on, reads 16-bit integer values (INTs) and stores them in
int_buffer. Then the FAL instruction moves the values to dint_array. This converts the values to 32-bit integers (DINTs), for use by other instructions in the ControlLogix controller.
message.EN
/
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER message.DN
fal_control
RES
FAL
File Arith/Logical
Control
Length
Position
Mode
Dest fal_control
?
0 all dint_array[fal_control.pos]
Expression int_buffer[fal_control.pos]
EN
DN
ER
EXAMPLE e condition
Write integers to a PLC-5 controller
When condition turns on, moves the values in dint_array to int_buffer. This converts the values to 16-bit integers (INTs). Then the message instruction sends int_buffer to the other controller.
fal_control
RES
FAL
File Arith/Logical
Control
Length
Position
Mode
Dest
Expression fal_control
?
0 all int_buffer[fal_control.pos] dint_array[fal_control.pos]
EN
DN
ER fal_control.DN
message.EN
/
Where: dint_array int_buffer
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER
Is an: array of DINTs that are used in the ControlLogix controller array of INTs with the same number of elements as dint_array
42424
Publication 1756-UM001D-EN-P - November 2001
5-18 Communicate with Another Controller over an EtherNet/IP Network
Configure the Message
A. In the MSG instruction, click ... .
B. Select a configuration for the message:
Table 5.A Message to a ControlLogix controller
If you want to: read (receive) the data write (send) the data
For this item:
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Type or select:
CIP Data Table Read first element of the tag that contains data in the other controller number of elements to transfer first element of the tag (controller-scoped) in this controller for the data
CIP Data Table Write first element of the tag (controller-scoped) in this controller that contains the data number of elements to transfer first element of the tag for the data in the other controller
Table 5.B Message to a SLC 500 controller
If the data is: integer (s)
And you want to: read (receive) data floating-point (REAL) write (send) data read (receive) data
For this item:
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Message Type
Source Element
Number Of Elements
Destination Tag write (send) data Message Type
Source Tag
Number Of Elements
Destination Element
Type or select:
SLC Typed Read data table address in the SLC 500 controller (e.g., N7:10) number of integers to transfer first element of int_buffer
SLC Typed Write first element of int_buffer number of integers to transfer data table address in the SLC 500 controller (e.g., N7:10)
SLC Typed Read data table address in the SLC 500 controller (e.g., F8:0) number of values to transfer first element of the tag (controller-scoped) in this controller for the data
SLC Typed Write first element of the tag (controller-scoped) in this controller that contains the data number of values to transfer data table address in the SLC 500 controller (e.g., F8:0)
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller over an EtherNet/IP Network 5-19
Table 5.C Message to a PLC-5 controller
If the data is: integer (s)
And you want to: read (receive) data write (send) data floating-point (REAL) read (receive) data write (send) data
For this item:
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Type or select:
PLC5 Typed Read data table address in the PLC-5 controller (e.g., N7:10) number of integers to transfer first element of int_buffer
PLC5 Typed Write first element of int_buffer number of integers to transfer data table address in the PLC-5 controller (e.g., N7:10)
PLC5 Typed Read data table address in the PLC-5 controller (e.g., F8:0) number of values to transfer first element of the tag (controller-scoped) in this controller for the data
PLC5 Typed Write first element of the tag (controller-scoped) in this controller that contains the data number of values to transfer data table address in the PLC-5 controller (e.g., F8:0)
C. Click the Communication tab.
D. Click Browse …
E. Is the other controller in the I/O configuration?
If:
Yes
No
Then:
1. Select the other controller and choose OK .
Select the ENB or ENET module and choose OK .
F. In the Path text box, type a comma [ , ].
Publication 1756-UM001D-EN-P - November 2001
5-20 Communicate with Another Controller over an EtherNet/IP Network
G. Type the port number from which the message exits:
For this port: backplane port from a 1756 controller or module
DF1 port from a 1756-L1 controller
ControlNet port from a 1756-CNB module
EtherNet/IP port from a ENB or ENET module
DH+ port over channel A from a 1756-DHRIO module
DH+ port over channel B from a 1756-DHRIO module
Specify:
1
2
3
H. Type a comma [ , ].
I. Type the address of the next hardware device (e.g., controller, module):
For a device on a:
ControlLogix backplane
DF1 network
ControlNet network
DH+ network
EtherNet/IP network
Specify: slot number station address (0-254) node number (1-99 decimal)
8# followed by the node number (1-77 octal)
For example, to specify an octal node address of 37, type 8#37
IP address (four decimal numbers separated by periods) or host name
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller over an EtherNet/IP Network 5-21
J. Repeat steps F. through I. until you have specified the
destination controller.
The following examples depicts a communication path:
EXAMPLE
Communication path from a Logix5000 controller to a Logix5000 controller over an EtherNet/IP network
5
5
5
0
E
N
E
T
Ethernet network
Message
5
5
5
0
E
N
E
T
IP address
127.127.127.12
washer, 2, 127.127.127.12, 1, 0 where: washer
2
127.127.127.12
1
0 indicates: name of the ENB or ENET module
Ethernet port of the ENB or ENET module
IP address of the ENB or ENET module in the destination chassis backplane port of the ENB or ENET module in the destination chassis slot number of the destination controller
Publication 1756-UM001D-EN-P - November 2001
5-22 Communicate with Another Controller over an EtherNet/IP Network
If the message is to a:
PLC-5 controller
SLC 500 controller
Logix5000 controller:
•
ControlLogix controller
•
FlexLogix controller
K. Complete the communication parameters:
Then:
1. Leave the CIP button selected.
2. Disregard the Cache Connection check box.
How many Logix5000 controllers does this controller send messages to?
If: Then:
16 or less Logix5000 controllers more than 16
Logix5000 controllers
Leave the Cache Connection check box selected (checked).
1. Select16 Logix5000 controllers that require the most frequent messages.
2. Is this message to one of those controllers?
If:
Yes
No
Then
Leave the Cache Connection check box selected (checked).
Clear the Cache Connection check box.
Stagger the Messages
L. Click OK.
As you add messages to your project, you may have to coordinate the execution of the messages. To avoid errors and assure that each message is processed, follow these rules:
Rule 1: Enable no more than 16 messages at one time (including block transfers).
Rule 2: Enable no more than 10 of the following types of messages at one time:
•
CIP data table reads or writes that are not cached
•
CIP generic
•
PLC2, PLC3, PLC5, or SLC (all types)
• block transfer reads or writes that are not cached
If the number of messages in your application exceeds rules 1 and 2, then stagger the execution of your messages. Here are some options:
•
Send each message in sequence
•
Send the messages in groups that are within the limits of rules 1 and 2
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller over an EtherNet/IP Network 5-23
Access ControlLogix Data Complete this task for any message that a PLC-5 or SLC 5/05 controller sends to a ControlLogix controller over an EtherNet/IP network.
IMPORTANT This procedure uses RSLogix 5
™
or RSLogix 500
™ software, revision 3.x.
A. Using either RSLogix 5 or RSLogix 500 software, as required, open the project for the PLC-5 or SLC 5/05 controller.
B. If the message is from a SLC 5/05 controller, in the MSG instruction, select PLC5.
Read/Write Message
Type Peer-To-Peer
Read/Write Read
Target Device
Local/Remote
Control Block
Control Block Length
Setup Screen
PLC5
Local
N7:0
93
42474
If the controller is a:
PLC-5
For this section:
This PLC-5
SLC 500
Target Device
This Controller
Target Device
C. Display the set-up screen for the message.
D. Specify the following parameters:
And this item: Specify:
Communication Command
Data Table Address
Size in Elements
Port Number
Data Table Address
MultiHop
Communication Command
Data Table Address
Size in Elements
Channel
Data Table Address
MultiHop
PLC-5 Typed Read or PLC-5 Typed Write starting address of the data in the PLC-5 controller number of elements to read or write
2
Type, in quotation marks [“ “], the name of the tag in the
ControlLogix controller (e.g., “count”).
Select Yes .
PLC5 Read or PLC5 Write starting address of the data in the SLC 500 controller number of elements to read or write
1
Type, in quotation marks [“ “], the name of the tag in the
ControlLogix controller (e.g., “count”).
Select Yes .
Publication 1756-UM001D-EN-P - November 2001
5-24 Communicate with Another Controller over an EtherNet/IP Network
E. Click the MultiHop tab.
42425
F. Type the IP address of the ENB or ENET module that is in the same chassis as the ControlLogix controller.
G. Type the slot number of the ControlLogix controller.
Publication 1756-UM001D-EN-P - November 2001
1
When to Use This
Procedure
Chapter
6
Communicate with a PanelView
™
Terminal
Over a EtherNet/IP Network
Use this procedure to exchange data between a PanelView terminal and a ControlLogix controller over a EtherNet/IP network.
Before You Begin
42817 switch
Before you use this procedure, do the following:
1. To produce and consume tags over an EtherNet/IP network, you must use a 1756-ENBx or -ENET/B module. If you have a
1756-ENET/A module, determine if you can update the module:
For this 1756-ENET/A revision:
1.18 or later (latch of the RJ--45 connector points to the left) earlier than 1.18 (latch of the RJ--45 connector points to the right)
Then:
Update the firmware of module to revision 2.6 or later.
Contact your Rockwell Automation representative or local distributor.
Publication 1756-UM001D-EN-P - November 2001
6-2 Communicate with a PanelView
™
Terminal Over a EtherNet/IP Network
How to Use This Procedure If you have not already done so in a previous procedure, do the following preliminary task:
•
Add the Local 1756-ENBx or -ENET Module
To complete this procedure, do the following tasks:
•
•
•
Configure the PanelView Terminal
•
To check your work, do the following task:
•
Publication 1756-UM001D-EN-P - November 2001
Communicate with a PanelView
™
Terminal Over a EtherNet/IP Network 6-3
Add the Local 1756-ENBx or
-ENET Module
1. Open the RSLogix 5000
project offline.
42376
2. Is the local ENB or ENET module already in the I/O configuration of the controller?
If:
Yes
No
Then:
Go to Add the PanelView Terminal.
Right-click I/O Configuration and select New Module .
3. Select your type of ENB or ENET module and choose OK.
Publication 1756-UM001D-EN-P - November 2001
6-4 Communicate with a PanelView
™
Terminal Over a EtherNet/IP Network
4.
7.
5.
42579
6.
4. Type a name for the module.
5. Type or select the slot number where the module is installed.
6. How closely must any module that is installed in this slot match the information on this tab?
If: all information must match:
• type
• catalog number
• vendor
• major and minor revision number
Then select:
Exact Match all information except the minor revision number Compatible Module
Notes:
If you select Compatible Module , you can still replace a 1756-ENET/B module with a 1756-ENBT module. However, you cannot replace an ENBT module with an ENET/B module.
no information must match Disable Keying
7. Type the IP address or host name of the module:
To specify an:
IP address host name
Do this:
A. Select the IP Address button.
B. Type the IP address
Type the host name
Example:
130.151.136.164
aurora6
8. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
Add the PanelView
Terminal
Communicate with a PanelView
™
Terminal Over a EtherNet/IP Network 6-5
You can establish up to eight connections (instances) with each
PanelView terminal. For example, one controller can use all eight instances. Or eight controllers can each use one instance.
Each PanelView instance gives you:
•
100 DINTs of input data
•
100 DINTs of output data
For each instance, complete the following steps:
−
I/O Configuration
−
[x] 1756-ENBx local_ENB/ENET
1. Right-click local_ENB/ENET and select New Module.
2. Select ETHERNET-MODULE and choose OK.
3. Type a name for this PanelView instance.
4. Select Data - DINT.
5. Select the IP Address button and type the IP address of the
PanelView terminal.
42820
Publication 1756-UM001D-EN-P - November 2001
6-6 Communicate with a PanelView
™
Terminal Over a EtherNet/IP Network
42820
6. Type the assembly instance numbers for this PanelView instance
.
3
4
5
6
7
8
1
2
For this instance number:
11
13
15
17
19
21
7
9
Type this Input Assembly
Instance:
10
12
14
16
18
20
6
8
Type this Output Assembly
Instance:
1
1
1
1
1
1
1
1
Type this Configuration
Assembly Instance:
7. Type the following sizes for the input, output, and
configuration data:
For this size:
Input
Output
Configuration
Type:
100
100
1
8. Click Next.
Publication 1756-UM001D-EN-P - November 2001
Communicate with a PanelView
™
Terminal Over a EtherNet/IP Network 6-7
42401
9. Type the rate that you want time-critical data to transfer with the
PanelView terminal.
10. Initially, do you want the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared
(unchecked).
Select the check box.
Notes:
When you test this portion of the system, clear the check box.
11. If communication with the modules fails, how do you want the controller to respond?
Then: Notes: If you want the controller to: fault (major fault) continue operating
Select the check box.
Leave the check box cleared (unchecked).
Monitor the connection using ladder logic.
12. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
6-8 Communicate with a PanelView
™
Terminal Over a EtherNet/IP Network
Organize Your Data Organize your data for the PanelView based on how the data is used.
For data that is: time-critical (e.g., controls a machine)
Do this:
Use the I/O tags of the PanelView.
not time critical
The tags for this data were created when you added the PanelView to the I/O configuration
of the controller. They are similar to the tags of I/O modules. See Table 6.A.
Create arrays to store the data:
1. For each PanelView screen, create a BOOL array with enough elements for the bit-level objects on the screen.
For example, the BOOL[32] array gives you 32 bits for push buttons, indicators, etc.
2. For each PanelView screen, create a DINT array with enough elements for the word-level objects on the screen.
For example, the DINT[28] array, give you 28 values for numeric entry controls, numeric displays, etc.
To access the I/O tags of the PanelView, use the following address format:
Table 6.A Address format for the I/O tags of a PanelView
If the:
PanelView writes the data
PanelView reads the data
Then use this address: name_of_panelview:I.Data[x].y name_of_panelview:O.Data[x].y
Where: Is: name_of_panelview name of the PanelView instance in the I/O configuration of the controller x y element of the PanelView input (I) or output (O) structure.
bit number within the input or output element
Publication 1756-UM001D-EN-P - November 2001
Communicate with a PanelView
™
Terminal Over a EtherNet/IP Network 6-9
To address the PanelView data in your logic, you can have the following options:
• address the tags directly
• copy the tags to other tags in your project
• create alias tags
EXAMPLE
Address PanelView data
This rung uses these I/O tags of the PanelView: pv_a:I.Data[2].0 and pv_a:I.Data[2].1. The rung controls a motor.
When a push button on the PanelView is pressed, this rung clears a value. The push button uses bit 4 of the screen_a_bit array.
This rung moves counter.ACC (a DINT value) to element 5 of the screen_a_DINT array. A numeric display on the PanelView shows the value.
alarm_ack and alarm are aliases for the I/O tags of the PanelView.
42857
Publication 1756-UM001D-EN-P - November 2001
6-10 Communicate with a PanelView
™
Terminal Over a EtherNet/IP Network
Configure the PanelView
Terminal
1. Start PanelBuilder32 software.
2. Open an existing PanelBuilder application or create a new application.
3. From the Application menu, select Settings.
4. Click the Comms Setup button.
42818
5. Click the Ethernet Config button.
42819
6. Clear (uncheck) the DHCP Enable check box.
7. Type the IP address of the PanelView terminal.
8. Type the subnet mask for the PanelView terminal, if necessary.
9. Type the gateway address for the PanelView terminal, if necessary.
10. Choose OK.
Publication 1756-UM001D-EN-P - November 2001
Communicate with a PanelView
™
Terminal Over a EtherNet/IP Network 6-11
11. Under Node Name, right-click End of Node List and select Insert
Node.
42818
12. Select ControlLogix5000.
42818
13. Type a name for the ControlLogix controller.
14. Type the IP address of the ENB or ENET module that is in the chassis with the controller.
15. Type the path to the ControlLogix controller. Use the following format: space
1 controller_slot where: controller_slot is the slot number of the ControlLogix controller.
16. Click OK.
17. Click OK.
Publication 1756-UM001D-EN-P - November 2001
6-12 Communicate with a PanelView
™
Terminal Over a EtherNet/IP Network
Create PanelView Tags 1. On the PanelView screen, create the required object.
2. Double-click the object.
3. Click the Edit Tag button.
Publication 1756-UM001D-EN-P - November 2001
42856
4. Type a name for the object
5. In the ControlLogix controller, is the address of this tag a bit
(BOOL) within an array of BOOLs
?
If:
Yes
No
Then select: bit data type that matches the data type of the tag in the ControlLogix controller
6. Is this data time-critical (e.g., turn a machine on or off)?
If:
No
Yes
Then select:
A. Network Address
B. From the Node Name list, select the controller.
Assembly Object
Communicate with a PanelView
™
Terminal Over a EtherNet/IP Network 6-13
7. Specify the name of the tag in the ControlLogix controller:
Specify: If the message type is:
Network Address
Assembly Object
And its data type is: bit
And the:
DINT
PanelView writes the data
PanelView reads the data
PanelView writes the data
PanelView reads the data array_name[element]
AI x:y/z
AO x:y/z
AI x:y
AO x:y y z
Where: array_name element x instance number of this connection with the controller
If the input assembly instance is:
7
9
11
Is: name of the array in the controller element number within the array
And the output assembly instance is:
6
8
10
13
15
17
12
14
16
19
21
18
20 element of the PanelView input or output structure in the controller
7
8 bit number within the input or output element
4
5
6
1
2
3
Then the instance number is:
EXAMPLE
Specify the address of a tag in the ControlLogix controller
ControlLogix Controller: name_of_panelview:I.Data[0].1
name_of_panelview:O.Data[3] screen_a[5]
PanelView Application:
AI1:0/1
AO1:3 screen_a[5]
8. Click OK.
9. Click OK.
Publication 1756-UM001D-EN-P - November 2001
6-14 Communicate with a PanelView
™
Terminal Over a EtherNet/IP Network
Validate Connections Is this task, you verify that the controller can communicate with the devices that you have just configured.
Step:
A. Determine if communications are established.
B. Identify a fault. Start at the local communication module and work down through the tree.
C. Identify the fault code.
Detailed actions:
Is a
!
over the I/O Configuration folder?
If:
No
Yes
Then:
The controller can communicate with the module.
Communications are not established. Go to the next step.
1.
2.
−
−
!
I/O Configuration
3.
−
!
[x] 1756-YYY/x local_com_module
!
z 17xx-YYY adapter_1
!
[0] 17xx-YYY module_1
!
[1] 17xx-YYY module_2
1. Right-click the module and select Properties .
2. Click the Connection tab.
3.
3. Identify the code for the fault.
42437
Publication 1756-UM001D-EN-P - November 2001
Step:
D. Clear the fault.
Communicate with a PanelView
™
Terminal Over a EtherNet/IP Network 6-15
Detailed actions:
1. From the Help menu, select Contents .
2. Click the Index tab.
3. Type module faults .
E. Go to step A.
4.
4. Select the range for the code and click Display .
5. Scroll down to your fault code and follow the recommendations.
42439
Publication 1756-UM001D-EN-P - November 2001
6-16 Communicate with a PanelView
™
Terminal Over a EtherNet/IP Network
Notes:
Publication 1756-UM001D-EN-P - November 2001
1
Chapter
7
Communicate with an RSView Project over an
EtherNet/IP Network
When to Use This
Procedure
Use this procedure to communicate with tags in either of the following types of RSView projects:
•
RSView32 project.
•
RSView Machine Edition project (developed with RSView Studio software)
RSView32 or RSView
ControlLogix Chassis with 1756-ENBx or
-ENET Module
42473 switch
How to Use This Procedure
IMPORTANT
Before you use this procedure, configure the
1756-ENBx or -ENET module that is in the chassis
with the controller. Refer to "Configure an
EtherNet/IP Module" on page 1-1.
To communicate with an RSView project, you have two options:
If the data: needs regular delivery at a rate that you specify is sent when a specific condition occurs in your application
Then use a: polled message unsolicited message
Publication 1756-UM001D-EN-P - November 2001
7-2 Communicate with an RSView Project over an EtherNet/IP Network
Configure an Ethernet
Driver
In this task, you configure an RSLinx driver to communicate with devices on an EtherNet/IP network. You can configure the driver to communicate with up to 63 devices on this network, such as
1756-ENET modules or PLC-5E controllers.
A. Go to RSLinx software.
B. From the Communications menu, choose Configure Drivers.
C. From the Available Driver Types list, choose Ethernet devices.
D. Choose Add New.
E. If you want assign a descriptive name to the driver, change the default name.
F. Choose OK.
G.
H.
Publication 1756-UM001D-EN-P - November 2001
42585
G. In the Host Name column, type the IP address or host name of an EtherNet/IP device with which you want to communicate.
Examples:
• aurora6
•
130.151.136.164
H. Do you want to communicate with another EtherNet/IP device on this network?
If:
Yes
No
I. Choose OK.
J. Choose Close.
Then:
1. Choose Add New .
2. Go to Step G.
Go to the next step.
Communicate with an RSView Project over an EtherNet/IP Network 7-3
Select a Communication
Method
Select a method for transferring the data:
If the data: needs regular delivery at a rate that you specify is sent when a specific condition occurs in your application
Then go to:
"Create a Polled Topic" on page 7-4
"Create a Unsolicited Topic" on page 7-14
Publication 1756-UM001D-EN-P - November 2001
7-4 Communicate with an RSView Project over an EtherNet/IP Network
Create a Polled Topic
TIP
RSLogix 5000 software, revision 10.0 or later, automatically creates DDE/OPC topics in RSLinx software whenever you:
• create a project
• save a project
• change the revision of a project to 10.0 or later
In some cases, you have to update the data source for the topic in RSLinx software, as shown in
A. Display RSLinx software.
B. From the DDE/OPC menu, select Topic Configuration …
C. In the bottom left corner of the window, click New.
D. Type a name for the topic and press the Enter key.
To expand a network one level, do one of the following:
•
Double-click the network.
•
Select the network and press the
→
key.
•
Click the + sign.
Data Source
−
Workstation
+
AB_ETH-x, Ethernet
E. On the Data Source tab, expand the AB_ETH-x driver until you see the ControlLogix controller.
Data Source
−
Workstation
−
AB_ETH-x, Ethernet
− xxx.xxx.xxx.xxx, 1756-ENBx
−
Backplane, 1756-Ax
+ xx, 1756-Lx
F. Select the ControlLogix controller.
G. Choose Apply and confirm the update.
H. Click the Data Collection tab.
Publication 1756-UM001D-EN-P - November 2001
J. Click the Use
Symbols check box.
43083
Communicate with an RSView Project over an EtherNet/IP Network 7-5
42429
I. Type the update rate (ms) for the data.
K. Select RSLogix 5000 (*acd).
L. Select the RSLogix 5000 project for this topic.
M. Choose Open.
N. Choose Done and then Yes.
43083
Publication 1756-UM001D-EN-P - November 2001
7-6 Communicate with an RSView Project over an EtherNet/IP Network
Create a Polled Node A. Open the RSView project.
43081
B. Double-click Node.
C. Click OPC Server.
D. Type a name for the node.
G. Click Accept.
H. Click Close.
Publication 1756-UM001D-EN-P - November 2001
43082
42430
Import Logix5000 Tags
Communicate with an RSView Project over an EtherNet/IP Network 7-7
To import tags from an RSLogix 5000 project into your RSView project, use the Logix 5000 Tag Import utility:
•
•
Install the Logix 5000 Tag Import Utility
•
Use the Utility to Create a .CSV File
•
Create an .L5K File
A. Open the RSLogix 5000 project that contains the tags that you want to access.
B. From the File menu, choose Save As.
C. Select RSLogix 5000 Import/Export File (*.L5K).
D. Choose Save.
43070
Publication 1756-UM001D-EN-P - November 2001
7-8 Communicate with an RSView Project over an EtherNet/IP Network
Install the Logix 5000 Tag Import Utility
A. Get your RSLogix 5000 software CD.
B. On the CD, find the following file: language \Tools\Tag Import
Utility\Logix+5000+Tag+Import.msi.
where: language is the language of your software. For example, for software that is in English, open the Enu folder.
C. Copy the file to your computer.
D. To install the utility, open the file.
Use the Utility to Create a .CSV File
A. Start the Logix 5000 Tag Import utility.
Publication 1756-UM001D-EN-P - November 2001
B. Type the name of the node from "Create a Polled Node."
C. Select the .L5K file.
D. Choose Search.
43071
Communicate with an RSView Project over an EtherNet/IP Network 7-9
E. Select the tags to import.
F. Type the name of the topic from "Create a Polled Topic."
G. Choose OK.
H. Choose Save.
Publication 1756-UM001D-EN-P - November 2001
7-10 Communicate with an RSView Project over an EtherNet/IP Network
Import the .CSV File
A. Start the Database Import & Export wizard:
•
Start
⇒
Programs
⇒
Rockwell Software
⇒
RSView Studio
Tools
⇒
Database Import & Export Wizard
•
Start
⇒
Programs
⇒
Rockwell Software
⇒
RSView32 Tools
⇒
Database Import & Export Wizard
B. Complete the screens of the wizard:
Import RSView CSV files or
Import RSView Studio CSV files
Next >
CSV file
Next > your option
Next >
Publication 1756-UM001D-EN-P - November 2001
Communicate with an RSView Project over an EtherNet/IP Network 7-11
RSView project
Next >
Finish
All correct?
Correct?
OK
43072
Publication 1756-UM001D-EN-P - November 2001
7-12 Communicate with an RSView Project over an EtherNet/IP Network
Create a Polled Tag To create RSView tags one tag at a time:
43081
A. Double-click Tag Database.
B. Click New.
43082
C. Specify the properties of the tag.
42431
Publication 1756-UM001D-EN-P - November 2001
42432
D. Click Device.
F. Select the name of the node that you created in “Create a Polled
Communicate with an RSView Project over an EtherNet/IP Network 7-13
+
(Node: <Local> )
H. Click the + sign.
−
(Node: <Local> )
+
+ topic_1 topic_2
I. Next to the topic from “Create a Polled Topic,” click the + sign.
tags in the offline RSLogix 5000 project tags in the ControlLogix controller
−
(Node: <Local> )
+
− topic_1 topic_2
+
+
Offline
Online
J. Next to Offline, click the + sign.
controller scope tags
−
(Node: <Local> )
+
− topic_1 topic_2
−
Offline arrays and structures at the controller scope array_1 counter_1 program scope tags
+
Program:MainProgram
+
Online
K. On the left, select the entry that contains the required tag
(address).
Publication 1756-UM001D-EN-P - November 2001
7-14 Communicate with an RSView Project over an EtherNet/IP Network
controller scope tags
−
(Node: <Local> )
+
− topic_1 topic_2
−
Offline arrays and structures at the controller scope array_1 counter_1 program scope tags
+
Program:MainProgram
+
Online bool_1 dint_1 real_1 single element tags
(BOOLs,
DINTs,
REALs, etc.)
L. On the right, double-click the tag that contains the required data
(i.e., the address for the RSView tag).
M. Click Accept.
N. If this is an RSView32 project, go to Validate an RSView32 Tag.
Create a Unsolicited Topic A. Display RSLinx software.
B. From the Communications menu, select Configure Client
Applications.
C. Click the Virtual Link ID tab.
D. Do you want to use the same Virtual Link ID for each workstation in your system? (Node or IP addresses are sufficient to distinguish between workstations.)
If:
Yes
No
Then:
1. Record the Virtual Link ID number, which you will use in subsequent steps.
2. Click OK .
1. Enter a unique Virtual Link ID for the workstation.
2. Click OK .
3. Close the RSLinx software. (If you configured RSLinx software to start as a service, you must also stop the service.)
4. Re-open the RSLinx software.
E. From the DDE/OPC menu, select Topic Configuration …
F. In the bottom left corner of the window, click New.
G. Type a name for the topic and press the Enter key.
Publication 1756-UM001D-EN-P - November 2001
Communicate with an RSView Project over an EtherNet/IP Network 7-15
H. Click the Data Collection tab.
I. Specify the following parameters:
For this item:
Processor Type
Data Collection Mode
Do this:
Select PLC-5 .
1. Clear the Polled Messages check box.
2. Select the Unsolicited Messages check box.
J. Click the Advanced Communication tab.
K. Specify the following parameters:
For this item:
Communication Driver
Station
Local or Remote Addressing
Type or select: driver for the network across which you will send the message slot number of the controller that is sending the message
Remote
L. In the Remote Routing Configuration dialog box, specify the following parameters:
For this parameter:
Bridge Device
Local ID
Local KA5
Remote ID
Type or select:
1785-KA5 Bridge/5130-KA
arbitrary number between 1 and 107 (RSLinx requires an entry but this configuration does not use the entry.) number that designates the backplane of the
ControlLogix chassis (Use a different number for each backplane.)
M. Click OK.
N. Click Done and confirm the update of the topic.
Publication 1756-UM001D-EN-P - November 2001
7-16 Communicate with an RSView Project over an EtherNet/IP Network
Add the 1756-ENBx or
-ENET Module
A. Open the RSLogix 5000
project offline.
42376
B. Is the local ENB or ENET module already in the I/O configuration of the controller?
If: yes no
Then:
Go to Enter a Message
Right-click I/O Configuration and select New Module .
C. Select your type of ENB or ENET module and choose OK.
Publication 1756-UM001D-EN-P - November 2001
Communicate with an RSView Project over an EtherNet/IP Network 7-17
D.
G.
E.
42579
F.
D. Type a name for the module.
E. Type or select the slot number where the module is installed.
F. How closely must any module that is installed in this slot match the information on this tab?
If: Then select: all information must match:
• type
• catalog number
• vendor
• major and minor revision number
Exact Match all information except the minor revision number Compatible Module
Notes:
If you select Compatible Module , you can still replace a 1756-ENET/B module with a 1756-ENBT module. However, you cannot replace an ENBT module with an ENET/B module.
no information must match Disable Keying
G. Type the IP address or host name of the module:
To specify an:
IP address host name
Do this:
1. Select the IP Address button.
2. Type the IP address
Type the host name
Example:
130.151.136.164
aurora6
H. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
7-18 Communicate with an RSView Project over an EtherNet/IP Network
Enter a Message e e e e e e condition ?
/ e e e e e condition ?
/
A. Enter a MSG instruction and associated input instruction (s).
Message
Message Control
MSG
? ...
EN
DN
ER
42424
B. In the MSG instruction, type a name for the message control tag and press the Enter key.
C. In the MSG instruction, right-click the message control tag and select New tag_name. (In older revisions of the software, the menu option is Create tag_name.
)
D. From the Scope list, select name_of_controller (controller), and click OK.
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER
42424
E. Enter message.
EN.
where: message
is the message control tag from step B.
F. If your message reads or writes integers (not REALs), use a buffer of INTs in the message.
•
ControlLogix controllers execute more efficiently and use less memory when working with 32-bit integers (DINTs). Use the
DINT data type for integers whenever possible.
•
In this procedure, you use a PLC-5 Typed Read or PLC-5
Typed Write message, which requires 16-bit integers.
•
Use an INT buffer in the message and move the data into or out of the buffer as required.
Publication 1756-UM001D-EN-P - November 2001
Communicate with an RSView Project over an EtherNet/IP Network 7-19
The following examples show how to use a buffer of INTs
EXAMPLE condition
Read integers from an RSView project
When condition turns on, reads 16-bit integer values (INTs) and stores them in
int_buffer. Then the FAL instruction moves the values to dint_array. This converts the values to 32-bit integers (DINTs), for use by other instructions in the ControlLogix controller.
message.EN
/
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER message.DN
fal_control
RES
FAL
File Arith/Logical
Control
Length
Position
Mode
Dest fal_control
?
0 all dint_array[fal_control.pos]
Expression int_buffer[fal_control.pos]
EN
DN
ER
EXAMPLE e condition
Write integers to an RSView project
When condition turns on, moves the values in dint_array to int_buffer. This converts the values to 16-bit integers (INTs). Then the message instruction sends int_buffer to the
RSView project.
fal_control
RES
FAL
File Arith/Logical
Control
Length
Position
Mode
Dest
Expression fal_control
?
0 all int_buffer[fal_control.pos] dint_array[fal_control.pos]
EN
DN
ER fal_control.DN
message.EN
/
Where: dint_array int_buffer
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER
Is an: array of DINTs that are used in the ControlLogix controller array of INTs with the same number of elements as dint_array
42424
Publication 1756-UM001D-EN-P - November 2001
7-20 Communicate with an RSView Project over an EtherNet/IP Network
Configure the Message
A. In the MSG instruction, click ... .
B. On the Configuration tab, specify the following parameters:
Table 7.1 Message to a RSView project
If the data is: integer (s)
And you want to: read (receive) data floating-point (REAL) write (send) data read (receive) data write (send) data
For this item:
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Type or select:
PLC5 Typed Read logical address, such as N7:0 number of integers to transfer first element of int_buffer
PLC5 Typed Write first element of int_buffer number of integers to transfer logical address, such as N7:0
PLC5 Typed Read logical address, such as F8:0 number of values to transfer first element of the tag (controller-scoped) in this controller for the data
PLC5 Typed Write first element of the tag (controller-scoped) in this controller that contains the data number of values to transfer logical address, such as F8:0
C. Click the Communication tab.
D. Click Browse …
E. Select the ENB or ENET and click OK.
F. In the Path text box, add:
, 2, address where: address is the IP address or DNS name of the workstation.
EXAMPLE
Complete path entry washer_chassis, 2, 130.130.128.4
Publication 1756-UM001D-EN-P - November 2001
Communicate with an RSView Project over an EtherNet/IP Network 7-21
G. On the Communication tab, specify the following parameters:
For this item:
Communication Method
Source Link
Destination Link
Destination Node
Type or select:
CIP With Source ID
Remote ID from “Create a Unsolicited Topic,
Virtual Link ID from “Create a Unsolicited Topic, step D.”
77 (RSLinx reserves node 77 for DDE topics.)
H. Click OK.
Publication 1756-UM001D-EN-P - November 2001
7-22 Communicate with an RSView Project over an EtherNet/IP Network
Create an Unsolicited Node A. Open the RSView project.
43081
B. Double-click Node.
43082
42430
C. Click OPC Server.
D. Type a name for the node.
G. In the Access Path box, type the name of the topic from “Create a Unsolicited Topic.”
H. Click Accept.
I. Click Close.
Publication 1756-UM001D-EN-P - November 2001
Communicate with an RSView Project over an EtherNet/IP Network 7-23
Create an Unsolicited Tag
43081
A. Double-click Tag Database.
B. Click New.
43082
42431
C. Specify the properties of the tag.
D. Click Device.
F. Select the name of the node that you created in “Create an
Unsolicited Node” and click OK.
42432
Publication 1756-UM001D-EN-P - November 2001
7-24 Communicate with an RSView Project over an EtherNet/IP Network
G. Type the address for the tag:
If the controller: writes the value reads the value
Then type the: destination address that you specified in the MSG instruction source address that you specified in the MSG instruction
H. Click Accept.
Validate an RSView32 Tag This procedure applies only to RSView32 projects.
A. On the Edit Mode tab, double-click Tag Monitor.
Tag Name Value State
B. Type the name of the RSView tag and press the Enter key.
Tag Name tag_name
Value State
C. What does the State column display?
If: valid error
Then:
The tag contains a valid value from the controller.
There is a communication problem, such as the:
• controller is not available
• server is not running
If a MSG instruction reads or writes the value, you will see error until the controller sends the message for the first time.
Publication 1756-UM001D-EN-P - November 2001
1
Chapter
8
Communicate with 1756 I/O over a
ControlNet™ Network
When to Use This
Procedure
Use this procedure to monitor and control devices that are wired to
1756 I/O modules:
• local modules
• remote modules where 1756-CNB modules connect the local and remote chassis over a ControlNet network.
Controller Local I/O Remote I/O
ControlNet Network
ControlLogix Chassis with 1756-CNB
Modules
42045
How to Use This Procedure To complete this procedure, do the following steps:
IMPORTANT
If the all the I/O modules are in the same chassis as
the controller (no remote I/O), go to Add I/O
•
•
Add the Remote 1756-CNB Module
•
•
•
Schedule the ControlNet Network
•
Publication 1756-UM001D-EN-P - November 2001
8-2 Communicate with 1756 I/O over a ControlNet™ Network
Add the Local 1756-CNB
Module
A. Open the RSLogix 5000
™
project offline.
D.
42376
B. Right-click I/O Configuration and select New Module.
C. Select your type of CNB and click OK.
E.
F.
D. Type a name for the module (i.e., name_of_local_cnb ).
E. Type or select the slot number where the module is installed
F. How closely must any module in this slot match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
G. Click Next.
42377
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1756 I/O over a ControlNet™ Network 8-3
H.
I.
42398
H. Initially, do you want to the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared (unchecked).
Select the check box.
EXAMPLE
Inhibit a module
Use the Inhibit Module check box to make it easier to test a system:
•
Initially, inhibit the module.
•
When you are ready to test the devices that are associated with the module, clear the check box.
I. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
J. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
8-4 Communicate with 1756 I/O over a ControlNet™ Network
Add the Remote 1756-CNB
Module
C.
F.
42399
A. Right-click name_of_local_cnb and select New Module.
B. Select the type of CNB that is in the remote chassis and click OK.
H.
42404
C. Type a name for the CNB module. Use a name that identifies the
I/O in the chassis.
D. Type or select the ControlNet node number of the module.
E. Type or select the number of slots in the remote chassis.
F. Are most of the modules in the chassis non-diagnostic, digital
I/O modules?
If:
Yes
No
Then select
Rack Optimization
None
G. Type or select the slot number where the module is installed
H. How closely must any module in this slot match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
I. Click Next.
D.
E.
G.
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1756 I/O over a ControlNet™ Network 8-5
J.
K.
L.
J. In step
F.
, which Comm Format did you select?
If:
Rack Optimization
None
Then:
Type the rate at which the fastest device in the chassis must update.
•
Use a power of two times the ControlNet NUT.
•
For example, if the NUT is 5 ms, type a rate of 5,
10, 20 ms, etc.
No RPI is required. Go to the next step.
42401
K. Initially, do you want the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared
(unchecked).
Select the check box.
Notes:
When you test this portion of the system, clear the check box.
L. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
M. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
8-6 Communicate with 1756 I/O over a ControlNet™ Network
Add I/O Modules
If: no yes
And it is an: output module input module
In this task, you add I/O modules to the I/O configuration of the controller.
A. Is the module in the I/O configuration of another controller?
And you want to: Then:
Go to the next step.
Go to the next step.
maintain communication with the module if it loses communication with the other controller
1. Copy the module from the I/O configuration of the other controller.
2. Paste the module into the I/O configuration of this controller.
Go to the next step.
stop communication with the module if it loses communication with the other controller
−
I/O Configuration
−
[x] 1756-CNB/x name_of_local_CNB
Add a local I/O module here.
z [x] 1756-CNB/x name_of_remote_CNB Add a remote I/O module here.
B. Where is the module located?
If it is in: Then: same chassis as controller right-click I/O Configuration and select New
Module .
remote chassis right-click the remote 1756-CNB module and select
New Module .
C. Select the type of module and click OK.
D. Type a name for the module.
E. Type or select the slot number where the module is installed.
42420
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1756 I/O over a ControlNet™ Network 8-7
F. Select a Comm Format:
IMPORTANT
If the module is also in the I/O configuration of another controller, then select the Listen Only version of the Comm Format (e.g., Listen Only - Input Data).
If this module is a: diagnostic digital input
And: And you want to: Then select:
Full Diagnostics - Input Data non-diagnostic digital input diagnostic digital output fused digital output non-diagnostic and non-fused digital output non-isolated analog input isolated or temperature measuring analog input analog output local chassis remote chassis local chassis time stamp a change in data omit time stamps schedule when to apply outputs not schedule when to apply outputs schedule when to apply outputs not schedule when to apply outputs schedule when to apply outputs not schedule when to apply outputs remote chassis floating point mode provides sufficient sample time floating point mode does not provide sufficient sample time
25 ms sample time or greater is sufficient sample time must be less than
25 ms associated inputs are REALs associated inputs are INTs time stamp when the data is sampled omit the time stamp time stamp when the data is sampled omit the time stamp time stamp when the data is sampled omit the time stamp time stamp when the data is sampled omit the time stamp time stamp the data echo omit the time stamp time stamp the data echo omit the time stamp
CST Timestamped Input Data
Input Data
Rack Optimization
Full Diagnostics - Scheduled
Output Data
Full Diagnostics - Output Data
CST Timestamped Fuse Data -
Scheduled Output Data
CST Timestamped Fuse Data -
Output Data
Scheduled Output Data
Output Data
Rack Optimization
CST Timestamped Float Data - wiring_mode
Float Data - wiring_mode
CST Timestamped Integer Data - wiring_mode
Integer Data - wiring_mode
CST Timestamped Float Data
Float Data
CST Timestamped Integer Data
Integer Data
CST Timestamped Float Data
Float Data
CST Timestamped Integer Data
Integer Data
Publication 1756-UM001D-EN-P - November 2001
8-8 Communicate with 1756 I/O over a ControlNet™ Network
Publication 1756-UM001D-EN-P - November 2001
42420
G. How closely must any module in this slot match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
H. Click Next.
42401
I. In step
F.
, did you select Rack Optimization as the Comm
Format?
If:
No
Yes
Then:
Type the rate at which the fastest device that is wired to the module must update.
•
Use a power of two times the ControlNet NUT.
•
For example, if the NUT is 5 ms, type a rate of 5,
10, 20 ms, etc.
No RPI is required. Go to the next step.
Communicate with 1756 I/O over a ControlNet™ Network 8-9
J. Initially, do you want the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared
(unchecked).
Select the check box.
Notes:
When you test this portion of the system, clear the check box.
K. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
L. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
8-10 Communicate with 1756 I/O over a ControlNet™ Network
Create Aliases In this task, you convert tags in your programs to aliases for I/O points or channels (devices). As an alias for an I/O point or channel, each tag:
• provides a descriptive name for the device that is wired to the point or channel
• represents the value of the point or channel. When one changes, the other reflects the change.
EXAMPLE
Create aliases
The following logic was initially programmed using descriptive tag names, such as start and motor. Later, the tags were converted to aliases for the corresponding I/O devices.
start is an alias for the push button that is wired to point 1 of the module that is in slot 2 of the local chassis. When the push button is on, start is on.
motor is an alias for the starter contactor that is wired to point 0 of the module that is in slot 0 of a remote chassis (named conveyor).
When motor turns on, the starter contactor turns on.
stop
<Local:2:I.Data.0> start
<Local:2:I.Data.1> motor
<conveyor:0:O.Data.0>
A. From the Logic menu, select Edit Tags.
motor
<conveyor:0:O.Data.0>
42435
B.
42421
C.
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1756 I/O over a ControlNet™ Network 8-11
B. Select the scope of the descriptive tag.
C. To the right of the tag name, click the Alias For cell.
The cell displays a ▼
D. Click the ▼
E. Click the Controller Scoped Tags button, if it is available. (All the data for I/O modules is at the controller scope.)
F. Select the I/O device that the tag represents:
If the device is: digital analog
Then:
1. Next to name:slot:X, click the + sign.
2. Click the Data member.
3. To the right of the Data member, click ▼
4. Click the point number of the device.
1. Next to name:slot:X, click the + sign.
2. Scroll down and double-click Chz Data .
Where: name slot
X
Chz
Is: name of the chassis:
If: Then the name is: local remote
Local name of the communication module in the chassis, such as a 1756-ENBx or 1756-CNB module.
slot number of the module type of device:
If: Then: input output
I
O channel that the device is wired to
G. Press the Enter key or click another cell.
Publication 1756-UM001D-EN-P - November 2001
8-12 Communicate with 1756 I/O over a ControlNet™ Network
When you finish, the Tags window should look similar to the following:
Tag Name start
Alias For conveyor:1:I.Data.1(C)
Base Tag conveyor:1:I.Data.1(C) start is an alias for point 1 of the input module that is in slot 1 of a remote chassis (named conveyor).
TIP
Even if the I/O module uses the Rack Optimization Comm Format, address the required point as described in step F.
Tag Name start
Alias For conveyor:1:I.Data.1(C)
Base Tag conveyor:I.Slot[1].Data.1(C) start is an alias for point 1 of the input module that is in slot 1 of a remote chassis (named conveyor).
Because the module uses the Rack Optimization format, a structure associated with the communication module in the remote chassis actually transfers the data.
However, the ladder logic displays the address of the data within the structure for the communication module (e.g., ENB, CNB): start
<conveyor:I.Slot[1].Data.1>
42435
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1756 I/O over a ControlNet™ Network 8-13
Schedule the ControlNet
Network
If:
No
Yes
A. Download the RSLogix 5000 project to the controller.
B. Start RSNetworx
™
for ControlNet software.
C. Has this network been scheduled before?
Then:
1. From the File menu, select New .
2. From the Network menu, select Online .
3. Select your ControlNet network and choose OK .
4. Select the Edits Enabled check box.
5. From the Network menu, select Properties .
6. From the Network Parameters tab, type or select the following parameters:
In this box: Specify:
Network Update Time
Max Scheduled Address
Max Unscheduled Address
Media Redundancy repetitive time interval in which data is sent over the ControlNet network greatest node number to use scheduled communications on the network greatest node number that you will use on the network channels in use
Network Name name for the network
7. Click OK .
8. From the Network menu, select Single Pass Browse .
9. From the File menu, select Save .
10. Type a name for the file that stores the network configuration, then click Save .
11. Select the Optimize and re-write Schedule for all Connections button (default) and click OK .
12. In RSLogix 5000 software, save the online project.
1. From the File menu, select Open .
2. Select the file for the network and choose Open .
3. From the Network menu, select Online .
4. Select the Edits Enabled check box.
5. From the Network menu, select Properties .
6. From the Network Parameters tab, update the following parameters:
In this box:
Max Scheduled Address
Specify: greatest node number to use scheduled communications on the network
Max Unscheduled Address greatest node number that you will use on the network
7. Click OK .
8. From the Network menu, select Single Pass Browse .
9. From the File menu, select Save .
10. Select the Optimize and re-write Schedule for all Connections button (default) and click OK .
11. In RSLogix 5000 software, save the online project.
Publication 1756-UM001D-EN-P - November 2001
8-14 Communicate with 1756 I/O over a ControlNet™ Network
Validate Connections Is this task, you verify that the controller can communicate with the devices that you have just configured.
Step:
A. Determine if communications are established.
B. Identify a fault. Start at the local communication module and work down through the tree.
C. Identify the fault code.
Detailed actions:
Is a
!
over the I/O Configuration folder?
If:
No
Yes
Then:
The controller can communicate with the module.
Communications are not established. Go to the next step.
1.
2.
−
−
!
I/O Configuration
3.
−
!
[x] 1756-YYY/x local_com_module
!
z 17xx-YYY adapter_1
!
[0] 17xx-YYY module_1
!
[1] 17xx-YYY module_2
1. Right-click the module and select Properties .
2. Click the Connection tab.
3.
3. Identify the code for the fault.
42437
Publication 1756-UM001D-EN-P - November 2001
Step:
D. Clear the fault.
Communicate with 1756 I/O over a ControlNet™ Network 8-15
Detailed actions:
1. From the Help menu, select Contents .
2. Click the Index tab.
3. Type module faults .
E. Go to step A.
4.
4. Select the range for the code and click Display .
5. Scroll down to your fault code and follow the recommendations.
42439
Publication 1756-UM001D-EN-P - November 2001
8-16 Communicate with 1756 I/O over a ControlNet™ Network
Notes:
Publication 1756-UM001D-EN-P - November 2001
1
When to Use This
Procedure
Chapter
9
Communicate with 1771 I/O Over a
ControlNet
™
Network
Use this procedure to monitor and control I/O devices that are wired to 1771 I/O modules when a:
•
1756-CNB module connects the local chassis to a ControlNet network.
•
1771-ACN adapter connects the 1771 I/O modules to the same
ControlNet network.
ControlLogix Chassis with
1756-CNB Module
1771-ACN Adapter
42518
ControlNet Network
How to Use This Procedure
TIP
To create and manage tags as you program your logic, use these tips:
•
To create a tag:
1. Type the name for the tag.
2. Right-click the tag and choose New "tag_name".
•
To change the name of a tag:
Right-click the tag and choose Edit "tag_name"
Properties.
Publication 1756-UM001D-EN-P - November 2001
9-2 Communicate with 1771 I/O Over a ControlNet™ Network
If you have not already done so in a previous procedure, do the following preliminary task:
•
To complete this procedure, do the following tasks:
•
•
Communicate with Block Transfer Modules, using either of these procedures:
– Read or Write Data To or From a Block Transfer Module
– Read or Write Data To or From Multiple Block Transfer
•
•
Schedule the ControlNet Network
•
•
Publication 1756-UM001D-EN-P - November 2001
Add the Local 1756-CNB
Module
Communicate with 1771 I/O Over a ControlNet™ Network 9-3
A. Open the RSLogix 5000
™
project offline.
D.
42376
B. Right-click I/O Configuration and select New Module.
C. Select your type of CNB and click OK.
E.
F.
D. Type a name for the module (i.e., name_of_local_cnb ).
E. Type or select the slot number where the module is installed
F. How closely must any module in this slot match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
G. Click Next.
42377
Publication 1756-UM001D-EN-P - November 2001
9-4 Communicate with 1771 I/O Over a ControlNet™ Network
H.
I.
42398
H. Initially, do you want to the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared (unchecked).
Select the check box.
EXAMPLE
Inhibit a module
Use the Inhibit Module check box to make it easier to test a system:
•
Initially, inhibit the module.
•
When you are ready to test the devices that are associated with the module, clear the check box.
I. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
J. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1771 I/O Over a ControlNet™ Network 9-5
Add the 1771-ACN Module
C.
42399
A. Right-click name_of_local_cnb and select New Module.
B. Select the type of 1771-ACN that is in the remote chassis and click OK.
D.
E.
F.
42434
C. Type a name for the module. Use a name that identifies the I/O in the chassis.
D. Type or select the ControlNet node number of the module.
E. Specify the Input Size and Output Size:.
If the chassis uses: Then type or select:
2-slot addressing number of slots in the chassis / 2
Example:
For a 4-slot chassis, specify 2 for the input and output sizes.
1-slot addressing
1/2-slot addressing number of slots in the chassis For a 4-slot chassis, specify 4 for the input and output sizes.
number of slots in the chassis x 2 For a 4-slot chassis, specify 8 for the input and output sizes.
F. How closely must any module in this slot match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
G. Click Next.
Publication 1756-UM001D-EN-P - November 2001
9-6 Communicate with 1771 I/O Over a ControlNet™ Network
H.
I.
J.
No
42401
H. Type the rate at which the fastest device in the chassis must update.
•
Use a power of two times the ControlNet NUT.
•
For example, if the NUT is 5 ms, type a rate of 5, 10, 20 ms, etc.
I. Initially, do you want the module to communicate with the controller?
If:
Yes
Then:
Leave the check box cleared
(unchecked).
Select the check box.
Notes:
When you test this portion of the system, clear the check box.
J. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
K. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1771 I/O Over a ControlNet™ Network 9-7
Read or Write Data To or
From a Block Transfer
Module
Use this procedure to transfer data to or from a module that requires block transfers.
Block Transfer Read
Data from a
BT module
Word 1
Word 2
Word 3
Buffer of INTs int_buffer_read[0] int_buffer_read[1] int_buffer_read[2]
DINTs for use in the project dints_input[0] dints_input[1] dints_input[2]
1. The MSG instruction reads 16-bit integers (INTs) from the BT module and stores them in a temporary array of INTs.
2. An FAL instruction converts the INTs to 32-bit integers (DINTs).
Logix5000 controllers execute more efficiently and use less memory when working with DINTs.
Block Transfer Write
DINTs from the project dints_output[0] dints_output[1] dints_output[2]
Buffer of INTs int_buffer_write[0] int_buffer_write[1] int_buffer_write[2]
Data for a BT module
Word 1
Word 2
Word 3
1. An FAL instruction converts the 32-bit integers (DINTs) from the
Logix5000 controller to 16-bit integers (INTs):
•
Logix5000 controllers execute more efficiently and use less memory when working with DINTs.
•
The instruction stores the data in a temporary array of INTs.
2. The MSG instruction writes the INTs from the temporary array to
BT module.
Publication 1756-UM001D-EN-P - November 2001
9-8 Communicate with 1771 I/O Over a ControlNet™ Network
Read Data From a Block Transfer Module
1. Enter the following rung:
Reads 16-bit integers (INTs) from the module and stores them in int_buffer_read . (Only include the msg_write.EN
tag and associated instruction if you also send a block transfer write message to the same module.) msg_read.EN
/ msg_write.EN
/
MSG
Type - Block Transfer Read
Message Control msg_read ...
EN
DN
ER
42463
Tag Name: msg_read msg_write
Description: block transfer read message
Data Type:
MESSAGE block transfer write message to the same module MESSAGE
Scope: name_of_controller
(controller) name_of_controller
(controller)
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1771 I/O Over a ControlNet™ Network 9-9
2. Enter the following rung:
When msg_read is done, the FAL instruction moves the values in int_buffer_read to dints_input . This converts the values to 32-bit integers (DINTs), for use by other instructions in the controller.
msg_read.DN
ints_to_dints
RES
FAL
File Arith/Logical
Control
Length
Position
Mode
Dest
Expression ints_to_dints
0
ALL dints_input[ints_to_dints.POS] int_buffer_read[ints_to_dints.POS]
EN
DN
ER
42463
Tag Name: int_buffer_read ints_to_dints
FAL Length dint_inputs
Description: Data Type: array that stores the data from the BT module INT [ length ] converts the 16-bit integers from the BT module to 32-bit integers for the Logix5000 controller number of elements to convert
CONTROL immediate value equal to length array that stores the input data from the module for use by the controller
DINT [ length ]
Scope: name_of_controller
(controller) name_of_controller
(controller) name_of_controller
(controller)
Where: length
Is the: number of elements to transfer
Publication 1756-UM001D-EN-P - November 2001
9-10 Communicate with 1771 I/O Over a ControlNet™ Network
Write Configuration or Output Data To a Block Transfer Module
1. Enter the following rung:
The application writes configuration and output data to dints_output , which is an array of DINTs. Before the controller sends the data to the module, the FAL instruction moves the values to int_buffer_write . This converts them to 16-bit integers (INTs). (Only include the msg_read.EN
tag and associated instruction if you also send a block transfer read message to the same module.) msg_read.EN
/ msg_write.EN
/ dints_to_ints
RES
FAL
File Arith/Logical
Control
Length
Position
Mode dints_to_ints
0
ALL int_buffer_write[dints_to_ints.POS] Dest
Expression dints_output[dints_to_ints.POS]
EN
DN
ER
42463
Tag Name: msg_read msg_write
Description: block transfer read message to the same module block transfer write message
Data Type:
MESSAGE
MESSAGE dints_to_ints
FAL Length converts the 32-bit integers from the Logix5000 controller to 16-bit integers for the BT module number of elements to convert
CONTROL immediate value equal to length int_buffer_write array that stores the data to send to the BT module as 16-bit integers dints_output array that stores the output data that other instructions produce for the module
INT [ length ]
DINT [ length ]
Scope: name_of_controller
(controller) name_of_controller
(controller) name_of_controller
(controller) name_of_controller
(controller) name_of_controller
(controller)
Where: length
Is the: number of elements to transfer
2. Enter the following rung:
After the FAL instruction converts the DINTs to INTs, the MSG instruction sends the data in int_buffer_write to the module.
dints_to_ints.DN
MSG
Type - Block Transfer Write
Message Control msg_write ...
EN
DN
ER
42463
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1771 I/O Over a ControlNet™ Network 9-11
Configure the Messages
If you want to: read input data write configuration or output data
For this item:
Path
RIO or ControlNet
Slot
1. In the MSG instruction, click ... .
2. Select a configuration:
For this item:
Message Type
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Type or select:
Block Transfer Read number of INTs to read int_buffer_read [0]
Block Transfer Write int_buffer_write [0] number of INTs to write
3. Click the Communication tab.
Type or select:
Path to the 1771-ACN module:
A. Click Browse…
B. Select the 1771-ACN module that is in the chassis with the block transfer module.
C. Choose OK .
Although your logic will control the path, the Message Properties dialog box requires an initial selection.
ControlNet slot number of the BT module
Although your logic will control this value, the Message Properties dialog box requires an initial value (0 - 15).
4. How many devices require block transfer instructions?
If:
16 or less devices more than 16 devices
Then:
Leave the Cache Connection check box selected (checked).
A. Select 16 devices that require the most frequent updates.
B. Is this message to one of those devices?
If:
Yes
No
Then
Leave the Cache Connection check box selected (checked).
Clear the Cache Connection check box.
5. Choose OK.
Publication 1756-UM001D-EN-P - November 2001
9-12 Communicate with 1771 I/O Over a ControlNet™ Network
Read or Write Data To or
From Multiple Block
Transfer Modules
Input data from the first BT module
Input data from the next BT module
Data from a
BT module
Word 1
Word 2
Word 3
Word 1
Word 2
Word 3
Word 4
Word 5
Use this procedure to program a single MSG instruction to read data from multiple block transfer modules.
The following diagram shows the flow of data for a block transfer read. The block transfer write sequence works in the opposite order.
Buffer of INTs
BT_int_buffer_read[0]
BT_int_buffer_read[1]
BT_int_buffer_read[2]
BT_int_buffer_read[0]
BT_int_buffer_read[1]
BT_int_buffer_read[2]
BT_int_buffer_read[3]
BT_int_buffer_read[4]
DINTs for use in the project
BT_input[0,0]
BT_input[0,1]
BT_input[0,2]
BT_input[0,3]
BT_input[0,4]
BT_input[1,0]
BT_input[1,1]
BT_input[1,2]
BT_input[1,3]
BT_input[1,4]
Input data that is allocated for the first BT module
Input data that is allocated for the next BT module
1. The MSG instruction reads 16-bit integers (INTs) from the first
BT module and stores them in a temporary array of INTs.
2. An FAL instruction converts the INTs to 32-bit integers (DINTs).
Logix5000 controllers execute more efficiently and use less memory when working with DINTs.
3. The MSG instruction reads the next module. This procedures lets you vary the number of INTs that you read from each module.
4. The FAL instruction moves the data to the next element of dimension 0 of the DINT array. Each element of this dimension corresponds to a different BT module.
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1771 I/O Over a ControlNet™ Network 9-13
To read multiple block transfer modules:
•
Create a User-Defined Data Type
•
Create the Array for the Input Data
•
Send a Block Transfer Read Message
•
Enter the BTR Properties for Each Module
•
•
To write data to multiple block transfer modules, see the logic on
Create a User-Defined Data Type
Create the following data type. You will use this for the array that stores the message properties for each module.
+
+
+
−
Controller
Tasks
Motion Groups
Trends
Data Types
User-Defined 1. Right-click and select New
Data Type.
2. Assign the following:
Name
Description
Members
Name
REQ_LEN
+
Slot
Path
BT_CONFIGURATION
Configuration properties for a block transfer message to a specific module
Data Type
INT
SINT
STRING
Style
Decimal
Decimal
Description number of elements (INTs) to read or write slot number of the module path to the 1771-ACN module (Use the
Message Path editor to assign the path.)
Publication 1756-UM001D-EN-P - November 2001
9-14 Communicate with 1771 I/O Over a ControlNet™ Network
Create the Array for the Input Data
Enter the following rung:
The SIZE instruction determines the number of elements in the first dimension (Dim 0) of the BT_input array. Since this dimension contains one element for each BT module, this instruction determines how many modules the MSG instruction must read. A subsequent rung uses this number to determine the end of the sequence of MSGs.
Tag Name: Description:
BT_input data from each BT module
•
The first dimension represents each module.
•
The second dimension represents the data from a module.
BT_input_modules number of modules that the MSG instruction must read
Where: number length
43020
Data Type: Scope:
DINT [ number,length ] name_of_controller
(controller)
DINT name_of_controller
(controller)
Is the: number of modules that this message reads maximum number of elements in any of the block transfers
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1771 I/O Over a ControlNet™ Network 9-15
Send a Block Transfer Read Message
1. Enter the following rung:
The MSG instruction reads the input values from a BT module and stores the values in BTR_int_buffer_read
•
Each time the instruction is done, it automatically restarts and sends another message.
.
•
Prior to each message, the series of MOV and COPY instructions load the appropriate configuration properties into the MSG instruction so it can read the next BT module. The configuration properties load from the
•
After each MSG, a subsequent rung increments the
BTR_cfg array.
BTR_index tag. This loads the configuration properties for the next module into the MSG instruction before it executes again.
Tag Name:
BTR
BTR_cfg
BTR_index
Description: block transfer message that reads data from each BT module array of configuration properties for each BT module controls which BT module that the MSG instruction reads
Where: number
Data Type:
MESSAGE
BT_CONFIGURATION
[ number ]
DINT
43020
Scope: name_of_controller
(controller) name_of_controller
(controller) name_of_controller
(controller)
Is the: number of modules that this message reads
Publication 1756-UM001D-EN-P - November 2001
9-16 Communicate with 1771 I/O Over a ControlNet™ Network
2. Configure the message:
On this tab:
Configuration
Communication
For this item:
Message Type
Number Of Elements
Type or select:
Block Transfer Read
1
Although your logic will control this value, the Message Properties dialog box requires an initial value.
BTR_int_buffer_read Destination Tag
Path
To create this tag:
A. Click New Tag .
B. Type the name.
C. In the Data type box, type INT[ length ], where length equals the length variable of the BT_input
D. Choose OK .
Path to the 1771-ACN module:
A. Click Browse…
B. Select the 1771-ACN module with which you want to communicate.
C. Choose OK .
Although your logic will control the path the Message Properties dialog box requires an initial path.
slot number of the BT module Slot
Although your logic will control this value, the Message Properties dialog box requires an initial value.
Cache Connection check box Clear the Cache Connection check box..
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1771 I/O Over a ControlNet™ Network 9-17
Enter the BTR Properties for Each Module
Properties for the first
BT module
Properties for the next
BT module
42376
1. Double-click Controller Tags.
2. Enter the BTR properties for each BT module.
Tag Name Value
− BTR_cfg
− BTR_cfg[0]
+ BTR_cfg[0].REQ_LEN
number of elements to transfer
+ BTR_cfg[0].Slot
+ BTR_cfg[0].Path
( … )
( … ) slot number of the module (independent of chassis addressing) path to the 1771-ACN module:
A. Right-click and select Go to Message Path Editor .
B. Select the 1771-ACN module.
C. Choose OK .
+ BTR_cfg [1]
Publication 1756-UM001D-EN-P - November 2001
9-18 Communicate with 1771 I/O Over a ControlNet™ Network
Convert the INTs to DINTs
Enter the following rung:
After the MSG instruction reads data from a module ( BTR.DN
is on), this rung converts the INT values from the BT module to DINT values for use in the project:
•
The MOV instruction sets the length of the FAL instruction equal to the number of elements that the MSG reads.
•
The FAL instruction then loads the values from BTR_int_buffer_read into BT_input . This converts the values to
DINTs for use in the project.
•
BTR_index determines where in the first dimension of dimension corresponds to a specific BT module.
BT_input to store the values. Each element of this
Tag Name: Description:
BTR_ints_to_dints converts the 16-bit integers from the BT module to 32-bit integers for the Logix5000 project
Data Type:
CONTROL
43021
Scope: name_of_controller
(controller)
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1771 I/O Over a ControlNet™ Network 9-19
Step to the Next BT Module
1. Enter the following rung:
After the MSG instruction reads data from a module and the FAL converts it to DINTs ( BTR_ints_to_dints.DN
is on), the
ADD instruction increments the BTR_index . This lets the MSG instruction read the next module.
43021
2. Enter the following rung:
If the EQU instruction is true, the MSG instruction has read the last BT module. The CLR instruction resets BTR_index to zero. This lets the MSG instruction start the series of reads again, starting with the first module.
43021
Publication 1756-UM001D-EN-P - November 2001
9-20 Communicate with 1771 I/O Over a ControlNet™ Network
Write Data to Multiple Block Transfer Modules
43022
43022
43023
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1771 I/O Over a ControlNet™ Network 9-21
43023
43023
Publication 1756-UM001D-EN-P - November 2001
9-22 Communicate with 1771 I/O Over a ControlNet™ Network
Address I/O To monitor or control an I/O device, assign the tag name of the device to an instruction in your logic:
•
For step-by-step instructions on how to enter logic and tag names, see the Logix5000 Controllers Common Procedures, publication 1756-PM001.
•
All the data for I/O modules is at the controller scope. As you assign addresses, click the Controller Scoped Tags button to see the I/O tags.
•
Use the following table to select the address of an I/O device:
If the device is: digital analog
Then use this address: name:type.
Data [group].bit
element of the array that stores the data for or from this device
Where: name type group bit
Is: name of the remote I/O adapter, such as the 1771-ACN module
•
Use the name for the rack that contains the module to which this device is wired.
•
Use the name from the I/O configuration of the controller.
type of device:
If: input I
Then: output O group number of the module to which this device is wired point (bit) number to which this device is wired
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1771 I/O Over a ControlNet™ Network 9-23
EXAMPLE
Address a digital device that is wired to a 1771 I/O module
−
I/O Configuration
−
[5] 1756-CNB/D Local_CNB
−
4 17771-ACN Remote_1771 adapter module for rack number 4 input device group 2 bit 0
Remote_1771:I.Data[2].0
42435
Publication 1756-UM001D-EN-P - November 2001
9-24 Communicate with 1771 I/O Over a ControlNet™ Network
Schedule the ControlNet
Network
If:
No
Yes
A. Download the RSLogix 5000 project to the controller.
B. Start RSNetworx
™
for ControlNet software.
C. Has this network been scheduled before?
Then:
1. From the File menu, select New .
2. From the Network menu, select Online .
3. Select your ControlNet network and choose OK .
4. Select the Edits Enabled check box.
5. From the Network menu, select Properties .
6. From the Network Parameters tab, type or select the following parameters:
In this box: Specify:
Network Update Time
Max Scheduled Address
Max Unscheduled Address
Media Redundancy repetitive time interval in which data is sent over the ControlNet network greatest node number to use scheduled communications on the network greatest node number that you will use on the network channels in use
Network Name name for the network
7. Click OK .
8. From the Network menu, select Single Pass Browse .
9. From the File menu, select Save .
10. Type a name for the file that stores the network configuration, then click Save .
11. Select the Optimize and re-write Schedule for all Connections button (default) and click OK .
12. In RSLogix 5000 software, save the online project.
1. From the File menu, select Open .
2. Select the file for the network and choose Open .
3. From the Network menu, select Online .
4. Select the Edits Enabled check box.
5. From the Network menu, select Properties .
6. From the Network Parameters tab, update the following parameters:
In this box:
Max Scheduled Address
Specify: greatest node number to use scheduled communications on the network
Max Unscheduled Address greatest node number that you will use on the network
7. Click OK .
8. From the Network menu, select Single Pass Browse .
9. From the File menu, select Save .
10. Select the Optimize and re-write Schedule for all Connections button (default) and click OK .
11. In RSLogix 5000 software, save the online project.
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1771 I/O Over a ControlNet™ Network 9-25
Validate Connections Is this task, you verify that the controller can communicate with the devices that you have just configured.
Step:
A. Determine if communications are established.
B. Identify a fault. Start at the local communication module and work down through the tree.
C. Identify the fault code.
Detailed actions:
Is a
!
over the I/O Configuration folder?
If:
No
Yes
Then:
The controller can communicate with the module.
Communications are not established. Go to the next step.
1.
2.
−
−
!
I/O Configuration
3.
−
!
[x] 1756-YYY/x local_com_module
!
z 17xx-YYY adapter_1
!
[0] 17xx-YYY module_1
!
[1] 17xx-YYY module_2
1. Right-click the module and select Properties .
2. Click the Connection tab.
3.
3. Identify the code for the fault.
42437
Publication 1756-UM001D-EN-P - November 2001
9-26 Communicate with 1771 I/O Over a ControlNet™ Network
Step:
D. Clear the fault.
Detailed actions:
1. From the Help menu, select Contents .
2. Click the Index tab.
3. Type module faults .
E. Go to step A.
4.
4. Select the range for the code and click Display .
5. Scroll down to your fault code and follow the recommendations.
42439
Publication 1756-UM001D-EN-P - November 2001
Stagger the Messages
Communicate with 1771 I/O Over a ControlNet™ Network 9-27
As you add messages to your project, you may have to coordinate the execution of the messages. To avoid errors and assure that each message is processed, follow these rules:
Rule 1: Enable no more than 16 messages at one time (including block transfers).
Rule 2: Enable no more than 10 of the following types of messages at one time:
•
CIP data table reads or writes that are not cached
•
CIP generic
•
PLC2, PLC3, PLC5, or SLC (all types)
• block transfer reads or writes that are not cached
If the number of messages in your application exceeds rules 1 and 2, then stagger the execution of your messages. Here are some options:
•
Send each message in sequence
•
Send the messages in groups that are within the limits of rules 1 and 2
•
Publication 1756-UM001D-EN-P - November 2001
9-28 Communicate with 1771 I/O Over a ControlNet™ Network
Notes:
Publication 1756-UM001D-EN-P - November 2001
When to Use This
Procedure
Communicate with 1794 I/O Over a
ControlNet
™
Network
Chapter
10
Use this procedure to monitor and control I/O devices that are wired to 1794 I/O modules when a:
•
1756-CNB module connects the local chassis to a ControlNet network.
•
1794-ACN adapter connects the 1794 I/O modules to the same
ControlNet network.
1
ControlNet network
How to Use This Procedure If you have not already done so in a previous procedure, do the following preliminary step:
•
To complete this procedure, do the following steps:
•
Add the Remote 1794-ACN Module
•
•
•
Schedule the ControlNet Network
To check your work, do the following step:
•
42436
Publication 1756-UM001D-EN-P - November 2001
10-2 Communicate with 1794 I/O Over a ControlNet
™
Network
Add the local 1756-CNB module
A. Open the RSLogix 5000
™
project offline.
D.
42376
B. Right-click I/O Configuration and select New Module.
C. Select your type of CNB and click OK.
E.
F.
D. Type a name for the module (i.e., name_of_local_cnb ).
E. Type or select the slot number where the module is installed
F. How closely must any module in this slot match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
G. Click Next.
42377
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1794 I/O Over a ControlNet
™
Network 10-3
H.
I.
42398
H. Initially, do you want to the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared (unchecked).
Select the check box.
EXAMPLE
Inhibit a module
Use the Inhibit Module check box to make it easier to test a system:
•
Initially, inhibit the module.
•
When you are ready to test the devices that are associated with the module, clear the check box.
I. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
J. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
10-4 Communicate with 1794 I/O Over a ControlNet
™
Network
Add the Remote 1794-ACN
Module
−
I/O Configuration
−
[x] 1756-CNB/x name_of_local_CNB
A. Right-click name_of_local_cnb and select New Module.
B. Select the type of 1794-ACN that you are using and click OK.
C.
D.
E.
F.
G.
42433
C. Type a name for the ACN module. Use a name that identifies the
I/O of this adapter.
D. Type or select the ControlNet node number of the module.
E. Type or select the number of I/O modules on this rail.
F. Are most of the modules on this rail digital I/O modules?
If:
Yes
No
Then select
Rack Optimization
None
G. How closely must any module at this location match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
H. Click Next.
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1794 I/O Over a ControlNet
™
Network 10-5
I.
J.
K.
42401
I. In step
F.
, which Comm Format did you select?
If:
Rack Optimization
None
Then:
Type the rate at which the fastest device on the rail must update.
•
Use a power of two times the ControlNet NUT.
•
For example, if the NUT is 5 ms, type a rate of 5,
10, 20 ms, etc.
No RPI is required. Go to the next step.
J. Initially, do you want the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared
(unchecked).
Select the check box.
Notes:
When you test this portion of the system, clear the check box.
K. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
L. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
10-6 Communicate with 1794 I/O Over a ControlNet
™
Network
Add I/O Modules
If: no yes
And it is an: output module input module
In this task, you add I/O modules to the I/O configuration of the controller.
A. Is the module in the I/O configuration of another controller?
And you want to: Then:
Go to the next step.
Go to the next step.
maintain communication with the module if it loses communication with the other controller
1. Copy the module from the I/O configuration of the other controller.
2. Paste the module into the I/O configuration of this controller.
Go to the next step.
stop communication with the module if it loses communication with the other controller
−
I/O Configuration
−
[x] 1756-CNB/x name_of_local_CNB
− z 1794-ACN/x name_of_rail Add a 1794 I/O module here.
B. Right-click the 1794-ACN module and select New Module.
C. Select the type of module and click OK.
D. Type a name for the module.
E. Type or select the slot number where the module is installed.
42420
Publication 1756-UM001D-EN-P - November 2001
If this module is a: digital input digital input/output digital output analog
Communicate with 1794 I/O Over a ControlNet
™
Network 10-7
F. Select a Comm Format:
IMPORTANT
If the module is also in the I/O configuration of another controller, then select the Listen Only version of the Comm Format (e.g., Listen Only - Input Data).
And the:
Comm Format of the 1794-ACN is Rack Optimization
And the module must: update at the RPI of the
1794-ACN update faster than the RPI of the
1794-ACN
Then select:
Rack Optimization
Input Data
Input Data Comm Format of the 1794-ACN is None
Comm Format of the 1794-ACN is Rack Optimization
Comm Format of the 1794-ACN is None
Comm Format of the 1794-ACN is Rack Optimization
Comm Format of the 1794-ACN is None update at the RPI of the
1794-ACN update faster than the RPI of the
1794-ACN
Rack Optimization
Data
Data update at the RPI of the
1794-ACN update faster than the RPI of the
1794-ACN
Rack Optimization
Output Data
Output Data
Data
42420
G. How closely must any module in this slot match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
Publication 1756-UM001D-EN-P - November 2001
10-8 Communicate with 1794 I/O Over a ControlNet
™
Network
H. Click Next.
42401
I. In step
F.
, did you select Rack Optimization as the Comm
Format?
If:
No
Yes
Then:
Type the rate at which the fastest device that is wired to the module must update.
•
Use a power of two times the ControlNet NUT.
•
For example, if the NUT is 5 ms, type a rate of 5,
10, 20 ms, etc.
No RPI is required. Go to the next step.
J. Initially, do you want the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared
(unchecked).
Select the check box.
Notes:
When you test this portion of the system, clear the check box.
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1794 I/O Over a ControlNet
™
Network 10-9
K. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
L. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
10-10 Communicate with 1794 I/O Over a ControlNet
™
Network
Create Aliases In this task, you convert tags in your programs to aliases for I/O points or channels (devices). As an alias for an I/O point or channel, each tag:
• provides a descriptive name for the device that is wired to the point or channel
• represents the value of the point or channel. When one changes, the other reflects the change.
EXAMPLE
Create aliases
The following logic was initially programmed using descriptive tag names, such as start and motor. Later, the tags were converted to aliases for the corresponding I/O devices.
start is an alias for the push button that is wired to point 1 of the module that is in slot 2 of the rail named conveyor. When the push button is on, start is on.
motor is an alias for the starter contactor that is wired to point 0 of the module that is in slot 1 of the rail named conveyor. When motor turns on, the starter contactor turns on.
stop
<conveyor:2:I.Data.0> start
<conveyor:2:I.Data.1> motor
<conveyor:1:O.Data.0>
A. From the Logic menu, select Edit Tags.
motor
<conveyor:1:O.Data.0>
42435
B.
42421
C.
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1794 I/O Over a ControlNet
™
Network 10-11
If the device is: digital analog input analog output
B. Select the scope of the descriptive tag.
C. To the right of the tag name, click the Alias For cell.
The cell displays a ▼
D. Click the ▼
E. Click the Controller Scoped Tags button, if it is available. (All the data for I/O modules is at the controller scope.)
F. Select the I/O device that the tag represents:
And it Comm
Format is:
Data (e.g., Input
Data, Output Data)
Then:
Rack Optimization
1. Next to name:slot:X, click the + sign.
2. Click the Data member.
3. To the right of the Data member, click ▼
4. Click the point number of the device.
1. Click name:slot:X.
2. To the right of the selection, click ▼
3. Click the point number of the device.
1. Next to name:slot:X, click the + sign.
2. Scroll down and double-click Chz InputData .
1. Next to name:slot:X, click the + sign.
2. Scroll down and double-click Chz OutputData .
Where: name slot
X
Is: name of the 1794-ACN module slot number of the module type of device:
If: Then: input output
I
O channel that the device is wired to Chz
G. Press the Enter key or click another cell.
Publication 1756-UM001D-EN-P - November 2001
10-12 Communicate with 1794 I/O Over a ControlNet
™
Network
When you finish, the Tags window should look similar to the following:
Tag Name start
Alias For conveyor:2:I.Data.1(C)
Base Tag conveyor:2:I.Data.1(C) start is an alias for point 1 of the input module that is in slot 2 of the rail named conveyor .
TIP
Even if the I/O module uses the Rack Optimization Comm Format, address the required point as described in step F.
Tag Name start
Alias For conveyor:2:I.1(C)
Base Tag conveyor:I.Data[2].1(C) start is an alias for point 1 of the input module that is in slot 2 of a rail named conveyor .
Because the module uses the Rack Optimization format, a structure associated with the ACN module actually transfers the data.
However, the ladder logic displays the address of the data within the
ACN structure: start
<conveyor:I.Data[2].1>
42435
Publication 1756-UM001D-EN-P - November 2001
Communicate with 1794 I/O Over a ControlNet
™
Network 10-13
Schedule the ControlNet
Network
If:
No
Yes
A. Download the RSLogix 5000 project to the controller.
B. Start RSNetworx
™
for ControlNet software.
C. Has this network been scheduled before?
Then:
1. From the File menu, select New .
2. From the Network menu, select Online .
3. Select your ControlNet network and choose OK .
4. Select the Edits Enabled check box.
5. From the Network menu, select Properties .
6. From the Network Parameters tab, type or select the following parameters:
In this box: Specify:
Network Update Time
Max Scheduled Address
Max Unscheduled Address
Media Redundancy repetitive time interval in which data is sent over the ControlNet network greatest node number to use scheduled communications on the network greatest node number that you will use on the network channels in use
Network Name name for the network
7. Click OK .
8. From the Network menu, select Single Pass Browse .
9. From the File menu, select Save .
10. Type a name for the file that stores the network configuration, then click Save .
11. Select the Optimize and re-write Schedule for all Connections button (default) and click OK .
12. In RSLogix 5000 software, save the online project.
1. From the File menu, select Open .
2. Select the file for the network and choose Open .
3. From the Network menu, select Online .
4. Select the Edits Enabled check box.
5. From the Network menu, select Properties .
6. From the Network Parameters tab, update the following parameters:
In this box:
Max Scheduled Address
Specify: greatest node number to use scheduled communications on the network
Max Unscheduled Address greatest node number that you will use on the network
7. Click OK .
8. From the Network menu, select Single Pass Browse .
9. From the File menu, select Save .
10. Select the Optimize and re-write Schedule for all Connections button (default) and click OK .
11. In RSLogix 5000 software, save the online project.
Publication 1756-UM001D-EN-P - November 2001
10-14 Communicate with 1794 I/O Over a ControlNet
™
Network
Validate Connections Is this task, you verify that the controller can communicate with the devices that you have just configured.
Step:
A. Determine if communications are established.
B. Identify a fault. Start at the local communication module and work down through the tree.
C. Identify the fault code.
Detailed actions:
Is a
!
over the I/O Configuration folder?
If:
No
Yes
Then:
The controller can communicate with the module.
Communications are not established. Go to the next step.
1.
2.
−
−
!
I/O Configuration
3.
−
!
[x] 1756-YYY/x local_com_module
!
z 17xx-YYY adapter_1
!
[0] 17xx-YYY module_1
!
[1] 17xx-YYY module_2
1. Right-click the module and select Properties .
2. Click the Connection tab.
3.
3. Identify the code for the fault.
42437
Publication 1756-UM001D-EN-P - November 2001
Step:
D. Clear the fault.
Communicate with 1794 I/O Over a ControlNet
™
Network 10-15
Detailed actions:
1. From the Help menu, select Contents .
2. Click the Index tab.
3. Type module faults .
E. Go to step A.
4.
4. Select the range for the code and click Display .
5. Scroll down to your fault code and follow the recommendations.
42439
Publication 1756-UM001D-EN-P - November 2001
10-16 Communicate with 1794 I/O Over a ControlNet
™
Network
Notes:
Publication 1756-UM001D-EN-P - November 2001
1
When to Use This
Procedure
Chapter
11
Communicate with Another Controller over a
ControlNet
™
Network
Use this procedure to send a message from one controller to another controller over an ControlNet network:
•
ControlLogix controller to another Controllogix controller
•
ControlLogix controller to a FLexLogix
™
controller
•
ControlLogix controller to a PLC-5
®
controller
•
PLC-5 controller to a ControlLogix controller
ControlLogix Controller PLC-5 Controller
ControlNet Network
ControlLogix Controller FlexLogix Controller
42519
Publication 1756-UM001D-EN-P - November 2001
11-2 Communicate with Another Controller over a ControlNet
™
Network
How to Use This Procedure If you have not already done so in a previous procedure, do the following preliminary steps:
•
Step 1: Add the 1756-CNB Module
•
Step 2: Add the Remote 1756-CNB Module
•
Step 3: Add the 1788-CNC Module
To complete this procedure, do the following steps:
•
Step 4: Add the Other Controller
•
•
•
If a PLC-5 controller sends the message, do the following step:
•
Step 8: Access ControlLogix Data
Publication 1756-UM001D-EN-P - November 2001
Step 1: Add the 1756-CNB
Module
Communicate with Another Controller over a ControlNet
™
Network 11-3
A. Open the RSLogix 5000
™
project offline.
D.
42376
B. Right-click I/O Configuration and select New Module.
C. Select your type of CNB and click OK.
E.
F.
D. Type a name for the module (i.e., name_of_local_cnb ).
E. Type or select the slot number where the module is installed
F. How closely must any module in this slot match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
G. Click Next.
42377
Publication 1756-UM001D-EN-P - November 2001
11-4 Communicate with Another Controller over a ControlNet
™
Network
H.
I.
42398
H. Initially, do you want to the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared (unchecked).
Select the check box.
EXAMPLE
Inhibit a module
Use the Inhibit Module check box to make it easier to test a system:
•
Initially, inhibit the module.
•
When you are ready to test the devices that are associated with the module, clear the check box.
I. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
J. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
Step 2: Add the Remote
1756-CNB Module
Communicate with Another Controller over a ControlNet
™
Network 11-5
Determine if you must complete this step:
If the other controller is a:
ControlLogix controller
FlexLogix controller
PLC-5C controller
Then:
Complete this step.
Go to Step 3: Add the 1788-CNC Module
Go to Step 4: Add the Other Controller
C.
F.
42399
A. Right-click name_of_local_cnb and select New Module.
B. Select the type of CNB that is in the remote chassis and click OK.
H.
42404
C. Type a name for the CNB module. Use a name that identifies the
I/O in the chassis.
D. Type or select the ControlNet node number of the module.
E. Type or select the number of slots in the remote chassis.
F. Are most of the modules in the chassis non-diagnostic, digital
I/O modules?
If:
Yes
No
Then select
Rack Optimization
None
G. Type or select the slot number where the module is installed
D.
E.
G.
Publication 1756-UM001D-EN-P - November 2001
11-6 Communicate with Another Controller over a ControlNet
™
Network
H. How closely must any module in this slot match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
I. Click Next.
J.
K.
L.
J. In step
F.
, which Comm Format did you select?
If:
Rack Optimization
None
Then:
Type the rate at which the fastest device in the chassis must update.
•
Use a power of two times the ControlNet NUT.
•
For example, if the NUT is 5 ms, type a rate of 5,
10, 20 ms, etc.
No RPI is required. Go to the next step.
42401
K. Initially, do you want the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared
(unchecked).
Select the check box.
Notes:
When you test this portion of the system, clear the check box.
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller over a ControlNet
™
Network 11-7
L. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
M. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
11-8 Communicate with Another Controller over a ControlNet
™
Network
Step 3: Add the 1788-CNC
Module
Determine if you must complete this step:
If you are sending a message to a:
FlexLogix controller
ControlLogix controller
PLC-5C controller
Then:
Complete this step.
Go to Step 4: Add the Other Controller
C.
42399
A. Right-click name_of_local_cnb and select New Module.
B. Select the type of 1788-CNC module (communication card) that is in the FlexLogix controller and click OK.
D.
G.
H.
C. Type a name for the module.
D. Type or select the ControlNet node number of the module.
E. Type or select the slot number where the module is installed (1 or 2).
F. How closely must any module in this slot match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
G. Click Next.
42427
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller over a ControlNet
™
Network 11-9
K.
L.
H. Initially, do you want the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared
(unchecked).
Select the check box.
Notes:
When you test this portion of the system, clear the check box.
I. If communication with the modules fails, how do you want the controller to respond?
ATTENTION
!
If communication with a modules fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
J. Click Finish.
42398
Publication 1756-UM001D-EN-P - November 2001
11-10 Communicate with Another Controller over a ControlNet
™
Network
Step 4: Add the Other
Controller
Add a PLC-5C controller
Add a FlexLogix controller
Add a ControlLogix controller
42428
A. What type of controller receives the message?
If it is a:
PLC-5C
FlexLogix controller
ControlLogix controller
Then: right-click the local 1756-CNB module and select
New Module .
right-click the 1788-CNC module and select
New Module .
right-click remote 1756-CNB module and select
New Module .
B. Select the type of controller and click OK.
D.
D.
Publication 1756-UM001D-EN-P - November 2001
F.
42377
C. Type the name of the controller.
D. Type or select the location of the controller:
If:
PLC-5C controller
FlexLogix controller
ControlLogix controller
Type or select:
ControlNet node number of the controller always 0 slot number of the controller
E. How closely must any module in this slot match the information on this tab (does not apply to a FlexLogix controller)?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
Communicate with Another Controller over a ControlNet
™
Network 11-11
F. Click Next.
H.
I.
G. Initially, do you want the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared (unchecked).
Select the check box.
42398
EXAMPLE
Inhibit a module
To make it easier to test a system one module or section at a time:
1. Initially, inhibit all the modules.
2. To test a section of the system, clear the check boxes for the modules of that section
(i.e., uninhibit the modules).
H. If communication fails, how do you want the controller to respond?
ATTENTION
!
If communication with a modules fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
I. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
11-12 Communicate with Another Controller over a ControlNet
™
Network
Step 5: Enter a Message e e e e e e condition ?
/ e e e e e condition ?
/
A. Enter a MSG instruction and associated input instruction (s).
Message
Message Control
MSG
? ...
EN
DN
ER
42424
B. In the MSG instruction, type a name for the message control tag and press the Enter key.
C. In the MSG instruction, right-click the message control tag and select New tag_name. (In older revisions of the software, the menu option is Create tag_name.
)
D. From the Scope list, select name_of_controller (controller), and click OK.
E.
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER
42424
E. Enter message.
EN.
where: message is the message control tag from step B.
F. If your message is to a PLC-5
®
or SLC 500
™
controller and it reads or writes integers (not REALs), use a buffer of INTs in the message.
•
ControlLogix controllers execute more efficiently and use less memory when working with 32-bit integers (DINTs). Use the
DINT data type for integers whenever possible.
•
PLC-5 and SLC 500 controllers require 16-bit integers.
•
Use an INT buffer in the message and move the data into or out of the buffer as required.
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller over a ControlNet
™
Network 11-13
The following examples show how to use a buffer of INTs
EXAMPLE condition
Read integers from a PLC-5 controller
When condition turns on, reads 16-bit integer values (INTs) and stores them in
int_buffer. Then the FAL instruction moves the values to dint_array. This converts the values to 32-bit integers (DINTs), for use by other instructions in the ControlLogix controller.
message.EN
/
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER message.DN
fal_control
RES
FAL
File Arith/Logical
Control
Length
Position
Mode
Dest fal_control
?
0 all dint_array[fal_control.pos]
Expression int_buffer[fal_control.pos]
EN
DN
ER
EXAMPLE e condition
Write integers to a PLC-5 controller
When condition turns on, moves the values in dint_array to int_buffer. This converts the values to 16-bit integers (INTs). Then the message instruction sends int_buffer to the other controller.
fal_control
RES
FAL
File Arith/Logical
Control
Length
Position
Mode
Dest
Expression fal_control
?
0 all int_buffer[fal_control.pos] dint_array[fal_control.pos]
EN
DN
ER fal_control.DN
message.EN
/
Where: dint_array int_buffer
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER
Is an: array of DINTs that are used in the ControlLogix controller array of INTs with the same number of elements as dint_array
42424
Publication 1756-UM001D-EN-P - November 2001
11-14 Communicate with Another Controller over a ControlNet
™
Network
Step 6: Configure the
Message
A. In the MSG instruction, click ... .
B. Select a configuration for the message:
Table 11.A Message to a ControlLogix or FlexLogix controller
If you want to: read (receive) the data write (send) the data
For this item:
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Type or select:
CIP Data Table Read first element of the tag that contains data in the other controller number of elements to transfer first element of the tag (controller-scoped) in this controller for the data
CIP Data Table Write first element of the tag (controller-scoped) in this controller that contains the data number of elements to transfer first element of the tag for the data in the other controller
Table 11.B Message to a PLC-5 controller
If the data is: integer (s)
And you want to: read (receive) data write (send) data floating-point (REAL) read (receive) data write (send) data
For this item:
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Type or select:
PLC5 Typed Read data table address in the PLC-5 controller (e.g., N7:10) number of integers to transfer first element of int_buffer
PLC5 Typed Write first element of int_buffer number of integers to transfer data table address in the PLC-5 controller (e.g., N7:10)
PLC5 Typed Read data table address in the PLC-5 controller (e.g., F8:0) number of values to transfer first element of the tag (controller-scoped) in this controller for the data
PLC5 Typed Write first element of the tag (controller-scoped) in this controller that contains the data number of values to transfer data table address in the PLC-5 controller (e.g., F8:0)
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller over a ControlNet
™
Network 11-15
If the message is to a:
PLC-5 controller
Logix5000 controller:
•
ControlLogix controller
•
FlexLogix controller
C. Click the Communication tab.
D. Click Browse …
E. Select that controller that receives the message and click OK.
F. Complete the communication parameters:
Then:
1. Leave the CIP button selected.
2. Disregard the Cache Connection check box.
How many Logix5000 controllers does this controller send messages to?
If: Then:
16 or less Logix5000 controllers
Leave the Cache Connection check box selected (checked).
more than 16
Logix5000 controllers
1. Select16 Logix5000 controllers that require the most frequent messages.
2. Is this message to one of those controllers?
If:
Yes
No
Then
Leave the Cache Connection check box selected (checked).
Clear the Cache Connection check box.
G. Click OK.
Publication 1756-UM001D-EN-P - November 2001
11-16 Communicate with Another Controller over a ControlNet
™
Network
Step 7: Stagger the
Messages
As you add messages to your project, you may have to coordinate the execution of the messages. To avoid errors and assure that each message is processed, follow these rules:
Rule 1: Enable no more than 16 messages at one time (including block transfers).
Rule 2: Enable no more than 10 of the following types of messages at one time:
•
CIP data table reads or writes that are not cached
•
CIP generic
•
PLC2, PLC3, PLC5, or SLC (all types)
• block transfer reads or writes that are not cached
If the number of messages in your application exceeds rules 1 and 2, then stagger the execution of your messages. Here are some options:
•
Send each message in sequence
•
Send the messages in groups that are within the limits of rules 1 and 2
Step 8: Access
ControlLogix Data
Complete this step for any message that a PLC-5C controller sends to a
ControlLogix controller over an ControlNet network.
IMPORTANT This procedure uses RSLogix 5
™
software, revision 3.x.
For this section:
This PLC-5
Target Device
A. Using RSLogix 5 software, open the project for the PLC-5 controller.
B. Display the set-up screen for the message.
C. Specify the following parameters:
And this item:
Communication Command
Data Table Address
Size in Elements
Port Number
Data Table Address
MultiHop
Specify:
PLC-5 Typed Read or PLC-5 Typed Write starting address of the data in the PLC-5 controller number of elements to read or write
2
Type, in quotation marks [“ “], the name of the tag in the
ControlLogix controller (e.g., “count”).
Yes .
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller over a ControlNet
™
Network 11-17
D. Click the MultiHop tab.
42426
E. Type the ControlNet node number of the 1756-CNB module that is in the same chassis as the ControlLogix controller.
F. Type the slot number of the ControlLogix controller.
Publication 1756-UM001D-EN-P - November 2001
11-18 Communicate with Another Controller over a ControlNet
™
Network
Notes:
Publication 1756-UM001D-EN-P - November 2001
1
When to Use This
Procedure
Route PLC-5
®
Messages Between
ControlNet
™
Networks
Chapter
12
You can use ControlLogix communication modules to route a message between PLC-5 controllers that are on different networks (i.e., a remote message)
The following example depicts a ControlLogix chassis with two
1756-CNB modules that route a message from a ControlNet network to a different ControlNet network.
EXAMPLE
Message from a PLC-5C on a ControlNet network to a PLC-5C on a different ControlNet network
C
N
B
C
N
B
P
L
C
5
C node 2
ControlNet network A node 3 node 5
ControlNet network B
Message
P
L
C
5
C
node 1
Publication 1756-UM001D-EN-P - November 2001
12-2 Route PLC-5
®
Messages Between ControlNet
™
Networks
Route a ControlNet
Message
To send a message from a PLC-5C controller to a PLC-5C controller on a different ControlNet network:
IMPORTANT This procedure uses RSLogix 5
™
software, revision
3.x.
For this section:
This PLC-5
Target Device
A. Using RSLogix 5 software, open the project for the PLC-5 controller that sends the message.
B. Display the set-up screen for the message.
C. Specify the following parameters:
And this item:
Communication Command
Data Table Address
Size in Elements
Port Number
Data Table Address
MultiHop
Specify:
PLC-5 Typed Read or PLC-5 Typed Write starting address of the data in this PLC-5 controller number of elements to read or write
2 starting address of the data in the controller that receives the message
Yes .
D. Click the MultiHop tab.
42426
E. Type the ControlNet node number of the 1756-CNB module that is on the same ControlNet network as the controller that sends the message.
F. Type the slot number of the 1756-CNB module.
Publication 1756-UM001D-EN-P - November 2001
Route PLC-5
®
Messages Between ControlNet
™
Networks 12-3
G. Press the Insert key.
42464
H. Select 1756-CNB.
I. Type the ControlNet node number of the controller that receives the message.
The following example depicts the MultiHop entries for the
EXAMPLE
MultiHop entries
3 1 1 where: indicates the:
3
1
1 node number of the 1756-CNB module on ControlNet network A slot number of the 1756-CNB module on ControlNet network B node number of the PLC-5C controller that is receiving the message
Publication 1756-UM001D-EN-P - November 2001
12-4 Route PLC-5
®
Messages Between ControlNet
™
Networks
Notes:
Publication 1756-UM001D-EN-P - November 2001
1
When to Use This
Procedure
Chapter
13
Communicate with a PanelView
™
Terminal
Over a ControlNet
™
Network
Use this procedure to exchange data between a PanelView terminal and a ControlLogix controller over a ControlNet network.
42521
ControlNet Network
IMPORTANT
Before you use this procedure, your system must meet these requirements:
•
Each 1756-CNB module communicates with no more than three PanelView terminals.
•
Each PanelView terminal communicates scheduled data with only one controller
Publication 1756-UM001D-EN-P - November 2001
13-2 Communicate with a PanelView
™
Terminal Over a ControlNet
™
Network
How to Use This Procedure If you have not already done so in a previous procedure, do the following preliminary task:
•
To complete this procedure, do the following tasks:
•
•
•
Organize Your Unscheduled Data
•
Configure the PanelView Terminal
•
•
Schedule the ControlNet Network
To check your work, do the following task:
•
Add the Local 1756-CNB
Module
A. Open the RSLogix 5000
™
project offline.
Publication 1756-UM001D-EN-P - November 2001
42376
B. Right-click I/O Configuration and select New Module.
C. Select your type of CNB and click OK.
D.
Communicate with a PanelView
™
Terminal Over a ControlNet
™
Network 13-3
E.
F.
42377
D. Type a name for the module (i.e., name_of_local_cnb ).
E. Type or select the slot number where the module is installed
F. How closely must any module in this slot match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
G. Click Next.
Publication 1756-UM001D-EN-P - November 2001
13-4 Communicate with a PanelView
™
Terminal Over a ControlNet
™
Network
H.
I.
42398
H. Initially, do you want to the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared (unchecked).
Select the check box.
EXAMPLE
Inhibit a module
Use the Inhibit Module check box to make it easier to test a system:
•
Initially, inhibit the module.
•
When you are ready to test the devices that are associated with the module, clear the check box.
I. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
J. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
Add the PanelView
Terminal
Communicate with a PanelView
™
Terminal Over a ControlNet
™
Network 13-5
42399
A. Right-click name_of_local_cnb and select New Module.
B. Select PanelView and click OK.
If: up to 8 more than 8
42400
C. Type a name for the PanelView terminal.
D. Type or select the ControlNet node number of the terminal.
E. Does the terminal read more than 8 words of scheduled data
(16-bit integers) or write more than 8 words of scheduled data?
Then select
Data - 8 INT
Data - 32 INT
EXAMPLE
Select a Comm Format
If the PanelView terminal writes:
•
45 time-critical bits (45
÷
16 = 3 integers)
•
4 time-critical integers
Then the terminal writes 7 time-critical integers, so select Data - 8 INT.
F. How closely must the PanelView terminal match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
Publication 1756-UM001D-EN-P - November 2001
13-6 Communicate with a PanelView
™
Terminal Over a ControlNet
™
Network
G. Click Next.
42401
H. Type the rate that you want scheduled data to transfer with the
PanelView terminal.
•
Use a power of two time the ControlNet NUT.
•
For example, if the NUT is 5ms, type a rate of 10, 20ms, etc.
I. Initially, do you want the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared
(unchecked).
Select the check box.
Notes:
When you test this portion of the system, clear the check box.
J. If communication with the modules fails, how do you want the controller to respond?
Then: Notes: If you want the controller to: fault (major fault) continue operating
Select the check box.
Leave the check box cleared (unchecked).
Monitor the connection using ladder logic.
K. Click Finish.
Your controller organizer should look similar to the following:
42402
Publication 1756-UM001D-EN-P - November 2001
Communicate with a PanelView
™
Terminal Over a ControlNet
™
Network 13-7
Publication 1756-UM001D-EN-P - November 2001
13-8 Communicate with a PanelView
™
Terminal Over a ControlNet
™
Network
Organize Your Scheduled
Data
To transfer time-critical data, use the scheduled communications between the controller and the PanelView terminal:
If data type of the tag is:
And it is: And the:
PanelView writes the data part of a structure or array
PanelView reads the data
BOOL
PanelView writes the data not part of a structure or array
PanelView reads the data
DINT
PanelView writes the data
PanelView reads the data
Then:
Copy name_of_panelview:I.Data[x].y to the tag.
Copy the tag to name_of_panelview:O.Data[x].y
Convert the tag to an alias for name_of_panelview:I.Data[x].y
Convert the tag to an alias for name_of_panelview:O.Data[x].y
Move name_of_panelview:I.Data[z] to the tag.
Move the tag to name_of_panelview:O.Data[z]
Where: Is: name_of_panelview name of the PanelView terminal in the I/O configuration of the controller x y element of the PanelView terminal input (I) or output (O) structure. You can use this element for up to 16 bits.
bit number 0 to 15 within the input or output element z unique element of the PanelView terminal input (I) or output (O) structure
Publication 1756-UM001D-EN-P - November 2001
Communicate with a PanelView
™
Terminal Over a ControlNet
™
Network 13-9
EXAMPLE
Organize scheduled (i.e., time-critical) data
Copies the value of name_of_panelview:I.Data[0].1 to station_1_stop.
name_of_panelview:I.Data[0].1
station_1.stop
Copies the value of station_1_run to name_of_panelview:O.Data[0].0.
station_1.run
name_of_panelview:O.Data[0].0
alarm_ack and alarm are aliases for data that the PanelView terminal writes and reads alarm_ack
<name_of_panelview:I.Data[0].2> alarm
<name_of_panelview:O.Data[0].1>
U
Moves name_of_panelview:I.Data[3] to counter.PRE (a DINT tag) and moves counter.ACC (a DINT tag) to name_of_panelview:O.Data[3]
MOV
Move
Source name_of_panelview:I.Data[3]
0
Dest counter.PRE
0
MOV
Move
Source counter.ACC
0
Dest name_of_panelview:O.Data[3]
0
42403
Publication 1756-UM001D-EN-P - November 2001
13-10 Communicate with a PanelView
™
Terminal Over a ControlNet
™
Network
Organize Your Unscheduled
Data
To transfer unscheduled data with the PanelView terminal, organize the tags in the ControlLogix controller as follows:
Then: If data type of the tag is:
And it is: And the:
PanelView writes the data part of a structure or array
(including an I/O device)
PanelView reads the data
BOOL
DINT
DINT not part of a structure or array
≤
32767 PanelView writes the data
PanelView reads the data
> 32767 PanelView writes the data
PanelView reads the data a. Create a tag of the DINT data type.
b. Copy bit z of the DINT tag to the BOOL tag.
a. Create a tag of the DINT data type.
b. Copy the BOOL tag to bit z of the DINT tag.
a. Create a tag of the DINT data type.
b. Convert the BOOL tag to an alias for bit z of the DINT tag.
a. Create a tag of the INT data type.
b. Move the INT tag to the DINT tag.
a. Create a tag of the INT data type.
b. Move the DINT tag to the INT tag.
a. Create a tag of the REAL data type.
b. Move the REAL tag to the DINT tag.
a. Create a tag of the REAL data type.
b. Move the DINT tag to the REAL tag.
where: z is bit 0 to 15 of the DINT tag.
Publication 1756-UM001D-EN-P - November 2001
Communicate with a PanelView
™
Terminal Over a ControlNet
™
Network 13-11
EXAMPLE
Organize unscheduled (i.e., not time-critical) data
Copies the value of bit 3 of station_1_status (DINT tag) to station_1.start (a member of the station_1 structure) station_1_status.3
station_1.start
Copies the value of counter.DN to bit 1 of station_1_status (DINT tag) counter.DN
RUN_mode is an alias for bit 4 of station_1_status.(DINT tag) station_1_status.1
RUN_mode
<station_1_status.4>
Moves pv_write_1 (an integer that the PanelView writes) to shift_entry (DINT tag) and moves shift_display (DINT tag) to pv_read_1 (an integer that the PanelView reads).
MOV
Move
Source pv_write_1
0.0
Dest shift_entry
0
MOV
Move
Source shift_display
0
Dest pv_read_1
0.0
42403
Publication 1756-UM001D-EN-P - November 2001
13-12 Communicate with a PanelView
™
Terminal Over a ControlNet
™
Network
Configure the PanelView
Terminal
A. Start PanelBuilder32 software.
B. Open an existing PanelBuilder application or create a new application.
C. From the Application menu, select Settings.
D. Click the Comms Setup button.
42395
E. Type the ConrolNet node number of the PanelView terminal.
F. Under Node Name, right-click End of Node List and select Insert
Node.
42396
G. Select ControlLogix5000.
Publication 1756-UM001D-EN-P - November 2001
Communicate with a PanelView
™
Terminal Over a ControlNet
™
Network 13-13
42396
H. Type a name for the ControlLogix controller.
I. Type the path to the ControlLogix controller. Use the following format: space cnb_address 1 controller_slot where: cnb_address is:
ControlNet node number of the 1756-CNB module that is in the same chassis as the
ControlLogix controller slot number of the ControlLogix controller controller_slot
J. Click OK.
K. Click OK.
Publication 1756-UM001D-EN-P - November 2001
13-14 Communicate with a PanelView
™
Terminal Over a ControlNet
™
Network
Create PanelView Tags A. On the PanelView screen, create the required object.
B. Double-click the object.
C. Click the Edit Tag button.
42397
D. Type a name for the object
E. Select a data type that matches the data type of the tag in the
ControlLogix controller.
F. In the ControlLogix controller is the data scheduled or unscheduled?
If: scheduled unscheduled
Then:
Click the Scheduled button.
1. Click the Unscheduled button.
2. From the Node Name list, select the controller.
Publication 1756-UM001D-EN-P - November 2001
If the tag is: scheduled unscheduled
Communicate with a PanelView
™
Terminal Over a ControlNet
™
Network 13-15
G. Specify the name of the tag in the ControlLogix controller:
Specify: And its data type is: bit
And the:
INT
PanelView writes the data
PanelView reads the data
PanelView writes the data
PanelView reads the data bit
INT
REAL
SI0: x/y
SO0: x/y
SI0: x
SO0: x tag_name.z
name of INT or REAL tag that stores the data in the
ControlLogix controller
Where: x
Is: element of the PanelView input or output structure in the controller y z bit number 0 to 15 within the input or output element tag_name name of the tag that you created in the controller to exchange bits with the PanelView terminal bit number 0 to 15
EXAMPLE
Specify the address of a tag in the ControlLogix controller
ControlLogix Controller: name_of_panelview:I.Data[0].1
name_of_panelview:O.Data[3] station_1_status.3
pv_write_1
PanelView Application:
SI0:0.1
SO0:3 station_1_status.3
pv_write_1
H. Click OK.
I. Click OK.
Publication 1756-UM001D-EN-P - November 2001
13-16 Communicate with a PanelView
™
Terminal Over a ControlNet
™
Network
Schedule the ControlNet
Network
If:
No
Yes
A. Download the RSLogix 5000 project to the controller.
B. Download the PanelBuilder32 application to the terminal.
C. Start RSNetworx
™
for ControlNet software.
D. Has this network been scheduled before?
Then:
1. From the File menu, select New .
2. From the Network menu, select Online .
3. Select your ControlNet network and choose OK .
4. Select the Edits Enabled check box.
5. From the Network menu, select Properties .
6. From the Network Parameters tab, type or select the following parameters:
In this box:
Network Update Time
Max Scheduled Address
Max Unscheduled Address
Media Redundancy
Network Name
Specify: repetitive time interval in which data is sent over the ControlNet network greatest node number to use scheduled communications on the network greatest node number that you will use on the network channels in use name for the network
7. Click OK .
8. From the Network menu, select Single Pass Browse .
9. From the File menu, select Save .
10. Type a name for the file that stores the network configuration, then click Save .
11. Select the Optimize and re-write Schedule for all Connections button (default) and click OK .
12. In RSLogix 5000 software, save the online project.
1. From the File menu, select Open .
2. Select the file for the network and choose Open .
3. From the Network menu, select Online .
4. Select the Edits Enabled check box.
5. From the Network menu, select Properties .
6. From the Network Parameters tab, update the following parameters:
In this box: Specify:
Max Scheduled Address
Max Unscheduled Address greatest node number to use scheduled communications on the network greatest node number that you will use on the network
7. Click OK .
8. From the Network menu, select Single Pass Browse .
9. From the File menu, select Save .
10. Select the Optimize and re-write Schedule for all Connections button (default) and click OK .
11. In RSLogix 5000 software, save the online project.
Publication 1756-UM001D-EN-P - November 2001
Communicate with a PanelView
™
Terminal Over a ControlNet
™
Network 13-17
Validate Connections Is this task, you verify that the controller can communicate with the devices that you have just configured.
Step:
A. Determine if communications are established.
B. Identify a fault. Start at the local communication module and work down through the tree.
C. Identify the fault code.
Detailed actions:
Is a
!
over the I/O Configuration folder?
If:
No
Yes
Then:
The controller can communicate with the module.
Communications are not established. Go to the next step.
1.
2.
−
−
!
I/O Configuration
3.
−
!
[x] 1756-YYY/x local_com_module
!
z 17xx-YYY adapter_1
!
[0] 17xx-YYY module_1
!
[1] 17xx-YYY module_2
1. Right-click the module and select Properties .
2. Click the Connection tab.
3.
3. Identify the code for the fault.
42437
Publication 1756-UM001D-EN-P - November 2001
13-18 Communicate with a PanelView
™
Terminal Over a ControlNet
™
Network
Step:
D. Clear the fault.
Detailed actions:
1. From the Help menu, select Contents .
2. Click the Index tab.
3. Type module faults .
E. Go to step A.
4.
4. Select the range for the code and click Display .
5. Scroll down to your fault code and follow the recommendations.
42439
Publication 1756-UM001D-EN-P - November 2001
1
Chapter
14
Communicate with an RSView Project over a
ControlNet
™
Network
When to Use This
Procedure
Use this procedure to communicate with tags in either of the following types of RSView projects:
•
RSView32 project.
•
RSView Machine Edition project (developed with RSView Studio software)
RSView32 or RSView eface
ControlLogix Chassis with 1756-CNB Module
ControlNet Network
How to Use This Procedure To communicate with an RSView project, you have two options:
If the data: needs regular delivery at a rate that you specify is sent when a specific condition occurs in your application
Then use a: polled message unsolicited message
42520
Publication 1756-UM001D-EN-P - November 2001
14-2 Communicate with an RSView Project over a ControlNet™ Network
Configure a ControlNet
Driver
A. Start RSLinx
™
software.
B. From the Communications menu, select Configure Drivers.
C. From the Available Driver Types list, select the type of
ControlNet communication card.
D. Click Add New.
E. Assign a name to the driver, if desired.
F. Supply the required information about the communication card.
Configure a 1784-KTC(X) card
EXAMPLE
ControlNet node number for the workstation
Unused interrupt number
Memory address from the
DIP switch on the
1784-KTC(X) card 42465
I/O base memory address from the DIP switches on the 1784-KTC(X) card
G. Click OK.
H. Click Close.
Publication 1756-UM001D-EN-P - November 2001
Communicate with an RSView Project over a ControlNet™ Network 14-3
Select a Communication
Method
Select a method for transferring the data:
If the data: needs regular delivery at a rate that you specify is sent when a specific condition occurs in your application
Then go to:
"Create a Polled Topic" on page 14-4
"Create a Unsolicited Topic" on page 14-14
Publication 1756-UM001D-EN-P - November 2001
14-4 Communicate with an RSView Project over a ControlNet™ Network
Create a Polled Topic
TIP
RSLogix 5000 software, revision 10.0 or later, automatically creates DDE/OPC topics in RSLinx software whenever you:
• create a project
• save a project
• change the revision of a project to 10.0 or later
In some cases, you have to update the data source for the topic in RSLinx software, as shown in
A. Display RSLinx software.
B. From the DDE/OPC menu, select Topic Configuration …
C. In the bottom left corner of the window, click New.
D. Type a name for the topic and press the Enter key.
To expand a network one level, do one of the following:
•
Double-click the network.
•
Select the network and press the
→
key.
•
Click the + sign.
Data Source
−
Workstation
+
AB_KTC-x, ControlNet
E. On the Data Source tab, expand the ControlNet driver (e.g.,
AB_KTC-1) until you see the ControlLogix controller.
Data Source
−
Workstation
−
AB_KTC-x, ControlNet
− xxx.xxx.xxx.xxx, 1756-CNB
−
Backplane, 1756-Ax
+ xx, 1756-Lx
F. Select the ControlLogix controller.
G. Choose Apply and confirm the update.
H. Click the Data Collection tab.
Publication 1756-UM001D-EN-P - November 2001
J. Click the Use
Symbols check box.
43083
Communicate with an RSView Project over a ControlNet™ Network 14-5
42429
I. Type the update rate (ms) for the data.
K. Select RSLogix 5000 (*acd).
L. Select the RSLogix 5000 project for this topic.
M. Choose Open.
N. Choose Done and then Yes.
43083
Publication 1756-UM001D-EN-P - November 2001
14-6 Communicate with an RSView Project over a ControlNet™ Network
Create a Polled Node A. Open the RSView project.
43081
B. Double-click Node.
C. Click OPC Server.
D. Type a name for the node.
G. Click Accept.
H. Click Close.
Publication 1756-UM001D-EN-P - November 2001
43082
42430
Import Logix5000 Tags
Communicate with an RSView Project over a ControlNet™ Network 14-7
To import tags from an RSLogix 5000 project into your RSView project, use the Logix 5000 Tag Import utility:
•
•
Install the Logix 5000 Tag Import Utility
•
Use the Utility to Create a .CSV File
•
Create an .L5K File
A. Open the RSLogix 5000 project that contains the tags that you want to access.
B. From the File menu, choose Save As.
C. Select RSLogix 5000 Import/Export File (*.L5K).
D. Choose Save.
43070
Publication 1756-UM001D-EN-P - November 2001
14-8 Communicate with an RSView Project over a ControlNet™ Network
Install the Logix 5000 Tag Import Utility
A. Get your RSLogix 5000 software CD.
B. On the CD, find the following file: language \Tools\Tag Import
Utility\Logix+5000+Tag+Import.msi.
where: language is the language of your software. For example, for software that is in English, open the Enu folder.
C. Copy the file to your computer.
D. To install the utility, open the file.
Use the Utility to Create a .CSV File
A. Start the Logix 5000 Tag Import utility.
Publication 1756-UM001D-EN-P - November 2001
B. Type the name of the node from "Create a Polled Node."
C. Select the .L5K file.
D. Choose Search.
43071
Communicate with an RSView Project over a ControlNet™ Network 14-9
E. Select the tags to import.
F. Type the name of the topic from "Create a Polled Topic."
G. Choose OK.
H. Choose Save.
Publication 1756-UM001D-EN-P - November 2001
14-10 Communicate with an RSView Project over a ControlNet™ Network
Import the .CSV File
A. Start the Database Import & Export wizard:
•
Start
⇒
Programs
⇒
Rockwell Software
⇒
RSView Studio
Tools
⇒
Database Import & Export Wizard
•
Start
⇒
Programs
⇒
Rockwell Software
⇒
RSView32 Tools
⇒
Database Import & Export Wizard
B. Complete the screens of the wizard:
Import RSView CSV files or
Import RSView Studio CSV files
Next >
CSV file
Next > your option
Next >
Publication 1756-UM001D-EN-P - November 2001
Communicate with an RSView Project over a ControlNet™ Network 14-11
RSView project
Next >
Finish
All correct?
Correct?
OK
43072
Publication 1756-UM001D-EN-P - November 2001
14-12 Communicate with an RSView Project over a ControlNet™ Network
Create a Polled Tag To create RSView tags one tag at a time:
43081
A. Double-click Tag Database.
B. Click New.
43082
C. Specify the properties of the tag.
42431
Publication 1756-UM001D-EN-P - November 2001
42432
D. Click Device.
F. Select the name of the node that you created in “Create a Polled
Communicate with an RSView Project over a ControlNet™ Network 14-13
+
(Node: <Local> )
H. Click the + sign.
−
(Node: <Local> )
+
+ topic_1 topic_2
I. Next to the topic from “Create a Polled Topic,” click the + sign.
tags in the offline RSLogix 5000 project tags in the ControlLogix controller
−
(Node: <Local> )
+
− topic_1 topic_2
+
+
Offline
Online
J. Next to Offline, click the + sign.
controller scope tags
−
(Node: <Local> )
+
− topic_1 topic_2
−
Offline arrays and structures at the controller scope array_1 counter_1 program scope tags
+
Program:MainProgram
+
Online
K. On the left, select the entry that contains the required tag
(address).
Publication 1756-UM001D-EN-P - November 2001
14-14 Communicate with an RSView Project over a ControlNet™ Network
controller scope tags
−
(Node: <Local> )
+
− topic_1 topic_2
−
Offline arrays and structures at the controller scope array_1 counter_1 program scope tags
+
Program:MainProgram
+
Online bool_1 dint_1 real_1 single element tags
(BOOLs,
DINTs,
REALs, etc.)
L. On the right, double-click the tag that contains the required data
(i.e., the address for the RSView tag).
M. Click Accept.
N. If this is an RSView32 project, go to Validate an RSView32 Tag.
Create a Unsolicited Topic A. Display RSLinx software.
B. From the Communications menu, select Configure Client
Applications.
C. Click the Virtual Link ID tab.
D. Do you want to use the same Virtual Link ID for each workstation in your system? (Node or IP addresses are sufficient to distinguish between workstations.)
If:
Yes
No
Then:
1. Record the Virtual Link ID number, which you will use in subsequent steps.
2. Click OK .
1. Enter a unique Virtual Link ID for the workstation.
2. Click OK .
3. Close the RSLinx software. (If you configured RSLinx software to start as a service, you must also stop the service.)
4. Re-open the RSLinx software.
E. From the DDE/OPC menu, select Topic Configuration …
F. In the bottom left corner of the window, click New.
G. Type a name for the topic and press the Enter key.
Publication 1756-UM001D-EN-P - November 2001
Communicate with an RSView Project over a ControlNet™ Network 14-15
H. Click the Data Collection tab.
I. Specify the following parameters:
For this item:
Processor Type
Data Collection Mode
Do this:
Select PLC-5 .
1. Clear the Polled Messages check box.
2. Select the Unsolicited Messages check box.
J. Click the Advanced Communication tab.
K. Specify the following parameters:
For this item:
Communication Driver
Station
Local or Remote Addressing
Type or select: driver for the network across which you will send the message slot number of the controller that is sending the message
Remote
L. In the Remote Routing Configuration dialog box, specify the following parameters:
For this parameter:
Bridge Device
Local ID
Local KA5
Remote ID
Type or select:
1785-KA5 Bridge/5130-KA
arbitrary number between 1 and 107 (RSLinx requires an entry but this configuration does not use the entry.) number that designates the backplane of the
ControlLogix chassis (Use a different number for each backplane.)
M. Click OK.
N. Click Done and confirm the update of the topic.
Publication 1756-UM001D-EN-P - November 2001
14-16 Communicate with an RSView Project over a ControlNet™ Network
Add the 1756-CNB Module
A. Open the RSLogix 5000
™
project offline.
D.
42376
B. Right-click I/O Configuration and select New Module.
C. Select your type of CNB and click OK.
E.
F.
D. Type a name for the module (i.e., name_of_local_cnb ).
E. Type or select the slot number where the module is installed
F. How closely must any module in this slot match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
G. Click Next.
42377
Publication 1756-UM001D-EN-P - November 2001
Communicate with an RSView Project over a ControlNet™ Network 14-17
H.
I.
42398
H. Initially, do you want to the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared (unchecked).
Select the check box.
EXAMPLE
Inhibit a module
Use the Inhibit Module check box to make it easier to test a system:
•
Initially, inhibit the module.
•
When you are ready to test the devices that are associated with the module, clear the check box.
I. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
J. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
14-18 Communicate with an RSView Project over a ControlNet™ Network
Enter a Message e e e e e e condition ?
/ e e e e e condition ?
/
A. Enter a MSG instruction and associated input instruction (s).
Message
Message Control
MSG
? ...
EN
DN
ER
42424
B. In the MSG instruction, type a name for the message control tag and press the Enter key.
C. In the MSG instruction, right-click the message control tag and select New tag_name. (In older revisions of the software, the menu option is Create tag_name.
)
D. From the Scope list, select name_of_controller (controller), and click OK.
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER
42424
E. Enter message.
EN.
where: message
is the message control tag from step B.
F. If your message reads or writes integers (not REALs), use a buffer of INTs in the message.
•
ControlLogix controllers execute more efficiently and use less memory when working with 32-bit integers (DINTs). Use the
DINT data type for integers whenever possible.
•
In this procedure, you use a PLC-5 Typed Read or PLC-5
Typed Write message, which requires 16-bit integers.
•
Use an INT buffer in the message and move the data into or out of the buffer as required.
Publication 1756-UM001D-EN-P - November 2001
Communicate with an RSView Project over a ControlNet™ Network 14-19
The following examples show how to use a buffer of INTs
EXAMPLE condition
Read integers from an RSView project
When condition turns on, reads 16-bit integer values (INTs) and stores them in
int_buffer. Then the FAL instruction moves the values to dint_array. This converts the values to 32-bit integers (DINTs), for use by other instructions in the ControlLogix controller.
message.EN
/
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER message.DN
fal_control
RES
FAL
File Arith/Logical
Control
Length
Position
Mode
Dest fal_control
?
0 all dint_array[fal_control.pos]
Expression int_buffer[fal_control.pos]
EN
DN
ER
EXAMPLE e condition
Write integers to an RSView project
When condition turns on, moves the values in dint_array to int_buffer. This converts the values to 16-bit integers (INTs). Then the message instruction sends int_buffer to the
RSView project.
fal_control
RES
FAL
File Arith/Logical
Control
Length
Position
Mode
Dest
Expression fal_control
?
0 all int_buffer[fal_control.pos] dint_array[fal_control.pos]
EN
DN
ER fal_control.DN
message.EN
/
Where: dint_array int_buffer
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER
Is an: array of DINTs that are used in the ControlLogix controller array of INTs with the same number of elements as dint_array
42424
Publication 1756-UM001D-EN-P - November 2001
14-20 Communicate with an RSView Project over a ControlNet™ Network
Configure the Message
A. In the MSG instruction, click ... .
B. On the Configuration tab, specify the following parameters:
Table 14.1 Message to a RSView project
If the data is: integer (s)
And you want to: read (receive) data floating-point (REAL) write (send) data read (receive) data write (send) data
For this item:
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Type or select:
PLC5 Typed Read logical address, such as N7:0 number of integers to transfer first element of int_buffer
PLC5 Typed Write first element of int_buffer number of integers to transfer logical address, such as N7:0
PLC5 Typed Read logical address, such as F8:0 number of values to transfer first element of the tag (controller-scoped) in this controller for the data
PLC5 Typed Write first element of the tag (controller-scoped) in this controller that contains the data number of values to transfer logical address, such as F8:0
C. Click the Communication tab.
D. Click Browse …
E. Select the 1756-CNB module and click OK.
F. In the Path text box, add:
, 2, address, 1, 0 where: address is the ControlNet node number of the workstation.
EXAMPLE
Complete path entry washer_chassis, 2, 5, 1, 0
Publication 1756-UM001D-EN-P - November 2001
Communicate with an RSView Project over a ControlNet™ Network 14-21
G. On the Communication tab, specify the following parameters:
For this item:
Communication Method
Source Link
Destination Link
Destination Node
Type or select:
CIP With Source ID
Remote ID from “Create a Unsolicited Topic,
Virtual Link ID from “Create a Unsolicited Topic, step D.”
77 (RSLinx reserves node 77 for DDE topics.)
H. Click OK.
Publication 1756-UM001D-EN-P - November 2001
14-22 Communicate with an RSView Project over a ControlNet™ Network
Create an Unsolicited Node A. Open the RSView project.
43081
B. Double-click Node.
43082
42430
C. Click OPC Server.
D. Type a name for the node.
G. In the Access Path box, type the name of the topic from “Create a Unsolicited Topic.”
H. Click Accept.
I. Click Close.
Publication 1756-UM001D-EN-P - November 2001
Communicate with an RSView Project over a ControlNet™ Network 14-23
Create an Unsolicited Tag
43081
A. Double-click Tag Database.
B. Click New.
43082
42431
C. Specify the properties of the tag.
D. Click Device.
F. Select the name of the node that you created in “Create an
Unsolicited Node” and click OK.
42432
Publication 1756-UM001D-EN-P - November 2001
14-24 Communicate with an RSView Project over a ControlNet™ Network
G. Type the address for the tag:
If the controller: writes the value reads the value
Then type the: destination address that you specified in the MSG instruction source address that you specified in the MSG instruction
H. Click Accept.
Validate an RSView32 Tag This procedure applies only to RSView32 projects.
A. On the Edit Mode tab, double-click Tag Monitor.
Tag Name Value State
B. Type the name of the RSView tag and press the Enter key.
Tag Name tag_name
Value State
C. What does the State column display?
If: valid error
Then:
The tag contains a valid value from the controller.
There is a communication problem, such as the:
• controller is not available
• server is not running
If a MSG instruction reads or writes the value, you will see error until the controller sends the message for the first time.
Publication 1756-UM001D-EN-P - November 2001
1
When To Use This
Procedure
Chapter
15
Monitor Connections
Use this procedure to alert the system to the loss of communication with a device (module) in the I/O configuration of the controller. For example:
• failure of a module
• loss of power to a chassis
• failure of a communication module
• break in a cable
If the controller losses communication with a module:
•
Data from that device does not update.
•
The logic makes decisions on data that may or may not be correct.
EXAMPLE
Loss of communication
Controller B requires data from controller A. If communication fails between the controllers, then controller B continues to act on the last data that it received from controller A.
A communication failure
B
41031
Publication 1756-UM001D-EN-P - November 2001
15-2 Monitor Connections
Monitor a Connection If communication with a device in the I/O configuration of the controller does not occur for 100 ms, the communication times out and the controller produces the following warnings:
•
The I/O LED on the front of the controller flashes green.
•
A
!
shows over the I/O configuration folder and over the device (s) that has timed out.
•
A module fault code is produced, which you can access through:
– Module Properties dialog box for the module
– GSV instruction
How do you want to handle the loss of communication with a module in the I/O configuration of the controller?
If you want to: determine if communication has timed out with any device
Then:
Enter the following rung and add the specific action to occur:
If communication times out with at least one device (module) in the I/O configuration of the controller, the I/O LED on the front of the controller flashes green.
•
The GSV instruction gets the status of the I/O LED and stores it in the I_O_LED tag.
•
If I_O_LED equal 2, the controller has lost communication with at least one device.
Dest
GSV
Get System Value
CIP Object Class MODULE
CIP Object Name
Attribute Name LedStatus
I_O_LED
EQU
Equal
Source A I_O_LED
Source B 2
42468 where:
I_O_LED is a DINT tag that stores the status of the I/O LED on the front of the controller.
Publication 1756-UM001D-EN-P - November 2001
Monitor Connections 15-3
If you want to: determine if communication has timed out with a specific device
Then:
Enter the following rung for the device and add the specific action to occur:
If communication times out with a device (module) in the I/O configuration of the controller, the controller produces a fault code for the module.
•
The GSV instruction gets the fault code for module_name and stores it in the module_name_fault tag.
•
If module_name_fault is not equal to 0, then the controller is not communicating with the module.
GSV
Get System Value
CIP Object Class MODULE
CIP Object Name module_name
Attribute Name
Dest
FaultCode module_name_fault
Not Equal
Source A module_name_fault
NEQ
Source B 0
42468 interrupt the execution of logic and execute the Controller Fault Handler
Where: module_name module_name_fault
Is a: name of the module from the I/O configuration
DINT tag that stores the fault code for the module
A. In the controller organizer, right-click the module and select Properties .
B. Click the Connection tab.
C. Select (check) the Major Fault If Connection Fails While in Run Mode check box.
D. Develop a routine for the Controller Fault Handler. See the Logix5000 Controllers
Common Procedures , publication 1756-PM001.
Publication 1756-UM001D-EN-P - November 2001
15-4 Monitor Connections
Notes:
Publication 1756-UM001D-EN-P - November 2001
Chapter
16
Communicate with a DeviceNet Device
1
When to Use This
Procedure
Use this procedure to monitor and control I/O devices that are part of a DeviceNet network. Before you use this procedure, set up the
DeviceNet network:
•
Connect the devices to the network.
•
In RSNetWorx for DeviceNet software, complete these actions:
– Assign a node address to each device.
– Configure each device.
– Add the devices to the scan list of the 1756-DNB module.
How to Use This Procedure To complete this procedure, do the following steps:
•
Step 1: Add the 1756-DNB Module
•
•
Step 3: Set the Scanner to Run Mode
Step 1: Add the 1756-DNB
Module
A. Open the RSLogix 5000 project.
−
I/O Configuration
−
[x] 1756-CNB/x name_of_local_CNB
Add a local 1756-DNB module here.
z [x] 1756-CNB/x name_of_remote_CNB Add a remote 1756-DNB module here.
B. Where is the 1756-DNB module located?
If it is in: Then: same chassis as controller right-click I/O Configuration and select New
Module .
remote chassis right-click the remote 1756-CNB module and select
New Module .
C. Select 1756-DNB and click OK.
Publication 1756-UM001D-EN-P - November 2001
16-2 Communicate with a DeviceNet Device
D.
H.
42469
D. Type a name for the module. Use a name that identifies the I/O of the network.
E. Type or select the slot number of the module.
F. Type or select the number of input words that are mapped in the scanner plus 1.
For example, if inputs are mapped from word 0 to word 4 (5 words), enter a value of 6 (5 input words + 1 = 6).
G. Type or select the number of output words that are mapped in the scanner plus 1.
H. How closely must any module in this slot match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
I. Click Next.
J.
E.
F.
G.
K.
L.
42401
Publication 1756-UM001D-EN-P - November 2001
Communicate with a DeviceNet Device 16-3
J. Is the module in a remote chassis?
If:
Yes
No
Then:
Type the rate at which the fastest device in the chassis must update.
•
Use a power of two times the ControlNet NUT.
•
For example, if the NUT is 5 ms, type a rate of 5, 10, 20 ms, etc.
Leave the RPI at the default setting.
K. Initially, do you want the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared
(unchecked).
Select the check box.
Notes:
When you test this portion of the system, clear the check box.
L. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
M. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
16-4 Communicate with a DeviceNet Device
Step 2: Create Aliases In this step, you convert tags in your programs to aliases for I/O points (devices). As an alias for an I/O point, each tag:
• provides a descriptive name for the device that is wired to the point
• represents the value of the point. When one changes, the other reflects the change.
EXAMPLE
Create aliases
The following logic was initially programmed using descriptive tag names, such as start and motor. Later, the tags were converted to aliases for the corresponding I/O devices.
start is an alias for the push button at bit 1 of word 0 of the module
(1756-DNB) in slot 5 of the local chassis. When the push button is on, start is on.
motor is an alias for the starter contactor at bit 0 of word 0 of the module (1756-DNB) in slot 5 of the local chassis. When motor turns on, the starter contactor turns on.
stop
<Local:5:I.Data[0].0> start
<Local:5:I.Data[0].1> motor
<Local:5:O.Data[0].0>
A. From the Logic menu, select Edit Tags.
motor
<Local:5:O.Data[0].0>
42435
B.
Publication 1756-UM001D-EN-P - November 2001
C.
B. Select the scope of the descriptive tag.
C. To the right of the tag name, click the Alias For cell.
The cell displays a ▼
42421
Communicate with a DeviceNet Device 16-5
D. Click the ▼
E. Click the Controller Scoped Tags button, if it is available. (All the data for I/O modules is at the controller scope.)
F. Next to name:slot:X, click the + sign.
Where: name slot
X
Is: name of the chassis:
If: local
Then the name is:
Local remote name of the 1756-CNB module in the chassis slot number of the module type of device:
If: Then: input output
I
O
G. Next to name:slot:X.
Data, click the + sign.
H. Click name:slot:X.
Data [y].
where: y is the group number that the device is wired to.
I. To the right of the selection, click ▼
J. Click the bit number of the device.
K. Press the Enter key or click another cell.
When you finish, the Tags window should look similar to this:
Tag Name start
Alias For
Local:5:I.Data[0].1(C)
Base Tag
Local:5:I.Data[0].1(C) start is an alias for bit 1 of word 0 of slot 5 in the local chassis.
Publication 1756-UM001D-EN-P - November 2001
16-6 Communicate with a DeviceNet Device
Step 3: Set the Scanner to
Run Mode
42376
A. Double-click Controller Tags.
Tag Name
+ name:slot:O
Value
( . . . )
B. Next to name:slot : 0, click the + sign.
Where: name slot
Is: name of the chassis:
If: Then the name is: local Local remote name of the 1756-CNB module in the chassis slot number of the module
Tag Name
− name:slot:O
+ name:slot:O.CommandRegister
Value
( . . . )
( . . . )
C. Next to name:slot : 0.CommandRegister, click the + sign.
Publication 1756-UM001D-EN-P - November 2001
Communicate with a DeviceNet Device 16-7
Tag Name
− name:slot:O
− name:slot:O.CommandRegister
name:slot:O.CommandRegister.Run
Value
( . . . )
( . . . )
0
D. In name:slot : 0.CommandRegister, enter a 1.
Tag Name
− name:slot:O
− name:slot:O.CommandRegister
name:slot:O.CommandRegister.Run
Value
( . . . )
( . . . )
1
Publication 1756-UM001D-EN-P - November 2001
16-8 Communicate with a DeviceNet Device
Notes:
Publication 1756-UM001D-EN-P - November 2001
1
When to Use This
Procedure
Chapter
17
Communicate with Another Controller Over a
DH+
™
Network
Use this procedure to send a message over a DH+ network between:
•
ControlLogix controllers
•
ControlLogix controller and a PLC-5
®
or SLC 500
™
controller
ControlLogix Controller PLC-5 Controller
DH+ Network
ControlLogix Controller SLC 500 Controller
42470
Publication 1756-UM001D-EN-P - November 2001
17-2 Communicate with Another Controller Over a DH+
™
Network
How to Use This Procedure If you have not already done so in a previous procedure, do the following preliminary steps:
•
•
Configure a 1756-DHRIO Channel
To complete this procedure, do the following steps:
•
•
•
•
If a PLC-5 or an SLC 5/05 controller sends the message, do the following step:
•
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller Over a DH+
™
Network 17-3
Configure Routing Tables Determine if you must complete this task:
If a:
PLC-5 controller
SLC 500 controller
ControlLogix controller
Sends a message to a:
ControlLogix controller
PLC-5 controller
SLC 500 controller
ControlLogix controller
Over a: local network remote network local network remote network
And there is: only one ControlLogix controller in the chassis more than one ControlLogix controller in the chassis
Then:
Complete this task.
Complete this task.
Complete this task.
The following example shows a local message and a remote message from a PLC-5 controller. Any type of network can link the
ControlLogix chassis.
EXAMPLE
Local and remote messages
ControlNet network
D
H
R
I
O
C
N
B
5
5
5
0
C
N
B
5
5
5
0
DH+ network
P
L
C
5
Local
Message
Remote Message
In this task, you configure routing tables for 1756-DHRIO modules.
The modules use the routing tables to send the message to the destination.
Publication 1756-UM001D-EN-P - November 2001
17-4 Communicate with Another Controller Over a DH+
™
Network
In the following example, two ControlLogix chassis link different DH+ networks together via a ControlNet network.
EXAMPLE
Routing table
ControlNet node 1
D
H
R
I
O
C
N
B channel A
DH+ node 2
ControlLogix backplane link ID 10
ControlNet network link ID 100
DH+ network link ID 20
ControlNet node 2
D
H
R
I
O
C
N
B channel A
DH+ node 3
ControlLogix backplane link ID 30
DH+ network link ID 40
Routing table for the left 1756-DHRIO module Routing table for the right 1756-DHRIO module
42190 42191
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller Over a DH+
™
Network 17-5
Configure a routing table for each 1756-DHRIO module that is along the route or path to the other controller:
Step:
A. For each network and each
ControlLogix backplane in your system, designate a unique link ID number.
Detailed actions:
Here is an example:
D
H
R
O
I
C
N
B
ControlLogix backplane link ID 10
ControlNet network link ID 100
D
H
R
O
I
C
N
B
ControlLogix backplane link ID 30
DH+ network link ID 20
DH+ network link ID 40
B. Connect the hardware.
1. Install the 1756-DHRIO module.
2. Connect the chassis to a network that you can access from your workstation. For example, perform one of the following:
•
Connect a serial cable to your workstation and a ControlLogix controller that is in the same chassis as the 1756-DHRIO module.
•
Connect each chassis to an EtherNet/IP, ControlNet, or DH+ network.
3. Power-up each chassis.
Publication 1756-UM001D-EN-P - November 2001
17-6 Communicate with Another Controller Over a DH+
™
Network
Step:
C. Display the routing table.
Detailed actions:
1. Start RSLinx software.
To expand a network one level, do one of the following:
•
Double-click the network.
•
Select the network and press the
→
key.
•
Click the + sign.
−
Workstation
+
+
Linx Gateways, Ethernet
AB_DF1-x, DF1
2. Expand the network from step B. until you see the 1756-DHRIO module.
D. Define the link ID of the backplane in which the 1756-DHRIO module resides.
E. Define the link IDs of the
1756-DHRIO module.
F. Add the remaining communication module (s) that are in the backplane
(chassis).
−
Workstation
+
−
Linx Gateways, Ethernet
AB_DF1-x, DF1
− xx, 1756-Lx
−
Backplane, 1756-Ax
+ xx, 1756-DHRIO
3. Right-click the DHRIO module and choose Module Configuration .
4. Click the DHRIO Routing Table tab.
1. At the top of the routing table, right-click the backplane link and choose
Edit Module …
2. Type the link ID of the backplane and choose OK .
1. Right-click the 1756-DHRIO module and choose Edit Module …
2. For each channel, type the link ID of the corresponding network.
3. Choose OK .
1. Right-click the backplane and choose Add Module …
2. Select the type of device and choose OK .
3. Type or select the slot number of the module.
4. Type the link ID(s) of the network(s) to which the module is connected.
5. Choose OK .
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller Over a DH+
™
Network 17-7
Step:
G. To the network (s) created in the previous step, add the corresponding communication modules in other ControlLogix chassis:
Detailed actions:
1. Right-click the link ID and choose Add Module …
2. Select the type of device and choose OK .
3. Type the node or IP address of the module.
4. Type the link ID(s):
For this module:
1756-ENET
1756-CNB
DH+ Bridge
5. Choose OK .
Type the link ID(s): of the backplane of the module (i.e., the
ControlLogix chassis in which the module resides) in the routine table of the added module
H. Repeat steps F. and G. until the routing table depicts the required networks.
I. Download and save the configuration.
1. To download the configuration to the module, choose Apply .
2. To save a copy of the configuration as a file, choose the Save to File button.
Publication 1756-UM001D-EN-P - November 2001
17-8 Communicate with Another Controller Over a DH+
™
Network
Configure a 1756-DHRIO
Channel
If a:
PLC-5 controller
SLC 500 controller
ControlLogix controller
Determine if you must complete this task:
Sends a message to a:
ControlLogix controller
Over a: local network remote network
And there is: only one ControlLogix controller in the chassis more than one ControlLogix controller in the chassis
Then:
Complete this task.
Go to “Access ControlLogix Data” on page 17-20.
Go to “Access ControlLogix Data” on page 17-20.
In the following example, a 1756-DHRIO module automatically sends messages to a controller.
EXAMPLE
Route a local message
The 1756-DHRIO module automatically routes any local messages that it receives over Channel A to the controller that is in slot 2.
channel A
DH+ node 2
D
H
R
I
O
C
N
B
5
5
5
0
DH+ network
Local
Message
P
L
C
5
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller Over a DH+
™
Network 17-9
A. Install the 1756-DHRIO module.
B. Connect the chassis to a network that you can access from your workstation.
For example, perform one of the following:
•
Connect a serial cable to your workstation and a ControlLogix controller that is in the same chassis as the 1756-DHRIO module.
•
Connect the chassis to an EtherNet/IP or ControlNet network.
C. Power-up the chassis.
D. Start RSLinx software.
To expand a network one level, do one of the following:
•
Double-click the network.
•
Select the network and press the
→
key.
•
Click the + sign.
−
Workstation
+
+
Linx Gateways, Ethernet
AB_DF1-x, DF1
E. Expand the network from step B. until you see the 1756-DHRIO
module.
−
Workstation
+
−
Linx Gateways, Ethernet
AB_DF1-x, DF1
− xx, 1756-Lx
−
Backplane, 1756-Ax
+ xx, 1756-DHRIO
F. Right-click the DHRIO module and choose
Module Configuration.
G. Click the Channel Configuration tab.
Publication 1756-UM001D-EN-P - November 2001
17-10 Communicate with Another Controller Over a DH+
™
Network
42193
H. If Channel A is configured for DH+, type the slot number of the controller that you want to receive local messages over this channel.
I. If Channel B is configured for DH+, type the slot number of the controller that you want to receive local messages over this channel.
J. To download the configuration to the module, choose OK.
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller Over a DH+
™
Network 17-11
Add a 1756-DHRIO Module Determine if you must complete this task:
If a: Then:
ControlLogix controller sends the message Complete this task.
PLC-5 or SLC 500 controller sends the message
Go to “Access ControlLogix Data” on page 17-20.
A. Open the RSLogix 5000
™
project offline.
D.
42376
B. Right-click I/O Configuration and select New Module.
C. Select your series of 1756-DHRIO module and click OK.
E.
D. Type a name for the module (i.e., name_of_DHRIO ).
E. Type or select the slot number where the module is installed
F.
42440
Publication 1756-UM001D-EN-P - November 2001
17-12 Communicate with Another Controller Over a DH+
™
Network
F. How closely must any module in this slot match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
G. Click Next.
H.
I.
42401
H. Initially, do you want the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared (unchecked).
Select the check box.
EXAMPLE
Inhibit a module
Use the Inhibit Module check box to make it easier to test a system:
•
Initially, inhibit the module.
•
When you are ready to test the devices that are associated with the module, clear the check box.
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller Over a DH+
™
Network 17-13
I. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
J. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
17-14 Communicate with Another Controller Over a DH+
™
Network
Enter a Message e e e e e e condition ?
/ e e e e e condition ?
/
A. Enter a MSG instruction and associated input instruction (s).
Message
Message Control
MSG
? ...
EN
DN
ER
42424
B. In the MSG instruction, type a name for the message control tag and press the Enter key.
C. In the MSG instruction, right-click the message control tag and select New tag_name. (In older revisions of the software, the menu option is Create tag_name.
)
D. From the Scope list, select name_of_controller (controller), and click OK.
E.
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER
42424
E. Enter message.
EN.
where: message is the message control tag from step B.
F. If your message is to a PLC-5
®
or SLC 500
™
controller and it reads or writes integers (not REALs), use a buffer of INTs in the message.
•
ControlLogix controllers execute more efficiently and use less memory when working with 32-bit integers (DINTs). Use the
DINT data type for integers whenever possible.
•
PLC-5 and SLC 500 controllers require 16-bit integers.
•
Use an INT buffer in the message and move the data into or out of the buffer as required.
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller Over a DH+
™
Network 17-15
The following examples show how to use a buffer of INTs
EXAMPLE condition
Read integers from a PLC-5 controller
When condition turns on, reads 16-bit integer values (INTs) and stores them in
int_buffer. Then the FAL instruction moves the values to dint_array. This converts the values to 32-bit integers (DINTs), for use by other instructions in the ControlLogix controller.
message.EN
/
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER message.DN
fal_control
RES
FAL
File Arith/Logical
Control
Length
Position
Mode
Dest fal_control
?
0 all dint_array[fal_control.pos]
Expression int_buffer[fal_control.pos]
EN
DN
ER
EXAMPLE e condition
Write integers to a PLC-5 controller
When condition turns on, moves the values in dint_array to int_buffer. This converts the values to 16-bit integers (INTs). Then the message instruction sends int_buffer to the other controller.
fal_control
RES
FAL
File Arith/Logical
Control
Length
Position
Mode
Dest
Expression fal_control
?
0 all int_buffer[fal_control.pos] dint_array[fal_control.pos]
EN
DN
ER fal_control.DN
message.EN
/
Where: dint_array int_buffer
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER
Is an: array of DINTs that are used in the ControlLogix controller array of INTs with the same number of elements as dint_array
42424
Publication 1756-UM001D-EN-P - November 2001
17-16 Communicate with Another Controller Over a DH+
™
Network
Configure the Message
A. In the MSG instruction, click ... .
B. Select a configuration for the message:
Table 17.A Message to a ControlLogix controller
If you want to: read (receive) the data write (send) the data
For this item:
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Type or select:
CIP Data Table Read first element of the tag that contains data in the other controller number of elements to transfer first element of the tag (controller-scoped) in this controller for the data
CIP Data Table Write first element of the tag (controller-scoped) in this controller that contains the data number of elements to transfer first element of the tag for the data in the other controller
Table 17.B Message to a SLC 500 controller
If the data is: integer (s)
And you want to: read (receive) data floating-point (REAL) write (send) data read (receive) data
For this item:
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Message Type
Source Element
Number Of Elements
Destination Tag write (send) data Message Type
Source Tag
Number Of Elements
Destination Element
Type or select:
SLC Typed Read data table address in the SLC 500 controller (e.g., N7:10) number of integers to transfer first element of int_buffer
SLC Typed Write first element of int_buffer number of integers to transfer data table address in the SLC 500 controller (e.g., N7:10)
SLC Typed Read data table address in the SLC 500 controller (e.g., F8:0) number of values to transfer first element of the tag (controller-scoped) in this controller for the data
SLC Typed Write first element of the tag (controller-scoped) in this controller that contains the data number of values to transfer data table address in the SLC 500 controller (e.g., F8:0)
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller Over a DH+
™
Network 17-17
Table 17.C Message to a PLC-5 controller
If the data is: integer (s)
And you want to: read (receive) data write (send) data floating-point (REAL) read (receive) data write (send) data
For this item:
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Type or select:
PLC5 Typed Read data table address in the PLC-5 controller (e.g., N7:10) number of integers to transfer first element of int_buffer
PLC5 Typed Write first element of int_buffer number of integers to transfer data table address in the PLC-5 controller (e.g., N7:10)
PLC5 Typed Read data table address in the PLC-5 controller (e.g., F8:0) number of values to transfer first element of the tag (controller-scoped) in this controller for the data
PLC5 Typed Write first element of the tag (controller-scoped) in this controller that contains the data number of values to transfer data table address in the PLC-5 controller (e.g., F8:0)
C. Click the Communication tab.
D. Click Browse …
E. Select the 1756-DHRIO module and click OK.
Publication 1756-UM001D-EN-P - November 2001
17-18 Communicate with Another Controller Over a DH+
™
Network
For a message to a:
ControlLogix controller
PLC-5 controller
SLC 500 controller
F. Specify the remaining communication properties:
42466
Type or select:
1. Type a comma [ , ].
2. Type the port number from which the message exits:
For this port: backplane port of a 1756 controller or module
ControlNet port of a 1756-CNB module
EtherNet/IP port of a 1756-ENBx or -ENET module channel A of a 1756-DHRIO module channel B of a 1756-DHRIO module
Specify:
1
2
3
3. Type a comma [ , ].
4. Type the address of the next hardware device (e.g., controller, module):
For a device on a: Specify:
ControlLogix backplane slot number
ControlNet network node number
EtherNet/IP network IP address or DNS name
DH+ network 8# followed by the node number (e.g., 8#37)
5. Repeat steps 1. through 4. until you have specified the destination controller.
Publication 1756-UM001D-EN-P - November 2001
1.
DH+
2. channel that is connected to the DH+ network
3. source link:
For a: local message remote message
Specify:
0 (zero) link ID of the ControlLogix backplane (local chassis)
4. destination link:
For a: local message remote message
Specify:
0 (zero) link ID of the destination network
5. in octal, the DH+ node address of the PLC-5or SLC 500 controller
42467
Communicate with Another Controller Over a DH+
™
Network 17-19
The following examples depicts a communication path over an DH+ network:
EXAMPLE
DH+ path channel A
5
0
5
5
D
H
R
I
O
DH+ network
Message
5
0
5
5
D
H
R
I
O
DH+ address 10 (octal) washer, 2, 8#10, 1, 0 where: indicates: washer name of the 1756-DHRIO module
2
8#10
1
0 channel A of the 1756-DHRIO module octal address of the 1756-DHRIO module in the destination chassis backplane port of the 1756-DHRIO module in the destination chassis slot number of the destination controller
If the message is to a:
PLC-5 controller
SLC 500 controller
Logix5000 controller:
•
ControlLogix controller
•
FlexLogix controller
G. Select a cache option:
Then:
Disregard the Cache Connection check box.
How many Logix5000 controllers does this controller send messages to?
If: Then:
Leave the Cache Connection check box selected (checked).
16 or less Logix5000 controllers more than 16 Logix5000 controllers
1. Select16 Logix5000 controllers that require the most frequent messages.
2. Is this message to one of those controllers?
If:
Yes
No
Then
Leave the Cache Connection check box checked.
Clear the Cache Connection check box.
H. Click OK.
Publication 1756-UM001D-EN-P - November 2001
17-20 Communicate with Another Controller Over a DH+
™
Network
Stagger the Messages As you add messages to your project, you may have to coordinate the execution of the messages. To avoid errors and assure that each message is processed, follow these rules:
Rule 1: Enable no more than 16 messages at one time (including block transfers).
Rule 2: Enable no more than 10 of the following types of messages at one time:
•
CIP data table reads or writes that are not cached
•
CIP generic
•
PLC2, PLC3, PLC5, or SLC (all types)
• block transfer reads or writes that are not cached
If the number of messages in your application exceeds rules 1 and 2, then stagger the execution of your messages. Here are some options:
•
Send each message in sequence
•
Send the messages in groups that are within the limits of rules 1 and 2
Access ControlLogix Data Complete this task for any message that a PLC-5 or SLC 500 controller sends to a ControlLogix controller over a DH+ network.
If the controllers are on: And there is: same network only one ControlLogix controller in the chassis more than one ControlLogix controller in the chassis different networks
Then the message is: local remote remote
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller Over a DH+
™
Network 17-21
IMPORTANT
This procedure uses RSLogix 5
™
or RSLogix 500
™ software, revision 3.x.
A. Using either RSLogix 5 or RSLogix 500 software, as required, open the project for the PLC-5 or SLC 500 controller.
B. If the message is from a SLC 500 controller, in the MSG instruction, specify the following:
For this:
Target Device
Local/Remote
For a: local message remote message
Select:
PLC5
Local
Remote
C. Display the set-up screen for the message.
D. Select a set-up:
Table 17.D Set-up for a message from a PLC-5 controller to a ControlLogix controller
For a: local message
In this item:
Communication Command
Data Table Address (This PLC-5)
Size in Elements
Port Number
Data Table Address (Target Device)
Local DH+ Node (Octal)
Local/Remote
Specify:
PLC-5 Typed Read or PLC-5 Typed Write starting address of the data in the PLC-5 controller number of elements to read or write port through which the message exits
Type, in quotation marks [“ “], the name of the tag in the ControlLogix controller (e.g., “count”).
node number of the 1756-DHRIO module that is in the same chassis as the ControlLogix controller
Local
Publication 1756-UM001D-EN-P - November 2001
17-22 Communicate with Another Controller Over a DH+
™
Network
Table 17.D Set-up for a message from a PLC-5 controller to a ControlLogix controller (Continued)
For a: remote message
In this item:
Communication Command
Data Table Address (This PLC-5)
Size in Elements
Port Number
Data Table Address (Target Device)
Local DH+ Node (Octal)
Local/Remote
Remote Link Type
Remote Station Address
Remote Bridge Link ID
Specify:
PLC-5 Typed Read or PLC-5 Typed Write starting address of the data in the PLC-5 controller number of elements to read or write port through which the message exits
Type, in quotation marks [“ “], the name of the tag in the ControlLogix controller (e.g., “count”).
node number of the 1756-DHRIO module that is on the same network as the PLC-5 controller
Remote
Data Highway slot number of the ControlLogix controller, converted to octal link ID of the backplane in which the ControlLogix controller resides
Table 17.E Set-up for a message from a SLC 500 controller to a ControlLogix controller
For a: local message remote message
In this item:
Communication Command
Data Table Address (This Controller)
Size in Elements
Channel
Data Table Address (Target Device)
Local Node Addr (octal)
Communication Command
Data Table Address (This Controller)
Size in Elements
Channel
Data Table Address (Target Device)
Local Bridge Addr (octal)
Remote Bridge Addr
Remote Station Address
Remote Bridge Link ID
Specify:
PLC5 Read or PLC5 Write starting address of the data in the SLC 500 controller number of elements to read or write
1
Type, in quotation marks [“ “], the name of the tag in the ControlLogix controller (e.g., “count”).
node number of the 1756-DHRIO module that is in the same chassis as the ControlLogix controller
PLC5 Read or PLC5 Write starting address of the data in the SLC 500 controller number of elements to read or write
1
Type, in quotation marks [“ “], the name of the tag in the ControlLogix controller (e.g., “count”).
node number of the 1756-DHRIO module that is on the same network as the SLC 500 controller
0 slot number of the ControlLogix controller, converted to octal link ID of the backplane in which the ControlLogix controller resides
Publication 1756-UM001D-EN-P - November 2001
1
Chapter
18
Route PLC-5
®
or SLC 500
™
Messages From a
DH+
™
Network
When to Use This
Procedure
Use this procedure to route a message from a PLC-5 or SLC 500 controller that is on a DH+ network to a PLC-5 or SLC 500 controller that is on a different network. The controller that receives the message can be on a:
• different DH+ network
• different type of network, such as a ControlNet network
In the following example, ControlLogix chassis route messages to controllers that are on different networks.
Route messages from a DH+ network
EXAMPLE
ControlNet node 3
C
5
P
L
Remote Message
D
H
R
I
O
C
N
B
ControlNet node 1 channel A
DH+ node 2
ControlNet network
ControlLogix backplane
DH+ network
ControlNet node 2
D
H
R
I
O
C
N
B channel A
DH+ node 3
ControlLogix backplane
DH+ network
5
0
0
S
L
C
DH+ node 1
Remote Message
C
5
P
L
DH+ node 4
Publication 1756-UM001D-EN-P - November 2001
18-2 Route PLC-5
®
or SLC 500
™
Messages From a DH+
™
Network
Configure Routing Tables In this task, you configure routing tables for 1756-DHRIO modules.
The modules use the routing tables to send the message to the destination.
In the following example, two ControlLogix chassis link different DH+ networks together via a ControlNet network.
Routing table
EXAMPLE
ControlNet node 1
D
H
R
I
O
C
N
B channel A
DH+ node 2
ControlLogix backplane link ID 10
ControlNet network link ID 100
DH+ network link ID 20
ControlNet node 2
D
H
R
I
O
C
N
B channel A
DH+ node 3
ControlLogix backplane link ID 30
DH+ network link ID 40
Routing table for the left 1756-DHRIO module Routing table for the right 1756-DHRIO module
42190 42191
Publication 1756-UM001D-EN-P - November 2001
Route PLC-5
®
or SLC 500
™
Messages From a DH+
™
Network 18-3
Configure a routing table for each 1756-DHRIO module that is along the route or path to the other controller:
Step:
A. For each network and each
ControlLogix backplane in your system, designate a unique link ID number.
Detailed actions:
Here is an example:
D
H
R
O
I
C
N
B
ControlLogix backplane link ID 10
ControlNet network link ID 100
D
H
R
O
I
C
N
B
ControlLogix backplane link ID 30
DH+ network link ID 20
DH+ network link ID 40
B. Connect the hardware.
1. Install the 1756-DHRIO module.
2. Connect the chassis to a network that you can access from your workstation. For example, perform one of the following:
•
Connect a serial cable to your workstation and a ControlLogix controller that is in the same chassis as the 1756-DHRIO module.
•
Connect each chassis to an EtherNet/IP, ControlNet, or DH+ network.
3. Power-up each chassis.
Publication 1756-UM001D-EN-P - November 2001
18-4 Route PLC-5
®
or SLC 500
™
Messages From a DH+
™
Network
Step:
C. Display the routing table.
Detailed actions:
1. Start RSLinx software.
To expand a network one level, do one of the following:
•
Double-click the network.
•
Select the network and press the
→
key.
•
Click the + sign.
−
Workstation
+
+
Linx Gateways, Ethernet
AB_DF1-x, DF1
2. Expand the network from step B. until you see the 1756-DHRIO module.
D. Define the link ID of the backplane in which the 1756-DHRIO module resides.
E. Define the link IDs of the
1756-DHRIO module.
F. Add the remaining communication module (s) that are in the backplane
(chassis).
−
Workstation
+
−
Linx Gateways, Ethernet
AB_DF1-x, DF1
− xx, 1756-Lx
−
Backplane, 1756-Ax
+ xx, 1756-DHRIO
3. Right-click the DHRIO module and choose Module Configuration .
4. Click the DHRIO Routing Table tab.
1. At the top of the routing table, right-click the backplane link and choose
Edit Module …
2. Type the link ID of the backplane and choose OK .
1. Right-click the 1756-DHRIO module and choose Edit Module …
2. For each channel, type the link ID of the corresponding network.
3. Choose OK .
1. Right-click the backplane and choose Add Module …
2. Select the type of device and choose OK .
3. Type or select the slot number of the module.
4. Type the link ID(s) of the network(s) to which the module is connected.
5. Choose OK .
Publication 1756-UM001D-EN-P - November 2001
Route PLC-5
®
or SLC 500
™
Messages From a DH+
™
Network 18-5
Step:
G. To the network (s) created in the previous step, add the corresponding communication modules in other ControlLogix chassis:
Detailed actions:
1. Right-click the link ID and choose Add Module …
2. Select the type of device and choose OK .
3. Type the node or IP address of the module.
4. Type the link ID(s):
For this module:
1756-ENET
1756-CNB
DH+ Bridge
5. Choose OK .
Type the link ID(s): of the backplane of the module (i.e., the
ControlLogix chassis in which the module resides) in the routine table of the added module
H. Repeat steps F. and G. until the routing table depicts the required networks.
I. Download and save the configuration.
1. To download the configuration to the module, choose Apply .
2. To save a copy of the configuration as a file, choose the Save to File button.
Publication 1756-UM001D-EN-P - November 2001
18-6 Route PLC-5
®
or SLC 500
™
Messages From a DH+
™
Network
Configure a PLC-5 or SLC
500 Message
IMPORTANT
This procedure uses RSLogix 5
™
or RSLogix 500
™ software, revision 3.x.
A. Using either RSLogix 5 or RSLogix 500 software, as required, open the project for the controller that sends the message.
B. If a SLC 500 controller sends the message, in the MSG instruction, specify the following:
For this:
Target Device
Local/Remote
For a message to a:
SLC 500 controller
PLC-5 controller
Select:
500CPU
PLC5
Remote
C. Display the set-up screen for the message.
Publication 1756-UM001D-EN-P - November 2001
Route PLC-5
®
or SLC 500
™
Messages From a DH+
™
Network 18-7
D. Select a set-up:
Specify: For a message from a:
PLC-5 controller
In this item:
Communication Command
Data Table Address (This PLC-5)
Size in Elements
Port Number
Data Table Address (Target Device)
Local DH+ Node (Octal)
SLC 500 controller
Local/Remote
Remote Link Type
Remote Station Address
Remote Bridge Link ID
Communication Command
Data Table Address (This Controller)
Size in Elements
Channel
Data Table Address (Target Device)
Local Bridge Addr (octal)
Remote Bridge Addr
Remote Station Address
Remote Bridge Link ID
PLC-5 Typed Read or PLC-5 Typed Write starting address of the data in the controller that sends the message number of elements to read or write port through which the message exits starting address of the data in the controller that receives the message node number of the 1756-DHRIO module that is on the same network as the controller that sends the message
Remote
Data Highway node number of the controller that receives the message link ID of the DH+ network of the controller that receives the message
PLC5 Read or PLC5 Write starting address of the data in the controller that sends the message number of elements to read or write
1 starting address of the data in the controller that receives the message node number of the 1756-DHRIO module that is on the same network as the controller that sends the message
0 node number of the controller that receives the message link ID of the network of the controller that receives the message
Publication 1756-UM001D-EN-P - November 2001
18-8 Route PLC-5
®
or SLC 500
™
Messages From a DH+
™
Network
Notes:
Publication 1756-UM001D-EN-P - November 2001
1
Chapter
19
Communicate with Another Controller over a
DH-485 Network
When to Use this Procedure Use this procedure to get information to and from controllers over a
DH-485 network.
FlexLogix™ controller
DH-485 network
1761-NET-AIC+ connection from FlexLogix controller to port 1 or port 2
1747-AIC
ControlLogix™ controller
1761-NET-AIC+ connection from ControlLogix controller to port 1 or port 2
1761-NET-AIC+
SLC 5/03™ controller
MicroLogix™ controller
CompactLogix™ controller
42589
Publication 1756-UM001D-EN-P - November 2001
19-2 Communicate with Another Controller over a DH-485 Network
How to Use This Procedure To complete this procedure, do the following steps:
•
Step 1: Connect the Controller to an AIC+
•
Step 2: Configure the Serial Port
•
•
•
•
Publication 1756-UM001D-EN-P - November 2001
Step 1: Connect the
Controller to an AIC+
Communicate with Another Controller over a DH-485 Network 19-3
In this step, you install a 1761-NET-AIC Advanced Interface Converter
(AIC+), which connects the ControlLogix controller to the DH-485 network.
1761-NET-AIC Advanced Interface Converter (AIC+)
RS-485 port port 2: mini-DIN 8 RS-232 port 1: DB-9 RS-232, DTE dc power source selector switch terminals for external 24V dc power supply
A. Install an AIC+:
1. Connect the AIC+ to a 24 VDC power supply.
2. On the DC SOURCE switch, select External.
3. Connect the RS-485 port to the DH-485 network.
B. Connect the serial port of the ControlLogix controller to either port 1 or port 2 of the AIC+:
If you connect to this port: port 1
DB-9 RS-232, DTE connection port 2 mini-DIN 8 RS-232 connection
Over this distance:
< 45 cm (17.7 in)
> 45 cm (17.7 in)
< 45 cm (17.7 in)
> 45 cm (17.7 in)
Use this cable:
1761-CBL-AC00
1756-CP3
1761-CBL-AP00
1761-CBL-PM02
For additional information, see AIC+ Advanced Interface Converter
User Manual, publication 1761-6.4.
Publication 1756-UM001D-EN-P - November 2001
19-4 Communicate with Another Controller over a DH-485 Network
Step 2: Configure the Serial
Port
42376
A. Right-click Controller name_of_controller and select
Properties.
B. Click the Serial Port tab.
42587
C. Select System (default).
D. Select 19200.
E. Click Apply.
F. Click the System Protocol tab.
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller over a DH-485 Network 19-5
42588
G. Select DH485.
H. Type the address of the controller on the DH-485 network.
Follow these guidelines:
•
Address 0 is typically reserved for the programming tool.
•
Address 1 is typically left open to swap out a controller. Most controllers have a default address of 1.
•
The maximum address is 31.
•
To optimize network performance, assign addresses in sequential order.
•
Assign initiators, such as personal computers, the lowest addresses. This minimizes the time required to initialize the network.
I. Click OK.
Publication 1756-UM001D-EN-P - November 2001
19-6 Communicate with Another Controller over a DH-485 Network
Step 3: Enter a Message e e e e e e condition ?
/ e e e e e condition ?
/
A. Enter a MSG instruction and associated input instruction (s).
Message
Message Control
MSG
? ...
EN
DN
ER
42424
B. In the MSG instruction, type a name for the message control tag and press the Enter key.
C. In the MSG instruction, right-click the message control tag and select New tag_name.
(In older revisions of the software, the menu option is Create tag_name.
)
D. From the Scope list, select name_of_controller (controller), and click OK.
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER
42424
E. Enter message.
EN.
where: message is the message control tag from step B.
F. If your message is to an SLC 500
™
or MicroLogix
™
controller
and it reads or writes integers (not REALs), use a buffer of INTs in the message.
•
ControlLogix controllers execute more efficiently and use less memory when working with 32-bit integers (DINTs). Use the
DINT data type for integers whenever possible.
•
SLC 500 and MicroLogix controllers require 16-bit integers.
•
Use an INT buffer in the message and move the data into or out of the buffer as required.
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller over a DH-485 Network 19-7
The following examples show how to use a buffer of INTs
EXAMPLE condition
Read integers from a MicroLogix controller
When condition turns on, reads 16-bit integer values (INTs) and stores them in
int_buffer. Then the FAL instruction moves the values to dint_array. This converts the values to 32-bit integers (DINTs), for use by other instructions in the ControlLogix controller.
message.EN
/
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER message.DN
fal_control
RES
FAL
File Arith/Logical
Control
Length
Position
Mode
Dest fal_control
?
0 all dint_array[fal_control.pos]
Expression int_buffer[fal_control.pos]
EN
DN
ER
EXAMPLE e condition
Write integers to a MicroLogix controller
When condition turns on, moves the values in dint_array to int_buffer. This converts the values to 16-bit integers (INTs). Then the message instruction sends int_buffer to the other controller.
fal_control
RES
FAL
File Arith/Logical
Control
Length
Position
Mode
Dest
Expression fal_control
?
0 all int_buffer[fal_control.pos] dint_array[fal_control.pos]
EN
DN
ER fal_control.DN
message.EN
/
Where: dint_array int_buffer
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER
Is an: array of DINTs that are used in the ControlLogix controller array of INTs with the same number of elements as dint_array
42424
Publication 1756-UM001D-EN-P - November 2001
19-8 Communicate with Another Controller over a DH-485 Network
Step 4: Configure the
Message
A. In the MSG instruction, click ... .
B. Select a configuration for the message:
Table 19.A Message to a ControlLogix or FlexLogix controller
If the data is: structure (s)
And you want to: read (receive) the data
For this item:
Message Type
Source Element not structure (s) write (send) the data
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element read (receive) the data Message Type
Source Element write (send) the data
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Type or select:
CIP Data Table Read first element of the tag that contains data in the other controller number of elements to transfer first element of the tag (controller-scoped) in this controller for the data
CIP Data Table Write first element of the tag (controller-scoped) in this controller that contains the data number of elements to transfer first element of the tag for the data in the other controller
PLC5 Typed Read
@ name where: name is the first element of the tag that contains data in the other controller.
number of elements to transfer first element of the tag (controller-scoped) in this controller for the data
PLC5 Typed Write first element of the tag (controller-scoped) in this controller that contains the data number of elements to transfer
@ name where: name is the first element of the tag for the data in the other controller.
Publication 1756-UM001D-EN-P - November 2001
Communicate with Another Controller over a DH-485 Network 19-9
Table 19.B Message to an SLC 500 or MicroLogix controller
If the data is: integer (s) floating-point (REAL)
And you want to: read (receive) data write (send) data read (receive) data
For this item:
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Message Type
Source Element
Number Of Elements
Destination Tag write (send) data Message Type
Source Tag
Number Of Elements
Destination Element
Type or select:
SLC Typed Read data table address in the SLC 500 controller (e.g., N7:10) number of integers to transfer first element of int_buffer
SLC Typed Write first element of int_buffer number of integers to transfer data table address in the SLC 500 controller (e.g., N7:10)
SLC Typed Read data table address in the SLC 500 controller (e.g., F8:0) number of values to transfer first element of the tag (controller-scoped) in this controller for the data
SLC Typed Write first element of the tag (controller-scoped) in this controller that contains the data number of values to transfer data table address in the SLC 500 controller (e.g., F8:0)
C. Click the Communication tab.
D. In the Path box, type the following path:
2, station_address where: station_address is the DF1 address of the controller that is receiving the message.
E. Leave the communication method at the default settings of:
•
CIP
•
Cache Connections (This check box does not apply to messages from the serial port.)
F. Click OK.
Publication 1756-UM001D-EN-P - November 2001
19-10 Communicate with Another Controller over a DH-485 Network
Step 5: Check the LED Once you download the project to the controller, use the RS232 LED, on the front of the controller, to determine if there are other stations on the DH-485 network.
Step 6: Stagger the
Messages
If the RS232 LED is: flashing steady
42525
Then:
There are no other stations on the DH-485 network.
There is at least one other station on the DH-485 network.
As you add messages to your project, you may have to coordinate the execution of the messages. To avoid errors and assure that each message is processed, follow these rules:
Rule 1: Enable no more than 16 messages at one time (including block transfers).
Rule 2: Enable no more than 10 of the following types of messages at one time:
•
CIP data table reads or writes that are not cached
•
CIP generic
•
PLC2, PLC3, PLC5, or SLC (all types)
• block transfer reads or writes that are not cached
If the number of messages in your application exceeds rules 1 and 2, then stagger the execution of your messages. Here are some options:
•
Send each message in sequence
•
Send the messages in groups that are within the limits of rules 1 and 2
Publication 1756-UM001D-EN-P - November 2001
1
When to Use This
Procedure
Chapter
20
Communicate Over a Remote I/O Network
Use this procedure to monitor and control I/O over a remote I/O network.
Remote I/O Network
ControlLogix Chassis with
1756-DHRIO Module
PanelView Terminal
1771-ASB Adapter
PLC-5 Controller
1791 Block I/O
1794-ASB Adapter
1747-ASB Adapter
42471
Publication 1756-UM001D-EN-P - November 2001
20-2 Communicate Over a Remote I/O Network
How to Use This Procedure
TIP
To create and manage tags as you program your logic, use these tips:
•
To create a tag:
1. Type the name for the tag.
2. Right-click the tag and choose New "tag_name".
•
To change the name of a tag:
Right-click the tag and choose Edit "tag_name"
Properties.
If you have not already done so in a previous procedure, do the following preliminary tasks:
•
To complete this procedure, do the following tasks:
•
•
•
Communicate with Block Transfer Modules, using either of these procedures:
– Read or Write Data To or From a Block Transfer Module
– Read or Write Data To or From Multiple Block Transfer
•
•
•
Publication 1756-UM001D-EN-P - November 2001
Communicate Over a Remote I/O Network 20-3
Add a 1756-DHRIO Module
1. Open the RSLogix 5000
™
project offline.
42376
2. Right-click I/O Configuration and select New Module.
3. Select your series of 1756-DHRIO module and click OK.
4. Type a name for the module (i.e., name_of_DHRIO ).
5. Type or select the slot number where the module is installed
6. For the channel that is connected to the remote I/O network, select RIO.
7. Select the baud rate of the network.
42440
Publication 1756-UM001D-EN-P - November 2001
20-4 Communicate Over a Remote I/O Network
8. How closely must any module in this slot match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
9. Click Next.
42401
10. Type the rate at which the module must communicate with the controller.
11. Initially, do you want to prevent the module from communicating with the controller?
If:
Yes
No
Then:
Select the check box.
Leave the check box cleared (unchecked).
EXAMPLE
Inhibit a module
Use the Inhibit Module check box to make it easier to test a system:
•
Initially, inhibit the module.
•
When you are ready to test the devices that are associated with the module, clear the check box.
Publication 1756-UM001D-EN-P - November 2001
Communicate Over a Remote I/O Network 20-5
12. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
13. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
20-6 Communicate Over a Remote I/O Network
Add a Remote I/O Adapter In this task, you add remote I/0 adapters for each rack, or portion of a rack, in the chassis:
If the chassis contains: less than 1 rack of I/O
1 rack of I/O more than 1 rack of I/O
Then add:
1 adapter for the chassis
1 adapter for each rack
EXAMPLE
Add remote I/O adapters
The I/O configuration of the controller requires two remote I/O adapters for this chassis. One adapter is for rack 1, and the second adapter is for the 1/2 of rack 2.
rack 1 rack 2
1
A
S
B
1
7
7
0 1 2 3 4 5 6 7 8 9 10 11
−
I/O Configuration
−
[x] 1756-DHRIO/x name_of_DHRIO
1. Right-click name_of_DHRIO and select New Module.
2. Select an adapter module and click OK.
If the I/O is:
1747
1771
1791
1794
Then select:
1747-ASB
1771-ASB
RIO-ADAPTER
1794-ASB
Publication 1756-UM001D-EN-P - November 2001
Communicate Over a Remote I/O Network 20-7
42441
3. Type a name for the adapter module. Use a name that identifies the I/O of this adapter.
4. Type or select rack number of this module.
5. Select the channel on 1756-DHRIO module that is network is connected to.
6. Type or select the starting group number.
7. For the rack number of this adapter, select the number of groups in this chassis. Round up to the nearest even number of groups.
8. Click Next.
42401
9. Type the rate at which the I/O of this adapter must update.
10. Initially, do you want the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared
(unchecked).
Select the check box.
Notes:
When you test this portion of the system, clear the check box.
Publication 1756-UM001D-EN-P - November 2001
20-8 Communicate Over a Remote I/O Network
11. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
12. Click Finish.
Publication 1756-UM001D-EN-P - November 2001
Add a Block Transfer
Module
Communicate Over a Remote I/O Network 20-9
Do any modules require block transfers?
If:
Yes
No
Then:
Complete the steps in this section (Add a Block Transfer Module)
Go to Address I/O on page 20-26..
Though not required, when the module is in the I/O configuration, you gain these advantages:
•
It is easier to complete the communication path to the module.
•
The I/O configuration provides documentation about the module.
−
I/O Configuration
−
[x] 1756-DHRIO/x name_of_DHRIO
−
Ch <rack group size> RIO-ADAPTER name_of_adapter
1. Right-click name_of_adapter and select New Module.
2. Select RIO-MODULE and click OK.
3. Type a name for the module.
4. Type or select the group number of the module.
5. Type or select the slot number that the module is in.
6. Click Finish.
42442
Publication 1756-UM001D-EN-P - November 2001
20-10 Communicate Over a Remote I/O Network
Read or Write Data To or
From a Block Transfer
Module
Use this procedure to transfer data to or from a module that requires block transfers.
Block Transfer Read
Data from a
BT module
Word 1
Word 2
Word 3
Buffer of INTs int_buffer_read[0] int_buffer_read[1] int_buffer_read[2]
DINTs for use in the project dints_input[0] dints_input[1] dints_input[2]
1. The MSG instruction reads 16-bit integers (INTs) from the BT module and stores them in a temporary array of INTs.
2. An FAL instruction converts the INTs to 32-bit integers (DINTs).
Logix5000 controllers execute more efficiently and use less memory when working with DINTs.
Block Transfer Write
DINTs from the project dints_output[0] dints_output[1] dints_output[2]
Buffer of INTs int_buffer_write[0] int_buffer_write[1] int_buffer_write[2]
Data for a BT module
Word 1
Word 2
Word 3
1. An FAL instruction converts the 32-bit integers (DINTs) from the
Logix5000 controller to 16-bit integers (INTs):
•
Logix5000 controllers execute more efficiently and use less memory when working with DINTs.
•
The instruction stores the data in a temporary array of INTs.
2. The MSG instruction writes the INTs from the temporary array to
BT module.
Publication 1756-UM001D-EN-P - November 2001
Communicate Over a Remote I/O Network 20-11
Read Data From a Block Transfer Module
1. Enter the following rung:
Reads 16-bit integers (INTs) from the module and stores them in int_buffer_read . (Only include the msg_write.EN
tag and associated instruction if you also send a block transfer write message to the same module.) msg_read.EN
/ msg_write.EN
/
MSG
Type - Block Transfer Read
Message Control msg_read ...
EN
DN
ER
42463
Tag Name: msg_read msg_write
Description: block transfer read message
Data Type:
MESSAGE block transfer write message to the same module MESSAGE
Scope: name_of_controller
(controller) name_of_controller
(controller)
Publication 1756-UM001D-EN-P - November 2001
20-12 Communicate Over a Remote I/O Network
2. Enter the following rung:
When msg_read is done, the FAL instruction moves the values in int_buffer_read to dints_input . This converts the values to 32-bit integers (DINTs), for use by other instructions in the controller.
msg_read.DN
ints_to_dints
RES
FAL
File Arith/Logical
Control
Length
Position
Mode
Dest
Expression ints_to_dints
0
ALL dints_input[ints_to_dints.POS] int_buffer_read[ints_to_dints.POS]
EN
DN
ER
42463
Tag Name: int_buffer_read ints_to_dints
FAL Length dint_inputs
Description: Data Type: array that stores the data from the BT module INT [ length ] converts the 16-bit integers from the BT module to 32-bit integers for the Logix5000 controller number of elements to convert
CONTROL immediate value equal to length array that stores the input data from the module for use by the controller
DINT [ length ]
Scope: name_of_controller
(controller) name_of_controller
(controller) name_of_controller
(controller)
Where: length
Is the: number of elements to transfer
Publication 1756-UM001D-EN-P - November 2001
Communicate Over a Remote I/O Network 20-13
Write Configuration or Output Data To a Block Transfer Module
1. Enter the following rung:
The application writes configuration and output data to dints_output , which is an array of DINTs. Before the controller sends the data to the module, the FAL instruction moves the values to int_buffer_write . This converts them to 16-bit integers (INTs). (Only include the msg_read.EN
tag and associated instruction if you also send a block transfer read message to the same module.) msg_read.EN
/ msg_write.EN
/ dints_to_ints
RES
FAL
File Arith/Logical
Control
Length
Position
Mode dints_to_ints
0
ALL int_buffer_write[dints_to_ints.POS] Dest
Expression dints_output[dints_to_ints.POS]
EN
DN
ER
42463
Tag Name: msg_read msg_write
Description: block transfer read message to the same module block transfer write message
Data Type:
MESSAGE
MESSAGE dints_to_ints
FAL Length converts the 32-bit integers from the Logix5000 controller to 16-bit integers for the BT module number of elements to convert
CONTROL immediate value equal to length int_buffer_write array that stores the data to send to the BT module as 16-bit integers dints_output array that stores the output data that other instructions produce for the module
INT [ length ]
DINT [ length ]
Scope: name_of_controller
(controller) name_of_controller
(controller) name_of_controller
(controller) name_of_controller
(controller) name_of_controller
(controller)
Where: length
Is the: number of elements to transfer
2. Enter the following rung:
After the FAL instruction converts the DINTs to INTs, the MSG instruction sends the data in int_buffer_write to the module.
dints_to_ints.DN
MSG
Type - Block Transfer Write
Message Control msg_write ...
EN
DN
ER
42463
Publication 1756-UM001D-EN-P - November 2001
20-14 Communicate Over a Remote I/O Network
If you want to: read input data write configuration or output data
Configure the Messages
1. In the MSG instruction, click ... .
2. Select a configuration:
For this item:
Message Type
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Type or select:
Block Transfer Read number of INTs to read int_buffer_read [0]
Block Transfer Write int_buffer_write [0] number of INTs to write
3. Click the Communication tab.
4. Click Browse …
5. Select the RIO-MODULE and click OK.
6. How many devices require block transfer instructions?
If:
16 or less devices more than 16 devices
Then:
Leave the Cache Connection check box selected (checked).
A. Select 16 devices that require the most frequent updates.
B. Is this message to one of those devices?
If:
Yes
No
Then
Leave the Cache Connection check box selected (checked).
Clear the Cache Connection check box.
7. Click OK.
Publication 1756-UM001D-EN-P - November 2001
Communicate Over a Remote I/O Network 20-15
Read or Write Data To or
From Multiple Block
Transfer Modules
Input data from the first BT module
Input data from the next BT module
Data from a
BT module
Word 1
Word 2
Word 3
Word 1
Word 2
Word 3
Word 4
Word 5
Use this procedure to program a single MSG instruction to read data from multiple block transfer modules.
The following diagram shows the flow of data for a block transfer read. The block transfer write sequence works in the opposite order.
Buffer of INTs
BT_int_buffer_read[0]
BT_int_buffer_read[1]
BT_int_buffer_read[2]
BT_int_buffer_read[0]
BT_int_buffer_read[1]
BT_int_buffer_read[2]
BT_int_buffer_read[3]
BT_int_buffer_read[4]
DINTs for use in the project
BT_input[0,0]
BT_input[0,1]
BT_input[0,2]
BT_input[0,3]
BT_input[0,4]
BT_input[1,0]
BT_input[1,1]
BT_input[1,2]
BT_input[1,3]
BT_input[1,4]
Input data that is allocated for the first BT module
Input data that is allocated for the next BT module
1. The MSG instruction reads 16-bit integers (INTs) from the first
BT module and stores them in a temporary array of INTs.
2. An FAL instruction converts the INTs to 32-bit integers (DINTs).
Logix5000 controllers execute more efficiently and use less memory when working with DINTs.
3. The MSG instruction reads the next module. This procedures lets you vary the number of INTs that you read from each module.
4. The FAL instruction moves the data to the next element of dimension 0 of the DINT array. Each element of this dimension corresponds to a different BT module.
Publication 1756-UM001D-EN-P - November 2001
20-16 Communicate Over a Remote I/O Network
To read multiple block transfer modules:
•
Create a User-Defined Data Type
•
•
Send the Message to a BT Module
•
Enter the Message Properties for Each Module
•
•
To write data to multiple block transfer modules, see the logic on
Publication 1756-UM001D-EN-P - November 2001
Communicate Over a Remote I/O Network 20-17
Create a User-Defined Data Type
Create the following data type. You will use this for the array that stores the message properties for each module.
+
+
+
Controller
Tasks
−
Motion Groups
Trends
Data Types
User-Defined 1. Right-click and select New
Data Type.
2. Assign the following:
Name
Description
Members
Name
REQ_LEN
BT_CONFIGURATION
Configuration properties for a block transfer message to a specific module
Data Type
INT
Style
Decimal
+
Channel
Rack
Group
Slot
Path
SINT
SINT
SINT
SINT
STRING
ASCII
Octal
Decimal
Decimal
Description number of elements (INTs) to read or write channel (A or B) of the 1756-DHRIO module to which this module is connected rack number of the module (octal) group number of the module slot number of the module path to the 1756-DHRIO module (Use the
Message Path editor to assign the path.)
Publication 1756-UM001D-EN-P - November 2001
20-18 Communicate Over a Remote I/O Network
Create the Data Array
1. Enter the following rung:
The SIZE instruction determines the number of elements in the first dimension (Dim 0) of the BT_input array. Since this dimension contains one element for each BT module, this instruction determines how many modules the MSG instruction must read. A subsequent rung uses this number to determine the end of the sequence of MSGs.
43014
2. Right-click each undefined tag, select New “name”, and assign the following properties:
Name: Description:
BT_input data from each BT module
•
The first dimension represents each module.
•
The second dimension represents the data from a module.
BT_input_modules number of modules that the MSG instruction must read
Data Type: Scope:
DINT [ number,length ] name_of_controller
(controller)
DINT name_of_controller
(controller)
Where: number length
Is the: number of modules that this message reads maximum number of elements in any of the block transfers
Publication 1756-UM001D-EN-P - November 2001
Communicate Over a Remote I/O Network 20-19
Send the Message to a BT Module
1. Enter the following rung:
The MSG instruction reads the input values from a BT module and stores the values in BTR_int_buffer_read
•
Each time the instruction is done, it automatically restarts and sends another message.
.
•
Prior to each message, the series of MOV and COPY instructions load the appropriate configuration properties into the MSG instruction so it can read the next BT module. The configuration properties load from the
•
After each MSG, a subsequent rung increments the
BTR_cfg array.
BTR_index tag. This loads the configuration properties for the next module into the MSG instruction before it executes again.
43014
Publication 1756-UM001D-EN-P - November 2001
20-20 Communicate Over a Remote I/O Network
Name:
BTR
BTR_cfg
BTR_index
2. Right-click each undefined tag, select New “name”, and assign the following properties:
Description: block transfer message that reads data from each BT module array of configuration properties for each BT module controls which BT module that the MSG instruction reads
Data Type:
MESSAGE
BT_CONFIGURATION
[ number ]
DINT
Scope: name_of_controller
(controller) name_of_controller
(controller) name_of_controller
(controller)
Where: number
3. Configure the message:
Is the: number of modules that this message reads
On this tab:
Configuration
Communication
For this item:
Message Type
Number Of Elements
Destination Tag
Path
RIO or ControlNet
Cache Connection check box
Type or select:
Block Transfer Read
1 (The dialog box requires an initial value.)
BTR_int_buffer_read
To create this tag:
A. Click New Tag .
B. Type the name.
C. In the Data type box, type INT[ length ], where length equals the length variable of the BT_input tag from
D. Choose OK .
Path to the 1756-DHRIO module:
A. Click Browse…
B. Select the RIO-MODULE with which you want to communicate.
C. Choose OK .
This complete the Module Address properties. Although your logic will change the path and module address, the Message Properties dialog box requires an initial set of properties.
RIO
Clear the Cache Connection check box..
Publication 1756-UM001D-EN-P - November 2001
Communicate Over a Remote I/O Network 20-21
Enter the Message Properties for Each Module
Properties for the first
BT module
Properties for the next
BT module
42376
1. Double-click Controller Tags.
2. Enter the message properties for each BT module.
Tag Name Value
− BTR_cfg
− BTR_cfg[0]
+ BTR_cfg[0].REQ_LEN
number of elements to transfer
+ BTR_cfg[0].Channel
( … )
( … ) channel (A or B) of the 1756-DHRIO module that is connected to the RIO network
+ BTR_cfg[0].Rack
+ BTR_cfg[0].Group
+ BTR_cfg[0].Slot
+ BTR_cfg[0].Path
rack number of the module (octal) group number of the module (depends on chassis addressing) slot number of the module (depends on chassis addressing) path to the 1756-DHRIO module:
A. Right-click and select Go to Message Path Editor .
B. Select the 1756-DHRIO module.
C. Choose OK .
+ BTR_cfg [1]
Publication 1756-UM001D-EN-P - November 2001
20-22 Communicate Over a Remote I/O Network
Convert the INTs to DINTs
1. Enter the following rung:
After the MSG instruction reads data from a module ( BTR.DN
is on), this rung converts the INT values from the BT module to DINT values for use in the project:
•
The MOV instruction sets the length of the FAL instruction equal to the number of elements that the MSG reads.
•
The FAL instruction then loads the values from BTR_int_buffer_read into BT_input . This converts the values to
DINTs for use in the project.
•
BTR_index determines where in the first dimension of dimension corresponds to a specific BT module.
BT_input to store the values. Each element of this
43015
2. Right-click each undefined tag, select New “name”, and assign the following properties:
Name: Description:
BTR_ints_to_dints converts the 16-bit integers from the BT module to 32-bit integers for the Logix5000 project
Data Type:
CONTROL
Scope: name_of_controller
(controller)
Publication 1756-UM001D-EN-P - November 2001
Communicate Over a Remote I/O Network 20-23
Step to the Next BT Module
1. Enter the following rung:
After the MSG instruction reads data from a module and the FAL converts it to DINTs ( BTR_ints_to_dints.DN
is on), the
ADD instruction increments the BTR_index . This lets the MSG instruction read the next module.
43015
2. Enter the following rung:
If the EQU instruction is true, the MSG instruction has read the last BT module. The CLR instruction resets BTR_index to zero. This lets the MSG instruction start the series of reads again, starting with the first module.
43015
Publication 1756-UM001D-EN-P - November 2001
20-24 Communicate Over a Remote I/O Network
Write Data to Multiple Block Transfer Modules
43035
43035
Publication 1756-UM001D-EN-P - November 2001
Communicate Over a Remote I/O Network 20-25
43036
43037
43037
Publication 1756-UM001D-EN-P - November 2001
20-26 Communicate Over a Remote I/O Network
Address I/O To monitor or control an I/O device, assign the tag name of the device to an instruction in your logic:
•
For step-by-step instructions on how to enter logic and tag names, see the Logix5000 Controllers Common Procedures, publication 1756-PM001.
•
All the data for I/O modules is at the controller scope. As you assign addresses, click the Controller Scoped Tags button to see the I/O tags.
•
Use the following table to select the address of an I/O device:
If the device is: digital analog
Then use this address: name:type.
Data [group].bit
element of the array that stores the data for or from this device
Where: name type group bit
Is: name of the remote I/O adapter, such as the 1771-ASB module
•
Use the name for the rack that contains the module to which this device is wired.
•
Use the name from the I/O configuration of the controller.
type of device:
If: input I
Then: output O group number of the module to which this device is wired point (bit) number to which this device is wired
Publication 1756-UM001D-EN-P - November 2001
Communicate Over a Remote I/O Network 20-27
EXAMPLE
Address a digital device that is wired to a 1771 I/O module
−
I/O Configuration
−
[5] 1756-DHRIO/B Local_DHRIO
−
B <004 0 1> 17771-ASB Remote_Rack_4 adapter module for rack number 4 input device group 2 bit 0
Remote_Rack_4:I.Data[2].0
42435
Publication 1756-UM001D-EN-P - November 2001
20-28 Communicate Over a Remote I/O Network
Validate Connections Is this task, you verify that the controller can communicate with the devices that you have just configured.
Step:
A. Determine if communications are established.
B. Identify a fault. Start at the local communication module and work down through the tree.
C. Identify the fault code.
Detailed actions:
Is a
!
over the I/O Configuration folder?
If:
No
Yes
Then:
The controller can communicate with the module.
Communications are not established. Go to the next step.
1.
2.
−
−
!
I/O Configuration
3.
−
!
[x] 1756-YYY/x local_com_module
!
z 17xx-YYY adapter_1
!
[0] 17xx-YYY module_1
!
[1] 17xx-YYY module_2
1. Right-click the module and select Properties .
2. Click the Connection tab.
3.
3. Identify the code for the fault.
42437
Publication 1756-UM001D-EN-P - November 2001
Step:
D. Clear the fault.
Detailed actions:
1. From the Help menu, select Contents .
2. Click the Index tab.
3. Type module faults .
Communicate Over a Remote I/O Network 20-29
E. Go to step A.
4.
4. Select the range for the code and click Display .
5. Scroll down to your fault code and follow the recommendations.
42439
Publication 1756-UM001D-EN-P - November 2001
20-30 Communicate Over a Remote I/O Network
Stagger the Messages As you add messages to your project, you may have to coordinate the execution of the messages. To avoid errors and assure that each message is processed, follow these rules:
Rule 1: Enable no more than 16 messages at one time (including block transfers).
Rule 2: Enable no more than 10 of the following types of messages at one time:
•
CIP data table reads or writes that are not cached
•
CIP generic
•
PLC2, PLC3, PLC5, or SLC (all types)
• block transfer reads or writes that are not cached
If the number of messages in your application exceeds rules 1 and 2, then stagger the execution of your messages. Here are some options:
•
Send each message in sequence
•
Send the messages in groups that are within the limits of rules 1 and 2
•
Publication 1756-UM001D-EN-P - November 2001
1
Chapter
21
Download and Go Online over a Serial Cable
When to Use this Procedure Use this procedure when you want to perform any of the following over a serial cable:
• download a project to a controller
• go online and monitor a controller
• edit a project while it is running in a controller
• save online changes to the offline project file (upload)
Preface
How to Use This Procedure If you have not already done so in a previous procedure, do the following preliminary step:
•
Step 1: Connect a Serial Cable
To complete this procedure, do the following steps:
•
Step 2: Configure a Serial Driver
•
42385
Publication 1756-UM001D-EN-P - November 2001
21-2 Download and Go Online over a Serial Cable
Step 1: Connect a Serial
Cable
I
40043
A. Obtain a 1756-CP3 serial cable. (You can also use a 1747-CP3 cable from the SLC product family, but once the cable is connected you cannot close the controller door.)
TIP
If you make your own serial cable:
•
Limit the length to 15.2m (50 ft).
•
Wire the connectors as follows:
Workstation Controller
1 CD
2 RDX
3 TXD
4 DTR
COMMON
6 DSR
7 RTS
8 CTS
9
1 CD
2 RDX
3 TXD
4 DTR
COMMON
6 DSR
7 RTS
8 CTS
9
•
Attach the shield to both connectors.
42231
Publication 1756-UM001D-EN-P - November 2001
Download and Go Online over a Serial Cable 21-3
1756-CP3 cable
20884
B. Connect the cable to the controller and to your workstation.
Step 2: Configure a Serial
Driver
1. Start RSLinx
™
software.
2. From the Communications menu, select Configure Drivers.
3. From the Available Driver Types list, select RS-232 DF1 Devices.
4. Click Add New.
5. Click OK to accept the default name for the driver.
6. From the Comm Port drop-down list, select the serial port (on the workstation) that the cable is connected to.
7. From the Device drop-down list, select Logix 5550-Serial Port.
8. Click Auto-Configure.
9. Does the dialog box display the following message:
Auto Configuration Successful!
If:
Yes
No
Then:
Click OK .
Go to step 6. and verify that you selected the correct Comm Port.
10. Click Close.
Publication 1756-UM001D-EN-P - November 2001
21-4 Download and Go Online over a Serial Cable
Step 3: Select a Path
A. Open the RSLogix 5000
™
project for the controller.
B. From the Communications menu, select Who Active.
To expand a network one level, click the
+ sign.
−
Workstation
+
+
+
Linx Gateways, Ethernet
AB_DF1-x, DF1
TCP-1, Ethernet
C. Expand the DF1 driver to the level of the controller.
−
Workstation
+
−
Linx Gateways, Ethernet
AB_DF1-x, DF1
+ xx, 1756-Lx
−
TCP-1, Ethernet
D. Select the controller and choose a button. You may have to confirm the action.
To: monitor the project in the controller transfer a copy of the project from the controller to
RSLogix 5000 software transfer the open project to the controller
Choose:
Go Online
Upload
Download
Publication 1756-UM001D-EN-P - November 2001
1
Chapter
22
Configure DF1 Master and Slave
Communications
When to Use this Procedure Use this procedure to get information to and from remote controllers
(stations) when:
•
Your system contains three or more stations.
•
Communications occur on a regular basis and require leased-line, radio, or power-line modems.
42378
Publication 1756-UM001D-EN-P - November 2001
22-2 Configure DF1 Master and Slave Communications
How to Use This Procedure If you have not already done so in a previous procedure, do the following preliminary step:
•
Step 1: Connect and Configure the Modems
To complete this procedure, do the following steps:
•
•
Step 3: Configure the Master Controller for Standard Polling
•
Step 4: Configure the Master Controller for Message-Based
•
Step 5: Configure a Slave Controller
•
•
•
For additional information, see SCADA System Application Guide, publication AG-6.5.8.
Step 1: Connect and
Configure the Modems
A. Using the following Allen-Bradley cable, connect each controller to the modem:
A-B 1784-CAS, 25-pin male modem connector
The cable has the following wiring: controller
(9-pin female)
DCD 1
2 RXD
TXD
DTR
3
4
COMMON
DSR
RTS
CTS
7
8
5
6
4
5
7
6
3
2 modem
(25-pin male)
8
20
B. Configure the modems.
Publication 1756-UM001D-EN-P - November 2001
Configure DF1 Master and Slave Communications 22-3
Step 2: Select a Polling
Mode
Determine if you will use standard polling or message-based polling:
If: data is time critical slave controllers will initiate messages you want to use logic to control when communication occurs
Then go to:
Step 3: Configure the Master Controller for Standard Polling
On page:
Step 4: Configure the Master Controller for Message-Based Polling 22-8
Step 3: Configure the
Master Controller for
Standard Polling
Determine if you must complete this step:
If you are using this polling mode: standard message-based
Then:
Complete this step
Go to Step 4: Configure the Master
Controller for Message-Based Polling
A. Open the RSLogix 5000
™
project.
Scope: controller controller controller
42376
B. Create the following tags:
Name: list_priority_poll list_normal_poll list_active_stations
Data Type:
DINT [x] where: x is 2 plus the number of stations that you will poll more frequently than other stations.
For example, if you want to poll 5 stations more frequently, create an array of 7 elements.
DINT [x] where: x is 2 plus the remaining number of stations. (The stations that you did not include in list_priority_poll.
)
BOOL[256]
Publication 1756-UM001D-EN-P - November 2001
22-4 Configure DF1 Master and Slave Communications
42376
C. Right-click Controller name_of_controller and select
Properties.
D. Click the Serial Port tab.
Publication 1756-UM001D-EN-P - November 2001
42251
E. Select System (default).
F. Select the settings for your DF1 network.
G. Select Half Duplex.
H. Clear (uncheck) the Continuous Carrier check box (default).
I. Type the amount of delay (20 ms units) between the time that the RTS signal turns on (high) and the time that data is sent. For example, a value of 4 produces an 80 ms delay.
J. Type the amount of delay (20 ms units) between the time that the last character is sent and the time that the RTS signal turns off (low).
Configure DF1 Master and Slave Communications 22-5
K. Click Apply.
L. Click the System Protocol tab.
42388
M. Select DF1 Master.
N. Select the error detection method that your equipment uses.
O. Do you want to receive duplicate messages?
If:
Yes
No
Then:
Leave the Enable Duplicate Detection selected.
Clear the Enable Duplicate Detection check box.
P. Type an address between 0 and 254 for this controller.
Q. Is it critical to keep the poll list scan time to a minimum?
If:
No
Yes
Then select:
Standard (multiple message transfer per node scan)
Standard (single message transfer per node scan)
Publication 1756-UM001D-EN-P - November 2001
22-6 Configure DF1 Master and Slave Communications
R. Determine when the master controller should send its messages:
To send messages to slave stations: before polling the next station when the station number of the master appears in the polling lists
Select:
Between station polls
In polling sequence
S. Select the list_normal_poll
T. After polling the priority stations, how many normal stations do you want to poll?
If: all not all
Then:
Leave the default of 0.
Type the number to poll before returning to the priority stations.
U. Select the list_priority_poll
V. Select the list_active_stations
W. Click OK.
X. Double-click Controller Tags.
42376
Publication 1756-UM001D-EN-P - November 2001
Configure DF1 Master and Slave Communications 22-7
Y. In the list_priority_poll
addresses of the priority stations to poll:
•
If this controller (master) sends its messages in the polling
sequence (step R.), include this controller in the list.
•
Enter the addresses in the order that you want them polled.
Tag Name
− list_priority_poll
+ list_priority_poll [0]
+ list_priority_poll [1]
+ list_priority_poll [2]
+ list_priority_poll [3]
+ list_priority_poll […]
Value total number of priority stations
( … ) leave blank address of the first station to poll address of the second station to poll address of the next station to poll
Z. In the list_normal_poll
tag (step B.), enter the addresses
of the normal stations to poll.
•
If this controller (master) sends its messages in the polling
sequence (step R.), include this controller in the list.
•
Enter the addresses in the order that you want them polled.
Tag Name
− list_normal_poll
+ list_normal_poll [0]
+ list_normal_poll [1]
+ list_normal_poll [2]
+ list_normal_poll [3]
+ list_normal_poll […]
Value
( … ) total number of normal stations leave blank address of the first station to poll address of the second station to poll address of the next station to poll
Publication 1756-UM001D-EN-P - November 2001
22-8 Configure DF1 Master and Slave Communications
Step 4: Configure the
Master Controller for
Message-Based Polling
Determine if you must complete this step:
If you are using this polling mode: standard message-based
Then:
Go to Step 5: Configure a Slave Controller
Complete this step
A. Open the RSLogix 5000 project.
42376
B. Right-click Controller name_of_controller and select
Properties.
C. Click the Serial Port tab.
Publication 1756-UM001D-EN-P - November 2001
D. Select System (default).
E. Select the settings for your DF1 network.
F. Select Half Duplex.
G. Clear (uncheck) the Continuous Carrier check box (default).
42251
Configure DF1 Master and Slave Communications 22-9
H. Type the amount of delay (20 ms units) between the time that the RTS signal turns on (high) and the time that data is sent. For example, a value of 4 produces an 80 ms delay.
I. Type the amount of delay (20 ms units) between the time that the last character is sent and the time that the RTS signal turns off (low).
J. Click Apply.
K. Click the System Protocol tab.
L. Select DF1 Master.
M. Select the error detection method that your equipment uses.
N. Do you want to receive duplicate messages?
If:
Yes
No
Then:
Leave the Enable Duplicate Detection selected.
Clear the Enable Duplicate Detection check box.
O. Type an address between 0 and 254 for this controller.
P. Do you want to ignore messages from slave stations?
If:
No
Yes
Then select:
Message Based (slave can initiate messages)
Message Based (slave cannot initiate messages)
A slave station can only send a message when it receives a message from this controller (master).
Q. Click OK.
42388
Publication 1756-UM001D-EN-P - November 2001
22-10 Configure DF1 Master and Slave Communications
Step 5: Configure a Slave
Controller
A. Open the RSLogix 5000 project for the slave controller.
42376
B. Right-click Controller name_of_controller and select
Properties.
C. Click the Serial Port tab.
Publication 1756-UM001D-EN-P - November 2001
42251
D. Select System (default).
E. Select the settings for your DF1 network.
F. Select Half Duplex.
G. Clear (uncheck) the Continuous Carrier check box (default).
H. Type the amount of delay (20 ms units) between the time that the RTS signal turns on (high) and the time that data is sent. For example, a value of 4 produces an 80 ms delay.
I. Type the amount of delay (20 ms units) between the time that the last character is sent and the time that the RTS signal turns off (low).
Configure DF1 Master and Slave Communications 22-11
J. Click Apply.
K. Click the System Protocol tab.
L. Select DF1 Slave.
M. Select the error detection method that your equipment uses.
N. Do you want to receive duplicate messages?
If:
Yes
No
Then:
Leave the Enable Duplicate Detection selected.
Clear the Enable Duplicate Detection check box.
O. Type an address between 0 and 254 for this controller.
P. Click OK.
42388
Publication 1756-UM001D-EN-P - November 2001
22-12 Configure DF1 Master and Slave Communications
Step 6: Enter a Message e e e e e e condition ?
/ e e e e e condition ?
/
Regardless of whether you use standard polling or message-based polling, you must use a MSG instruction to transfer data between controllers:
A. Enter a MSG instruction and associated input instruction (s).
Message
Message Control
MSG
? ...
EN
DN
ER
42424
B. In the MSG instruction, type a name for the message control tag and press the Enter key.
C. In the MSG instruction, right-click the message control tag and select New tag_name. (In older revisions of the software, the menu option is Create tag_name.
)
D. From the Scope list, select name_of_controller (controller), and click OK.
E.
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER
42424
E. Enter message.
EN.
where: message is the message control tag from step B.
F. If your message is to a PLC-5
®
or SLC 500
™
controller and it reads or writes integers (not REALs), use a buffer of INTs in the message.
•
ControlLogix controllers execute more efficiently and use less memory when working with 32-bit integers (DINTs). Use the
DINT data type for integers whenever possible.
•
PLC-5 and SLC 500 controllers require 16-bit integers.
•
Use an INT buffer in the message and move the data into or out of the buffer as required.
Publication 1756-UM001D-EN-P - November 2001
Configure DF1 Master and Slave Communications 22-13
The following examples show how to use a buffer of INTs
EXAMPLE condition
Read integers from a PLC-5 controller
When condition turns on, reads 16-bit integer values (INTs) and stores them in
int_buffer. Then the FAL instruction moves the values to dint_array. This converts the values to 32-bit integers (DINTs), for use by other instructions in the ControlLogix controller.
message.EN
/
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER message.DN
fal_control
RES
FAL
File Arith/Logical
Control
Length
Position
Mode
Dest fal_control
?
0 all dint_array[fal_control.pos]
Expression int_buffer[fal_control.pos]
EN
DN
ER
EXAMPLE e condition
Write integers to a PLC-5 controller
When condition turns on, moves the values in dint_array to int_buffer. This converts the values to 16-bit integers (INTs). Then the message instruction sends int_buffer to the other controller.
fal_control
RES
FAL
File Arith/Logical
Control
Length
Position
Mode
Dest
Expression fal_control
?
0 all int_buffer[fal_control.pos] dint_array[fal_control.pos]
EN
DN
ER fal_control.DN
message.EN
/
Where: dint_array int_buffer
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER
Is an: array of DINTs that are used in the ControlLogix controller array of INTs with the same number of elements as dint_array
42424
Publication 1756-UM001D-EN-P - November 2001
22-14 Configure DF1 Master and Slave Communications
Step 7: Configure the
Message
A. In the MSG instruction, click ... .
B. Select a configuration for the message:
Table 22.A Message to a ControlLogix or FlexLogix controller
If the data is: structure (s)
And you want to: read (receive) the data
For this item:
Message Type
Source Element not structure (s) write (send) the data
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element read (receive) the data Message Type
Source Element write (send) the data
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Type or select:
CIP Data Table Read first element of the tag that contains data in the other controller number of elements to transfer first element of the tag (controller-scoped) in this controller for the data
CIP Data Table Write first element of the tag (controller-scoped) in this controller that contains the data number of elements to transfer first element of the tag for the data in the other controller
PLC5 Typed Read
@ name where: name is the first element of the tag that contains data in the other controller.
number of elements to transfer first element of the tag (controller-scoped) in this controller for the data
PLC5 Typed Write first element of the tag (controller-scoped) in this controller that contains the data number of elements to transfer
@ name where: name is the first element of the tag for the data in the other controller.
Publication 1756-UM001D-EN-P - November 2001
Configure DF1 Master and Slave Communications 22-15
Table 22.B Message to a PLC-5 controller
If the data is: integer (s)
And you want to: read (receive) data write (send) data floating-point (REAL) read (receive) data write (send) data
For this item:
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Type or select:
PLC5 Typed Read data table address in the PLC-5 controller (e.g., N7:10) number of integers to transfer first element of int_buffer
PLC5 Typed Write first element of int_buffer number of integers to transfer data table address in the PLC-5 controller (e.g., N7:10)
PLC5 Typed Read data table address in the PLC-5 controller (e.g., F8:0) number of values to transfer first element of the tag (controller-scoped) in this controller for the data
PLC5 Typed Write first element of the tag (controller-scoped) in this controller that contains the data number of values to transfer data table address in the PLC-5 controller (e.g., F8:0)
Publication 1756-UM001D-EN-P - November 2001
22-16 Configure DF1 Master and Slave Communications
Table 22.C Message to a SLC 500 controller
If the data is: integer (s)
And you want to: read (receive) data floating-point (REAL) write (send) data read (receive) data
For this item:
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Message Type
Source Element
Number Of Elements
Destination Tag write (send) data Message Type
Source Tag
Number Of Elements
Destination Element
Type or select:
SLC Typed Read data table address in the SLC 500 controller (e.g., N7:10) number of integers to transfer first element of int_buffer
SLC Typed Write first element of int_buffer number of integers to transfer data table address in the SLC 500 controller (e.g., N7:10)
SLC Typed Read data table address in the SLC 500 controller (e.g., F8:0) number of values to transfer first element of the tag (controller-scoped) in this controller for the data
SLC Typed Write first element of the tag (controller-scoped) in this controller that contains the data number of values to transfer data table address in the SLC 500 controller (e.g., F8:0)
C. Click the Communication tab.
D. In the Path box, type the following path:
2, station_address where: station_address is the DF1 address of the controller that is receiving the message.
E. Leave the communication method at the default settings of:
•
CIP
•
Cache Connections (This check box does not apply to messages from the serial port.)
F. Click OK.
Publication 1756-UM001D-EN-P - November 2001
Step 8: Stagger the
Messages
Configure DF1 Master and Slave Communications 22-17
As you add messages to your project, you may have to coordinate the execution of the messages. To avoid errors and assure that each message is processed, follow these rules:
Rule 1: Enable no more than 16 messages at one time (including block transfers).
Rule 2: Enable no more than 10 of the following types of messages at one time:
•
CIP data table reads or writes that are not cached
•
CIP generic
•
PLC2, PLC3, PLC5, or SLC (all types)
• block transfer reads or writes that are not cached
If the number of messages in your application exceeds rules 1 and 2, then stagger the execution of your messages. Here are some options:
•
Send each message in sequence
•
Send the messages in groups that are within the limits of rules 1 and 2
Publication 1756-UM001D-EN-P - November 2001
22-18 Configure DF1 Master and Slave Communications
Notes:
Publication 1756-UM001D-EN-P - November 2001
Configure Dial-Up Communications
Chapter
23
When to Use this Procedure Use this procedure to send a message to another controller over a public telephone line.
Preface
1
How to Use This Procedure If you have not already done so in a previous procedure, do the following preliminary step:
•
Step 1: Connect and Configure the Modems
To complete this procedure, do the following steps:
•
Step 2: Configure the Serial Port of the Controller
•
Step 3: Dial the Other Controller
•
•
•
•
For additional information, see SCADA System Application Guide, publication AG-6.5.8.
42394
Publication 1756-UM001D-EN-P - November 2001
23-2 Configure Dial-Up Communications
Step 1: Connect and
Configure the Modems
A. Connect each controller to the modem using the following
Allen-Bradley cable:
A-B 1784-CAS, 25-pin male modem connector
The cable has the following wiring: controller
(9-pin female)
DCD 1
2 RXD
TXD
DTR
3
4
COMMON
DSR
RTS
CTS
7
8
5
6
4
5
7
6
3
2 modem
(25-pin male)
8
20
B. Configure the modems:
Configure this signal:
DSR
DCD (CD)
DTR
To: be on (high) when a modem connection exists be on (high) whenever the modem receives the carrier from the remote modem hang-up when the controller changes the DTR signal from on to off (E.g., Set DTR to normal, not override.)
Publication 1756-UM001D-EN-P - November 2001
Configure Dial-Up Communications 23-3
Step 2: Configure the Serial
Port of the Controller
A. Open the RSLogix 5000
™
project for the controller.
42376
B. Right-click Controller name_of_controller and select
Properties.
C. Click the Serial Port tab.
42251
D. Select System (default).
E. Select the settings for your DF1 network.
F. Select Full Duplex.
G. Type the amount of delay (20 ms units) between the time that the RTS signal turns on (high) and the time that data is sent. For example, a value of 4 produces an 80 ms delay.
H. Type the amount of delay (20 ms units) between the time that the last character is sent and the time that the RTS signal turns off (low).
I. Click Apply.
Publication 1756-UM001D-EN-P - November 2001
23-4 Configure Dial-Up Communications
J. Click the System Protocol tab.
K. Select DF1 Point to Point (Default).
L. Select the error detection method that your equipment uses.
M. Do you want to receive duplicate messages?
If:
Yes
No
Then:
Leave the Enable Duplicate Detection selected.
Clear the Enable Duplicate Detection check box.
N. Click OK.
42392
Publication 1756-UM001D-EN-P - November 2001
Configure Dial-Up Communications 23-5
Step 3: Dial the Other
Controller
Use the following logic to dial another controller:
When condition turns on, the AWA instruction commands the modem to dial a remote controller.
The GSV instruction monitors the status of the serial port.
condition AWA
ASCII Write Append
Channel
Source
0 modem_number[0]
SerialPort Control
String Length
Characters Sent modem_dial
0
0
EN
DN
ER Dest
GSV
Get System Value
CIP Object Class DF1
CIP Object Name
Attribute Name DiagnosticCounters serial_port[0]
42393
Where: condition modem_number
String Length serial_port
Is: condition in your that initiates the dial-up sequence array of SINTs that contains the string of ASCII characters that tell the modem to dial a specific telephone number
0 , which means to send all the characters in modem_number array of 19 INTs (INT[19]) that stores the status of the serial port
Publication 1756-UM001D-EN-P - November 2001
23-6 Configure Dial-Up Communications
Step 4: Send the Message A. Enter the following logic:
Serial_port [1] contains the status of the modem signals. When bit 3 is on (DCD is high), the modem is receiving the carrier from the remote modem and communication is established. At this point, the message is sent to the remote controller.
serial_port[1].3
message.EN
/
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER
42387
Where: serial_port message
Is: array of 19 INTs (INT[19]) that stores the status of the serial port tag that controls the execution of the message
(MESSAGE data type)
B. If your message is to a PLC-5
®
or SLC 500
™
controller and it reads or writes integers (not REALs), use a buffer of INTs in the message.
•
ControlLogix controllers execute more efficiently and use less memory when working with 32-bit integers (DINTs). Use the
DINT data type for integers whenever possible.
•
PLC-5 and SLC 500 controllers require 16-bit integers.
•
Use an INT buffer in the message and move the data into or out of the buffer as required.
Publication 1756-UM001D-EN-P - November 2001
Configure Dial-Up Communications 23-7
The following examples show how to use a buffer of INTs
EXAMPLE
Read integers from a PLC-5 controller
When serial_port[1].3 turns on, reads 16-bit integer values (INTs) and stores them in
int_buffer. Then the FAL instruction moves the values to dint_array. This converts the values to 32-bit integers (DINTs), for use by other instructions in the ControlLogix controller.
serial_port[1].3
message.EN
/
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER message.DN
fal_control
RES
FAL
File Arith/Logical
Control
Length
Position
Mode fal_control
?
0 all dint_array[fal_control.pos] Dest
Expression int_buffer[fal_control.pos]
EN
DN
ER
EXAMPLE
Write integers to a PLC-5 controller
When serial_port[1].3 turns on, moves the values in dint_array to int_buffer. This converts the values to 16-bit integers (INTs). Then the message instruction sends
int_buffer to the other controller.
serial_port[1].3
fal_control
RES
FAL
EN
DN
ER fal_control.DN
message.EN
/
Where: dint_array int_buffer
MSG
Type - Unconfigured
Message Control message ...
EN
DN
ER
Is an: array of DINTs that are used in the ControlLogix controller array of INTs with the same number of elements as dint_array
42387
Publication 1756-UM001D-EN-P - November 2001
23-8 Configure Dial-Up Communications
Step 5: Configure the
Message
A. In the MSG instruction, click ... .
B. Select a configuration for the message:
Table 23.A Message to a ControlLogix or FlexLogix controller
If the data is: structure (s)
And you want to: read (receive) the data
For this item:
Message Type
Source Element not structure (s) write (send) the data
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element read (receive) the data Message Type
Source Element write (send) the data
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Type or select:
CIP Data Table Read first element of the tag that contains data in the other controller number of elements to transfer first element of the tag (controller-scoped) in this controller for the data
CIP Data Table Write first element of the tag (controller-scoped) in this controller that contains the data number of elements to transfer first element of the tag for the data in the other controller
PLC5 Typed Read
@ name where: name is the first element of the tag that contains data in the other controller.
number of elements to transfer first element of the tag (controller-scoped) in this controller for the data
PLC5 Typed Write first element of the tag (controller-scoped) in this controller that contains the data number of elements to transfer
@ name where: name is the first element of the tag for the data in the other controller.
Publication 1756-UM001D-EN-P - November 2001
Configure Dial-Up Communications 23-9
Table 23.B Message to a PLC-5 controller
If the data is: integer (s)
And you want to: read (receive) data write (send) data floating-point (REAL) read (receive) data write (send) data
For this item:
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Type or select:
PLC5 Typed Read data table address in the PLC-5 controller (e.g., N7:10) number of integers to transfer first element of int_buffer
PLC5 Typed Write first element of int_buffer number of integers to transfer data table address in the PLC-5 controller (e.g., N7:10)
PLC5 Typed Read data table address in the PLC-5 controller (e.g., F8:0) number of values to transfer first element of the tag (controller-scoped) in this controller for the data
PLC5 Typed Write first element of the tag (controller-scoped) in this controller that contains the data number of values to transfer data table address in the PLC-5 controller (e.g., F8:0)
Publication 1756-UM001D-EN-P - November 2001
23-10 Configure Dial-Up Communications
Table 23.C Message to a SLC 500 controller
If the data is: integer (s)
And you want to: read (receive) data floating-point (REAL) write (send) data read (receive) data
For this item:
Message Type
Source Element
Number Of Elements
Destination Tag
Message Type
Source Tag
Number Of Elements
Destination Element
Message Type
Source Element
Number Of Elements
Destination Tag write (send) data Message Type
Source Tag
Number Of Elements
Destination Element
Type or select:
SLC Typed Read data table address in the SLC 500 controller (e.g., N7:10) number of integers to transfer first element of int_buffer
SLC Typed Write first element of int_buffer number of integers to transfer data table address in the SLC 500 controller (e.g., N7:10)
SLC Typed Read data table address in the SLC 500 controller (e.g., F8:0) number of values to transfer first element of the tag (controller-scoped) in this controller for the data
SLC Typed Write first element of the tag (controller-scoped) in this controller that contains the data number of values to transfer data table address in the SLC 500 controller (e.g., F8:0)
C. Click the Communication tab.
D. In the Path box, type the following path:
2,0
Since dial-up communications are point-to-point, the actual address of the controller is not required.
E. Leave the communication method at the default settings of:
•
CIP
•
Cache Connections (This check box does not apply to messages from the serial port.)
F. Click OK.
Publication 1756-UM001D-EN-P - November 2001
Configure Dial-Up Communications 23-11
Step 6: Hang-Up Enter the following logic to hang-up:
After the remote controller receives the message ( message .DN is on), the AHL turns off the DTR line, which causes the modem to hang up.
message.DN
AHL
ASCII Handshake Lines
Channel
AND Mask
OR Mask 0
SerialPort Control modem_hangup_1
Channel Status(Decimal) 0
0
1
EN
DN
ER
After the modem hangs up ( modem_hangup_1 .EM is on), the AHL instruction turns on the DTR line, which readies the modem for the next call.
modem_hangup_1.EM
ASCII Handshake Lines
Channel
AND Mask
AHL
OR Mask
SerialPort Control
Channel Status(Decimal)
1 modem_hangup_2
0
0
0
EN
DN
ER
42393
Where: message
Is: tag that controls the execution of the message
(MESSAGE data type) modem_hangup_1 tag that controls the execution of the AHL
(SERIAL_PORT_CONTROL data type) modem_hangup_2 tag that controls the execution of the AHL
(SERIAL_PORT_CONTROL data type)
Publication 1756-UM001D-EN-P - November 2001
23-12 Configure Dial-Up Communications
Step 7: Stagger the
Messages
As you add messages to your project, you may have to coordinate the execution of the messages. To avoid errors and assure that each message is processed, follow these rules:
Rule 1: Enable no more than 16 messages at one time (including block transfers).
Rule 2: Enable no more than 10 of the following types of messages at one time:
•
CIP data table reads or writes that are not cached
•
CIP generic
•
PLC2, PLC3, PLC5, or SLC (all types)
• block transfer reads or writes that are not cached
If the number of messages in your application exceeds rules 1 and 2, then stagger the execution of your messages. Here are some options:
•
Send each message in sequence
•
Send the messages in groups that are within the limits of rules 1 and 2
Publication 1756-UM001D-EN-P - November 2001
1
Chapter
24
Program Motion Control
When to Use This
Procedure
RSLogix5000 Software
Axis
Configuration
Integrated
Motion
Programming
The ControlLogix controller, 1756-M02AE servo module or
1756-M08SE SERCOS module, and RSLogix 5000
™
software create an integrated motion control system.
ControlLogix Controller
Program Execution
1756-M02AE Servo Module
Drive
Position Velocity
Motor
Feedback
Position Velocity
Drive
Motor
Feedback
Motion Trajectory Planner
Position Velocity
1756-M08SE SERCOS Module
SERCOS Drive
Position Velocity
Motor
Feedback
•
The ControlLogix controller contains a high-speed motion task, which executes motion requests from the routines and generates position and velocity profile information. Each ControlLogix controller controls up to 16 1756-M02AE or 1756-M08SE modules.
•
The 1756-M02AE servo module connects to a servo drive and closes a high-speed position and velocity loop. Each
1756-M02AE module controls up to two axes.
•
The 1756-M08SE SERCOS module connects to one or more
SERCOS drives and controls up to 8 axes. Each SERCOS drive closes a high-speed position and velocity loop.
•
RSLogix 5000 software provides complete axis configuration and motion programming support.
Publication 1756-UM001D-EN-P - November 2001
24-2 Program Motion Control
How to Use This Procedure To program motion control:
•
•
•
1756-M08SE - Add the SERCOS Drive
•
•
Assign the Properties of the Motion Group
•
•
•
Develop Logic for Motion Control
For more information, see the ControlLogix Motion Module Setup and
Configuration Manual, publication 1756-UM006.
Select a CST Master Device If your controller uses a motion axis, you must define a device in the chassis as a coordinated system time (CST) master. This synchronizes all servo modules and controllers in the chassis to the same system clock.
IMPORTANT
Only one device in a chassis can be the CST master.
You have the following options:
•
Define the Controller as the CST Master
or
•
Define a 1756-SYNCH Module as the CST Master
Publication 1756-UM001D-EN-P - November 2001
Program Motion Control 24-3
Define the Controller as the CST Master
1. In the controller organizer, right-click the Controller folder and select Properties.
2. Click the Date/Time tab.
3. Is another controller in the chassis the CST master?
If:
No
Yes
Then:
Select the Make this controller the master check box.
Clear the Make this controller the master check box.
4. Click OK.
Define a 1756-SYNCH Module as the CST Master
1. In the controller organizer, right-click the 1756-SYNCH module and choose Properties.
2. Click the Time Mastership tab.
3. Select this check box.
4. Choose OK.
43085
Publication 1756-UM001D-EN-P - November 2001
24-4 Program Motion Control
Add the Motion Module
1. Open the RSLogix 5000
™
project offline.
+
+
+
+
+
Controller
Tasks
Motion Groups
Trends
Data Types
I/O Configuration 1. Right-click and select New
Module.
2. Select the your type of motion module and choose OK.
42377
3. Type a name for the module.
4. Type or select the slot number where the module is installed
5. How closely must any module in this slot match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
6. Choose Next.
Publication 1756-UM001D-EN-P - November 2001
Program Motion Control 24-5
42398
7. Initially, do you want to the module to communicate with the controller?
If:
Yes
No
Then:
Leave the check box cleared (unchecked).
Select the check box.
EXAMPLE
Inhibit a module
Use the Inhibit Module check box to make it easier to test a system:
•
Initially, inhibit the module.
•
When you are ready to test the devices that are associated with the module, clear the check box.
8. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
9. Choose Next.
Publication 1756-UM001D-EN-P - November 2001
24-6 Program Motion Control
1756-M02AE
Publication 1756-UM001D-EN-P - November 2001
10. Choose New Axis.
11. Type a name for the axis and choose OK.
12. Assign the axis to a channel (the physical connection on the servo module to which the axis is wired).
13. Repeat steps 10 - 12 for the other channel, if required.
14. Choose Finish.
43031
1756-M08SE
43017
15. How many axes are connected to this module? (In the next section, you associate the axes with the module.)
If this number of axes:
1 - 4
5 - 8
Then select a Cycle Time of:
1
2
16. Select the intensity of the light beam on the fiber optic cable. For cables that span long distances or cables that are low quality, select High.
17. Choose Finish.
Program Motion Control 24-7
1756-M08SE - Add the
SERCOS Drive
+
+
+
+
+
Controller
Tasks
Motion Groups
Trends
Data Types
I/O Configuration
[x] 1756-M08SE 1. Right-click and select New
Module.
2. Select the SERCOS drive and choose OK.
3. Type a name for the drive.
4. Type or select the node number of the drive. If this is a multi-axis drive, select the node number of the first axis.
5. How closely must any module in this slot match the information on this tab?
If this information must match: all, including minor revision number all except the minor revision number none
Then select
Exact Match
Compatible Module
Disable Keying
6. Choose Next.
43018
Publication 1756-UM001D-EN-P - November 2001
24-8 Program Motion Control
42398
7. If communication with the module fails, how do you want the controller to respond?
ATTENTION
!
If communication with a module fails, the controller operates on old data from the module. To avoid potential injury or damage, either monitor communications with modules or configure modules to produce a major fault if communications fail.
If you want the controller to: fault (major fault) continue operating
Then:
Select the check box.
Leave the check box cleared (unchecked).
Notes:
Monitor the connection using ladder logic.
8. Choose Next.
43019
9. Choose New Axis.
10. Type a name for the tag for this node (axis) and choose OK.
11. Select the name of the tag from step 10.
12. If this is a multi-axis drive, repeat steps 9 - 11 for each axis.
13. Choose Next.
Publication 1756-UM001D-EN-P - November 2001
Program Motion Control 24-9
43024
14. Which type of bus regulator does this drive use?
If: external internal
Then select: catalog number of the regulator
Internal none <none>
15. Choose Finish.
Create a Motion Group
+
+
+
+
−
Controller
Tasks
Motion Groups
−
Ungrouped Axes name_of_axis
Trends
Data Types
I/O Configuration
[x] 1756-M08SE
1. Right-click and select New
Motion Group.
2. Type a name for the group and choose OK.
Publication 1756-UM001D-EN-P - November 2001
24-10 Program Motion Control
Assign the Properties of the
Motion Group
+
+
−
Controller
Tasks
Motion Groups
Name_of_New_Group
−
Ungrouped Axes name_of_axis
Trends
1. Right-click and select
Motion Group Properties.
43025
2. Select the axis.
3. Choose Add -->.
Publication 1756-UM001D-EN-P - November 2001
Program Motion Control 24-11
43026
4. Click the Attribute tab.
5. Type or select the rate at which you want the controller to update the axes that are assigned to this group.
•
For a 1756-M08SE module, set the Coarse Update Period to a multiple of the Cycle Time.
6. Do you want to monitor any of the following members of an axis of this group directly via its tag? (A GSV instruction always lets you access these values regardless of this selection.)
•
ActualAcceleration
•
ActualPosition
•
ActualVelocity
•
AverageVelocity
•
CommandAcceleration
•
CommandPosition
•
CommandVelocity
•
MasterOffset
If:
Yes
Then select:
Enabled
Notes:
This increases the motion execution time of the
controller. Refer to Estimate Execution Time of a
No Disabled
7. Choose OK.
Publication 1756-UM001D-EN-P - November 2001
24-12 Program Motion Control
Configure the Axis To configure an axis:
•
Display the Properties for the Axis
•
•
•
•
1756-M02AE - Select the Configuration of the Servo Drive
•
1756-M08SE - Select the Catalog Number of the Amplifier
•
1756-M08SE - Select the Motor and Feedback
Display the Properties for the Axis
+
+
−
Controller
Tasks
Motion Groups
−
Name_of_New_Group name_of_axis
Ungrouped Axes
Trends
Right-click and select Axis
Properties.
Select an Axis Configuration
Select the type of axis that you want.
43033
Publication 1756-UM001D-EN-P - November 2001
Program Motion Control 24-13
Assign Units for Measurements
43027
1. Click the Units tab.
2. Type the units in which you want to program, such as revs, degrees, inches, or millimeters.
Assign a Conversion Constant
1. Click the Conversion tab.
2. Select the type of axis positioning that you want to use.
3. Type the counts per unit.
43028
Publication 1756-UM001D-EN-P - November 2001
24-14 Program Motion Control
1756-M02AE - Select the Configuration of the Servo Drive
43032
1. Click the Servo tab.
2. Select the configuration of the servo drive.
3. Optional: Select the two attributes of the AXIS object that you want to access via either a GSV instruction or tag name.
4. Choose OK.
Publication 1756-UM001D-EN-P - November 2001
Program Motion Control 24-15
1756-M08SE - Select the Catalog Number of the Amplifier
43029
1. Click the Drive tab.
2. Select the catalog number of the amplifier.
3. Optional: Select the two attributes of the AXIS object that you want to access via either a GSV instruction or tag name.
Publication 1756-UM001D-EN-P - November 2001
24-16 Program Motion Control
1756-M08SE - Select the Motor and Feedback
1. Click the Motor/Feedback tab.
2. Select the catalog number of the motor.
3. In step 2, did you select a catalog number?
If:
Yes
No
Then:
Select the type of feedback.
4. Choose OK.
43030
Publication 1756-UM001D-EN-P - November 2001
Run Hookup Tests
Program Motion Control 24-17
ATTENTION
!
These tests may cause an axis to move even with the controller in program mode. After you complete the
Test Output & Feedback test, do not change the polarity. This may cause an axis-runaway condition.
To run the hookup diagnostics for an axis:
•
Download Your Project and Go Online
•
Display the Properties for the Axis
•
Download Your Project and Go Online
1. Create and configure all the motion modules and axes.
2. Save your project
3. Download your project..
4. Verify that a connection is established with each module in the
I/O configuration of the controller.
5. For each SERCOS drive, make sure that the drive goes to Step 4.
Publication 1756-UM001D-EN-P - November 2001
24-18 Program Motion Control
Display the Properties for the Axis
+
+
−
Controller
Tasks
Motion Groups
−
Name_of_New_Group name_of_axis
Ungrouped Axes
Trends
Right-click and select Axis
Properties.
Complete the Hookup Tests
43034
1. Click the Hookup tab.
2. Type number of increments that the axis moves during each test.
3. Select each test and follow the prompts.
4. When you finish the hookup tests, choose OK.
For more information about hookup diagnostics, see the ControlLogix
Motion Module Setup and Configuration Manual, publication
1756-UM006.
Publication 1756-UM001D-EN-P - November 2001
Program Motion Control 24-19
Develop Logic for Motion
Control
To write a motion application program, you can insert motion instructions directly into your ladder logic program.
The motion instructions operate on one or more axes. You must identify and configure axes before you can use them. For more information about configuring axes, see the ControlLogix Motion
Module Setup and Configuration Manual, publication 1756-UM006.
For more information on individual motion instructions, see the
Logix5000 Controllers Motion Instruction Set Reference Manual, publication 1756-RM007.
Each motion instruction has an operand named Motion control. This field uses a MOTION_INSTRUCTION tag to store status information during the execution of motion instructions. This status information can include instruction status, errors, etc.
The
Motion control operand
ATTENTION
!
Tags used for the motion control operand of motion instruction should only be used once. Re-use of the same motion control operand in other instructions can cause unintended operation of the control variables.
For more information about the MOTION_INSTRUCTION tag, refer to the appropriate motion instruction in the Logix5000 Controllers
Motion Instruction Set Reference Manual, publication 1756-RM007.
You can read motion status and configuration parameters in your logic using two methods.
Method:
Directly accessing the MOTION_GROUP and AXIS structures
Using the GSV instruction
Enable the Auto Tag Update attribute for a motion group
Example:
•
Axis faults
•
Motion status
Actual position
CommandAcceleration
Publication 1756-UM001D-EN-P - November 2001
24-20 Program Motion Control
Publication 1756-UM001D-EN-P - November 2001
In your ladder logic program, you can modify motion configuration parameters using the SSV instruction. For example, you can change position loop gain, velocity loop gain, and current limits within your program.
For more information on the SSV instruction, see the following publications:
•
Logix5000 Controllers General Instructions Reference Manual, publication 1756-RM003
•
ControlLogix Motion Module Setup and Configuration Manual, publication 1756-UM006
Handle Motion Faults
Two types of motion faults exist.
Type
Errors
Minor/Major
Description
•
Do not impact controller operation
•
Should be correct to optimize execution time and ensure program accuracy
•
Caused by a problem with the servo loop
•
Can shutdown the controller if you do not correct the fault condition
Example
A Motion Axis Move
(MAM) instruction with a parameter out of range
The application exceeded the
PositionErrorTolerance value.
You can configure a fault as either minor or major by using the Axis
Wizard-Group window.
Understanding errors
Executing a motion instruction within an application program can generate errors. The MOTION_INSTRUCTION tag has a field that contains the error code. For more information about error codes for individual instructions, see the Logix5000 Controllers Motion
Instruction Set Reference Manual, publication 1756-RM007.
Understanding minor/major faults
Several faults can occur that are not caused by motion instructions.
For example, a loss of encoder feedback or an actual position exceeding an overtravel limit will cause faults. The motion faults are considered type 2 faults with error codes from 1 to 32. See Logix5000
Controllers Common Procedures, publication 1756-PM001.
Program Motion Control 24-21
The following figure shows several rungs of a motion control application program.
Rung 0:
Enables the Feed and Cut axes when you press the servo_on button.
Rung 1:
Jogs the Feed axis in the positive direction when you press the jog_plus button.
Rung 2:
Jogs the Feed axis in the reverse direction when you press the jog_minus button.
Rung 3:
Stops the Feed axis when you release with the jog_plus button or the jog_minus button.
Publication 1756-UM001D-EN-P - November 2001
24-22 Program Motion Control
Notes:
Publication 1756-UM001D-EN-P - November 2001
1
Chapter
25
Maintain the 1756-BA1 Battery
When to Use This
Procedure
How to Use This Procedure To complete this procedure, do the following steps:
•
•
•
Estimate Battery Life
Use this procedure to ensure that the 1756-BA1 battery has sufficient capacity to maintain the memory of the controller and that the battery does not leak.
When the battery is about 95 percent discharged, the controller provides the following warnings:
•
On the front of the controller, the BAT LED turns on (solid red).
•
A minor fault occurs (type 10, code 10).
To prevent the battery from leaking potentially dangerous chemicals, replace the battery at least as often as indicated in the following attention:
ATTENTION
!
To prevent possible battery leakage, even if the BAT
LED is off, replace a battery according to the following schedule:
Replace the battery within: If the temperature 1 in. below the chassis is:
0° to 35° C
36° to 40° C
41° to 45° C
46° to 50° C
51° to 55° C
56° to 60° C
No required replacement
3 years
2 years
16 months
11 months
8 months
Publication 1756-UM001D-EN-P - November 2001
25-2 Maintain the 1756-BA1 Battery
To estimate how long the battery will support the memory of the controller:
A. Determine the temperature (° C) 1 in. below the chassis.
B. Determine the percentage of time that the controller is powered off per week.
EXAMPLE
Determine the percentage of time that the controller is powered off per week
If a controller is off:
•
8 hr/day during a 5-day work week
• all day Saturday and Sunday
Then the controller is off 52% of the time:
1. total hours per week = 7 x 24 +168 hours
2. total off hours per week = (5 days x 8 hr/day) + Saturday + Sunday = 88 hours
3. percentage off time = 88/168 = 52%
and after the BAT LED turns on.
D. For each year of battery life, decrease the time before the BAT
LED turns on by the percentage that is shown in the table. (Do not decrease the time after the BAT LED turns on.)
Publication 1756-UM001D-EN-P - November 2001
Maintain the 1756-BA1 Battery 25-3
IMPORTANT
If the BAT LED turns on when you apply power to the controller, the battery life may be less then the table below indicates. Some of the battery life may have been used up while the controller was off and unable to turn on the BAT LED.
Table 25.A Worst-case estimates of battery life
Controller: Temperature: Time before BAT LED turns on:
Power off 100% Power off 50%
1756-L1
1756-L1M1
1756-L1M2
1756-L1M3
1756-L55M12
1756-L55M13
1756-L55M14
1756-L55M16
0° C
60° C
25° C
0° C
60° C
25° C
0° C
60° C
60° C
25° C
0° C
60° C
25° C
0° C
60° C
25° C
8 months
18.5 months
20.2 months
5.6 months
13.6 months
16.8 months
4 months
11.7 months
16.0 months
2.6 months
9.1 months
14.4 months
57 days
63 days
60 days
29 days
25° C
0° C
60° C
25° C
30 days
24 days
15 days
13 days
61 days
48 days
30 days
27 days
0° C 6 days 12 days
Use the values for the 1756-L55M13 controller.
8 months
30.5 months
33.7 months
8 months
22.9 months
27.9 months
7.4 months
20.1 months
26.6 months
4.9 months
16.2 months
24.4 months
110 days
123 days
118 days
57 days
1756-L55M22
1756-L55M23
1756-L55M24 Use the values for the 1756-L55M14 controller.
17%
23%
17%
17%
23%
17%
36%
16%
16%
23%
17%
24%
16%
16%
24%
Yearly decrease:
24%
16%
16%
24%
16%
16%
Time after BAT LED turns on and then power off 100%:
24 days
4 days
14 days
22 days
69 hours
76 hours
73 hours
35 hours
16 days
28 days
31 days
8 days
20 days
25 days
6 days
18 days
37 hours
30 hours
18 hours
16 hours
7 hours
Publication 1756-UM001D-EN-P - November 2001
25-4 Maintain the 1756-BA1 Battery
Store Replacement
Batteries
Because a battery may leak potentially dangerous chemicals if stored improperly, store batteries as follows:
ATTENTION
!
Store batteries in a cool, dry environment. We recommend 25° C with 40% to 60% relative humidity.
You may store batteries for up to 30 days between
-45° to 85° C, such as during transportation. To avoid possible leakage, do not store batteries above 60° C for more than 30 days.
Replace a Battery Because the controller uses a lithium battery, you must follow specific precautions when handling or disposing a battery.
ATTENTION
!
The controller uses a lithium battery, which contains potentially dangerous chemicals. Before handling or disposing a battery, review Guidelines for Handling
Lithium Batteries, publication AG-5.4.
A. Turn on the chassis power.
B. Does the existing battery show signs of leakage or damage?
If:
Yes
No
Then:
Before handling the battery, review Guidelines for Handling Lithium
Batteries , publication AG-5.4.
Go the next step.
C. Remove the old battery.
top middle bottom no connection black lead (-) red lead (+)
30167
Publication 1756-UM001D-EN-P - November 2001
Maintain the 1756-BA1 Battery 25-5
D. Install a new 1756-BA1 battery.
ATTENTION
!
Only install a 1756-BA1 battery. If you install a different battery, you may damage the controller.
E. On the front of the controller, is the BAT LED off?
If:
Yes
No
Then:
Go the next step.
1. Check that the battery is correctly connected to the controller.
2. If the BAT LED remains on, install another 1756-BA1 battery.
3. If the BAT LED remains on after you complete Step 2.,
contact your Rockwell Automation representative or local distributor.
battery label
41025
F. Attach the battery label:
1. Write on the battery label the date you install the battery.
2. Attach the label to the inside of the controller door.
G. Dispose the old battery according to state and local regulations.
ATTENTION
!
Do not incinerate or dispose lithium batteries in general trash collection. They may explode or rupture violently. Follow state and local regulations for disposal of these materials. You are legally responsible for hazards created while your battery is being disposed.
Publication 1756-UM001D-EN-P - November 2001
25-6 Maintain the 1756-BA1 Battery
Notes:
Publication 1756-UM001D-EN-P - November 2001
1
When To Use This
Procedure
Map an Address
Appendix
A
Map a PLC/SLC Address
Use this procedure if you are sending a message from a PLC-5
®
or
SLC 500
™
controller to a ControlLogix controller and the PLC/SLC controller does not support Logical ASCII addressing.
To use a logical address (e.g., N7:0) to specify a value (tag) in a
ControlLogix controller, you must map files to tags:
•
You only have to map the file numbers that are used in messages; the other file numbers do not need to be mapped.
•
The mapping table is loaded into the controller and is used whenever a “logical” address accesses data.
•
You can only access controller-scoped tags (global data).
1. In RSLogix 5000
™
software, open the project file for the controller whose data you want to access.
2. From the Logic menu, select Map PLC/SLC Messages.
Publication 1756-UM001D-EN-P - November 2001
A-2 Map a PLC/SLC Address
42260
3. For each file that is referenced in a PLC-5 or SLC command, make a map entry: a. Type the file number of the logical address.
b. Type or select the controller-scoped (global) tag that supplies or receives data for the file number. (You can map multiple files to the same tag.)
4. For PLC-2 commands, specify the tag that supplies or receives the data.
5. Click OK.
Publication 1756-UM001D-EN-P - November 2001
1
Appendix
B
Estimate Execution Time
When to Use This
Procedure
Use this appendix to estimate the time required for the execution of: instructions and motion tasks.
To:
Estimate Execution Time of a Ladder Instruction
Estimate Execution Time of a Function Block Routine
Estimate Execution Time of a Motion Action
See page:
Times are for a ControlLogix controller (Cat. No. 1756-L1, -L1Mx,
-L55Mxx) and RSLogix 5000
™
software.
IMPORTANT
Use this information to select among different programming options. Actual execution times may vary because of the configuration of your project and the version of RSLogix 5000 software that you are using.
Estimate Execution Time of a Ladder Instruction
1. From Table B.2 on page B-3, find the base time for the
instruction.
2. To the base time of the instruction, add time for expressions, subscripts, and data conversions:
If an operand: contains an expression
Then add time for: each operation in the expression.
For each operation, use the time for the corresponding instruction.
the calculation of the array subscript
Using this table:
is an element of an array and one or more of the subscripts is a tag
(e.g., tag_c[tag_d] ) is converted by sign-extension contains a SINT or INT tag in an array subscript the data conversion the conversion of the SINT or INT to a DINT
Publication 1756-UM001D-EN-P - November 2001
B-2 Estimate Execution Time
Examples:
Instruction:
CMP ( tag_a * tag_b / 100)
* (MUL)
/ (DIV)
Data Type:
REAL
REAL
ADD
Source A
Source B
Destination
ADD
Source A
DINT
REAL
REAL
DINT[0,DINT]
Execution Time:
4.3
µ s overhead
18.0
µ s for the MUL operation
18.8
µ s for the DIV operation
41.1
µ s total
10.8
µ s for the ADD instruction
8.5
µ s for DINT to REAL conversion
19.3
µ s total
10.8
µ s for the ADD instruction
25.5
µ s for array subscript
8.5
µ s for DINT to REAL conversion of array element
Source B
Destination
MUL
Source A
Source B
Destination
REAL
REAL
REAL
DINT
DINT
44.8
µ s total
18.0
µ s for MUL instruction
8.5
µ s for DINT to REAL conversion
12.4
µ s for REAL to DINT conversion
38.9
µ s total
Publication 1756-UM001D-EN-P - November 2001
Estimate Execution Time B-3
Table B.1 Sign-Extension Conversion Times
To convert a: To a: Requires (
µ s):
1756-L1, -L1Mx
DINT
DINT
DINT
INT
INT
REAL
REAL
REAL
SINT
SINT
INT
REAL
SINT
DINT
REAL
DINT
INT
SINT
DINT
REAL
1.9
12.4
15.0
14.9
7.4
8.1
7.3
1.2
1.0
1.7
11.8
11.7
1.0
1.7
6.0
1.1
1.9
9.8
1756-L55Mx
6.1
6.5
Table B.2 Execution Times for Ladder Instructions
Instruction: Data type: True Time (
µ s):
1756-L1, -L1Mx
AFI
AHL
AND
ARD
ARL
ASN
ATN
ACL
ACS
ADD
ADD
ABL
ABS
ABS
ACB n/a n/a
DINT n/a n/a
REAL
REAL n/a
DINT
REAL n/a n/a
REAL
DINT
REAL
0.1
92.2
0.57
76.8
77.0
263.1
224.7
13.7
0.61
0.88
13.2
126.5
272.5
0.57
10.8
0.55
10.4
0.1
71.8
0.55
60.1
60.2
241.8
213.2
1756-L55Mxx
11.4
0.61
0.87
10.9
98.7
250.5
Notes:
Publication 1756-UM001D-EN-P - November 2001
B-4 Estimate Execution Time
COP
COP
COP
COP
COS
CPS
CPS
CPS
CPS
CPT
CTD
CTU
DDT 0 mismatches
DDT 1 mismatches
DDT 2 mismatches
DEG
DELETE
Table B.2 Execution Times for Ladder Instructions (Continued)
Instruction: Data type: True Time (
µ s):
1756-L1, -L1Mx 1756-L55Mxx
AVE
AVE
AVE
AVE
AWA
AWT
BSL
BSR n/a n/a
DINT
DINT
SINT
INT
DINT
REAL
54.4
+ (x * 6.6)
54.5
+ (x * 7.0)
53.9
+ (x * 6.5)
44.0
+ (x * 14.7)
47.0
+ (x * 5.8)
47.0
+ (x * 6.1)
46.8
+ (x * 5.7)
38.7
+ (x * 13.6)
79.5
79.6
61.7
61.8
7.9
+ ( (x /32) * 0.8) 6.4
+ ( (x /32) * 0.6)
8.7
+ ( (x /32) * 0.8) 7.0
+ ( (x /32) * 0.6)
BTD
CLR
CLR
CMP
CONCAT
DINT
DINT
REAL n/a
12.7
0.35
0.40
4.31
10.7
+ (x * 1.4)
10.5
0.34
0.39
3.6
9.1
+ (x * 1.1)
Notes: x = Length x = Length
Round up x /32 to a whole number.
x = number of characters in Source A + number of characters in Source B x = Length SINT
INT
DINT
REAL
REAL
SINT
INT
6.9
+ (x * 0.1)
6.7
+ (x * 0.2)
7.1
+ (x * 0.3)
7.1
+ (x * 0.3)
222.9
15.4
+ (x * 0.1)
15.2
+ (x * 0.2)
DINT
REAL
15.7
+ (x * 0.3)
15.7
+ (x * 0.3) n/a 4.8
COUNTER 0.43
COUNTER 0.43
DINT 13.1
+ (x * 1.4)
DINT
DINT
27.9
41.6
+ (x * 1.4)
+ (x * 1.4)
REAL n/a
18.8
10.6
+ (x * 1.6)
6.5
+ (x * 0.1)
6.2
+ (x * 0.2)
6.6
+ (x * 0.3)
6.6
+ (x * 0.3)
208.3
13.8
+ (x * 0.1)
13.4
+ (x * 0.2)
13.9
+ (x * 0.3)
13.9
+ (x * 0.3)
4.0
0.42
0.42
10.6
+ (x * 1.0)
21.6
+ (x * 1.0)
31.6
+ (x * 1.0)
18.2
8.9
+ (x * 1.2) x = Length x = number of bits to compare
Based on ALL mode x = number of characters in Source A + number of characters in Source B
DIV
DIV
DINT
REAL
11.0
18.8
10.5
18.2
Publication 1756-UM001D-EN-P - November 2001
Estimate Execution Time B-5
FLL
FLL
FLL
FLL
FOR
FRD
FSC
GEQ
GEQ
GRT
GRT
GSV
Table B.2 Execution Times for Ladder Instructions (Continued)
Instruction: Data type: True Time (
µ s):
1756-L1, -L1Mx 1756-L55Mxx
DTOS n/a
DTR
EQU
EQU
FAL
DINT
DINT
REAL n/a
65.5
+ (1.4 * d) + (0.7
* x)
2.9
0.38
41.5
2.4
0.4
+ (0.6 * d) + (0.6
* x)
0.38
0.4
10.3
+ (x * (4.0 + e) 9.77
+ (x * (3.8 + e)
Notes: d = number of digits in Source x = number of characters in Destination x = number of elements manipulated in one scan
FFU
FFU
FFU
FFU
FIND
FFL
FFL
FFL
FFL
FBC 0 mismatches
FBC 1 mismatches
FBC 2 mismatches
DINT
REAL
DINT
REAL n/a
SINT
INT
DINT
REAL
DINT n/a n/a
SINT
INT
DINT
REAL n/a
DINT
DINT
DINT
13.2
+ (x * 1.4)
26.6
+ (x * 1.4)
39.0
+ (x * 1.4)
SINT 9.8
INT 10.9
DINT
REAL
10.2
10.2
11.1
+ (x * 0.6)
12.1
+ (x * 1.0)
12.5
+ (x * 0.6)
12.5
+ (x * 0.6)
8.0
+ (1.8 * x) + (1.3
* (r - s + 1))
8.0
8.8
8.3
8.3
10.7
+ (x * 1.0)
20.6
+ (x * 1.0)
29.7
+ (x * 1.0)
8.9
+ (x * 0.5)
9.7
+ (x * 0.8)
9.9
+ (x * 0.4)
9.9
+ (x * 0.4)
6.7
+ (1.4 * x) + (r - s
+ 1) e = time for the operators in the expression x x
= number of bits to compare
Based on ALL mode
= Length x = number of characters in Search r = Result s = Start x = Length 4.5
+ (x * 0.2)
4.7
+ (x * 0.2)
5.3
+ (x * 0.2)
4.1
+ (x * 0.3)
4.3
+ (x * 0.3)
4.9
+ (x * 0.2)
5.3
+ (x * 0.2)
15.8
+ (x * 7.3)
4.9
+ (x * 0.2)
12.6
+ (x * 6.0)
9.0
6.9
10.8
+ (x * (3.9 + e) 10.15 + (x * (3.7 + e) x x
= Terminal value/Step size
= number of elements manipulated in one scan e = time for the operators in the expression
0.38
0.59
0.38
0.59
0.6
0.4
0.6
0.4
Publication 1756-UM001D-EN-P - November 2001
B-6 Estimate Execution Time
Table B.2 Execution Times for Ladder Instructions (Continued)
Instruction: Data type: True Time (
µ s):
1756-L1, -L1Mx 1756-L55Mxx
INSERT n/a 13.8
+ (x * 1.3) 11.0
+ (x * 1.0)
LFU
LFU
LFU
LIM
LFL
LFL
LFL
LFU
LEQ
LES
LES
LFL
JSR/SBR
JSR/SBR
LBL
LEQ
JMP
JSR (no parameters) n/a
JSR/RET
JSR/RET
SINT
INT
JSR/RET
JSR/RET
JSR/SBR
JSR/SBR
DINT
REAL
SINT
INT
1.6
10.8
21.0
20.9
20.9
20.9
21.5
21.5
+ (x * 3.8)
+ (x * 4.2)
+ (x * 3.6)
+ (x * 3.6)
+ (x * 3.8)
+ (x * 4.2)
DINT
REAL
DINT
REAL
DINT
REAL
SINT
INT 10.9
DINT 10.2
0.59
0.38
0.59
9.8
21.6
+ (x * 3.6)
21.5
+ (x * 3.6)
0.2
0.38
REAL
SINT
10.2
12.0
INT 13.4
DINT 14.3
LIM
LN
LOG
LOWER
REAL
DINT
REAL
REAL
REAL n/a
14.2
0.81
3.55
192.9
193.3
7.5
+ (x * 1.4)
MAAT n/a
MAG n/a
MAH (switch/marker) n/a
MAJ n/a
173
862
70
227
110
523
48
107
1.2
10.2
20.2
+ (x * 3.7)
20.1
+ (x * 4.1)
20.2
+ (x * 3.5)
20.2
+ (x * 3.5)
20.8
+ (x * 3.7)
20.7
+ (x * 4.1)
0.6
0.4
0.6
8.0
20.9
+ (x * 3.5)
20.7
+ (x * 3.5)
0.20
0.4
10.7
11.2
11.2
0.8
8.8
8.3
8.3
9.7
2.9
181.9
182.3
6.4
+ (x * 1.1)
Notes: x = number of characters in Source A + number of characters in Source B x = number of parameters
The time is for the JSR/RET pair.
x = number of parameters
The time is for the JSR/SBR pair.
x = number of characters in Source A + number of characters in Source B
Publication 1756-UM001D-EN-P - November 2001
Estimate Execution Time B-7
Table B.2 Execution Times for Ladder Instructions (Continued)
Instruction: Data type: True Time (
µ s):
1756-L1, -L1Mx 1756-L55Mxx
MAJ (w/ merge) n/a
MAM n/a
MAM (w/ merge)
MAPC n/a n/a
MAR
MAS (all w/ move and jog running)
MAS (individual motion types)
MASD n/a n/a n/a n/a
MASR n/a
MATC n/a
MAW
MCCP (cubic)
MCCP (linear)
MCD
MCR
MDR
MDW
MEQ
MGPS (fast shutdown w/ move and jog running)
MGPS (fast stop w/ move and jog running)
MGPS (hard shutdown w/ move and jog running) n/a n/a n/a n/a n/a
DINT n/a
MGS (w/ move and jog running)
MGSD
MGSR
MID n/a n/a n/a n/a n/a n/a n/a n/a
110
135
40
149
161
518
178
84
0.1
146
136
0.59
65
394
471
665
479
168
331
69
58
70
62
67
10.2
+ (x * 1.6)
89
29
103
108
304
105
62
0.1
97
90
0.6
43
247
263
349
295
109
205
71
43
44
53
42
43
8.5
+ (x * 1.3)
MOD
MOD
MOV
MOV
DINT
REAL
20.3
64.1
DINT-DINT 0.5
REAL-REAL 0.8
18.0
57.2
0.4
0.8
Notes: x = number of characters in Source A + number of characters in Source B
Publication 1756-UM001D-EN-P - November 2001
B-8 Estimate Execution Time
Table B.2 Execution Times for Ladder Instructions (Continued)
Instruction: Data type: True Time (
µ s):
1756-L1, -L1Mx 1756-L55Mxx
NOP
NOT
ONS
OR
NEG
NEG
NEQ
NEQ
MRAT
MRP
MSF
MSG
MSO
MUL
MUL
MVM
OSF
OSR
OTE
OTL
OTU
PID (independent - slave mode)
PID (independent)
PID (ISA - dependent)
PID (manual mode)
PID (set output mode)
RAD
RES
RET (in FOR loop)
REAL
T,C or R n/a
RET (no parameters) n/a
RTO TIMER
RTOS - example 1
RTOS - example 2 n/a n/a
SBR (no parameters) n/a
DINT
REAL
DINT
REAL n/a
DINT
BOOL
DINT
BOOL
BOOL
BOOL
BOOL
BOOL n/a n/a n/a n/a n/a
DINT
REAL n/a
0.05
0.51
2.8
0.57
0.57
0.94
0.38
0.38
51
9.6
18.0
11.6
45
89
154
163.6
3.4
3.7
0.2
0.2
0.2
378.6
356.5
425.5
311.0
311.0
18.4
0.32
4.6
4.1
0.43
816.8
1045
4.8
328.0
394.1
284.2
284.2
17.8
0.32
4.5
3.9
0.42
473.9
611.5
4.6
0.05
0.49
2.6
0.55
0.55
0.92
0.4
0.4
35
9.2
17.4
9.7
32
58
102
119.9
2.9
3.1
0.2
0.2
0.2
349.1
Publication 1756-UM001D-EN-P - November 2001
Notes:
Source = 1234.5677
Source = 1.234
Estimate Execution Time B-9 n/a n/a
TIMER
TIMER
DINT
REAL n/a n/a n/a n/a n/a
DINT
REAL
DINT
DINT
DINT
REAL
REAL n/a
SINT
INT
DINT
REAL n/a n/a
REAL
DINT
DINT
DINT
DINT
DINT
REAL
DINT
Table B.2 Execution Times for Ladder Instructions (Continued)
Instruction: Data type: True Time (
µ s):
1756-L1, -L1Mx 1756-L55Mxx
TND
TOD
TOF
TON
TRN
TRN
UID
UIE
UPPER
STOR - example 1
STOR - example 2
SUB
SUB
SWPB (High/Low)
SWPB (Reverse)
SWPB (Word)
TAN
SQO
SQR
SQR
SRT
SIN
SIZE
SQI
SQL
SRT
SSV
STD
STD
STD
STD
STOD - example 1
STOD - example 2
594.8
569.5
0.57
10.7
6.7
5.5
5.9
289.8
0.002
15.0
0.32
0.43
13.1
21.2
37.9
37.3
7.8
+ (x * 1.4)
6.2
9.9
37.5
30.4
229.2
5.6
3.7
6.1
4.9
7.6
27.9
25.7
214.4
4.9
3.1
5.0
35.2
29.3
106.9 + (x * 51.9)
113.4 + (x * 52.5)
87.1
93.3
+ (x * 47.9)
+ (x * 48.3)
113.3 + (x * 51.4)
115.1 + (x * 55.8)
79.0
53.6
93.4
95.8
56.3
36.6
+ (x * 47.5)
+ (x * 52.5)
353.1
333.7
0.55
10.3
5.3
4.7
4.9
272.3
0.01
11.4
0.31
0.42
10.2
16.7
27.9
27.5
6.4
+ (x * 1.1)
XIC BOOL 0.1
0.1
Notes:
Varies with the length and randomness of the numbers.
x = Length
Source = ABCDEFGH1234ABCDEFGH
Source = 1234
Source = ABCDEFGH1.234ABCDEFGH
Source = 1.234
x = number of characters in Source A + number of characters in Source B
Publication 1756-UM001D-EN-P - November 2001
B-10 Estimate Execution Time
Table B.2 Execution Times for Ladder Instructions (Continued)
Instruction: Data type: True Time (
µ s):
1756-L1, -L1Mx 1756-L55Mxx
XIO
XOR
XPY
BOOL
DINT
REAL
0.1
0.57
500.4
0.1
0.54
450.0
Notes:
Actual time depends on the values of the operands.
Table B.3 Execution Times for the GSV and SSVInstructions
Object/Attribute: Instruction:
AXIS AccelerationCommand
AXIS AccelerationDataScaling
AXIS AccelerationDataScalingExp
AXIS AccelerationDataScalingFact
AXIS AccelerationFeedback
AXIS AccelerationFeedforwardGain
AXIS AccelerationFeedforwardGain
AXIS AccelerationLimitBipolar
AXIS AccelerationLimitBipolar
AXIS AccelerationLimitNegative
AXIS AccelerationLimitNegative
AXIS AccelerationLimitPositive
AXIS AccelerationLimitPositive
AXIS ActualAcceleration
AXIS ActualPosition
AXIS ActualVelocity
AXIS ATConfigurationList
AXIS AttributeErrorCode
AXIS AttributeErrorID
AXIS AuxFeedbackConfiguration
AXIS AuxFeedbackRatio
AXIS AuxFeedbackResolution
AXIS AuxFeedbackType
AXIS AuxPositionFeedback
AXIS AverageVelocity
GSV
SSV
GSV
GSV
GSV
SSV
GSV
SSV
GSV
GSV
GSV
GSV
GSV
GSV
SSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
True Time (
µ s):
1756-L1, -L1MX
39.8
60.0
59.8
59.7
88.1
36.0
128.7
36.0
128.7
36.3
36.9
36.4
39.8
38.5
130.4
36.0
128.7
36.8
37.3
36.2
36.6
36.6
34.8
39.8
121.1
Publication 1756-UM001D-EN-P - November 2001
25.8
26.4
26.4
25.1
40.7
59.4
26.6
26.8
28.7
82.6
25.9
106.1
26.0
106.1
26.0
106.1
40.9
40.7
1756-L55MXX
28.7
25.9
26.0
26.2
28.6
27.7
107.5
Estimate Execution Time B-11
Table B.3 Execution Times for the GSV and SSVInstructions (Continued)
Object/Attribute: Instruction: True Time (
µ s):
1756-L1, -L1MX
AXIS AverageVelocityTimebase
AXIS AverageVelocityTimebase
AXIS AxisConfigurationState
AXIS AxisControlBits
AXIS AxisEventBits
AXIS AxisFaultBits
AXIS AxisInfoSelect1
AXIS AxisInfoSelect1
AXIS AxisInfoSelect2
AXIS AxisInfoSelect2
AXIS AxisInstance
AXIS AxisResponseBits
AXIS AxisState
AXIS AxisStatusBits
AXIS AxisType
AXIS AxisType
AXIS BrakeEngageDelayTime
AXIS BrakeOffDelayTime
AXIS BrakeOnDelayTime
AXIS BrakeReleaseDelayTime
AXIS BusRegulatorCapacity
AXIS BusRegulatorID
AXIS C2CConnectionInstance
AXIS C2CMapInstance
AXIS CommandAcceleration
AXIS CommandPosition
AXIS CommandVelocity
AXIS ConversionConstant
AXIS ConversionConstant
AXIS DampingFactor
AXIS DampingFactor
AXIS DCBusVoltage
AXIS DriveAxisID
AXIS DriveCapacity
AXIS DriveFaultAction
SSV
GSV
SSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
SSV
GSV
GSV
SSV
GSV
GSV
GSV
GSV
GSV
GSV
SSV
GSV
SSV
GSV
GSV
GSV
GSV
GSV
SSV
GSV
SSV
GSV
GSV
59.9
60.2
59.7
40.9
126.4
38.5
130.5
37.2
37.2
36.8
40.3
40.4
128.7
35.6
36.0
128.7
36.2
37.2
28.2
38.5
130.4
34.4
108.8
24.2
40.1
36.3
123.7
40.6
130.7
28.8
39.1
40.1
40.0
38.5
130.4
29.2
29.2
40.9
40.9
40.7
29.4
105.7
27.7
107.5
26.9
25.8
26.9
19.7
26.1
103.8
106.0
25.8
26.0
106.0
26.9
25.9
24.9
84.1
18.0
29.1
27.6
107.6
27.7
107.6
1756-L55MXX
29.3
108.0
20.7
28.1
29.1
29.1
Publication 1756-UM001D-EN-P - November 2001
B-12 Estimate Execution Time
Table B.3 Execution Times for the GSV and SSVInstructions (Continued)
Object/Attribute: Instruction: True Time (
µ s):
1756-L1, -L1MX
AXIS DriveFaultAction
AXIS DriveFaultBits
AXIS DriveModelTimeConstant
AXIS DriveModelTimeConstant
AXIS DrivePolarity
AXIS DrivePolarity
AXIS DriveScalingBits
AXIS DriveStatusBits
AXIS DriveThermalFaultAction
AXIS DriveThermalFaultAction
AXIS DriveWarningBits
AXIS ExternalDriveType
AXIS FaultConfigurationBits
AXIS FaultConfigurationBits
AXIS FeedbackFaultAction
AXIS FeedbackFaultAction
AXIS FeedbackNoiseFaultAction
AXIS FeedbackNoiseFaultAction
AXIS FrictionCompensation
AXIS FrictionCompensation
AXIS GroupInstance
AXIS HardOvertravelFaultAction
AXIS HardOvertravelFaultAction
AXIS HomeConfigurationBits
AXIS HomeConfigurationBits
AXIS HomeDirection
AXIS HomeDirection
AXIS HomeMode
AXIS HomeMode
AXIS HomeOffset
AXIS HomeOffset
AXIS HomePosition
AXIS HomePosition
AXIS HomeReturnSpeed
AXIS HomeReturnSpeed
SSV
GSV
SSV
GSV
SSV
GSV
SSV
GSV
GSV
GSV
SSV
GSV
GSV
SSV
GSV
SSV
SSV
GSV
SSV
GSV
SSV
GSV
SSV
GSV
SSV
GSV
GSV
GSV
SSV
GSV
GSV
SSV
GSV
GSV
SSV
130.9
28.6
130.2
27.9
130.2
41.0
130.8
41.0
28.5
129.4
38.0
130.0
28.0
28.6
129.4
41.0
130.8
41.2
131.3
25.6
127.9
37.2
37.8
38.4
130.5
28.2
129.4
129.4
37.2
38.5
130.4
36.6
129.3
36.6
37.2
Publication 1756-UM001D-EN-P - November 2001
106.3
29.6
108.2
20.6
107.6
20.2
107.6
29.5
108.2
29.5
108.2
29.6
108.2
19.7
106.3
19.8
106.3
27.3
107.0
20.7
19.9
26.4
26.9
18.1
105.4
26.9
27.4
27.7
107.5
1756-L55MXX
106.4
26.9
27.7
107.5
26.4
106.5
Estimate Execution Time B-13
Table B.3 Execution Times for the GSV and SSVInstructions (Continued)
Object/Attribute: Instruction: True Time (
µ s):
1756-L1, -L1MX
AXIS HomeSequence
AXIS HomeSequence
AXIS HomeSpeed
AXIS HomeSpeed
AXIS IntegratorHoldEnable
AXIS IntegratorHoldEnable
AXIS InterpolatedActualPosition
AXIS InterpolatedCommandPosition
AXIS InterpolationTime
AXIS InterpolationTime
AXIS MapInstance
AXIS MarkerDistance
AXIS MasterOffset
AXIS MaximumAcceleration
AXIS MaximumAcceleration
AXIS MaximumDeceleration
AXIS MaximumDeceleration
AXIS MaximumNegativeTravel
AXIS MaximumNegativeTravel
AXIS MaximumPositiveTravel
AXIS MaximumPositiveTravel
AXIS MaximumSpeed
AXIS MaximumSpeed
AXIS MDTConfigurationList
AXIS MemoryUse
AXIS MemoryUse
AXIS ModuleChannel
AXIS ModuleClassCode
AXIS ModuleFaultBits
AXIS MotionStatusBits
AXIS MotorCapacity
AXIS MotorData
AXIS MotorElectricalAngle
AXIS MotorFeedbackConfiguration
AXIS MotorFeedbackResolution
GSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
SSV
GSV
SSV
GSV
SSV
GSV
SSV
GSV
GSV
GSV
GSV
GSV
GSV
SSV
GSV
GSV
SSV
GSV
GSV
GSV
SSV
GSV
GSV
GSV
SSV
GSV
SSV
22.9
22.9
28.2
41.4
39.1
40.0
37.2
563.9
131.3
38.0
129.9
38.0
129.9
41.2
131.3
48.3
37.2
35.6
36.6
40.0
130.1
40.4
39.8
59.4
41.2
131.3
40.9
29.0
130.2
41.2
131.3
28.2
129.4
39.3
40.6
20.4
29.8
28.1
29.1
108.2
32.9
17.4
17.4
26.9
355.6
26.9
25.5
26.4
108.2
29.4
108.2
27.3
107.0
27.3
107.0
29.6
29.3
28.6
40.5
29.6
28.7
29.3
29.1
107.9
1756-L55MXX
20.7
107.6
29.6
108.2
19.7
106.4
Publication 1756-UM001D-EN-P - November 2001
B-14 Estimate Execution Time
Table B.3 Execution Times for the GSV and SSVInstructions (Continued)
Object/Attribute: Instruction: True Time (
µ s):
1756-L1, -L1MX
AXIS MotorFeedbackType
AXIS MotorID
AXIS MotorThermalFaultAction
AXIS MotorThermalFaultAction
AXIS NegativeDynamicTorqueLimit
AXIS OutputCamExecutionTargets
AXIS OutputCamLockStatus
AXIS OutputCamPendingStatus
AXIS OutputCamStatus
AXIS OutputCamTransitionStatus
AXIS OutputLimit
AXIS OutputLimit
AXIS OutputLPFilterBandwidth
AXIS OutputLPFilterBandwidth
AXIS OutputNotchFilterFrequency
AXIS OutputNotchFilterFrequency
AXIS OutputOffset
AXIS OutputOffset
AXIS placeholder
AXIS PositionCommand
AXIS PositionDataScaling
AXIS PositionDataScalingExp
AXIS PositionDataScalingFactor
AXIS PositionError
AXIS PositionErrorFaultAction
AXIS PositionErrorFaultAction
AXIS PositionErrorTolerance
AXIS PositionErrorTolerance
AXIS PositionFeedback
AXIS PositionIntegralGain
AXIS PositionIntegralGain
AXIS PositionIntegratorError
AXIS PositionLockTolerance
AXIS PositionLockTolerance
AXIS PositionPolarity
GSV
GSV
SSV
GSV
GSV
SSV
GSV
SSV
GSV
GSV
GSV
GSV
GSV
SSV
GSV
GSV
GSV
SSV
GSV
GSV
SSV
GSV
SSV
GSV
GSV
GSV
SSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
SSV
27.5
129.4
38.0
129.9
39.8
38.5
130.4
39.8
36.5
34.4
36.7
39.8
37.0
129.9
0.0
39.9
38.1
129.9
36.2
39.7
39.6
37.3
129.9
38.5
130.4
36.0
128.7
37.2
39.1
39.6
38.1
35.9
36.6
25.9
128.0
Publication 1756-UM001D-EN-P - November 2001
26.4
28.6
19.4
106.4
27.3
107.0
28.6
27.7
107.6
28.6
27.3
107.0
25.7
0.0
28.6
25.9
24.9
26.0
106.1
26.9
107.0
28.9
28.1
28.9
28.8
27.0
107.0
27.7
107.6
1756-L55MXX
25.6
26.4
18.3
105.3
26.9
28.6
Estimate Execution Time B-15
Table B.3 Execution Times for the GSV and SSVInstructions (Continued)
Object/Attribute: Instruction: True Time (
µ s):
1756-L1, -L1MX
AXIS PositionProportionalGain
AXIS PositionProportionalGain
AXIS PositionServoBandwidth
AXIS PositionServoBandwidth
AXIS PositionUnwind
AXIS PositionUnwind
AXIS PositiveDynamicTorqueLimit
AXIS PowerCapacity
AXIS PowerSupplyID
AXIS PrimaryOperationMode
AXIS ProgrammedStopMode
AXIS ProgrammedStopMode
AXIS Registration1Position
AXIS Registration1Time
AXIS Registration2Position
AXIS Registration2Time
AXIS RotaryAxis
AXIS RotaryAxis
AXIS RotaryAxis
AXIS RotationalPosResolution
AXIS SercosErrorCode
AXIS ServoFaultBits
AXIS ServoLoopConfiguration
AXIS ServoLoopConfiguration
AXIS ServoOutputLevel
AXIS ServoPolarityBits
AXIS ServoPolarityBits
AXIS ServoStatusBits
AXIS SoftOvertravelFaultAction
AXIS SoftOvertravelFaultAction
AXIS StartActualPosition
AXIS StartCommandPosition
AXIS StartMasterOffset
AXIS StoppingTimeLimit
AXIS StoppingTimeLimit
GSV
SSV
GSV
GSV
GSV
GSV
SSV
GSV
GSV
GSV
GSV
SSV
GSV
GSV
SSV
GSV
GSV
GSV
SSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
SSV
GSV
SSV
GSV
GSV
GSV
SSV
GSV
SSV
39.1
37.8
130.5
38.4
28.9
129.4
39.6
39.1
29.2
29.2
130.1
36.5
36.3
38.4
36.7
108.8
40.6
36.0
128.7
39.6
37.3
39.3
39.7
36.2
35.1
29.9
130.5
38.5
130.5
38.5
130.5
39.4
130.6
37.2
37.2
26.4
94.1
28.3
27.3
107.6
27.8
20.1
106.3
28.8
28.6
29.3
26.0
106.1
28.7
28.9
20.8
20.8
107.5
26.4
26.0
27.8
26.8
26.9
25.6
25.2
21.1
107.7
28.9
27.8
1756-L55MXX
27.7
107.5
27.7
107.4
28.7
108.0
Publication 1756-UM001D-EN-P - November 2001
B-16 Estimate Execution Time
Table B.3 Execution Times for the GSV and SSVInstructions (Continued)
Object/Attribute: Instruction: True Time (
µ s):
1756-L1, -L1MX
AXIS StoppingTorque
AXIS StoppingTorque
AXIS StrobeActualPosition
AXIS StrobeCommandPosition
AXIS StrobeMasterOffset
AXIS TelegramType
AXIS TestDirectionForward
AXIS TestIncrement
AXIS TestIncrement
AXIS TestStatus
AXIS TorqueCommand
AXIS TorqueDataScaling
AXIS TorqueDataScalingExp
AXIS TorqueDataScalingFactor
AXIS TorqueFeedback
AXIS TorqueLimitBipolar
AXIS TorqueLimitBipolar
AXIS TorqueLimitNegative
AXIS TorqueLimitNegative
AXIS TorqueLimitPositive
AXIS TorqueLimitPositive
AXIS TorqueLimitSource
AXIS TorqueOffset
AXIS TorqueOffset
AXIS TorquePolarity
AXIS TorqueScaling
AXIS TorqueScaling
AXIS TorqueThreshold
AXIS TorqueThreshold
AXIS TuneAcceleration
AXIS TuneAccelerationTime
AXIS TuneDeceleration
AXIS TuneDecelerationTime
AXIS TuneInertia
AXIS TuneRiseTime
SSV
GSV
GSV
GSV
GSV
GSV
SSV
GSV
SSV
GSV
GSV
SSV
SSV
GSV
SSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
SSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
SSV
GSV
GSV
36.2
38.5
130.4
36.0
128.7
39.1
39.1
39.1
128.7
36.0
128.8
36.0
128.7
37.2
38.0
129.9
39.1
39.1
38.4
36.2
36.7
37.2
36.0
130.4
37.6
37.2
33.9
40.6
36.0
29.0
38.5
36.0
128.7
39.6
40.7
Publication 1756-UM001D-EN-P - November 2001
27.3
107.0
25.7
27.7
107.6
25.9
106.1
28.1
28.1
28.1
28.1
28.1
27.8
26.9
26.0
106.1
26.0
106.1
26.0
106.1
26.8
26.8
24.6
25.8
26.4
20.4
27.6
107.4
27.0
1756-L55MXX
25.9
106.1
28.9
29.3
29.3
25.7
Estimate Execution Time B-17
Table B.3 Execution Times for the GSV and SSVInstructions (Continued)
Object/Attribute: Instruction: True Time (
µ s):
1756-L1, -L1MX
AXIS TuneSpeedScaling
AXIS TuneStatus
AXIS TuningConfigurationBits
AXIS TuningConfigurationBits
AXIS TuningSpeed
AXIS TuningSpeed
AXIS TuningTorque
AXIS TuningTorque
AXIS TuningTravelLimit
AXIS TuningTravelLimit
AXIS VelocityCommand
AXIS VelocityDataScaling
AXIS VelocityDataScalingExp
AXIS VelocityDataScalingFactor
AXIS VelocityDroop
AXIS VelocityDroop
AXIS VelocityError
AXIS VelocityFeedback
AXIS VelocityFeedforwardGain
AXIS VelocityFeedforwardGain
AXIS VelocityIntegralGain
AXIS VelocityIntegralGain
AXIS VelocityIntegratorError
AXIS VelocityLimitBipolar
AXIS VelocityLimitBipolar
AXIS VelocityLimitNegative
AXIS VelocityLimitNegative
AXIS VelocityLimitPositive
AXIS VelocityLimitPositive
AXIS VelocityOffset
AXIS VelocityOffset
AXIS VelocityPolarity
AXIS VelocityProportionalGain
AXIS VelocityProportionalGain
AXIS VelocityScaling
SSV
GSV
SSV
GSV
SSV
GSV
SSV
GSV
GSV
SSV
GSV
GSV
GSV
GSV
GSV
SSV
GSV
SSV
GSV
GSV
GSV
GSV
SSV
GSV
SSV
GSV
GSV
GSV
SSV
GSV
SSV
GSV
GSV
GSV
SSV
128.7
36.0
128.7
36.0
128.7
38.0
129.9
36.2
39.8
39.8
38.5
130.5
38.5
130.5
39.8
36.0
33.9
130.4
37.8
38.5
130.4
39.8
35.3
35.7
36.7
36.0
128.7
38.4
36.2
38.5
130.4
38.5
130.4
38.5
130.4
28.6
26.0
106.0
25.9
106.1
26.0
106.1
27.3
107.0
25.8
27.7
107.6
27.3
26.0
106.1
28.6
28.6
27.7
107.5
27.7
107.6
28.7
25.3
25.5
26.4
27.7
107.4
27.7
107.4
1756-L55MXX
27.8
26.3
27.6
107.4
27.6
107.4
Publication 1756-UM001D-EN-P - November 2001
B-18 Estimate Execution Time
Table B.3 Execution Times for the GSV and SSVInstructions (Continued)
Object/Attribute: Instruction: True Time (
µ s):
1756-L1, -L1MX
AXIS VelocityScaling
AXIS VelocityServoBandwidth
AXIS VelocityServoBandwidth
AXIS VelocityStandstillWindow
AXIS VelocityStandstillWindow
AXIS VelocityThreshold
AXIS VelocityThreshold
AXIS VelocityWindow
AXIS VelocityWindow
AXIS WatchPosition
SSV
GSV
CONTROLLER DataTablePadPercentage GSV
CONTROLLER KeepTestEditsOnSwitchOver GSV
CONTROLLER RedundancyEnabled
CONTROLLER TimeSlice
CONTROLLER TimeSlice
CONTROLLERDEVICE DeviceName
GSV
GSV
SSV
GSV
SSV
GSV
SSV
GSV
SSV
GSV
SSV
GSV
CONTROLLERDEVICE ProductCode
CONTROLLERDEVICE ProductRev
CONTROLLERDEVICE SerialNumber
CONTROLLERDEVICE Status
CONTROLLERDEVICE Type
CONTROLLERDEVICE Vendor
CST CurrentStatus
CST CurrentValue
DF1 ACKTimeout
DF1 DiagnosticCounters
DF1 DuplicateDetection
DF1 EmbeddedResponseEnable
DF1 ENQTransmitLimit
DF1 EOTSuppression
DF1 ErrorDetection
DF1 MasterMessageTransmit
DF1 MaxStationAddress
DF1 NAKReceiveLimit
DF1 NormalPollGroupSize
GSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
GSV
14.8
14.8
14.8
14.8
24.8
65.2
14.8
14.8
22.8
22.8
21.8
36.8
22.8
22.8
24.6
22.8
14.8
14.8
23.0
n/a
24.3
50.2
55.6
128.7
39.6
n/a n/a
130.5
38.5
130.4
36.0
128.7
36.0
128.7
36.0
Publication 1756-UM001D-EN-P - November 2001
13.5
13.5
13.5
13.5
20.1
32.2
22.0
53.7
13.5
13.5
13.5
13.5
20.5
20.7
19.2
19.2
19.2
43.0
48.6
19.2
19.2
19.8
12.8
12.9
19.8
106.1
26.0
106.1
28.9
1756-L55MXX
107.6
27.7
107.4
26.0
106.1
26.0
Estimate Execution Time B-19
Table B.3 Execution Times for the GSV and SSVInstructions (Continued)
Object/Attribute: Instruction: True Time (
µ s):
1756-L1, -L1MX
DF1 PendingACKTimeout
DF1 PendingDuplicateDetection
DF1 PendingEmbeddedResponseEnable
DF1 PendingENQTransmitLimit
DF1 PendingEOTSuppression
DF1 PendingErrorDetection
DF1 PendingMasterMessageTransmit
DF1 PendingMaxStationAddress
DF1 PendingNAKReceiveLimit
DF1 PendingNormalPollGroupSize
DF1 PendingPollingMode
DF1 PendingReplyMessageWait
DF1 PendingSlavePollTimeout
DF1 PendingStationAddress
DF1 PendingTokenHoldFactor
DF1 PendingTransmitRetries
DF1 PollingMode
DF1 ReplyMessageWait
DF1 SlavePollTimeout
DF1 StationAddress
DF1 TokenHoldFactor
DF1 TransmitRetries
FAULTLOG MajorEvents
FAULTLOG MajorEvents
FAULTLOG MajorFaultBits
FAULTLOG MajorFaultBits
FAULTLOG MinorEvents
FAULTLOG MinorEvents
FAULTLOG MinorFaultBits
FAULTLOG MinorFaultBits
MESSAGE ConnectionPath
MESSAGE ConnectionPath
MESSAGE ConnectionRate
MESSAGE ConnectionRate
MESSAGE MessageType
GSV
SSV
GSV
SSV
GSV
SSV
GSV
SSV
GSV
GSV
GSV
SSV
GSV
GSV
GSV
GSV
GSV
SSV
GSV
SSV
SSV
SSV
SSV
SSV
SSV
SSV
SSV
SSV
SSV
SSV
SSV
SSV
SSV
SSV
SSV
25.8
15.9
54.4
19.2
25.8
15.9
24.1
15.2
14.8
14.8
24.1
15.2
14.8
24.8
24.8
23.0
25.7
14.6
15.7
21.2
21.8
21.6
22.4
22.4
22.1
104.9
21.2
21.2
21.9
21.7
21.6
22.4
19.8
21.7
21.2
19.7
21.2
21.2
21.6
19.7
21.2
21.2
21.6
41.2
24.8
21.0
20.7
12.5
22.0
20.5
13.5
13.5
91.4
91.2
13.5
22.0
91.6
92.2
92.1
92.0
91.6
91.6
91.2
91.8
1756-L55MXX
92.1
90.1
91.6
91.2
91.2
91.7
Publication 1756-UM001D-EN-P - November 2001
B-20 Estimate Execution Time
Table B.3 Execution Times for the GSV and SSVInstructions (Continued)
Object/Attribute: Instruction: True Time (
µ s):
1756-L1, -L1MX
MESSAGE MessageType
MESSAGE Port
MESSAGE Port
MESSAGE TimeoutMultiplier
MESSAGE TimeoutMultiplier
MESSAGE UnconnectedTimeout
MESSAGE UnconnectedTimeout
MODULE EntryStatus
MODULE FaultCode
MODULE FaultInfo
MODULE ForceStatus
MODULE Instance
MODULE LEDStatus
MODULE Mode
MODULE Mode
MOTIONGROUP AutoTagUpdate
MOTIONGROUP AutoTagUpdate
MOTIONGROUP Instance
MOTIONGROUP MaximumInterval
MOTIONGROUP MaximumInterval
MOTIONGROUP MinimumInterval
MOTIONGROUP StartTime
MOTIONGROUP TaskLastScanTime
MOTIONGROUP TaskMaximumScanTime
MOTIONGROUP TaskMaximumScanTime
MOTIONGROUP Watchdog
MOTIONGROUP Watchdog
PROGRAM DisableFlag
PROGRAM DisableFlag
PROGRAM Instance
PROGRAM LastScanTime
PROGRAM LastScanTime
PROGRAM MajorFaultRecord
PROGRAM MajorFaultRecord
PROGRAM MaxScanTime
SSV
GSV
GSV
SSV
SSV
GSV
SSV
GSV
GSV
GSV
GSV
GSV
SSV
GSV
GSV
SSV
GSV
SSV
GSV
GSV
GSV
SSV
GSV
GSV
GSV
GSV
GSV
SSV
GSV
SSV
GSV
SSV
GSV
SSV
GSV
34.5
18.8
25.9
16.2
17.3
28.0
17.3
16.4
34.2
34.2
28.0
28.0
16.0
27.2
34.2
27.2
70.8
47.3
25.9
17.2
24.7
14.2
17.5
23.8
25.5
17.7
18.4
13.3
25.7
14.6
23.8
66.2
15.7
27.7
15.7
Publication 1756-UM001D-EN-P - November 2001
22.7
13.5
35.5
15.6
22.5
22.5
22.6
22.5
21.7
21.9
60.1
47.6
21.7
27.7
30.9
27.7
27.7
20.4
13.7
21.6
19.8
14.8
15.5
14.4
20.7
20.7
20.0
20.1
21.5
1756-L55MXX
57.6
12.5
30.0
12.5
19.7
20.9
Estimate Execution Time B-21
Table B.3 Execution Times for the GSV and SSVInstructions (Continued)
Object/Attribute: Instruction: True Time (
µ s):
1756-L1, -L1MX
PROGRAM MaxScanTime
PROGRAM MinorFaultRecord
PROGRAM MinorFaultRecord
PROGRAM SFCRestart
PROGRAM SFCRestart
REDUNDANCY MaxDataTransferSize
ROUTINE Instance
SERIALPORT BaudRate
SERIALPORT DataBits
SERIALPORT Parity
SERIALPORT PendingBaudRate
SERIALPORT PendingDataBits
SERIALPORT PendingParity
SERIALPORT PendingRTSOffDelay
SERIALPORT PendingRTSSendDelay
SERIALPORT PendingStopBits
SERIALPORT RTSOffDelay
SERIALPORT RTSSendDelay
SERIALPORT StopBits
TASK Instance
TASK LastScanTime
TASK LastScanTime
TASK MaxInterval
TASK MaxInterval
TASK MaxScanTime
TASK MaxScanTime
TASK MinInterval
TASK MinInterval
TASK Priority
TASK Rate
TASK StartTime
TASK StartTime
TASK Watchdog
TASK Watchdog
WALLCLOCKTIME CSTOffset
GSV
GSV
GSV
SSV
GSV
SSV
GSV
SSV
GSV
SSV
GSV
SSV
GSV
GSV
GSV
GSV
GSV
SSV
GSV
SSV
SSV
SSV
SSV
GSV
GSV
SSV
SSV
SSV
GSV
GSV
GSV
SSV
GSV
SSV
GSV
24.3
26.1
31.9
22.3
26.0
15.9
32.0
22.3
26.0
15.9
32.0
22.3
23.2
23.2
15.0
19.0
26.0
30.7
31.1
15.0
15.0
103.6
103.6
20.3
20.5
20.8
103.6
30.5
n/a
17.8
24.9
16.2
70.8
47.3
17.0
26.4
27.1
19.9
21.4
26.4
27.1
21.4
21.7
26.4
27.1
21.4
32.2
24.7
11.9
15.4
21.4
21.7
90.5
90.0
18.9
18.9
90.0
90.0
90.0
90.2
15.7
20.3
11.9
11.9
1756-L55MXX
21.9
60.1
47.6
14.1
32.1
21.6
Publication 1756-UM001D-EN-P - November 2001
B-22 Estimate Execution Time
Table B.3 Execution Times for the GSV and SSVInstructions (Continued)
Object/Attribute: Instruction: True Time (
µ s):
1756-L1, -L1MX
WALLCLOCKTIME CSTOffset
WALLCLOCKTIME CurrentValue
WALLCLOCKTIME CurrentValue
WALLCLOCKTIME DateTime
WALLCLOCKTIME DateTime
SSV
GSV
SSV
GSV
SSV
1764.2
42.9
67.4
72.2
117.6
Table B.4 Array Index Times
For a tag in the subscript of a: one dimension array two dimension array three dimension array
1756-L55MXX
1257.4
33.3
59.2
57.0
100.7
Add (
µ s):
1.5
22
27
Publication 1756-UM001D-EN-P - November 2001
Estimate Execution Time B-23
Estimate Execution Time of a Function Block Routine
42609
1. For each function block instruction, add the time from Table B.5 on page B-24.
2. For each IREF and OREF, add the following time. (Skip any immediate values.)
For an:
IREF
OREF
With a data type of:
BOOL
DINT
REAL
BOOL
DINT
REAL
1.00
0.16
0.16
0.16
Add (
µ s):
1756-L1, -L1Mx
0.56
0.62
1756-L55Mx
0.55
0.60
0.96
0.16
0.16
0.15
3. For each wire, add the following time:
If the wire connects a:
BOOL-to-BOOL
DINT-to-DINT
DINT-to-REAL
REAL-to-DINT
REAL-to-REAL
Add (
µ s):
1756-L1, -L1Mx
0.40
0.46
8.98
13.26
0.83
1756-L55Mx
0.39
0.45
7.32
10.59
0.81
Publication 1756-UM001D-EN-P - November 2001
B-24 Estimate Execution Time
EXAMPLE
Estimate the execution time of a function block routine for a
1756-L1 controller
0.62
µ s for DINT IREF
8.98
µ s for
DINT-to-REAL wire
12
µ s for ADD block
ADD
DINT
20
µ s for DIV block
DIV
REAL
1
µ s for REAL IREF
0.83
µ s for REAL-to-REAL wire
0.83
µ s for
REAL-to-REAL wire
42609
Publication 1756-UM001D-EN-P - November 2001
For each function block instruction, add the following time:
Table B.5 Execution Times for Function Block Instructions
Instruction: Time (
µ s):
1756-L1, -L1Mx
BOR
BTDT
BXOR
COS
CTUD
ABS
ACS
ADD
ALM
AND
ASN
ATN
BAND
BNOT
10
14
9
224
29
2
273
12
105
1
264
226
9
10
9
12
8
209
14
72
1
243
214
8
8
1756-L55Mx
2
251
11
Notes:
Estimate Execution Time B-25
Table B.5 Execution Times for Function Block Instructions (Continued)
Instruction: Time (
µ s): Notes:
D2SD
1756-L1, -L1Mx
78
1756-L55Mx
60
HLL
HPF
INTG
JKFF
LDL2
LDLG
LEQ
LES
LIM
LN
LOG
LPF
MAVE (uniform)
D3SD
DEDT
DEG
DERV
DFF
DIV
12
20
EQU 2
ESEL-Average Sel.
85
96
113
20
104
ESEL-High Select
ESEL-Low Select
71
80
ESEL-Manual 34
ESEL-Median Sel.
138
FGEN
FRD
GEQ
GRT
2
2
142
10
2
2
283
222
24
302
104
14
5
194
194
298
61 + (x * 16.3)
MAVE (weighted) 46 + (x * 11.5)
2
2
193
141
19
196
72
11
4
182
183
193
49 + (x * 9.7)
2
2
97
8
53
60
29
103
10
19
2
62
73
80
19
68
38 + (x * 7.1) x = number of samples x = number of samples
MAXC
MEQ
23
2
22
2
Publication 1756-UM001D-EN-P - November 2001
B-26 Estimate Execution Time
Publication 1756-UM001D-EN-P - November 2001
SIN
SNEG
SOC
SQR
SRTP
SSUM
RESD
RLIM
RMPS
RTOR
SCL
SCRV
SEL
SETD
OR
OSFI
OSRI
PI
PIDE
PMUL
POSP
RAD
MUL
MUX
MVMT
NEG
NEQ
NOT
NTCH
Table B.5 Execution Times for Function Block Instructions (Continued)
Instruction: Time (
µ s): Notes:
MINC
1756-L1, -L1Mx
24
1756-L55Mx
23
MOD
MSTD
65
136 + (x * 49.0)
58
91 + (x * 28.8) x = number of samples
63
268
15
10
10
96
163
57
230
16
239
39
155
32 + (x * 28.9)
589
135
136
19
1
13
12
190
19
24
13
2
2
1
357
41
178
13
10
11
72
111
37
215
14
168
29
100
25 + (x * 17.2)
410
86
88
18
1
9
9
133
18
21
11
2
2
1
236 x = number of samples
SUB 12 11
Estimate Execution Time B-27
Table B.5 Execution Times for Function Block Instructions (Continued)
Instruction: Time (
µ s): Notes:
TAN
1756-L1, -L1Mx
291
1756-L55Mx
273
TOD
TOFR
TONR
TOT
TRN
UPDN
XOR
XPY
14
27
2
401
16
48
52
118
11
20
1
374
12
35
35
83
Publication 1756-UM001D-EN-P - November 2001
B-28 Estimate Execution Time
Estimate Execution Time of a Motion Action
Use the following table to determine the time required for the controller to execute various motion actions.
Table B.6 Execution Times for Motion Actions
Motion state or action
(
∆
= per axis) motion task overhead servo axis
∆ virtual axis
∆ consumed axis
∆
Logix5550 average execution time (
233
179
172
896
(1) auto tag update
AXIS_SERVO data type
AXIS_SERVO_DRIVE data type
AXIS_VIRTUAL data type
197 servo on
∆ trap move
∆
S-curve move
∆
AXIS_CONSUMED data type trap jog
∆
S-curve jog
∆
gearing
gearing actual
∆ clutch
∆ command
∆ clutch
∆ position camming (actual, linear)
∆
108
33
230
358
220
328
266
166
83
138
441 position camming (actual, cubic)
∆
531 position camming (command, linear)
∆
232 position camming (command, cubic)
∆
356 time camming (linear)
∆ time camming (cubic)
∆
180
287
µ s)
Logix5555 average execution time (
131
115
105
573
114
79
19
135
213
124
197
158
72
65
76
239
302
144
210
117
167
µ s)
(1)
This value is worst case (producer/consumer update ratio = 2/3). To reduce the time by 25%, use a consumer coarse update period that is an integer multiple of the producer coarse update period (e.g., 2/4).
Publication 1756-UM001D-EN-P - November 2001
Appendix
C
Estimate Memory Use
Using This Appendix Use this appendix to calculate the memory used for data conversions, instructions, and array indexes. Values are for ControlLogix controllers
(Cat. No. 1756-L1, -L1Mx, -L55Mxx) and RSLogix 5000
™
software.
TIP
When you download your project, the controller optimizes memory use, which could reduce your calculated memory use by as much as 10% from the values presented in this appendix.
To calculate the memory for:
See page:
1 Publication 1756-UM001D-EN-P - November 2001
C-2 Estimate Memory Use
Data Conversions If you use a data type that is not an optimal data type or if you mix data types, you must add memory for data conversion.
Sign-Extension Memory Requirements
Use the following table to determine the memory required to convert data by sign-extension.
Table C.1 Memory Size of a Conversion by Sign-Extension
To convert a:
Source operand
Destination operand
From a:
SINT
INT
DINT
DINT
REAL
To a:
DINT
REAL
DINT
REAL
REAL
SINT
INT
REAL
SINT
INT
DINT
52
76
72
72
72
Add (bytes):
48
120
60
132
76
52
Zero-Fill Memory Requirements
Use the following table to determine the memory required to convert data by zero-fill.
Table C.2 Memory Size of a Conversion by Zero-Fill
To convert a:
Source operand
From a:
SINT
INT
Destination operand DINT
To a:
DINT
DINT
SINT
INT
Add (bytes):
0
8
88
100
Publication 1756-UM001D-EN-P - November 2001
Ladder Instructions
Estimate Memory Use C-3
Examples:
Instruction:
ADD
Source A
Source B
Destination
MUL
Source A
Source B
Destination
REAL
REAL
DINT
DINT
Data Type:
REAL
DINT
REAL
REAL
Memory (bytes):
44 bytes for the ADD instruction
76 bytes for DINT to REAL conversion by sign-extension
120 bytes total
44 bytes for MUL instruction
76 bytes for DINT to REAL conversion by sign-extension
76 bytes for REAL to DINT conversion by sign-extension
192 bytes total
The following table shows the memory use of the ladder instructions.
For those instructions that use an expression (CMP, CPT, FAL, FSC), add memory for each operation within the expression. For each operation, use the value for the corresponding instruction.
Example:
Instruction:
CMP ( tag_a * tag_b / 100)
* (MUL)
/ (DIV)
Data Type:
REAL
REAL
Memory:
76 bytes overhead
44 bytes for the MUL operation
44 bytes for the DIV operation
164 bytes total
Publication 1756-UM001D-EN-P - November 2001
C-4 Estimate Memory Use
Publication 1756-UM001D-EN-P - November 2001
Table C.3 Memory Size of Ladder Instructions (Continued)
CPT
CTD
CTU
DDT
CONCAT
COP
COS
CPS
BSR
BTD
CLR
CMP
AWA
AWT
BRK
BSL
DEG
DELETE
DIV
DTOS
DTR
EQU
FAL
ARL
ASN
ATN
AVE
AFI
AHL
AND
ARD
Instruction:
ACL
ACS
ACS
ADD
ADD
76
8
8
72
116
64
140
64
52
52
20
76
80
80
44
52
40
20
92
144
108
44
72
76
140
140
164
4
68
28
76
Memory for DINT (bytes): Memory for REAL (bytes):
64
140
140
28
28
48
48
44
44
48
48
116
20
76
64
48
64
96
52
44
20
116
Estimate Memory Use C-5
Table C.3 Memory Size of Ladder Instructions (Continued)
LOG
LOWER
MAAT
MAFR
MAG
MAH
MAHD
MAJ
LFL
LFU
LIM
LN
JSR
LBL
LEQ
LES
MAM
MAOC
MAPC
MAR
MAS
MASD
MASR
FOR
FRD
FSC
GEQ
GRT
GSV
INSERT
JMP
Instruction:
FBC
FFL
FFU
FIND
FLL
216
56
72
256
140
88
56
56
64
64
52
140
56
12
20
20
308
480
168
192
136
56
56
20
84
124
24
64
40
148
20
64
64
108
60
Memory for DINT (bytes): Memory for REAL (bytes):
72
64
64
60
152
36
36
84
36
36
64
64
44
48
48
172
116
124
96
84
Publication 1756-UM001D-EN-P - November 2001
C-6 Estimate Memory Use
Publication 1756-UM001D-EN-P - November 2001
Table C.3 Memory Size of Ladder Instructions (Continued)
MRP
MSF
MSG
MSO
MUL
MVM
NEG
NEQ
MGSD
MGSP
MGSR
MID
MOD
MOV
MRAT
MRHD
NOP
NOT
ONS
OR
OSF
OSR
OTE
MDF
MDO
MDOC
MDR
MDW
MEQ
MGPS
MGS
Instruction:
MATC
MAW
MCCP
MCD
MCR
44
44
28
20
124
56
36
56
44
24
56
64
52
52
52
108
44
44
4
4
28
36
28
56
32
60
60
56
124
120
64
Memory for DINT (bytes): Memory for REAL (bytes):
124
72 124
180
236
4
96
72
44
48
72
44
56
20
Estimate Memory Use C-7
Table C.3 Memory Size of Ladder Instructions (Continued)
TOD
TOF
TON
TRN
SUB
SWPB
TAN
TND
SQL
SQO
SQR
SRT
SSV
STD
STOD
STOR
UID
UIE
UPPER
XIC
XIO
XOR
XPY
Instruction:
OTL
OTU
PID
RAD
RES
RET
RTO
RTOS
SBR
SIN
SIZE
SOR - EOR (empty rung)
SQI
40
8
8
40
28
72
140
12
84
104
72
72
48
44
40
108
36
36
88
4
4
28
144
140
124
16
48
40
8
72
40
Memory for DINT (bytes): Memory for REAL (bytes):
4
4
228
144
8
92
52
48
40
108
84
44
48
92
52
Publication 1756-UM001D-EN-P - November 2001
C-8 Estimate Memory Use
Function Block Instructions The following table shows the memory use of the function block instructions.
Table C.4 Memory Size of Function Block Instructions
MAXC
MINC
MSTD
MUX
NTCH
OSFI
OSRI
PI
HLL
HPF
INTG
JKFF
LDL2
LDLG
LPF
MAVE
PIDE
PMUL
POSP
RESD
CTUD
D2SD
D3SD
DEDT
DERV
DFF
ESEL
FGEN
Instruction: blank sheet
ALM
BAND
BNOT
BOR
BXOR
172
184
184
168
188
188
216
208
348
188
208
184
172
172
172
216
196
172
172
188
184
188
248
204
204
300
344
296
Memory (bytes):
84
204
188
176
188
180
Publication 1756-UM001D-EN-P - November 2001
Array Indexes
Estimate Memory Use C-9
Table C.4 Memory Size of Function Block Instructions (Continued)
SEL
SETD
SNEG
SOC
SRTP
SSUM
TOFR
TONR
TOT
UPDN
Instruction:
RLIM
RMPS
RTOR
SCL
SCRV
Memory (bytes):
184
324
196
168
172
192
184
188
168
168
204
196
200
264
176
Memory use for an instruction increases for each parameter that references an array. Keep in mind these considerations:
1. When an array uses immediate values for the index, there is no additional memory added.
Example:
MOV instruction
Source
Destination
MOV instruction
Source
Destination
MOV instruction
Source
Destination
Tag:
DINT
DINT
DINT
DINT[0]
DINT[0,1,2]
DINT[3,4,5]
Memory:
24 bytes
24 bytes
24 bytes
Publication 1756-UM001D-EN-P - November 2001
C-10 Estimate Memory Use
2. When an array uses a tag (type DINT) as an index, additional memory is used, depending on the number of dimensions in the array.
Tag:
DINT[DINT]
DINT[DINT,0]
DINT[0,DINT,0]
Additional Memory:
84 bytes
152 bytes
152 bytes
For example:
Example:
MOV instruction
Source
Destination
MOV instruction
Source
Destination
Tag:
DINT
DINT[DINT]
DINT
DINT[DINT,0,0]
Memory:
108 bytes
176 bytes
3. The controller uses a 32-bit index for all arrays. If you use a tag other than DINT to reference a position in an array, you add the
data conversion memory use (see page C-1) as well as the
memory use for using a tag as an index.
Example:
MOV instruction
Source
Destination
MOV instruction
Source
Destination
Tag:
DINT
DINT[INT]
DINT
DINT[INT,0,0]
Memory:
168 bytes
236 bytes
4. Changing the source and destination data type in the above examples, increases the instruction’s memory use.
Example:
MOV instruction
Source
Destination
Tag:
DINT
INT[INT]
Memory:
200 bytes
Publication 1756-UM001D-EN-P - November 2001
Estimate Memory Use C-11
Example:
MOV instruction
Source
Destination
MOV instruction
Source
Destination
MOV instruction
Source
Destination
Tag:
SINT
INT[INT]
DINT
SINT[INT,0,0}
INT
SINT[INT,0,0]
Memory:
240 bytes
268 bytes
320 bytes
5. If you use an expression in the index, additional memory is used, depending on the operators.
Example:
MOV instruction
Source
Destination
Tag:
DINT
DINT[DINT + DINT]
Memory:
132 bytes
6. If you use multiple arrays in one instructions, add the appropriate memory use for each array reference.
Example:
MOV instruction
Source
Destination
MOV instruction
Source
Destination
Tag: Memory:
184 bytes
DINT[DINT]
DINT[DINT]
DINT[DINT, DINT, DINT]
DINT[DINT, DINT, DINT}
320 bytes
Publication 1756-UM001D-EN-P - November 2001
C-12 Estimate Memory Use
Notes:
Publication 1756-UM001D-EN-P - November 2001
1
Determine When Data Is Updated
Appendix
D
ControlLogix controllers update date asynchronous with the execution of logic. Use the following flowchart to determine when a producer
(controller, input module, or bridge module) will send data.
input or output data?
input output analog or digital?
analog
RTS
≤
RPI?
Yes
Data is sent to the backplane at the RTS.
No digital
COS for any point on the module?
Data is sent to the backplane at the RTS and RPI.
Yes
No analog or digital?
analog digital remote or local?
remote local
Data is sent to the backplane at the RPI and at the change of a specified point.
• Over a ControlNet network, remote data is sent at the actual packet interval.
• Over an EtherNet/IP network, remote data is sent close to the RPI, on average.
Data is sent to the backplane at the
RPI
Data is sent to the backplane at the RPI and at the end of every task.
Publication 1756-UM001D-EN-P - November 2001
D-2 Determine When Data Is Updated
Notes:
Publication 1756-UM001D-EN-P - November 2001
1
Appendix
E
Reconfigure an I/O module
Use the Module Reconfigure message to send new configuration information to an I/O module. During the reconfiguration:
•
Input modules continue to send input data to the controller.
•
Output modules continue to controller their output devices.
A Module Reconfigure message requires the following configuration properties:
In this property:
Message Type
Select:
Module Reconfigure
To reconfigure an I/O module:
1. Set the required member of the configuration tag of the module to the new value.
2. Send a Module Reconfigure message to the module.
EXAMPLE
Reconfigure an I/O module
When reconfigure[5] is on, the MOV instruction sets the high alarm to 60 for the local module in slot 4. The Module
Reconfigure message then sends the new alarm value to the module. The ONS instruction prevents the rung from sending multiple messages to the module while the reconfigure[5] is on.
43006
Publication 1756-UM001D-EN-P - November 2001
E-2 Reconfigure an I/O module
Notes:
Publication 1756-UM001D-EN-P - November 2001
Index
Numerics
1747 I/O
1756 I/O
1756-CNB module
1756-DHRIO module
1756-ENBx module
1756-ENET module
1756-M02AE module
1756-NET-AIC
1771 I/O
ControlNet network
remote I/O network
1788-CNC module
1791 I/O
1794 I/O
ControlNet network
EtherNet/IP network
remote I/O network
1794-AENx module
A
address map
AIC+
array indexes
asynchronous execution
ControlNet network
DH+ network
DH-485 network
Ethernet network
configure
1756-ENBx or -ENET module 1-1
1794-AENx module 1-1 connection monitor
troubleshoot
3-1, 4-1, 6-1, 8-1, 9-1, 10-1, 13-1
ControlNet network communicate with a PanelView terminal
communicate with an RSView32 project
determine when data is updated
send a message over a
D
DeviceNet network
DF1 dial-up
master and slave communications
workstation
DH+ network
DH-485
dial-up communications
domain name assign 1-1
B
battery
block transfers
ControlNet network
remote I/O network
C
Communicate Over a Remote I/O Network
Communicate with 1756 I/O
Communicate with 1771 I/O Over a ControlNet Network
Communicate with 1794 I/O Over a ControlNet Network
Communicate with a DeviceNet Device
Communicate with a PanelView Terminal Over a
ControlNet Network
Communicate with an RSView32 Project
ControlNet network
Ethernet network
Communicate with Another Controller
E
Establish Serial Communications with the Controller
Estimate
Execution Time
estimating memory use
Ethernet driver
Ethernet network assign IP address 1-1 communicate with a PanelView terminal
communicate with an RSView32 project
configure a 1756-ENBx or -ENET module
configure a 1794-AENx module 1-1 configure an Ethernet driver
determine when data is updated
program over an
send a message
execution time
Publication 1756-UM001D-EN-P - November 2001
2 Index
F
fault, module
FlexLogix controller
ControlNet network
DF1 network
DH-485 network
I
I/O
1747
1756
1771
1791
1794
determine when data is updated
DeviceNet
fault
instruction execution time
memory use
IP address assign 1-1
L
LED
RS232
M
Maintain the Battery
Map a PLC/SLC Address
memory array indexes
controller usage
sign extension
zero fill
messages
ControlNet network
DH+
DH-485
dial-up
Ethernet network
map address
master and slave controllers
MicroLogix controller
DH-485 network
modem
Monitor Connections
Publication 1756-UM001D-EN-P - November 2001 motion control, program
P
PanelView Terminal
ControlNet network
EtherNet/IP network
PLC-5 controllers
ControlNet network
DF1
DH+
Ethernet network
map address
program over a serial cable
over an Ethernet network
Program a Controller over an Ethernet Network
Program Motion Control
R
remote I/O
1756
1771
1794
route messages
ControlNet networks
DH+ network
routing table
RS232
LED
RSView32 project
ControlNet network
Ethernet network
S
serial cable
serial communications dial-up
master and slave controllers
workstation
sign extension
SLC 500 controller
DF1
DH+
DH-485 network
Ethernet network
map address
T
time, execution
U
Universal Remote I/O network
Z
zero fill
Index 3
Publication 1756-UM001D-EN-P - November 2001
4 Index
Publication 1756-UM001D-EN-P - November 2001
How Are We Doing?
Your comments on our technical publications will help us serve you better in the future.
Thank you for taking the time to provide us feedback.
You can complete this form and mail it back to us, visit us online at www.ab.com/manuals, or email us at [email protected]
Pub. Title/Type ControlLogix™ System
Cat. No.
1756-L1, -L1Mx,
-L55Mxx, -L63
Pub. No.
1756-UM001D-EN-P Pub. Date November 2001 Part No.
957626-25
Please complete the sections below. Where applicable, rank the feature (1=needs improvement, 2=satisfactory, and 3=outstanding).
Overall Usefulness 1 2 3 How can we make this publication more useful for you?
Completeness
(all necessary information is provided)
1 2 3 Can we add more information to help you?
procedure/step illustration example explanation guideline definition feature other
Technical Accuracy
(all provided information is correct)
1 2 3 Can we be more accurate?
text illustration
Clarity
(all provided information is easy to understand)
1 2 3 How can we make things clearer?
Other Comments You can add additional comments on the back of this form.
Your Name
Your Title/Function
Location/Phone
Would you like us to contact you regarding your comments?
___No, there is no need to contact me
___Yes, please call me
___Yes, please email me at __________________________
___Yes, please contact me via ________________________
Return this form to: Allen-Bradley Marketing Communications, 1 Allen-Bradley Dr., Mayfield Hts., OH 44124-9705
Phone: 440-646-3176 Fax: 440-646-3525 Email: [email protected]
Publication ICCG-5.21- January 2001 PN 955107-82
Other Comments
PLEASE FASTEN HERE (DO NOT STAPLE)
PLEASE FOLD HERE
BUSINESS REPLY MAIL
FIRST-CLASS MAIL PERMIT NO. 18235 CLEVELAND OH
POSTAGE WILL BE PAID BY THE ADDRESSEE
1 ALLEN-BRADLEY DR
MAYFIELD HEIGHTS OH 44124-9705
NO POSTAGE
NECESSARY
IF MAILED
IN THE
UNITED STATES
Rockwell Automation
Support
For technical assistance, call your local Rockwell Automation representative or contact Rockwell Automation in one of the following ways:
Phone
Internet
United
States/Canada
Outside United
States/Canada
⇒
1.440.646.5800
You can access the phone number for your country via the Internet:
1. Go to http://www.ab.com
2. Click on Product Support
(http://support.automation.rockwell.com)
3. Under Support Centers , click on Contact
Information
1. Go to http://www.ab.com
2. Click on Product Support
(http://support.automation.rockwell.com)
Your Questions or Comments on this Manual
If you find a problem with this manual, please notify us of it on the enclosed How Are We Doing form.
Back Cover
Allen-Bradley, ControlLogix, DH+, FlexLogix, PanelView, PLC-5, RSLinx, RSLogix, RSNetWorx, RSView32, and SLC are trademarks of Rockwell Automation.
ControlNet is a trademark of ControlNet International, Ltd.
Ethernet is a trademark of Digital Equipment Corporation, Intel, and Xerox Corporation.
Publication 1756-UM001D-EN-P - November 2001 2
Supersedes Publication 1756-UM001C-EN-P - June 2001
PN 957626-25
Copyright © 2001 Rockwell Automation. All rights reserved. Printed in the U.S.A.

Public link updated
The public link to your chat has been updated.
Advertisement
Key features
- Communicate over EtherNet/IP, ControlNet™, remote I/O, DH+™, DH-485, and serial networks
- Program motion control
- Maintain the 1756-BA1 battery
- Configure via software (RSLogix 5000, RSLinx, BOOTP Server)
- Download and go online over networks & serial cable
- Communicate with 1756 I/O, 1794 I/O, 1771 I/O, and other controllers
- Communicate with PanelView™ terminals
- Route PLC-5 or SLC 500 messages
- Monitor connections