Adept ePLC Connect 2 ePLC Connect 2.0 Software User’s Guide (for RSLogix 5000 PLCs)
Transcript of 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)
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
5960 Inglewood DrivePleasanton, CA 94588925·245·3400P/N: 08822-000 Rev B