116
Adept ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

  • Upload
    lamdan

  • View
    297

  • Download
    9

Embed Size (px)

Citation preview

Page 1: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Adept ePLC Connect 2.0Software User’s Guide

(for RSLogix 5000 PLCs)

Page 2: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)
Page 3: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Adept ePLC Connect 2.0Software User’s Guide

(for RSLogix 5000 PLCs)

P/N: 08822-000 Rev BJanuary, 2011

5960 Inglewood Drive • Pleasanton, CA 94588 • USA • Phone 925.245.3400 • Fax 925.960.0452

Otto-Hahn-Strasse 23 • 44227 Dortmund • Germany • Phone +49.231.75.89.40 • Fax +49.231.75.89.450

Block 5000 Ang Mo Kio Avenue 5 • #05-12 Techplace II • Singapore 569870 • Phone +65.6755 2258 • Fax +65.6755 0598

Page 4: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

The information contained herein is the property of Adept Technology, Inc., and shall not be reproduced in whole or in part without prior written approval of Adept Technology, Inc. The information herein is sub-ject to change without notice and should not be construed as a commitment by Adept Technology, Inc. This manual is periodically reviewed and revised.

Adept Technology, Inc., assumes no responsibility for any errors or omissions in this document. Critical evaluation of this manual by the user is welcomed. Your comments assist us in preparation of future doc-umentation. Please email your comments to: [email protected].

Copyright © 2009-2011 by Adept Technology, Inc. All rights reserved.

Adept, the Adept logo, the Adept Technology logo, AdeptVision, AIM, Blox, Bloxview, FireBlox, Fireview, HexSight, Meta Controls, MetaControls, Metawire, Soft Machines, and Visual Machines are registered

trademarks of Adept Technology, Inc.

Brain on Board is a registered trademark of Adept Technology, Inc. in Germany.

ACE, Adept 1060 / 1060+, Adept 1850 / 1850 XP, Adept 540 Adept 560, Adept AnyFeeder, Adept Award, Adept C40, Adept C60, Adept CC, Adept Cobra 350, Adept Cobra 350 CR/ESD, Adept Cobra 550, Adept 550 CleanRoom, Adept Cobra 600, Adept Cobra 800, Adept Cobra i600, Adept Cobra i800, Adept Cobra

PLC server, Adept Cobra PLC800, Adept Cobra s600, Adept Cobra s800, Adept Cobra s800 Inverted, Adept Cobra Smart600, Adept Cobra Smart800, Adept DeskTop, Adept FFE, Adept FlexFeeder 250, Adept IC,

Adept iSight, Adept Impulse Feeder, Adept LineVision, Adept MB-10 ServoKit, Adept MC, Adept MotionBlox-10, Adept MotionBlox-40L, Adept MotionBlox-40R, Adept MV Adept MV-10, Adept MV-19, Adept MV4, Adept MV-5, Adept MV-8, Adept OC, Adept Python, Adept Quattro s650, Adept Quattro

s650H, Adept Quattro s650HS, Adept Quattro s800H, Adept sDIO, Adept SmartAmp, Adept SmartAxis, Adept SmartController CS, Adept SmartController CX, Adept SmartModule, Adept SmartMotion, Adept

SmartServo, Adept sMI6, Adept Viper s650, Adept Viper s850, Adept Viper s1300, Adept Viper s1700, Adept Viper s2000, AdeptCartesian, AdeptCast, AdeptForce, AdeptFTP, AdeptGEM, AdeptModules,

AdeptMotion, AdeptMotion Servo, AdeptMotion VME, AdeptNet, AdeptNFS, AdeptOne, AdeptOne-MV, AdeptOne-XL, AdeptRAPID, AdeptSight, AdeptSix, AdeptSix 300, AdeptSix 300 CL, AdeptSix 300 CR, AdeptSix 600, AdeptTCP/IP, AdeptThree, AdeptThree-MV, AdeptThree-XL, AdeptTwo, AdeptVision,

AVI AdeptVision, AGS AdeptVision GV, AdeptVision I, AdeptVision II, AdeptVision VME, AdeptVision VXL, AdeptVision XGS, AdeptVision XGS II, AdeptWindows, AdeptWindows Controller, AdeptWindows

DDE, AdeptWindows Offline Editor, AdeptWindows PC, AIM Command Server, AIM Dispense, AIM PCB, AIM VisionWare, A-Series, FlexFeedWare, HyperDrive, IO Blox, MicroV+, MobileEyes,

MobilePlanner, MotionBlox, MotionWare, ObjectFinder, ObjectFinder 2000, PackOne, PalletWare, sAVI, SetNetGo, S-Series, UltraOne, V, V+ and VisionTeach are trademarks of Adept Technology, Inc.

Any trademarks from other companies used in this publication are the property of those respective companies.

Printed in the United States of America

Page 5: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Table of Contents

1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

1.1 Product Description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

User-Supplied PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13Adept SmartController CX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13Adept Robot. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14Adept ePLC Connect Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14Adept SmartVision EX and AdeptSight Software . . . . . . . . . . . . . . . . . . . . . 14

1.2 Dangers, Warnings, Cautions, and Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

1.3 Safety Information and Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

1.4 Installation Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

1.5 How Can I Get Help? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

Related Manuals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17Adept Document Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2 Equipment Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.1 Installing the PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.2 Installing the Robot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

Unpacking and Inspecting the Adept Equipment . . . . . . . . . . . . . . . . . . . 19Transport and Storage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19Repacking for Relocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20Environmental and Facility Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . 20Mounting Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

2.3 Mounting the SmartController CX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

CompactFlash Memory Card . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

2.4 Mounting the SmartVision EX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3 Wiring the System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.1 System Cable Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.2 SmartController CX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Connectors and Indicators. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25Cable Connections from the Robot to the SmartController CX . . . . . . . . 26Cable Connections from the PLC to the SmartController CX . . . . . . . . . . 27

3.3 SmartVision EX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.4 Connecting AC Power to the Robot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.5 Connecting 24 VDC Power. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3.6 Grounding the System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 5

Page 6: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Table of Contents

3.7 Connecting User-Supplied Safety and Power Control Equipment . . . . . . . . . . 28

3.8 Connecting User-Supplied Digital I/O Equipment . . . . . . . . . . . . . . . . . . . . . . . 29

4 Robot Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

4.1 Robot Status LED Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

4.2 Status Panel Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

4.3 Using the Brake Release Button . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

Brakes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32Brake Release Button . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

4.4 Commissioning the System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

Verifying Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32System Start-up Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33Verifying E-Stop Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

5 Programming the Robot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

5.1 ePLC Connect Software Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

5.2 Initializing the System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

Install the Software and Configure the Controller IP Address . . . . . . . . . . . 36Set and Verify the PLC Communications . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40Add the Ethernet I/O Configuration to the PLC Project. . . . . . . . . . . . . . . . 41Create and Configure a New Generic Ethernet Module . . . . . . . . . . . . . . 43Add the UDT Definitions to the Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47Adding the UDTs to the Tags Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

5.3 PLC Software Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50Status Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

6 Vision Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

Hardware setup. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71Runtime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

6.2 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

AdeptSight Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72Adept ACE Automatic Connect. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

6.3 Runtime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82Status tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

7 Robot Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

7.1 Understanding Robot Motion Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

6 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 7: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Table of Contents

Speed, Acceleration, and Deceleration . . . . . . . . . . . . . . . . . . . . . . . . . . . 85Approach and Depart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86Arm Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86Continuous-Path Motion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87Joint-Interpolated Motion vs. Straight-Line Motion . . . . . . . . . . . . . . . . . . . 88Performance Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

7.2 The World Coordinate System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

Defining a Location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

7.3 Defining a Pallet Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

Why is Gripper Orientation Important? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

8 Diagnostic and Error Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

8.1 ePLC Connect Messages (Numerical Listing) . . . . . . . . . . . . . . . . . . . . . . . . . . 97

8.2 ePLC Connect Messages (Alphabetical Listing) . . . . . . . . . . . . . . . . . . . . . . . . 98

A Command Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

A.1 Joint and Coordinate UDT Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

A.2 Command UDT Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

A.3 Status UDT Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 7

Page 8: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)
Page 9: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

List of Figures

Figure 3-1. System Cable Diagram for Adept Robots . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

Figure 3-2. Adept SmartController CX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Figure 3-3. Adept SmartVision EX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

Figure 4-1. Status Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

Figure 5-1. Initial Adept ACE Startup Dialog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

Figure 5-2. Controller IP Address Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

Figure 5-3. Controller IP Address Configuration, after Controller Start-up . . . . . . . . . . . 39

Figure 5-4. Adept ACE Startup Dialog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

Figure 5-5. RSLogix5000 Who Active Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

Figure 5-6. I/O Configuration Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

Figure 5-7. Selecting the 10/100 Ethernet Bridge Configuration . . . . . . . . . . . . . . . . . . . 43

Figure 5-8. Selecting the Generic Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

Figure 5-9. Module Properties (no Vision) - Name and Ethernet Properties . . . . . . . . . 45

Figure 5-10. Module Properties (with Vision) - Name and Ethernet Properties . . . . . . . . 45

Figure 5-11. Module Properties - RPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

Figure 5-12. Adept_Robot Ethernet Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

Figure 5-13. Adept_Example Joint UDT Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

Figure 5-14. Controller Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

Figure 5-15. Example Rung without Vision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

Figure 5-16. Example Rung with Vision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

Figure 5-17. S-Curve versus Trapezoid Acceleration Profile . . . . . . . . . . . . . . . . . . . . . . . 52

Figure 5-18. Motion Profile for the Jump Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

Figure 5-19. Traverse Direction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

Figure 5-20. Pallet Configuration Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

Figure 6-1. Adept ACE Initial Startup Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

Figure 6-2. Adept ACE Workspace Explorer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

Figure 6-3. Grid Calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

Figure 6-4. AdeptSight Camera Calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

Figure 6-5. Locator Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

Figure 6-6. Communication Tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

Figure 6-7. AdeptSight Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

Figure 6-8. Start > (All) Programs > Startup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

Figure 6-9. Adept ACE System Startup Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

Figure 6-10. Adept ACE Autostart Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

Figure 7-1. Lefty/Righty Robot Arm Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

Figure 7-2. World Coordinate System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

Figure 7-3. Robot Axes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

Figure 7-4. Robot Joints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

Figure 7-5. Defining a Pallet Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 9

Page 10: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

List of Figures

Figure 7-6. Pallet Orientation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

Figure 7-7. Pallet Origin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

Figure 7-8. Pallet Row Location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

Figure 7-9. Pallet Column Location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

10 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 11: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

List of Tables

Table 1-1. Installation Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16

Table 1-2. Related Manuals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18

Table 3-1. SmartController CX LEDs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25

Table 3-2. LED Status Indicators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26

Table 5-1. Command Classifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .50

Table 5-2. Instruction Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55

Table 5-3. Output Signals Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .57

Table 5-4. Jog Mode Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .58

Table 5-5. Motion Qualifier Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59

Table 5-6. Location Definitions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .61

Table 5-7. Pallet Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .61

Table 5-8. Pallet Row Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .62

Table 5-9. MCP Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .65

Table 5-10. Status Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .65

Table 5-11. Main Status Bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .66

Table 5-12. Input Word Bit Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .67

Table 5-13. Position Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .68

Table 5-14. Error Tag Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .69

Table 5-15. MCP Status Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .70

Table 6-1. Vision Command Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .83

Table 6-2. Vision Status Tag Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .83

Table 7-1. Values Describing a Cartesian Location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .90

Table 7-2. Values Describing a Joint Location. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .92

Table 8-1. ePLC Connect software Messages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .97

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 11

Page 12: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)
Page 13: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Introduction 11.1 Product Description

The Adept ePLC Connect software allows the full programming and operation of an Adept robot directly from a PLC. The ePLC Connect software requires a user-supplied PLC, an Adept SmartController CX, and an Adept robot. The software runs on the SmartController.

Beginning with version 2.0 of Adept ePLC Connect software, you can add AdeptSight vision capability to your ePLC-controlled workcell. The AdeptSight vision software provides vision guidance capability through a point-and-click user interface. The ePLC Connect software provides vision-specific commands, which are used to control the vision system from the connected PLC.

This manual describes the ePLC Connect software, its functionality, operation, and messages. It assumes the user is:

• proficient in PLC programming,

• familiar with Allen-Bradley ControlLogix or CompactLogix families of PLCs, and

• familiar with the Allen-Bradley RSLogix5000 software.

User-Supplied PLC

The user-supplied PLC is used to command and control the robot. (The PLC may also be used to control other devices and processes in the workcell.) All application programs and location data are stored on the PLC. When the PLC application runs, the PLC writes to command tags in the PLC. The Adept ePLC Connect software uses an Ethernet connection to read those command tags and to write status information to data files in the PLC.

The Ethernet/IP protocol contains both explicit and implicit messages. However, the ePLC Connect software only supports implicit messaging. Thus, this product is only compatible with the Allen-Bradley ControlLogix and CompactLogix families of PLCs. The SLC, MicroLogix, and PLC5 families are not supported. Adept does offer a DF1-based product (without vision) which supports the SLC and MicroLogix PLCs.

Adept SmartController CX

The Adept SmartController CX provides connections for external E-Stop circuitry to the system. An external Front Panel with an E-Stop is included with Adept SmartController CX systems. Multiple SmartController CXs can be accessed by a single PLC.

NOTE: Programming of the SmartController CX is not required. All application programming is done from the user-supplied PLC.

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 13

Page 14: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Introduction

Adept Robot

The Adept ePLC Connect system can control any Adept robot with 6 or fewer joints. The current Adept robot product line includes:

• Adept Cobra four-axis SCARA robots

• Adept Viper six-axis robots

• Adept Python linear modules

• Adept Quattro parallel arm robots

For more details, refer to the Adept robot user’s guide that was included with your Adept robot.

Adept ePLC Connect Software

The ePLC Connect software—used to provide seamless communication between the PLC and the robot— is supplied with and runs on the SmartController CX. The ePLC Connect software requires operating system V+ 16.4 Edit C3 or later. Additionally, the PLC Client Application license (part number 09966-042) must be installed on the Adept SmartController CX.

NOTE: The operating system and all required software licenses are installed at the Adept factory, before the system is shipped.

The ePLC Connect software receives commands from the PLC, interprets the information, and then commands the robot to move. As the software commands the robot to move, it writes status information back to the PLC.

NOTE: The application software and robot location data reside on the user-supplied PLC. See Chapter 5 for details.

Adept SmartVision EX and AdeptSight Software

AdeptSight software and the SmartVision EX provide optional vision guidance and inspection for the ePLC Connect system. The ePLC software provides vision-specific commands, which are used to control the vision system from the connected PLC. For more details on integrating the SmartVision EX and AdeptSight software into your ePLC system, see Chapter 6.

NOTE: The operating system, software, and all required software licenses are factory-installed in the SmartVision EX, before the system is shipped.

14 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 15: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Product Description

1.2 Dangers, Warnings, Cautions, and Notes

There are six levels of special alert notation that may be used in this manual. In descending order of importance, they are:

NOTE: Notes provide supplementary information, emphasizes a point or procedure, or gives a tip for easier operation.

DANGER: This indicates an imminently hazardous electrical situation which, if not avoided, will result in death or serious injury.

DANGER: This indicates an imminently hazardous situation which, if not avoided, will result in death or serious injury.

WARNING: This indicates a potentially hazardous electrical situation which, if not avoided, could result in serious injury or major damage to the equipment.

WARNING: This indicates a potentially hazardous situation which, if not avoided, could result in serious injury or major damage to the equipment.

CAUTION: This indicates a situation which, if not avoided, could result in damage to the equipment.

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 15

Page 16: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Introduction

1.3 Safety Information and Procedures

This manual, the Adept robot user’s guide, and the SmartController User’s Guide must be read by all personnel who install, operate, or maintain Adept systems, or who work near the workcell.

All personnel must comply with the safety information and procedures in these documents.

1.4 Installation Overview

The system installation process is summarized in the following table. Refer also to the system cable diagram in Figure 3-1 on page 24.

NOTE: Because the ePLC Connect software can work with four distinct families of Adept robots, details on installing the robot is left to the specific Adept robot user’s guide.

Table 1-1. Installation Overview

Task to be Performed Reference Location

1. Install the robot. See the Adept robot user’s guide.

2. Install the SmartController CX, the Front Panel, and any user-supplied equipment, such as the PLC, PLC User Interface, and PLC programming software.

See the Adept robot user’s guide, the Adept SmartController User’s Guide, and your PLC documentation.

3. Connect the cables between the robot and SmartController CX.

See the Adept robot user’s guide.

4. Optionally, install the SmartVision EX. (Only needed if the system will use vision.)

See the Adept SmartVision EX User’s Guide.

5. Connect the cables between the camera and the SmartVision EX, if installed.

See the Adept SmartVision EX User’s Guide.

6. Connect the Ethernet crossover cable, or Ethernet cables and user-supplied switch, between the user-supplied PLC and the Eth 10/100 port on the SmartController CX.

See page 27.

7. Connect Ethernet cables between the switch and an Ethernet port on the SmartVision EX, if installed.

See the Adept SmartVision EX User’s Guide.

8. If needed, create a 24 VDC cable and connect it between the robot and the user-supplied 24 VDC power supply. (Not all robots need 24 VDC.)

See the Adept robot user’s guide.

9. Create an AC power cable and connect it between the robot and the facility AC power source.

See the Adept robot user’s guide.

16 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 17: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

How Can I Get Help?

1.5 How Can I Get Help?

For details on getting assistance with your Adept software or hardware, you can access the following information sources on the Adept corporate website:

• For Contact information:http://www.adept.com/contact/americas

• For Product Support information: http://www.adept.com/support/service-and-support/main

• For further information about Adept Technology, Inc.:http://www.adept.com

Related Manuals

This manual covers the installation, startup, and programming of the Adept ePLC Connect system. There are additional manuals that cover detailed robot and controller installation, reconfiguring installed components, and adding other optional components. The following manuals are available on the Adept Document Library CD-ROM shipped with each system:

10.Create a 24 VDC cable and connect it between the SmartController CX and the user-supplied 24 VDC power supply.

See the Adept robot user’s guide.

11.Create a 24 VDC cable and connect it between the SmartVision EX, if installed, and the SmartController 24 VDC (or user-supplied 24 VDC power supply).

See the Adept SmartVision EX User’s Guide.

12.Connect the workcell equipment to an earth grounding point.

See the Adept robot user’s guide.

13.Install user-supplied safety barriers in the workcell. See the Adept robot user’s guide.

14.Read Chapter 4 to learn about system start-up and testing.

See Section 4.4 on page 32.

15.Read the chapter “Optional Equipment Installation” in your Adept robot user’s guide, if you need to install optional robot equipment, such as end-effectors, user air and electrical lines, solenoids, etc.

See the Adept robot user’s guide.

Table 1-1. Installation Overview

Task to be Performed Reference Location

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 17

Page 18: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Introduction

Adept Document Library

The Adept Document Library (ADL) contains documentation for Adept products. You can access the ADL as follows:

• Select Support > Document Library from the menu bar on the Adept website Home page

or

• Type the following URL into your web browser:

http://www.adept.com/Main/KE/DATA/adept_search.htm

To locate information on a specific topic, use the Document Library search engine on the ADL main page.

Table 1-2. Related Manuals

Manual Title Description

Adept robot user’s guide The Adept robot user’s guide that was included with the Adept robot. This user’s guide covers detailed installation, operation, and maintenance of the Adept robot.

Adept SmartController User’s Guide

Contains complete information on the installation and operation of the Adept SmartController CX and the optional sDIO product.

Adept SmartVision EX User’s Guide

Describes the installation and operation of the Adept SmartVision EX product. The SmartVision EX is a Windows XP computer that is compatible with Adept’s family of SmartController products.

AdeptSight on-line help Describes the installation, programming and use of the AdeptSight software vision tools.

PLC documentation The documentation that was included with the user-supplied PLC. Describes installation and operation of the PLC.

18 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 19: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Equipment Installation 22.1 Installing the PLC

Refer to the user’s guide that came with your PLC for installation instructions.

2.2 Installing the Robot

Unpacking and Inspecting the Adept Equipment

Before Unpacking

Carefully inspect all shipping crates for evidence of damage during transit. Pay special attention to any tilt and shock indication labels on the exteriors of the containers. If any damage is indicated, request that the carrier’s agent be present at the time the container is unpacked.

Upon Unpacking

Before signing the carrier’s delivery sheet, please compare the actual items received (not just the packing slip) with your equipment purchase order and verify that all items are present and that the shipment is correct and free of visible damage.

If the items received do not match the packing slip, or are damaged, do not sign the receipt. Contact Adept as soon as possible.

If the items received do not match your order, please contact Adept immediately.

Inspect each item for external damage as it is removed from its container. If any damage is evident, contact Adept (see Section 1.5 on page 17).

Retain all containers and packaging materials. These items may be necessary to settle claims or, at a later date, to relocate equipment.

Transport and Storage

This equipment must be shipped and stored in a temperature-controlled environment, within the temperature and humidity ranges specified in the Adept robot user’s guide and Adept SmartController User’s Guide. It should be shipped and stored in the Adept-supplied packaging, which is designed to prevent damage from normal shock and vibration. You should protect the package from excessive shock and vibration.

Use a forklift, pallet jack, or similar device to transport and store the packaged equipment.

Refer to the Adept robot user’s guide for robot-specific transport and storage information.

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 19

Page 20: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Equipment Installation

Repacking for Relocation

If the robot or other equipment needs to be relocated, reverse the steps in the installation procedures described in the Adept robot user’s guide. Reuse all original packing containers and materials and follow all safety notes used for installation. Improper packaging for shipment will void your warranty. The Adept robot must always be shipped in an upright orientation. Specify this to the carrier if the robot is to be shipped.

Environmental and Facility Requirements

The Adept robot system installation must meet the environmental and facility requirements described in the Adept robot user’s guide.

Mounting Options

The Adept robot may have several mounting options, depending on the model being used with the Adept ePLC Connect system. Refer to the Adept robot user’s guide for the correct mounting procedure for your robot. Follow the mounting procedure exactly as described in that document.

2.3 Mounting the SmartController CX

The following mounting options are available for the SmartController CX:

• Rack

• Panel

• Table

In addition, the SmartController CX can be stack mounted (one unit placed on top of another with the same footprint). Refer to the Adept SmartController User’s Guide for the correct mounting procedure for your application. Follow the mounting procedure exactly as described in that document.

CompactFlash Memory Card

The SmartController CX is equipped with a CompactFlash™ (CF) memory card. The SmartController CX uses a CF memory card in place of a traditional hard disk drive. In fact, it is often referred to as a “solid state hard drive”. The CF is about half the size of a credit card and twice as thick. It has no moving parts; therefore, it is reliable and durable.

Not all types of CompactFlash memory cards are compatible with the SmartController CX. Adept requires the use of the CF memory card supplied by Adept at the time of the SmartController CX purchase and that all replacement CF memory cards be obtained from Adept.

Refer to the Adept SmartController User’s Guide for the CF memory card installation procedure. Follow the installation procedure exactly as described in that document.

20 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 21: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Mounting the SmartVision EX

2.4 Mounting the SmartVision EX

The following mounting options are available for the SmartVision EX.

• Rack

• Panel

• Table

In addition, the SmartVision EX can be stack mounted (placed on top of the SmartController CX, for instance). Refer to the Adept SmartVision EX User’s Guide for the correct mounting procedure for your application. Follow the mounting procedure exactly as described in that document.

CAUTION: Use suitable measures for eliminating electrostatic discharge during handling of the CompactFlash. This includes, but is not limited to, the use of a grounded wrist strap while performing this operation.

CAUTION: Never install or remove the CompactFlash when power is connected to the SmartController CX.

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 21

Page 22: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)
Page 23: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Wiring the System 33.1 System Cable Diagram

The system cable diagram, in the following figure, shows the typical connections required for the Adept ePLC Connect system. If the optional SmartVision EX is used, additional connections are required, as noted in the system cable diagram. For details on these connections, see the Adept SmartVision EX User’s Guide.

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 23

Page 24: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Wiring the System

Figure 3-1. System Cable Diagram for Adept Robots

SmartController-to-Robot connections

AdeptSmartController CX

User-Supplied24 VDC Power

Supply

User-SuppliedAC powerto Robot

Front Panel-to-SmartController

24 VDC Power to SmartController

Optional PC running PLC-programming software

User-SuppliedGround Wires

User-SuppliedGround Wireto Robot

Programmable LogicController (PLC)

Optional PLC Interface

USER-SUPPLIEDCOMPONENTS

to Ethernet Ports

User-SuppliedGround Wire

User-SuppliedGround Wire 24 VDC power

to Robot,if needed

Adept AIB Robotor MB-40/60R

or PDU3or PA-4

Optional AdeptSmartVision EX

Camera-to-SmartVision EXconnections

Front Panel

TerminatorInstalled

OptionalUser-Supplied

Camera

User-SuppliedSwitch

STOP

R

R

ON

SmartServo IEEE-1394

1 2 3 4SF ES HDSW1 1.1 1.2 2.1 2.2OK

1 2 3

XDIO

LANHPE

OFF

XSYS

CAMERA

Eth 10/100

XUSR

Device Net

XFP

RS-232/TERM

RS-232-1

XMCP

BELT ENCODER

Sm

artC

ontr

olle

r C

X

-+ -+

RS-422/485

XDC1 XDC2

24V 5A

*S/N 3562-XXXXX*

RS-232-2

COM1

COM2

MOUSE

KEYBDDVI

VGA

LAN1USB

LAN2USB

LOUT

LIN

MIC

POWER

HDD SYS

24VCD 6A_ + Sm

art

Vis

ion

EX

Cable Installation Checklist:1. Connect SmartController CX to Adept robot (Adept robot user’s guide).2. Verify terminator plug is installed in XUSR connector (SmartController User’s Guide).3. Connect Front Panel to SmartController CX (Adept robot user’s guide).4. Connect Ethernet cables from PLC Ethernet port to switch and then to SmartController CX Ethernet port.

Connect Ethernet cable from switch to Ethernet port on SmartVision EX, if installed.5. Connect 24 VDC to SmartController CX, (SmartController User’s Guide), to SmartVision EX, if installed,

(SmartVision EX User’s Guide), and to Adept robot, if needed (Adept robot user’s guide).6. Connect AC power to Adept robot (SmartController User’s Guide).7. Connect ground wire to 24 VDC power supply, SmartController CX, Adept robot, and PLC.

Connect ground wire to SmartVision EX, if installed, (SmartVision EX User’s Guide).8. Connect either PC or PLC Interface to PLC. One is required. (PLC documentation)9. Connect camera cables to SmartVision EX, if installed.

24 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 25: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

SmartController CX

3.2 SmartController CX

This section highlights specific connections for the Adept ePLC Connect system. See the Adept SmartController User’s Guide for a complete description of all connectors and indicators.

Connectors and Indicators

Figure 3-2. Adept SmartController CX

NOTE: All the connectors on the SmartController CX use standard density spacing, D-subminiature connectors. For customization purposes, the user needs to provide connectors of the appropriate gender and pin count or use optional Adept cables. See the Adept SmartController User’s Guide for details.

1. Upper Three Status LEDsThe upper three two-color LEDs indicate diagnostic test, power control, and communication status.

During system bootup, the red OK/SF and HPE/ES LEDs are lit and the red LAN/HD LED blinks. After system bootup, the OK/SF LED should show green. If the HPE/ES LED shows red, the E-Stop circuit is open. During CompactFlash reads and writes, the LAN/HD LED pulses red. When the SmartController CX is active on an Ethernet network, the LAN/HD LED pulses green.

2. Lower Three Status LEDsThe lower three LEDs on the front of the SmartController CX indicate the status of the SmartController CX while the system is starting up. The LEDs “count” with green patterns while the operating system is being loaded from disk.

Table 3-1. SmartController CX LEDs

LED Green Indicates Red Indicates

OK/SF System OK System Fault

HPE/ES High Power Enabled E-Stop Open

LAN/HD Ethernet Access Read/Write from CompactFlash

R

ON

SmartServo IEEE-1394

1 2 3 4SF ES HDSW1 1.1 1.2 2.1 2.2OK

1 2 3

XDIO

LANHPE

OFF

XSYS

CAMERA

Eth 10/100

XUSR

Device Net

XFP

RS-232/TERM

RS-232-1

XMCP

BELT ENCODER

Sm

artC

ontr

olle

rC

X

-+ -+

RS-422/485

XDC1 XDC2

24V 5A

*S/N 3562-XXXXX*

RS-232-2

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 25

Page 26: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Wiring the System

After the system bootup is complete, the LEDs are turned off briefly while the ePLC Connect software is loaded and started up. After the software is running, the bottom LED labeled 1 is used to indicate the status of the ePLC Connect software. One of the patterns listed in Table 3-2 is displayed at all times. If the SmartController CX displays a solid red LED 1, cycle the power off, then on again. If the problem persists, contact Adept Customer Service for more assistance. The Adept ACE software must be installed on an available PC before additional debug steps can be taken.

3. SW1 DIP switchesThe DIP switches define certain configuration settings.

NOTE: The DIP switches are set at the factory and must not be changed by the user.

4. Ethernet (Eth 10/100) connectorConnects the user-supplied PLC to the Adept SmartController CX. This connection provides the communications link between the SmartController CX/Adept robot and the user-supplied PLC.

NOTE: The default IP address for the controller is located on a label on the bottom of the controller chassis.

Cable Connections from the Robot to the SmartController CX

Connect the Adept robot to the SmartController CX as described in the Adept robot user’s guide.

NOTE: The Ethernet (Eth 10/100) port on the SmartController CX will connect to the user-supplied PLC, not your PC. See the following section for details.

Table 3-2. LED Status Indicators

LED Display1 2 3

Description Meaning

R - - Solid Red Major non-recoverable fault: No robot, no license, or incorrect V+ software installed.

R - - Flashing Red Minor recoverable fault which can be cleared.

G - - Solid Green System communicating to PLC and not faulted.

G - - Flashing Green Waiting for I/O connection to be made.

LED Display Key:- = Off G = Green R = Red

26 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 27: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

SmartVision EX

Cable Connections from the PLC to the SmartController CX

The user-supplied PLC is connected to the SmartController CX with an Ethernet cable. If the PLC Ethernet connection is connected to other peripheral equipment in the system, you may need to incorporate a networking switch (hubs are not recommended due the high potential of network collisions). Since the Ethernet/IP protocol uses multicast UDP-based implicit messaging, it is highly recommended that you follow Rockwell Automation’s recommendations for selecting Ethernet switches (please reference the Ethernet/IP Performance Application Guide Application Solution, Publication ENET-AP001D-EN-P available at literature.rockwellautomation.com).

Please refer to Chapter 5 for more information on configuring the PLC communication interface.

3.3 SmartVision EX

The vision components of an ePLC Connect system are optional. If your system will use vision, these include the SmartVision EX and a user-supplied camera. See the Adept SmartVision EX User’s Guide for a complete description of all connectors and indicators.

Figure 3-3. Adept SmartVision EX

The user-supplied PLC and the SmartVision EX will generally be connected to the same network by Ethernet cables, but the PLC’s actual communication with the vision system will all be through the SmartController CX, not directly with the SmartVision EX.

The use of a PLC in the Adept system does not change the connections between the SmartVision EX, the SmartController CX, and the camera.

3.4 Connecting AC Power to the Robot

NOTE: ePLC Connect software does not change AC power requirements.

User-supplied AC power must be connected to the Adept robot. See the Adept robot user’s guide for details.

DANGER: Power installation must be performed by a skilled and instructed person. During installation, fail-safe lockout measures must be used to prevent unauthorized third parties from turning on power. See the Adept robot user’s guide for details.

COM1

COM2

MOUSE

KEYBDDVI

VGA

LAN1USB

LAN2USB

LOUT

LIN

MIC

POWER

HDD SYS

24VCD 6A_ + Sm

art

Vis

ion

EX

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 27

Page 28: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Wiring the System

3.5 Connecting 24 VDC Power

NOTE: DC power requirements are the same with or without ePLC Connect software.

The SmartController CX requires filtered 24 VDC power. See the Adept SmartController User’s Guide for details.

The SmartVision EX requires filtered 24 VDC power. In most cases, this can be obtained from the unused 24 VDC connector on the SmartController CX. See the Adept SmartVision EX User’s Guide for details.

Some Adept robots require 24 VDC power. Refer to the Adept robot user’s guide.

NOTE: Users must provide their own power supply. Make sure the power cables and power supply conform to the specifications described in the listed user’s guides.

3.6 Grounding the System

A user-supplied ground wire must be attached to the Adept robot, SmartController CX, user-supplied DC power supply, and user-supplied PLC. If the optional SmartVision EX is installed, a user-supplied ground wire must be attached. Proper grounding is required for safe and reliable system operation.

See the Adept robot user’s guide, the Adept SmartController User’s Guide, the Adept SmartVision EX User’s Guide, and your PLC documentation for details.

3.7 Connecting User-Supplied Safety and Power Control Equipment

The user is responsible for installing safety barriers to protect personnel from coming in contact with the robot unintentionally. Depending on the design of the workcell, safety gates, light curtains, and emergency stop devices can be used to create a safe environment.

Read your Adept robot user’s guide, and the Adept SmartController User’s Guide for a discussion of safety issues and safety equipment requirements.

DANGER: Failing to ground robot-mounted equipment or tooling that uses hazardous voltages could lead to injury or death of a person touching the equipment or end-effector when an electrical fault condition exists.

28 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 29: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Connecting User-Supplied Digital I/O Equipment

3.8 Connecting User-Supplied Digital I/O Equipment

The SmartController CX provides capability for Inputs and Outputs (I/O) using a hard-wired interface to the XDIO connector.

See the Adept SmartController User’s Guide and the Adept SmartVision EX User’s Guide for details on connecting user-supplied digital I/O equipment to your system.

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 29

Page 30: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)
Page 31: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Robot Operation 44.1 Robot Status LED Description

Some Adept robots have a Status LED Indicator, which indicates the status of the robot. Refer to your Adept robot user’s guide for the location of the Status LED and its display descriptions.

NOTE: In addition to the Robot Status LED indicator (described below), the SmartController CX also provides status LEDs. For a description of the SmartController CX status LEDs during system initialization, see Section 3.2 on page 25. For a listing of the diagnostic/error messages displayed at runtime by the SmartController CX status LEDs, see Section 8.1 on page 97.

4.2 Status Panel Codes

Most Adept robot systems contain a status panel, as shown in the following figure, which displays alpha-numeric codes that indicate the operating status of the robot, including status codes. These codes provide details for quickly isolating problems during troubleshooting.

Refer to your Adept robot user’s guide for the location of the status panel and its display descriptions.

Figure 4-1. Status Panel

Diagnostics Panel for Displaying Status Codes

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 31

Page 32: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Robot Operation

4.3 Using the Brake Release Button

Brakes

Adept robots contain a braking system which decelerates the robot in an emergency condition, such as when the emergency stop circuit is open or a robot joint passes its softstop. Instructions on configuring the Programmable E-Stop delay can be found within the SPEC section of the Instructions for Adept Utility Programs manual. The default setting is correct for most applications.

Brake Release Button

Adept Cobra and Quattro robots contain a built-in brake release button. Adept Viper-series robots use an optional brake release box.

If this button is pressed while High Power is on, High Power will automatically shut down.

4.4 Commissioning the System

Turning on the robot system for the first time is known as “commissioning the system.” You must follow the steps in this section to safely bring up your robot system. The steps include:

• Verifying installation, to confirm all tasks have been performed correctly

• Starting up the system by turning on power for the first time

• Verifying all E-Stops in the system function correctly

• Moving each axis of the robot with the user-supplied PLC interface to confirm it moves in the proper directions

Verifying Installation

Verifying that the system is correctly installed and that all safety equipment is working correctly is an important process. Before using the robot, make the following checks to ensure that the Adept robot and SmartController CX have been properly installed.

CAUTION: When the Brake Release button is pressed, the affected joint may drop to the bottom of its travel. To prevent possible injury to personnel or damage to the equipment, make sure that the robot is secured and/or supported before releasing the brakes. See your Adept robot user’s guide for more details.

DANGER: After installing the robot, you must test it before you use it for the first time. Failure to do this could cause death, serious injury or equipment damage.

32 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 33: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Commissioning the System

Mechanical Checks

• Verify that the robot is mounted correctly and that all fasteners are properly installed and tightened.

• Verify that any end-of-arm tooling is properly installed.

• Verify that all other peripheral equipment is properly installed and in a state such that it is safe to turn on power to the robot system.

System Cable Checks

This section does not include PLC-only power cables, other than the ground. Refer to the PLC’s user guide for details.

Verify the following connections:

• Front Panel to the SmartController CX. See the Adept robot user’s guide for details.

• User-supplied 24 VDC power to the SmartController CX. For details, see the Adept SmartController User’s Guide.

• User-supplied ground wire to the SmartController CX.

• PLC to the SmartController CX. For details, see “Cable Connections from the PLC to the SmartController CX” on page 27.

• User-supplied PLC to either user-supplied PLC Interface or user-supplied PC. For details, see the PLC documentation.

• User-supplied ground wire to the PLC.

• User-supplied AC power to the robot. For details, see the Adept robot user’s guide.

• User-supplied 24 VDC power to the Adept robot, if needed.

• User-supplied ground wire to the Adept robot.

• Cable connections between the Adept robot and SmartController CX. For details, see “Cable Connections from the Robot to the SmartController CX” on page 26.

• User-supplied 24 VDC power to the SmartVision EX, if installed. For details, see the Adept SmartVision EX User’s Guide.

• User-supplied ground wire to the SmartVision EX, if installed.

• Ethernet to the SmartVision EX, if installed.

• User-supplied camera to the SmartVision EX, if installed.

User-Supplied Safety Equipment Checks

Verify that all user-supplied safety equipment and E-Stop circuits are installed correctly.

System Start-up Procedure

Once the system installation has been verified, you are ready to start up the system.

1. Switch on the system AC power.

2. If applicable, switch on the 24 VDC power to the Adept robot.

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 33

Page 34: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Robot Operation

3. Switch on the 24 VDC power to the SmartController CX. The ePLC Connect software will start automatically when the SmartController CX startup has completed.

4. Switch on the 24 VDC power to the SmartVision EX, if installed.

If 24 VDC is being obtained from the SmartController, this was turned on in the previous step.

You can configure the AdeptSight software to automatically start and load a vision application when the SmartVision EX startup has completed. For details, see the AdeptSight User’s Guide.

5. Switch on the user-supplied PLC and any optional user-supplied equipment.

6. Wait for the system to complete the boot cycle.

7. The system is ready for operation.

Verifying E-Stop Functions

Verify that all E-Stop devices are functional (Front Panel and user-supplied). Test each mushroom button, safety gate, light curtain, etc., by enabling High Power and then opening the safety device. The High Power push button/light on the Front Panel should go out for each device.

34 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 35: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Programming the Robot 55.1 ePLC Connect Software Overview

The ePLC Connect software communicates with the user-supplied PLC to exchange data for executing robot motions and setting discrete outputs. The ePLC Connect software allows the programmer to use the familiar PLC software environment to program the robot by loading the PLC registers. Programs can be created using Ladder Diagram, Structured Text, Sequential Function Chart, or Function Block Diagram formats.

Through its Ethernet connection, the ePLC Connect software reads the command registers on the PLC, executes the command, and returns the current state of the robot. While the Ethernet/IP protocol consists of both explicit and implicit messaging, the ePLC Connect software only uses implicit (I/O) messaging to exchange the necessary data to command robot motion. As a result, only RSLogix5000-based PLCs are supported (ControlLogix, CompactLogix, etc.). The SLC, MicroLogix, and PLC5 families are NOT supported.

Each robot must have both a command and status user-defined data structure (UDT) supplied by Adept. These UDTs consist of the following data types:

• BOOL

• INT

• DINT

• STRING

• REAL

Note that all information is exchanged between the PLC and the SmartController CX as SINT (Signed-integer, 8-bit format) data. The command UDT is copied to the Assembly Object Output block (created during the PLC setup). Likewise, the Assembly Object Input block is copied to the status UDT.

CAUTION: Do not modify these UDTs, as this will result in unpredictable system behavior.

CAUTION: The UDT definitions have changed from ePLC Connect 1.0 to ePLC Connect 2.0. You must update the definitions in order for the application to work properly.

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 35

Page 36: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Programming the Robot

5.2 Initializing the System

This section describes the procedure for initializing the system.

Install the Software and Configure the Controller IP Address

The PLC and the SmartController must have compatible IP addresses, on the same network and with the same subnet masks, to communicate with each other.

The easiest way to match them is by changing the SmartController’s address, using a PC attached to the SmartController. Instructions for doing this follow.

NOTE: If you prefer, you can change the IP address of the PLC to match the default IP address of the SmartController. Instructions for the setting the PLC’s addresss would have to be obtained from the PLC user’s guide.

1. Disconnect power from the controller. Check that the Adept-supplied CompactFlash, included with the controller, is installed in the controller. See the SmartController User's Guide for details.

2. Verify that the controller DIP switch (SW1, located on the front of the SmartController chassis) is set to the following:

3. Connect the Adept controller and a user-supplied PC using the Adept-supplied crossover cable. Optionally, you can connect the PC to the controller using a network switch and two Ethernet cables.

4. Install the Adept ACE software onto the PC.

The Adept ACE software is included in the Adept ACE kit that shipped with your Adept robot. See your Adept robot user’s guide for details.

5. Obtain the network settings (IP address and subnet mask) of the PLC. Use that information to determine the appropriate network settings for the SmartController CX in Step 6.

NOTE: To establish an Ethernet connection, the SmartController CX and PLC must be on the same network.

6. Based on the PLC’s IP address and subnet mask from the previous step, define a controller IP address, which will be configured in Step 7.

If the PLC’s IP address is 192.9.225.80 and the subnet mask is 255.255.255.0, then the common network number is 192.9.225.xxx.

SW1 SW2 SW3 SW4

OFF OFF OFF OFF

CAUTION: Do not use a crossover cable with a network switch unless it has an auto-sensing feature.

36 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 37: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Initializing the System

In this case, the controller’s IP address should be defined as 192.9.225.xxx, where xxx is a number between 0 and 255 that defines a unique IP address on the network.

The controller’s subnet mask must match the PLC’s (in this case, 255.255.255.0).

NOTE: If your controller will be connected to your corporate network, you may need to contact your network administrator to obtain a controller IP address.

7. Start the Adept ACE software by selecting

Start > Programs > Adept Technology > Adept ACE > Adept ACE

from the Windows task bar, or double-clicking the Adept ACE icon on the Windows desktop. The Adept ACE Startup dialog box opens.

Figure 5-1. Initial Adept ACE Startup Dialog

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 37

Page 38: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Programming the Robot

8. On the Adept ACE Startup dialog box, click the Search ( ) icon. The Controller IP Address Configuration dialog box opens.

Figure 5-2. Controller IP Address Configuration

38 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 39: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Initializing the System

9. Start the Adept controller. After the controller start-up completes, the IP address will be detected and displayed in the Controllers Detected field.

Figure 5-3. Controller IP Address Configuration, after Controller Start-up

10. Enter the desired IP address and desired subnet mask into the corresponding fields.

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 39

Page 40: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Programming the Robot

11. Click OK to restart the controller. The controller restarts and the new IP address and subnet mask are assigned. After the controller restarts, the Adept ACE Startup dialog box opens with the assigned controller IP address.

Figure 5-4. Adept ACE Startup Dialog

Set and Verify the PLC Communications

This section describes how to verify communications between the PLC and the SmartController CX.

1. Make sure the user-supplied PC is connected to the same network that the PLC and SmartController CX are using.

2. Open the RSLogix5000 software.

40 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 41: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Initializing the System

3. Verify that the controller is visible using the Who Active utility.

a. From the RSLogix5000 menu, select Communications >Who Active.

b. Locate the Adept controller on the list, as shown in the following figure.

Figure 5-5. RSLogix5000 Who Active Utility

Add the Ethernet I/O Configuration to the PLC Project

After communications have been verified, if you do not have the Ethernet hardware in your system, as shown in Figure 5-6, you will need to add it to your system.

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 41

Page 42: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Programming the Robot

To add Ethernet I/O to the PLC Project

1. Right-click on the I/O Configuration folder

Figure 5-6. I/O Configuration Folder

42 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 43: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Initializing the System

2. Add the Ethernet hardware, as shown in the following figure.

Figure 5-7. Selecting the 10/100 Ethernet Bridge Configuration

3. Configure the settings for your network.

Create and Configure a New Generic Ethernet Module

This section describes how to create and configure a new generic Ethernet program module. This example assumes the module name is Adept_Robot.

1. Right click on the Ethernet hardware added in the previous step and select New Module. This displays the Select Module Type dialog.

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 43

Page 44: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Programming the Robot

2. From the Select Module Type dialog, select the Generic Ethernet Module and click OK to save the selection. The Module Properties dialog is opened.

Figure 5-8. Selecting the Generic Module

3. Using the Module Properties dialog, configure the Generic Module.

a. Set the name to Adept_Robot.

b. Set the IP Address to the value set on page 37.

c. Set the COMM Format to DATA - SINT.

d. Set the Connection Parameters.

If not using AdeptSight software:

If using with AdeptSight software:

Input Assembly Instance: 1 Size: 188 bytes

Output Assembly Instance: 2 Size: 156 bytes

Configuration Assembly Instance: 3 Size: 0 bytes

Input Assembly Instance: 1 Size: 228 bytes

Output Assembly Instance: 2 Size: 164 bytes

Configuration Assembly Instance: 3 Size: 0 bytes

44 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 45: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Initializing the System

Figure 5-9. Module Properties (no Vision) - Name and Ethernet Properties

Figure 5-10. Module Properties (with Vision) - Name and Ethernet Properties

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 45

Page 46: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Programming the Robot

4. Click Apply to display the current Requested Packet Interval (RPI) setting. Set the RPI value to 8 ms.

Figure 5-11. Module Properties - RPI

46 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 47: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Initializing the System

5. Click Finish to complete the module configuration. The new module is listed in the I/O Configuration folder.

Figure 5-12. Adept_Robot Ethernet Module

Add the UDT Definitions to the Module

This section describes the procedure for adding the UDT definitions to the new module. The following steps require the Adept ePLC Connect sample code, which is available from the Download Center on the Adept website. It is highly recommended that this approach be followed to ensure that the data structures are properly created.

WARNING: The UDT definitions must be identical to those used in the example code. Otherwise, data corruption and unexpected robot behavior may result.

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 47

Page 48: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Programming the Robot

1. Download the Adept ePLC Connect sample code from the Download Center on the Adept website. There are separate examples for applications with and without vision. The Download Center can be accessed at the following URL:

http://www.adept.com/support/downloads.asp

Search on ePLC to find the sample code.

2. Open the desired sample code in the RSLogix5000 software.

3. Copy the Joint UDT definitions from the sample code and paste them into the new project file.

Figure 5-13. Adept_Example Joint UDT Definitions

4. Repeat Step 3 for the following UDT definitions:

• Coordinate UDT definitions

• Command UDT definitions

• Status UDT definitions

Adding the UDTs to the Tags Folder

This section describes how to add the Command and Status UDTs to the desired Tags folder. This example assumes the folder is named Robot_Command.

48 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 49: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Initializing the System

1. Open the new project file in the RSLogix5000 software.

2. Create a Command UDT in the desired Tags folder.

3. Create a Status UDT in the desired Tags folder.

Figure 5-14. Controller Tags

4. When downloaded and running on the PLC, the data exchanged through Ethernet/IP originates in the Adept_Robot:O and Adept_Robot:I tags. Therefore, it is necessary to add a rung which:

• copies the data from the Robot_Command tag, and

• copies the data to the Robot_Status tag.

See the example rung below, which illustrates how to copy the data.

Figure 5-15. Example Rung without Vision

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 49

Page 50: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Programming the Robot

Figure 5-16. Example Rung with Vision

NOTE: This rung must be executed at least twice as often as the Adept_Robot RPI (in this example, the Adept_Robot RPI is set to 8 ms).

NOTE: The PLC must be in Run mode for the data to be exchanged. If it is not in Run mode, robot commands will not be executed and status information will not be updated.

You are now ready to complete your program and download it to the PLC. See the following sections for Adept ePLC Connect programming information and available commands.

5.3 PLC Software Overview

The ePLC Connect software uses PLC registers for two types of data: command and status. These are described in detail in the following sections.

The Command UDT determines the functions performed by the Adept robot. For example, if Robot_Command.cmd_high_power=1, the ePLC Connect software will attempt to enable robot high power. The Status registers reflect the current state of the ePLC Connect software and robot. For example, if Robot_Status.fault_state=1, the ePLC Connect software is in a fault state. The registers with real-value format contain floating-point data that define the location, pallet and motion parameters.

This section describes the command and status registers, their associated data types, and their functionality.

More theory about these commands is provided in Chapter 7.

Commands

The following tables and sections describe the available robot commands.

Table 5-1. Command Classifications

Command Data Type Function

cmd_* BOOL Instruction command(see Table 5-2 on page 55)

jog_* BOOL Jog Mode command(see Table 5-4 on page 58)

50 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 51: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

PLC Software Overview

Robot_Command.speed determines the motion speed. This value should be greater than 0, unless the jog mode is being used. While jogging, the speed parameter must be in the range of -127 to 127.

Robot_Command.acceleration/deceleration determines the rate-of-speed change at the beginning and end a motion.

Robot_Command.acceleration_profile selects the acceleration profile that will be used to start and end the motion. When set to zero, the trapezoidal profile is used The trapezoidal profile consists of a constant acceleration to the steady-state transit speed, followed by a constant deceleration to the motion endpoint. When set to a value greater than zero, the S-curve profile is used. The S-curve profile uses soft transitions between each element. It consists of: stopped to acceleration ramp; acceleration ramp to steady-state transit speed; steady-state transit speed to deceleration ramp; and deceleration to motion end point. The trapezoidal and S-curve profiles are shown in Figure 5-17.

Robot_Command.approach_height specifies the Z-axis offset for a motion.

Robot_Command.location_number determines which position will be the robot destination. If non-zero, the location must have been previously defined using Robot_Command.cmd_location_define. If zero, then the current values of Robot_Command.location.<X, Y, Z, Yaw, Pitch, or Roll> are used. The location number can range from 0 to 999 if no vision is being used, or 0 to 1007 if vision is being used. See Table 5-6 on page 61.

out_* BOOL Output Signals command(see Table 5-3 on page 57)

Motion Qualifier Bits BOOL Motion Qualifier command(see Table 5-5 on page 59)

speed INT Motion/Jog speed

acceleration INT Motion acceleration

deceleration INT Motion deceleration

acceleration_profile INT S-curve profile

approach_height REAL Approach height

location INT Location number

pallet_* INT Pallet descriptions(see Table 5-7 on page 61)

speed_limit INT Sets maximum joint speed

mcp_* Various Manual Control Pendant(see Table 5-15 on page 70)

vis_* Various Vision commands(see Table 6-1 and Table 6-2 on page 83)

Command Data Type Function

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 51

Page 52: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Programming the Robot

Robot_Command.pallet_number specifies which pallet is to be used. It can range from 0 to 100. If no pallet operation is being performed, this must be set to 0.

Robot_Command.speed_limit allows the user to specify the maximum joint speed limit (as a percentage of nominal). If the limit is exceeded, a "*Maximum setpoint speed or accel exceeded*" (-928) error is reported. This functionality can be disabled by setting the value to 0.

Figure 5-17. S-Curve versus Trapezoid Acceleration Profile

Moving the Robot

This section describes the “typical” steps for moving the robot for “end-of-motion” operations. The method described here is useful when the robot must be stopped at the end of each motion to perform some operation (such as opening or closing a gripper).

NOTE: If you are not moving relative to a pallet (not performing a “pallet motion”) the value for Robot_Command.pallet_number must be 0.

1. Load Robot_Command.speed with the motion speed.1

2. Load Robot_Command.acceleration, Robot_Command.deceleration, and Robot_Command.acceleration_profile with the motion acceleration parameters.1

3. Load Robot_Command.location_number with the number of the location to be moved to (see page 61 for details). If this tag has a value of 0, then the values of Robot_Command.location.<X, Y, Z, Yaw, Pitch, or Roll> are used as the coordinates. If this tag is greater than 0, then the location must be previously defined. See Table 5-6 on page 61.

4. Enable/disable the motion qualifier bits (relative_move, joint_coordinates, righty_configuration, etc.) as desired for the motion (see page 59 for details).

5. Enable the bit Robot_Command.cmd_move to start the motion (see page 55 for details).

1 There are no default values for the motion speed and acceleration/deceleration. If moving to a taught location, an error will occur if a value that is less than or equal to 0 is entered. Additionally, if you specify a very low motion speed, it may take a long time for the robot to get to the requested position. Refer to page 85 for more information on speed and acceleration.

52 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 53: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

PLC Software Overview

6. Wait for the bit Robot_Status.command_execution_state to go high, indicating the motion has started.

7. Disable the Robot_Command.cmd_move bit.

8. Wait for the Robot_Status.command_execution_state bit to go low, indicating the cmd_move bit has been turned off.

9. Wait for the Robot_Status.in_position_state bit to go high, indicating the robot is in position.

Moving the Robot Using Continuous Path

This method describes the procedure for continuous-path movement. This method minimizes motion times because the robot does not decelerate, stop, and accelerate between moves. See “Continuous-Path Motion” on page 87 for information on continuous paths.

1. Load Robot_Command.speed with the motion speed.1

2. Load Robot_Command.acceleration, Robot_Command.deceleration, and Robot_Command.acceleration_profile with the motion acceleration parameters.1

3. Load Robot_Command.location_number with the number of the location to be moved to (see page 61 for details). If this tag has a value of 0, then the values of Robot_Command.location.<X, Y, Z, Yaw, Pitch, or Roll> are used as the coordinates. If this tag is greater than 0, then the location must be previously defined. See Table 5-6 on page 61.

4. Enable/disable the motion qualifier bits (relative_move, joint_coordinates, righty_configuration, etc.) as desired for the motion (see page 59 for details). Robot_Command.nonull must be enabled to allow blending of motions.

5. Enable the Robot_Command.cmd_move bit to start the motion (see page 55 for details).

6. Wait for the Robot_Status.command_execution_state bit to go high, indicating the motion has started.

7. Disable the Robot_Command.cmd_move bit.

8. Wait for the Robot_Status.command_execution_state bit to go low, indicating the cmd_move bit has been turned off.

9. Start the next motion at Step 1.

Moving the Robot Using the Jump Command

This section describes the steps for moving the robot using the Jump command. The method described here “streamlines” a three-motion pick-and-place operation into a single command. The Current Motion Counter status word is incremented only once for the Jump command. Therefore, it is not possible to determine which of the three motion segments have begun, rather, only if the Jump command has begun. If your application requires that you know when each move segment has completed, please see “Moving the Robot Using Continuous Path” for more details.

1There are no default values for the motion speed and acceleration/deceleration. If moving to a taught location, an error will occur if a value that is less than or equal to 0 is entered. Additionally, if you specify a very low motion speed, it may take a long time for the robot to get to the requested position. Refer to page 85 for more information on speed and acceleration

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 53

Page 54: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Programming the Robot

When using the Jump command to move the robot, please note the following (see Figure 5-18 on page 55):

• The motion always finishes at the specified end location (approach height of 0).

• The nulling bit (Robot_Command.nonull) determines whether or not corner rounding will be done after the depart and approach motions. The motion to the final position is always nulled (with the precision specified by the Robot_Command.coarse_nulling bit).

• The speed and acceleration parameters are the same for each of the three motion segments.

• The approach height also determines the depart height. In other words, if an approach height of 50 mm is specified, the depart height will also be 50 mm.

Approach height 0 is a special case that is permitted only for SCARA robots (or any robot with a constant maximum Z-height over the entire robot workspace). If the approach height is specified as 0, the robot will depart to the maximum height, approach at this same height, and finish at the destination location.

NOTE: For robots without a constant Z-height (such as a six-axis robot), an error will occur if the approach height is specified as 0.

• An absolute approach height is allowed, which commands the robot to depart to the specified World Z-height, approach at this same height, and finish at the location.

• The Jump command can be used to access a pallet position.

To use the Jump command to move the robot:

1. Load Robot_Command.speed with the motion speed.1

2. Load Robot_Command.acceleration, Robot_Command.deceleration, and Robot_Command.acceleration_profile with the motion acceleration parameters.1

3. Load Robot_Command.location_number with the number of the location to be moved to (see page 61 for details). If this tag has a value of 0, then the values of Robot_Command.location.<X, Y, Z, Yaw, Pitch, or Roll> are used as the coordinates. If this tag is greater than 0, then the location must be previously defined. See Table 5-6 on page 61.

4. Enable/disable the motion qualifier bits (relative_move, joint_coordinates, righty_configuration, etc.) as desired for the motion (see page 59 for details).

5. Enable the bit Robot_Command.cmd_jump (Jump command) to start the motion.

6. Wait for the bit Robot_Status.command_execution_state to go high, indicating the motion has started.

7. Disable the Robot_Command.cmd_jump bit.

8. Wait for the Robot_Status.command_execution_state bit to go low, indicating the cmd_jump bit has been turned off.

1 There are no default values for the motion speed and acceleration/deceleration. If moving to a taught location, an error will occur if a value that is less than or equal to 0 is entered. Additionally, if you specify a very low motion speed, it may take a long time for the robot to get to the requested position. Refer to page 85 for more information on speed and acceleration.

54 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 55: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

PLC Software Overview

9. Wait for the Robot_Status.in_position_state bit to go high, indicating the robot is in position.

Figure 5-18. Motion Profile for the Jump Command

Instruction Commands

The table below describes the Instruction commands.

Table 5-2. Instruction Commands

Command Data Type Description

cmd_high_power BOOL Enable robot high power

cmd_stop_on_input BOOL Update current position

cmd_brake BOOL Stop current motion

cmd_read_latch BOOL When enabled, the robot coordinates are returned when a latch occurs.

cmd_stop_pos_update BOOL Enable to stop current position updates (must disable bit to teach locations)

cmd_reset BOOL Reset fault condition

cmd_calibrate BOOL Calibrate robot

cmd_jog BOOL Enable jog mode

cmd_align BOOL Align robot

cmd_move BOOL Move robot

START

END

Corner roundingDepart and

approach heights are equal.

Motion finishesat End point (no Depart)

DEP

AR

T

APPROACH

MO

VE

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 55

Page 56: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Programming the Robot

The first five elements of the table can be on or off regardless of the settings of the other command-word bits. However, only one of remaining bits can be on at the same time. Otherwise, a –3007 error will occur (see Section 8.1 on page 97).

Robot_Command.cmd_high_power attempts to enable robot high-power, if the system is not in a fault state. If faulted, this bit will have no effect. This bit must be latched on for high-power to be maintained.

Robot_Command.cmd_stop_on_input bit configures to system to stop the robot if the latch signal changes state. The robot will stop immediately (no deceleration) when the latch occurs. To use this feature, the V+ system must be configured so that the robot responds to a latch input.

Robot_Command.cmd_brake cancels the current motion and decelerates the robot to a stop. If another motion is queued when the brake command is given, that motion begins immediately.

Robot_Command.cmd_reset resets the ePLC Connect software if it is in a fault state. The current error message and error number tags are cleared by this reset command.

Robot_Command.cmd_calibrate requests calibration of the robot if the system is not faulted and if robot high power is on.

Robot_Command.cmd_jog allows the user to move the robot like a pendant. It can be used along with an HMI to create a teach interface. See the section “Jog Mode Commands” on page 58 for more details.

Robot_Command.cmd_align will move the robot so that the tool Z is aligned with the nearest World axis.

Robot_Command.cmd_move will move the robot. See the section See the section “Moving the Robot” on page 52 for more details.

Robot_Command.cmd_jump performs a depart, approach, and move to a location. See the section “Moving the Robot Using the Jump Command” on page 53 for more details.

Robot_Command.cmd_location_define downloads the Robot_Command.location coordinates to the Adept controller memory. Locations must be downloaded each time the Adept controller is restarted (indicated by the Robot_Status.system_initialized_state bit becoming true).

Robot_Command.cmd_pallet_define downloads the data necessary to define a pallet frame. The referenced location numbers must be downloaded before the pallet can be used in a motion.

cmd_jump BOOL Jump command

_cmd_reserved_bit_2 BOOL RESERVED

_cmd_reserved_bit_3 BOOL RESERVED

cmd_location_define BOOL Define location

cmd_pallet_define BOOL Define pallet

cmd_tool_invoke BOOL Invoke tool offset

Command Data Type Description

56 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 57: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

PLC Software Overview

Robot_Command.cmd_tool_invoke downloads the Robot_Command.location coordinates and creates a new tool center point. This function is useful for offset grippers so that motions are relative to the end-effector instead of the robot tool flange. When invoked, the Robot_Status.tool_mode_state bit is high.

Output Signals Commands

The table below describes the Output Signals commands.

Table 5-3. Output Signals Commands

The XDIO connector is located on the front of the SmartController CX. See Section 3.8 on page 29 for detailed wiring information. The gripper signals (3001 and 3002) are part of an optional solenoid kit that can be purchased from Adept (see your robot user’s guide for details).

Output Signal Data Type Function

out_signal_1 BOOL XDIO Output 1

out_signal_2 BOOL XDIO Output 2

out_signal_3 BOOL XDIO Output 3

out_signal_4 BOOL XDIO Output 4

out_signal_5 BOOL XDIO Output 5

out_signal_6 BOOL XDIO Output 6

out_signal_7 BOOL XDIO Output 7

out_signal_8 BOOL XDIO Output 8

out_signal_3001 BOOL Gripper Output 3001a

a Requires the optional Solenoid Kit. See your robot user’s guide for details.

out_signal_3002 BOOL Gripper Output 3002a

out_signal_3003 BOOL Gripper Output 3003b

b Requires user-supplied equipment. See your robot user’s guide for details.

out_signal_3004 BOOL Gripper Output 3004b

_out_reserved_bit_1 BOOL RESERVED

_out_reserved_bit_2 BOOL RESERVED

_out_reserved_bit_3 BOOL RESERVED

_out_reserved_bit_4 BOOL RESERVED

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 57

Page 58: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Programming the Robot

Jog Mode Commands

The table below describes the Jog Mode commands.

Table 5-4. Jog Mode Commands

Only one of the jog-mode bits (bits 0-3) can be on at the same time. When World, Tool, or Joint mode is selected, only one joint or axis bit (bits 6-11) can be selected. In Free mode, multiple joints or axes can be selected.

In jog mode, the motion speed parameter may have a value from –127 to 127 (the sign determines the direction of motion). The value 0 stops the motion. A value outside of –127 to 127 generates a fault. See “Speed, Acceleration, and Deceleration” on page 85 for more information.

Jog Mode Command Data Type Function Description

jog_world_mode BOOL Enable World mode Bit on: Jog axis in World mode

jog_tool_mode BOOL Enable Tool mode Bit on: Jog axis in Tool mode

jog_joint_mode BOOL Enable Joint mode Bit on: Jog axis in Joint mode

jog_free_mode BOOL Enable Free mode Bit on: Put axis in Free mode

_jog_reserved_bit_1 BOOL RESERVED

_jog_reserved_bit_2 BOOL RESERVED

jog_joint_1_or_x_axis BOOL Joint 1/X-axis Bit on: Select joint 1 or X-axis for jogging

jog_joint_2_or_y_axis BOOL Joint 2/Y-axis Bit on: Select joint 2 or Y-axis for jogging

jog_joint_3_or_z_axis BOOL Joint 3/Z-axis Bit on: Select joint 3 or Z-axis for jogging

jog_joint_4_or_yaw_angle BOOL Joint 4/Yaw-angle Bit on: Select joint 4/Yaw-angle for jogging

jog_joint_5_or_pitch_angle BOOL Joint 5/Pitch-angle Bit on: Select joint 5/Pitch-angle for jogging

jog_joint_6_or_roll_angle BOOL Joint 6/Roll-angle Bit on: Select joint 6/Roll-angle for jogging

_jog_reserved_bit_3 BOOL RESERVED

_jog_reserved_bit_4 BOOL RESERVED

_jog_reserved_bit_5 BOOL RESERVED

_jog_reserved_bit_6 BOOL RESERVED

58 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 59: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

PLC Software Overview

Motion Qualifier Commands

The table below describes the Motion Qualifier commands.

Table 5-5. Motion Qualifier Commands

The motion qualifier bits are used to define the characteristics of the next motion whenever a move command (Robot_Command.cmd_move) or jump command (Robot_Command.cmd_jump) is given. Any combination of these bits can be set.

Robot_Command.relative_move determines if the motion is to absolute coordinates or relative to the robot's current position. For relative motion, the coordinates of the specified destination location are added to the current position. Thus, this type of motion is relative to absolute Cartesian coordinates, not relative to the tool.

Robot_Command.joint_coordinates determines whether the component values of the location that is referenced by the Location Number (Robot_Command.location_number) are Cartesian or joint coordinates.

Robot_Command.approach_at_absolute determines the effect of the approach-height value (Robot_Command.approach_height), as follows:

• If this bit is off, the next motion will approach the location with this Z offset from the defined location.

• If this bit is on, the next motion moves to the specified destination location using this absolute Z value, based on the World coordinate system. That is, the Z component of the location definition will be ignored.

NOTE: This overrides the setting of the relative_move bit.

See page 86 for more details on approach and depart; see page 89 for more details on the World Coordinate System.

Motion Qualifier Command

Data Type

Bit On Bit Off

relative_move BOOL Relative motion Absolute motion

joint_coordinates BOOL Joint coordinates Cartesian coordinates

straightline_move BOOL Straight-line motion Joint motion

approach_at_absolute BOOL Absolute approach height Relative approach height

nonull BOOL No-null after motion Null after motion

coarse_nulling BOOL Coarse nulling tolerances Fine nulling tolerances

single_turn BOOL Single-turn wrist Multiple-turn wrist

righty_configuration BOOL Righty arm configuration Lefty arm configuration

below_configuration BOOL Below arm configuration Above arm configuration

flip_configuration BOOL Flip arm configuration No-flip arm configuration

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 59

Page 60: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Programming the Robot

Robot_Command.straightline_move determines if the motion will be joint-interpolated or straight-line. If straight-line motion is chosen, it is not possible to change the arm configuration during the motion (see the Robot_Command.righty_configuration, Robot_Command.below_configuation, and Robot_Command.flip_configuration bits).

When Robot_Command.nonull is off, continuous-path motion is disabled, and the robot will null at the destination before the next motion is planned. This could increase cycle time. Enabling this bit will allow the ePLC Connect software to blend motions (i.e., round corners between motion segments), assuming that the next motion is commanded in sufficient time before the current motion completes.

Robot_Command.coarse_nulling, which is used only when Robot_Command.nonull is off, determines the nulling tolerances that will apply at the end of the motion. Fine (coarse_nulling off) specifies tighter settling precision than coarse.

Robot_Command.single_turn off allows full rotations of the robot wrist joints (joint 4 on an Adept Cobra robot). Enabling this bit limits rotations of the wrist joints to the range ±180 degrees.

The final three motion qualifier bits determine the arm configuration that is to be achieved during the motion. For the Adept Cobra robot, only Robot_Command.righty_configuration has any effect. The arm configuration cannot be changed during a straight-line motion (see Robot_Command.straightline_move). Note that these bits have no effect if Robot_Command.joint_coordinates is enabled.

When a motion is commanded, the speed and acceleration parameters must be greater than 0 (except that a negative speed is valid for a jog-mode motion). Otherwise, an error will be returned. There are no default values. If moving to taught location and the location number is less than 0, an error will occur. Additionally, if you specify a very low motion speed, it may take a long time for the robot to get to the requested position. Refer to page 85 for more information on speed and acceleration.

NOTE: When Robot_Command.location_number is set to 0, the current values of Robot_Command.location.<X, Y, Z, Yaw, Pitch, or Roll> are used as the coordinates. If this tag is greater than 0, then the location must be previously defined. See Table 5-6 on page 61. An error will be generated if an attempt is made to define location 0 using Robot_Command.cmd_location_define.

If the motion destination is defined relative to a pallet, the pallet-number parameter (Robot_Command.pallet_number) determines the pallet to which the location will be relative. The position index (Robot_Command.pallet_index) value is used to determine the destination location within the pallet. When using a pallet, the coordinates specified by Robot_Command.location_number are added to the pallet frame position. It is highly recommended that Robot_Comment.location_number be set to 0 and that all Robot_Command.location.<X, Y, Z, Yaw, Pitch, Roll> values be cleared (set to 0).

Location Definitions

Location is defined as data type Coordinates in the UDT. This section describes the Location components and the steps used for defining a location in the ePLC Connect software. All location data is stored in the PLC. It must be read by the ePLC Connect software for use.

60 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 61: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

PLC Software Overview

Table 5-6. Location Definitions

To define a location in the ePLC Connect software:

1. Enter the appropriate coordinates into the tags listed in Table 5-6. See “Defining a Location” on page 90 for more details on defining locations.

2. Enter the number of the location to be defined into Robot_Command.location_number.

3. Turn on the “define location” command bit (Robot_Command.cmd_location_define)

4. Wait for the “command executing” bit to be set (Robot_Status.command_execution_state).

5. Turn off the “define location” command bit.

6. Repeat steps 1 - 5 for each location you wish to define.

NOTE: Location 0 and locations 1000-1007 cannot be redefined.

Pallet Definitions

This section describes the Pallet tags and the steps used for defining a pallet.

Table 5-7. Pallet Definitions

Location Component Data Type Description

location.X REAL X-axis coordinate or Joint-1

location.Y REAL Y-axis coordinate or Joint-2

location.Z REAL Z-axis coordinate or Joint-3

location.Yaw REAL Yaw-angle coordinate or Joint-4

location.Pitch REAL Pitch-angle coordinate or Joint-5

location.Roll REAL Roll-angle coordinate or Joint-6

Pallet Tag Data Type Description

pallet_starting_location INT Location number for pallet starting position (position index=1).See location “A” in Figure 5-19.

pallet_location_in_1st_row INT Location number for last position in the origin row.See location “B” in Figure 5-19.

pallet_location_last_row INT Location number for any position in the pallet’s last row.See location “C” in Figure 5-19.

pallet_positions_in_1st_row INT # of positions in the first row

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 61

Page 62: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Programming the Robot

Table 5-8. Pallet Row Configurations

When defining a pallet, please note the following:

• The first position in the pallet is position 1 (not 0).

• The even-numbered rows, if offset, are always offset by half the distance between positions in a row.

• The traversal direction value (Robot_Command.pallet_s_traversal) can be either 0 or 1. If the value is 0, the rows are all traversed in the same direction. If the value is 1, the even-numbered rows are traversed in the direction opposite that of the odd-numbered rows.

• The spacing between rows is constant for all rows (odd-numbered and even-numbered).

To define a pallet in the ePLC Connect software:

1. Enter the pallet location parameters and pallet spacing parameters into the tags listed in Table 5-7. See “Defining a Pallet Layout” on page 93 for details on defining a pallet.

2. Enter the number of the pallet to be defined into Robot_Command.pallet_number.

3. Turn on the “define pallet” command bit (Robot_Command.cmd_pallet_define)

4. Wait for the “command executing” bit to be set (Robot_Status.command_execution_state).

5. Turn off the “define pallet” command bit.

pallet_number_of_rows INT Total number of rows

pallet_configuration INT Type of row configuration (see Table 5-8 and Figure 5-20)

pallet_s_traversal INT Traversal direction, 0 or 1 (see Figure 5-19)

Configuration Code

Offset to Even-Numbered Row

# Positions in Even-Numbered Row

0 None = odd_row

1 –0.5*position spacing = odd_row

2 +0.5*position spacing = odd_row

3 –0.5*position spacing = odd_row +1

4 +0.5*position spacing = odd_row – 1

The following row configurations are not supported:

-0.5*position spacing = odd_row – 1

+0.5*position spacing = odd_row + 1

Pallet Tag Data Type Description

62 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 63: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

PLC Software Overview

Figure 5-19. Traverse Direction

NOTE: 1. The spacing between parts and the spacing between rows is automatically calculated using the locations supplied.2. The initial traverse direction is always from A to B.3. When defining the pallet, if location C is taught on the same line (row) as A and B, an error will be reported. In the case of a single-row pallet, location C must be the same as location B.

A Origin B Last location

in origin row

Traverse Dir. = 1

A B

C

Traverse Dir. = 0

Start Start

C Location in last

row of pallet

A B

C

1 2 3 4 5

11 12 13 14 15

21 22 23 24 25

678910

1617181920

1 2 3 4 5

11 12 13 14 15

21 22 23 24 25

6 7 8 9 10

16 17 18 19 20

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 63

Page 64: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Programming the Robot

Figure 5-20. Pallet Configuration Codes

Manual Control Pendant Functions

The Manual Control Pendant (MCP) functions allow the user to display custom messages on an optional MCP. The table below describes the MCP functions.

A B

C

A B

C

BA

C

A B

C

A B

C

A Origin

B Last location in

origin row

Config. Code = 0

Config. Code = 1 Config. Code = 2

Config. Code = 3 Config. Code = 4

C Location in last

row of pallet

64 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 65: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

PLC Software Overview

NOTE: The predefined pendant function keys: RUN/HOLD, PROG SET, CMD, and EDIT, cannot be used.

Table 5-9. MCP Functions

Vision Commands

Because vision is an option, these commands are covered in “Commands” on page 82.

Status Tags

The tables and sections below describe the Status tags.

Table 5-10. Status Tags

Command Bits Data Type Description

mcp_led_1 BOOL Turns soft LED 1 on or off

mcp_led_2 BOOL Turns soft LED 2 on or off

mcp_led_3 BOOL Turns soft LED 3 on or off

mcp_led_4 BOOL Turns soft LED 4 on or off

mcp_led_5 BOOL Turns soft LED 5 on or off

mcp_message STRING Message to display on 2-line LCD. Maximum of 80 characters.

Status Tag Data Type Function

Main status bits BOOL Main status bits(see Table 5-11 on page 66)

input_* BOOL Inputs(see Table 5-12 on page 67)

Robot_Status.motion_counter Integer Current motion number(see “Current Motion Counter” on page 68)

state_1 INT Returns information about the overall robot state1

state_2 INT Returns information about the current or previous robot motion1

state_3 INT Returns information about the current manual control mode1

state_4 INT Returns information about the external Front Panel settings and other hardware status to be read by programs1

1. For details, see the description of the STATE real-valued function in the V+ Language Reference Guide. This manual is available in the Adept Document Library at http://www.adept.com/main/KE/DATA/adept_title_index.htm

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 65

Page 66: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Programming the Robot

Status Word Bit Definitions

The following table describes the Status word bit definitions.

Table 5-11. Main Status Bits

state_5 INT Returns information about the setting of the external Front panel keyswitch1

state_10 INT Returns the percentage of the current motion that has completed1

here Coordinates UDT Current position as cartesian coordinates(see Table 5-13 on page 68)

phere Joints UDT Current position as joint angles(see Table 5-13 on page 68)

latch_loc Coordinates UDT Position of robot at latched position in cartesian coordinates(see Table 5-13 on page 68)

mcp_* INT and BOOL MCP button status(see Table 5-15 on page 70)

error_message INT and String Error message(see “Error Tags” on page 69)

vis_* BOOL, Coordinates UDT, INT, and SINT

Returns information about the vision commands and queue data.(see Table 6-1 and Table 6-2 on page 83)

Status Word Data TypeState Description

Bit On Bit Off

power_state BOOL Robot power is on Robot power is off

fault_state BOOL System is faulted System is not faulted

calibrated_state BOOL Robot is calibrated Robot is not calibrated

system_initialized_state BOOL System is initialized

emergency_stop_state BOOL E-stop circuit is open E-stop circuit is closed

command_execution_state BOOL Command is executing

in_position_state BOOL Robot is in position

Status Tag Data Type Function

1. For details, see the description of the STATE real-valued function in the V+ Language Reference Guide. This manual is available in the Adept Document Library at http://www.adept.com/main/KE/DATA/adept_title_index.htm

66 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 67: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

PLC Software Overview

Input Word Bit Definitions

The following table describes the Input Word bit definitions.

Table 5-12. Input Word Bit Definitions

jog_mode_state BOOL Robot is being jogged with .cmd_jog

latched BOOL Robot latch occurred. This bit is only on for one packet interval. Therefore, it is necessary to record the latched position during this period.

tool_mode_state BOOL TOOL Invoked NULL TOOL

mcp_connected_state BOOL Manual control pendant connected

Manual control pendant unconnected

righty_configuration BOOL Robot has RIGHTY configuration

Robot has LEFTY configuration

below_configuration BOOL Robot has BELOW configuration

Robot has ABOVE configuration

flip_configuration BOOL Robot has FLIP configuration

Robot has NOFLIP configuration

system_heartbeat BOOL Toggles state to indicate active communications

ace_control_mode BOOL The Adept ACE software has control of the robot

PLC can control robot.

Input Word Data Type Description

input_1001 BOOL XDIO Input 1001

input_1002 BOOL XDIO Input 1002

input_1003 BOOL XDIO Input 1003

input_1004 BOOL XDIO Input 1004

input_1005 BOOL XDIO Input 1005

input_1006 BOOL XDIO Input 1006

Status Word Data TypeState Description

Bit On Bit Off

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 67

Page 68: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Programming the Robot

Current Motion Counter

The Current Motion Counter (Robot_Status.motion_counter) is incremented each time a motion begins. It can be used to determine that the previous commanded motion has started.

Current Position Array

The following table describes the Current Position array.

Table 5-13. Position Status

input_1007 BOOL XDIO Input 1007

input_1008 BOOL XDIO Input 1008

input_1009 BOOL XDIO Input 1009

input_1010 BOOL XDIO Input 1010

input_1011 BOOL XDIO Input 1011

input_1012 BOOL XDIO Input 1012

soft_signal_2001 BOOL V+ soft signal 2001

soft_signal_2002 BOOL V+ soft signal 2002

soft_signal_2003 BOOL V+ soft signal 2003

soft_signal_2004 BOOL V+ soft signal 2004

Position Status Data Type Description

here.X REAL Current X-axis coordinate

here.Y REAL Current Y-axis coordinate

here.Z REAL Current Z-axis coordinate

here.Yaw REAL Current Yaw-angle coordinate

here.Pitch REAL Current Pitch-angle coordinate

here.Roll REAL Current Roll-angle coordinate

phere._1 REAL Current Joint-1 position

phere._2 REAL Current Joint-2 position

phere._3 REAL Current Joint-3 position

phere._4 REAL Current Joint-4 position

phere._5 REAL Current Joint-5 position

phere._6 REAL Current Joint-6 position

latch_loc.X REAL Latched X-axis coordinate

Input Word Data Type Description

68 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 69: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

PLC Software Overview

When teaching locations, it is up to the programmer or system developer to create a method for storing that data, for example, in a data table. (That is, the data structure for storing the taught locations in the PLC is up to you.) Then, when moving the robot to one of those locations, the data must be moved from the data table into Robot_Command.location, or, if using a pallet, a combination of the location and the pallet tags (Robot_Command.pallet_starting_location...).

To teach a location (i.e., record a location in the PLC):

NOTE: Make sure that the robot is given sufficient time to settle before performing the next steps (recording the current position).

1. Move the current robot coordinates (either the Cartesian coordinates in Robot_Command.here.X-Roll, or the joint coordinates in Robot_Command.phere._1..._6), to an appropriate data array.

2. Perform the steps to define a location, as described in the section “Location Definitions” on page 60.

Error Tags

When an error occurs, the following error tags are updated by the ePLC Connect software. The maximum length of the string value is 82 characters.

Table 5-14. Error Tag Definitions

The error_number and error_message tags are cleared by the ePLC Connect software when a Fault Reset command is processed.

The current error tag (Robot_Status.error_message) contains the current ePLC Connect software message string (see “ePLC Connect Messages (Numerical Listing)” on page 97).

latch_loc.Y REAL Latched Y-axis coordinate

latch_loc.Z REAL Latched Z-axis coordinate

latch_loc.Yaw REAL Latched Yaw-angle coordinate

latch_loc.Pitch REAL Latched Pitch-angle coordinate

latch_loc.Roll REAL Latched Roll-angle coordinate

Error Tag Data Type Description

error_number INT Current error number

error_message STRING Current error message

Position Status Data Type Description

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 69

Page 70: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Programming the Robot

MCP Status Tags

This section describes the MCP Status tags. These bits indicate the current state of the programmable buttons on the pendant. Combined with the Robot_Command.mcp_message, they allow the user to create a custom interface to perform cell operations such as teaching points or clearing errors.

Table 5-15. MCP Status Tags

Vision Tags

Because vision is an option, these tags are covered in “Status tags” on page 83.

MCP Status Tag Data Type Description

mcp_speed INT Speed pot value.1

mcp_button_soft_1. . .mcp_button_soft_5

BOOL 1 if button is pressed;0 if it is not pressed

mcp_button_recdone BOOL

mcp_button_F1 BOOL

mcp_button_clear_error BOOL

mcp_button_enable_power BOOL

mcp_button_disable_power BOOL

mcp_button_slow BOOL

mcp_button_T1 BOOL

mcp_button_step BOOL

mcp_button_yes BOOL

mcp_button_no BOOL

mcp_button_0. . .mcp_button_9

BOOL

mcp_button_period BOOL

mcp_button_delete BOOL

1. For the Adept T1 and T2 pendants, this tag is 0 unless either the Yes or No button is pressed.

70 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 71: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Vision Integration 66.1 Introduction

Beginning with version 2.0, the ePLC Connect software gives you the option of adding vision guidance capability to your ePLC-controlled application. The AdeptSight 3.0 software and the Adept SmartVision EX provide the vision guidance fuctionality for the ePLC Connect 2.0 system.

The vision integration is designed for vision-guided applications where:

• an upward-mounted camera is used to refine the position of the part in the gripper to generate a tool offset.

• a downward-mounted camera is used to locate parts for the robot to access.

• an arm-mounted camera (the camera is mounted on the robot arm) will be moved to a position and used to locate parts which the robot will access.

Integrating vision into the ePLC software requires three steps:

Hardware setup

Hardware setup involves placing the SmartVision EX into the workcell, connecting the camera(s), and installing lighting. For details, see the Adept SmartVision EX User’s Guide.

NOTE: The operating system, software, and all required software licenses are installed at the Adept factory, before the system is shipped.

Configuration

Configuration involves using the AdeptSight software environment to

• create a workspace with the proper components,

• calibrate the camera(s), and

• configure the vision tools. For details, see Section 6.2.

Runtime

Runtime involves using a set of commands to initialize and obtain results from the vision system. For details, see Section 6.3 on page 81.

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 71

Page 72: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Vision Integration

6.2 Configuration

NOTE: The following procedure assumes you have installed the vision system hardware (SmartVision EX, camera, lighting, etc.) in the workcell. For details, see the Adept SmartVision EX User’s Guide. The steps are provided as a basic guideline and will most likely need to be customized for a specific application.

Before you can use the AdeptSight vision software with your ePLC system, you must configure the vision software. For details on these procedures, see the online AdeptSight help.

AdeptSight Configuration

1. Create an Adept ACE workspace which references the SmartController CX.

The following figure shows a startup screen for a controller with an IP addresss of 172.21.6.241. Use the IP address of your controller in place of this.

Figure 6-1. Adept ACE Initial Startup Screen

72 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 73: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Configuration

2. Add the following vision objects to the Adept ACE workspace:

Refer to the AdeptSight online help for more details.

• Basler Pylon Device (allow it to add a virtual camera)

• Locator Model

• Locator

• Communication Tool

• AdeptSight Sequence

Figure 6-2. Adept ACE Workspace Explorer

3. Adjust the lens focus and aperature rings, along with the Basler Pylon Device Virtual Camera acquisition settings control, to obtain a suitable and consistent image.

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 73

Page 74: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Vision Integration

4. Within the Basler Pylon Device Virtual Camera Calibrations dialog, perform a Grid Calibration to establish the mm to pixel ratio.

See the Standalone Camera Calibration topic in the AdeptSight online help.

NOTE: The grid calibration must be performed at the same height as the part pickup surface.

Figure 6-3. Grid Calibration

74 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 75: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Configuration

5. Add an AdeptSight Camera Calibration object, then follow the wizard to configure the object:

New > Vision > AdeptSight > AdeptSight Camera Calibration

Once it has been set up, perform a robot-to-camera calibration by clicking the Calibration Wizard icon. The calibration process establishes the relationship between the robot origin and the camera field of view.

Figure 6-4. AdeptSight Camera Calibration

6. Within the Locator Model object, build the model for the part which you wish to find.

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 75

Page 76: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Vision Integration

7. Configure the Locator object to reference the model(s) it should locate. You may need to adjust the default Locator settings for the best performance.

Figure 6-5. Locator Object

76 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 77: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Configuration

8. Open the Communication tool and configure it to use the desired AdeptSight Calibration and robot. Also, add the Locator to the “Relative To” property.

• Instances located outside of the Communication tool’s Region of Interest will not be queued. Adjust the ROI as needed.

• The default queue number is 0. Change this if a different queue is desired.

Queue numbers 0-7 allow you to read the number of instances in each of those queues with the vis_queue_size[] status array. Adept recommends that the Communication tool be configured to use those queues. The queue index can range from 0-100.

You can still use queues 8-100, but the only accessible result is the coordinate data.

Figure 6-6. Communication Tool

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 77

Page 78: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Vision Integration

9. Configure the AdeptSight Sequence object to reference the Communication tool in the Vision Tool property and specify a unique sequence number.

NOTE: Each sequence must have at least one communication tool to send the vision results to the controller. Multiple communication tools can be used to place parts into different queues, based on user-specified criteria (blob size, locator model, location on belt, etc).

Figure 6-7. AdeptSight Sequence

78 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 79: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Configuration

Adept ACE Automatic Connect

Configure the PC to Start Adept ACE on Startup

1. Make sure that there is an Adept ACE shortcut on your desktop.

2. Click on the taskbar Start > All Programs > StartupOn some PCs this will be Start > Programs > Startup.

Figure 6-8. Start > (All) Programs > Startup

3. Drag the Adept ACE icon from your desktop into the Startup folder

When the PC boots, Adept ACE will be started automatically.

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 79

Page 80: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Vision Integration

Configure Adept ACE to Connect to the Controller Automatically

1. Add an Adept ACE startup object to the workspace, and configure it to automatically connect to the controller at startup. For details, see the Adept ACE online help. Without the startup object present and enabled, the vis_system_online status bit will not be enabled.

Figure 6-9. Adept ACE System Startup Object

80 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 81: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Runtime

2. Configure the Adept ACE software to automatically load the workspace at startup.

• From the Adept ACE toolbar select Tools > Options.

• Check the box ‘Load Workspace at Startup’.

Refer to the following screen shot.

Figure 6-10. Adept ACE Autostart Setup

6.3 Runtime

After the AdeptSight workspace has been configured, as described in the previous section, you are ready for the runtime operation of the AdeptSight vision system from the PLC.

1. Verify that AdeptSight is communicating with the SmartController by examining the vis_system_online status bit.

2. Set the vis_sequence_number and enable the vis_sequence_start bit. The sequence number is specified in the AdeptSight sequence object. The user is responsible for ensuring that each AdeptSight sequence object references a unique sequence number (e.g. two different sequence objects cannot use sequence number 1).

3. Wait for the vis_sequence_started bit to go high, which acknowledges the command has been received. The vis_sequence_start bit can then be disabled.

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 81

Page 82: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Vision Integration

4. Wait for vis_sequence_number (status tag) to equal the vis_sequence_number (command tag) and vis_sequence_state value to equal 3, indicating the sequence is done. Once the sequence is complete, vis_instances_found specifies the total number of parts that were found and will be put into the respective queues specified by the vision communication tools.

5. Wait for the desired queue to receive the located instances.

6. If the Communication tool was configured to use a queue number from 0-7, then to move to its first instance, specify the location number 1000+Queue Number (i.e. queue 0 would be 1000 and queue 7 would be 1007).

NOTE: If the Communication tool uses a queue number greater than 7, it is not possible to determine the number of instances in the queue. However, the user may specify the desired queue number in vis_queue_number and use the coordinates returned in vis_results. If the queue specified by vis_queue_number is empty, then the vis_results_valid bit will be disabled. If the queue has at least one instance, then vis_results_valid will be enabled and the data in vis_results can be used.

7. Once the instance is no longer needed it can be removed from the queue using the vis_queue_pop command.

To pop an instance from a queue:

a. Populate vis_queue_number with the queue number.

b. Enable the vis_queue_pop bit.

c. Wait for vis_queue_popped to go high, indicating the command is complete.

Instead of removing a single instance, you can clear the entire queue using the vis_queue_clear command (after setting vis_queue_number with the appropriate queue number).

NOTE: If the queue is full when the vis_queue_clear operation is performed, it is possible that instances are still available and AdeptSight is waiting to push them down to the Adept controller when space is available. This clear operation only removes local instances and not instances still resident in AdeptSight. The Communication tool and vision tools should be configured so the local queue can contain all possible instances to avoid this scenario.

8. The user can repeat the previous steps until all instances have been accessed.

Commands

The vision commands allow the PLC program to execute AdeptSight vision sequences and manage part queues. The AdeptSight sequences are used to locate part instances which are put into a first-in-first-out (FIFO) queue via the AdeptSight Communications tool. During Communication tool configuration, the queue number where instances are to be put is specified.

The following table shows the Command tags, which are used to control the vision operations.

82 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 83: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Runtime

Table 6-1. Vision Command Definitions

Status tags

The following table shows the Status tags, which are used to communicate information about the vision operations.

Table 6-2. Vision Status Tag Definitions

Command Tag Data Type Description

vis_sequence_start BOOL When enabled, the AdeptSight sequence specified by vis_sequence_number is executed.

vis_queue_clear BOOL When enabled, the queue specified by vis_queue_number is cleared of all instances in the controller queue. The controller queue should be sized so that all found instances can be pushed down from the Communication tool. For example, if the queue size is 5 and 8 instances are found, when a clear queue command is issued, only the 5 instances on the controller will be deleted and the final 3 will be pushed down.

vis_queue_pop BOOL When enabled, the instance at the head of the queue specified by vis_queue_number is popped and the next instance in the queue becomes the new head.

vis_sequence_number INT Specifies which AdeptSight sequence is run.

vis_queue_number SINT Specifies which queue is cleared or popped and whose results are returned in vis_results (status register).

Status Tag Data Type Description

vis_sequence_started BOOL Acknowledges the vis_sequence_start command was started.

vis_queue_cleared BOOL Acknowledges the vis_queue_clear command was executed.

vis_queue_popped BOOL Acknowledges the vis_queue_pop command was executed.

vis_results_valid BOOL Indicates if valid data is present in vis_results.

vis_system_online BOOL Indicates if AdeptSight is communicating with the controller. 0=No communications 1=Communicating

vis_sequence_number INT Sequence number whose status is returned in vis_sequence_state and vis_instances_found.

vis_sequence_state SINT State of sequence specified by vis_sequence_number.

0=Idle, 1=Running, 2=Paused, 3=Done, 4=Error, 5=Starting

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 83

Page 84: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Vision Integration

vis_instances_found SINT Returns the number of instances that have been queued by all of the communications tools within the most recent execution of the sequence specified by vis_sequence_number. Returns 0 if no instances were found or sequence is still executing.

vis_results_queue_number SINT Queue number whose results are returned in vis_results.

vis_queue_size SINT[8] Number of instances in the queues 0-7. If a queue has more than 127 instances, the total is capped at 127.

vis_results Coordinates Coordinates of the instance at the head of the vis_results_queue_number queue:X, Y, Z, Yaw, Pitch, Roll

Status Tag Data Type Description

84 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 85: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Robot Concepts 77.1 Understanding Robot Motion Parameters

When programming a robot, there are several factors that play an important part in performance. In order to achieve optimum performance from your robot, it is helpful to have an understanding of how these factors work.

Speed, Acceleration, and Deceleration

Robot speed is usually specified as a percentage of normal speed, not as an absolute velocity. The speed for a single robot motion is set in Robot_Command.speed (see page 50) for each location. Note that the result obtained by the speed value depends on the operating mode of the robot—joint-interpolated versus straight-line (see page 88 for details). Whether in joint-interpolated mode or straight-line mode, the maximum speed is limited by the slowest-moving joint during the motion, since all the joints are required to start and stop at the same time. For example, with a SCARA robot, if a given motion requires that the tool tip is rotated during the motion, which requires joint 4 to rotate, that joint could limit the maximum speed achieved by the other joints, since joint 4 is the slowest-moving joint in the mechanism. Using the same example, if joint 4 was not rotated, the motion could be faster without any change to the speed value.

NOTE: The motion speed specified in Robot_Command.speed must always be greater than zero for a regular robot motion, or in the range –127 to 127 when jogging the robot. Otherwise, an error will be returned.

You can use the acceleration parameter to control the rate at which the robot reaches its designated speed and the rate at which the robot slows to a stop. Like speed, the acceleration/deceleration rate is specified as a percentage of the normal acceleration/deceleration. To make the robot start or stop smoothly (using lower acceleration and deceleration for a less-abrupt motion), set Robot_Command.acceleration/deceleration to low values. To make the robot start or stop quickly (using higher acceleration and deceleration for a more-abrupt motion), set Robot_Command.acceleration/deceleration to higher values.

NOTE: The values of Robot_Command.acceleration/deceleration must always be greater than 0. Otherwise, an error will be returned.

The speed and acceleration parameters are commonly modified for cycle-time optimization and process constraints. For example, abrupt stops with a vacuum gripper may cause the part being held to shift on the gripper. This problem could be solved by lowering the robot speed. However, the overall cycle time would then be increased. An alternative is to slow down the acceleration/deceleration rate so the part does not shift on the gripper during acceleration or deceleration. The robot can still move at the maximum designated speed for other movements. Another example would be a relatively high payload and inertia coupled with tight positioning tolerances. A high deceleration rate may cause overshoot and increase settling time. Higher acceleration/deceleration rates and higher speeds don't necessarily result in faster cycle times.

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 85

Page 86: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Robot Concepts

Approach and Depart

When approach and depart heights are specified, the robot moves in three distinct motions.

• In the first motion (approach), the robot moves to a location directly above the specified location. The height above the location is specified in Robot_Command.approach_height (see page 50).

• For the second motion, the robot moves to the actual location and the gripper is activated. For this motion, Robot_Command.approach_height is set to zero.

• In the third motion (depart), the robot moves to a point directly above the location. The depart motion uses the height specified by Robot_Command.approach_height.

Approach and depart heights are used to make sure that the robot approaches and departs from a location without running into any other parts, or any obstructions in the robot envelope. Approaches and departs are always parallel to the Z-axis of the tool coordinate system. Note that all the motion parameters that apply to a move to a location can also be applied to approach and depart motions. This allows you, for instance, to move at optimum speed to the approach height above a location, then move more slowly when actually acquiring or placing the part, and finally depart quickly.

NOTE: Each of the three motions—approach, move-to, depart—must be commanded separately by the PLC.

Arm Configuration

Another motion characteristic that you can control is the configuration of the robot arm when moving to a location. However, configuration options apply only to specific types of robots. For example, the lefty/righty option applies to SCARA robots (such as the Adept Cobra robots), but the above/below option does not apply to those robots.

Figure 7-1 shows how a SCARA robot can reach a point with the elbow pointing in two different directions. The Lefty/Righty arm configuration is specified in Robot_Command.righty_configuration.

NOTE: Other arm configuration bits are supported by the ePLC Connect software (see the Robot_Command.below_configuation and Robot_Command.flip_configuration bits). However, only the lefty/righty bit applies to a SCARA robot, such as the Adept Cobra robots.

86 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 87: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Understanding Robot Motion Parameters

Figure 7-1. Lefty/Righty Robot Arm Configuration

Continuous-Path Motion

When a single motion instruction is processed, the robot begins moving toward the location by accelerating smoothly to the commanded speed. When the robot gets close to the destination location, the robot decelerates smoothly to a stop at the location. This motion is referred to as a single motion segment, because it is produced by a single motion instruction.

When a continuous-path sequence of two motion instructions is executed, the robot begins moving toward the first location by accelerating smoothly to the commanded speed just as before. However, the robot does not decelerate to a stop when it gets close to the first location. Instead, it smoothly changes its direction and begins moving toward the second location. Finally, when the robot is close to the second location, it decelerates smoothly to a stop at that location. This motion consists of two motion segments since it is generated by two motion instructions.

Making smooth transitions between motion segments without stopping the robot motion is called continuous-path operation. If desired, the robot can be operated in a non-continuous-path mode (see “Breaking Continuous-Path Operation” on page 88, for details). When continuous-path operation is not used, the robot decelerates and stops at the end of each motion segment before beginning to move to the next location. The stops at intermediate locations are referred to as “breaks” in continuous-path operation.

NOTE: Breaking continuous-path operation does not affect forward processing (the parallel operation of robot motion and program execution).

Continuous-path transitions can occur between any combination of straight-line and joint-interpolated motions (see “Joint-Interpolated Motion vs. Straight-Line Motion” on page 88).

LEFTY RIGHTY

ELBOW

BACK OFROBOT

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 87

Page 88: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Robot Concepts

Breaking Continuous-Path Operation

The “basic” method of moving the robot (see page 52) causes program execution to be suspended until the current robot motion reaches its destination location and comes to a stop. This is called breaking continuous path. This method is useful when the robot must be stopped while some operation is performed (for example, closing the gripper or applying a dot of adhesive).

Joint-Interpolated Motion vs. Straight-Line Motion

The path a robot takes when moving from one location to another can be either a joint-interpolated motion or a straight-line motion. A joint-interpolated motion moves each joint at a constant speed (except during the acceleration/deceleration phases-see “Speed, Acceleration, and Deceleration” on page 85). With a rotationally-jointed robot, the robot tool tip typically moves along a curved path during a joint-interpolated motion. Although such motions can be performed at maximum speed, the nature of the path may be undesirable.

Straight-line motions ensure that the robot tool tip traces a straight line. This is useful for cutting a straight line, or laying a bead of sealant, or any other situation where a totally predictable path is desired.

NOTE: For X, XY, XYZ, or XYZT devices, straight-line motion and joint-interpolated motion result in identical paths, because the (positioning) joints all move in straight lines themselves.

When bit Robot_Command.straightline_move is OFF, the robot uses joint-interpolated motion. When that bit is ON, the robot uses straight-line motion.

Performance Considerations

Things that may impact performance in most applications include robot mounting, cell layout, part handling, and programming approaches.

Robot Mounting

As the first consideration, the mounting surface should be smooth, flat, and rigid. Vibration and flexing will affect performance. Follow the instructions in the Adept robot user’s guide for mounting plate thickness and, if needed, frame construction.

On a SCARA robot, the ‘Z’ and “theta” axes are the slowest, and motion of these joints should be minimized whenever possible. This can be accomplished by positioning the robot and setting conveyor heights and pick and place locations to minimize Z-axis motion.

Cell Layout

Note that two cells with identical layouts can have very different cycle times if they are programmed differently.

The workcell should be designed to minimize robot motion in general, and particularly to minimize the ‘Z’ and theta motions for a SCARA robot.

If possible, the workcell should allow room for joint-interpolated (as opposed to straight-line) motions. See Programming Considerations.

88 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 89: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

The World Coordinate System

Part Handling

For part handling, settling time while trying to achieve a position can be minimized by centering the payload mass in the gripper. A mass that is offset from the tool rotation point will result in excess inertia that will take longer to settle. In addition, minimizing gripper mass and tooling weight will improve settling time. This could include, for example, using aluminum versus steel, and removing material that is not needed on tooling.

Programming Considerations

The use of joint-interpolated versus straight-line motion has to be evaluated on a case-by-case basis. In general, joint-interpolated motion is more efficient.

Nulling tolerances should be as loose as the application will permit. This has a direct impact on cycle time.

Regarding moving multiple joints, the same point-to-point distance can result in different cycle times. Simultaneously moving multiple joints combines the joint speeds for faster motion. If the same distance is traversed using the motion of a single joint, the motion of that joint will be longer, and therefore will take more time. Take advantage of moving multiple joints for faster motions.

The use of joint-interpolated versus straight-line motion has to be evaluated on a case-by-case basis. In general, joint-interpolated motion is more efficient.

Nulling tolerances should be as loose as the application will permit. This has a direct impact on cycle time.

Lastly, on jointed arms, changing the arm configuration (for example, lefty versus righty for a SCARA robot) generally requires more time than maintaining the existing configuration during a motion.

7.2 The World Coordinate System

A robot location specifies the position and orientation of the robot tool tip in 3-dimensional space. By default, the tool tip is the center of the mounting flange of the robot. Locations are, by default, relative to the base of the robot. See Figure 7-2 for an example using an Adept SCARA robot. For a default (World) location, the coordinate offsets are from the origin of the World coordinate system, which is located at the base of the robot.

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 89

Page 90: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Robot Concepts

Figure 7-2. World Coordinate System

Defining a Location

Locations are defined using the World coordinate system (see above) or by specifying the positions of the individual robot joints. When defining a location, each of the values described in Table 7-1 must be entered into the location registers Robot_Command.location.<X, Y, Z, Yaw, Pitch, or Roll>. See Table 5-6 on page 61.

NOTE: Failure to enter all of the values, as described below, for each location, may result in an “invalid orientation” or similar error when the robot attempts to access that location.

Table 7-1. Values Describing a Cartesian Location

CoordinateCartesian Coordinates

Absolute Motion (see Figure 7-2) Relative Motion (see Figure 7-3)

X

Defines a distance (in mm) from the World origin (base of the robot) along the X axis.

Defines offset distance along the X axis. The offset is added to the X component of the current position of the robot (if it is stopped) or the destination of the current motion.

90 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 91: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

The World Coordinate System

Y

Defines a distance (in mm) from the World origin (base of the robot) along the Y axis.

Defines offset distance along the Y axis. The offset is added to the Y component of the current position of the robot (if it is stopped) or the destination of the current motion.

Z

Defines a distance (in mm) from the World origin (base of the robot) along the Z axis.

Defines offset distance along the Z axis. The offset is added to the Z component of the current position of the robot (if it is stopped) or the destination of the current motion.

y For SCARA robots (such as the Adept Cobra robots), this value must be 0.0.

For SCARA robots (such as the Adept Cobra robots), this value must be 0.0.

p For SCARA robots (such as the Adept Cobra robots), this value must be 180.0.

For SCARA robots (such as the Adept Cobra robots), this value must be 0.0.

r

Defines a rotation in degrees about the Z axis.

Defines a rotation, in degrees, about the Z axis, which is added to the r component of the current position of the robot (if it is stopped) or the destination of the current motion.

Table 7-1. Values Describing a Cartesian Location

CoordinateCartesian Coordinates

Absolute Motion (see Figure 7-2) Relative Motion (see Figure 7-3)

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 91

Page 92: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Robot Concepts

Table 7-2. Values Describing a Joint Location

JointJoint Coordinates

Absolute Motion (see Figure 7-4) Relative Motion (see Figure 7-4)

J1Defines translational (mm) or rotational (deg) position for Joint 1. For SCARA robots this is a rotational joint angle.

Defines a change in translational (mm) or rotational (deg) joint position for the joint. The change is added to the current position of the robot joint (if it is stopped) or the joint position at the destination of the current motion.

J2Defines translational (mm) or rotational (deg) position for Joint 2. For SCARA robots this is a rotational joint angle.

J3

Defines translational (mm) or rotational (deg) position for Joint 3. For SCARA robots this is a translational joint position in millimeters (vertical axis).

J4Defines translational (mm) or rotational (deg) position for Joint 4. For SCARA robots this is a rotational joint angle.

J5Defines translational (mm) or rotational (deg) position for Joint 5. For SCARA robots this is not used.

J6Defines translational (mm) or rotational (deg) position for Joint 6. For SCARA robots this is not used.

Figure 7-3. Robot Axes Figure 7-4. Robot Joints

92 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 93: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Defining a Pallet Layout

7.3 Defining a Pallet Layout

When defining a pallet layout, you are teaching three points: the pallet origin (A), the last location in the origin row (B), and any location in the pallet in the last row (C). See Figure 7-5 for an example. Pallets can be easily moved within the workcell by simply reteaching these three points on the pallet.

NOTE: The points labeled in the figures are only for example. You can define the pallet using any corner part as the origin, and using any row or column orientation. The pallet rows do not need to be parallel to the robot World axes as shown in the example. However, keep in mind that the pallet will always be processed starting with location A, and will process the A-B row before advancing to the next row.

Figure 7-5. Defining a Pallet Layout

For example, assuming a 40 mm part spacing, the pallet in Figure 7-5 would be defined as follows:

In addition to the above, there are other parameters to define, such as the number of parts in the first row, the number of rows, the row configuration, and the traverse direction. See “Pallet Definitions” on page 61.

Location Components

X Y Z y p r

A Pallet originRobot_Command.pallet_starting_location 350.0 270.0 54.0 0.0 180.0 0.0

B Last location in the origin rowRobot_Command.pallet_location_in_1st_row 350.0 350.0 54.0 0.0 180.0 0.0

C Pallet location in the last row)Robot_Command.pallet_location_last_row 270.0 350.0 54.0 0.0 180.0 0.0

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 93

Page 94: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Robot Concepts

NOTE: Make sure that you read the section “Why is Gripper Orientation Important?” on page 94. It is necessary to understand this concept, so that your parts are picked and placed correctly.

When all the parameters have been passed to the ePLC Connect software, the system automatically computes the orientation, part and row spacing, and layout of the pallet. Then, the system has all of the information it needs to pick parts from positions in the pallet (or, to place parts into the pallet).

Figure 7-6. Pallet Orientation

Why is Gripper Orientation Important?

The gripper orientation is important because it is the angle with which the robot will pick and place the part from or to a pallet.

As the robot moves through the pallet, the gripper orientation remains constant with respect to the pallet frame.

94 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 95: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Defining a Pallet Layout

When teaching locations, remember that the gripper orientation relative to the part (as the part fits in the pallet) is important. For example, consider the following figures. In Figure 7-7 the robot is at the pallet origin (starting position)—note the orientation of the gripper relative to the part.

Figure 7-7. Pallet Origin

In Figure 7-8 the robot is at the last part location on the pallet row; however, the gripper-to-part orientation remains the same as in Figure 7-7.

Figure 7-8. Pallet Row Location

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 95

Page 96: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Robot Concepts

Finally, in Figure 7-9, the tool is at a point on the pallet column; however, the gripper-to-part orientation is still the same as in Figure 7-7 and Figure 7-8.

Figure 7-9. Pallet Column Location

96 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 97: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Diagnostic and Error Messages 8The following sections describe the messages that are specific to the ePLC Connect software. It is possible that other system errors will be reported to the PLC. Those errors are described in the Adept V+ Language Reference Guide, which can be found in the Adept Document Library. See “Adept Document Library” on page 18 for details.

NOTE: For a description of the SmartController CX indicator LEDs and their display during startup, see Section 3.2 on page 25.

8.1 ePLC Connect Messages (Numerical Listing)

This section provides a numerical listing of the ePLC Connect software messages, which are displayed on the SmartController CX indicator LEDs. For an alphabetical listing of messages, see “ePLC Connect Messages (Alphabetical Listing)” on page 98.

Table 8-1. ePLC Connect software Messages

Error Description

3001 ePLC Connect initialized and ready to run (Vx.xx)

–3001 *E-stop due to lost communications with PLC*

–3007 *Invalid command: More than one command bit enabled*

–3008 *Only one axis bit can be set while jogging*

–3009 *Cannot mix joint-coordinate location and pallet*

–3010 *Cannot move relative to a pallet*

–3011 *Invalid location number* Location n

–3012 *Invalid pallet number* Pallet n

–3013 *Invalid speed parameter* Speed n

–3014 *Invalid acceleration/deceleration parameter* Value n

–3015 *Undefined location* Location n

–3016 *Undefined pallet* Pallet n

–3019 *ePLC Connect start-up error* Code n

–3020 *Invalid approach parameter for this robot*

–3021 *Pallet locations are linear*

–3022 *Invalid pallet index* Position n

-3023 *Invalid vision queue number* Number n

-3024 *Adept ACE Control mode enabled*

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 97

Page 98: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Diagnostic and Error Messages

8.2 ePLC Connect Messages (Alphabetical Listing)

NOTE: The tag names described in this section use the prefixes Robot_Command and Robot_Status. However, the actual prefix used may be different based on the choice of the system developer.

*Adept ACE Control mode enabled* (–3024)

Control of the robot has transferred from ePLC Connect to Adept ACE. This transition occurrs when a vision-to-robot calibration procedure is performed. When this mode is enabled, the PLC will not be able to move the robot nor enable/disable the SmartController’s digital outputs. After Adept ACE has completed its task, the Adept ACE Control status bit will be disabled and the PLC can resume sending commands to the robot.

*Cannot mix joint-coordinate location and pallet* (–3009)

A motion relative to a pallet has been requested, and the Robot_Command.joint_coordinates bit is enabled (indicating that the specified location is defined by joint coordinates).

*Cannot move relative to a pallet* (–3010)

A relative motion has been specified (Robot_Command.relative_move is enabled), and a pallet has been identified by the command Robot_Command.pallet_number.

*E-stop due to lost communications with PLC* (–3001)

This error occurs when the system has lost communication with the ePLC Connect software for a period of time. Check that the Ethernet cable is plugged in and functional.

ePLC Connect initialized and ready to run (Vx.xx) (3001)

The ePLC Connect software has completed its initialization and is ready for operation.

–xxxxx

xxx

Error <V+ error code>: <V+ error message>Message <V+ error code>: <V+ error string>Warning <V+ error code>: <V+ error string>

Error Description

98 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 99: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

ePLC Connect Messages (Alphabetical Listing)

*ePLC Connect start-up error* Code n (–3019)

One of the following errors was detected during startup of the ePLC Connect software, as indicated by the value of “n”:

*Invalid acceleration/deceleration parameter* Value n (–3014)

The acceleration or the deceleration parameter must be greater than 0.

*Invalid approach parameter for this robot* (–3020)

One of the following conditions occurred:

• A joint-angles move command was requested with the absolute-approach-height bit (Robot_Command.approach_at_absolute) set, but the robot does not have a single joint that restricts the Z motion.

• A joint-angles jump command was requested with the absolute-approach-height bit (Robot_Command.approach_at_absolute) set, or with the approach height (Robot_Command.approach_height) set to zero, but the robot does not have a single joint that restricts the Z motion.

• A cartesian-coordinate jump command was requested with the approach height (Robot_Command.approach_height) set to zero, but the robot does not have a single joint that restricts the Z motion.

*Invalid command: More than one command bit enabled* (–3007)

An error occurred because more than one of the main command bits was enabled at the same time.

*Invalid location number* Location n (–3011)

The location number specified in Robot_Command.location_number is either less than zero or larger than the maximum location number permitted.

*Invalid pallet index* Position n (–3022)

A motion to a pallet location has been requested, but the specified position in the pallet is either zero or larger than the number of positions in the pallet. (The total number of positions in a pallet is computed by the ePLC Connect software when the pallet is defined.)

*Invalid pallet number* Pallet n (–3012)

The pallet number specified in Robot_Command.pallet_number is either less than one or larger than the maximum pallet number permitted. The limit is 100.

-1 The installed V+ OS version is not valid.

2 The V+ extensions license is not installed and is required to execute the vision commands.

42 The ePLC Connect Application license is not installed.

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 99

Page 100: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Diagnostic and Error Messages

*Invalid speed parameter* Speed n (–3013)

The motion speed specified in Robot_Command.speed is either less than zero for a regular robot motion, or outside the allowable range (–127 to 127) for jogging the robot.

*Invalid vision queue number* Number n (–3023)

The requested vision queue number is outside of the valid range of 0 to 100.

*Only one axis bit can be set while jogging* (–3008)

More than one robot axis or coordinate direction is selected for jogging, which is permitted only in FREE mode.

*Pallet locations are linear* (–3021)

The three robot locations that were specified to define a pallet lie on a line. The third location must be off the line that passes through the first two locations.

*Undefined location* Location n (–3015)

An attempt has been made to use a location that has not been defined.

*Undefined pallet* Pallet n (–3016)

An attempt has been made to use a pallet that has not been defined.

100 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 101: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Command Summary AThe following tables provide a complete list of the available ePLC Connect software commands along with a brief description for each command. See “Programming the Robot” on page 35 for programming details.

A.1 Joint and Coordinate UDT Commands

Table A-1. Joint UDT Commands

Command Data Type Description

_1 REAL Joint 1

_2 REAL Joint 2

_3 REAL Joint 3

_4 REAL Joint 4

_5 REAL Joint 5

_6 REAL Joint 6

Table A-2. Coordinate UDT Commands

Command Data Type Description

X REAL X coordinate

Y REAL Y coordinate

Z REAL Z coordinate

Yaw REAL Yaw angle

Pitch REAL Pitch angle

Roll REAL Roll angle

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 101

Page 102: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Command Summary

A.2 Command UDT Commands

Table A-3. Command UDT Commands

Command Data Type Description

cmd_high_power BOOL Enable servo power

cmd_stop_on_input BOOL Stop on digital input (immediate stop when digital input is latched). Requires the Enhanced Trajectory Generator license and several configuration changes in V+. For details, see the FORCE._ program instruction in the V+ Language Reference Guide.

cmd_brake BOOL Stop current motion

cmd_read_latch BOOL Returns a latched position

cmd_stop_pos_update BOOL 1= stop current position updates(must = 0 to teach locations)

cmd_reset BOOL Clear fault condition

cmd_calibrate BOOL Calibrate robot

cmd_jog BOOL Jog robot

cmd_align BOOL Align robot Z-axis with nearest world axis

cmd_move BOOL Move robot

cmd_jump BOOL Jump robot to position

_cmd_reserved_bit_1 BOOL *Reserved*

_cmd_reserved_bit_2 BOOL *Reserved*

cmd_location_define BOOL Download coordinate data

cmd_pallet_define BOOL Download pallet configuration data

cmd_tool_invoke BOOL Invoke the tool offset specified by the values in the location tag

jog_world_mode BOOL Jog arm in world mode

jog_tool_mode BOOL Jog arm in tool mode

jog_joint_mode BOOL Jog arm in joint mode

jog_free_mode BOOL Free specified axes

_jog_reserved_bit_1 BOOL *Reserved*

_jog_reserved_bit_2 BOOL *Reserved*

jog_joint_1_or_x_axis BOOL Jog joint 1 or x-axis

jog_joint_2_or_y_axis BOOL Jog joint 2 or y-axis

102 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 103: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Command UDT Commands

jog_joint_3_or_z_axis BOOL Jog joint 3 or z-axis

jog_joint_4_or_yaw_angle BOOL Jog joint 4 or yaw-angle

jog_joint_5_or_pitch_angle BOOL Jog joint 5 or pitch-angle

jog_joint_6_or_roll_angle BOOL Jog joint 6 or roll-angle

_jog_reserved_bit_3 BOOL *Reserved*

_jog_reserved_bit_4 BOOL *Reserved*

_jog_reserved_bit_5 BOOL *Reserved*

_jog_reserved_bit_6 BOOL *Reserved*

out_signal_1 BOOL XDIO Output 1

out_signal_2 BOOL XDIO Output 2

out_signal_3 BOOL XDIO Output 3

out_signal_4 BOOL XDIO Output 4

out_signal_5 BOOL XDIO Output 5

out_signal_6 BOOL XDIO Output 6

out_signal_7 BOOL XDIO Output 7

out_signal_8 BOOL XDIO Output 8

out_signal_3001 BOOL Solenoid Output 3001

out_signal_3002 BOOL Solenoid Output 3002

out_signal_3003 BOOL Solenoid Output 3003

out_signal_3004 BOOL Solenoid Output 3004

_out_reserved_bit_1 BOOL *Reserved*

_out_reserved_bit_2 BOOL *Reserved*

_out_reserved_bit_3 BOOL *Reserved*

_out_reserved_bit_4 BOOL *Reserved*

relative_move BOOL Off=Move to absolute coordinates On=Move relative to current position

joint_coordinates BOOL Off=Coordinates are cartesian On=Coordinates are joint angles

straightline_move BOOL Off=Joint-interpolated motion On=Straightline motion

approach_at_absolute BOOL Off=Relative approach On=Approach at absolute height

Table A-3. Command UDT Commands

Command Data Type Description

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 103

Page 104: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Command Summary

nonull BOOL Off=Null On=No Null

coarse_nulling BOOL Off=Fine nulling On=Coarse nulling

single_turn BOOL Off=Multiple rotations On=Single rotation

righty_configuration BOOL Off=Lefty On=Righty

below_configuation BOOL Off=Above configuration On=Below configuration

flip_configuration BOOL Off=No Flip configurationOn=Flip configuration

speed INT Speed of motion

acceleration INT Acceleration

deceleration INT Deceleration

acceleration_profile INT Acceleration profile

approach_height REAL Approach height

location_number INT Location to use

pal_number INT Pallet to be used (0 for no pallet)

pal_index INT Position within pallet

speed_limit INT Limits joint speed to specified % during moves

location Coordinates Coordinates for motion or location definition

pallet_starting_location INT Location number of first position in pallet

pallet_location_in_1st_row INT Location number of the last position in the first row (non-origin)

pallet_location_last_row INT Location # of a position in the last row

pallet_positions_in_1st_row INT Number of positions in the first row

pallet_number_of_rows INT Number of rows in pallet

pallet_configuration INT Pallet style - (0-4; sets pallet offset, if any)

pallet_s_traversal INT Change pallet order

mcp_led_1 BOOL Soft button LED on or off

mcp_led_2 BOOL Soft button LED on or off

mcp_led_3 BOOL Soft button LED on or off

Table A-3. Command UDT Commands

Command Data Type Description

104 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 105: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Status UDT Commands

A.3 Status UDT Commands

mcp_led_4 BOOL Soft button LED on or off

mcp_led_5 BOOL Soft button LED on or off

mcp_message STRING Message to display on pendant

NOTE: The following commands are required for AdeptSight vision applications. If your application does not use vision, these can be omitted.

vis_sequence_start BOOL Execute vision sequence (vis_sequence_number) 0=No action; 1=Execute command

vis_queue_clear BOOL Remove all instances from queue (vis_queue_number) 0=No action; 1=Clear queue

vis_queue_pop BOOL Remove the instance at the head of the queue specified by vis_queue_number. 0=No action; 1=Pop queue

vis_sequence_number INT Number of sequence to be executed

vis_queue_number SINT Number of queue to be cleared or popped and whose head instance coordinate data is returned in vis_results

Table A-4. Status UDT Commands

Command Data Type Description

power_state BOOL Robot Servo Power: 0=Off; 1=On

fault_state BOOL System Fault: 0=System not faulted;1=System faulted

calibrated_state BOOL Robot Calibration: 0=Not calibrated;1=Calibrated

system_initialized_state BOOL 0=System has not started; 1=System has started

emergency_stop_state BOOL E-stop circuit: 0=Closed; 1=Open

command_execution_state BOOL 0=No command to acknowledge;1=Acknowledge command

in_position_state BOOL 0=Not in position; 1=In position

jog_mode_state BOOL Jog Mode: 0=Not jogging; 1=Jogging

Table A-3. Command UDT Commands

Command Data Type Description

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 105

Page 106: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Command Summary

latched BOOL Robot Latch: 0=Not latched; 1=Latch occurred

tool_mode_state BOOL Tool Offset Mode: 0=Tool not invoked;1=Tool invoked

mcp_connected_state BOOL Manual Control Pendant: 0=Not connected;1=Connected

righty_configuration BOOL Arm Configuration: 0=Lefty; 1=Righty

below_configuration BOOL Arm Configuration: 0=Above; 1=Below

flip_configuration BOOL Arm Configuration: 0=No-flip; 1=Flip

system_heartbeat BOOL Alternates between 0 and 1 with each update of the HERE data

ace_control_mode BOOL 0=Adept ACE does not have robot control; 1=Adept ACE has robot control

input_1001 BOOL XDIO Input 1001

input_1002 BOOL XDIO Input 1002

input_1003 BOOL XDIO Input 1003

input_1004 BOOL XDIO Input 1004

input_1005 BOOL XDIO Input 1005

input_1006 BOOL XDIO Input 1006

input_1007 BOOL XDIO Input 1007

input_1008 BOOL XDIO Input 1008

input_1009 BOOL XDIO Input 1009

input_1010 BOOL XDIO Input 1010

input_1011 BOOL XDIO Input 1011

input_1012 BOOL XDIO Input 1012

soft_signal_2001 BOOL V+ soft signal 2001

soft_signal_2002 BOOL V+ soft signal 2002

soft_signal_2003 BOOL V+ soft signal 2003

soft_signal_2004 BOOL V+ soft signal 2004

motion_counter INT Current motion count

state_1 INT Overall robot state

state_2 INT Motion state

state_3 INT Manual control mode state

Table A-4. Status UDT Commands

Command Data Type Description

106 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 107: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Status UDT Commands

state_4 INT Front panel state

state_5 INT Front panel keyswitch state

state_10 INT Percent of motion complete

mcp_speed INT Pendant Speed Pot Setting

mcp_button_soft_1 BOOL Pendant Soft Button 1: 0=Not pressed; 1=Pressed

mcp_button_soft_2 BOOL Pendant Soft Button 2: 0=Not pressed; 1=Pressed

mcp_button_soft_3 BOOL Pendant Soft Button 3: 0=Not pressed; 1=Pressed

mcp_button_soft_4 BOOL Pendant Soft Button 4: 0=Not pressed; 1=Pressed

mcp_button_soft_5 BOOL Pendant Soft Button 5: 0=Not pressed; 1=Pressed

mcp_button_recdone BOOL Pendant REC/Done Button: 0=Not pressed; 1=Pressed

mcp_button_F1 BOOL Pendant F1 Button: 0=Not pressed; 1=Pressed

mcp_button_F2 BOOL Pendant F2 Button: 0=Not pressed; 1=Pressed

mcp_button_clear_error BOOL Pendant Clear Error: 0=Not pressed; 1=Pressed

mcp_button_enable_power BOOL Pendant Enable Power: 0=Not pressed; 1=Pressed

mcp_button_disable_power BOOL Pendant Disable Power: 0=Not pressed; 1=Pressed

mcp_button_slow BOOL Pendant Slow Button: 0=Not pressed; 1=Pressed

mcp_button_T1 BOOL Pendant T1 Button: 0=Not pressed; 1=Pressed

mcp_button_step BOOL Pendant Step Button: 0=Not pressed; 1=Pressed

mcp_button_yes BOOL Pendant Yes Button: 0=Not pressed; 1=Pressed

mcp_button_no BOOL Pendant No Button: 0=Not pressed; 1=Pressed

mcp_button_0 BOOL Pendant Button: 0=Not pressed; 1=Pressed

mcp_button_1 BOOL Pendant 1 Button: 0=Not pressed; 1=Pressed

mcp_button_2 BOOL Pendant 2 Button: 0=Not pressed; 1=Pressed

mcp_button_3 BOOL Pendant 3 Button: 0=Not pressed; 1=Pressed

mcp_button_4 BOOL Pendant 4 Button: 0=Not pressed; 1=Pressed

mcp_button_5 BOOL Pendant 5 Button: 0=Not pressed; 1=Pressed

mcp_button_6 BOOL Pendant 6 Button: 0=Not pressed; 1=Pressed

mcp_button_7 BOOL Pendant 7 Button: 0=Not pressed; 1=Pressed

Table A-4. Status UDT Commands

Command Data Type Description

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 107

Page 108: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Command Summary

mcp_button_8 BOOL Pendant 8 Button: 0=Not pressed; 1=Pressed

mcp_button_9 BOOL Pendant 9 Button: 0=Not pressed; 1=Pressed

mcp_button_period BOOL Pendant Period Button: 0=Not pressed; 1=Pressed

mcp_button_delete BOOL Pendant Delete Button: 0=Not pressed; 1=Pressed

error_number INT Error number

error_message STRING Error message

here Coordinates Current Cartesian coordinates

phere Joints Current joint coordinates

latch_loc Coordinates Cartesian coordinates at latched position (the cmd_read_latch bit must be enabled for this data to be returned)

NOTE: The following commands are required for AdeptSight vision applications. If your application does not use vision, these can be omitted.

vis_sequence_started BOOL Sequence execution: 0=Not started; 1=Execution started

vis_queue_cleared BOOL Clear command: 0=Not completed; 1=Command completed

vis_queue_popped BOOL Pop command: 0=No action;1=Command completed

vis_results_valid BOOL Validity of results: 0=Data invalid 1=Data valid

vis_system_online BOOL Vision system: 0=Not communicating; 1=Communicating with controller

vis_sequence_number INT Sequence whose status is being returned in vis_sequence_started and vis_sequence_state

vis_sequence_state SINT State of sequence (vis_sequence_number):

0=Idle, 1=Running, 2=Paused, 3=Done, 4=Error, 5=Starting

vis_instances_found SINT Returns the number of instances that have been queued by all of the communications tools within the most recent execution of the sequence specified by vis_sequence_number. Returns 0 if no instances were found or sequence is still executing

Table A-4. Status UDT Commands

Command Data Type Description

108 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 109: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Status UDT Commands

vis_results_queue_number SINT Specifies the queue to use for vis_results

vis_queue_size SINT[8] Number of instances in queues 0-7 (max 127)

vis_results Coordinates Coordinates of the instance at the head of the “vis_results_queue_number” queue

Table A-4. Status UDT Commands

Command Data Type Description

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 109

Page 110: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)
Page 111: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Index

Numerics24 VDC power 28

AAC power

connecting to robot 27turning on 33

acceleration profile, s-curve vs. trapezoid 52, 63Adept Document Library 18angles, joint 92approach and depart 86arm configuration

left/right 87array definition

current position 68

Bbit definitions

input word 67status word 66

brakes 32description 32release button 32releasing J3 for manual movement 32

breaking continuous-path operation 88

Ccable

checks 33connection

PLC to SmartController CX 27robot to SmartController CX 26

diagram for system 23card

CompactFlash memory 20Cautions, Notes, and Warnings in manual 15cell layout considerations 88checks

mechanical 33system cable 33

codes, status panel 31column location, pallet 96command tags 50

instruction 55Jog Mode 56, 58

Jump command 56MCP 65motion qualifier 59output signals 57vision 83

commandscoordinate 101joint 101Jump 53UDT command 102UDT status 105UDT summary 101

commissioning the system 32CompactFlash

memory card 20configuration

left/right robot arm 87connecting

24 VDC 28AC power to robot 27grounds 28PLC to SmartController CX 27robot to SmartController CX 26safety and power control equipment 28user-supplied digital I/O equipment 29

connectorsand indicators, SmartController CX 25and indicators, SmartVision EX 27Ethernet 26SmartServo 26XDIO 26XSYS 26

considerations, performance 88cell layout 88mounting 88part handling 89programming 89

continuous path 87breaking 88moving the robot using 53

coordinate commands 101coordinate system, World 90counter, current motion 68current motion counter 68current position array 68Customer Service assistance 17

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 111

Page 112: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Index

DDC power, connecting 28defining

location 90, 92pallet layout 93

definitionscurrent position array 68input word bit 67instruction commands 55location 60MCP commands 65MCP tags 70pallet 61pallet rows 62status word bit 66vision commands 83

depart and approach 86diagnostic panel, fault codes 31diagram

system cable 23–24digital I/O

connecting user-supplied 29connectors on controller 29

DIP switches, SW1 26Document Library CD-ROM 17–18

Eenvironmental requirements 20ePLC Connect software 35

error messages 97–98equipment

safety and power control 28unpacking and inspecting 19user-supplied 29

error messagesdiagnostic panel 31ePLC Connect software 97–98

error tags 69E-Stop functions, verifying 34Ethernet connector 26

Ffacility overvoltage protection 28facility requirements 20fault codes, diagnostic panel 31functions, verifying E-Stop 34

Ggripper orientation 94grounding system 28

HHow Can I Get Help? 17

II/O equipment, user-supplied 29indicators

LED status 26SmartController CX 25SmartVision EX 27

initializing system 36input

word bit definitions 67inspecting Adept equipment while unpacking 19installation 16

robot 20SmartController CX 20SmartVision EX 21verifying 32

instruction commands 55

JJog Mode command 58joint

angles 92commands 101

joint-interpolated motion 88Jump command 53, 56

Llayout considerations, cell 88LEDs

robot status 31SmartController CX 25status indicators 26

left/right robot arm configuration 87location

defining 90definitions 60–61pallet column 96pallet row 95relative 92

MMCP

tag definitions 70mechanical checks 33memory card

CompactFlash 20messages

ePLC Connect software error 97–98Mode command, Jog 56, 58

112 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 113: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Index

motioncounter, current 68joint-interpolated 88parameters, robot 71, 85qualifier commands 59straight-line motion 88

mountingconsiderations, robot 88robot 20SmartController CX 20–21SmartVision EX 21

moving robot 52continuous path 53Jump command 53

NNotes, Cautions, and Warnings in manual 15

Ooperation

breaking continuous-path 88orientation

pallet 94pallet frame 93

origin, pallet 95output signals, commands 57overvoltage protection, facility 28

Ppallet

column location 96defining layout 93definitions 61frame orientation 93orientation 94origin 95row configurations 62row location 95tags 61

panel, status 31parameters, robot motion 71, 85part

handling considerations 89location, row 95

path, continuous 53, 87performance considerations 88PLC

cable connections, SmartController CX 27command tags 50software overview 50system cable diagram 24user-supplied 13

position array definition, current 68

power24 VDC 28AC to robot 27safety and control equipment 28

profile, acceleration 52, 63programming considerations 89protection

facility overvoltage 28

Rrelated manuals 18relative location 92release button, brake 32relocation of system, repacking for 20repacking for relocation 20requirements

environmental and facility 20robot

arm configuration 86diagnostic panel fault codes 31grounding 28motion parameters 71, 85mounting 20moving (programming) 52–53overview 14SmartController CX connections 26status LED 31system cable diagram 24transport and storage 19unpacking and inspection 19

row location, pallet 95

Ssafety and power control equipment 28s-curve vs. trapezoid acceleration profile 52, 63shipping and storage 19signals

command, output 57SmartController CX 25

connecting 24 VDC power 28connecting to PLC 27connecting to robot 26connectors and indicators 25installation 20LEDs 25mounting 20

SmartServo 1.1 and 1.2 26SmartVision EX 27

connectors and indicators 27installation 21mounting 21

softwareAdept ACE 36

Adept ePLC Connect 2.0 Software User’s Guide, Rev B 113

Page 114: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

Index

ePLC Connect 35PLC 50

speed, acceleration, and deceleration 85start-up procedure, system 33status

LED 26, 31panel 31

codes 31tags 65UDT commands

command 105word bit definitions 66

storage 19straight-line motion 88SW1 DIP switches 26switches, SW1 DIP 26system

cable checks 33cable diagram 23commissioning 32grounding 28initializing 36start-up procedure 33World coordinate 90

Ttags

command 50error 69instruction command 55Jog Mode command 56, 58Jump command 56location 60MCP 65, 70motion qualifier commands 59moving the robot 56output signals command 57pallet 61PLC command 50status 65

transport and storage 19trapezoid vs. s-curve acceleration profile 52, 63

UUDT

status commands 105UDT commands

command 102coordinate 101joint 101summary 101

unpacking 19inspecting Adept equipment 19

user-supplied

digital I/O equipment 29PLC 13safety and power control equipment 28safety equipment checks 33

Vverifying

E-Stop functions 34installation 32

vision commandsdefinitions 83

WWarnings, Cautions, and Notes in manual 15word bit definitions

input 67status 66

World coordinate system 90

XXDIO connector 26XSYS connector 26

114 Adept ePLC Connect 2.0 Software User’s Guide, Rev B

Page 115: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)
Page 116: Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)

5960 Inglewood DrivePleasanton, CA 94588925·245·3400P/N: 08822-000 Rev B