Student Manual _ ABT-CCP-TSM143 _ RSLogix 5000, Level 3 _ Project Development.pdf

January 24, 2017 | Author: MarcoEnriqueRamosCastillo | Category: N/A
Share Embed Donate


Short Description

Download Student Manual _ ABT-CCP-TSM143 _ RSLogix 5000, Level 3 _ Project Development.pdf...

Description

RSLogix™ 5000 Level 3: Project Development

Student Manual

Important User Information This documentation, whether, illustrative, printed, “online” or electronic (hereinafter “Documentation”) is intended for use only as a learning aid when using Rockwell Automation approved demonstration hardware, software and firmware. The Documentation should only be used as a learning tool by qualified professionals. The variety of uses for the hardware, software and firmware (hereinafter “Products”) described in this Documentation, mandates that those responsible for the application and use of those Products must satisfy themselves that all necessary steps have been taken to ensure that each application and actual use meets all performance and safety requirements, including any applicable laws, regulations, codes and standards in addition to any applicable technical documents. In no event will Rockwell Automation, Inc., or any of its affiliate or subsidiary companies (hereinafter “Rockwell Automation”) be responsible or liable for any indirect or consequential damages resulting from the use or application of the Products described in this Documentation. Rockwell Automation does not assume responsibility or liability for damages of any kind based on the alleged use of, or reliance on, this Documentation. No patent liability is assumed by Rockwell Automation with respect to use of information, circuits, equipment, or software described in the Documentation. Except as specifically agreed in writing as part of a maintenance or support contract, equipment users are responsible for:

 properly using, calibrating, operating, monitoring and maintaining all Products consistent with all Rockwell Automation or third--party provided instructions, warnings, recommendations and documentation;

 ensuring that only properly trained personnel use, operate and maintain the Products at all times;  staying informed of all Product updates and alerts and implementing all updates and fixes; and  all other factors affecting the Products that are outside of the direct control of Rockwell Automation. Reproduction of the contents of the Documentation, in whole or in part, without written permission of Rockwell Automation is prohibited. Throughout this manual we use the following notes to make you aware of safety considerations: 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.

Identifies information that is critical for successful application and understanding of the product.

Identifies information about practices or circumstances that can lead to personal injury or death, property damage, or economic loss. Attentions help you: identify a hazard avoid a hazard recognize the consequence

Important User Information Labels may be located on or inside the drive to alert people that dangerous voltage may be present.

Labels may be located on or inside the drive to alert people that surfaces may be dangerous temperatures.

Comment Form

Email: [email protected] or Fax:

440.646.4425

Page 1 of Date:

Contact Information: Name: Company and Location: Phone:

Email:

Comments (include lesson title, if applicable): Course or Product Name (Important):

Page 2

Table of Contents

Introduction Course Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Course Purpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Who Should Attend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Prerequisites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Agenda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Meeting Course Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Student Materials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Hands-On Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Certificate Candidates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configuration and Programming Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ControlLogix/RSLogix 5000 Curriculum Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

I I I II II III IV IV IV V V

Lessons Updating Logix5000 Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . What You Will Learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . When You Will Do This . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Updating Module Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Demonstration Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Exercise: Updating Logix5000 Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Creating and Organizing a New RSLogix 5000 Project . . . . . . . . . . . . . . . . . . . . . . . What You Will Learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . When You Will Do This . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Key Terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Project Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Default Project Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating a New Task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Continuous Task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Watchdog Timers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1- 1 1--1 1--1 1--1 1--1 1--1 1--3 1--3

1- 5 1--5 1--6 1--8 1--8

2- 1 2--1 2--1 2--1 2--1 2--1 2--2 2--2 2--3 2--3

ii

Table of Contents

Inhibited Task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating a Program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adjusting a Program Schedule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Actual Program Scan Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating a Routine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Program Control Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . System Overhead Timeslice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Asynchronous Updates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Project Organization Best Practices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Project Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Verifying Tasks, Programs, and Routines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Demonstration Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2--4 2--4 2--5 2--5 2--6 2--8 2--8 2--9 2--10 2--11 2--11 2--12 2--12 2--13 2--13

Exercise: Creating and Organizing a New RSLogix 5000 Project . . . . . . . . . . . . . . . 2- 15 Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Creating a Periodic Task in an RSLogix 5000 Project . . . . . . . . . . . . . . . . . . . . . . . . What You Will Learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . When You Will Do This . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Task Type Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Periodic Task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Periodic Task Use . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Project Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Periodic Task Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Period . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Priority . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Scan Time Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Periodic Task Execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Periodic Task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Periodic Task and Continuous Task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Multiple Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Equal Priorities (Timeslicing) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Demonstration Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2--15 2--17 2--18 2--18

3- 1 3--1 3--1 3--1 3--1 3--2 3--2 3--3 3--4 3--4 3--5 3--6 3--6 3--6 3--7 3--7 3--7 3--8 3--8 3--9 3--9

Table of Contents

iii

Exercise: Creating a Periodic Task in an RSLogix 5000 Project . . . . . . . . . . . . . . . . 3- 11 Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Organizing Data in an RSLogix 5000 Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . What You Will Learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . When You Will Do This . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Controller Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Data Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Memory Allocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tag Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating a Tag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tag Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Data Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Style . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Defining an Alias Tag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Produced and Consumed Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating an Array of Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Array Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Three Dimensional Array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Array Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Numeric Element Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Numeric Element Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Numeric Element Addressing for Multiple Dimensions . . . . . . . . . . . . . . . . . . . . . . . Variable Element Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Variable Element Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Numeric Bit Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Numeric Bit Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Variable Bit Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Variable Bit Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Array Addressing Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Verifying Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Monitoring and Editing Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Monitor Tags Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tags and Members . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Display Style . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Monitoring and Editing Tag Values through a Routine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Ladder Logic Routine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Function Block Diagram Routine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Monitoring and Editing Tag Values in the Watch Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3--11 3--12 3--14 3--14

4- 1 4--1 4--1 4--1 4--1 4--2 4--3 4--4 4--4 4--5 4--5 4--5 4--6 4--6 4--7 4--7 4--8 4--8 4--9 4--9 4--9 4--9 4--10 4--10 4--10 4--10 4--11 4--11 4--11 4--11 4--11 4--12 4--12 4--12 4--12 4--13 4--13 4--14 4--15

iv

Table of Contents

Quick Watch Tag Monitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Persistent Quick Watch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Demonstration Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Monitor Data in RSLinx Classic Professional Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Your Turn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Data Access Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Data Access Control Benefits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Your Turn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4--15 4--16 4--17 4--17 4--17 4--17 4--18 4--18 4--18

Exercise: Organizing Data in an RSLogix 5000 Project . . . . . . . . . . . . . . . . . . . . . . 4- 19 Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Creating a User-Defined Data Type in an RSLogix 5000 Project . . . . . . . . . . . . . . . . What You Will Learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . When You Will Do This . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating a User-Defined Data Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: User-Defined Data Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Arrays and User-Defined Data Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . User-Defined Data Type Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . User-Defined Data Type Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Examples: User-Defined Data Type Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exporting and Importing User-Defined Data Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Demonstration Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Exercise: Creating a User-Defined Data Type in an RSLogix 5000 Project . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Entering, Editing, and Verifying Ladder Logic in an RSLogix 5000 Project . . . . . . . . What You Will Learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . When You Will Do This . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASCII Mnemonic Editing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4--19 4--21 4--21 4--21 4--22 4--22 4--25

5- 1 5--1 5--1 5--1 5--1 5--2 5--3 5--3 5--3 5--3 5--4 5--5 5--5

5- 7 5--7 5--9 5--10 5--10

6- 1 6--1 6--1 6--1 6--2

Table of Contents

Configuring Ladder Logic Quick Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Copying and Reusing Ladder Logic Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Copied Ladder Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Other Short-Cuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Verifying a Project or a Project Component Online . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Online Safety Warning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Performing Online Ladder Logic Edits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Finalize Edits Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Edit Zone Markers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Online Editing in a Multiple-User Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Demonstration Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

v

6--2 6--2 6--3 6--4 6--4 6--4 6--5 6--6 6--7 6--8 6--9 6--9

Exercise: Entering, Editing, and Verifying Ladder Logic in an RSLogix 5000 Project 6- 11 Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Communicating with a Local 1756-I/O Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . What You Will Learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . When You Will Do This . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Electronic Keying . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Keying Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Exact Match Keying Prevents Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Compatible Keying Prevents Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Compatible Keying Allows Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Disabled Keying . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Asynchronous I/O Update Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Digital Module Multicasting Rates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RPI (Requested Packet Interval) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . COS (Change of State) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: RPI and COS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Analog Module Multicasting Rates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RTS (Real Time Sampling Rate) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Output States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Diagnostics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Diagnostic Latching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6--11 6--13 6--14 6--14

7- 1 7--1 7--1 7--1 7--1 7--2 7--2 7--3 7--3 7--4 7--4 7--4 7--4 7--5 7--5 7--5 7--6 7--6 7--7 7--8 7--9 7--10

Exercise: Communicating with a Local 1756-I/O Module . . . . . . . . . . . . . . . . . . . . . 7- 11 Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7--11 7--13

vi

Table of Contents

Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Configuring a Logix5000 Controller to Produce and Consume Data . . . . . . . . . . . . . What You Will Learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . When You Will Do This . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Scheduled Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Produced and Consumed Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Produced and Consumed Tag Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configuring a Produced Tag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding a Controller to an I/O Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configuring a Consumed Tag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tag Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Produced and Consumed Arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Produced Tag Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Produce/Consume Tag RPI Limits Check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Demonstration Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7--14 7--14

8- 1 8--1 8--1 8--1 8--1 8--2 8--2 8--3 8--4 8--4 8--6 8--7 8--7 8--8 8--10 8--10

Exercise: Configuring a Logix5000 Controller to Produce and Consume Data . . . . . 8- 11 Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Configuring Logix5000 Controllers to Share Data over an EtherNet/IP Network . . . . What You Will Learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . When You Will Do This . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . EtherNet/IP Network Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Overview of IP Addresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Private IP Addresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Subnets and Subnet Masks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How a Subnet Mask Operates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gateways . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configuration Overview and Software Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding an EtherNet/IP Module and Controller to an I/O Configuration . . . . . . . . . . . . . . . . . . . Produced and Consumed Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Demonstration Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8--11 8--13 8--13 8--14 8--16 8--16 8--18

9- 1 9--1 9--1 9--1 9--1 9--2 9--3 9--3 9--4 9--4 9--5 9--6 9--6 9--6 9--7 9--7

Table of Contents

Exercise: Configuring Logix5000 Controllers to Share Data over an EtherNet/IP Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

vii

9- 9 9--9 9--11 9--12 9--12

Communicating with a 1756-I/O Module over an EtherNet/IP Network . . . . . . . . . . . 10- 1 What You Will Learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . When You Will Do This . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Effect of RPI on EtherNet/IP Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Effect of RPI on EtherNet/IP Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Communications Formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: No Rack Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Rack--optimized Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10--1 10--1 10--1 10--1 10--1 10--2 10--2 10--2 10--3 10--4

Exercise: Communicating with a 1756-I/O Module over an EtherNet/IP Network . . . . 10- 5 Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10--5 10--6 10--8 10--8

Creating an Event Task in an RSLogix 5000 Project . . . . . . . . . . . . . . . . . . . . . . . . . 11- 1 What You Will Learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . When You Will Do This . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Task Type Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Event Task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Benefits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Event Task Use . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Project Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Event Task Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Trigger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Consumed Tag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Module Input Data State Change . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1756 Local and Remote Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Quick-Response Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Short-Duration Input Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Synchronized-Execution Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Single Bit Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Module Input Data State Change -- Design Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . Automatic Output Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11--1 11--1 11--1 11--1 11--2 11--2 11--2 11--3 11--3 11--4 11--4 11--5 11--5 11--5 11--6 11--6 11--6 11--7 11--7

viii

Table of Contents

Priority . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Scan Time Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Event Task Timeout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Event Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IOT Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . UID/UIE Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CPS Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Demonstration Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11--8 11--9 11--9 11--9 11--10 11--10 11--11 11--12 11--12

Exercise: Creating an Event Task in an RSLogix 5000 Project . . . . . . . . . . . . . . . . . 11- 13 Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11--13 11--13 11--14 11--16 11--16 11--18 11--20 11--20 11--21 11--23

Retrieving and Setting Logix5000 Controller Status Values with GSV/SSV Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12- 1 What You Will Learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . When You Will Do This . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Monitoring Controller System Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GSV/SSV Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Attribute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Source or Destination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: GSV Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: SSV Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Status Flags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Controller Status Flags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Arithmetic Status Flags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fault Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Non-Recoverable Major Fault . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Recoverable Major Fault . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Recoverable Major Fault Processing: Level 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fault Routine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Controller Fault Handler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Recoverable Major Fault Processing: Level 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

12--1 12--1 12--1 12--1 12--2 12--2 12--2 12--2 12--3 12--4 12--5 12--5 12--6 12--6 12--6 12--7 12--7 12--8 12--8 12--8 12--9

Table of Contents

Multiple Recoverable Major Faults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Common Major Faults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Minor Fault . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Demonstration Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

ix

12--10 12--10 12--10 12--12 12--12

Exercise: Retrieving and Setting Logix5000 Controller Status Values with GSV/SSV Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12- 13 Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

12--13 12--14 12--14 12--15 12--15 12--17 12--18 12--18 12--19 12--22

Programming a BTD Instruction in an RSLogix 5000 Project . . . . . . . . . . . . . . . . . . 13- 1 What You Will Learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . When You Will Do This . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . BTD Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Demonstration Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Your Turn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

13--1 13--1 13--1 13--3 13--3 13--3 13--4 13--4

Exercise: Programming a BTD Instruction in an RSLogix 5000 Project . . . . . . . . . . 13- 5 Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Status Attribute for the Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

13--5 13--5 13--6 13--8 13--8

Configuring a Logix5000 Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14- 1 What You Will Learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . When You Will Do This . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Unscheduled Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Messages to Logix5000 Controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Messages to Other Controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configuring a Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

14--1 14--1 14--1 14--1 14--1 14--2 14--2

x

Table of Contents

Read, Write, and Block Transfer Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating and Entering a Numeric Communications Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CIP Generic Message Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Message Execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Demonstration Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

14--3 14--4 14--4 14--5 14--6 14--6

Exercise: Configuring a Logix5000 Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14- 7 Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

14--7 14--9 14--9 14--11 14--12 14--12 14--14

Developing an Add-On Instruction in Ladder Diagram . . . . . . . . . . . . . . . . . . . . . . . 15- 1 What You Will Learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . When You Will Do This . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Add-On Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example of an Add-On Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . An Add-On Instruction Uses a Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Key Parts of the Definition of an Add-On Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Local Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Routine “Type” Control Editable in AOI Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changes to the Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Add-On Instruction Design Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Planning the Parameters of an Add-On Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Your Turn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Language for the Logic Routine of the Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Organization of the Logic Routine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Optional Scan Mode Routines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Deciding If You Need an EnableInFalse Routine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Your Turn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Accessing Parameters via Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Editing an Add-On Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exporting and Importing an Add-On Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

15--1 15--1 15--1 15--1 15--2 15--3 15--4 15--5 15--5 15--6 15--7 15--8 15--9 15--9 15--9 15--9 15--10 15--10 15--10 15--11 15--12 15--12 15--12 15--12 15--13 15--13 15--14 15--14

Table of Contents

Online Safety Warning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Referenced Add--On Instructions and User-Defined Data Types . . . . . . . . . . . . . . . . . . . . . . . Example: When Not To Include Referenced Add-On Instructions and User-Defined Data Types Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating an Add-On Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Enter the General Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Enter the Definition Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Create the Parameters and Local Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Looking for Previously Developed Add-On Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Search the Sample Code Library (samplecode.rockwellautomation.com) . . . . . . . . . . . . . . . . . Example of Search Result . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using the Detect_Jam Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

xi

15--15 15--16 15--16 15--16 15--17 15--17 15--17 15--18 15--18 15--19 15--19 15--19 15--19 15--20 15--20 15--20 15--20

Exercise: Developing an Add-On Instruction in Ladder Diagram . . . . . . . . . . . . . . . 15- 21 Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

15--21 15--22 15--23 15--23 15--24 15--27 15--27 15--28 15--30 15--30 15--31 15--31 15--31 15--31 15--33

Managing RSLogix 5000 Project Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16- 1 What You Will Learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . When You Will Do This . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . File Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exporting a .acd Project File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Importing a .l5k Text File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Importing a .l5x XML File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Multiple Backup Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Compare Tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

16--1 16--1 16--1 16--1 16--2 16--3 16--4 16--5 16--5

xii

Table of Contents

Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Demonstration Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

16--6 16--6

Exercise: Managing RSLogix 5000 Project Files . . . . . . . . . . . . . . . . . . . . . . . . . . . 16- 7 Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

16--7 16--9 16--10 16--10

Allocating Connections in a Logix5000 System . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17- 1 What You Will Learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . When You Will Do This . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Connection Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conserving Connections by Grouping Produced Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: Connection Requirements for Tags vs. an Array . . . . . . . . . . . . . . . . . . . . . . . . . . . Message Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

17--1 17--1 17--1 17--1 17--1 17--2 17--2 17--3 17--3 17--4

Exercise: Allocating Connections in a Logix5000 System . . . . . . . . . . . . . . . . . . . . 17- 5 Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

17--5 17--5 17--6 17--6

Integrated Practice — Developing an RSLogix 5000 Project . . . . . . . . . . . . . . . . . . . 18- 1 What You Will Learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

18--1

Exercise: Integrated Practice — Developing an RSLogix 5000 Project . . . . . . . . . . . 18- 3 Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

18--3 18--8 18--10 18--10

Optional Lessons Configuring Logix5000 Controllers to Share Data over a ControlNet Network . . . . . 19- 1 What You Will Learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . When You Will Do This . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Key Terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ControlNet Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

19--1 19--1 19--1 19--1 19--1

Table of Contents

Cable System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Network Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Scheduled Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Unscheduled Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Information Exchange on the ControlNet Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Network Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NUT (Network Update Time) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: NUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SMAX (Scheduled Maximum Node) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: SMAX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . UMAX (Unscheduled Maximum Node) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: UMAX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Media Redundancy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Update Intervals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RPI (Requested Packet Interval) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . API (Actual Packet Interval) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example: RPI and API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configuration Overview and Software Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding a ControlNet Module and Controller to an I/O Configuration . . . . . . . . . . . . . . . . . . . . Produced and Consumed Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Scheduling a New ControlNet Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Demonstration Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

xiii

19--3 19--4 19--4 19--4 19--5 19--5 19--5 19--6 19--6 19--7 19--7 19--8 19--8 19--9 19--9 19--9 19--10 19--10 19--11 19--11 19--11 19--14 19--14

Exercise: Configuring Logix5000 Controllers to Share Data over a ControlNet Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19- 15 Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ........................................................................ How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

19--15 19--15 19--17 19--18 19--18

Communicating with a 1756-I/O Module Over a ControlNet Network . . . . . . . . . . . . 20- 1 What You Will Learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . When You Will Do This . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ControlNet Remote I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Here’s How . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Demonstration Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

20--1 20--1 20--1 20--1 20--2 20--2

Exercise: Communicating with a 1756-I/O Module Over a ControlNet Network . . . . . 20- 3 Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How Did You Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exercise A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

20--3 20--4 20--6 20--6

xiv

Table of Contents

Appendices I/O Wiring Diagrams For The Assembly Application . . . . . . . . . . . . . . . . . . . . . . . . . A- 1 Slot 0 -- 1756-OB16D Digital Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 2 -- 1756-IB16D Digital Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 4 -- 1756-OB16D Digital Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ........................................................................ Slot 7 -- 1756-OF6VI Analog Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 8 -- 1756-IF6I Analog Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

A--1 A--2 A--3 A--3 A--4 A--5

ControlLogix Workstation I/O Device Assignments . . . . . . . . . . . . . . . . . . . . . . . . . B- 1 Local I/O Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

B--2

Node Assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C- 1

Course Overview

I

Course Overview

Course Purpose

Upon completion of this course, given a functional specification for an RSLogix 5000 application, you will be able to develop a project to meet the requirements of the specification. This course covers tasks common to the following controllers, which all use the Logix5000 control engine, or operating system:  ControlLogix controllers

 CompactLogix controllers  SoftLogix controllers  DriveLogix controllers This course builds upon your knowledge of common controller terms and operation and your experience with basic ladder logic programming. This course presents a deeper understanding of project development tasks that are common to all Logix5000 controllers. Such tasks include organizing tasks and routines, organizing controller data, configuring modules, and sharing data. You will also use Producer/Consumer technology to multicast input and output devices, share data between controllers, and control remote I/O.

Who Should Attend

Individuals who need to develop RSLogix 5000 projects for any Logix5000 controller should attend this course. Activity: Introduce yourself, say the company you work for, and tell the instructor and others what you hope to take away from this course.

Course Overview

II

Prerequisites

To successfully complete this course, the following prerequisites are required:  Ability to perform basic Microsoft Windows tasks  Completion of the RSLogix 5000 Level 1: ControlLogix System Fundamentals course (Course No. CCP146), or completion of the RSTrainer for ControlLogix Fundamentals computer-based training course (9393-RSTCLX), or knowledge of common controller terms and operation

 Completion of the RSLogix 5000 Level 2: Basic Ladder Logic

Programming course (Course No. CCP151) or the ability to write basic ladder logic with common instructions, such as bit, timer, counter, move, and comparison instructions Question: Is everyone comfortable with these skills?

Agenda

This course consists of the following lessons: Day 1

15 minutes 20 minutes (40 minutes with optional exercise) 90 minutes 60 minutes 160 minutes 30 minutes

     

Course Overview Updating Logix5000 Firmware Creating and Organizing a New RSLogix 5000 Project Creating a Periodic Task in an RSLogix 5000 Project Organizing Data in an RSLogix 5000 Project Creating a User-Defined Data Type in an RSLogix 5000 Project

Day 2 60 minutes 185 minutes 90 minutes 90 minutes

 Entering, Editing, and Verifying Ladder Logic in an RSLogix 5000 Project  Communicating with a Local 1756-I/O Module

 Configuring a Logix5000 Controller to Produce and Consume Data  Configuring Logix5000 Controllers to Share Data over an EtherNet/IP Network (continued)

Course Overview

III

Day 3 45 minutes

 Communicating with a 1756-I/O Module over an EtherNet/IP Network

120 minutes 90 minutes

 Creating an Event Task in an RSLogix 5000 Project  Retrieving and Setting Logix5000 Controller Status Values with GSV/SSV Instructions

60 minutes 105 minutes

 Programming a BTD Instruction  Configuring a Logix5000 Message Day 4

90 minutes 40 minutes 60 minutes 225 minutes 120 minutes 65 minutes

    

Developing an Add-On Instruction in Ladder Diagram Managing RSLogix 5000 Project Files Allocating Connections in a Logix5000 System Integrated Practice -- Developing an RSLogix 5000 Project Optional: Configuring Logix5000 Controllers to Share Data over a ControlNet Network

 Optional: Communicating with a 1756-I/O Module Over a ControlNet Network

Meeting Course Objectives

The following course structure is generally used to help you understand the content and activities:  One lesson is devoted to each task.  Typical lesson includes most or all of these sections:

-----

“What You Will Learn” -- lesson objectives “Before You Begin” -- preparatory material “Here’s How” -- demonstration of procedures “Exercise” - opportunity to perform new skills, often in a hands-on lab environment -- “How Did You Do?” -- where to go for feedback on performance -- “Answers” -- answers to exercises  Integrated practices provide an opportunity to perform tasks using the skills obtained during the training.

IV

Course Overview

Student Materials

To enhance and facilitate your learning experience, the following materials are provided as part of the course package:  Student Manual, which contains the topical outlines and exercises. Use this manual to follow presentations, take notes, and work through your exercises.

 RSLogix 5000 and Logix5000 Procedures Guide, which provides

all of the steps required to complete basic RSLogix 5000 software tasks that are common to all Logix5000 hardware platforms. By following the procedures in this job aid, you can immediately apply what is learned in the course to your own job.  Logix5000 Controllers Design Considerations Reference Manual, which contains guidelines for designing a Logix5000 application.  Logix5000 Documentation Reference Guide, which contains several relevant technical publications. This searchable, electronic resource contains the most frequently referenced programming information and is a quick and efficient on-the-job resource. Reference: Your instructor will show you these job aids now.

Hands-On Exercises

Throughout this course, you will have the opportunity to practice the skills you have learned through a variety of hands-on exercises. These exercises focus on the skills introduced in each lesson. You will also have the opportunity to combine and practice several key skills by completing an integrated practice. To complete the exercises and the integrated practice, you will use a ControlLogix hardware workstation. Because the basic skills taught in the course apply to all Logix5000 platforms, you can apply what you have learned to the specific platform that you use in your plant.

Certificate Candidates

If you are a candidate for a Certificate Exam, you must:  Take notes  Ask questions for clarification

 Follow along with demonstrations using the job aids  Complete all labs

Tip "

The Certificate Exam questions are scenario--based and may require you to understand information from all of these areas. To study for the exam, you must keep all class materials and your written notes.

Course Overview

Configuration and Programming Examples

V

The configuration and programming examples shown in this course are intended solely for purposes of example. You will have different requirements associated with your application. You must verify that the necessary steps have been taken to meet all performance and safety requirements. Reference: See the Important User Information in your Student Manual for more details.

ControlLogix/RSLogix 5000 Curriculum Map

After completing this training, you may be interested in one or more of the following courses:  RSLogix Level 4: PhaseManager Project Design [CCP711, 1 day]  RSLogix 5000 Level 4: Motion Programming Using Ladder Logic [CCN142, 3 days]  GuardLogix Application Development [SAF-LOG101, 2 days] Reference: See the curriculum map in the front of your Student Manual for a complete listing of available ControlLogix/RSLogix 5000 courses.

VI

Course Overview

Lesson Note that this lesson briefly reviews prerequisite concepts before presenting the firmware piece. Tailor this lesson as needed.

What You Will Learn

1

Updating Logix5000 Firmware After completing this lesson, you should be able to update module firmware.

When You Will Do This You will perform these tasks in the following situations:  You will need to update module firmware: -- When installing a brand new ControlLogix controller -- When upgrading to a newer version of RSLogix 5000 software to ensure hardware and software remain in lockstep

Before You Begin

Review

The PowerPoint presentation contains hidden slides that can be used to conduct the review.

Activity: Your instructor will briefly review uploading, downloading, and going online to a controller.

Topics include keyswitch positions; uploading, downloading, and going online; and interpreting a communications path.

Updating Module Firmware

State that customers can obtain the required revision levels at the support.rockwellautomation.com/support website for ControlFLASH. Note that a minimum of one communications device is required to update modules. Serial communications can be used, but data transfers at the slowest rate. Method ControlFLASH Utility

AutoFlash Function

To use all of the features of a new revision of RSLogix 5000 software, controller and servo module firmware must be in lock-step with software. The firmware loaded in Logix5000 controllers and motion modules must match the version of RSLogix 5000 software you are using.

There are three methods available for updating module firmware: How Used Standalone tool (can be launched manually or through RSLogix 5000 software). Integrated with RSLogix 5000 software. It automatically checks firmware during project download.

Devices Supported Controllers, communication modules, I/O modules, SERCOS drives, and other devices.

Communication Supported Valid CIP path to device being updated (includes serial, DeviceNet, ControlNet, EtherNet/IP).

(Continued)

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. FW3sb56r

1--2

Updating Logix5000 Firmware

Method

Firmware Supervisor

How Used

Integrated on the controller CompactFlash card and runs without user intervention.

Devices Supported Supports local and remote devices that:  Are in the I/O tree and configured as Exact Match.  Support firmware upgrades via ControlFLASH.  Are at a hardware revision that supports the firmware stored for that device.

Communication Supported

Supports all communication paths to devices in the controller I/O tree that also support ControlFLASH.

When updating a module’s firmware, note the following key points:  Updating a module will delete the current module contents.  Updating module firmware temporarily disables the module from controlling other devices. Evaluate what portion(s) of a process the module may control before starting an update.  Interrupting an update by disabling communications or removing the module from the chassis may damage the module.

Do not backflash a 1756-I/O module’s firmware from firmware revision 3.x to 2.x. Attempting to backflash or downgrade the module’s firmware will irreversibly damage the module. You must return modules damaged by an attempt to backflash to firmware 2.x to Rockwell Automation.

Do not flash a 1756-I/O module’s firmware from firmware revision 2.x to 3.x. Attempting to flash a module’s firmware will irreversibly damage the module.

Do not backflash 1756-SOE (Sequence of Events) modules at firmware revision 1.6 to revision 1.5 or earlier. Backflashing SOE modules at firmware revision 1.6 may cause the SOE module to stop working and require that the module be returned for repair.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 FW3sb56r

Updating Logix5000 Firmware

Tip "

Here’s How IMPORTANT: When performing Exercise A, be sure to run the Quick Start video for the students on the overhead. This will eliminate the need for earphones or the distraction of overlapping audio during the exercise.

1--3

If you have questions regarding the compatibility of RSLogix 5000 software with specific controllers or hardware modules, contact your local distributor or Rockwell Automation Technical Support. To update module firmware. Activity: As your instructor demonstrates these procedures, follow along in the associated job aid(s).

Demonstration Checklist IMPORTANT: To meet IACET CEU requirements and fully prepare certificate students for the final exam, you must demonstrate all lesson objectives using the proper job aids. Use the steps below and the information on the Demonstration Checklist to help guide you during the demonstration: IMPORTANT: Before performing this demonstration, ensure that the controller in slot 3 of your demonstration workstation has been back-flashed to a firmware version below version 17. Use the FW3_1756R_DEM1.acd file to download and go online to the controller in Slot 1.

Pay attention to these critical aspects of the demonstration: -

Download the first project and go online.

-

Download the second project to the controller.

-

What happens when the project is downloaded?

-

How is this situation resolved?

-

What tools are available for flashing module firmware?

Use the FW3_1756R_DEM2.acd file to download to the controller in slot 3. When the firmware revision mismatch occurs, show students how the automatic firmware update feature works. Important: Emphasize that flashing firmware will not be practiced in the lab.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. FW3sb56r

1--4

Updating Logix5000 Firmware

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 FW3sb56r

Exercise: Updating Logix5000 Firmware

1--5

Exercise: Updating Logix5000 Firmware Exercise A

In this exercise, you will practice updating Logix5000 firmware. Activity: As a group, you will view the Update a Module’s Firmware Quick Start tutorial. The steps below will help you access the file for later review or independent practice.

This exercise uses RSLogix 5000 Start Pages to demonstrate the controller flashing procedure. Do not perform this procedure on the workstation unless authorized to do so. Failure to correctly perform this procedure can make the controller inoperable.

Context: Before flash updating the new ControlLogix controllers you recently received, you will review the proper flash update procedure and answer the corresponding questions. Directions: 1. If it is closed, open RSLogix 5000 software. 2. View the Start Page. 3. Click the Learning Center tab. 4. From the How Do I? menu, select the Maintain folder. 5. View the Update a Module’s Firmware tutorial.

Tip "

Although the video focuses on the CompactLogix platform, the basic steps can be applied to any Logix5000 controller that supports flash download. 6. Which modules must always be in lock-step with the version of RSLogix 5000 you are using?

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. FW3e56r

1--6

Exercise: Updating Logix5000 Firmware

7. When is a maintainer most likely to update other modules (I/O, communications, etc.)?

8. What tool can be used to update module firmware?

How Did You Do?

E 2012 Rockwell Automation, Inc. All rights reserved.

Turn to the Answers section.

Rev. August 2012 FW3e56r

Exercise: Updating Logix5000 Firmware

Rev. August 2012

1--7

E 2012 Rockwell Automation, Inc. All rights reserved. FW3e56r

1--8

Exercise: Updating Logix5000 Firmware

Answers

Exercise A 6. Your controllers, motion modules, and SERCOS drives all must match the version of RSLogix 5000 software you are using. 7. A maintainer is most likely to update other module firmware when replacing a failed module. 8. The ControlFLASH tool can be used to update module firmware.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 FW3e56r

Lesson

2

Creating and Organizing a New RSLogix 5000 Project What You Will Learn Important: This lesson covers the default project organization. Periodic tasks and event tasks are covered in separate lessons.

Stress that deleting project components is not as simple as selecting delete from a right-click menu. Because deleting can be done online, it is a more detailed procedure. Note that the use of tasks and programs is a major difference from RSLogix 5 and 500 softwares.

Before You Begin Note that .l5k text files are part of a separate lesson.

After completing this lesson, you should be able to:  Create a new RSLogix 5000 project file  Modify controller properties

    

Create a program and routine Adjust a program schedule Copy and reuse programs and routines Delete a routine, program, and task Verify tasks, programs, and routines

When You Will Do This Before you enter the logic for your application, you have to configure the tasks, programs, and routines that will run the logic.

Key Terms Project/Project File: The RSLogix 5000 software file used to store all programming and configuration information for a Logix5000 controller.

Project Organization State that the multitasking system is like 32 separate PLC-5 controllers that take turns controlling. Note that task execution is based on priorities that are assigned by the user. This will be discussed in detail later.

Rev. August 2012

A Logix5000 controller is a preemptive, multitasking controller with the following characteristics:  Is single-threaded in that only one task will be active at a time  Has the ability to interrupt an executing task, switch to a different task, then return control back to the original task when the interrupting task is complete

E 2012 Rockwell Automation, Inc. All rights reserved. TS2sb56r

2--2

Creating and Organizing a New RSLogix 5000 Project

Clarify that tasks and programs are organizing elements (like folders in Windows Explorer). Routines contain the actual ladder logic.

To maximize these multitasking capabilities, the following containers are available to organize an RSLogix 5000 project:  Task: A scheduling mechanism for executing its scheduled programs.

 Program: A set of related routines and tags.  Routine: A set or sequence of executable code. Default Project Structure By default, there is one task, program, and routine created in each new project: When reviewing this graphic, note the following elements: 1. Each task can be divided into programs based on function, area, or some other attribute. 2. Each program can have as many routines as memory allows. One routine must be defined as the main routine and the rest will be subroutines.

Tip "

Default Structure and Names

The names and properties of these components can be modified to suit your application.

Creating a New Task A task triggers the execution of its scheduled programs. The following table outlines the type of tasks that are available: If students are familiar with PLC-5 controllers, relate the periodic task to an STI.

Important: Remind students that periodic and event tasks are only mentioned here as an overview. This topic is presented in more detail in a later lesson.

E 2012 Rockwell Automation, Inc. All rights reserved.

Task Type

Usage

Continuous

A task that runs continuously but can be interrupted by periodic or event tasks (default task type).

Periodic

A task that executes regularly at a user-specified rate. When called, it will interrupt any lower priority tasks.

Event

A task that is triggered only when a specific event occurs. When called, it will interrupt any lower priority tasks.

Icon

Rev. August 2012 TS2sb56r

Creating and Organizing a New RSLogix 5000 Project

? If a ControlLogix controller has one continuous task and 4 periodic, how many event tasks could it have? Answer: 27 (27+4+1=32)

? If a DriveLogix controller has zero

2--3

Reference: Logix5000 Controllers Design Considerations, 1756--RM094 1. Find the Logix5000 Controller Comparison tables at the front of the manual.

continuous tasks and 4 periodic, how many event tasks could it have?

2. Compare the number of tasks you can have in various controllers.

Answer: 4 (4+4 = 8)

Continuous Task

Compare this to the program files in an RSLogix 5 or 500 project.

A continuous task has the following characteristics:  Is a background task that executes any time other operations, such as periodic or event tasks, are not executing

Note that “self-triggered” means that as soon as it ends, the task begins again. It also means that the routine does not have to be called (activated).

 Operates in a self-triggered mode (automatically restarts after

If students are familiar with Basic programming, compare this to programming a Goto 10 statement in the last line.

 By default, has the lowest priority (one lower than the lowest

each completion)  Can be interrupted by a periodic or event task periodic or event task)

 Only ONE task can be continuous Watchdog Timers

Note that the watchdog timer in a PLC-5 processor is for the entire controller. Here, the watchdog timer is set for each task.

Tip " Point out that the last scan and max scan can be viewed online. In a different lesson, students will learn to monitor the scan times using ladder logic instructions.

A watchdog timer monitors the execution of a task. The timer is started when a task is initiated and stops when all programs within the task have executed. A watchdog timer continues to run even if a task is interrupted, so it’s important that the watchdog timer is set to a large enough value. Ensure that the time period is longer than the sum of the execution time of all the programs assigned to the task. If the controller detects that a periodic task trigger occurs for a task that is already operating, a minor fault occurs.

If a watchdog timer reaches its configured preset, a major fault occurs. Depending on the controller fault handler, the controller may shut down.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. TS2sb56r

2--4

Creating and Organizing a New RSLogix 5000 Project

To inhibit a task:

Inhibited Task

1. Inhibit all tasks except one.

The following icon in the Controller Organizer indicates that the task has been prevented from executing by a user option or instruction:

2. Run the project and monitor the execution of the active task. 3. When the task meets the requirements of the system, repeat the process, testing a different task.

Inhibited Task

Tip " State that tasks can also be inhibited or uninhibited using SSV instructions.

Mention that for information on equipment phases, attend the PhaseManager course.

This inhibit option can be used to test, diagnose, or start up a project. If a task is inhibited, the controller still pre-scans the task when the controller transitions from Program to Run or Test mode.

Creating a Program A program is the second level of scheduling within a project. A program has the following characteristics:  Each task can schedule up to 100 programs.

 When a task is triggered, its programs execute in sequence from the first scheduled to the last scheduled.

Programs within a task can access input and output data directly from controller-scoped memory:  Code within any program can modify controller-scoped data.

 Code within a program can also modify program-scoped data: -- Code within one program cannot access or modify the data that is local to a different program. The Create New Program button is shown in the following graphic: Optional Toolbar Create New Program

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 TS2sb56r

Creating and Organizing a New RSLogix 5000 Project

2--5

Adjusting a Program Schedule Mention that the entire schedule can be viewed in the Task Properties dialog box. Otherwise, programs can be quickly scheduled or unscheduled in the Controller Organizer.

Programs can be scheduled in a specific task or left unscheduled:  Original equipment manufacturers may create one project and then schedule or unschedule a program depending on the equipment’s required functionality.

Note that these methods will be demonstrated in the Here’s How section.

 Maintenance or field service technicians may create

Add that unscheduled programs do not use any scan time.

troubleshooting programs that are left unscheduled until needed to test a project.

The following example shows a program schedule: Adjust Order

Program Schedule

Unscheduled Programs

Actual Program Scan Time The software can display the maximum scan time and the last scan time in microseconds for a selected program:  Scan time is based on the number and type of instructions.  These values are execution times for the program and do not include any time spent waiting for other programs or tasks.

State that a Compute instruction will take longer than using simple multiply and divide instructions. Note that the GSV instructions that are used to monitor program time are presented in a different lesson. Tip

Rev. August 2012

 These values are for display only.

"

Values can also be monitored using specific instructions in code.

E 2012 Rockwell Automation, Inc. All rights reserved. TS2sb56r

2--6

Creating and Organizing a New RSLogix 5000 Project

Creating a Routine A routine provides the executable code, or decision-making instructions, for a project. Each routine contains a set of elements for a specific programming language:  Ladder Logic -- suited for relay or discrete applications  Function Block Diagram -- suited for continuous process and drives control applications

Note that ladder logic is the most common language used.

 Sequential Function Chart -- suited for motion or batch

applications or concurrent applications where more than one state is active at one time. Also suitable for sequential applications such as assemble or packaging machines.  Structured Text -- suited for complex math or array applications or for programs converted from other projects created in high-level languages like C

Tip "

The availability of these languages will depend on the options that have been selected and installed. A routine can be assigned as one of the following types:  Main Routine: A routine that executes automatically when the controller triggers the associated task and program:

-- Can be of any language -- Is marked with a 1 in the Controller Organizer  Fault Routine: A routine that is configured to execute when the

controller finds an instruction-execution fault within any routines in the associated program: -- Is marked with a yellow triangle in the Controller Organizer  Subroutine: A routine that is called by another routine:

-- Is called by a JSR (Jump to Subroutine) instruction in the main routine or another subroutine (conditioned or unconditioned) -- Returns to the other routine when complete or if a condition is met

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 TS2sb56r

Creating and Organizing a New RSLogix 5000 Project

Stress that routines are not listed in the order of execution. JSR instructions determine the order of the subroutine execution.

2--7

The main routine is always listed first, followed by a fault routine (if any), and then all subroutines in alphabetical order:

For troubleshooting, mention that you can create a cross-reference report that lists all JSR instructions that call a subroutine and their locations in the ladder logic. This will be presented in a different lesson.

Main Routine

Ladder Logic Routine

Fault Routine Subroutines

Structured Text Routine Sequential Function Chart Routine

Function Block Diagram Routine

In the graphic point out the “1” on the main routine.

The following is an example of subroutine structure: When the conditions are met, the main routine calls the Level subroutine. Example Ladder Logic in the Main Routine

Subroutine

If necessary, define a nested routine as a subroutine that is activated from within another subroutine. Note that cross-reference reports are part of the Documenting and Searching For Ladder Logic Components lesson.

Rev. August 2012

The Create New Routine button is shown in the following graphic: Optional Toolbar Create New Routine

E 2012 Rockwell Automation, Inc. All rights reserved. TS2sb56r

2--8

Creating and Organizing a New RSLogix 5000 Project

Program Control Instructions Note that if there are no input parameters, control passes from the JSR instruction to the first rung of the subroutine.

When enabled, the ladder logic JSR instruction directs the logic execution to the specified subroutine and, if needed, passes parameters to the subroutine:  Numeric, structured parameters, and BOOL data type tags can be passed. The SBR (Subroutine) instruction receives the input parameters and copies their values into the specified tags:  The optional SBR instruction identifies the tags that store the incoming parameters.  The RET (Return) instruction ends the subroutine and, if needed, returns parameters to the JSR instruction: -- Use the RET instruction only if you are returning parameters to the JSR instruction.

System Overhead Timeslice Note that the system overhead timeslice is located in the Advanced tab of the Controller Properties dialog box.

Add that because the serial port is in the controller, it affects controller operation. If necessary, review RIUP.

In the graphic, point out that the far right area is used for overhead functions. If there are no functions, the time is available for the continuous task. If there is no continuous task, then the system overhead timeslice is irrelevant. Note that 20% is the default.

The user-configurable system overhead timeslice determines the percentage of controller time that is available for the following background functions:  Communicating with programing devices and programming software  Messaging

 Bridging communications from the controller’s serial port to other devices via the backplane  Re-establishing and monitoring I/O connections (RIUP conditions)

The system overhead timeslice percentage does not affect executing periodic or event tasks: Controller Execution Time

Time for Periodic or Event Tasks Time for the Continuous Task % System Overhead Timeslice Percentage

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 TS2sb56r

Creating and Organizing a New RSLogix 5000 Project

Mention in step one that the data is multicast to the backplane then received by the controller. Chalk Talk: If students have a PLC or SLC background, you may want to draw the PLC/SLC scan diagram on the board for comparison. When reviewing the diagram, explain the following steps based on the experience of the class and the lessons already covered: 1. Each rung of ladder logic (code) is scanned.

2--9

Asynchronous Updates Asynchronous: Actions that occur independently of each other and lack a regular pattern. In Logix5000 controllers, I/O values update asynchronously with the execution of code: 1. Input modules multicast their data to the backplane at the RPI rate set in the modules. 2. The code is scanned and the output tags are updated immediately after the execution of each output instruction.

2. As higher numbered rungs are 3. Values are sent to the output modules at the RPI rate and at the scanned, the inputs may change and end of each task. therefore, the outputs may change as reflected in the tag database image. Tip " The automatic output processing that occurs at the end of a task can 3. The RPI is the rate at which the user configures the output modules to update.

be disabled in the properties of the task.

Because of the update process, input devices may change state within one program scan and at a different rate than the program scan:

Single Scan Physical Device Data is received by the input card RPI Rate

Rung 100

COS

Rung 250

Tag is set or cleared in controller

Optional

RPI Rate

Rev. August 2012

Rung 400

E 2012 Rockwell Automation, Inc. All rights reserved. TS2sb56r

Creating and Organizing a New RSLogix 5000 Project

2--10

Relate the organizational tips to an example compressor assembly project: S

The project has three assembly machine stations in the first controller; therefore, an Assembly task is created.

S

Each station (press, stake, and weld) becomes a program in the Assembly task. Instead of having a separate controller run the machine at each station, one controller runs them all.

S

Each program has a control routine for the machine. A main routine is used to call the control routine (and any future routines).

If available, give examples of naming conventions and how they are constructed.

Give students a few minutes to read the section.

Project Organization Best Practices To efficiently organize a project:  Divide the process into functional groups or sections that represent one or more facets of the process:

-- Sequence of related actions that operators perform -- Group of related process events -- Machine or machine sections  Divide each program into routines, where each routine represents one or more facets of the program:

-- Specific process within the program -- Section of application code that could be hidden to facilitate troubleshooting -- Function that occurs at several instances during the program -- A main routine that will call up the subroutines of the program  Create and apply plant naming conventions for tasks, programs, routines, and tags. Reference: Logix5000 Controllers Design Considerations, 1756--RM094 1. Go to the Divide Logic into Tasks, Programs, Routines, and Add--On Instructions chapter. 2. Go to the Decide When to Use Tasks, Programs, and Routines section. 3. Briefly read the information on when to use a task, program, or routine.

Have each student do this on their own. Then go over the answers as a group.

Activity: For each of the situations below, decide if you would separate the logic at the task, program, or routine level. Check the appropriate box:

For this situation

Program

A. A conveyor line uses a series of diverters to sort packages. Each diverter uses identical logic.

Task

B. You only need to update your analog devices every 250 ms, but you must update your discrete devices every 20 ms.

Routine

C. The logic for a conveyor performs these functions: initialize, run, return status information, handle faults.

Task

D. A grinding application monitors an over--current sensor on the feed motor. If the sensor trips, the operation needs to immediately abort to prevent the stone from shattering.

Routine

E. A mixing tank uses a combination of 2--state devices to mix juice:

Separate the logic at this level Task Program Routine

 Several valves open and close to add wet and dry ingredients.  A single--speed motor mixes the ingredients.  An outlet valve opens to drain the tank. E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 TS2sb56r

Creating and Organizing a New RSLogix 5000 Project

2--11

Example: Project Organization Note that the organization of this project is not very different from a typical PLC-5 project.

In this example, a paper mill converted a time-tested PLC-5 ladder logic project into an RSLogix 5000 project. All of the logic was placed in one continuous task and follows the basic default project structure:

Single Continuous Task Similar to Traditional Controller Project

Select tool windows can now be docked in RSLogix 5000’s main window, float on top of the window, or become an Auto Hide tool window. This applies to:

Program Main Routine

S S S S S

Subroutines

Controller Organizer Errors Search results Watch Start page

Verifying Tasks, Programs, and Routines Mention that the verification process is similar to the RSLogix 5 and 500 process with the addition of tag verification.

After organizing your controller project, you can verify it. In this process, the software looks for errors such as unassigned routines. The following buttons are available to verify the entire controller project or routine: Standard Toolbar

Verify Open Routine

Rev. August 2012

Verify Controller

E 2012 Rockwell Automation, Inc. All rights reserved. TS2sb56r

2--12

Creating and Organizing a New RSLogix 5000 Project

Errors or warnings found in the verification process are displayed in the Output window: Double-Click to Go to the Error or Warning or Press F4

Here’s How IMPORTANT: To meet IACET CEU requirements and fully prepare certificate students for the final exam, you must demonstrate Tip all lesson objectives using the proper job aids.

To access video-based help files: Follow along as your instructor demonstrates this procedure.

"

There are many video-based help files to assist in everything from development of an RSLogix 5000 project to maintaining one.

Use the steps below to help guide you during the demonstration: Access the files through the Help menu’s Learning Center “How Do I” section. Show one or two examples of the video help. You can stop them after a few moments. This is just to show how the system works. If Lesson 20 will be used, skip this Here’s How.

Example

E 2012 Rockwell Automation, Inc. All rights reserved.

Access the files through the Help menu’s Learning Center “How Do I” section:

Rev. August 2012 TS2sb56r

Creating and Organizing a New RSLogix 5000 Project

2--13

For example, under Controller Projects you would find subjects on creating and downloading projects. Under Maintain you would find information on clearing faults or searching.

Here’s How

To perform the following tasks:  Create a new RSLogix 5000 project file

     

Modify controller properties Create a program and routine Adjust a program schedule Copy and reuse programs and routines Delete a routine, program, and task Verify tasks, programs, and routines

Activity: As your instructor demonstrates these procedures, follow along in the associated job aid(s).

Demonstration Checklist IMPORTANT: To meet IACET CEU requirements and fully prepare certificate students for the final exam, you must demonstrate all lesson objectives using the proper job aids. Use the steps below to help guide you during the demonstration: Create a new RSLogix 5000 project. When demonstrating the listed procedures, point out the following items:

Pay attention to these critical aspects of the demonstration: -

Location of the procedures in the job aid

-

Revision must match the major firmware revision of the controller

S

The MainTask, MainProgram, and MainRoutine

-

Initial name of the project file

S

The Main Routine Assignment drop-down list

-

What happens if you change the name of the controller or the name of the project file

S

The max scan time

-

Which name shows up in RSWho

S

The System Overhead Timeslice option

-

Once you pick the firmware revision for a project, you cannot change it to a lower revision

-

Task, program, and routine hierarchy

-

Where you assign a main routine for a program

-

How to see the maximum scan time of a task

-

Where you change the system overhead timeslice value

" The copying and reusing programs and routines procedure is part of the “Copying and Reusing Project Components” procedure in the Procedures Guide.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. TS2sb56r

2--14

Creating and Organizing a New RSLogix 5000 Project

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 TS2sb56r

Exercise: Creating and Organizing a New RSLogix 5000 Project

2--15

Exercise: Creating and Organizing a New RSLogix 5000 Project Exercise A

In this exercise, you will practice creating and organizing a new RSLogix 5000 project. Context: You are familiar with the system’s hardware and software components. You are now ready to create a new RSLogix 5000 project file to hold your programming and configuration information. You are also ready to organize the project and direct the execution of the code. When you see underlined text, refer to the related procedure or information in your job aid. Directions: 1. From the Help Menu open the Learning Center: A. Select the How Do I tab. B. Select Controller Projects. C. View the Video “Create a New Project.” D. Remember as you go through the additional lab and steps that the Help system is there to assist you in your work. 2. Create a new RSLogix 5000 project file for the controller in slot 1 of your workstation. Give it this name: Paint. 3. Modify the following controller properties: A. For an anticipated increase in communications, change the system overhead timeslice to 25%. 4. Rename the Main Task as Paint.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. TS2e56r

2--16

Exercise: Creating and Organizing a New RSLogix 5000 Project

5. Create the following programs and routines: Task Paint (This task automatically restarts when it is done.) The watchdog timer value must be 600 ms.

Programs

Routines

Purpose

Paint_line_1 (Rename the MainProgram)

MainRoutine

Ladder that enables the subroutine

Paint_Control

Ladder that controls the paint gun

MainRoutine

Ladder that enables the subroutine

Paint_Control

Ladder that controls the paint gun

MainRoutine

Ladder that enables the subroutine

Paint_Control

Ladder that controls the paint gun

Paint_line_2

Paint_line_3

6. Copy the Paint_line_3 program (with all of its contents). 7. Paste the copied program into the Paint task and change its name to Paint_line_4. 8. Adjust the program schedule in the Paint task so that the programs execute in this order: A. Paint_line_3 B. Paint_line_1 C. Paint_line_2 D. Paint_line_4 9. Delete the Paint_line_4 program (and all of its contents).

Tip "

Remember that all elements must be unassigned and removed first. 10. Verify the tasks, programs, and routines and correct any errors. 11. Save the project file.

Tip "

Another programmer was assigned to create and organize the project for the controller in slot 3 for a quality check. Although this is not the paint line, you still want to follow the same style and conventions for easy troubleshooting. 12. Open the TS2_1756r_A1.acd file. 13. Examine all properties of the tasks (continuous and periodic), programs, and routines programmed in the project.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 TS2e56r

Exercise: Creating and Organizing a New RSLogix 5000 Project

2--17

14. Which task is periodic?

15. Which task is continuous?

16. In which order do the programs in the continuous task execute?

17. What are the subroutines in the Station_4_Quality program?

How Did You Do?

Rev. August 2012

Turn to the Answers section.

E 2012 Rockwell Automation, Inc. All rights reserved. TS2e56r

2--18

Exercise: Creating and Organizing a New RSLogix 5000 Project

Answers

Exercise A 3. A. The System Overhead Time Slice is configured on the Advanced tab of the Controller Properties dialog box. 5. The main routine for a program is assigned on the Configuration tab of the program properties dialog box:

7. The tasks, programs, and routines entered in the Paint project are shown in the following graphic:

Watchdog Timer Set to 600 ms

Assigned as Paint_line_3 Main Routine

Assigned as Paint_line_1 Main Routine

Assigned as Paint_line_2 Main Routine

Assigned as Paint_line_4 Main Routine

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 TS2e56r

Exercise: Creating and Organizing a New RSLogix 5000 Project

2--19

9. To delete the Paint_Line_4 program, you must perform the following actions: A. Unassign MainRoutine as the main routine. B. Delete the MainRoutine and the Paint_Control routines. C. Unschedule the program. D. Delete the program. 14. Record_Shift_Number, identified by the clock icon, is the periodic task:

15. Assembly, identified by the round arrow icon, is the continuous task.

16. The programs in the continuous task execute in this order: A. Common B. Station_4_Quality C. Station_5_Palletize 17. The Station_4_Quality program contains the following subroutines:

 Check  Data_Logging  Reject

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. TS2e56r

2--20

Exercise: Creating and Organizing a New RSLogix 5000 Project

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 TS2e56r

Lesson

3

Creating a Periodic Task in an RSLogix 5000 Project What You Will Learn

After completing this lesson, you should be able to:  Determine the period (rate) for a periodic task  Create a periodic task

When You Will Do This If you have logic you want to run at a specific time period, create a period task for it.

Before You Begin

Task Type Review A task triggers the execution of its scheduled programs. The following table outlines the type of tasks that are available:

If students are familiar with PLC-5 or SLC 500 controllers, relate the periodic task to an STI (Selectable Timed Interrupt).

Rev. August 2012

Task Type

Usage

Continuous

A task that runs continuously but can be interrupted by periodic or event tasks.

Periodic

A task that executes regularly at a user-specified rate. When called, it will interrupt any lower priority tasks.

Event

A task that is triggered only when a specific event occurs. When called, it will interrupt any lower priority tasks.

Icon

E 2012 Rockwell Automation, Inc. All rights reserved. PERsb56r

3--2

Creating a Periodic Task in an RSLogix 5000 Project

Periodic Task Add that a task that is 8 ms in duration and is executed every 8 ms will block all other tasks of lower priority from executing.

Fault Example: If a periodic task executes every 8 ms and it is 11 ms in duration, the controller will fault.

Tip "

A periodic task has the following characteristics:  Is triggered by the controller at a regular, repeated time interval determined by the user

 Always interrupts and suspends the continuous task  May interrupt other periodic or event tasks with a lower priority

level: -- An interrupted task does not shift its start time. -- An interrupted task will stop mid-instruction.  When executing, scans all assigned programs once from top to bottom  After a single scan, an output update is triggered and controller is returned to the interrupted task at the point it was interrupted Like a continuous or event task, periodic tasks require at least one program and one routine. Example: Periodic Task Use Periodic tasks are selected for processes that require accurate and deterministic execution:  Check pressure on a machine at regular intervals  Correct a PID loop at regular intervals

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 PERsb56r

Creating a Periodic Task in an RSLogix 5000 Project

3--3

Example: Project Organization Note that this project takes advantage of some of the Logix5000 organizational elements.

In this example, the motion application includes two periodic tasks to ensure execution at specific time intervals:

Periodic Task (with Times in Names)

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. PERsb56r

3--4

Creating a Periodic Task in an RSLogix 5000 Project

Periodic Task Properties The user--defined properties for each periodic task determine when the task is executed: In the graphic, point out that the period is “when the task starts” and not how long it takes. Start Interval Priority Level

Important Priority Information

Period The period determines the start interval for the task:  The trigger time range is 1 ms (millisecond) to 2000 seconds.

 The default is 10 ms. If a periodic task retriggers before the task is done, a minor fault will occur.

The rate at which a periodic task is triggered determines the period in which the logic is executed and the data is manipulated within the task. Data outputs established by the programs in a task retain their values until the next execution of the task or until they are manipulated by another task.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 PERsb56r

Creating a Periodic Task in an RSLogix 5000 Project

3--5

Priority Each periodic and event task in a controller has a priority level that determines which task executes when multiple tasks are triggered:  Priorities are assigned by the user.

Clarify that the lower number (1) gives the task a higher priority or importance.

 There are 15 levels of priority, with 1 being the highest priority

and 15 being the lowest: -- A task with a higher priority will execute first (i.e., 1 before 3)

Note that the fastest or shortest task will not necessarily be the highest priority.

 Task priorities are relative: -- If there are only three tasks, priorities of 6, 7, and 8 will

Clarify that this means the continuous task automatically has the lowest priority. A user cannot configure the priority for a continuous task.

function the same as priorities of 1, 2, and 3.  Although no priority level is assigned, the motion task is always the highest priority.  Although no priority level is assigned, the continuous task is always one priority level lower than all other tasks.

Highest Priority

Motion Task Trend

Point out that periodic and event tasks use the same priority scale/levels. Therefore, whichever task has the highest priority executes first, regardless of the task type.

Event or Periodic Task - Priority 1 . . . Event or Periodic Task - Priority 5 . . . Event or Periodic Task - Priority 10 . . . Event or Periodic Task - Priority 15 . . . Lowest Priority

Rev. August 2012

Continuous Task

E 2012 Rockwell Automation, Inc. All rights reserved. PERsb56r

3--6

Creating a Periodic Task in an RSLogix 5000 Project

Scan Time Values Note that this system creates slightly more overhead, as the controller writes the I/O updates after each rung is scanned and does not wait until all of the rungs are scanned.

When executing, the software displays the maximum scan time and the last scan time in microseconds for the selected task in the Task Properties dialog box:

Online Properties Length of Execution

Periodic Task Execution The period and the priority assigned to each task determine the task execution. Execution time is based on:  The amount of code in a project  The complexity of the code

 Processor speed Example: Periodic Task In the graphic, point out that the rate is “when the task starts” and not how long it takes.

Task Execution Every 20 ms

In the following example, the periodic task is triggered every 20 ms: 5 ms

0 ms

20 ms

40 ms

60 ms

80 ms

Task (Duration of 5 ms)

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 PERsb56r

Creating a Periodic Task in an RSLogix 5000 Project

3--7

Example: Periodic Task and Continuous Task The following example shows how the periodic task interrupts and suspends the continuous task: Periodic Task Execution Every 20 ms 5 ms Continuous Task 0 ms

60 ms

40 ms

20 ms

80 ms

Continuous Task Interrupted for 5 ms

Example: Multiple Tasks The following example shows how a periodic task interrupts and suspends the continuous task and another periodic task:  Task A is triggered every 20 ms and has a priority of 3.  Task B is triggered every 22 ms and has a priority of 1. Therefore, task B will interrupt task A: 22 ms

Task B (Every 22 ms) Priority 1 Task A (Every 20 ms) Priority 3

44 ms

66 ms

88 ms

Continuous Task 0 ms

20 ms

60 ms

40 ms

80 ms

? How many periodic or event tasks

Two tasks can be assigned the same priority. If this occurs, the tasks will timeslice, or alternate execution, in 1 ms intervals.

Answer: There can be up to 32 periodic or event tasks (or 31 if there is a continuous task). However, there are only 15 levels of priority. (Use this difference to lead into the discussion on timeslicing).

Example: Equal Priorities (Timeslicing)

and how many levels of priority can there be in a ControlLogix project?

The following example shows how two tasks of equal priority will timeslice: Task A, Priority 3 Task B, also Priority 3

0 ms

Rev. August 2012

Tip "

1 ms 2 ms 3 ms

4 ms 5 ms

Timeslicing takes slightly more time than having different priorities. E 2012 Rockwell Automation, Inc. All rights reserved. PERsb56r

3--8

Creating a Periodic Task in an RSLogix 5000 Project

Here’s How

To determine the period (rate) for a periodic task. 1. Note the watchdog timer value. 2. Subtract the required time for the continuous task. 3. Subtract the time of any existing periodic tasks. 4. Divide the time remaining by the time it takes the new periodic task to execute. 5. Divide the total time allowed by the number of times you want the second task to execute.

Example

Determining the Period (Rate) for a Periodic Task. 1. Note the watchdog timer value: 450 ms. 2. Subtract the required time for the continuous task: 450--300 = 150. 3. Subtract the time the existing periodic task takes: 150--90=60 90 ms comes from the following calculation: Executes every 50 ms, or 9 times in 450 ms. 9 times executed * 10 ms each time = 90 ms. 4. Divide the time remaining by the time it takes the second periodic task to execute: 60 / 20 = 3 5. Divide the total time allowed by the number of times you want the second task to execute: 450 / 3 = 150

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 PERsb56r

Creating a Periodic Task in an RSLogix 5000 Project

Here’s How

3--9

To create a periodic task. Activity: As your instructor demonstrates this procedure, follow along in the associated job aid(s).

Demonstration Checklist IMPORTANT: To meet IACET CEU requirements and fully prepare certificate students for the final exam, you must demonstrate all lesson objectives using the proper job aids. Use the CCP143_1756r_DEM2.acd project. When demonstrating the task, point out the following items: S

S

The routines within one periodic task enables the slot 0 outputs while the other disables them

Pay attention to these critical aspects of the demonstration: -

Location of the procedure in the job aid

-

Period and priority of the task

-

Max scan time (when online)

In Run mode, you can verify when the task execute by the lights on the workstation

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. PERsb56r

3--10

Creating a Periodic Task in an RSLogix 5000 Project

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 PERsb56r

Exercise: Creating a Periodic Task in an RSLogix 5000 Project

3--11

Exercise: Creating a Periodic Task in an RSLogix 5000 Project Exercise A

In this exercise, you will practice creating and configuring a periodic task in an RSLogix 5000 project. Context: You have already created an RSLogix 5000 project file to hold your programming and configuration information. You are ready to add a task that will execute on a regular basis. When you see underlined text, refer to the related procedure or information in your job aid. Directions: 1. What type of application would require a periodic task?

2. Open the PER_1756r_A1.acd file. 3. Review the following information about your project: Existing periodic task at priority 2. Takes about 20 ms and executes every 50 ms. Main task takes about 300 ms.

4. You want your new periodic task to have a higher priority than the Existing_Periodic task. What priority number will you assign for your task based on the previous information?

5. If your new periodic task was assigned the same priority as Existing_Periodic task, what would happen if the tasks attempted to execute simultaneously?

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. PERe56r

3--12

Exercise: Creating a Periodic Task in an RSLogix 5000 Project

6. Review the following application requirements:

 Your goal is to execute the new task every 150 ms.  The new task must have a higher priority than Existing_Periodic task.

7. Create a periodic task named Quality configured for the priority and rate necessary to meet the application requirements. 8. Add the unscheduled program Quality_Monitor to the program schedule of your new periodic task. 9. Download your project to the controller and go online. 10. Place the controller in Run or Remote Run mode. 11. What happens when the controller is placed in Run or Remote Run mode?

12. If the controller experiences a watchdog fault while in Run or Remote Run modes, how could the configuration of the periodic task be changed to prevent this fault?

13. Clear the Major Fault from the Controller Properties dialog box. 14. Configure the Quality task to have a rate of 250 ms. 15. Place the controller in Run or Remote Run mode. 16. In the Task Properties window for the Main Task, verify that the maximum scan time is not greater than the watchdog of 500ms.

How Did You Do?

E 2012 Rockwell Automation, Inc. All rights reserved.

Turn to the Answers section.

Rev. August 2012 PERe56r

Exercise: Creating a Periodic Task in an RSLogix 5000 Project

Rev. August 2012

3--13

E 2012 Rockwell Automation, Inc. All rights reserved. PERe56r

3--14

Exercise: Creating a Periodic Task in an RSLogix 5000 Project

Answers

Exercise A 1. Any type of application that requires accurate and deterministic control would be an appropriate response. 4. The only priority higher than 2 is 1. 5. If periodic tasks of the same priority attempt to execute simultaneously, the tasks will timeslice execution in 1 ms intervals. 7. Your New Task dialog box should look similar to the following example:

11. Your controller should experience a major fault when the controller is placed in Run or Remote mode. This is due to the Main Task watchdog time expiring. 12. Increasing the period (rate) of the periodic task will reduce the frequency the periodic task executes. Even a periodic task with contains little code can fault a watchdog timer if executed frequently enough. Another option would be to increase the watchdog timer for the continuous task. 16. Your Task Properties window should look similar to the following example (scan times will vary):

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 PERe56r

Lesson

4

Organizing Data in an RSLogix 5000 Project What You Will Learn

After completing this lesson, you should be able to:  Create a tag  Define an alias tag

 Create an array of tags  Verify tags  Monitor and edit data When You Will Do This As you develop your logic, you will have to define tags, aliases, and arrays to efficiently store your data.

Before You Begin

Controller Memory Traditional controllers have data files, such as Timer or Integer, where groups of the same types of data are stored together.

For example, a PLC-5 processor has a pre-created timer file, where all timers are stored together.

There are no such pre-defined data files in a Logix5000 controller. Users must define the memory in a Logix5000 controller by creating tags. Tag: An area of controller memory where data from devices, calculations, faults, etc. is stored. Each area is given a unique name:

Verify that students have an understanding of bit, byte, and word lengths. If not, spend some time reviewing these terms: S

Bit: The smallest unit of data represented by the digits 0 and 1.

S

Byte: A string of 8 bits operated on as one unit.

S

Word: A unit of memory in a controller composed of 16 individual bits or two bytes that are treated as one unit.

“Drive_Speed” Data Controller Memory

Remind students that the individual bits of a byte or word can also be monitored or addressed.

“Start” Data

“Sensor” Data

Emphasize that the graphic depicts only a portion of the controller memory. Note that in the graphic each line represents a bit, or the smallest unit of memory.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. TA2sb56r

4--2

Organizing Data in an RSLogix 5000 Project

Data Types Add that the data type maps out the data just as it does in a PLC-5, SLC 500, or other processor.

Data Type: The definition of how many bits, bytes, or words of data a tag will use. The data type is based on the source of the information.

Note that a tag is similar to the symbolic address in a PLC-5 or SLC 500 controller. The main difference is that tags are stored in the controller, where symbols are stored in the computer only.

Pre-Defined Data Types: Commonly used memory sizes or structures that are already defined in the software.

Indicate that BOOL, SINT, INT DINT, and REAL data types are called atomic data types.

Note that the DINT data type is the main data type. More details will be presented later in the lesson.

Atomic Data Type: A simple data type made of one piece of data: Data Type

Definition

BOOL

A single bit where 1 = on and 0 = off (e.g., the state of a discrete device such as a pushbutton or sensor)

SINT

A short integer (8 bits) between --128 and +127

INT

An integer or word (16 bits) between --32,768 and +32,767 (e.g., PLC-5r data)

DINT

A double integer (32 bits), used to store a base integer number in the range of --2,147,483,648 to +2,147,483,647 (e.g., serial number)

LINT

A 64-bit signed integer data type used to represent wall clock time

REAL

A 32-bit floating point value (e.g., an analog value such as a potentiometer value)

STRING

A data type that holds character data (e.g., “Car” or “this is text”.

Using these definitions, tags for the given devices require the following data types:

Controller Memory

“Drive_Speed” Data DINT, or 32 Bits

“Start” Data BOOL, or 1 Bit

E 2012 Rockwell Automation, Inc. All rights reserved.

“Sensor” Data BOOL, or 1 Bit

Rev. August 2012 TA2sb56r

Organizing Data in an RSLogix 5000 Project

4--3

Structure: A more complex data type that is made up of several pieces of data. E.g., a TIMER data type is made up of a combination of DINTs and BOOLs:

Relate this to a timer relay where there is on/off data as well as a preset value.

Tip "

Give an example, such as the TOTALIZER data type, which is used with the TOTALIZER function block. The data type contains a member for each parameter of the function block.

Data Type

Definition

COUNTER

Increasing or decreasing total

TIMER

Increasing time total (milliseconds)

CONTROL

Length and position for file level instructions

MESSAGE

Control structure for a message instruction

There are other less common, pre-defined data types that are used to store specific data for function block instructions or motion instructions. Module Defined Data Types: Data types used for hardware data, such as I/O tags.

Memory Allocation The minimum memory allocation for a tag of any type is a DINT (double integer or 32 bits). A DINT is the main Logix5000 data type.

Add that a DINT is often called a D word or a double word.

When data is assigned by the user, the controller assigns the next available DINT(s) of memory to any data type. When data types such as BOOL, SINT, and INT are assigned to a tag, the controller still consumes a full DINT (four bytes) but only fills part of it:

Use the graphic to review the definitions of BOOL, SINT, INT, DINT, and REAL. After describing each data type, point out the unused area.

Minimum Memory Allocation of 1 DINT 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Unused Memory

 BOOL 



Rev. August 2012

SINT INT

 

Data Type

Used Memory

DINT REAL

E 2012 Rockwell Automation, Inc. All rights reserved. TA2sb56r

4--4

Organizing Data in an RSLogix 5000 Project

Add that students will learn how to create these components in the next lesson.

To efficiently use memory for BOOLs, SINTs, or INTs, an array or a user-defined data type should be created.

 A controller stores tags as they are created and as they fit into controller memory.

 Tags of the same data type are not necessarily stored together in memory.

Tag Scope Add that for program-scoped tags, behind the scenes, the program name becomes a prefix for each tag name. This is how tags with the same names in different programs are kept separate.

Mention that if tags are correctly scoped, ladder logic that uses the program tags can be reused in different programs without changing tag names. Note that the I/O tags listed in the table are the tags that are automatically created when a module is configured. This does not refer to any alias tags that might be created. Mention that the scope dictates the tags folder in which you will create the tag.

Tags can be created at two different scopes:  Controller-Scoped: Tags, such as I/O tags, that are available to every task and program within a project.  Program-Scoped: Tags that are only available to the program to which they are associated. Scope requirements for specific tags are outlined in the following table: To use a tag . . .

In more than one program within the project To produce or consume data (share it with other controllers)

Controller-scoped

In a message instruction or with a PanelViewt 1000C terminal In only one program (and it is not a message instruction or a produced or consumed tag)

Note that tags can be defined through a dialog box or through the Edit Tags worksheet. The worksheet may be faster when creating multiple tags.

Creating a Tag

Direct students to the “Description” entry in the Glossary of the Procedures Guide for the description rules.

 Style  Data Access Control (optional)  Description (optional)

Note that alias tags will be presented later in this lesson.

Then select this scope . . .

That is generated when an I/O module is configured (I/O status, data, etc.)

Program-scoped

To create a tag, the following parameters must be defined:  Tag Name  Data Type

Note that the Monitor Tags tab is for viewing data that is active in the controller. E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 TA2sb56r

Organizing Data in an RSLogix 5000 Project

4--5

The parameters are defined in the Edit Tags tab of the Tags window:

Tag

Filter

Another Name for the Tag

Operand Descriptions Data Type

Wildcard Filter

Data Access Control

Display Style

Icon Indicating Controller-Scoped Tags

White = Editable Field Editing View

State that tag names are not case-sensitive. However, case may help with readability.

Tag Name

Tip "

Have the students turn to the Glossary of the procedures guide. Review the naming conventions.

Naming conventions are listed in the “Name” entry in the Glossary of the Procedures Guide. Creating controller-scoped tags and program-scoped tags with the same names can cause confusion.

Note that these naming conventions apply to most components in an RSLogix 5000 project.

Data Type Tags can be created using the following data types:  Any pre-defined data type

 Any user-defined data type Style State that data from a BCD thumbwheel could be viewed in the hexadecimal radix.

Style is the display radix for each data type:  For certain data types, the style can be changed to a different display radix. E.g., the default style for a tag of the DINT data type is decimal:

-- The style for DINT tags can be changed to binary, octal, decimal, or hexadecimal.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. TA2sb56r

4--6

Organizing Data in an RSLogix 5000 Project

Defining an Alias Tag Alias Tag: An additional name for a tag (or other alias tag):  The tags refer to the same area of memory. Tell students that if a base tag is used as an address, any corresponding alias tags will not be displayed. State that if the base tag is used directly in an instruction, that is all that is shown. Compare this to calling someone by their name instead of their employee number, or referring to a Tip module by a name instead of a part number.

"

 The tags, therefore, reflect the same values and changes. Base Tag: The tag to which the alias refers (i.e., the tag where data is actually stored). If an alias tag is used as the address for an instruction, the alias tag is always displayed. When programming, it may be confusing to sometimes use an alias tag and other times directly use the tag to which the alias refers.

In the following graphic, trace the chain Alias tags are commonly used to rename I/O tags that are generated of alias tags, beginning with Start. When with complex naming structures: you reach Alias_4, it will be easier to explain Base tags. Alias Tag Name What the Tag is an Alias for (e.g., an I/O Tag) If this lesson is part of a standard school, state that students will learn how to configure I/O modules and interpret the generated I/O tags in the Communicating with a Local 1756 I/O Module lesson. Base or Original Tag (If There is a Chain of Alias Tags)

Note that the hierarchy of alias tags is available in the cross--reference report for a tag. This can be a very helpful troubleshooting tool.

Use caution in developing applications that utilize multiple alias tags for the same base tag.

You cannot create a program-scoped alias tag for a controller-scoped tag of the same name.

Note that there is a separate lesson that presents the steps for these tasks. If students are familiar with producing and consuming tags, point out that the setup in RSLogix 5000 software is the same. For Ethernet, the producing controller is connected to a remote 1756-ENET or 1756-ENBT module.

E 2012 Rockwell Automation, Inc. All rights reserved.

Produced and Consumed Tags The following controller-scoped tags can be created to share data between controllers:  Produced Tag: A tag that is shared with other controllers over the backplane or a control network, such as ControlNett or EtherNet/IPt.  Consumed Tag: A tag that holds the value of a produced tag that is received from another controller over the backplane or a control network. Rev. August 2012 TA2sb56r

Organizing Data in an RSLogix 5000 Project

4--7

Creating an Array of Tags Note that an array that is a member of user-defined data type can only have one dimension.

Array: A numerically indexed sequence of elements of the same data type. An array tag occupies a contiguous section of memory in the controller with each element in sequence. Arrays can have one, two, or three dimensions. Element: A single position within an array.

Note that the array Part[40] will have elements of Part[0] to Part[39]. Point out that you can create an alias tag for each element of an array. For example, Cold_Timer might be an alias for TIMER [34].

Example: Array To make INT records for 6 parts, a one-dimensional array of INTs is created: 1 DINT (32 Bits)

Relate this to PLC-5 data, where N7:0 to N7:9 is a one-dimensional array of integer data types.

1 INT

Note that if maintenance personnel who will work on the project are used to working with PLC-5 controllers, you can create an array named T4. Each element, e.g., T4[11], will look similar to a PLC-5 timer, with brackets instead of a colon.

Point out that if you create an array tag from the Tags Editor window, and manually enter the brackets and numbers, the first value entered in the brackets becomes the X value. The second number entered is Y and the third is Z. Note that if you enter the dimensions from the Tags Properties window Dim0 becomes Z if you create a three dimensional array. Depending on how the tag is created you could end up with two different results.

? What is a structure? Answer: A data type made up of a mixture of other data types, such as a timer (with a mix of DINTS and BOOLS).

Rev. August 2012

Part_Data[1]

Part_Data[0]

Part_Data[3] Part_Data[5]

Part_Data[2] Part_Data[4]

The elements in the array occupy memory in order. The array always starts at 0 and extends to the number of elements minus 1. An array in the Tags window is shown in the following graphic: Array of 6 (0- 5) INTs

Same Data Type

Single Element

An array must be created with the following rules in mind:  An array can have up to three dimensions unless it is a part of a UDT, where then it can have only one dimension.  An array can be of one data type only. Arrays support the following data types: -- Any pre-defined data types except Axis data types, Message, or Motion_Group -- A user-defined data type E 2012 Rockwell Automation, Inc. All rights reserved. TA2sb56r

4--8

Organizing Data in an RSLogix 5000 Project

Tip "

Data of the same type is not automatically grouped in memory. To store all timers together, create an array of timer tags.

Array Storage Relate this to a Microsoft Excel worksheet where one dimension is a column, two dimensions are rows and columns (a standard worksheet), and three dimensions are several pages of rows and columns. One Dimension

Arrays can have up to three dimensions and store data in the following manner: Two Dimensions

Three Dimensions

Example: Three Dimensional Array Add that an array might include data sorted by shift number, part type, and part number. Note that data might also be stored by shift, day, and week. Or, x and y coordinates (for retrieving a part in storage).

A three dimensional array might store the following data: Part Number

Part Number, Size

Part Number, Size, Color

Note that each square is an element. Note that in memory, the first dimension will not increment until the second dimension reaches its upper limit.

= Part Number 2, Size 3, Color 0

Ask students to determine the total number of elements in each of the part number arrays.

Tip "

E 2012 Rockwell Automation, Inc. All rights reserved.

To determine the total number of elements in an array, multiply the number of elements in each dimension. A tag uses a DINT (32 bits) even if it is smaller (8 bits). To conserve data, put 32 BOOLs, four SINTs, or two INTs into an array.

Rev. August 2012 TA2sb56r

Organizing Data in an RSLogix 5000 Project

4--9

Array Addressing Note that this section presents the formats for array addresses. Entering the addresses will be presented in the Entering, Editing, and Verifying Ladder Logic in an RSLogix 5000 Project lesson.

In an array, the following can be addressed:  A numeric element (fixed)

 A variable element  A numeric bit  A variable bit Numeric Element Addressing

Note that the number or expression in the brackets is the subscript. Point out the square brackets that enclose the element number. Remind students that the elements begin with 0 (zero).

To access a specific array element (e.g., one DINT in an array of DINTs), use the following address format:

Note that the subscript is the value or expression in the square brackets.

Example: Numeric Element Addressing

Tip "

ArrayName[Element Number]

PartData[3] This reference is fixed because the element value of 3 will not change. Data that is stored in two- and three-dimensional arrays can be addressed using the same format. Additional dimensions are separated by commas, as outlined in the following table: Number of Dimensions

Format

Example

1

Array_name[0]

Part[3]

2

Array_name[1, 0]

Part[2,4]

3

Array_name[2, 1, 0]

Part[3,5,1]

Example: Numeric Element Addressing for Multiple Dimensions Array= Part[8]

Part[8,6]

Part[8,6,4]

Part[4,5,2]

Part[2]

Rev. August 2012

Part[1,3]

Part[2,3,0]

E 2012 Rockwell Automation, Inc. All rights reserved. TA2sb56r

4--10

Organizing Data in an RSLogix 5000 Project

Variable Element Addressing Add that this is similar to indirect addressing in PLC-5 programming.

To change the array element that your logic references, use a tag or expression to point to the element, using the following address format: ArrayName[Tag or Expression] Example: Variable Element Addressing Part[SerialNumber] Part[SerialNumber*5]

In the last example, add that if position1= 7, and position2 = 3, then the part value is 4.

Part[Position1--Position2] You can use the following mathematical operators in an expression to specify an array element: Operator

Description

+

Add

--

Subtract/Negate

*

Multiply

/

Divide

And

And

Frd

BCD to integer

Not

Complement

Or

Or

Tod

Integer to BCD

Sqr

Square root

Xor

Exclusive or

As an example, state that if Position1--Position2=48 and the array is an array of only 40, a major fault will occur.

Any array value that you enter must be within the boundaries of the specified array. Instructions that view arrays as a collection of elements generate a major fault if a value exceeds its corresponding dimension. Numeric Bit Addressing

State that the delimiter before the bit is a period.

A bit within one element of an array can be addressed using the following address format: ArrayName[Element Number].Bit

Note that the example addresses the second bit in tag element 1 of the part array.

Example: Numeric Bit Addressing Part[1].2 Mix_Timer[5].DN

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 TA2sb56r

Organizing Data in an RSLogix 5000 Project

4--11

Variable Bit Addressing To dynamically change the value of a bit, use the following address format: ArrayName[Element Number].[Tag or Expression] Example: Variable Bit Addressing Part[SerialNumber].[Position1--Position2] Array Addressing Summary Point out that a period signifies a bit or a member. A tag without a period is the whole address.

The following table presents a summary of the array address types, formats, and examples: Type

Format

Example

Numeric element

ArrayName[Element Number]

Part[5]

Variable element

ArrayName[Tag]

Station[Position]

ArrayName[Expression]

Station[Position+5]

Numeric bit

ArrayName[Element].Bit

Part[5].15

Variable bit

ArrayName[Element Number].[Tag] ArrayName[Element Number].[Expression]

Part[Index].[MyIndex] Part[Index].[MyIndex+31]

Verifying Tags Mention that the verification process is similar to the RSLogix 5 and 500 process with the addition of tag verification.

After tags are entered, they can be verified. In this process, the software looks for tag errors. Errors found in the verification process are displayed in the Output window:

Double-click to Go to the Error or Press F4

In the Tag window, tags with errors are also marked with an

State that BOOL data types can now be toggled in the Monitor tags window (right-click the tag value or press [CTRL]+T).

Rev. August 2012

.

Monitoring and Editing Data Tags values can be monitored and edited online through the Tags window or certain instructions.

E 2012 Rockwell Automation, Inc. All rights reserved. TA2sb56r

4--12

Organizing Data in an RSLogix 5000 Project

Point out the various unlabeled elements of the spreadsheet, including the rows, cells, columns, etc. Mention that operand descriptions will appear with the tag in logic if configured to do so. Right- Click to Hide/Show Columns

Monitor Tags Tab The Monitor Tags tab is a direct view of a controller’s memory: Scope of Current Collection

Tag and Members

Data Type Blue Operand Descriptions Arrow (up to 512 characters)

Value in Controller Expand to See Structure Members or Bits within the Tag Monitoring View

A blue arrow at the top of a column signifies that a change to any value in this column will immediately take effect in the controller when you press Enter or click another cell.

Stress that finding tags is a key step in monitoring. The way in which tags are filtered can help limit the number of tags displayed. If used improperly, it can also hide required tags.

Tags and Members Tags of the same data type are not automatically displayed together in the Monitor Tags tab:  Tags can be displayed alphabetically (default mode).  Tags can be sorted and filtered (e.g., show DINT tags only).

 Tags can be filtered with wildcards (filtered based on their name

or description in addition to their scope, type, and classification).  Tags that are structures (TIMER, etc.) can be expanded to display members. Display Style State that data from a BCD thumbwheel could be viewed in the hexadecimal style.

The Style parameter controls how data is displayed for certain tags. Example: The default style for a tag of the INT data type is decimal. This can be changed to binary, octal, decimal, or hexadecimal.

Tip " E 2012 Rockwell Automation, Inc. All rights reserved.

Style is for display only; it does not affect how data is stored in the controller. Rev. August 2012 TA2sb56r

Organizing Data in an RSLogix 5000 Project

4--13

When online, only the tag name, style, and description can be changed.

From the Tag Properties View window you can monitor a tag’s properties, document, toggle values or Force. The Window can also be docked, or set to auto hide, using the Auto Hide button located in the banner: Tag Properties View Window

Docked or Auto Hide Button Tag Information

Tag Value and Force Mask

Stress the difference between editing the tag (e.g., tag name) and changing the tag data, such as the preset. In this ladder logic example, point out that values can be monitored and certain values, such as timer presets, can be edited.

Monitoring and Editing Tag Values through a Routine Tag values can be monitored and sometimes edited online through instructions in routines: Example: Ladder Logic Routine Tag values can be monitored through the corresponding parameters of an instruction:

Blue Arrow: Change will Immediately Take Effect in the Controller

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. TA2sb56r

4--14

Organizing Data in an RSLogix 5000 Project

Example: Function Block Diagram Routine Note that only the parameters with a checkmark in the Vis column (Visibility) are displayed on the function block.

Visible function block parameters can be monitored through the instructions. Others can be monitored through the Properties dialog box:

Parameter Names

Parameter Values

Parameter Data Types

Parameter Description (Up to 128 Characters)

Visibility Enabled

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 TA2sb56r

Organizing Data in an RSLogix 5000 Project

Note that the Watch tab is accessed from the View menu.

4--15

Monitoring and Editing Tag Values in the Watch Tab The Watch tab displays all tags referenced by an active routine of any type. Values can be monitored or edited:

Refresh Structured Text Data

Changing Values

Force

Create a Custom Monitor

Tag Scope

Because structured text values cannot be monitored in the programming language, the Watch tab is extremely useful when monitoring a structured text routine online.

? Who has used Custom Data

Monitors in RSLogix 500 software?

The Watch tab does not update as you make edits to a structured text routine. It is updated when you verify the routine.

Quick Watch Tag Monitor Note that the custom list of tags allows you to see only select tags while viewing code. This helps you avoid the searching and scrolling necessary with the Tags monitor.

Rev. August 2012

The Quick Watch Tag Monitor allows you to assemble a custom list of tags to monitor:  Tags from the controller-scope

 Tags from the open routine

Tip "

You can drag tags from the open routine editor to the Quick Watch Tag Monitor.

Tip "

The tags are maintained in the monitor only while the project is open.

E 2012 Rockwell Automation, Inc. All rights reserved. TA2sb56r

4--16

Organizing Data in an RSLogix 5000 Project

Persistent Quick Watch Features of Persistent Quick Watch include:  Enables creation of named tag groups (Quick Watch Lists) -- Tags can be added via drag-and-drop from routine(s), from tag editor/monitor or manually selected via tag browser  Improves ease-of-use and simplifies maintenance  Lists can be easily selected for debugging purposes during integration or operation and are persistent within the RSLogix 5000 project:

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 TA2sb56r

Organizing Data in an RSLogix 5000 Project

Here’s How

4--17

To perform the following tasks:  Create a tag  Define an alias tag

 Create an array of tags  Verify tags  Monitor and edit data Activity: As your instructor demonstrates these procedures, follow along in the associated job aid(s).

Demonstration Checklist IMPORTANT: To meet IACET CEU requirements and fully prepare certificate students for the final exam, you must demonstrate all lesson objectives using the proper job aids. Use the CCP143_1756r_DEM2.acd project.

Monitoring data in RSLinx isn’t an objective of the lesson but it is useful for the exercise and student. Note that an RSLinx Classic activation file is required to access the data table monitor.

Pay attention to these critical aspects of the demonstration: -

Location of the procedures in the job aid

-

Using array dimensions text boxes

-

Structure of a created array (in the Monitor Tags list)

-

Show and Toggle Columns options in the Edit Tags windows

-

Using grid to pick a bit

Monitor Data in RSLinx Classic Professional Software Tags can also be monitored (but not edited) in RSLinx Classic Professional software.

Read-Only Values

Your Turn Rev. August 2012

Now it’s your turn. Do Exercise A and return here when you’re done. E 2012 Rockwell Automation, Inc. All rights reserved. TA2sb56r

4--18

Organizing Data in an RSLogix 5000 Project

Data Access Control

Mention that External Access Control does not apply to Module Defined tags or aliases to them.

The data access properties of a tag is used to control how people and programs access the tag at run-time:  Use External Access to control how an external application, such as an HMI, historian, or OPC data server, can access a tag: -- Arrays -- Top level only; UDTs -- by member -- Possible values are: -- Read/Write: External applications can both read and modify the tag’s value -- Read Only: External applications can read the tag’s value, but not modify it -- None: External applications can neither read nor write the tag’s value  Use Constant to control how controller logic can access a tag: -- When this attribute is set, the tag’s value cannot be changed programmatically Data Access Control Selections are shown in the following graphic:

Tags Window

Data Access Control Selections User-Defined Data Type

Mention that if a tag’s external access is set to None, the tag will not show up in other application browsers. Note that if a tag is set to Constant and a program instruction tries to write a value to the tag, this would appear as an error when verifying the project.

Your Turn E 2012 Rockwell Automation, Inc. All rights reserved.

Data Access Control Benefits These options give you a way to protect data from being accidentally or intentionally written to. They can also speed-up HMI creation by reducing the number of tags that are visible while browsing the controller from the HMI development environment. Now it’s your turn. Do Exercise B.

Rev. August 2012 TA2sb56r

Exercise: Organizing Data in an RSLogix 5000 Project

4--19

Exercise: Organizing Data in an RSLogix 5000 Project Exercise A

In this exercise, you will practice the following tasks:  Creating a tag  Defining an alias tag

 Creating an array of tags  Verifying tags  Monitoring and editing data Context: Sample code to test your production line has been developed. This code was written before your hardware installation. The hard-wired addresses were not known when the code was created. You now need to create base and alias tags and an array of tags so that the code will function properly. When you see underlined text, refer to the related procedure or information in your job aid. Directions: 1. Open the TA2_1756r_A1.acd file. 2. Review your project and verify the tags referenced in the MainRoutine of the Line_1 program have not been created. 3. Create a new tag with the following properties:  Name: Stop_Motor  Type: Base  Data Type: BOOL  Scope: Program (Line_1) 4. Create a new alias tag with the following properties:  Name: Start_Motor  Type: Alias  Alias For: Local:2:I.Data.0  Scope: Program (Line_1) 5. Create a new alias tag with the following properties:  Name: Motor_On  Type: Alias  Alias For: Local:0:O.Data.0  Scope: Program (Line_1)

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. TA2e56r

4--20

Exercise: Organizing Data in an RSLogix 5000 Project

6. Create a new tag with the following properties:  Name: Motor_Time  Type: Base  Data Type: TIMER  Scope: Program (Line_1) 7. Within the Program Tags monitor, enter 10,000 for the Motor_Time.PRE member of the Motor_Time tag. 8. Create a new alias tag with the following properties:  Name: Motor_Speed  Type: Alias  Alias For: Local:8:I.Ch0Data  Scope: Program (Line_1) 9. Create a new alias tag with the following properties:  Name: Speed_Out  Type: Alias  Alias For: Local:7:O.Ch0Data  Scope: Program (Line_1) 10. Create a single-dimension array that will be used to store the system date and time. This array requires a separate element for the system year, month, day, hour, minute, seconds, and microseconds. Configure the array with the following properties:  Name: ClockTime  Type: Base  Data Type: DINT  Array Dimension 0: 7 elements  Scope: Controller  External Access: Read only 11. Download your project to the controller in slot 1 of your workstation. 12. Place the controller in Run or Remote Run mode. 13. How could the individual members of this UDT be set so they would not be accessible from any other application?

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 TA2e56r

Exercise: Organizing Data in an RSLogix 5000 Project

4--21

14. Verify you properly created and aliased your tags by performing the following actions: A. Press DI0 and observe DO0 indicator light turn on. B. Adjust pot AI0 and confirm potentiometer AO0 updates in value while the motor is enabled. C. Confirm that after ten seconds indicator DO0 turns off. D. Monitor the ClockTime array and verify the tag is populating with system date and time information.

Tip "

The system date and time may not be current. 15. Go offline and close your project.

How Did You Do?

Turn to the Answers section.

Exercise B

In this exercise, you will practice setting a tag’s external access option, and verify the setting. Context: You have created and organized a project file for your production lines. You now want to protect certain tags from outside access. When you see underlined text, refer to the related procedure or information in your job aid. Directions: 1. Open the TA2_1756r_B1.acd file. 2. Download your project to the controller in slot 1. 3. Make sure your processor is in Run mode. 4. Monitor the ClockTime tag in RSLinx software and make sure some of the data is changing. 5. Return to the RSLogix 5000 software and go offline. 6. In the Controller tags, set the ClockTime tag’s external access to None. 7. Download your project to the controller in slot 1. 8. Is the ClockTime tag visible in RSLinx software?

How Did You Do? Rev. August 2012

Turn to the Answers section. E 2012 Rockwell Automation, Inc. All rights reserved. TA2e56r

4--22

Exercise: Organizing Data in an RSLogix 5000 Project

Answers

Exercise A 3. Your Stop_Motor tag should have the following properties:

4. Your Start_Motor tag should have the following properties:

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 TA2e56r

Exercise: Organizing Data in an RSLogix 5000 Project

4--23

5. Your Motor_On tag should have the following properties:

6. Your Motor_Time tag should have the following properties:

7. Your Motor_Time tag should be configured similar to the following example:

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. TA2e56r

4--24

Exercise: Organizing Data in an RSLogix 5000 Project

8. Your Motor_Speed tag should have the following properties:

9. Your Speed_Out tag should have the following properties:

10. Your ClockTime tag should have the following properties:

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 TA2e56r

Exercise: Organizing Data in an RSLogix 5000 Project

4--25

13. Set the external access to none. 14. D. Your ClockTime tag should contain data in each member of the array like the following example:

Exercise B 6. After setting the ClockTime tag’s external access to None, your screen should appear similar to the following:

8. No, the ClockTime tag is not visible. Your screen should appear similar to the following:

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. TA2e56r

4--26

Exercise: Organizing Data in an RSLogix 5000 Project

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 TA2e56r

Lesson

5

Creating a User-Defined Data Type in an RSLogix 5000 Project What You Will Learn

After completing this lesson, you should be able to:  Create a user-defined data type  Export and import user-defined data types

When You Will Do This As you develop your logic, you will typically take advantage of user--defined data types to organize your data.

Before You Begin

Creating a User-Defined Data Type

Add that in RSLogix 5000 software, timers have some additional bits. Note that in a PLC-5 controller, T4:5 has its memory defined using the TIMER template. Data Type

Some predefined data types, such as a TIMER, are structures of several different data types:

Mixed Data Types

Members of a TIMER Data Type

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. UDTsb56r

5--2

Creating a User-Defined Data Type in an RSLogix 5000 Project

Review: An element is one part of an array. A member is one part of a data type.

User-Defined Data Type: A structure created by a user to group data in an application. Member: One defined data type within the structure. Example: User-Defined Data Type

Chalk Talk: Before showing the next slide, have the students help you make a list of the members that might go into the user-defined data type for the tank example. Have the students select the data type of each member.

There are several identical tanks in a plant. Each tank stores data for the following values:

Temperature Steam Valve State Time over Temperature Level

Add that this is a more efficient use of memory than creating a single BOOL for the steam valve, as the single BOOL would use a DINT (32 bits) by itself.

To store this data, a user-defined data type can be created. The data type is a template for storing the information:

Size Members of Tank Structure

Provide other examples, including examples of recipe parameters and storage data types.

External Access Settings

A tag for each tank can be created using this user-defined data type.

Note that creating an array is easier than creating 20 individual tags.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 UDTsb56r

Creating a User-Defined Data Type in an RSLogix 5000 Project

Note that in this scenario, the user-defined data type is created first, and then the array of tags is created.

5--3

Example: Arrays and User-Defined Data Types If there are 25 tanks (5 rows of 5), a programmer can make an array of tags that uses a user-defined data type:

Tank [0,0]

Total Array = [5,5]

One Specific Element = Tank[1,3]

User-Defined Data Type Parameters

Stress that arrays embedded within a user-defined data type can only have one dimension.

Note that memory size is updated after each member is added and accepted in the software’s Edit Data Type dialog box. Chalk Talk: On the board, write the following data types in order: BOOL, DINT, and then a BOOL. Discuss how this structure would take more memory than the DINT followed by both BOOLs. Add some additional examples.

Note that this is similar to how you address TIMER members in other projects (T4.EN or T4.TT). State that the delimiter is a period.

To create a user-defined data type, you must define the following parameters for each member:  A name of up to a maximum of 40 characters

 A display style  A description (optional)  One of the following data types: -- Any pre-defined data type -- Another user-defined data type -- Single-dimension array of any pre-defined data types -- Single-dimension array of any user-defined data types The memory required by a user-defined data type depends on the number of members, the data type for each member, and how the members are organized. User-Defined Data Type Addressing Just as you addressed TIMER members in other projects (T4.EN or T4.TT), you can address members of a user-defined structure using the following addressing structure: Tag.Member Examples: User-Defined Data Type Addressing

Point out that the last example contains a structure (Load_Info) that is embedded in the user-defined data type.

SystemTimer.Pre WaterTank.Level Input_Location.Load_Info.Height

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. UDTsb56r

5--4

Creating a User-Defined Data Type in an RSLogix 5000 Project

Exporting and Importing User-Defined Data Types Exporting and importing allows you to have more flexibility in your programming and creates a user-defined data that:  Is easy to deploy

 Creates reusable programming code When you export a user-defined data type to an .L5X file, the file contains the definition and any references to the project.

Export a UDT using a .L5X File

Importing a user-defined data type allows you to perform several edits in one operation. When you import a user-defined data type, you can:  Import offline or online (including Remote Run mode)

 Import into the same project or different one  Create a new user-defined data type  Update an existing user-defined data type Import a UDT into the same or new project Specify final name

E 2012 Rockwell Automation, Inc. All rights reserved.

Obtain collision information

Rev. August 2012 UDTsb56r

Creating a User-Defined Data Type in an RSLogix 5000 Project

Here’s How

5--5

To perform the following tasks:  Create a user-defined data type  Export and import user-defined data types Activity: As your instructor demonstrates these procedures, follow along in the associated job aid(s).

Demonstration Checklist IMPORTANT: To meet IACET CEU requirements and fully prepare certificate students for the final exam, you must demonstrate all lesson objectives using the proper job aids. Use the steps below to help guide you during the demonstration: Open the Start Pages and use the following tools to demonstrate each task:

Pay attention to these critical aspects of the demonstration: -

Location of the procedures in the job aid

-

Location of the procedures in the Start Pages

How Do I " Tags, Data Types & Other Data " Create a User-Defined Type

-

Difference between a user--defined data type and an array

S

What’s New " Import Online Programs, Routine and Instructions

-

S

If the Start Pages are unavailable or if students prefer, use the CCP143_1756r_DEM2.acd project.

Overwriting a user--defined data type with a newer version

S

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. UDTsb56r

5--6

Creating a User-Defined Data Type in an RSLogix 5000 Project

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 UDTsb56r

Exercise: Creating a User-Defined Data Type in an RSLogix 5000 Project

5--7

Exercise: Creating a User-Defined Data Type in an RSLogix 5000 Project Exercise A

In this exercise, you will practice the following tasks:  Create a user-defined data type

 Export and import user-defined data types Context: You have just created and organized a project file for your line 1 production line. You are now ready to develop code for a second, identical, production line. Your application requires that you store each production line’s output information in user-defined tags. When you see underlined text, refer to the related procedure or information in your job aid. Directions: 1. Open the UDT_1756r_A1.acd file. 2. Create a UDT named Motor_Status with the following members: Name

Data Type

Active

BOOL

Fault

BOOL

ProcessTime

DINT

MotorSpeed

REAL

3. Create a new tag with the following properties:  Name: Line_1  Type: Base  Data Type: Motor_Status  Scope: Controller 4. Open MainRoutine within the Line_1 program. 5. Modify rung 4 so that member Line_1.Active is the operand of the OTE instruction. 6. Modify rung 5 so that member Line_1.ProcessTime is the Destination operand of the Move instruction. 7. Modify rung 6 so that member Line_1.MotorSpeed is the Destination operand of the Move instruction.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. UDTe56r

5--8

Exercise: Creating a User-Defined Data Type in an RSLogix 5000 Project

8. Create a new tag with the following properties:  Name: Line_2  Type: Base  Data Type: Motor_Status  Scope: Controller 9. Open MainRoutine within the Line_2 program. 10. Modify rung 4 so that member Line_2.Active is the operand of the OTE instruction. 11. Modify rung 5 so that member Line_2.ProcessTime is the Destination operand of the Move instruction. 12. Modify rung 6 so that member Line_2.MotorSpeed is the Destination operand of the Move instruction. 13. Download your project to the controller in slot 1 of your workstation. 14. Place the controller in Run or Remote Run mode. 15. Verify you properly created your UDT tags by monitoring them and confirming they update in value when Lines 1 and 2 are operating. 16. Export the Motor_Status user-defined data type project component. 17. Go offline. 18. Open the UDT_1756r_A2.acd file. 19. Import the Motor_Status user-defined data type project component into the UDT_1756r_A2.acd project. 20. From the Import Collision dialog box, click Collision Details. 21. What information changed in the imported UDT?

22. Click Close. 23. Overwrite the existing Motor_Status UDT and keep the same final name. 24. Click OK.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 UDTe56r

Exercise: Creating a User-Defined Data Type in an RSLogix 5000 Project

5--9

25. Create a new tag with the following properties:  Name: Line_3  Type: Base  Data Type: Motor_Status  Scope: Controller 26. Open MainRoutine within the Line_3 program. 27. Modify rung 4 so that member Line_3.Active is the operand of the OTE instruction. 28. Modify rung 5 so that member Line_3.ProcessTime is the Destination operand of the Move instruction. 29. Modify rung 6 so that member Line_3.MotorSpeed is the Destination operand of the Move instruction. 30. Download your project to the controller in slot 1 of your workstation. 31. Place the controller in Run or Remote Run mode. 32. Verify you properly created your UDT tags by monitoring them and confirming they update in value when Line 3 is operating. 33. Go offline and close your projects.

How Did You Do?

Rev. August 2012

Turn to the Answers section.

E 2012 Rockwell Automation, Inc. All rights reserved. UDTe56r

5--10

Exercise: Creating a User-Defined Data Type in an RSLogix 5000 Project

Answers

Exercise A 2. Your Motor_Status UDT should look similar to the following example:

7. Rungs 4--6 of the MainRoutine in the Line_1 program should now look similar to the following example:

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 UDTe56r

Exercise: Creating a User-Defined Data Type in an RSLogix 5000 Project

5--11

12. Rungs 4--6 of the MainRoutine in the Line_2 program should now look similar to the following example:

21. The data type size and the structure changed.

23. You should have configured the imported UDT as follows:

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. UDTe56r

5--12

Exercise: Creating a User-Defined Data Type in an RSLogix 5000 Project

29. Rungs 4--6 of the MainRoutine in the Line_3 program should now look similar to the following example:

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 UDTe56r

Lesson Note that this lesson briefly reviews some concepts from the prerequisite course before presenting more advanced concepts such as Quick Keys. Tailor this lesson as needed.

What You Will Learn Poll the students to see how many have experience using a Window’s-based programming software from their job, or pre-requisite classes. Pace this lesson based on the general experience level of your class. Describe which method you personally find to be fastest and/or easiest when entering ladder logic.

Before You Begin Review the first two methods if needed. Students should be familiar with these.

6

Entering, Editing, and Verifying Ladder Logic in an RSLogix 5000 Project After completing this lesson, you should be able to:  Enter and edit ladder Logic using ASCII mnemonics

 Configure ladder logic quick keys  Copy and reuse ladder logic components  Verify a project or a project component (online) When You Will Do This Once you have laid out your task and program structure and defined your data types, you can begin to develop your ladder logic.

Entering and Editing Ladder Logic Components The RSLogix series of software offers the ability to enter or edit ladder logic using the following basic methods:  Dragging method  Right-click/Insert key The RSLogix series of software also offers faster methods for more proficient programmers:  ASCII mnemonic editing

 Quick keys

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. EN2sb56r

6--2

Entering, Editing, and Verifying Ladder Logic in an RSLogix 5000 Project

ASCII Mnemonic Editing State that ASCII stands for the American Standards Code for Information Exchange.

ASCII mnemonics are text codes that represent instructions and ladder logic elements: ASCII Text Entry Line Graphical Ladder Logic

Read each mnemonic in the graphic and show the corresponding graphical element. Note that unlike RSLogix 5 and 500 software, in RSLogix 5000 the ASCII line is not highlighted by default and therefore more difficult to accidentally erase.

In the graphic, note the following items:  The mnemonics are entered, followed by the tag to be operated on or a “?” or a space.  Start and end points for branches can also be entered:

-- BST (Branch start) -- NXB (Next Branch) -- BND (Branch End) Configuring Ladder Logic Quick Keys

Point out that Quick Keys are enabled in the Options for the Ladder Editor. This step is included in the procedure in the Procedures Guide.

To quickly enter instructions and other ladder logic elements using single keyboard keys, assign quick keys:  Quick keys for several common instructions including XIC, XIO, and OTE are already assigned.  Quick keys must be enabled to be used.

Copying and Reusing Ladder Logic Components Describe examples of real applications, such as auto production lines, where common machine cells are repeated.

E 2012 Rockwell Automation, Inc. All rights reserved.

If ladder logic contains program-scoped tags, the ladder logic can be easily copied and reused in different programs without changing the tag names.

Rev. August 2012 EN2sb56r

Entering, Editing, and Verifying Ladder Logic in an RSLogix 5000 Project

6--3

Example: Copied Ladder Logic Because the programs are local, the same ladder logic and the tags (e.g., Station_Timer) can be copied to all programs.

Same Program_Scoped Tag Name

Different Program Same Program_Scoped Tag Name Easy Copy and Paste

The tags within the program are commonly alias tags for different I/O points.

Remember that controller-scoped tags are shared by all programs. Be careful when accessing the same controller-scoped tag from different routines.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. EN2sb56r

6--4

Entering, Editing, and Verifying Ladder Logic in an RSLogix 5000 Project

Other Short-Cuts These additional methods will also make you a more efficient programmer:  RSLogix 5000 software also offers the ability to open a second instance of the software:

-- This allows you to easily copy and paste ladder logic between two open files.  For ladder logic and structured text, you can save instruction defaults: -- These defaults are saved to the computer and apply to all projects opened on the computer. State that up to four instances of the software can be opened at one time.

Verifying a Project or a Project Component Online

Note that you can also copy from one file, close the file, open a different file, and then paste into the other file. The copied information is maintained on the clipboard.

Modifying code online can help you quickly make changes without stopping production. Online Safety Warning When editing ladder logic online, keep the following warning in mind:

Describe any real-world situations that you are aware of in which online editing caused extensive damage in a plant.

? Define offline and online? Answer: Offline means that the workstation (computer) is displaying a copy of the project stored in the computer memory only. Online means that the workstation (computer) is displaying and changing copy of the project stored in the controller memory.

Add that the Online graphic is animated in any online mode. Also note that the left and right power rails are illuminated in green in the online mode to indicate that the ladder logic is being executed. E 2012 Rockwell Automation, Inc. All rights reserved.

Use extreme caution when entering or editing ladder logic or data, forcing values, or making other changes online that will affect the control of devices. Mistakes can cause unintended machine motion or loss of process control, possibly injuring personnel and damaging equipment. Before performing procedures online, complete these safety precautions:

 Determine if changes must be made online.  Verify that your company permits online entering and editing.

   

Assess how machinery will respond to changes. Check proposed changes for accuracy. Notify all personnel of the changes. Verify that you are online to the correct controller.

Because changes in any online mode can affect machine and process control, before entering ladder logic, verify the current communications mode using the Online toolbar. Rev. August 2012 EN2sb56r

Entering, Editing, and Verifying Ladder Logic in an RSLogix 5000 Project

6--5

Performing Online Ladder Logic Edits Editing ladder logic elements online requires different steps in different modes: State that the additional online steps are another reason that online editing is slower and more difficult. The extra steps are in place for user safety.

When editing in this mode . . .

You must perform the following actions . . .

Routine(s) edits exist only in the computer. Necessary when changing an existing rung, but not necessary to add a new rung. The project is examined for errors. Verification can be done separately or automatically if you skip to the Accept edits step. The revised routine(s) are transferred to the controller. Routine(s) edits exist only in the computer. Necessary when changing an existing rung, but not necessary to add a new rung. The project is examined for errors. Verification can be done separately or automatically if you skip to the Accept edits step. The revised routine(s) are transferred to the controller but the previous program continues to execute. The revised routine(s) executes, controlling the physical outputs, but the previous program still exists in the controller. You can return to the previous program using Untest edits. The previous routine(s) language is discarded and the revised program continues executing.

Start edits

Tell students that the Verify edits step can be considered optional since the verification process will automatically take place with the Accept edits step.

Online in the Remote Program mode

Verify edits

Accept edits

Start edits

State that “accept” puts the change into the controller memory.

Verify edits

Online in the Remote Run mode

Important: Stress the difference between controller Remote Test mode (outputs set according to Program mode state) and the Test edits step in Verify, Accept, Test, Assemble (outputs scanned and set using the program). Program mode state is set in the output module configuration.

If students are interested, review the names of all of the buttons during the demonstration using the Tooltips.

Description . . .

Accept edits

Test edits

Assemble edits

Online verification buttons can be used to complete this process: Standard Toolbar Verify Controller

Verify Open Routine

Single-Rung Options

Program-Level Options

Online Edit Toolbar Cancel Pending Rung Edit

Tip " Rev. August 2012

Finalize Edits Option

Use tooltips to identify the buttons. E 2012 Rockwell Automation, Inc. All rights reserved. EN2sb56r

6--6

Entering, Editing, and Verifying Ladder Logic in an RSLogix 5000 Project

For the invalid data type error, clarify that a tag of the DINT data type cannot be used in an XIC bit instruction unless it is specified to the bit level (e.g., DINT.0 and not just DINT).

When verifying, the software looks for the following errors:  Improper instruction placement  Improper or incomplete addressing

    

Tags with an invalid data type for the instruction (mismatches) Improper tag creation Empty rungs Shorted branches (reported in error tab as a warning) Duplicate destructive bits (reported in error tab as a warning)

Point out that this option can be enabled using ToolsOptions.

The duplicate destructive bit option looks for instructions that modify the same bit. This includes instructions such as OTE, ONS, OSF, and OSR instructions in ladder logic. This option is enabled by default.

Mention that this is known as “duplicate OTE detection” in PLC/SLC processors. Note that this also includes bits used in other languages, such as OREFs in FBD, bits in transitions in SFCs, and bit assignments in ST.

 Presence of Always False Instruction (AFI) (reported in error tab as a warning)

 Presence of forces (reported in error tab as a warning) Note that this is an option found in the ToolsOptions dialog box.

Auto Rung Verification: An option that can be enabled to automatically verify a rung. Errors found in the verification process are displayed on the Errors tab of the Output window:

Double-Click to Go to the Error or Press F4

Finalize Edits Option Point out some benefits of this option: S

Fewer steps required to go from change to running code

S

Reduces system startup time by eliminating delays

Compare these benefits to some of the inherit risks.

E 2012 Rockwell Automation, Inc. All rights reserved.

The Finalize Edits option allows you to complete online edits in one step. For equipment and personnel safety, the full sequence of steps (verify, accept, test, assemble) should be used as it requires the programmers to check the steps and test them before assembling them in the controller. The Finalize Edits option should be reserved for changes that will not impact safety.

Rev. August 2012 EN2sb56r

Entering, Editing, and Verifying Ladder Logic in an RSLogix 5000 Project

6--7

Edit Zone Markers Poll the students to see if they are aware of online editing policies in their own companies.

When you start editing online, a duplicate rung is displayed:

Edit Rung

Original Rung (Active in Controller)

Rung numbers after the edit are temporarily changed while the edit rung is being modified.

Mention that an asterisk “:” on any instruction, tab, etc., indicates that the element has been edited but not yet accepted.

During the editing and verifying process edit zone markers indicate the type of edit that is being performed: Once the edit in Remote Run mode is accepted into the controller memory, the markers change to uppercase letters.

Note that these markers are the same as the edit markers in RSLogix 5 and 500 software. Point out that for reference, this information is in the Procedures Guide Glossary under the term “Edit Zones.”

The following table summarizes the zone markers and their meanings: Zone Marker e Lowercase

Uppercase (in controller memory)

Rev. August 2012

Description

i r I R D

Rung of ladder logic that is currently edited within the computer RAM Rung of ladder logic that is to be inserted Rung of ladder logic that is to be replaced Rung of ladder logic that will be inserted Rung of ladder logic that is going to be replaced by the rung directly above it Rung of ladder logic that is marked for deletion

E 2012 Rockwell Automation, Inc. All rights reserved. EN2sb56r

6--8

Entering, Editing, and Verifying Ladder Logic in an RSLogix 5000 Project

Online Editing in a Multiple-User Environment RSLogix 5000 software allows more than one user to be online with the same controller at the same time:  Each user has an up-to-date view of the controller data

 Changes made by one user are immediately seen by all other users.

Two programmers may be online to the same controller during commissioning or if a controller has a large main routine with multiple blocks of code (i.e., each block of code controls a different machine in a system). Online Toolbar

Question: In what situations might two programmers be online to the same controller? Status icons in the Online toolbar and bottom-right corner of the screen show if multiple users are editing an online project: Bottom Right Corner of Screen

Selected

Controller Unlocked Controller Locked Controller Locked by Another User Project Changed by Another User

Keep the following points in mind about editing ladder logic when multiple users are online:  A common best practice is to lock the controller:

-- This ensures only one person can be making edits to the logic at one time.  If more than one programmer must be making changes at the same time, carefully coordinate your work so changes aren’t being made to the same routine at the same time: -- Edits to a routine by one programmer can wipe out pending edits by other users.  If possible, avoid having two programmers working on different routines in the same program: -- The routine edit commands (Accept, Test, Untest, Assemble, and Cancel) are performed on a program basis. -- Executing one of these commands affects another user’s edits, causing potential loss of work. E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 EN2sb56r

Entering, Editing, and Verifying Ladder Logic in an RSLogix 5000 Project

Here’s How

6--9

To enter ladder logic by performing the following tasks:  Enter and edit ladder Logic using ASCII mnemonics  Configure ladder logic quick keys

 Copy and reuse ladder logic components  Verify a project or a project component (online) Activity: As your instructor demonstrates these procedures, follow along in the associated job aid(s).

Demonstration Checklist IMPORTANT: To meet IACET CEU requirements and fully prepare certificate students for the final exam, you must demonstrate all lesson objectives using the proper job aids. Use the CCP143_1756r_DEM2.acd project during the demonstration: " To copy and reuse rungs, instructions, and branches, refer to the Copying and Reusing Project Components procedure.

Rev. August 2012

Pay attention to these critical aspects of the demonstration: -

Location of the procedures in the job aid

-

Entering logic using the ASCII text editor

-

Online verification buttons

-

Locking the controller

E 2012 Rockwell Automation, Inc. All rights reserved. EN2sb56r

6--10

Entering, Editing, and Verifying Ladder Logic in an RSLogix 5000 Project

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 EN2sb56r

Exercise: Entering, Editing, and Verifying Ladder Logic in an RSLogix 5000 Project

6--11

Exercise: Entering, Editing, and Verifying Ladder Logic in an RSLogix 5000 Project Exercise A

In this exercise, you will practice entering, editing, and verifying ladder logic in an RSLogix 5000 project. Context: You have been asked to add the ladder logic that will be used to control the sequential portion of your application to an existing project. When you see underlined text, refer to the related procedure or information in your job aid. Directions: 1. Open the EN2_1756r_A1.acd file. 2. Download the project and then change the controller to Remote Run mode. 3. Lock the controller to prevent other users from making online changes to your project. 4. Open SecondaryRoutine and perform the following actions: A. Using any method you choose, create the following ladder logic: If the value from AI0 is greater than 500, turn on DO0. B. Assign the existing AI0 and DO0 tags to the logic components. C. Verify the rung (online). D. Test the operation by setting analog input 0 (AI0) to a value over 500. E. Check that digital output 0 (DO0) turns on. If not, return and modify your work.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. EN2e56r

6--12

Exercise: Entering, Editing, and Verifying Ladder Logic in an RSLogix 5000 Project

F. Use the ASCII mnemonic editing method to enter the following rung:

G. What does your ASCII text entry line look like for this rung? (What syntax did you use?)

H. Save and accept the edits and test for proper operation of this rung. I. Test the operation by setting analog input 0 (AI0) to a value between 100 and 200. J. Check that digital output 0 (DO1) turns on. If not, return and modify your work. K. Once your work is correct, turn analog input 0 all the way to the left to shut off the light. L. Copy the rung you created in step 4. A. and reuse it to program the following logic, modifying the rung as necessary: If the value from AI0 exceeds 700, turn on DO2. M. Save the edits. N. Test the operation by setting analog input 0 (AI0) to a value over 700. O. Check that digital output 2 (DO2) turns on. If not, return and modify your work. P. Enable the quick keys. E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 EN2e56r

Exercise: Entering, Editing, and Verifying Ladder Logic in an RSLogix 5000 Project

6--13

Q. Configure the F5 key to be the RUNG (Start of Rung -- End of Rung) command. R. Using the quick key method, create the following logic and necessary tags: If DO0 has been on for three seconds, turn on DO3. If DO0 is turned off, DO3 turns off as well. S. Save and accept the edits and test for proper operation of your rung. T. Are any of these cases where you could use the Finalize Edits option? Why or why not?

5. When you are finished editing the program, unlock the controller.

How Did You Do?

Rev. August 2012

Turn to the Answers section.

E 2012 Rockwell Automation, Inc. All rights reserved. EN2e56r

6--14

Exercise: Entering, Editing, and Verifying Ladder Logic in an RSLogix 5000 Project

Answers

Exercise A 4. A. The rung should look similar to the following example:

G. BST LIM 100 AI0 200 NXB EQU AI0 300 BND OTE DO1 L. The rung should look similar to the following example:

P. To enable the quick keys, from the Tools menu, perform the following actions:

-- Select Options  Ladder Editor. -- Select the Enable Quick Key check box. -- Select the Show Quick Key Configuration check box.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 EN2e56r

Exercise: Entering, Editing, and Verifying Ladder Logic in an RSLogix 5000 Project

6--15

Q. To assign F5 as the SOR command, perform the following actions:

-- On the Workstation Options Ladder Editor window, click the Configure button. -- Scroll to F5 and then double-click _Free. -- From the drop-down list, select Rung.

R. The rungs should look similar to the following example:

T. The Finalize Edits option should only be used when there is no safety concern. If this indicator light is not a safety-related indicator, the Finalize Edits option could be used.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. EN2e56r

6--16

Exercise: Entering, Editing, and Verifying Ladder Logic in an RSLogix 5000 Project

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 EN2e56r

Lesson

7

Communicating with a Local 1756-I/O Module What You Will Learn

After completing this lesson, you should be able to manually add a 1756-I/O module to an I/O configuration.

When You Will Do This You can add your I/O modules to your project before, during, or after you develop your application logic. At some point though, you have to add the I/O modules so you can link your logic to specific devices. Reference: RSLogix 5000 and Logix5000 Procedures Guide 1. Find the Adding a Local or Remote 1756--I/O Module to an I/O Configuration procedure in your procedures guide. 2. Briefly read the Get Ready steps. In this lesson you’ll focus on adding local modules.

Question: What does the term local I/O mean? Remote I/O? Question: When do you usually add I/O modules to your projects?

Point out that in this lesson you’ll manually add the modules.

Before You Begin

Question: Are the modules usually installed at that point? Do you usually have access to them?

Electronic Keying Before you add an I/O module, plan your electronic keying:

Electronic Keying and Revision Level

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. IO2sb56r

7--2

Communicating with a Local 1756-I/O Module

If you have already presented the Troubleshooting Logix5000 Analog I/O Module Problems lesson, the discussion on electronic keying, keying attributes, keying examples, and disabled keying can be skipped.

The electronic keying feature:  Automatically compares the expected module (as shown in the I/O Configuration tree) to the physical module before I/O communications begin

 Helps prevent communications to a module that does not match the type and revision expected  Determines if and how an electronic keying check is performed Typically, three keying options are available:  Exact Match  Compatible Keying  Disable Keying

Tip "

The compatible keying option is the default selection. Keying Attributes Electronic keying is based on these attributes:  Vendor  Product Type

 Product Code  Major Revision  Minor Revision Example: Exact Match Keying Prevents Communication

Module Configuration Vendor = Allen-Bradley Product Type = Digital Input Module Catalog Number = 1756-IB16D Major Revision = 3 Minor Revision = 1

Communication is Prevented

X

Physical Module Vendor = Allen-Bradley Product Type = Digital Input Module Catalog Number = 1756-IB16D Major Revision = 3 Minor Revision = 2

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 IO2sb56r

Communicating with a Local 1756-I/O Module

7--3

Example: Compatible Keying Prevents Communication

Module Configuration Vendor = Allen-Bradley Product Type = Digital Input Module Catalog Number = 1756-IB16D Major Revision = 3 Minor Revision = 3

Communication is Prevented Physical Module

X

Vendor = Allen-Bradley Product Type = Digital Input Module Catalog Number = 1756-IB16D Major Revision = 3 Minor Revision = 2

Example: Compatible Keying Allows Communication

Module Configuration Vendor = Allen-Bradley Product Type = Digital Input Module Catalog Number = 1756-IB16D Major Revision = 2 Minor Revision = 1

Communication is Allowed Physical Module Vendor = Allen-Bradley Product Type = Digital Input Module Catalog Number = 1756-IB16D Major Revision = 3 Minor Revision = 2

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. IO2sb56r

7--4

Communicating with a Local 1756-I/O Module

Disabled Keying With Disabled Keying, I/O communication may occur with a module other than the type specified in the I/O Configuration tree with unpredictable results. We generally do not recommend using Disabled Keying. Be extremely cautious when using Disabled Keying; if used incorrectly, this option can lead to personal injury or death, property damage, or economic loss.

Asynchronous I/O Update Review Point out that this is different from other controllers that have an input scan, then a program scan (code), and then an output scan within the operating cycle.

In Logix5000 controllers, I/O values update asynchronously with the execution of code: 1. Input modules multicast their data to the backplane at the RPI rate set in the modules. 2. The code is scanned and the output tags are updated immediately after the execution of each output instruction. 3. Values are sent to the output modules at the RPI rate and at the end of each task.

Tip "

The automatic output processing that occurs at the end of a task can be disabled in the properties of the task.

Digital Module Multicasting Rates Note that these values must be set in the initial configuration but can be adjusted at any time.

The multicasting of digital I/O data is affected by the rates selected during module configuration:  RPI (Requested Packet Interval)

 COS (Change of State) RPI (Requested Packet Interval) The RPI controls the following actions:  Specifies the time that elapses before the module multicasts the current data in the on-board memory:

-- 200 microseconds (.2 ms) -- 750 ms

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 IO2sb56r

Communicating with a Local 1756-I/O Module

7--5

COS (Change of State) When the COS option is enabled for digital I/O, data transfer occurs whenever a specified terminal changes state (transitions from on to off or off to on):  All data is multicast whenever one point changes state. To clarify, state that COS multicasts module data on any change of state and RPI multicasts module data at a specified time.

Point out that the input data is changing within the scan of the logic.

An RPI for digital I/O must be specified whether or not the COS option is enabled. Data will be multicast at the RPI rate whether or not a change of state occurs.

Example: RPI and COS

Single Scan Physical Device Data is received by the input card Rung RPI Rate 100

COS

Tag is set or cleared in controller

Rung 250

Optional

RPI Rate

Rung 400

Analog Module Multicasting Rates Note that analog module multicasting rates are different from digital modules that multicast based on RPI or COS parameters.

The multicasting of analog data is affected by the rates selected during module configuration:  RPI -- This parameter works in the same manner as it does for a digital module

Note that RTS is actually set on a different screen, but is discussed now with RPI.

 RTS -- (Real Time Sampling Rate)

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. IO2sb56r

7--6

Communicating with a Local 1756-I/O Module

RTS (Real Time Sampling Rate) The RTS instructs a module to perform the following operations:  Scan all of the input channels and store the data in the on-board memory

 Multicast the updated channel data and other status data to the backplane of the local chassis

Tip "

RPI multicasts the current contents of the on-board memory. RTS scans the inputs prior to multicasting.

Output States For output modules, output states during specific situations can be set on the Configuration tab: Output States During Program Mode Output States During Fault Mode

Output State During Communication Failure in Program Mode Output States are Set Per Point

Example: An application that includes a hot oven might set a fan output to on during Program, Test, or Fault mode.

E 2012 Rockwell Automation, Inc. All rights reserved.

Operators and other personnel should be aware of the configured output states for these situations:  Program Mode: Sets the physical output devices to either on, off, or hold during specific situations: -- Program or Remote Program mode -- Remote Test mode -- During a major recoverable fault  Fault Mode: Sets the physical output devices to either on, off, or hold during a major non-recoverable fault.

Rev. August 2012 IO2sb56r

Communicating with a Local 1756-I/O Module

7--7

Diagnostics On the Configuration screen of the wizard, the following other parameters must be defined: Diagnostic Features

I/O Points

? How are diagnostic modules identified in the part number?

Answer: The part number has a “D” as the suffix, e.g., 1756-IB16D.

Depending on the module, 1756 digital and analog diagnostic I/O modules have the following diagnostic features: Open Wire Detection: Open wire detection senses removed or disconnected field wiring on an input module:  A leakage resistor must be placed across the contacts of an input device.

 The modules must detect minimum leakage current or a point-level fault is sent to the controller.

Field Power Loss Detection: When field power to a module is lost, a point-level fault is sent to the controller. No Load Detection: Senses the absence of field wiring or a missing load from each output point in the off state only. Field Side Output Verification: Indicates that the code changes are accurately represented on the power side of a switching device (i.e., the output is on when it is commanded to be on). Note that the pulse test is typically performed during commissioning or troubleshooting.

Rev. August 2012

Pulse Test: Briefly sends a signal that verifies the output without energizing the load.

E 2012 Rockwell Automation, Inc. All rights reserved. IO2sb56r

7--8

Communicating with a Local 1756-I/O Module

Mention that fault data can be monitored in controller tags for each module. To create a status window, collect fault data in a user-defined structure. Add that latching can help you see where a fault occurred even if the cause of the fault has already been cleared (e.g., if the fault occurred and cleared overnight). Note that diagnostic modules require the most configuration. The workstation modules are diagnostic. This will give students the most practice. All other modules are just subsets.

Note that resetting the module manually is done by individual points. There is no “reset all points” option. For a standard course, note that the CIP message instruction that resets the diagnostics will be presented in the Configuring a Message in an RSLogix 5000 Project lesson. If the Diagnostic Latching parameter in the configuration is not set, the fault bit will clear when the source problem is removed.

E 2012 Rockwell Automation, Inc. All rights reserved.

Point-Level Electronic Fusing: To prevent too much current from flowing through a module, certain digital modules have internal electronic fusing. The fuses are cleared when one of the following actions occurs:  A message instruction in the software resets the fuse.

 A power cycle resets the fuse. Diagnostic Latching If any of the diagnostic faults are detected, the following events occur:  The fault data is multicast to all controllers.  The I/O module LED displays a fault.

 A fault bit is latched and can be examined in the tags list. Even if the cause of an error has been cleared, the fault will remain set until one of the following actions occurs:  The fault bit is manually reset in the I/O Module Properties dialog box.

 A message instruction in a ladder logic routine resets the latch.  A power cycle resets the output module. You cannot enter a “0” into the I/O fault tag to reset it.

Turn off the diagnostics for I/O points that will not be wired. Otherwise, the LED fault lights on the module will be active for unused I/O points, possibly confusing maintenance personnel who do not know that the points are unused.

Rev. August 2012 IO2sb56r

Communicating with a Local 1756-I/O Module

Here’s How

7--9

To plan your electronic keying decisions for the module. Reference: RSLogix 5000 and Logix5000 Procedures Guide 1. Make sure you are still at the Adding a Local or Remote 1756--I/O Module to an I/O Configuration procedure in your procedures guide. 2. Find the Manually Add an I/O Module section of the procedure.

Give students several situations. Have them use the decision table to determine which keying option to use.

3. Briefly read through the decision table for planning your electronic keying decision. Activity: Who’s got the lowest rev? You have decided to use compatible keying in your project. Consider the rest of the I/O modules in your classroom as possible replacements. Determine the lowest revision level for each module: 1. Find the I/O wiring diagrams in the back of this manual. 2. Go to your workstation and open RSLinx software. 3. Browse to the backplane of your workstation. 4. Right--click the first module in the chassis and click Device Properties. 5. Write the revision level for the module on its wiring diagram. 6. Repeat steps 4. and 5. for the rest of the I/O modules in the chassis. 7. Compare your results with the rest of the class and determine the lowest revision for each catalog number of module. Write that number on the module’s wiring diagram, circle it, and plan to use it in the exercise at the end of this lesson. Result: When you are done, you should have a decision on which revision level to use for each of your I/O modules.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. IO2sb56r

7--10

Communicating with a Local 1756-I/O Module

Here’s How IMPORTANT: To meet IACET CEU requirements and fully prepare certificate students for the final exam, you must demonstrate all lesson objectives using the proper job aids.

To manually add a 1756-I/O module to an I/O configuration. Reference: RSLogix 5000 and Logix5000 Procedures Guide Talk your instructor through the steps in your procedures guide while he or she demonstrates them.

To demonstrate: 1. Open the CCP143_1756r_DEM3.acd project. 2. Have students talk you through adding a digital module. 3. Have student talk you through adding an analog input module. 4. Have student talk you through adding an analog output module.

E 2012 Rockwell Automation, Inc. All rights reserved.

Pay attention to these critical aspects of the demonstration: -

Where to clear diagnostics for unused points

-

Where to set analog scaling and alarm values

-

Where to set clamping limits

-

How to confirm communication is OK after you download the project

-

Where to find tags for point data, channel data, point faults, and alarms

-

Where to reset latched diagnostics

Rev. August 2012 IO2sb56r

Exercise: Communicating with a Local 1756-I/O Module

7--11

Exercise: Communicating with a Local 1756-I/O Module Exercise A

In this exercise, you will practice adding and configuring local 1756-I/O modules to the I/O Configuration of an RSLogix 5000 project. Directions: 1. Review the partial I/O list below for your application:

Device

Tag (Alias)

Slot

Chan

Min / Off

Max / On

IO2_1756r_A1

2

12

24 VDC Sink

No Part

Part

CH0_Analog_Input

Conveyor

8

0

0--10 VDC

0.0

100.0

Press and Stake Pressure Indicator

CH0_Analog_Meter

Conveyor

7

0

0--10 VDC

0.0

100.0

Weld Pressure Transmitter

CH1_Analog_Input

Conveyor

8

1

0--10 VDC

0.0

1000.0

Weld Pressure Indicator

CH1_Analog_Meter

Conveyor

7

1

0--10 VDC

0.0

1000.0

Conveyor Motor Starter

Conveyor

Conveyor

0

1

24 VDC Source

Conveyor Start Pushbutton

Start

Conveyor

2

0

24 VDC Sink

Start

Conveyor Stop Pushbutton

Stop

Conveyor

2

8

24 VDC Sink

Stop

Press Actuator

Station_Output

Station_1_Press

0

3

24 VDC Source

Press Command

Stake Actuator

Station_Output

Station_2_Stake

0

4

24 VDC Source

Stake Command

Part Present Photoeye

Part_Sensor

Press and Stake Pressure Transmitter

Scope

Signal

Start Command

2. Review the partial alarm list below for your application: Slot

Chan

Part Present Photoeye

Device

Part_Sensor_PointFlt

Conveyor

2

12

24 VDC Sink

Point Fault

Conveyor Start Pushbutton

Start_PointFlt

Conveyor

2

0

24 VDC Sink

Point Fault

Conveyor Stop Pushbutton

Stop_PointFlt

Conveyor

2

8

24 VDC Sink

Point Fault

Conveyor Motor Starter

Conveyor_PointFlt

Conveyor

0

1

24 VDC Source

Point Fault

Press and Stake Pressure Transmitter

Alarm_High

Station_1_Press

8

0

0--10 VDC

>60

Press and Stake Pressure Transmitter

Alarm_Low

Station_1_Press

8

0

0--10 VDC

600

Weld Pressure Indicator

Alarm_Low

Station_2_Weld

8

1

0--10 VDC

Learning Center > What’s New.

When You Will Do This Explain that add-on instructions are similar to subroutines. Point out the advantages and tradeoffs of add-on instructions as you go along.

Use add-on instructions to save development time by making your code more modular, re-usable, and easy to use:  Encapsulate your most commonly used logic as instructions, similar to the controller’s built-in instructions

 Re-use the instructions in any of your projects  Monitor an instruction and see its logic as it executes, even when you use the instruction multiple times in a project

Before You Begin

Add-On Instructions Add-On Instruction: An instruction that you build from the built-in instructions in the controller. An add-on instruction:  Is similar to a subroutine

 Lets you encapsulate a routine of logic and use it as an instruction

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. AOILsb56r

15--2

Developing an Add-On Instruction in Ladder Diagram

Explain that an add-on instruction executes similar to a subroutine. You give it inputs, execute some code, and get outputs.

Example of an Add-On Instruction This add-on instruction checks for jammed product at the entry gate of a conveyor:

The instruction reads the state of a photoeye at the entrance of a conveyor.

If the photoeye is on too long, it means that product is jammed. When that happens, the instruction turns on the Jammed bit.

When you execute the add-on instruction, it executes its logic:

The Detect_Jam instruction executes this logic.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 AOILsb56r

Developing an Add-On Instruction in Ladder Diagram

15--3

An Add-On Instruction Uses a Definition Point out that with a subroutine you need a copy of it in each program that uses the subroutine.

Add-on instructions are global in nature. You first create a definition for the instruction. Then you enter instances of it into any of your programs:

This is the definition for the instruction. It’s the template for each instance.

Rev. August 2012

These are instances of the instruction.

E 2012 Rockwell Automation, Inc. All rights reserved. AOILsb56r

15--4

Developing an Add-On Instruction in Ladder Diagram

Key Parts of the Definition of an Add-On Instruction The definition of an add-on instruction contains parameters, local tags, and logic: Parameters and local tags are the data that the instruction uses.

Logic is the code that the instruction uses. It’s comprised of one routine.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 AOILsb56r

Developing an Add-On Instruction in Ladder Diagram

15--5

Parameters When you create an add-on instruction, you set up parameters for the instruction:

Parameter: A value or values that you give to an add-on instruction or get back from it. Parameters create the interface to the code of the instruction. Here are some examples:  Configuration values such as set points and timer presets

   

Commands such as start, stop, and reset Input values from devices Output values for devices Status and health values such as done or faulted

Parameters reduce programming time and complexity. Local Tags When you create an add-on instruction, you can also set up local tags:

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. AOILsb56r

15--6

Developing an Add-On Instruction in Ladder Diagram

Compare this to a subroutine. A subroutine may show you more data than you really need to see. This makes it more difficult to monitor and troubleshoot.

Local Tag: An intermediate or storage value that an add-on instruction uses as it executes. It is a value that you don’t need to see or use outside of the instruction. Here are some examples of local tags:  Timers and counters  Storage arrays

 Bits that store the sum of several input conditions  Results of intermediate calculations You can Alias a Local tag (or one of its members) to an input or output parameter. In this way, the local tag can be easily monitored/ modified outside of the AOI. Routine “Type” Control Editable in AOI Definition You can change the programming language of the Logic routine after you develop the instruction. Keep in mind that changing the language deletes the existing routine and replaces it with an empty routine in the new language. This is helpful if you want to develop several AOIs with similar interfaces but different languages for the logic. You can change the language type through the General tab of the AOI:

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 AOILsb56r

Developing an Add-On Instruction in Ladder Diagram

15--7

Changes to the Definition If you change the definition, it ripples through all the instances of the instruction in your project:

Suppose you add a parameter to the definition.

It ripples through each instance of the instruction.

In version 17 and earlier, if you change a default value for a parameter or local tag, it doesn’t change existing instances of the instruction. They keep their current values. Starting with version 18, you can choose to send changes you make to default values of a definition to all its instances in the project.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. AOILsb56r

15--8

Developing an Add-On Instruction in Ladder Diagram

Mention that default value changes can also be done in: S

Context menu (Controller Organizer only)

S

Data Monitor

S

Logic Editor

S

Watch Pane

Change the default values within the Local Tags tab:

Add-On Instruction Design Considerations

? What happens to logic in a

When a rung of ladder logic contains an add-on instruction, the following actions occur during each scan:  Data for each input parameter is passed to the instruction.  If the rung-in condition is true, the instruction’s Logic routine is executed.  If the rung-in condition is false, the instruction’s Logic routine is skipped.

Tip "

subroutine if the JSR rung is False? Answer: Logic is not scanned and values in the subroutine remain unchanged.

Version 18 improves the false scan times of AOIs that aren’t using an EnableInFalse routine. See Knowledgebase ID #53903 for ways to improve the false scan time if you need to use an EnableInFalse routine.

Tell students the same thing would happen if an AOI’s rung-in condition is False. So if actions need to occur (like resetting a timer or counter, unlatching a bit,) when the rung goes False you could add an EnableInFalse routine.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 AOILsb56r

Developing an Add-On Instruction in Ladder Diagram

Here’s How Keep the visuals open.

Example Relate this to a real system. It could have many gates, all of which use the same logic to detect a jam.

15--9

To plan the parameters of an add-on instruction: Activity: As your instructor demonstrates this procedure, follow along in the associated job aid(s).

Planning the Parameters of an Add-On Instruction Suppose you want an instruction that checks for jammed product and looks like this:

Here are the parameters and local tags for the instruction: Value

Use?

Required?

Visible?

n Input parameter

D. State of the photoeye that detects the product

E. How long to let the photoeye stay on before the instruction flags a jam. You want to be able to configure this value.

F. Flag that there is a jam. You want to see this and use it in your application code.

G. Timer that times how long the photoeye is on. You really don’t care about the accumulated value.

Your Turn



Output parameter



Local tag

n

n







n





n Input parameter 

Output parameter



Local tag



Input parameter

n Output parameter 

Local tag



Input parameter



Output parameter

n Local tag

Now it’s your turn. Do Exercise A and return here when you’re done.

Tell the students to stay at their desk and do the exercise. They don’t need the workstation for it. Review the answers when they’re done. Then continue with the lesson.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. AOILsb56r

15--10

Developing an Add-On Instruction in Ladder Diagram

Before You Begin

After you plan the parameters for an add-on instruction, you have to make these decisions about its logic:  Language for the Logic routine  Organization of the Logic routine

 Optional scan mode routines Language for the Logic Routine of the Instruction You can program the Logic routine of an add-on instruction in any of these languages:  Ladder diagram  Function block diagram

 Structured text You can use the instruction in any language, regardless of which language you use for the Logic routine.

Organization of the Logic Routine If the students ask, tell them that there’s no defined limit to the levels of nested instructions. It seems to be around 62 instructions deep. They’ll get a major fault, stack overflow, if they go too deep.

You can’t call subroutines within an add-on instruction. You can organize the logic of an add-on instruction in two ways:  Put all the logic in one routine  Nest smaller add-on instructions within a larger add-on instruction Here’s an example of nested instructions:

Main Instruction That Controls a Conveyor

Sub-Activities, Such as Starting the Motor and Watching for Jams

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 AOILsb56r

Developing an Add-On Instruction in Ladder Diagram

15--11

Optional Scan Mode Routines The controller executes the Logic routine of an add-on instruction like this: When this happens . . .

1.

Controller goes to Run mode.

2.

EnableIn parameter of the add-on instruction is true

3.

EnableIn parameter of the add-on instruction is false

4.

The last scan of a step of an SFC that’s configured for automatic reset

The controller . . .

Notes

Prescans the Logic routine

As a general rule, prescan executes instructions as if all conditions are false. Some instructions don’t follow the general rule. See the documentation for the instruction.

Executes the Logic routine

EnableIn is true in these situations: Ladder diagram — when the rung conditions are true. Function block diagram — True by default. Structured text — Always true.

Doesn’t execute or stops executing the Logic routine

EnableIn is false in these situations: Ladder diagram — when the rung conditions are false. Function block diagram — when you write a zero to the EnableIn parameter. Structured text — Never. EnableIn is always true.

Postscans the Logic routine

As a general rule, postscan executes instructions as if all conditions are false. Some instructions don’t follow the general rule. See the documentation for the instruction.

You can add routines to an add-on instruction that take additional actions during various scan situations:

The add-on instruction’s Prescan routine executes one time after the main program prescan. It executes according to its logic conditions. The Postscan routine executes one time after the main program postscan. It executes according to its logic conditions. The EnableInFalse routine executes when conditions are false.

? What happens to logic in a

subroutine if the JSR rung is False? Answer: Logic is not scanned and values in the subroutine remain unchanged. Tell students the same thing would happen if an AOI’s rung--in condition is False. So if actions need to occur (like resetting a timer or counter, unlatching a bit,) when the rung goes False you could add an EnableInFalse routine.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. AOILsb56r

15--12

Developing an Add-On Instruction in Ladder Diagram

Here’s How Keep the visuals open. Present the decision. Then apply it to the example.

To decide if you need an EnableInFalse routine: Ask this question: Do you need to clear datyes a or do other reset actions when rung conditions are false?  Yes — Use an EnableInFalse routine.

 No — You don’t need an EnableInFalse routine.

Example

Deciding If You Need an EnableInFalse Routine Suppose your add-on instruction uses a non-retentive timer, like this:

And suppose you want to reset the timer when Conveyor_Running is off. In that case, use an EnableInFalse routine to reset the timer.

Your Turn

Now it’s your turn. Do Exercise B and return here when you’re done.

Tell the students to stay at their desk and do the exercise. They don’t need the workstation for it. Review the answers when they’re done. Then continue with the lesson.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 AOILsb56r

Developing an Add-On Instruction in Ladder Diagram

Before You Begin

15--13

Once you have your general design, it’s time to create and test the definition. To do that, you’ll need to be familiar with:  Accessing parameters via logic  Editing the instruction

 Exporting and importing Accessing Parameters via Logic When you define the parameters, RSLogix 5000 software puts them into an add-on-defined data type. Use that data type as the first tag (main operand) in each instruction:

Point out that this is similar to accessing the data of a timer or counter.

To access a parameter via logic, use this address format: Add-On-Defined_Tag.Parameter For example, use this address to read the value of the jammed bit:

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. AOILsb56r

15--14

Developing an Add-On Instruction in Ladder Diagram

Editing an Add-On Instruction Point out that this is one advantage of subroutines over add-on instructions. You can edit a subroutine online.

If you need to change the logic of an add-on instruction, you must go offline and edit the definition. You can’t:  Edit the logic of an add-on instruction while online

 Edit just a single instance of the instruction Exporting and Importing an Add-On Instruction Compare this to a subroutine. You can export a subroutine only if you wrote it in ladder diagram.

You can export an add-on instruction to an .l5x file or import an instruction into a project via an .l5x file:

Export Import

When you import an add-on instruction, it changes any existing instances of the instruction in your project. Before you import an instruction, identify the changes. After you import the instruction, check that each instance of the instruction executes correctly.

Tip "

E 2012 Rockwell Automation, Inc. All rights reserved.

Beginning with version 17 of RSLogix 5000, you can import a new add-on instruction while online to a running controller.

Rev. August 2012 AOILsb56r

Developing an Add-On Instruction in Ladder Diagram

15--15

Online Safety Warning When performing any tasks online, keep the following warning in mind: Describe any real-world situations that you are aware of in which online editing caused extensive damage in a plant.

? Define offline and online? Answer: Offline means that the workstation (computer) is displaying a copy of the project stored in the computer memory only. Online means that the workstation (computer) is displaying and changing copy of the project stored in the controller memory.

Use extreme caution when entering or editing ladder logic or data, forcing values, or making other changes online that will affect the control of devices. Mistakes can cause unintended machine motion or loss of process control, possibly injuring personnel and damaging equipment. Before performing procedures online, complete these safety precautions:

 Determine if changes must be made online.  Verify that your company permits online entering and editing.

   

Also note that the left and right power rails are illuminated in the Run and Remote Run modes to indicate that the ladder logic is active in the controller. Add that the Online graphic is animated in any online mode.

Rev. August 2012

Assess how machinery will respond to changes. Check proposed changes for accuracy. Notify all personnel of the changes. Verify that you are online to the correct controller.

Because changes in any online mode can affect machine and process control, before importing add-on instructions, verify the current communications mode using the Online toolbar.

E 2012 Rockwell Automation, Inc. All rights reserved. AOILsb56r

15--16

Developing an Add-On Instruction in Ladder Diagram

Referenced Add--On Instructions and User-Defined Data Types

You have to decide how to handle Referenced Add- On Instructions and User- Defined Data Types.

Example: When Not To Include Referenced Add-On Instructions and User-Defined Data Types Suppose you have three add-on instructions that nest a fourth add-on instruction inside them. And suppose you want to change the nested add-on instruction. You’ll only have to change it once if you don’t include it in the export file. Otherwise, you have to change it in each instruction that uses it.

Here’s How IMPORTANT: To meet IACET CEU requirements and fully prepare certificate students for the final exam, you must demonstrate all lesson objectives using the proper job aids. Use AOIL_1756R_DEM1.acd for the rest of the demonstration.

To create an add-on instruction: Activity: As your instructor demonstrates this procedure, follow along in the associated job aid(s).

Tip "

You’ve already done the first part of this procedure when you planned the parameters for the instruction.

The project already has the workstation tags that you need.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 AOILsb56r

Developing an Add-On Instruction in Ladder Diagram

Example

15--17

Creating an Add-On Instruction This example builds an add-on instruction that checks for jammed product at the entry gate of a conveyor:  The instruction turns on its Jammed bit if the photoeye at the gate is on for too long.  You’ll be able to set how long to wait before signaling a jam. Enter the General Properties

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. AOILsb56r

15--18

Developing an Add-On Instruction in Ladder Diagram

You can copy this logic from the Detect_Jam_Routine in the Unscheduled Programs folder.

Enter the Definition Logic

When you’re done, click the Help tab of the definition and show the finished instruction.

Create the Parameters and Local Tags

Input Parameter DINT Not Required Input Parameter BOOL Required

Not Visible Local Tag

Output Parameter BOOL Not Required Visible

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 AOILsb56r

Developing an Add-On Instruction in Ladder Diagram

Example

15--19

Looking for Previously Developed Add-On Instructions You can look for previously developed Add-On Instructions that may fit your applications within the Rockwell website.

If you have time, show the Video “Faceplate/Add--On Instruction Sets” to the class.

Search the Sample Code Library (samplecode.rockwellautomation.com)

Fill in the following: Product Family Product

Technologies

Example of Search Result

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. AOILsb56r

15--20

Developing an Add-On Instruction in Ladder Diagram

Here’s How Add the example below to the project. Then use the maintained switched on the workstation to simulate a jam. Make sure to show the instruction’s logic as it executes.

To perform the following tasks:  Use an add-on instruction in a routine  Monitor the values of an add-on instruction

 Monitor the logic of an add-on instruction Activity: As your instructor demonstrates these procedures, follow along in the associated job aid(s).

Example Point out that you’re seeing the data for this instance. This would be more difficult if this were a subroutine with multiple calls to it. The data may be constantly changing to reflect each call.

Using the Detect_Jam Instruction In this example, the Detect_Jam instruction continually checks for jammed product at Gate_DI12. If PE_DI12 = on for > 10 s, then Gate_DI12.Jammed = on. If Gate_DI12.Jammed = on, then light DO2 = on.

Here’s How IMPORTANT: To meet IACET CEU requirements and fully prepare certificate students for the final exam, you must demonstrate all lesson objectives using the proper job aids.

To perform the following tasks:  Export an add-on instruction

 Import an add-on instruction Activity: As your instructor demonstrates these procedures, follow along in the associated job aid(s).

Use the steps below to help guide you during the demonstration: 1. Export the instruction. 2. Create a new project. 3. Import the instruction into the project. E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 AOILsb56r

Exercise: Developing an Add-On Instruction in Ladder Diagram

15--21

Exercise: Developing an Add-On Instruction in Ladder Diagram Exercise A

In this exercise, you will practice planning the parameters for an add-on instruction that starts and stops a motor. Context: You want an instruction that starts and stops a single-speed motor like a seal-in start/stop circuit. You want it to look like this:

Pushbutton that stops the motor Pushbutton that starts the motor Contact for the motor

Fault bit for the motor

You also want the option to do the following actions based on the application:  Jog the motor  Set a fault if the auxiliary contact of the motor doesn’t open or close within a specified time Directions: For each of the values in the following table, check whether you’ll use it as an input parameter, output parameter, or local tag. Also check if it will be required or visible. Use the context information to help you decide.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. AOILe56r

15--22

Exercise: Developing an Add-On Instruction in Ladder Diagram

Value

Use?

A. State of the pushbutton that starts the motor

B. State of the pushbutton that stops the motor

C. State of the pushbutton that jogs the motor. You want the option to use a jog pushbutton or not use one based on the application. D. Bit that stores the combined status of the start and stop inputs. The instruction uses this bit and the jog input to determine whether to run the motor.

E. Bit that signals the motor to start

F. State of the motor’s auxiliary contact. It signals the instruction that the motor is running. You want the option to use the auxiliary contact or not based on the application. G. Timeout value in milliseconds to wait for the auxiliary contact to open or close. The instruction signals a fault if the contact doesn’t open or close within this time. You’ll use the auxiliary contact for some applications but not others. You also want to be able to set the timeout value based on the application. H. Bit that tells the instruction that you’re using the auxiliary contact of the motor. You don’t want to have to set this bit. You’ll set up the instruction’s logic to control this bit based on whether or not there’s a timeout value. I. Fault bit that shows you that the auxiliary contact timed out and the motor didn’t start or stop as commanded

J. Timer that creates a timeout for the auxiliary contact. You can easily write code to move the timeout value from above into the timer’s preset value.

K. Bit that you’ll turn on to clear the fault bit. You want to option to use it or not.

How Did You Do?

E 2012 Rockwell Automation, Inc. All rights reserved.



Input parameter



Output parameter



Local tag



Input parameter



Output parameter



Local tag



Input parameter



Output parameter



Local tag



Input parameter



Output parameter



Local tag



Input parameter



Output parameter



Local tag



Input parameter



Output parameter



Local tag



Input parameter



Output parameter



Local tag



Input parameter



Output parameter



Local tag



Input parameter



Output parameter



Local tag



Input parameter



Output parameter



Local tag



Input parameter



Output parameter



Local tag

Required?

Visible?













































Turn to the Answers section.

Rev. August 2012 AOILe56r

Exercise: Developing an Add-On Instruction in Ladder Diagram

Exercise B

15--23

In this exercise, you will practice deciding if an add-on instruction needs an EnableInFalse routine. Directions: For the situations below, decide if you need an EnableInFalse routine for the add-on instruction. 1. You plan to execute the instruction all the time and won’t use any input conditions to disable it, like this:

Do you need an EnableInFalse routine?

-

Yes No

2. The instruction controls a motor. You plan to execute the instruction conditionally, like this:

Do you need an EnableInFalse routine?

-

How Did You Do?

Rev. August 2012

Yes No

Turn to the Answers section.

E 2012 Rockwell Automation, Inc. All rights reserved. AOILe56r

15--24

Exercise: Developing an Add-On Instruction in Ladder Diagram

Exercise C

In this exercise, you will practice creating and using an add-on instruction. Context: In Exercise A, you made some decisions about the parameters for a motor starter instruction. Now develop the instruction in RSLogix 5000 software and verify that it works correctly. When you see underlined text, refer to the related procedure or information in your job aid. Directions: 1. Open the AOIL_1756R_C1.acd project file. 2. Create the definition for the add-on instruction: Property

Value

Name

Motor_Starter

Description

Starts and stops a motor

Type

Ladder diagram

Open Logic Routine

Yes

Open Definition

Yes

3. Open the Start_Stop_Motor_Routine in the unscheduled programs folder:

4. Copy all the rungs from the Start_Stop_Motor_Routine and paste them into the Logic routine of the Motor_Starter instruction.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 AOILe56r

Exercise: Developing an Add-On Instruction in Ladder Diagram

15--25

The Logic routine of the Motor_Starter instruction should look like this:

5. Create these parameters and local tags for the Motor_Starter instruction: Name

Usage

Alias for

Data type

Description

Stop

Input parameter

BOOL

Enter the tag that gives the stop command for the motor.

Start

Input parameter

BOOL

Enter the tag that gives the start command for the motor.

Jog

Input parameter

BOOL

Jog command for the motor. To jog the motor, turn on this bit. To stop the jog, turn off this bit.

AuxContact

Input parameter

BOOL

Auxiliary contact of the motor. Make sure you set the FaultTime. Otherwise, this input doesn’t do anything.

ClearFault

Input parameter

BOOL

To clear the fault of the motor, turn on this bit.

Out

Output parameter

BOOL

Output command to the motor starter. If on, the motor starts. If off, the motor stops.

Fault

Output parameter

BOOL

If on, the motor didn’t start or stop.

Fault_Time

Input parameter

DINT

Enter the time (ms) to wait for the auxiliary contact to open or close. The Fault bit turns on when that time is up.

RunCommand

Local tag

BOOL

CheckAuxContact

Local tag

BOOL

FaultTimer

Local tag

TIMER

Rev. August 2012

Fault_Timer.PRE

E 2012 Rockwell Automation, Inc. All rights reserved. AOILe56r

15--26

Exercise: Developing an Add-On Instruction in Ladder Diagram

6. Click the Help tab of the instruction’s definition to see how the instruction looks. It should look like this:

7. Verify the routine and correct any errors. 8. Enter an instance of the Motor_Starter instruction into the MainRoutine of the MainProgram: Create this tag. Use the Motor_Starter data type.

Assign these tags. They’re already created for you.

Where this tag . . .

Is tied to this workstation device . . .

And simulates . . .

DI12_Stop

Switch DI12

Stop pushbutton for the motor

DI0_Start

Pushbutton DI0

Start pushbutton for the motor

DO1_Motor

Light DO1

Motor

9. Save the project. 10. Download the project to the controller in slot 1 of your workstation. 11. Put the controller in Run mode.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 AOILe56r

Exercise: Developing an Add-On Instruction in Ladder Diagram

15--27

12. Test the operation of Motor_Starter_01: Do this . . .

And check that this happens . . .



A. Turn on DI12

Nothing. This simulates the normally closed position of the stop pushbutton.



B. Press DI0

DO1 turns on — the motor starts.



C. Turn off DI12

DO1 turns off — the motor stops.



D. Turn on DI12

Nothing. This simulates the normally closed position of the stop pushbutton.

13. Add a rung of logic that lets Motor_Starter_01 read the state of DI13_Aux_Contact. This simulates using the auxiliary contact of the motor. 14. Add a rung of logic that turns on DO2_Fault if the fault bit of Motor_Starter_01 turns on. 15. Set the Fault_Time parameter of Motor_Starter_01 to 1000 ms. Make sure you set the Fault_Time for this instance of the instruction. Don’t change the definition. 16. Test that Motor_Starter_01 sets it’s fault bit if the auxiliary contact of the motor doesn’t close: Do this . . .

And check that this happens . . .



A. Make sure DI12 is on.

Nothing. This simulates the normally closed position of the stop pushbutton.



B. Press DI0 and then immediately turn on DI13.

DO1 turns on — the motor starts.



C. Turn off DI12 and then immediately turn off DI13.

DO1 turns off — the motor stops.



D. Turn on DI12.

Nothing. This simulates the normally closed position of the stop pushbutton.



E. Press DI0 but leave DI13 turned off.

DO1 turns on — the motor gets the command to start. DO2 turns on — the motor didn’t start. DO1 turns back off — the instruction clears the start command.



F. Go to the properties of Motor_Starter_01 and clear the Fault bit.

DO2 turns off.

How Did You Do?

Turn to the Answers section.

Exercise D

In this exercise, you will practice exporting and importing an add-on instruction. Context: In Exercise C, you made made an add-on instruction that controls a motor. Now export the instruction and import it into another project. When you see underlined text, refer to the related procedure or information in your job aid.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. AOILe56r

15--28

Exercise: Developing an Add-On Instruction in Ladder Diagram

Directions: 1. Export the Motor_Starter instruction. 2. Close the RSLogix project but leave RSLogix 5000 software open. 3. Open the AOIL_1756R_D2.acd project file. 4. Import the Motor_Starter instruction.

How Did You Do?

E 2012 Rockwell Automation, Inc. All rights reserved.

Turn to the Answers section.

Rev. August 2012 AOILe56r

Exercise: Developing an Add-On Instruction in Ladder Diagram

Rev. August 2012

15--29

E 2012 Rockwell Automation, Inc. All rights reserved. AOILe56r

15--30

Exercise: Developing an Add-On Instruction in Ladder Diagram

Answers

Exercise A

Value

Use?

A. State of the pushbutton that starts the motor

n Input parameter

B. State of the pushbutton that stops the motor

n Input parameter

C. State of the pushbutton that jogs the motor

n Input parameter

D. Bit that stores the combined status of the start and stop inputs. E. Bit that signals the motor to start



Output parameter



Local tag



Output parameter



Local tag



Output parameter



Local tag



Input parameter



Output parameter

G. Timeout value in milliseconds to wait for the auxiliary contact to open or close. H. Bit that tells the instruction that you’re using the auxiliary contact of the motor.



n Output parameter

n

n

It’s an input parameter because you pass this value into the instruction. Make it required so you can assign the tag for the pushbutton directly to the parameter. All required parameters are also visible.





It’s an input parameter because you pass this value into the instruction. It’s not required or visible because you want the option to use it or not based on the application.





This is a storage bit that the instruction’s logic sets based on other parameters. Make it a local tag since you don’t need to access it.

n

It’s an output parameter because the instruction returns this value based on input conditions. Make it required so you can assign the tag for the motor directly to the parameter.





It’s an input parameter because you pass this value into the instruction. It’s not required or visible because you want the option to use it or not based on the application.





It’s an input parameter because you want to be able to set the timeout value based on the application.





It’s an internal storage bit. There’s no need to access it.



n

The instruction returns this value. It’s visible but not required because you only want to see its state on the instruction. You don’t want to have to assign it to a tag.





There’s no need to access the timer.





You want to be able to see it, but you also don’t want to have to use it.

n

n

n

Local tag

n Input parameter 

Output parameter



Local tag

n Input parameter 

Output parameter



Local tag



Input parameter



Output parameter

n Local tag

Input parameter





Local tag

J. Timer that creates a timeout for the auxiliary contact



Input parameter



Output parameter

n Output parameter

Reason It’s an input parameter because you pass this value into the instruction. Make it required so you can assign the tag for the pushbutton directly to the parameter. All required parameters are also visible.

Input parameter

I. Fault bit that shows you that the auxiliary contact timed out

K. Bit that you’ll turn on to clear the fault bit

Visible?

n Local tag



F. State of the motor’s auxiliary contact.

Required?

n Local tag n Input parameter 

Output parameter



Local tag

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 AOILe56r

Exercise: Developing an Add-On Instruction in Ladder Diagram

15--31

Exercise B 1. No, you don’t need an EnableInFalse routine. The Logic routine will execute all the time since the rung condition will always be true. 2. Yes, you need the EnableInFalse routine if you use input conditions to make the rung false. In that case, use the EnableInFalse routine to reset outputs. Otherwise, the motor could be left running even when the rung goes false.

Exercise C 2. The New Add-On Instruction dialog box should look like this:

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. AOILe56r

15--32

Exercise: Developing an Add-On Instruction in Ladder Diagram

5. The Motor_Starter parameters should look like this:

The local tags of the Motor_Starter instruction should look like this:

13. The logic must write the value of DI13_Aux_Contact to the AuxContact parameter of Motor_Starter_01:

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 AOILe56r

Exercise: Developing an Add-On Instruction in Ladder Diagram

15--33

14. The logic must read the value of Motor_Starter_01.Fault:

15. Open the properties for Motor_Starter_01 and enter 1000 into Fault_Time:

Exercise D 4. The Add-On Instructions folder should look like this:

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. AOILe56r

15--34

Exercise: Developing an Add-On Instruction in Ladder Diagram

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 AOILe56r

Lesson

16

Managing RSLogix 5000 Project Files What You Will Learn

After completing this lesson, you should be able to manage RSLogix 5000 project files by performing the following tasks:  Export a .acd project file

 Import a .l5k text file  Import a .l5x XML file When You Will Do This Export an RSLogix 5000 project file when you want to back it up or save it for future use. Once you export it , you have to import it to use it again.

Before You Begin

File Storage RSLogix 5000 projects can be stored using the following file formats:  .acd -- a standard file format  .l5k -- an exported text file

 .l5x -- an exported XML file

Tip "

Rev. August 2012

In any format, the entire project, including tags, documentation, ladder logic, etc. is contained in a single file.

E 2012 Rockwell Automation, Inc. All rights reserved. FI2sb56r

16--2

Managing RSLogix 5000 Project Files

Exporting a .acd Project File

Add that some other software packages divide the components of a single project into separate files. In either format, the entire project, including tags, documentation, ladder logic, etc. is contained in a single file.

Using a Windowsr “save” procedure, a project is stored as a .acd file:

Mention that saving is just a standard Windows saving procedure. Other standard windows procedures, such as copying files, can be found in an appendix in the Procedures Guide.

Save

Bottling.acd

Because RSLogix 5000 projects contain tag names, the .acd files can be large.

Add that you should not open a project from a floppy disk or CD-ROM. By default, the software will attempt to save the file back to the disk, which will not work.

You cannot directly save a .acd file to a disk:

 If you attempt to do so, you will receive an

error message indicating insufficient space on the disk, regardless of the size of the project file.  To save to a disk, a project file must be saved to the hard drive and then copied to a disk.

When copying files from a CD-ROM, they will be marked “Read-Only”. To make the files useable, you must first copy them to the hard drive or network. Then you must clear the Read Only check box in the file properties. Note that in RSLogix 5000 software, version 10, the export process was optimized to reduce the amount of time required to perform a “Save As ” operation. Programs that contain a large quantity of tags with comments should have a significant decrease in the time required for exporting. Note that the original .acd file is still maintained as a separate file. Note that the .l5k file is close in size to a file that is compressed using the WinZip utility.

Tip "

Mention that when importing, if a file with the same name already exists, you will overwrite it. Mention that .l5x files can also be used to import and export project components such as routines, programs, phases, add-on instructions, and UDTs.

E 2012 Rockwell Automation, Inc. All rights reserved.

Using the Windows “Save As” procedure, a .acd file can be exported as a .l5k file, or text representation of the data for an entire project:

Bottling.acd

Export (Save As)

Bottling.l5k - Export File Original File Is Maintained

A .l5k project file is much smaller than a .acd file. A .acd file can also be exported as a .l5x file, or XML-tagged code of the data for an entire project:

Bottling.acd

Export (Save As)

Bottling.l5x - XML File Original File Is Maintained

Rev. August 2012 FI2sb56r

Managing RSLogix 5000 Project Files

16--3

Importing a .l5k Text File To be used, a .l5k file must be imported. The original .l5k file will remain and a separate .acd project file will be created:

Bottling.l5k

Import (Open)

Bottling.acd - Import File (Original File Is Maintained)

Although you can change the extension of a project file through Windows Explorer, this is not recommended. To convert a file, use the import/export functions.

The required Import/Export version for RSLogix 5000 version 19 is 2.10. This version can be modified and saved in older text files:

RSLogix 5000 Software Version

Import/Export Version

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. FI2sb56r

16--4

Managing RSLogix 5000 Project Files

Importing a .l5x XML File To be used, a .l5x file must be imported. The original .l5x file will remain and a separate .acd project file will be created:

Bottling.l5x

Import (Open)

Bottling.acd - Import File (Original File Is Maintained)

The .l5x file contains the project file in XML format, as shown in the following graphic:

XML project files can only be imported into projects created with RSLogix 5000 version 17 or above.

If students are familiar with Tip " add-on instructions, mention that starting with v.16, add-on instructions could be imported/exported using .l5x files. E 2012 Rockwell Automation, Inc. All rights reserved.

The .l5x file allows users to manipulate the application source using text editing tools; build tools to auto-generate projects; and extract or merge code fragments to build new projects. Rev. August 2012 FI2sb56r

Managing RSLogix 5000 Project Files

16--5

Multiple Backup Files Call out the benefits of this feature: S

Allows you to back out of unwanted changes by moving to an earlier file

S

Reduces likelihood of lost work from disk or file corruption

Tip " Note that the Compare tool must be installed and launched separately from the main software. It is available on the RSLogix 5000 software CD-ROM (version 12 or later). Add that the report can be saved as an HTML file or XML file.

Rev. August 2012

By default, the software automatically saves incremental backup project (.acd) files:  A backup file is created each time a “Save” operation is selected.

 The quantity of files is configurable.  The default is 3.

Files are stored in the same location as the original.

Compare Tool This tool allows you to perform project-to-project comparisons:  Project structure

 Tags and user-defined data types  Programming logic  Data values (optional)

Tip "

This tool can only be used for .acd files created in version 10 or later.

Tip "

The report can be saved as an HTML file or XML file.

E 2012 Rockwell Automation, Inc. All rights reserved. FI2sb56r

16--6

Managing RSLogix 5000 Project Files

Here’s How

To manage RSLogix 5000 project files by performing the following tasks:  Export a .acd project file  Import a .l5k text file Activity: As your instructor demonstrates these procedures, follow along in the associated job aid(s).

Demonstration Checklist IMPORTANT: To meet IACET CEU requirements and fully prepare certificate students for the final exam, you must demonstrate all lesson objectives using the proper job aids. Use the CCP143_1756r_DEM2.acd project during the demonstration.

E 2012 Rockwell Automation, Inc. All rights reserved.

Pay attention to these critical aspects of the demonstration: -

Location of the procedures in the job aid

-

Directory where the export and import files can be found

-

Files of Type drop down list

-

How to examine files sizes using Windows Explorer

Rev. August 2012 FI2sb56r

Exercise: Managing RSLogix 5000 Project Files

16--7

Exercise: Managing RSLogix 5000 Project Files Exercise A

In this exercise, you will practice managing RSLogix 5000 project files. Context: You need to save and store a copy of an original HVAC file for future reference. When you see underlined text, refer to the related procedure or information in your job aid. Directions: 1. Open the FI2_1756r_A1.acd file. 2. Examine some of the file to become familiar with its contents. 3. Export the project file as a .l5k file. 4. Export the project as a .l5x file.

Tip "

Save the project using the same name. Save it in the default project directory. 5. Open Windowsr Explorer. 6. Locate the RSLogix 5000 software default project directory. 7. From the View drop-down list or using the toolbar icon shown below, select Details so that the file sizes and dates of the projects are displayed.

8. Under the Size column, compare the sizes of the FI2_1756R_A1 standard file (.acd) the text file (.l5k), and the XML file (.l5x).

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. FI2e56r

16--8

Exercise: Managing RSLogix 5000 Project Files

9. What are the file sizes?

10. From Windows Explorer, open the .l5k file. 11. In the text file, list the following elements: A. RSLogix 5000 software version:

B. Import/Export version:

C. Major revision:

D. Minor revision:

E. Chassis size:

12. How would you find the elements listed in Step 11. using the .acd file?

13. Which file would be easier for you to modify?

14. Close the file. 15. Open a new instance of RSLogix 5000 and import the .l5k file.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 FI2e56r

Exercise: Managing RSLogix 5000 Project Files

16--9

16. Open the .l5x file to see how its structure is different from the .l5k text file. 17. Open a new instance of RSLogix 5000 and import the .l5x file.

How Did You Do?

Rev. August 2012

Turn to the Answers section.

E 2012 Rockwell Automation, Inc. All rights reserved. FI2e56r

16--10

Exercise: Managing RSLogix 5000 Project Files

Answers

Exercise A 9. The approximate size of the .acd file is 400KB. The approximate size of the .l5k file is 20KB. The approximate size of the .l5x file is 65KB. 11. The text file uses this format:

RSLogix 5000 Software Version

Import/Export Version Major Revision

Major Revision Chassis Size

Minor Revision

12. Using the .acd file, you can find the RSLogix 5000 software version from the Help menu. The Major revision, minor revision, and chassis size information can be accessed using the Controller Properties feature. The import/export version is not viewable from the .acd file. 13. For some, RSLogix 5000 .acd files may be easier to modify because of the graphical nature. For others, text files may be easier to modify. XML files can offer more flexibility when reusing code. Remember that text files and XML files cannot be downloaded directly to a controller.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 FI2e56r

Lesson

17

Allocating Connections in a Logix5000 System What You Will Learn

After completing this lesson, you should be able to allocate communications connections in a Logix5000 system by performing the following actions:  Determine the number of connections used by a Logix5000 controller  Conserve the number of connections used by a Logix5000 controller

 Check connections in RSLogix 5000 with the Task Monitor tool When You Will Do This Depending on the size of your system, you may need to consider how you allocate connections to stay within limits.

Before You Begin Clarify that a connection is a completed communications link and not a physical connection on a network.

Connections A connection is an established communications link between two devices or components in a Logix5000 system. Connections may take many forms, including the following:  Controller to I/O (local or remote)  Controller to communications modules

 Produced tag controller to consumed tag controller  Message source controller to message destination Connection Limits Have students find the manual and use it for the steps below. Give them a few minutes to look through the tables.

Reference: Logix5000 Controllers Design Considerations, 1756--RM094 1. Go to the Logix5000 Controller Resources chapter. 2. Go to the Controller Connections section. 3. Briefly read the tables on connection limits for controllers and communication modules.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. CO2sb56r

17--2

Allocating Connections in a Logix5000 System

Conserving Connections by Grouping Produced Data To minimize the number of produced tags and therefore the number of connections, data can be grouped into an array or a user-defined structure and then produced.

When reviewing the table, note if the producer used 250 produced and consumed connections, there would be no room for I/O modules.

? What is an array? Answer: A numerically indexed sequence of tags, for example, Size[3,5].

? What is a user-defined structure? Answer: A data type (similar to a timer) made of members different data types. The user-defined data type is also referred to as a user-defined structure.

? Could you make an array within this data type?

Answer: Yes. You can embed a one-dimensional array of certain data types (such as Dint) within a user-defined data type. Here you could make an array of four Dints for the Height, Width, W_Flag, and L_Flag.

The array or user-defined structure must be less than 500 bytes.

Example: Connection Requirements for Tags vs. an Array Producing 5 individual tags for two consumers each requires 15 connections, as shown in the following table: Source Tags

Produced Tags

Connections

Height (Dint)

Height

3 (1 tag plus 2 consumers)

Width (Dint)

Width

3

Weight (Real)

Weight

3

W_Flag (Dint)

W_Flag

3

L_Flag (Dint)

L_Flag

3 15 connections

Producing 1 user-defined data type requires only 3 connections, as shown in the following table: Load_Info User-Defined Data Type Source Tags Height (Dint) Width (Dint) Weight (Real) W_Flag (Dint) L_Flag (Dint)

Produced Tag Load_Info (user-defined data type made of source tags)

Connections

3 (1 tag plus 2 consumers)

3 connections

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 CO2sb56r

Allocating Connections in a Logix5000 System

17--3

Message Connections Note that the cache bit is set or cleared in the Message Configuration dialog box, which is accessed through the ellipses button in the MSG instruction. Note that opening a new connection for each message execution increases execution time.

Some types of messages always require a connection. Other messages (such as a CIP messages) maintain the connection based on the configuration of the cache bit:  Clear the cache bit for infrequent messages. This closes the connection when not in use and frees it for other operations.  Set the cache bit for continuous messages.

Continuous Connection

Here’s How IMPORTANT: To meet IACET CEU requirements and fully prepare certificate students for the final exam, you must demonstrate all lesson objectives using the proper job aids.

To determine the number of connections used by a Logix5000 controller. Reference: Logix5000 Controllers Design Considerations, 1756--RM094 1. Go to the Determine Total Connection Requirements section.

To demonstrate, tally the connections for an example system this way:

2. Briefly read the tables for local and remote connection tallies.

1. Describe a device and its quantity and have the students determine the connection type and total connection from the tables.

3. Use the tables to tally the connections for an example system your instructor gives you.

2. Continue giving them examples of devices and quantities until you’ve tallied the connections for your example system. 3. Count the tallies to determine the total connections fro the system.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. CO2sb56r

17--4

Allocating Connections in a Logix5000 System

Here’s How

To check connections in RSLogix 5000 with the Task Monitor tool.

IMPORTANT: To meet IACET CEU requirements and fully prepare certificate students for the final exam, you must demonstrate all lesson objectives using the proper job aids. Use the steps below to help guide you during the demonstration: 1.

From the tools menu select Logix5000 Task Monitor.

2.

Under Communications select Monitor.

3.

From the RSWho screen select the processor you want to monitor.

4.

From the Logix5000 task Monitor Screen select the Networking Tab.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 CO2sb56r

Exercise: Allocating Connections in a Logix5000 System

17--5

Exercise: Allocating Connections in a Logix5000 System Exercise A

In this group exercise, you will practice allocating connections used by a Logix5000 controller. You have just completed a basic project. You now need to determine the number of connections used by the controller in slot 1. Refer to the CO2_1756r_A1.acd file and the following key points:

 There are 4 local modules and 1 remote I/O module.  There is 1 local and 1 remote ControlNet communication module.  There are 2 produced tags: -- Initialize System (produced for 1 local and 1 remote controller) -- Station_Data_For_Quality (produced for 1 local controller)  There is 1 consumed tag: Stations_Off_Quality.

 There are 2 messages (1 Data Table Read and 1 CIP Generic). Directions: 1. Tally the connections for the controller. 2. Producing 6 individuals tags for two consumers each requires 18 connections. How could the number of connections be reduced to 3?

3. Using direct connections, 2 connections are used to communicate with 2 remote 1756 digital I/O modules and 1 remote ControlNet communication module. If the communication format was changed to Rack optimization, how many connections would be established?

How Did You Do?

Rev. August 2012

Turn to the Answers section.

E 2012 Rockwell Automation, Inc. All rights reserved. CO2e56r

17--6

Exercise: Allocating Connections in a Logix5000 System

Answers

Exercise A 1. Your answer should be similar to the following example: Connection Type

Device Quantity

Connections per Module

Total Connections

Local I/O module (direct connections)

4

1

4

SERCOS Motion module

0

3

0

Local ControlNet communication module

1

0

0

Local EtherNet/IP communication module

0

0

0

Local DeviceNet communication module

0

2

0

Local DH+/Remote I/O communication module

0

1

0

Local DH--485 communication module

0

1

0

RSLogix 5000 software access to controller

1

1

1

Remote ControlNet communication module

1

0

0

Remote EtherNet/IP communication module

0

0

0

Other remote communication adapter

0

1

0

Remote I/O modules (direct connections)

1

1

1

Produced tags

--

--

--

Produced tag and first consumer

2

2

4

Each additional consumer

1

1

1

Consumed tags

1

1

1

Connected message (CIP Data Table Read/Write and DH+)

2

1

2

Block-transfer message

0

1

0 14

2. Grouping the data into an array or user-defined data type would reduce the number of connections to 3 (1 tag plus 2 consumers). 3. Rack optimization would consolidate the connections into a single connection. Data would be sent at one rate specified by the ControlNet module.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 CO2e56r

Lesson

18

Integrated Practice — Developing an RSLogix 5000 Project What You Will Learn

After completing this lesson, you should be able to:  Modify the default task, program, and routine  Add a local 1756-I/O module to an I/O configuration

           

Rev. August 2012

Create a tag in the Edit Tags list Define alias tags Draft simple ladder logic Enter and edit ladder logic components Verify a project Select and change a controller’s operating mode Download a project to a Logix5000t controller Create an event task Copy and reuse ladder components Modify a communications path Create a communications path Configure a controller to produce and consume data

E 2012 Rockwell Automation, Inc. All rights reserved. INPsb56r

18--2

Integrated Practice — Developing an RSLogix 5000 Project

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 INPsb56r

Exercise: Integrated Practice — Developing an RSLogix 5000 Project

18--3

Exercise: Integrated Practice — Developing an RSLogix 5000 Project Exercise A

In this exercise, you will practice skills used in developing an RSLogix 5000 project. Context: You have completed and tested the basic project for Line_A. Now you have been asked to duplicate this logic for Line_B. When you see underlined text, refer to the related procedure or information in your job aid. Directions: 1. Open the INP_1756r_A1.acd file.

Tip "

If you are using a ControlNet network, open the INP_1756r_A3.acd file. 2. Add an analog output module to slot 7 of the I/O configuration. The following table outlines the parameters for the module: Scaling Catalog Number

Channel

High Signal

High Eng.

Low Signal

Low Eng.

10.0

10.0

0.0

0.0

10.0

10.0

0.0

0.0

0 OF6VI (0--10V) 1

Alarms

Limits

High High High Low Low Low ----

High Clamp

------

Low Clamp 10 --10 10 --10

3. Modify the configuration of the local and remote communication modules within the I/O Configuration to match the configuration of your workstations. 4. From within the tag editor of the Line_A program, create a program-scoped tag named Meter. This tag should be an alias for the channel 0 analog output data. Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. INPe56r

18--4

Exercise: Integrated Practice — Developing an RSLogix 5000 Project

5. Draft ladder logic in the Process_Order routine that will move the accumulated value of the Order_Counter tag into the new Meter tag. 6. Edit the XIO instruction in rung 3 of the Process_Order routine and change it to an XIC instruction. 7. Create a Line_B program. 8. Copy the program-scoped tags from the Line_A program and paste them into the Line_B program. 9. Copy the routines from the Line_A program and paste them into the Line_B program. 10. Configure the MainRoutine as the main routine in the Line_B program. 11. For these slot 1 program-scoped tags, re-assign the alias information to the correct I/O points based on the following chart: Routine Name

E 2012 Rockwell Automation, Inc. All rights reserved.

Tag Name

LineA I/O Point (Line_A Program)

LineB I/O Point (Line_B Program)

Read_Order

Read_Order

Local:2:I.Data.0

Local:2:I.Data.4

Process_Order

Apply_Paint

Local:0:O.Data.3

Local:0:O.Data.4

Process_Order

Meter

Local:7.O.Ch0Data

Local:7.O.Ch1Data

Process_Order

Order_In_Progress

Local:0:O.Data.0

Local:0:O.Data.1

Process_Order

Process_Order

Local:2:I.Data.1

Local:2:I.Data.5

Process_Order

Shrink_Wrap

Local:4.O.Data.6

Local:4.O.Data.7

Rev. August 2012 INPe56r

Exercise: Integrated Practice — Developing an RSLogix 5000 Project

Tip "

Devices on the standard workstation are arranged and wired in the following manner:

DI0 DO0

DI1 DO3

DI2 DO6

DI4 DO1

DI5 DO4

DI6 DO7

AI0

AO0

Analog Meter

Analog Meter

Digital Outputs Analog Outputs

Label

Description

Slot

I/O Tag

DI4 DI5 DO1 DO4 DO7

Digital Input 4 Digital Input 5 Digital Output 1 Digital Output 4 Digital Output 7

2 2 0 0 4

Local:2:I.Data.4 Local:2:I.Data.5 Local:0:O.Data.1 Local:0:O.Data.4 Local:4:O.Data.7

AO1

Analog Output 1

7

Local:7:O.Ch1Data

Tip "

Analog Input AI1

AO1

Digital Inputs

18--5

Analog Input

I/O Tag for Alternate Wiring

This chart lists controller-scoped base tags (no alias information) in the slot 1 controller: Program Name

Routine Name

Tag Name

Line_A

Read_Order

MSG_Read_LineA

Line_B

Read_Order

MSG_Read_LineB

Line_A

Read_Order

Order_QuantityA

Line_B

Read_Order

Order_QuantityB

12. Cross-reference the MSG_Read_LineA tag and go to the rung within the Line_B program that uses this tag. 13. Modify the message instruction on the rung you identified in the previous step by performing the following:  Configure the control tag MSG_Read_LineB as the message control tag for this instruction.  Configure the message type to be a CIP Data Table Read.  Configure Order_QuantityB as the Source and Destination Element for the message instruction.  Configure the communication path to point to the controller in slot 3 of the remote workstation. 14. Within the same rung as the message instruction, make the Order_QuantityB tag the source tag for the move instruction. Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. INPe56r

18--6

Exercise: Integrated Practice — Developing an RSLogix 5000 Project

15. Within the same rung as the message instruction, change the operand of the XIC instruction that utilizes the MSG_Read_LineA.DN tag to the MSG_Read_LineB.DN tag. 16. Cross-reference the MSG_Read_LineA tag and go to the rung within the Line_A program that utilizes this tag. 17. Modify the communications path of the MSG_Read_LineA message control tag to point to the remote controller in slot 3 18. Verify your changes and correct any errors. 19. Download the project to the controller in slot 1. 20. Place the controller in Remote Run mode.

Tip "

If you are using ControlNet, you may need to reschedule the network. 21. Open another instance of RSLogix 5000 software. 22. Import the INP_1756r_A2.l5k file. 23. Create the Order_QuantityB tag and make it an alias for AI1. 24. Save your work and download the INP_1756r_A2.acd file to the controller in slot 3 of the remote workstation. 25. To test your work, verify that the Line_A program of the project functions as follows:

B C, H

D E

A

F G

Remote Workstation Analog Meter

Analog Meter

Analog Input

Analog Input

A. Set the potentiometer in the remote workstation to the desired order quantity (the range is 0 to 10). B. Push the Read Order button (DI0) of the local workstation. C. The Order_In_Progress (DO0) light in the local workstation should now be on. D. Push the Process_Order button (DI1) in the local workstation.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 INPe56r

Exercise: Integrated Practice — Developing an RSLogix 5000 Project

18--7

E. The Apply_Paint light (DO3) should go on and off the number of times you have requested from the Order_Quantity potentiometer in the remote workstation. F. Each time a part is painted, the Meter should increment. G. When all parts have been painted, the Shrink_Wrap light (DO6) should go on for two seconds. H. Once the Shrink_Wrap has been applied, the Order_In_Progress (DO0) light should turn off. 26. To test your work, verify that the Line_B program of the project functions as follows:

B C, H

D E

Analog Meter

G F

Analog Input A

Analog Meter

Remote Workstation

Analog Input

A. Set the potentiometer in the remote workstation to the desired order quantity (the range is 0 to 10). B. With the controller in slot 3 of the remote workstation pulled out of the chassis, push the Read_Order button (DI4) of the local workstation. Explain why the Order_In_Progress light in the local workstation does not go on:

C. Now insert the controller back into slot 3 and push the Read_Order button again. The Order_In_Progress light should now be on.

Tip "

You may need to re-download the INP_1756r_A2.acd file to the controller in slot 3 if the project was lost while the controller was removed. If this is the case, press Read_Order button (DI4) again. D. Push the Process_Order button (DI5).

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. INPe56r

18--8

Exercise: Integrated Practice — Developing an RSLogix 5000 Project

E. The Apply_Paint light should go on and off the number of times you have requested from the Order_Quantity potentiometer in the remote workstation. F. Each time a part is painted, the Meter should increment. G. When all parts have been painted, the Shrink_Wrap light should go on for two seconds. H. Once the Shrink_Wrap has been applied, the Order_In_Progress (DO0) light should turn off. 27. The shrink wrap roll must be measured continuously so that if it is low, it can be re-filled immediately. A photoeye (at DI8) is in place to detect sufficient width on the roll. If this sensor goes on, the event task must be triggered. Configure this new event task named Refill_Shrink_Wrap in the slot 1 controller.

Tip "

Continue using the existing INP_1756r_A1.acd or INP_1756r_A3 file. 28. When the event task executes, it must increment a tag that tracks the number of times the event task has executed. This tag is called Event_Task_Count. Program the necessary logic for this in the MainRoutine inside the MainProgram of the Event task you created. 29. Produce the Event_Task_Count tag from the slot 1 controller, and consume it from the slot 3 controller.

How Did You Do?

E 2012 Rockwell Automation, Inc. All rights reserved.

Turn to the Answers section.

Rev. August 2012 INPe56r

Exercise: Integrated Practice — Developing an RSLogix 5000 Project

Rev. August 2012

18--9

E 2012 Rockwell Automation, Inc. All rights reserved. INPe56r

18--10

Exercise: Integrated Practice — Developing an RSLogix 5000 Project

Answers

Exercise A 2. The main configuration screens for the analog module are shown in the following graphics:

(Continued)

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 INPe56r

Exercise: Integrated Practice — Developing an RSLogix 5000 Project

Rev. August 2012

18--11

E 2012 Rockwell Automation, Inc. All rights reserved. INPe56r

18--12

Exercise: Integrated Practice — Developing an RSLogix 5000 Project

4. The tag properties for Meter should look like the following example:

5. The following ladder logic was entered to move the accumulator value into the Meter tag:

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 INPe56r

Exercise: Integrated Practice — Developing an RSLogix 5000 Project

18--13

6. The rung should look similar to the following example:

9. The Tasks folder within the Controller Organizer should like similar to the example below:

10. MainRoutine should now be the main routine for the Line_B program:

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. INPe56r

18--14

Exercise: Integrated Practice — Developing an RSLogix 5000 Project

11. Your Line_B Program Tags editor should now look similar to the following:

12. You should find the MSG_Read_LineA tag located on rung 0 of the Read_Order routine within the Line_B program:

13. Your message instruction should now have MSG_Read_LineB as the message control tag:

(Continued)

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 INPe56r

Exercise: Integrated Practice — Developing an RSLogix 5000 Project

18--15

Your message instruction configuration should look similar to the following:

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. INPe56r

18--16

Exercise: Integrated Practice — Developing an RSLogix 5000 Project

15. The rung with the message instruction in the Line_B program should be configured similar to the following:

17. Your MSG_Read_LineA tag should be configured as follows:

23. Your Order_QuantityB tag should be configured similar to the following:

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 INPe56r

Exercise: Integrated Practice — Developing an RSLogix 5000 Project

18--17

26. B. The Order_In_Progress light will not come on if the controller in slot 3 is removed because the logic tests for the done bit of a message instruction to that controller in slot 3. If the controller is not there, the done bit will not go high. 27. The following examples show the event task configuration and the Shrink_Wrap_Low tag alias information:

28. Your ladder logic should be similar to the example below:

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. INPe56r

18--18

Exercise: Integrated Practice — Developing an RSLogix 5000 Project

29. The following example shows the produced tag in the slot 1 controller:

The following example shows the slot 3 I/O configuration for an EtherNet/IP network:

(Continued)

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 INPe56r

Exercise: Integrated Practice — Developing an RSLogix 5000 Project

18--19

The following example shows the slot 3 I/O configuration for a ControlNet network:

Tip "

Your ControlNet node numbers may vary based on network configuration. The following example shows the consumed tag in the slot 3 controller:

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. INPe56r

18--20

Exercise: Integrated Practice — Developing an RSLogix 5000 Project

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 INPe56r

Optional Lesson

19

Configuring Logix5000 Controllers to Share Data over a ControlNet Network What You Will Learn Important: If this lesson is part of a national school and you are using EtherNet/IP for remote data sharing, this lesson can be skipped. Stress that ControlNet and EtherNet/IP are two Logix5000 networks designed to share data between multiple controllers in remote chassis or between a controller and I/O in remote chassis. Note that 1756-remote I/O will be introduced in a separate lesson.

Before You Begin

After completing this lesson, you should be able to:  Add a ControlNet communication module to an I/O configuration

 Add a controller to an I/O configuration  Schedule a new ControlNet network When You Will Do This Use the procedures in this lesson when you have to pass interlock data between controllers over an ControlNet network.

Key Terms The following terms are defined as they relate to a ControlNet network in a Logix5000 system:

Remind students that the ControlNet network is the technology of the backplane in a network.

Determinism: The ability to reliably predict when data will be delivered. Repeatability: Transfer times that are constant and unaffected by devices connecting to or leaving the network.

In the graphic, review the devices on the ControlNet network. Cite specific examples.

Producer/Consumer Model: A communications network model in which nodes on a network can simultaneously receive the same data from a single source. ControlNet Network: A communications network used for transmitting time-critical and non-time critical data on the same link.

ControlNet Nodes Note that the 1784-PCICS card is used for computers with faster processing speeds. If you do not have these cards available but there is a Logix5000 system on the network with an EtherNet/IP card, you can use EtherNet/IP as a bridge to the ControlNet network when working with RSNetWorx for ControlNet software.

The physical ControlNet network in a Logix5000 system can contain the following nodes:  A 1784-KTCX15 or 1784-PCIC(S) card to access the network from a desktop computer

 A 1784-PCC (PCMCIA) card to access the network from a laptop computer  A configured ControlNet module in a Logix5000 chassis

 ControlNet-compatible devices Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. CN2sb56r

19--2

Configuring Logix5000 Controllers to Share Data over a ControlNet Network

Common nodes that are connected to a ControlNet network using a cable system are shown in the following graphic: Computer

ControlLogix System

ControlLogix System

ControlNet Network VersaView Operator Interface

PLC-5/40C Controller

CompactLogix System

ControlLogix System

Over a ControlNet network, a Logix5000 controller can share data with the following controllers:  Another Logix5000 controller (remote)

 A CompactLogix controller  A PLC-5C processor  An SLC 500 processor There can be up to 99 nodes on a ControlNet network. Nodes on a ControlNet network must meet the following requirements:  Nodes must be in the range of 1 to 99.

 Node numbers cannot be duplicated.  Node zero is invalid.  Lowest keeper-capable node number (the keeper) in the system

receives information from RSNetWorx for ControlNet software:

-- The keeper is not a master. -- The keeper only grants access to the network. -- The keeper maintains the ControlNet schedule.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 CN2sb56r

19--3

Configuring Logix5000 Controllers to Share Data over a ControlNet Network

Cable System Point out each component of the ControlNet cable system connecting workstations in the classroom. If you have a repeater, show it to the students.

Nodes on the ControlNet network must be connected using a ControlNet cable system. The following graphic is an example of a ControlNet cable system and some of its components: Trunk Cable Section Connectors

Segment

Tap

Terminator Repeater

Node

Note that the components of the ControlNet network are carefully selected by the network designers to accommodate the current (and future) needs of the network. Exceeding the length of cable or the number of taps may cause degradation of the signal and eventual failure. Note that repeaters do not just amplify the signals, they recreate them (and therefore add some latency). Repeaters can be purchased to create coax-to-coax, coax-to-fiber, or fiber-to-fiber links.

This cable system contains the following basic components:  Taps with no minimum spacing requirements

 Cable connectors  Trunk cable: -- RG-6 coax cable or special-use cable -- 1000 m with 2 devices and 250 m with 48 devices -- Each tap subtracts 16.3 m from allowable segment length -- Flexible topology including bus, tree, and/or star  Terminators  Repeaters, depending on the design Up to 99 nodes can be connected on a ControlNet network. 48 nodes can exist on one segment; after 48, a repeater must be used.

Note that ControlNet is a proven network. Most problems occur in the installation or configuration.

Tip "

Show the front of a ControlNet module. Point out the channel A and B connectors and the RJ45 port.

Rev. August 2012

Cable system design and installation is extremely important. Most complications with ControlNet networks can be linked to the network installation.

The cable system is used for permanent nodes. An RJ45 port is available to connect a computer to the ControlNet module without breaking a connection or adding a new node to the cable system. E 2012 Rockwell Automation, Inc. All rights reserved. CN2sb56r

19--4

Configuring Logix5000 Controllers to Share Data over a ControlNet Network

Tip " Note that this document is part of the Logix5000 Documentation Reference Guide.

For more information on the ControlNet cabling system, refer to the ControlNet Coax Cable System Planning and Installation Manual.

Network Services The ControlNet network’s function is to transmit the following two types of information on the same link:  Scheduled (time-critical data)  Unscheduled (non-time critical data) Scheduled Service Data that is sent across a network on a regular basis is transmitted as scheduled data. This data has the following characteristics:  Is time critical, such as I/O status and control interlocking data

?What type of data would be

considered time critical for your application?

 Has top priority in information exchange  Occurs in the same time frame during every data transmission interval

 Can be any of the following: -- Data from an I/O module -- Peer-to-peer interlocking data of controllers

Tip "

Components that have an associated RPI (Requested Packet Interval) send data as scheduled data. To control I/O or produce and consume tags in a Logix5000 application, scheduled data is required.

Unscheduled Service Stress that scheduled data, such as control and I/O data, is given highest priority on the ControlNet network. Other information, such as programming or upload and download operations, does not interfere with the transport of control and I/O data.

Non-deterministic data that is not time critical is transmitted as unscheduled data. This type of data has the following characteristics:  Transmits after all scheduled data has been sent

 Can be any of the following: -- Connection establishment -- Ladder-initiated, peer-to-peer messaging data (using a Message instruction)

-- Programming data (uploads and downloads)

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 CN2sb56r

Configuring Logix5000 Controllers to Share Data over a ControlNet Network

19--5

Information Exchange on the ControlNet Network Note that this is an overview of the data transfer process. Details will be given later in the lesson. Clarify that this is a ControlNet data exchange not a message (MSG) instruction.

The following graphic shows the transfer of information over the ControlNet network using the Producer/Consumer model: Establish Connection A producer sends a message to the target consumer by using a network address.

Note that the node number is part of the CID. The source and destination information is encoded in the CID.

Chalk Talk: To help students learn the many acronyms in this lesson, keep a running list on the end of the board. After learning a new acronym, have the students supply short descriptions to define the new acronym.

Communication

Close Connection

If the node needs the data, messages are then consumed.

The connection is closed.

The following statements describe information exchange on the ControlNet network:  Data sent by a producer will contain a numeric identifier called a CID (Connection ID): -- This ID is created automatically when a ControlNet node is connected to the network.  Nodes that have been configured to recognize a particular CID consume the data.

 Access to the network is controlled by a time-slice algorithm. Network Parameters

Note that this section serves as an introduction to the parameters. Entering these parameters using RSNetWorx for ControlNet software will be presented later in this lesson.

To schedule the network for information exchange, values for the following network parameters must be selected:  NUT

 SMAX (Scheduled Maximum node)  UMAX (Unscheduled Maximum node)  Media Redundancy NUT (Network Update Time)

Add the term NUT to the acronym list on the board. Ask the students for a short definition. Note that the NUT represents the aspects of determinism and repeatability that set the ControlNet network apart from other networks. Add the term NUI to the acronym list on the board. Ask the students for a short definition.

Rev. August 2012

The NUT is the repeatable base time at which the network transmits data (scheduled, unscheduled, and maintenance data). The NUT has the following characteristics:  A configuration of 2 to 100 milliseconds is possible for the NUT.  The value of the NUT includes peer-to-peer, digital, and analog data. Data cannot be transferred faster than the NUT.

E 2012 Rockwell Automation, Inc. All rights reserved. CN2sb56r

19--6

Configuring Logix5000 Controllers to Share Data over a ControlNet Network

Tip "

One occurrence of the NUT is referred to as a NUI (Network Update Interval). Example: NUT The priority of data transfer is shown in the following graphic:

? What will happen during the second NUI shown?

Answer: Data will be transmitted again in priority order.

NUT Scheduled Operations

Unscheduled Operations

Maintenance Update (Guardband)

Note that the maintenance update includes diagnostics and communications.

...

...

With the given guidelines in mind, the graphic illustrates that:  Scheduled data is transmitted first, followed by unscheduled data and then maintenance data.  When the NUT has occurred, the transmissions start over. SMAX (Scheduled Maximum Node) Add the term SMAX to the acronym list on the board. Ask the students for a short definition. Mention that it is inefficient to schedule a computer. Instead, assign computers your highest node numbers.

State that for an efficient network, node numbers should be assigned sequentially starting at 1. The maximum scheduled node should be set to the highest number node that will need to transmit scheduled data.

E 2012 Rockwell Automation, Inc. All rights reserved.

The SMAX is the maximum node number (1 to 99) that can transmit and receive data during the scheduled portion of the NUT. Keep in mind the following guidelines when determining the SMAX value:  Nodes at or below the maximum scheduled node transmit every NUT in the same sequential order (i.e., 1, 2, 3, then 1, 2, 3 . . .).

 All nodes sending time-critical data should be at or below the

SMAX.  Each node falling under SMAX can transmit up to 510 bytes of data during its turn: -- More than 500 bytes can be sent by one node. However, only 500 bytes can be transferred at one slot time. -- The bandwidth in this portion of the NUT is reserved and configured in advance to support real-time data transfer. -- The boundary for the scheduled portion of the NUT will move depending on the use of bandwidth.  Slot time is the calculated time a node will wait for a missing address before taking its turn to transmit: -- Slot time is based on the physical attributes of the network including the cable length and the number of repeaters. Rev. August 2012 CN2sb56r

Configuring Logix5000 Controllers to Share Data over a ControlNet Network

19--7

Example: SMAX Here is the order of scheduled data transfer: NUT

1

2

1 3

4...n

2

1 3

3

4...n

4...n

...

... SMAX

? Ask students to why it is inefficient not to assign nodes sequentially?

Answer: Because nodes will wait for other nodes to transmit. E.g., node five will wait the entire slot times for nodes one to four to transmit even if they are not assigned.

Slot Time

With the given guidelines in mind, the graphic illustrates that:  The first network update interval (NUI) shows nodes (numbers) falling below SMAX sending scheduled messages.  The second NUI shows the nodes below SMAX sending messages again starting over from the first scheduled node to SMAX.  The third NUI shows a node (2) missing from the network. Therefore, node 3 will wait one time slot before it transmits data. UMAX (Unscheduled Maximum Node)

Add the term UMAX to the acronym list on the board. Ask the students for a short definition.

? What type of data might be included in the unscheduled portion of the NUT?

Answer: Unscheduled data can include connection establishment, peer-to-peer messaging data, programming, and ladder-initiated communications. Note that the 1784-KTCX15 driver node number default is set high, at 99. Suggest that students change this to a lower node number. Remind students that as with all node numbers that transmit and receive unscheduled data, the driver/computer node number must fall under the UMAX.

Rev. August 2012

The UMAX is the maximum ControlNet node number that can transmit and receive unscheduled data. Keep in mind the following guidelines when determining the value of the UMAX:  The time remaining after the scheduled and maintenance portions of the NUT is allotted for unscheduled operations.

 The right to transmit first in the unscheduled portion of the NUT rotates one node number per NUI (i.e., 1, 2, 3, then 2, 3, 4 . . .).  The unscheduled portion of the NUT may not provide enough time for every node to transmit data during every NUT.  A node will repeat transmission if there is time left in the NUT.

Nodes above the UMAX cannot communicate on the network. Leave room for laptops to attach using the RJ45 port. The added slot time will only affect the unscheduled service.

E 2012 Rockwell Automation, Inc. All rights reserved. CN2sb56r

19--8

Configuring Logix5000 Controllers to Share Data over a ControlNet Network

Time-critical data must not be included in the unscheduled portion of the NUT, as it may not have the opportunity to be sent every NUT.

Example: UMAX

? If UMAX was reached in the second NUI, which node would transmit unscheduled data first in the third NUI?

Here is the rotating order of unscheduled data transfer: NUT

Answer: Node 1. In the graphic, point out that if time remains after the UMAX is reached, the remaining time starts over with node one (scheduled . . nodes).

7

.

8

8 9

9

9 10 11

1 2 10 3 11 12

...

UMAX

Point out in the graphic that node 7 transmits first in the first NUI, node 8 transmits first in the second NUI, and node 9 transmits first in the third NUI.

Note that to send data over 500 bytes in chunks, frame numbers are assigned to the data.

With the given guidelines in mind, the graphic illustrates that:  The opportunity to transmit is passed on a rotating basis.  In the third NUI, UMAX is reached. The remaining unscheduled time is now available to additional nodes on a sequential basis starting with node 1. An unscheduled message can transmit only 500 bytes per slot time. If the message is more than 500 bytes, the data will resume transmission on its next turn.

The same node can transmit both scheduled and unscheduled data. For example, the controller might produce a tag (scheduled) and send a message (unscheduled).

Media Redundancy

Add that all nodes on a network must be the same. That is, one node cannot be set for channel A and another node set for channel B. E 2012 Rockwell Automation, Inc. All rights reserved.

The network must be configured for one of the following media redundancy options:  A only, for one cable system using channel A  B only, for one cable system using channel B

 A and B, for redundant media Rev. August 2012 CN2sb56r

Configuring Logix5000 Controllers to Share Data over a ControlNet Network

19--9

To ensure optimization of data transfer, an accurate representation of the media used on the network should be defined in RSNetWorx for ControlNet software.

Update Intervals The configured or requested node transmit time may be different than the actual transmit time, as described in the following intervals:  RPI (Requested Packet Interval)

 API (Actual Packet Interval) RPI (Requested Packet Interval) Add the term RPI to the acronym list on the board. Ask the students for a short definition.

Clarify that the RPI tells the modules when to multicast its data.

The RPI is a user-specified rate that is supplied when an I/O module or ControlNet module is configured. The RPI defines how long the module will wait before multicasting its data. When determining the value of the RPI to enter in the I/O configuration, note the following:  Each node may have different requirements for sending data within the NUT.

 It is inefficient to send all data at the same rate.  A node can support more than one rate depending on the data being sent.

 RPI must be greater than or equal to the NUT. API (Actual Packet Interval) Add the term API to the acronym list on the white board. Ask the students for a short definition.

The API is the actual resulting interval. It can be described as follows:  This rate is based on the NUT and is less than or equal to the RPI.  This rate supports values that are binary multiples (1, 2, 4, 8, 16, 32, 64, 128) of the NUT.  ControlNet networks will always meet or beat the RPI:

-- If the RPI is 20 ms and the nut is 8 ms, the API will be 16 ms (faster) because it cannot release at 20 ms.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. CN2sb56r

Configuring Logix5000 Controllers to Share Data over a ControlNet Network

19--10

Example: RPI and API After reviewing the graphic and the corresponding statements, ask the students to determine the API for the following RPI rates: 1. 100 ms

Answer: 64 ms

2. 31 ms

Answer: 16 ms

3. 2 ms

Answer: 2 ms

After reviewing RPI and API, test the students’ understanding of the first half of the lesson, including the following key concepts: S

Producer/Consumer model

S

NUT, SMAX, UMAX, RPI, and API

Having a good understanding of the parameters of the ControlNet network is required to begin examining the software interfaces and configuration steps. Break: Note that the introduction of the ControlNet network concepts ends here. This is a good place to take a short break if necessary.

The requested transmit time versus the actual transmit time is illustrated in the following graphic: NUT = 2 ms RPI for discrete data = 10 ms 2 ms

2 ms

API for discrete data = 8 ms

2 ms

2 ms

2 ms Data

Data Interval 1

Interval 2

Interval 3

Interval 4

Interval 5

The example illustrates the following points:  Discrete data has an RPI of ten milliseconds.  The software generates an API of eight milliseconds (eight is the closest binary multiple that is less than ten).  The data is sent every four NUTs.

Configuration Overview and Software Interfaces Note that this section is a general introduction to the flow of configuration procedures. The step-by-step details and software demonstrations will be presented in the Here’s How section. If this lesson is part of a national school, add that remote I/O will be discussed in a different lesson. Encourage students to ask any remaining questions from the Configuring a Logix5000 Controller to Produce and Consume Data lesson. Note that the connection will be made through a ControlNet or Ethernet network.

To schedule the ControlNet network in order to share data, it is necessary to complete the following procedures: 1. Create the required produced tag. 2. In the controller that is consuming the data, perform the following actions: A. Add the local ControlNet module to the I/O configuration. B. Add the remote ControlNet module to the I/O configuration. C. Add the producing controller to the I/O configuration. D. Create the required consumed tags. 3. Schedule the ControlNet network.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 CN2sb56r

Configuring Logix5000 Controllers to Share Data over a ControlNet Network

Note that the controller was also added to the project to share data when producing and consuming tags across the backplane. However, the controller is now added under the remote CNB. In the graphic, point out that the remote module is node 2.

19--11

Adding a ControlNet Module and Controller to an I/O Configuration The following graphic is an example of a remote ControlNet module and remote controller added to an I/O configuration in RSLogix 5000 software:

Add that it is not necessary or even possible to add the controller running the project to the configuration.

Local ControlNet Module Remote ControlNet Module Remote (Producing) Controller

Produced and Consumed Tags Note that the produced and consumed tags are created just as they were created for transfers over the backplane.

Data that is shared over a ControlNet network must be transferred using produced tags and received (stored) in consumed tags. As with I/O modules, when configuring consumed tags, select an RPI that is greater than the NUT.

Scheduling a New ControlNet Network RSNetWorx for ControlNet software schedules a network and connects the local controller to any controllers or I/O modules in a remote chassis by performing the following actions:  Create a graphical representation of your network configuration and configure the parameters that define your network.  Analyze all of the intended traffic for the network and then determine if the requested amount of traffic is possible.  Display the current percentage of capacity as well as the percentage of capacity that added traffic will cause: -- The user can then decide whether to adjust the requested traffic or schedule it.  Download to network.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. CN2sb56r

19--12

Configuring Logix5000 Controllers to Share Data over a ControlNet Network

Point out that the procedure for scheduling a ControlNet network is detailed in the Procedures Guide. Note that the steps will be demonstrated in the Here’s How section.

To read the connected nodes on the network and build a network diagram, an online connection must be established using RSNetWorx for ControlNet software:

Online Option Enable Edits Option

Online Bandwidth Percentages

Network Diagram

The online Average Scheduled Bandwidth percentage should not exceed 50% or 60%.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 CN2sb56r

Configuring Logix5000 Controllers to Share Data over a ControlNet Network

Using the values in the Pending side of the graphic, review the following terms: S

NUT -- Data updates every 5 ms.

S

SMAX -- Up to 9 controllers or other scheduled devices.

S

UMAX -- Up to 24 programming or other nonscheduled devices.

Current Online Values

Note that the ControlNet scheduling information is saved in a .xc configuration file.

19--13

After going online, the NUT, SMAX, UMAX, and redundancy parameters are configured in RSNetWorx for ControlNet software:

Pending Changes

Each time an additional device is added to a scheduled network or an RPI value is changed, the ControlNet network must be rescheduled.

A controller must be in Program mode to be scheduled.

? What other main function

Tip "

requires RSLinx Classic software?

RSNetWorx software communicates with the controller through RSLinx Classic software.

Answer: Drivers are configured in RSLinx Classic software.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. CN2sb56r

19--14

Configuring Logix5000 Controllers to Share Data over a ControlNet Network

Here’s How

To configure a local Logix5000 controller to share data with a remote Logix5000 controller over a ControlNet network by performing the following tasks:  Add a ControlNet module to an I/O configuration

 Add a controller to an I/O configuration  Schedule a new ControlNet network Activity: As your instructor demonstrates these procedures, follow along in the associated job aid(s).

Demonstration Checklist IMPORTANT: To meet IACET CEU requirements and fully prepare certificate students for the final exam, you must demonstrate all lesson objectives using the proper job aids. Be sure to use the CCP143_1756R_DEM6.acd file and CCP143_1756R_DEM7.acd file.

E 2012 Rockwell Automation, Inc. All rights reserved.

Pay attention to these critical aspects of the demonstration: -

Location of the procedures in the job aid

-

Parent--child relationship of the ControlNet and the controller that you add to the I/O configuration

-

Produced and consumed tags that you create

-

Number of scheduled (SMAX) and the number of unscheduled (UMAX) nodes

-

Values of the ControlNet network after it is configured

Rev. August 2012 CN2sb56r

Exercise: Configuring Logix5000 Controllers to Share Data over a ControlNet Network

19--15

Exercise: Configuring Logix5000 Controllers to Share Data over a ControlNet Network Exercise A

In this exercise, you will practice configuring a local Logix5000 controller to share data with a remote Logix5000 controller over a ControlNett network. Context: You have finished programming and testing a complete project for a production line. To increase productivity, the plant has set up a second production line. The second production line needs to receive (consume) the Pressure data from the first assembly line over a ControlNet network.

Production Line 2

Production Line 1

ControlNet Network Consumed

n Produced 

When you see underlined text, refer to the related procedure or information in your job aid. In this exercise, you will share data with the other workstation on your ControlNet network. Node 1 will produce data and node 2 will consume the data. Directions: 1. Open the CN2_1756r_A1.acd file (the producer controller.) 2. Create a user-defined data type called Station_Data that will store the following information from the local controller:

Rev. August 2012

Member

Data type

Description

AI0

REAL

Analog Input channel 0

AI1

REAL

Analog Input channel 1

DI

DINT

Digital Inputs

E 2012 Rockwell Automation, Inc. All rights reserved. CN2e56r

19--16

Exercise: Configuring Logix5000 Controllers to Share Data over a ControlNet Network

3. Create a controller scoped tag called Local_Station_Data with the following properties:  Uses the Station_Data data type  Produced for 1 controller 4. Enter ladder logic to copy your analog channel 0 data and channel 1 data as well as your discrete input data to the respective members of the Local_Station_Data tag. 5. Verify the project, correct any errors, and download the project to your local controller in slot 1. 6. Place the controller in slot 1 in Remote Run mode. 7. Open the CN2_1756r_A2.acd file (the consumer controller.)

Tip "

This project will be downloaded to the controller in slot 3 of the remote workstation after you have completed the configuration. 8. Add the following modules to the I/O configuration (review workstation configuration for appropriate node addresses): A. Add the local (relative to the project’s controller) ControlNet module to the I/O configuration. B. Nested under the local ControlNet module, add the remote ControlNet module to the I/O configuration. C. Nested under the remote ControlNet module, add the controller in slot 1 of the remote workstation to the I/O configuration and call it Remote_Controller. 9. Copy the Station_Data UDT from producer and paste it to the consumer. 10. Consume the Local_Station_Data tag from the Remote_Controller by performing the following actions:  Create a controller scoped tag called Remote_Station_Data that uses the Station_Data data type.  Configure Remote_Station_Data as a consumed tag with a rate of 100 ms. 11. Enter ladder logic to copy the Remote_Station_Data tag to your analog channel 0 and analog channel 1 outputs. 12. Write the logic so that each of the green buttons pushed on your workstation will light the corresponding light on the remote workstation. 13. Verify the project, correct any errors, and download the project to the remote consumer controller in slot 3.

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 CN2e56r

Exercise: Configuring Logix5000 Controllers to Share Data over a ControlNet Network

19--17

Do not schedule the ControlNet network until both lines have downloaded the ladder logic. 14. When both production lines are ready, take turns scheduling the ControlNet network. 15. To verify that each production line is correctly configured to share data, complete the following actions: A. Verify that moving your analog channel 0 to the middle position moves the analog channel 0 meter on the remote workstation to its middle position. B. Verify that moving your analog channel 1 to the middle position moves the analog channel 1 meter on the remote workstation to its middle position. C. Verify that pushing the first four discrete buttons on your workstation light the corresponding lights on the remote workstation.

How Did You Do?

Rev. August 2012

Turn to the Answers section.

E 2012 Rockwell Automation, Inc. All rights reserved. CN2e56r

19--18

Exercise: Configuring Logix5000 Controllers to Share Data over a ControlNet Network

Answers

Exercise A 2. The user-defined data type should look similar to the following example:

3. The tag created should look similar to the following example:

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 CN2e56r

Exercise: Configuring Logix5000 Controllers to Share Data over a ControlNet Network

19--19

4. Your ladder logic should look similar to the following example:

8. The I/O configuration should look similar to the following example:

The node addresses of your ControlNet modules will vary based on your setup The slot 1 controller

9. The Station_Data UDT should now be found in the CN2_1756r_A2 project:

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. CN2e56r

19--20

Exercise: Configuring Logix5000 Controllers to Share Data over a ControlNet Network

10. The consumed tag should look similar to the following example:

11. Your ladder logic should look similar to the following example:

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 CN2e56r

Exercise: Configuring Logix5000 Controllers to Share Data over a ControlNet Network

19--21

12. Your ladder logic should look similar to the following example:

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. CN2e56r

19--22

Exercise: Configuring Logix5000 Controllers to Share Data over a ControlNet Network

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 CN2e56r

Optional Lesson

20

Communicating with a 1756-I/O Module Over a ControlNet Network What You Will Learn Note that in the prerequisite ControlNet lesson, students learned to schedule a ControlNet network. In this lesson, students will practice rescheduling an existing network, a common and important task.

After completing this lesson, you should be able to:  Add a remote 1756-I/O module to an I/O configuration  Reschedule an existing ControlNett network

When You Will Do This RSLogix 5000 software lets you add your I/O configuration to the project before, during, or after you develop your application logic. Do this task when:  Your I/O modules are connected to the controller by a ControlNet network, and  Your system is installed or you have drawings and specifications that outline to location and configuration of your I/O modules

Before You Begin

ControlNet Remote I/O Configuring remote I/O using a ControlNet network requires the following tasks to be performed: 1. Add the local and remote ControlNet module to an I/O configuration.

In the standard school, note that the ControlNet network was previously scheduled. This lesson will provide an opportunity to reschedule the network -a common and important action.

2. Add a remote 1756-I/O module to an I/O configuration. 3. Schedule the ControlNet network. Here is a summary of when the data updates:

If data is multicast in the same chassis

For this remote module

If data Is transferred across a ControlNet network The RPI only determines when the owner controller receives the data over the network.

Digital Input

RPI and COS values define when the module multicasts data within its own chassis.

Digital Output

N/A

An output receives data from the owner-controller only at the RPI rate.

Analog Input

The RPI and RTS rates define when the module multicasts data within its own chassis.

The RPI only determines when the owner- controller receives the data over the network.

Analog Output

N/A

An output receives data from the owner-controller only at the RPI rate.

Rev. August 2012

" The timing may not coincide with the exact value of the RPI; however, the owner-controller will receive data at least as often as the RPI.

E 2012 Rockwell Automation, Inc. All rights reserved. RC2sb56r

20--2

Communicating with a 1756-I/O Module Over a ControlNet Network

Here’s How

To perform the following tasks:  Add a remote 1756-I/O module to an I/O configuration  Reschedule an existing ControlNet network Activity: As your instructor demonstrates these procedures, follow along in the associated job aid(s).

Demonstration Checklist IMPORTANT: To meet IACET CEU requirements and fully prepare certificate students for the final exam, you must demonstrate all lesson objectives using the proper job aids. Continue with the RSLogix 5000 project you used for sharing data over a ControlNet network. Note that if you saved the demonstration file from the Configuring Logix5000 Controllers to Share Data over a ControlNet Network lesson, it is not required to configure the remote I/O module.

E 2012 Rockwell Automation, Inc. All rights reserved.

Pay attention to these critical aspects of the demonstration: -

Location of the procedures in the job aid

-

Parent-child relationship with the ControlNet module and the remote modules

-

Module configuration, including the multicasting rates

-

Resulting module tags

Rev. August 2012 RC2sb56r

20--3

Exercise: Communicating with a 1756-I/O Module Over a ControlNet Network

Exercise: Communicating with a 1756-I/O Module Over a ControlNet Network Exercise A

In this exercise, you will practice configuring a Logix5000 controller to communicate with a 1756-remote I/O module and reschedule the ControlNet network. Context: You have programmed a complete project. As a safety feature for plant personnel, you want to program an output light to be on when the production line is active. Because you have used your available I/O points in the local chassis, you must add a remote chassis to accommodate the additional I/O requirements. You are now ready to configure the controller to communicate with the 1756-remote I/O module. The setup of the remote output is shown in the following graphic: Production Line Active

Production Line

Local Chassis

Tip "

ControlNet Network

Remote Chassis

In this exercise, you will share data with another workstation on a ControlNet network. Your workstation will be the local chassis. The other workstation will be the remote chassis. When you see underlined text, refer to the related procedure or information in your job aid. Directions: 1. Download the Blank.acd file to the controller in slot 3. 2. Open the RC2_1756r_A1.acd file. 3. Add the local and remote ControlNet modules to the project I/O configuration. 4. Add and configure the remote output module in slot 4. You will be owning this module, which is located in the remote chassis.

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. RC2e56r

20--4

Exercise: Communicating with a 1756-I/O Module Over a ControlNet Network

5. Add the local input module that is in slot 2 to your I/O configuration. You will also be owning this module. 6. Make a new tag, DI12, an alias tag for bit 12 of the local digital input card in slot 2. 7. Make a new tag, DO11, an an alias tag for bit 11 of the remote digital output card in slot 4. 8. Enter the following ladder logic in your MainRoutine:

9. Download the project to the controller in slot 1 of the local chassis. Do not reschedule the ControlNet network until the projects have been downloaded to both the local and remote controllers.

10. When both lines are ready, reschedule the ControlNet network. 11. Test the project and verify that you have correctly configured the remote I/O by performing the following actions: A. Start the conveyor by energizing DI12. B. Verify that the remote I/O light DO11 on the other workstation is on. C. Turn off DI12 and verify that the remote I/O light on the other workstation is off. D. When the project functions correctly, go offline.

How Did You Do?

E 2012 Rockwell Automation, Inc. All rights reserved.

Turn to the Answers section.

Rev. August 2012 RC2e56r

Exercise: Communicating with a 1756-I/O Module Over a ControlNet Network

Rev. August 2012

20--5

E 2012 Rockwell Automation, Inc. All rights reserved. RC2e56r

20--6

Exercise: Communicating with a 1756-I/O Module Over a ControlNet Network

Answers

Exercise A 3. Your main configuration screen for the local ControlNet module in slot 5 should look similar to the example (The ControlNet node number will vary depending on your workstation setup.):

The remote ControlNet module is added to the I/O Configuration by right-clicking the ControlNet network icon displayed below the local ControlNet module:

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 RC2e56r

Exercise: Communicating with a 1756-I/O Module Over a ControlNet Network

20--7

Your main configuration screen for the remote ControlNet module in slot 5 should look similar to the example (The ControlNet node address will vary depending on your workstation setup.):

4. Add the remote output module by right-clicking the backplane displayed beneath the remote ControlNet module:

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. RC2e56r

20--8

Exercise: Communicating with a 1756-I/O Module Over a ControlNet Network

Your main configuration screen for the remote output module in slot 4 should look similar to the example:

5. Your main configuration screen for the local input module in slot 2 should look similar to the example:

(Continued)

Your completed I/O Configuration within the Controller Organizer should look similar to the following:

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 RC2e56r

Exercise: Communicating with a 1756-I/O Module Over a ControlNet Network

20--9

10. If you did not receive the appropriate system response after rescheduling the ControlNet network, verify that you have completed the following actions: - Set the SMAX to be equal to the highest number node that can use scheduled time on the network - Set the UMAX to be equal to the highest number node that can use unscheduled time on the network - Reschedule the network if any changes were made after the first rescheduling

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. RC2e56r

20--10

Exercise: Communicating with a 1756-I/O Module Over a ControlNet Network

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 RC2e56r

Appendix

A

I/O Wiring Diagrams For The Assembly Application Slot 0 - 1756-OB16D Digital Output Module WORKSTATION LABEL DEVICE RED

+DC- 0 +DC- 0 +DC- 0 +DC- 0 +DC- 0 +DC- 0 +DC- 0

2

1

OUT- 0

G

DO0

4

3

OUT- 1

A

DO1

5

OUT- 2

R

10

7

OUT- 3

G

DO3

STATION OUTPUT (PRESS)

12

9

OUT- 4

A

DO4

STATION OUTPUT (STAKE)

11

OUT- 5

R

DO5

STATION OUTPUT (WELD)

6 8

14 16

+DC- 1

30

GND- 1 GND- 1 Not Used

32

BLACK

GND- 0 +DC- 1 +DC- 1 +DC- 1 +DC- 1 +DC- 1 +DC- 1

CONVEYOR

DO2

18 20 22 24 26 28

34 36

BLACK

RED

APPLICATION OUTPUT

A

- GREEN PILOT LIGHT - AMBER PILOT LIGHT

R

- RED PILOT LIGHT

G

24VDC

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. WDAa56r

A--2

I/O Wiring Diagrams For The Assembly Application

Slot 2 - 1756-IB16D Digital Input Module WORKSTATION DEVICE

BLACK

BLACK

2

1

4

3

6

5

GND- 0 GND- 1 GND- 1 GND- 1

8

7

10

9

12

11

IN- 4 IN- 5

14

13

IN- 6

GND- 1 GND- 2 GND- 2 GND- 2 GND- 2 GND- 3 GND- 3 GND- 3

16

15

18

17

20

19

22

21

IN- 7 IN- 8 IN- 9 IN- 10

24

23

26

25

28

27

30

29

GND- 3 GND- 3 NOT USED

32

31

34

33

IN- 11 IN- 12 IN- 13 IN- 14 IN- 15 NOT USED

36

35

NOT USED

DI0 DI1 DI2 DI3 DI4 DI5 DI6 DI7 DI8 DI9 DI10 DI11 DI12

APPLICATION OUTPUT

+24VDC

START

PART SENSOR FAULT RESET READ REMOTE TOTAL STOP

PART SENSOR

DI13 DI14 DI15

BLACK

BLACK

IN- 0 IN- 1 IN- 2 IN- 3

GND- 0 GND- 0 GND- 0

LABEL

- NORMALLY OPEN PUSHBUTTON - SELECTOR SWITCH

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 WDAa56r

I/O Wiring Diagrams For The Assembly Application

A--3

Slot 4 - 1756-OB16D Digital Output Module RED

+DC- 0 +DC- 0 +DC- 0 +DC- 0 +DC- 0 +DC- 0 +DC- 0

2 4 6

8 12 13

GND- 0 +DC- 1 +DC- 1 +DC- 1 +DC- 1 +DC- 1 +DC- 1 +DC- 1

16

15

18

17

GND- 1 GND- 1 NOT USED

32

BLACK

14

22

21

24

23

OUT- 11

19

G A R G A R

DO6 DO7 DO8 DO9 DO10 DO11

PART SENSOR FAULT INDICATOR STATION OUTPUT (REJECT) STATION OUTPUT (PALLETIZE) LINE ACTIVE

26 28 30

34 36

BLACK

RED

OUT- 6 OUT- 7 OUT- 8 OUT- 9 OUT- 10

20

APPLICATION OUTPUT

WORKSTATION LABEL DEVICE

10

A

- GREEN PILOT LIGHT - AMBER PILOT LIGHT

R

- RED PILOT LIGHT

G

+24VDC

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. WDAa56r

I/O Wiring Diagrams For The Assembly Application

A--4

Slot 7 - 1756-OF6VI Analog Output Module WORKSTATION DEVICE

AO1 (Channel 1)

AO0 Return

WORKSTATION DEVICE OUT- 1

2

1

OUT- 0

NOT USED

4

3

NOT USED

RTN- 1

6

5

RTN- 0

OUT- 3

8

7

OUT- 2

NOT USED

10

9

NOT USED

RTN- 3

12

11

RTN- 2

NOT USED

14

13

NOT USED

OUT- 5

16

15

OUT- 4

NOT USED

18

17

NOT USED

RTN- 5

20

19

RTN- 4

E 2012 Rockwell Automation, Inc. All rights reserved.

AO0 (Channel 0)

AO1 Return

Rev. August 2012 WDAa56r

I/O Wiring Diagrams For The Assembly Application

A--5

Slot 8 - 1756-IF6I Analog Input Module +10VDC

+10VDC WORKSTATION DEVICE

AI1 (Channel 1)

AI1 Return

Rev. August 2012

WORKSTATION DEVICE

IN- 1/V

2

1

IN- 0/V

IN- 1/I

4

3

IN- 0/I

RET- 1

6

5

RET- 0

IN- 3/V

8

7

IN- 2/V

IN- 3/I

10

9

IN- 2/I

RET- 3

12

11

RET- 2

NOT USED

14

13

NOT USED

IN- 5/V

16

15

IN- 4/V

IN- 5/I

18

17

IN- 4/I

RET- 5

20

19

RET- 4

AI0 (Channel 0)

AI0 Return

E 2012 Rockwell Automation, Inc. All rights reserved. WDAa56r

A--6

I/O Wiring Diagrams For The Assembly Application

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 WDAa56r

Rev. August 2012

DI6

DI5

DI11 DO11 DI15

DI10 DO8 DI14

DO5 DI13

DI12

DO10

DI7

DI3 DO9

DI9

DO4

DO6

DO3

DO7

DI2

DI1

Outputs (6- 11 in Slot 4)

DI8 DO2

DI4 DO1

DI0 DO0

Outputs (0- 5 in Slot 0)

Inputs Run Left to Right (All Wired to Slot 2)

Ch01 Analog Meter Output

Ch00 Analog Meter Output

Ch01 Analog Meter Input

Ch00 Analog Meter Input

Appendix

B

ControlLogix Workstation I/O Device Assignments

The following standard ControlLogix workstation inputs and outputs are used in this course (Local I/O tags are listed on the next page):

E 2012 Rockwell Automation, Inc. All rights reserved. WI3a56r

B--2

ControlLogix Workstation I/O Device Assignments

Local I/O Tags

The devices used in the workstation have the following I/O base tags: Module

Digital Input wired to Slot 2

Digital Output wired to Slot 0

Digital Output wired to Slot 4

E 2012 Rockwell Automation, Inc. All rights reserved.

Workstation Device DI0 DI1 DI2 DI3 DI4 DI5 DI6 DI7 DI8 DI9 DI10 DI11 DI12 DI13 DI14 DI15 D00 D01 D02 D03 D04 D05 D06 D07 D08 D09 D010 D011

I/O Base Tag Local:2:I.Data.0 Local:2:I.Data.1 Local:2:I.Data.2 Local:2:I.Data.3 Local:2:I.Data.4 Local:2:I.Data.5 Local:2:I.Data.6 Local:2:I.Data.7 Local:2:I.Data.8 Local:2:I.Data.9 Local:2:I.Data.10 Local:2:I.Data.11 Local:2:I.Data.12 Local:2:I.Data.13 Local:2:I.Data.14 Local:2:I.Data.15 Local:0.O.Data.0 Local:0.O.Data.1 Local:0.O.Data.2 Local:0.O.Data.3 Local:0.O.Data.4 Local:0.O.Data.5 Local:4:O.Data.6 Local:4:O.Data.7 Local:4:O.Data.8 Local:4:O.Data.9 Local:4:O.Data.10 Local:4:O.Data.11

Rev. August 2012 WI3a56r

Appendix

C

Node Assignments If you are in an environment with multiple workstations on a ControlNet or EtherNet/IP network, ask your network specialist to supply the following information: EtherNet or EtherNet/IP Network Workstation Number

1756-ENBT IP Address

ControlNet Network 1756-CNB or 1756- CN2 Node Address*

1784- PCICS Card Node Address

1784- PCC Card Node Address

1784-KTCX15 Interface Card

1

2

3

4

5

6

7

8

9

10

Rev. August 2012

E 2012 Rockwell Automation, Inc. All rights reserved. NO3a56r

C--2

Node Assignments

E 2012 Rockwell Automation, Inc. All rights reserved.

Rev. August 2012 NO3a56r

The following are trademarks of Rockwell Automation, Inc.: 1336 FORCE 1336 PLUS ControlBus Data Highway Plus DriveTools Flex Logix5000 PanelBuilder PLC-5 PowerFlex RSLinx RSView SCANPort SoftLogix

1336 IMPACT CompactLogix ControlLogix DH+ FactoryTalk FlexLogix Logix5550 PanelView PHOTOSWITCH RediSTATION RSLogix RSNetWorx SLC Ultra

EtherNet/IP and ControlNet are trademarks of ControlNet International Ltd. DeviceNet is a trademark of the Open DeviceNet Vendor Association, Inc. (ODVA). The following are registered trademarks of Microsoft Corporation: MS-DOS Windows

PowerPoint Windows NT

IBM is a registered trademark of International Business Machines Corporation. Pentium is a registered trademark of Intel Corporation. All other trademarks are the property of their respective holders and are hereby acknowledged.

Catalog Number ABT-CCP143-TSM -- August 2012 Supersedes Catalog Number ABT-CCP143-TSM - June 2012 E 2012 Rockwell Automation, Inc. All rights reserved. Printed in USA

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF