Application manual

Motion coordination and supervision
Robot Controller RobotWare 5.0

Application manual Motion coordination and supervision
RobotWare 5.0 Document ID: 3HAC18154-1 Revision: E

© Copyright 2004-2007 ABB. All rights reserved.

© Copyright 2004-2007 ABB. Contravention will be prosecuted. This manual and parts thereof must not be reproduced or copied without ABB's written permission. All rights reserved. ABB AB Robotics Products SE-721 68 Västerås Sweden . and contents thereof must not be imparted to a third party nor be used for any unauthorized purpose. © Copyright 2004-2007 ABB All rights reserved. ABB assumes no responsibility for any errors that may appear in this manual. Additional copies of this manual may be obtained from ABB at its then current charge. damages to persons or property. fitness for a specific purpose or the like. In no event shall ABB be liable for incidental or consequential damages arising from use of this manual and products described herein. nothing herein shall be construed as any kind of guarantee or warranty by ABB for losses.The information in this manual is subject to change without notice and should not be construed as a commitment by ABB. Except as may be expressly stated anywhere in this manual.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 1. . . . . . .4. . . . All rights reserved. . . . . . . . . . . . . . . . . . . . . . . . . 35 © Copyright 2004-2007 ABB. . . . . . . . . . . . . . . . . . . . . . . . . .7 Information on the FlexPendant . . .4. . . . . . . . .4 How to avoid false triggering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3 Software installation .4. .2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2.4 Programming the synchronization . . . . . . .1 General issues when programming with the synchronization option. . . . .5. . . . . 54 2. 5 Product documentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 2. 2.2. . . . . . . . .4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1. . . . . . . . . . . . . . . . . . 30 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2. . . . . . . . . . . . . . . . . . .1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1. . . . . . . . . . . . . . . . . . . . . . . . . . 53 2. . . . . . . . . . . . . . . . . . . . . . . .5. . . . . . . . . . . . . . . . . . . . . M2004 . . . . . . . .1 Sensor Synchronization . . . . . . . . . . .5 Robot to robot synchronization. . . . .1. . . . . . 56 3HAC18154-1 Revision: E 3 . . . . . . . .2. . . . . . . . 49 2. . . . . . . .3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 2. . . . . . . 52 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1. .2 RAPID components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 The concept of robot to robot synchronization. . 48 2. . . . . . . . . . . . . . . . . . . . . . . . . . . 33 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4 Use several sensors. . .2 Adjust supervision from FlexPendant . . . . . . . . . . . . . . 17 1. . . .5. . . . . . . . . . . . . . . . . . . . . . . .2 Configuration and programming facilities . 36 2. . . . . . . . 42 2. . . . . . . . . . . . . . . . . . .1 Introduction . . . . . .1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1. . . . 35 2. . . . . . . . . . . . . . . . . . . . . . . . . . 29 2. . . . . . . . . 18 1. . . . . . . . . . . . . . . . . . . . . .5 Limitations . .3 Master robot configuration parameters . . . . . . . . . . . .1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 Sensor installation . . . . . . . . . . . . . . . . . .9 Modes of operation. . . .3 Adjust supervision from RAPID program . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 2. . . . . . . . . . . . . . . . .6 Drop sensor object . . . . . . .2. . . . . . . . . . . . 18 1. . . . . . . . .1. . .3 Synchronization features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 1. . 23 2. . . . . . . . . . . . . .2.2 Limitations . . . . . . . . . . . . . . . . . . 44 2. . . . . . . . . . . . . .4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1 Collision Detection 11 1. . . . . . . . . . . . . . . . . . . . . . . .3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3. .3. . . . . . . . . . . . . .4 General description of the synchronization process . 15 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 Required hardware . . . . . . . . . . . . . . . . . . 11 1. . . . . . . . .4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3 How to use Collision Detection . 15 1. . . . . . . . . . . . . . . . . .1 Encoder specification . . . . . . . . . 38 2. . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2. . . . . . . . . . . . . . . . . . . . . . 30 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3 Installation of several sensors. . . . . . . . . . . . . . . . . .4 Connecting encoder and encoder interface unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Safety . . . . . . . . . . . . . . . . . . . .5. . . . . . . . . . . . . . . . . . . . . .3 Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3 What happens at a collision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 Reloading saved Motion parameters . . . 12 1. . .1. . .5 Finepoint programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1. . . . . . . . . . . . . . . . . . . . . . . . . . 47 2. . . . . . . . . .2 Analog Synchronization . . . . . . . . 40 2. . . . . 39 2. . . . . .Table of Contents Overview . . . . . . . . . . . . . .3 Installation recommendations . 13 1. . .2. . . . . . . . 30 2. . . . . . . . . . . .1 System parameters . . .1. . . . . . . . . .4 Slave robot configuration parameters. . . . . .4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 2 Machine Synchronization 23 2. . . . . . . . . . . . .2 Encoder Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3. . . . . . . . . . . . . . . . . . . . . . .3. . . .2. . . . . . . . . . . . . . . . . .1 Overview . . . . . . . 36 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 2. . . . . . . . . . . . .1 Set up system parameters . . . . . . . . . . . . .2 Programming examples . . . . .1. . . . . . . . . . . . . . . . . . . . . . . . .3. . . . . . . . . . . . 25 2. . . . . . . . . . . . . . . . .2 What is needed . . . . .2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 2. . . . . . . . . . . . . . . . . . . . . . . . . . . 31 2. . . . . . . . . . . . . . . . .1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8 Programming considerations . 40 2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 Introduction . . . .3 Entering and exiting coordinated motion in corner zones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 Hardware configuration . . . . . .

. . . . . . . . . . . . . . . . . .9 Programming and configuration data. . . . . . . . . . . . . . . . . . .5. . . . . . . . 96 2. . . . . . . .5 PrxDeactRecord . . . . . . . . . . . . . . . . . . . . . . . . . .10. . . . . . . . . .7. . . . . . . . . . . . . . . . . . . . . . .9 PrxSetRecordSampleTime . . . . . .1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2. . . . . . .7. . . . . . . .1. . . . . . . . . .1. . .10. . . . . . . . . . . . . . .10. . . . . . . . 97 2.10. . . . . . .1 PrxGetMaxRecordpos. . . . . . . .2 Functions. . . . . . . .6 PrxResetPos . . . . . . . . . . . . . . . . . . . . .1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . All rights reserved. . . . . . .2 Configuration of system parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10. . . . . 100 2. . . . . . . . . . . . . . . . . . . 91 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3 I/O signals . . . . . . . . . . . . . .6 Programming example for slave robot . . . . . . . . . . . . . . . . . .3 Program example . . . . . . . . . . . . . . . 81 2. . . . . . . . . .10. .10. . . . . .16 SupSyncSensorOn. . . . . . . . . . . .1 DropSensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 Configuration of system parameters . . . . . . . . . . . . . . . . . 69 2. . . . . . .6. . .10. . . . . . . . . .2 System parameters . . . 73 2. . . . 76 2. . . . . . . . . . . . .10. . . . . . . . . 59 2. . . . . . . . . . . .1 Introduction . . . . .10. . . . . . . . . . . . . . . . . . . . . . 62 2. . . . . . . . . . . . . . . .2. . . . . . . . . . .13 PrxStoreRecord . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1. . . . . . . . . . . . . . . . . .1. . . . . . . . . . . . . . . .14 PrxUseFileRecord . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 PrxActivAndStoreRecord . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 2. . . . . . . . .1 Instructions . . . . . . . . . . . 85 2. . . . . . . . . . . . . . . . . . . . 79 2. . . . . . . . . . . . . . .Sync to sensor . . . .Wait for connection on sensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 2. . . .5 Programming example for master robot .6. . . . . . . . . . .1. . . . .10. . . . .18 WaitSensor . . . . . . . . . . . . . . . . . .17 SyncToSensor . . . . . . . . . . . . . . . . . . . .1 Supervise movement . . . 65 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1. . . . . 105 Index 107 4 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB. . . . . . . . . .10 RAPID reference information. . . . .1.8 Supervision . . . . . . . . . . . . . . . . .7. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 2. . . .1. . . . . . .1. . . . . . . . . . . . . . . . 89 2. . . . . . . . . . . . . . . . . . .10. . . . . . . . . . . . . . . . . . . . . .10. . . . . . . . . . . . .10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 2. . . . . . . . . . . . . . . . . . . . . . . . .1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 2. . . . . . . . . 67 2. . . . . . . . . . . . . . . . . . . . . . . . .9. . . . . . 62 2. . . . . . . . . . . . . . . . . . . . .10. . . . 63 2. . . . . .10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 . . . . . . . . . . . . . . . . . . . .1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3 PrxActivRecord. . . . . . . . . .10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 2. . . .Drop object on sensor .1. . . .1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 2. . . . . . . . . . . . . . . .1. . . . 94 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3 Program example . . . . . . . . . . . . . . . .10. . . . . . .12 PrxStopRecord . . . . . . . . . . . . . . . . . . . . .11 PrxStartRecord . . . .1. . . . . . . . . . . . . . . . . . . . .7 Synchronize with molding machine using recorded profile. . . . . . . 66 2. . .9. .10. . . . .7 PrxResetRecords . . . . . . . . . 61 2.1. . . .10. . . . . . . . . . . . . . . . . . . . . .8 PrxSetPosOffset . . .Table of Contents 2.4 PrxDbgStoreRecord . . . . . . . . .5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9. . . . . . . . . . . . . . . . . . . . . . . . . . .1 RAPID components . . . . . . . . . . . . . . . . . . 83 2. . . . . . . . . . . . . . 77 2. 105 2. . . .8. . . . . . . . . . . . . . . . . . .15 SupSyncSensorOff . . . . . . . . . . . 71 2. . . . . . . . .10 PrxSetSyncalarm. . 77 2. . . . . . . . . . . . . . . . . . . . . . 71 2. . . . . 93 2. . . . . . . . . . . . . . . . . .6. . . . . . . .6 Synchronize with hydraulic press using recorded profile . . . . 66 2. . . . . . . . . . . . .

2. and similar..IRC5 Application manual .DeviceNet 3HAC16590-1 3HAC17076-1 3HAC021313-001 3HAC020676-001 Product Specification .RAPID Instructions. • • • Organization of Chapters The manual is organized in the following chapters: Chapter 1. Prerequisites The reader should. Contents Describes the option Collision Detection. © Copyright 2004-2007 ABB. Describes Machine Synchronization (the options Sensor Synchronization and Analog Synchronization). Detailed information regarding syntax for RAPID routines. RobotWare 5.Overview Overview About This Manual This manual explains the basics of when and how to use the following RobotWare options: • • • Usage This manual can be used either as a reference to find out if an option is the right choice for solving a problem. or as a description of how to use an option. Who Should Read This Manual? This manual is mainly intended for robot programmers.. Collision Detection Sensor Synchronization Analog Synchronization be familiar with industrial robots and their terminology be familiar with the RAPID programming language be familiar with system parameters and how to configure them.RAPID overview Document Id 3HAC16580-1 Technical reference manual . but can be found in the respective reference manual.0 3HAC022349-001 Continues on next page 3HAC18154-1 Revision: E 5 . is not described here.IRC5 with FlexPendant Technical reference manual .System parameters Product manual . All rights reserved. References Reference Technical reference manual .Controller Software IRC5. Functions and 3HAC16581-1 Data types Operating manual .

Overview Continued Revisions Revision Description A B C D E First edition Sensor Synchronization added Corrected errors in Sensor Synchronization. Minor corrections. section slave robot configuration parameters. The option Analog Synchronization has been added. . All rights reserved. Added RAPID reference for Sensor Synchronization. which affects most parts of the Machine Synchronization chapter. 6 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB.

electrical connections) Maintenance (descriptions of all required preventive maintenance procedures including intervals) Repair (descriptions of all recommended repair procedures including spare parts) Additional procedures. regardless of whether the products are standard or optional. This listing is based on the type of information contained within the documents. procedures. M2004 Product documentation. robots and controllers. lists of tools. • • • Application manuals RAPID Overview: An overview of the RAPID programming language. All rights reserved. The documents listed are valid for M2004 robot systems. An application manual generally contains information about: • • • • The purpose of the application (what it does and when it is useful) What is included (for example cables. only the ones pertaining to the equipment delivered. M2004 General The robot documentation is divided into a number of categories. Functions and Data types: Description and syntax for all RAPID instructions. system parameters. This means that any given delivery of robot products will not contain all documents listed. all documents listed may be ordered from ABB. An application manual can describe one or several applications. CD with PC software) How to use the application Examples of how to use the application Continues on next page 3HAC18154-1 Revision: E 7 . decommissioning) Reference information (article numbers for documentation referred to in Product manual.Product documentation. if any (calibration. RAPID Instructions. However. I/O boards. System parameters: Description of system parameters and configuration workflows. RAPID instructions. will be delivered with a Product manual that contains: • • • • • • • • • Safety information Installation and commissioning (descriptions of mechanical installation. safety standards) Part list Foldouts or exploded views Circuit diagrams Technical reference manuals The following manuals describe the robot software in general and contain relevant reference information: © Copyright 2004-2007 ABB. Specific applications (for example software or hardware options) are described in Application manuals. Product manuals All hardware. functions and data types.

that is production cell operators. . programmers and trouble shooters.IRC5 and RobotStudio Online IRC5 with FlexPendant RobotStudio Online Trouble shooting . The group of manuals includes: • • • • • Emergency safety information Getting started . All rights reserved. M2004 Continued Operating manuals This group of manuals is aimed at those having first hand operational contact with the robot.IRC5 for the controller and robot 8 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB.Product documentation.

A pause or long stop in movement can be followed by a fast hazardous movement. it is important that all safety regulations are followed when entering safeguarded space. make sure you are familiar with the safety regulations described in Operating manual .IRC5 with FlexPendant. Therefore. All rights reserved. 3HAC18154-1 Revision: E 9 . Even if a pattern of movement is predicted. Safety regulations Before beginning work with the robot. a change in operation can be triggered by an external signal resulting in an unexpected movement.Safety Safety Safety of personnel A robot is heavy and extremely powerful regardless of its speed. © Copyright 2004-2007 ABB.

10 Safety 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB. All rights reserved. .

Because the forces on the robot can vary during program execution. What is included The RobotWare option Collision Detection gives you access to: • system parameters for defining if Collision Detection should be active and how sensitive it should be (without the option you can only turn detection on and off for Auto mode) instruction for on-line changes of the sensitivity:MotionSup © Copyright 2004-2007 ABB. • Basic approach Collision Detection is by default always active when the robot is moving. Description The software option Collision Detection identifies a collision by high sensitivity. WARNING! Collision Detection cannot protect equipment from damage at a full speed collision. After a collision error message has been acknowledged. Collision detection is more sensitive than the ordinary supervision and has extra features.1. If necessary. the movement can continue without having to press Motors on on the controller. the sensitivity can be tuned as well as turned on and off. In many cases this means that you can use Collision Detection without having to take any active measures. the robot will immediately stop and relieve the residual forces by moving in reversed direction a short distance along its path.1 Collision Detection 1. All rights reserved.1. When a collision is detected. For detailed descriptions of how this is done.1. model based supervision of the robot. This helps protecting the robot and external equipment from severe damage. Depending on what forces you deliberately apply on the robot. you can turn Collision Detection on and off or change its sensitivity in two ways: • • temporary changes can be made on-line with the RAPID instruction MotionSup permanent changes are made through the system parameters. Overview Purpose Collision Detection is a software option that reduces collision impact forces on the robot.1 Introduction 1. Overview 1 Collision Detection 1.1. 3HAC18154-1 Revision: E 11 . the sensitivity can be set on-line in the program code. see How to use Collision Detection on page 18.

Independent joint The collision detection is deactivated when at least one axis is run in independent joint mode. Limitations 1. For more information. the collision detection may trigger when the track moves. Soft servo The collision detection may trigger without a collision when the robot is used in soft servo mode.IRC5 with FlexPendant. it may take a few seconds before the robot starts the reversed movement. If it is not deactivated. the payload of the robot must be correctly defined. Reversed movement distance The distance the robot is reversed after a collision is proportional to the speed of the motion before the collision. Limitations Load definition In order to detect collisions properly. As a result.2.2. or any other external axes. In this case. it may not be possible to jog the robot without the supervision triggering. Delay before reversed movement In the event of a stiff collision during program execution. If repeated low speed collisions occur. it is recommended to turn the collision detection off when the robot is in soft servo mode. It is not available for track motions.1.1. As a result. Robot on track motion If the robot is mounted on a track motion the collision detection should be deactivated when the track motion is moving. . No change until the robot moves If the RAPID instruction MotionSup is used to turn off the collision detection. All rights reserved. orbit stations. the robot may not be reversed sufficiently to relieve the stress of the collision. 12 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB. TIP! Use Load Identification to define the payload. this will only take effect once the robot starts to move. Robot axes only Collision Detection is only available for the robot axes. turn Collision Detection off temporarily and jog the robot away from the obstacle.1 Collision Detection 1. This is also the case even when it is an external axis that is run as an independent joint. even if there is no collision. see Operating manual . the digital output MotSupOn may temporarily have an unexpected value at program start before the robot starts to move. Therefore.

© Copyright 2004-2007 ABB. When . the motor torques are reversed and the mechanical brakes applied in order to stop the robot the robot moves in reversed direction a short distance along the path in order to remove any residual forces which may be present if a collision or jam occurred the robot stops again and remains in the motors on state the collision is detected the robot has stopped the residual forces are removed Continues on next page 3HAC18154-1 Revision: E 13 . The program execution will stop with an error message. All rights reserved. the robot will stop as quickly as possible.... Then it will move in the reverse direction to remove residual forces. see the diagram below. The robot remains in the state motors on so that program execution can be resumed after the collision error message has been acknowledged. What happens at a collision 1. then .1 Collision Detection 1. A typical collision is illustrated below.1.3.3..1. Collision illustration xx0300000361 Robot behavior after a collision This list shows the order of events after a collision. For an illustration of the sequence. What happens at a collision Overview When the collision detection is triggered.

3. . All rights reserved.1.1 Collision Detection 1. What happens at a collision Continued Speed and torque diagram en0300000360 14 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB.

1. Jog Collision Detection is by default set to On.2.2 Configuration and programming facilities 1. 3HAC18154-1 Revision: E 15 . Jog Collision Detection Level is by default set to 100%. see Technical reference manual . Collision Detection Memory is by default set to 75 ms. Modifies the Collision Detection supervision level for program execution by the specified percentage value. Jog Collision Detection Level Collision Detection Memory © Copyright 2004-2007 ABB. System parameters 1. Motion Supervision Max Level is only available if the system is installed in Service mode. System parameters About system parameters The parameters for Collision Detection do not require a warm start to take effect. Path Collision Detection Level is by default set to 100%.1 Collision Detection 1. specified in seconds. Modifies the Collision Detection supervision level for jogging by the specified percentage value. Defines how much the robot moves in reversed direction on the path after a collision. Path Collision Detection is by default set to On. Motion Supervision These parameters belong to the type Motion Supervision in the topic Motion. Motion System These parameters belong to the topic Motion and the type Motion System. All rights reserved. A large percentage value makes the function less sensitive. If the robot moved fast before the collision it will move away a larger distance than if the speed was slow.1. Turn the collision detection On or Off for jogging. Parameter Path Collision Detection Jog Collision Detection Path Collision Detection Level Description Turn the collision detection On or Off for program execution. It is by default set to 300%. Parameter Motion Supervision Max Level Description Set the maximum level to which the total collision detection tune level can be changed.System parameters.2. A large percentage value makes the function less sensitive. For more information about the parameters.

2. RAPID components Instructions This is a brief description of the instructions in Collision Detection.2. • modify the supervision level with a specified percentage value (1-300%). A large percentage value makes the function less sensitive. Functions and Data types. Instruction MotionSup Description MotionSup is used to: • activate or deactivate Collision Detection.1 Collision Detection 1. RAPID components 1. This can only be done if the parameter Path Collision Detection is set to On. 16 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB. For more information. .2. see respective instruction in Technical reference manual .2. All rights reserved.RAPID Instructions.

3. When the robot starts to move.2.3. MotSupOn is still high.2. For more information. All rights reserved. if Collision Detection is active and the robot is moving. Signals Digital outputs This is a brief description of the digital outputs in Collision Detection. MotSupOn is high. If the robot is stopped and Collision Detection turned off. see respective digital output in Technical reference manual . Thus. MotSupOn switches to low.System parameters. Note that a change in the state takes effect when a motion starts. Signals 1.1 Collision Detection 1. Digital output MotSupOn Description MotSupOn is high when Collision Detection is active and low when it is not active. 3HAC18154-1 Revision: E 17 . It stays high until the error code is acknowledged from the FlexPendant.. MotSupTrigg goes high when the collision detection triggers. MotSupTrigg © Copyright 2004-2007 ABB.

1.3 How to use Collision Detection 1.3. All rights reserved.3. 18 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB. the parameter Path Collision Detection must be set to On. To be able to use Collision Detection during jogging. Set up system parameters 1. Set the parameter Jog Collision Detection Level to the percentage value you want as default during jogging. Define supervision levels Set the parameter Path Collision Detection Level to the percentage value you want as default during program execution.1 Collision Detection 1. the parameter Jog Collision Detection must be set to On. Set up system parameters Activate supervision To be able to use Collision Detection during program execution. .1.

All rights reserved. These parameters are described in System parameters on page 15. en0400000651 If the motion supervision for jogging is turned off in the dialog box and a program is executed.2.2. Adjust supervision from FlexPendant 1. The right box allows you to adjust supervision for jogging. NOTE! The sensitivity is set in percent of the value set in the system parameters. This is a safety measure to avoid having the function turned off without knowing about it. Adjust supervision from FlexPendant Speed adjusted supervision level Collision Detection uses a variable supervision level.1 Collision Detection 1. it is possible to turn the function on and off and to tune the supervision levels. Example: If the tune value in the system parameters is set to 150% and the sensitivity is set to 200% on the FlexPendant. At low speeds it is more sensitive than at high speeds. the resulting tune level will be 300%. If the program is then stopped and the robot jogged.3. select Control Panel from the ABB menu and then tap Settings. 3HAC18154-1 Revision: E 19 . Both types of supervision can be activated or deactivated.3. For this reason. Separate tuning parameters are available for jogging and program execution. Set jog supervision on FlexPendant On the FlexPendant. the status flag in the dialog window is set to ON again. Collision Detection can still be active during execution of the program. © Copyright 2004-2007 ABB. no tuning of the function should be required by the user during normal operating conditions. However. and the sensitivity level (in percentage) can be set. The left box allows you to adjust supervision for programmed paths.

Temporarily deactivate supervision If external forces will affect the robot during a part of the program execution. All rights reserved. Tuning © Copyright 2004-2007 ABB. The supervision level can be tuned during program execution with the instruction MotionSup. Adjust supervision from RAPID program 1.3. This is an example of an instruction that increase the supervision level to 200%: MotionSup \On \TuneValue:=200. both values are taken into consideration. Example: If the tune value in the system parameters is set to 150% and the tune value is set to 200% in the RAPID instruction the resulting tune level will be 300%. The tune values are set in percent of the basic tuning where 100% corresponds to the basic values. 20 3HAC18154-1 Revision: E . temporarily deactivate the supervision with the following instruction: MotionSup \Off. Adjust supervision from RAPID program Default values If Collision Detection is activated with the system parameters. These values are set automatically: • • • at cold start when a new program is loaded when starting program execution from the beginning. it is by default active during program execution with the tune value 100%.3. NOTE! If the supervision is deactivated with the system parameters. it cannot be activated with RAPID instructions. A higher percentage gives a less sensitive system. it can be activated with the following instruction: MotionSup \On.3. NOTE! If tune values are set in the system parameters and in the RAPID instruction.3.1 Collision Detection 1. Reactivate supervision If the supervision has been temporarily deactivated.

1 Collision Detection 1. increase supervision level manually define the arm load or increase supervision level increase the supervision level for jogging and program execution in steps of 30 percent until you no longer receive the error code.3. the payload is incorrectly defined the payload has large mass or inertia the arm load (cables or similar) cause trigger the application involves many external process forces then . For more information..3. everything else fails turn off Collision Detection. use Load Identification to define it..4. Actions to take If . © Copyright 2004-2007 ABB. All rights reserved. How to avoid false triggering 1. it may trigger if the load data is incorrect or if there are large process forces acting on the robot. see Operating manual ..IRC5 with FlexPendant.4. 3HAC18154-1 Revision: E 21 . the external process forces use the instruction MotionSup to raise the supervision level are only temporary or turn the function off temporarily. How to avoid false triggering About false triggering Because the supervision is designed to be very sensitive..

.1 Collision Detection 1. All rights reserved.4.3. How to avoid false triggering 22 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB.

it is the hardware and configuration that differs. Information that is only valid for one of the options is said to be specific for "Sensor Synchronization" or "Analog Synchronization". Overview Two options Machine Synchronization consists of two options. Sensor Synchronization and Analog Synchronization.1. The difference between the two options is that: • • Analog Synchronization is used together with a sensor that shows the position of the external mechanical unit as an analog signal. The speed of the robot TCP will be adjusted in correlation to the sensor output. The term "synchronization option" refers to both options.1. unless something else is specified. Functionality The external device connected to the sensor cannot be controlled by the robot controller. Sensor Synchronization requires an encoder that counts pulses as the external mechanical unit move. The functionality is very similar for both these options. The synchronization with the external device does not affect the path of the robot TCP. Description For the synchronization. Purpose The synchronization option adjusts the robot speed to an external moving device (e.2 Machine Synchronization 2. Overview 2 Machine Synchronization 2. It can also be used to synchronize two robots with each other.1. However.1 Introduction 2. in some ways it has similarities with a mechanical unit controlled by the robot controller: • • • the sensor positions appears in the Jogging Window on the FlexPendant the sensor positions appears in the robtarget when a MODPOS operation is performed the mechanical unit may be activated. All information in this chapter refers to both options. turn table or similar device.g. conveyor. a sensor is used to detect the movements of a press door. and deactivated © Copyright 2004-2007 ABB. a press or conveyor) with the help of a sensor. so that the robot will reach its programmed target at the same time as the external device reaches its programmed position. All rights reserved. but it affects the speed at which the robot moves along this path. and an encoder interface unit which transforms the pulses into a sensor position. Continues on next page 3HAC18154-1 Revision: E 23 .1.

see the respective section. Configure the system parameters. Install the synchronization software.1.1.2 Machine Synchronization 2. All rights reserved. • • • • Install and connect hardware. . 24 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB. For a more detailed description of how this is done. Write a program that connects to the sensor and uses synchronization for robot movements (or a program for a master/slave robot application). Overview Continued Basic Approach This is the general approach for setting up the synchronization option.

External device that dictates the robot speed. giving input to the controller Continues on next page 3HAC18154-1 Revision: E 25 .1.g.2 Machine Synchronization 2. All rights reserved. What is needed Sensor Synchronisation The Sensor Synchronization application consist of the following components: en0400000655 A B C D E F B+C+D © Copyright 2004-2007 ABB. a press door Synchronization switch Encoder Encoder interface unit (DSQC 377) Controller Robot Act as a sensor.2. What is needed 2. e.1.2.

2 Machine Synchronization 2.1.2. . What is needed Continued Analog Synchronization The Analog Synchronization application consist of the following components: xx0700000431 A B C D Mold press that dictates the robot speed Analog sensor for press position Controller Robot 26 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB. All rights reserved.

via the sensor. The encoder interface unit will maintain the object queue. the Tool Center Point (TCP) of the robot will stay within the programmed position corresponding to the sensor.3.100 ms for Analog Synchronization This is valid as long as the robot is within its dynamic limits with the added sensor motion. For Sensor Synchronization. Object queue RAPID access to sensor data Multiple sensors © Copyright 2004-2007 ABB.50 ms for Sensor Synchronization • +/. 3HAC18154-1 Revision: E 27 . A RAPID program has access to the current position and speed of the external device.2 Machine Synchronization 2. This figure depends on the calibration of the robot and sensor and is applicable for linear synchronization only.3.1. each sensor must have a DSQC 377. Up to 2 sensors are supported. with an error margin of: • +/. Synchronization features 2. All rights reserved. Only for Sensor Synchronization: Each time the external device trigger the synchronization switch. although for Sensor Synchronization the queue normally does not contain more than one object. a sensor object is created in the object queue.1. Synchronization features Features The synchronization option provides the following features: Feature Accuracy Description In Auto operation at constant sensor speed.

1.. When. All rights reserved. the sensor object is then dropped (removed from the object queue).4. For both Sensor Synchronization and Analog Synchronization.1. The synchronization is ended.. a signal from the robot controller (or PLC) orders the press to start. the robot places (or removes) a work piece in the press. the press is open enough for the robot to enter 28 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB.2 Machine Synchronization 2. For Sensor Synchronization. .4. synchronized with the press. General description of the synchronization process Example with a press This example shows the very basic steps when synchronization is used for material handling for a press. The robot connects to the object. General description of the synchronization process 2. the robot moves. the synchronization switch is triggered and a sensor object is created in the object queue.. towards the press and reaches it when the press is open enough.. the press is closed and ready to start the press starts open Then. For Sensor Synchronization.

If the system is restarted with a Warm Start or if the power supply to either the controller or the encoder interface unit fails. Accuracy will decrease at speeds over those specified. This speed depends on the selection of encoder. © Copyright 2004-2007 ABB. Maximum speed There is no determined maximum speed for the external device. Limitations Limitations on additional axes Each sensor is considered an additional axis. Minimum speed In order to maintain a smooth and accurate motion. All rights reserved. The device is considered to be still if its movement is slower than the minimum speed. Object queue lost on warm start or power failure Only for Sensor Synchronization: The object queue is kept on the encoder interface unit (DSQC 377). The first installed sensor will use measurement node 6 and the second sensor will use measurement node 5.2 Machine Synchronization 2. Limitations 2.1.1. For Conveyor Tracking. then the object queue will be lost. there is a minimum speed of the external device that is detected. These measurement nodes are not available for additional axes and no resolvers should be connected to these nodes on any additional axes measurement boards. CNV2 must be deactivated.5. For Machine Synchronization (Sensor Synchronization or Analog Synchronization). It can vary from 4mm/s 8mm/s. Thus the system limitation of 6 active additional axes must be reduced by the number of active and installed sensors. only one of the mechanical units SSYNC1 and CNV2 should be active at the same time. 3HAC18154-1 Revision: E 29 . and the robot will no longer be able to follow the sensor at very high sensor speeds (>1000mm/s) or with robot dynamic limitations. SSYNC1 must be deactivated. Compatibility with Conveyor Tracking option If both Machine Synchronization and Conveyor Tracking options are installed.5.

1. when the sensor is not moving.2. Encoder specification Two phase type The encoder must be of two phase type for quadrature pulses.1.2.100 mA 2 phase with 90 degree phase shift 50% 20 kHz Example encoder An example of an encoder that fills these criteria. Technical data Output signal: Voltage: Current: Phase: Duty cycle: Max.2 Machine Synchronization 2.1. 30 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB.30 V (normally supplied by 24 VDC from encoder interface unit) 50 .2.1. All rights reserved.2 Hardware configuration 2. Sensor Synchronization 2. frequency: Open collector PNP output 10 .1. . Encoder specification 2. is the Lenord & Bauer GEL 262. to enable registration of reverse sensor motion. and to avoid false counts due to vibration etc.

10000 counts per meter for an encoder with the pulse ratio 1250 . A and B which differ in phase by 90°. The pulse ratio from the encoder should be in the range of 1250 .2 Machine Synchronization 2.2500. Pulse channels The encoder has two pulse channels. the external device movement must be between 0.2. This means that the control software will measure 5000 . The pulses from channel A and B are used in quadrature to multiply the pulse ratio by four to get counts. Encoder Description 2. • • • The number of pulses per revolution for the encoder must be selected in relation to the gear reduction between the moving devices.1.2.2. Each channel will send a fixed number of pulses per revolution depending on the construction of the encoder.2.2 and 5 meters (or radians).2500 pulses per meter of sensor motion. Encoder Description Overview The encoder provides a series of pulses indicating the motion detected by the sensor. For every meter the robot moves. Synchronization To get an accurate synchronization. All rights reserved. the movements of the external device must remain within some limits relative to robot movements.1. This is used to synchronize the motion between the robot and the external device. 3HAC18154-1 Revision: E 31 . en0300000556 © Copyright 2004-2007 ABB.

2 Machine Synchronization 2. the drive unit of the external the moving device itself may be a source of inaccuracy as the device is located far away moving device will stretch or flex over the distance from the from the encoder drive unit to the encoder cell. to prevent damage from vibration. NOTE! The encoder is a sensitive measuring device and for that reason it is important that no other forces than the shaft rotation are transferred from the sensor to the encoder and that the encoder is mounted using shock absorbers etc.... 32 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB. . the drive unit includes a clutch arrangement the encoder is connected directly to a drive unit shaft Then. This means that the encoder should be installed as close to the robot as practically possible. In such a case it may be better to mount the encoder closer to the drive unit with a different coupling arrangement.2.3.3. Installation recommendations Overview The encoder must be installed in such a way that it gives precise feedback of the sensor output (reflects the true motion of the external device). the encoder must be connected on the sensor side of the clutch. All rights reserved.2.1.. Installation recommendations 2. Placement The following is to be considered before start-up If. directly or via a gear belt arrangement. The encoder is normally installed on the drive unit of the external device. it is important to install a specially designed flexible coupling to prevent applying mechanical forces to the encoder rotor.1. no further away than 30 meters. The encoder may be connected to an output shaft on the drive unit.

Connecting encoder and encoder interface unit Overview If the cable from the robot to the encoder is too long. install a capacitor between the signal wire and ground for each of the two phases. • • One encoder can be connected to several encoder interface units. depending on the length of the cable.2. Reduce noise To reduce noise. values are 100 nF . en0300000611 Continues on next page 3HAC18154-1 Revision: E 33 . each controller must have an encoder interface unit if more than one robot is to use the sensor.2 Machine Synchronization 2.4. See Product manual . Connecting encoder and encoder interface unit 2. Reduce spike pulses To reduce spike pulses. The correct capacitance value can be determined by viewing the encoder signal on an oscilloscope. the inductance in the cable will produce spike pulses on the encoder signal.1. When connecting two encoder interface units to the same encoder. Connecting encoder and the synchronization switch The following procedure describes how to install the encoder and the synchronization switch to the encoder interface unit. The capacitor: • • Encoder power supply The encoder is normally supplied with 24 VDC from the encoder interface unit. Connect the encoder to the encoder interface unit (DSQC 377) on the controller. If both encoder interface units supply power. © Copyright 2004-2007 ABB. should be connected on the terminal board where the encoder is connected.4.IRC5 for details on connecting to the encoder interface unit.1. Action Info/illustration Step 1.1 µF. All rights reserved. connect the encoder with a screened cable. let only one of the encoder interface units supply power to the encoder. This signal will over a period of time damage the opto couplers in the encoder interface unit.2. a diode must be installed on each of the 24 V DC connections to make sure the power supplies do not interfere with each other.

If the number counts up: • No action is required. Scroll down to c1position 5. . Run the encoder in forward direction while checking the value for C1Position.4. +2-AX12 29 +24 VDC 17 0 Volt 19 20 21 22 30 18 23 24 25 26 P_ENC1_A+ P_ENC1_ A – P_ENC1_ B+ P_ENC1_ B – +24 VDC 0 Volt P_ENC2_A+ P_ENC2_ A – P_ENC2_ B+ P_ENC2_ B – 24VDC 0V A (0 ° ) B (9 0° ) Encoder 1 24VDC 0V A (0 ° ) B (9 0° ) Encoder 2 C on n ectio n for P N P e n cod e r en0300000584 34 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB. Connecting encoder and encoder interface unit Continued Step Action Info/illustration 2.1. Tap: Inputs and Outputs symbol on the FlexPendant. Connect the synchronization switch to the encoder interface unit (DSQC 377) on the controller.2 Machine Synchronization 2. If the number counts down: • the connection of the two encoder faces (0° and 90°) must be interchanged. Tap: View and select: I/O Units 3. step Action 1. en0300000585 Info/illustration 2. How to find the Encoder rotating direction The following procedure describes how to find the encoder rotating direction. All rights reserved. Scroll down and selected: Qtrack .d377 4.2.

See Application manual DeviceNet.1.1. Required hardware Analog input board An analog input board is required. Required hardware 2. © Copyright 2004-2007 ABB. Analog linear sensor An analog linear sensor is required.2.2 Machine Synchronization 2. Analog Synchronization 2.2. All rights reserved.2.2. for example DSQC355A. with analog signal input between 0 and 10 V.2.2. 3HAC18154-1 Revision: E 35 .

For more information on how to add options to the system. Continues on next page 36 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB. and do not need to be re-installed. This is done from RobotStudio Online by changing the parameter DeviceNet Address located under Configuration: I/O . for example "d355A". Configuration of the default installation for Analog Synchronization Action 1.Unit Type. Change the bus for the unit from "Virtual1" to the correct bus. Change the unit type for the unit from "Virtual" to the correct unit type. Change the communication interval for the unit type (e.Unit.RobotStudio Online. for example "DeviceNet1". 2. This is done from RobotStudio Online by changing the parameter Type of Unit located under Configuration: I/O . see Application manual . 2.DeviceNet. This is done from RobotStudio Online by changing the parameter Connected to Bus located under Configuration: I/O .1. 3. 4. This is done from RobotStudio Online by changing the parameter Connected to Bus located under Configuration: I/O . type Fieldbus Command Type) for the instance TimeKeeperInit must be changed to the same value. If the parameter DeviceNet Master Address (in topic I/O. Sensor installation 2.3. then the parameter Default Value (in topic I/O. The synchronization option automatically installs one sensor into the system parameters. About the installation The options will install three additional configurations: • • • I/O for the encoder interface unit (only for Sensor Synchronization) Sensor process description Motion mechanical description Configuration of the default installation for Sensor Synchronization Action 1.Unit. Sensor installation Overview Normally the synchronization option and the DeviceNet option are preloaded at ABB. This is done from RobotStudio Online by changing the parameter Connection 1 Interval located under Configuration: I/O .3.3 Software installation 2.Unit.Unit. For more information about this parameter. for example "DeviceNet1". type Bus) is changed. Specify the correct address for the unit. see Operating manual . This is done from RobotStudio Online by changing the parameter DeviceNet Address located under Configuration: I/O . To add more than one sensor. see Installation of several sensors on page 39.g d355A) from 50 to 20 ms. Change the bus for the unit from "Virtual1" to the correct bus.Unit. Specify the correct address for the unit. 3.1. .2 Machine Synchronization 2. All rights reserved.

It can be accomplished by copying the following files and edit them for the second sensor: • • © Copyright 2004-2007 ABB.cfg syim1.2 Machine Synchronization 2.1. connected to DeviceNet1 (first board). How to add a sensor manually for Analog Synchronization There are no prepared files for adding a sensor for Analog Synchronization.cfg 6. Sensor installation Continued How to add a sensor manually for Sensor Synchronization Use the following procedure to add a sensor manually.cfg should be replaced by the actual address of the board. Use RobotStudio Online to add new parameters 3. Installation of a master sensor. 5. Right click on the configuration icon and select: Load Parameters.3. 8.cfg • syvm1_moc. All rights reserved. Note the address on the CAN bus.cfg synvailprc. synvaileio. Restart the system. Action 1. Load the following files one by one from the OPTIONS/CNV directory: • syvm1_eio. Load the following files one by one from the OPTIONS/CNV directory: • syvs1_eio.moc • 3HAC18154-1 Revision: E 37 . If necessary.cfg • syvs1_moc.cfg • syvs1_prc. Installation of a slave sensor. The default addresses in the file syvxx_eio. Connect the encoder interface unit to the CAN bus.cfg • syvm1_prc. 4.cfg 7. 2. correct the address for the new encoder interface units. connected to DeviceNet2 (second board). Select: Load Parameters if no duplicates in the Select mode text box.

Load the syn1_moc parameter file 6. Select: Add or replace parameters. Reloading saved Motion parameters Overview During installation of the synchronization option. Restart the controller for the changes to take effect.2.2 Machine Synchronization 2. then the mechanical unit SSYNC1 will not appear on the FlexPendant under the Jogging window Reloading the SSYNC1 parameter Use RobotStudioOnline and follow these steps (see Operating manual .3. All rights reserved.2. Select the directory Mediapool\RobotWare_5.XX. NOTE! If these parameters were loaded before the synchronization option. a specific sensor configuration for additional axes will be loaded into the motion system parameters. 2.RobotStudio Online for more information): Step Action 1. 38 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB. . Result The mechanical unit SSYNC1 should now be available on the FlexPendant under the Jogging window. 3.3. Select the type: File. Reloading saved Motion parameters 2.XXXX\options\cnv 5. 4. Select the topic: System Parameters.

SSYNC3) should now appear in Motion/mechanical unit and in the jogging window on the FlexPendant. Load the following files one by one from the OPTION/CNV directory: • for second sensor: syvs2_eio.3. The synchronization option automatically installs one sensor into the system parameters.3. 2. Note the address on the CAN bus. 3HAC18154-1 Revision: E 39 .cfg and syvm3_moc.cfg and syvs4_moc. syvs3_prc.cfg and syvm4_moc.cfg. connected to DeviceNet1 (first board).cfg.cfg.RobotStudio Online. All rights reserved. For Sensor Synchronization. Right click on the configuration icon and select: Load Parameters. Installation of several sensors 2. Installation of a master sensor. For Sensor Synchronization: If necessary. The default addresses in the file syvxx_eio.cfg • for fourth sensor: syvs4_eio. the following three sensors will be installed in the system: • • • One sensor with "Robot to press syncro type": SSYNC1 One virtual master sensor: SSYNM1 One virtual slave sensor: SSYNCS1 How to add sensors manually Up to four sensors can be used with the same controller. syvm2_prc and syvm2_moc.cfg. Find the respective encoder interface unit in the system parameters under the topic I/O System. and do not need to be re-installed. DeviceNet Dual option When DeviceNet Dual is included. syvm4_prc. 4. Installation of several sensors About the installation Normally the synchronization option and the DeviceNet option are preloaded at ABB.cfg • for fourth sensor: syvm4_eio.cfg • for third sensor: syvm3_eio. Select: Load Parameters if no duplicates in the Select mode text box. Available sensors The second and third sensor (SSYNC2.3. see Operating manual .2 Machine Synchronization 2.cfg • for third sensor: syvs3_eio. For more information how to add options to the system. Restart the system. Use the following procedure to load the sensors manually. but the parameters for the three extra sensors must be loaded manually. 8.cfg. 5.cfg.3. 3. Load the following files one by one from the OPTION/CNV directory: • for second sensor: syvm2_eio.cfg 7.cfg and syvs3_moc. connect the encoder interface unit to the CAN bus.cfg 6. syvm3_prc. Installation of a slave sensor. connected to DeviceNet2 (second board). syvs4_prc.cfg and syvs2_moc. syvs2_prc. © Copyright 2004-2007 ABB. Use RobotStudio Online to add new parameters.cfg should be replaced by the actual address of the board. correct the address for the new encoder interface units. Step Action 1.

it first checks the state of the encoder interface unit to see whether the sensor was previously connected. Step Action Info/illustration © Copyright 2004-2007 ABB. See General synchronization instructions on page 71. a sync signal). The program should exit the WaitSensor and is now “connected” to the object. Connection via WaitSensor instruction Motions that are to be synchronized with the external device cannot be programmed until an object has been connected to the sensor with a WaitSensor instruction. then execution of a second WaitSensor instruction will cause an error. All rights reserved. indicates connection. General issues when programming with the synchronization option 2. Run the external device until a sync signal is generated by the synchronization switch. via the I/O signal c1Connected. If the object is already connected with a previous WaitSensor instruction. If desired. By default. General issues when programming with the synchronization option Activate sensor The sensor must be activated before it may be used for work object coordination.4. tool. the sensor may be configured to always be active upon start.1. If the encoder interface unit. Continues on next page 40 3HAC18154-1 Revision: E . there are references to programming examples. The instruction will return if there is an object in the object queue. the execution will stop while waiting for an object (i. Programming Sensor Synchronization In the following instructions. just like any other mechanical unit. See Mechanical unit on page 75.4 Programming the synchronization 2. the sensor is installed inactive on start. The purpose of this feature is to automatically reconnect in case of a power failure with power backup on the encoder interface unit.4.e. MoveL waitp. The usual ActUnit instruction is used to activate the sensor and DeactUnit is used to deactivate the sensor. then the sensor will automatically be connected upon activation. After connection to an object with a WaitSensor instruction the synchronized motion is started using SyncToSensor\On instruction. Automatic connection Only for Sensor Synchronization: When a sensor mechanical unit is activated. WaitSensor SSYNC1.1. v1000. Create a program with the following instructions: ActUnit SSYNC1. 1.2 Machine Synchronization 2. 3. If the is no object. Single-step the program past the WaitSensor instruction. fine. or if connection was established during activation. For details about the instructions WaitSensor and SyncToSensor\On. 2.

run the external device to the position that should correspond to the robot target. Only for Sensor Synchronization: Program a DropSensor SSYNC1. or if the sensor is no longer needed.2 Machine Synchronization 2. instruction. General issues when programming with the synchronization option Continued Step Action Info/illustration 4. © Copyright 2004-2007 ABB. Program a DeactUnit SSYNC1. For every time you modify a position. see Finepoint programming on page 46. Synchronize the sensor If it is not possible to move the external device to the desired position. 5. See Programming examples on page 42.4. See Programming examples on page 42. All rights reserved. 3HAC18154-1 Revision: E 41 . instruction if this is the end of the program. See Programming examples on page 42. 9. 7. See Programming examples on page 42.1. 6. End the synchronized motion with a SyncToSensor SSYNC1\Off instruction. 8. Stop the external device in the position that should correspond to the robot target you are about to program. Program move instructions. Use corner zones for the move instructions. Start the synchronized motion with a SyncToSensor SSYNC1\On instruction. modify the position first and then edit the sensor value in the robtarget (as for any additional axis).

Programming examples 2. © Copyright 2004-2007 ABB. fine. !Start the Synchronized motion SyncToSensor SSYNC1\On. !Stop the synchronized motion SyncToSensor SSYNC1\Off.4. MoveL p0.2. MoveL p30. !Connect to the object WaitSensor SSYNC1. tool1. v1000. fine. fine. v1000. tool1. v1000. tool1. v1000.2 Machine Synchronization 2. All rights reserved.2. !Disconnect from current DropSensor SSYNC1. tool1. object Continues on next page 42 3HAC18154-1 Revision: E . !Exit coordinated motion MoveL p40. tool1. vmax. z20. !Activate sensor ActUnit SSYNC1. !Instructions with coordinated robot targets MoveL p10. Programming examples Sensor Synchronization program MoveJ p0. z20. !Deactivate sensor DeactUnit SSYNC1.4. MoveL p20. v1000. z20.

3HAC18154-1 Revision: E 43 . v1000. MoveJ p0. !Activate sensor ActUnit SSYNC1. All rights reserved. z20. MoveL p0. MoveL p30. tool1.2. fine. !Deactivate sensor DeactUnit SSYNC1. vmax. fine. !Exit coordinated motion MoveL p40. z20. © Copyright 2004-2007 ABB.2 Machine Synchronization 2. v1000. !Instructions with coordinated robot targets MoveL p10. tool1. v1000. Programming examples Continued Analog Synchronization program VAR num startdist := 600. tool1. z20. tool1. WaitSensor SSYNC1 \RelDist:=startdist.4. v1000. fine. v1000. MoveL p20. !Stop the synchronized motion SyncToSensor SSYNC1\Off. tool1. !Start the Synchronized motion SyncToSensor SSYNC1\On.

v500. z50. v500. v1000. MoveL p60. fine. v500. tool1. v500. it cannot be followed directly by the DropSensor instruction. MoveL p60. tool1. v500. z50. z20. tool1.4. MoveL p40. Entering and exiting coordinated motion in corner zones Corner zones can be used Once a WaitSensor instruction is connected to an object it is possible to enter and exit synchronized motion with the sensor via corner zones. tool1. another move instruction must be executed before the sensor is dropped. tool1. tool1. MoveL p50. tool1. fine.2 Machine Synchronization 2.3. Correct example This is an example of how to enter and exit coordinated motion via corner zones. If the work object is dropped when motion still requires its position. All rights reserved. DropSensor SSYNC1. This would cause the object to be dropped before the robot has left the corner zone. DropSensor SSYNC1. MoveL p50. tool1. © Copyright 2004-2007 ABB. Dropping object after corner zone If an instruction using a corner zone is used to exit coordinated motion. !Exit synchronization after zone around p60 SyncToSensor SSYNC1\Off.3. either call a finepoint instruction or at least two corner zone instructions before dropping the work object. z20.4. z50. fine. To avoid this. This will cause the program to stop with an error. z20. v500. v500. then a stop will occur. tool1. MoveL p20. v500. MoveL p10. tool1. !start synchronization after zone around p20 SyncToSensor SSYNC1\On MoveL p30. z20. v500. If coordinated motion is ended in a corner zone. Entering and exiting coordinated motion in corner zones 2. when the motion still requires the conveyor coordinated work object. MoveL p70. !Exit coordination in zone SyncToSensor SSYNC1\Off. 44 3HAC18154-1 Revision: E . Incorrect example This is an incorrect example of exiting coordination in corner zones. MoveL p10. WaitSensor SSYNC1.

2 Machine Synchronization
2.4.4. Use several sensors

2.4.4. Use several sensors
Overview When several sensors are used the program must have at least one move instruction without any synchronization between parts of the path that are synchronized with two different sensors. Program example
!Connect to the object WaitSensor SSYNC1\RelDist:=Pickdist; !Start the Synchronized motion SyncToSensor SSYNC1\MaxSync:=1653\On; !Instructions with coordinated robot targets MoveL p30, v400, z20, currtool; !Stop the synchronized motion SyncToSensor SSYNC1\Off; !Instructions with coordinated robot targets MoveL p31, v400, z20, currtool; !Connect to the object WaitSensor SSYNC2\RelDist:=1720; !Instructions with coordinated robot targets MoveL p32, v400, z50, currtool;
© Copyright 2004-2007 ABB. All rights reserved.

!Start the Synchronized motion SyncToSensor SSYNC2\MaxSync:=2090\On; !Instructions with coordinated robot targets MoveL p33, v400, z20, currtool; !Stop the synchronized motion SyncToSensor SSYNC2\Off;

3HAC18154-1 Revision: E

45

2 Machine Synchronization
2.4.5. Finepoint programming

2.4.5. Finepoint programming
Overview Avoid the use of fine points when using synchronized motion. The robot will stop and lose the synchronization with the sensor for 100 ms. Then the RAPID execution will continue. Finepoint programming can be used on the last synchronized move instruction if the synchronization does not need to be accurate at the last target. Program example The following program example shows how synchronized motion may be stopped.
WaitSensor SSYNC1; SyncToSensor SSYNC1 \On; MoveL p1, v500, z20, tool1; MoveL p2, v500, fine, tool1; SyncToSensor SSYNC1 \Off; MoveL p3, v500, z20, tool1; MoveL p4, v500, fine, tool1; DropSensor SSYNC1;

At p4 the robot is no longer synchronized with the external device, and there are no restrictions for using fine points. At p2 the synchronization will end and a fine point can be used, but the accuracy of the synchronization will be reduced.

46

3HAC18154-1 Revision: E

© Copyright 2004-2007 ABB. All rights reserved.

2 Machine Synchronization
2.4.6. Drop sensor object

2.4.6. Drop sensor object
Overview For Sensor Synchronization, a connected object may be dropped, with a DropSensor instruction, once the synchronized motion has ended. Example: DropSensor SSYNC1; For Analog Synchronization, DropSensor must not be used. Considerations The following considerations must be considered when dropping an object: • It is important to make sure that the robot motion is no longer using the sensor position when the object is dropped. If robot motion still requires the sensor position then a stop will occur when the object is dropped. As long as the SyncToSensor \Off instruction has not been issued, the robot motion will be synchronized with the sensor. It is not necessary to be connected in order to execute a DropSensor instruction. No error will be returned if there was no connected object.

• •

© Copyright 2004-2007 ABB. All rights reserved.

3HAC18154-1 Revision: E

47

7.4. When the synchronization switch is triggered. Information on the FlexPendant 2. All rights reserved. I/O window Sensor Synchronization From the I/O window the user has access to all the signals that are defined on the encoder interface unit.7.2 Machine Synchronization 2. Information on the FlexPendant Overview The user has access to the sensor position and speed via the FlexPendant Jogging window The position (in millimeters) of the sensor object is shown in the Jogging window. . This value will be negative if a Queue Tracking Distance is defined. From this window it is possible to view the sensor object position (in meters) and the sensor object speed (in m/s). 48 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB.4. The speed will be 0 m/s until the synchronization switch registers a sensor object. only the sensor position is shown in the I/O window. Analog Synchronization For Analog Synchronization. the position will automatically be updated in the Jogging window.

4. but the robot will stop at the fine point and the synchronization will be lost if the external device is still moving. Speed warnings If programmed sensor_speed is higher than: • (max_sync_speed*sensor_nominal_speed)/robot_tcp_speed © Copyright 2004-2007 ABB. Speed reduction % button The synchronization works only with 100% speed.1 a warning will appear.4. If programmed sensor_speed is lower than: • (min_sync_speed*sensor_nominal_speed)/robot_tcp_speed a similar warning will appear: • Change of tools Changing the tool is not allowed during synchronization if corvec is used. Position warnings If robot_to_sensor position ratio is higher than 10 or lower than 0. Large changes in speed between two move instructions should be avoided.8.2 Machine Synchronization 2. Programming considerations Performance limits The synchronization will be lost if joint speed limits are reached. It is the responsibility of the programmer to ensure that the path during synchronized movement does not exceed the speed and motion capabilities of the robot. particularly in singularities. . See Finepoint programming on page 46. Programmed speed The best performance of the synchronization will be obtained if the programmed speed is near the real execution speed. Continues on next page 3HAC18154-1 Revision: E 49 Programmed_sensor_speed equals sensor_distance/robot_interpolation_time. The programmed speed should be chosen as the most probable execution speed. Manual mode The synchronization is not active in manual mode. As the robot speed is adjusted to sensor movements the defined robot speed percentage will be overridden. The user should modify the robtarget position or the sensor value in the robtarget according to the warning text. All rights reserved. Programming considerations 2.8. Finepoints Finepoints are allowed during synchronization motion. then a speed warning will appear and the user should modify robot speed or sensor_nominal_speed or max_sync_speed according to the warning text. Motion commands All motion commands are allowed during synchronization.

SyncToSensor SSYNC1\On.8. WaitSensor SSYNC1. RestoPath do not work during synchronization. No Search commands work during synchronization. ! move instructions . EoffsOff have an effect on the sensor taught position. ... The correct order is: ActUnit SSYNC1. Power fail restart is not possible with the synchronization option. Other RAPID limitations • • • • The commands. DeactUnit and ClearPath should not be used between SyncToSensor or SupSyncSensorOn instruction and the move instructions related to synchronized path or supervised path.So the instructions ActUnit.2 Machine Synchronization 2.4. 50 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB. EoffsSet. SyncToSensor SSYNC1\Off. StorePath. All rights reserved. Programming considerations Continued Instructions that will deactivate the synchronization The instructions ActUnit. DeactUnit and ClearPath will deactivate any SyncToSensor or SupSyncSensorOn instruction. EoffsOn.

9. RESTART from the current instruction is not possible and the program must be restarted from MAIN. Modes of operation 2. The synchronization is lost at robot stop. Modes of operation Operation under manual reduced speed mode (< 250 mm/s) The FWD. At restart the robot will try to regain synchronization at max_adjustment_speed. Stop/Restart When the STOP button is pressed.4. The robot will recover as normal if the Enable switch is released during motion. If RESTART is forced after the question “Do you want to regain“. © Copyright 2004-2007 ABB. then it is no longer possible to step through the program with FWD and BWD while the sensor is moving. The robot will not perform synchronized motions to the sensor while in Manual Reduced Speed mode. but once a SyncToSensor instruction has been executed then it is no longer possible to step through the program with the FWD and BWD buttons while the sensor is moving. BWD buttons may be used to step through the program. or Emergency Stop is pressed. Start/Stop The robot will stop and loose synchronization with the sensor if the STOP button is pressed or if RAPID instruction Stop or StopMove is executed between the SyncToSensor and DropSensor instructions. RESTART synchronization from the current instruction is not allowed if sensor is moving.4. RESTART synchronization from the current instruction is not possible and the program must be restarted from MAIN. All rights reserved. New instructions may be added and MODPOS may be used to modify programmed positions. the robot will stop immediately. The program may be run by holding the START button. Emergency Stop/Restart When the Emergency Stop is pressed the robot will stop immediately. the robot will move unsynchronized to the sensor at programmed speed. 3HAC18154-1 Revision: E 51 . Operation under manual full speed mode (100%) Operation under Manual (100%) is similar to operation under AUTO.9. If the program was stopped after a SyncToSensor then the sensor object will not be lost but if the sensor is moving then the object will quickly move out of the max dist. If the program was stopped after a SyncToSensor then the synchronized object will not be lost but if the sensor is moving then the object will quickly move out of the max dist. The sensor object will not be lost but if the sensor is moving then the object will quickly move out of the max dist. Hold to run button Pressing and releasing the Hold_to_run button will make the robot stop and restart.2 Machine Synchronization 2. The program must be restarted from MAIN. Operation under AUTO Once a SyncToSensor instruction has been executed. If RESTART is forced the robot will stop with max_dist error where the sensor has stopped.

2 Machine Synchronization 2.1.1. Introduction Overview It is possible to synchronize two robot systems in a synchronization application. Requirements For cable connection and setup. . see Application manual .5 Robot to robot synchronization 2. Introduction 2.DeviceNet. This is done with a master and a slave robot setup. 52 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB. All rights reserved.5.5.

The concept of robot to robot synchronization Description The basic idea of robot to robot synchronization is that two robot should use a common virtual sensor. The master robot controls the virtual motion of this sensor. Illustration 1 0 200 2 400 3 600 C 4 800 1000 1 2 3 4 2 1 4 3 B A xx0400001145 © Copyright 2004-2007 ABB.5. All rights reserved. and assigning a sensor value for each of these points.2 Machine Synchronization 2. The synchronization is achieved by defining positions where the two robots should be at the same time.5. 3HAC18154-1 Revision: E 53 .2. The slave robot uses the sensor’s virtual position and speed to adjust its speed. The concept of robot to robot synchronization 2.2.

5. Topic: Motion SINGLE_TYPE/Parameter Name mechanics process_name use_path Value SSYNC2 SS_LIN SSYNC2 PSSYNC Topic: Process SENSOR_SYSTEM/Parameter Name sensor_type use_sensor adjustment_speed min_dist max_dist correction_vector_ramp_length Value SSYNC1 CAN CAN1 1000 600 20000 10 Topic: I/O Signals EIO_UNIT/Parameter Name UnitType Bus DN_Address EIO_SIGNAL/Parameter Name SignalType Unit UnitMap MaxLog MaxPhys MaxPhysLimit MaxBitVal MinLog MinPhys MinPhysLimit Value MASTER1 DeviceNet1 1 Value ao1Position AO MASTER1 0-15 10. Master robot configuration parameters Overview Use the following parameters to set up the master robot.3.5. All rights reserved. Use Robot Studio Online to change the parameters. DN_SLAVE Continues on next page 54 3HAC18154-1 Revision: E .0 1 1 32767 -10. Master robot configuration parameters 2.3.0 -1 -1 © Copyright 2004-2007 ABB.2 Machine Synchronization 2.

0 -1 -1 -32767 ao1PredTime AO MASTER1 32-47 10.2 Machine Synchronization 2.0 -1 -1 -32767 do1Dready DO MASTER1 48 do1Sync2 DO MASTER1 50 Name SignalType Unit UnitMap Name SignalType Unit UnitMap 3HAC18154-1 Revision: E 55 .0 1 1 32767 -10.0 1 1 32767 -10.5.3. All rights reserved. Master robot configuration parameters Continued EIO_UNIT/Parameter MinBitVal Name SignalType Unit UnitMap MaxLog MaxPhys MaxPhysLimit MaxBitVal MinLog MinPhys MinPhysLimit MinBitVal Name SignalType Unit UnitMap MaxLog MaxPhys MaxPhysLimit MaxBitVal MinLog MinPhys MinPhysLimit MinBitVal © Copyright 2004-2007 ABB. Value -32767 ao1Speed AO MASTER1 16-31 10.

5.33 Value SSYNCS1 CAN CAN1 1000 600 20000 10 1000 Value CAN1 34 c1Connected c1Position c1NullSpeed © Copyright 2004-2007 ABB. All rights reserved. Use RobotStudio Online to change the parameters and to set up the slave robot. c1Speed Topic: I/O Signals EIO_UNIT/Parameter Name UnitType Bus DN_Address 56 Value SLAVE1 DN_SLAVE DeviceNet2 1 Continues on next page 3HAC18154-1 Revision: E .0 The slave robot will also stop if a fine point is defined in the master robot path. Slave robot configuration parameters 2. see System parameters on page 73. Description To make the slave robot stop and restart synchronized with the master robot: • Set the parameter value min_sync_speed to 0. Topic: Process SENSOR_SYSTEM/Parameter Name sensor_type use_sensor adjustment_speed min_dist max_dist correction_vector_ramp_length nominal_speed CAN_INTERFACE/Parameter Name Signal delay Connected signal Position signal Velocity signal Null speed signal Data ready signal Waitwobj signal Dropwobj signal Data Time stamp RemAllPObj signal Virtual sensor Sensor Speed filter c1WaitWObj c1DropWobj c1DTimestamp c1RemAllPObj NO 0. Slave robot configuration parameters Overview For default configuration.5.2 Machine Synchronization 2.4.4.

0 -1 -1 -32767 ai1PredTime AI SLAVE1 32-47 10.0 -1 -1 -32767 ai1Speed AI SLAVE1 16-31 10.5.0 1 1 32767 -10. Slave robot configuration parameters Continued EIO_UNIT/Parameter EIO_SIGNAL/Parameter Name SignalType Unit UnitMap MaxLog MaxPhys MaxPhysLimit MaxBitVal MinLog MinPhys MinPhysLimit MinBitVal Name SignalType Unit UnitMap MaxLog MaxPhys MaxPhysLimit MaxBitVal MinLog MinPhys MinPhysLimit MinBitVal © Copyright 2004-2007 ABB. Value Value ai1Position AI SLAVE1 0-15 10.0 1 1 32767 -10.0 -1 -1 -32767 di1Dready DI Name SignalType Unit UnitMap MaxLog MaxPhys MaxPhysLimit MaxBitVal MinLog MinPhys MinPhysLimit MinBitVal Name SignalType 3HAC18154-1 Revision: E Continues on next page 57 .0 1 1 32767 -10. All rights reserved.2 Machine Synchronization 2.4.

Slave robot configuration parameters Continued EIO_UNIT/Parameter Unit UnitMap Name SignalType Unit UnitMap Value SLAVE1 48 di1Sync2 DI SLAVE1 50 58 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB.2 Machine Synchronization 2.4. .5. All rights reserved.

eax_e:=syncstart.extax.eax_e:=syncpos3. z10.0 !Instructions with coordinated robot targets MoveJ robposstart. !Activate sensor ActUnit SSYNC1. !Synchronized motion between master and slave robpos1.extax.eax_e:=syncstart. robpos2.5. Master robot programming syncstart:=20. !Init of external axis pOutsideNext.1.2 Machine Synchronization 2. Syncpos2:=600. © Copyright 2004-2007 ABB. tool1. MoveJ robpos2.eax_e:=syncpos1. v2000. robpos5. MoveJ robpos3. tool1. doSync1. Syncpos4:=1200. v2000. v2000. !Set digital output SetDO Dosync 1.extax. Programming example for master robot 2. tool1. tool1. Continues on next page 3HAC18154-1 Revision: E 59 . z10. robpos3. z50. !Set digital output PulseDO\PLength:= 0. robpos4. fine. tool1.5.extax. tool1.eax_e:=syncstart. v2000.extax. All rights reserved. z10. Syncpos3:=900. v1000.extax.eax_e:=syncpos4. MoveJ robpos5. z10. !Instruction with coordinated robot targets MoveJ pOutsideNext. !Instructions with coordinated robot targets MoveJ robpos1.5.5. v2000. Programming example for master robot Overview The following program is an example of how to program a master robot. tool1. !Init of external axis robposstart. z10. MoveJ robpos4. v2000. Syncpos1:=300.extax.eax_e:=syncpos2.

5. .eax_e should increase for every robtarget during synchronization. Do not use WaitSensor or DropSensor.eax_e is large.2 Machine Synchronization 2. The movement back to syncstart (move instruction to robpos5 in the example) may be slower than the ordered speed (v2000). Programming example for master robot Continued Considerations The following is to be considered • The values of extax. • • • 60 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB.5. If this robot movement is short and the value of extax. and the synchronization end. The first move instruction of the master robot. after the synchronization. should also have a higher extax. Otherwise the value of extax.eax_e value than the previous instruction. the maximum speed will be limited by the virtual sensor speed. All rights reserved.eax_e may decrease. before the slave robot has reached its target. Verify that the virtual sensor max speed (speed_out) is less than 1m/s.

eax_e:=syncpos3. v2000.eax_e:=syncpos2. 1. tool1.\RelDist:=100. MoveJ robpos2.extax. z50. !Connect to the object WaitSensor SSYNC1.6.extax. Syncpos1:=300.2 Machine Synchronization 2. Programming example for slave robot 2. Slave robot programming syncstart:=20. v500. z10. !Instructions with coordinated robot targets MoveJ posstart. © Copyright 2004-2007 ABB. Syncpos2:=600. z10. Syncpos3:=900. v2000. !Synchronized motion between master and slave robpos1. tool1.eax_e:=syncpos1.5. Programming example for slave robot Overview The following program is an example of how to program a slave robot.extax. !Stop the synchronized motion SyncToSensor SSYNC1\Off.6. tool1. Do not use any corvecs. All rights reserved. v2000. !Start the Synchronized motion SyncToSensor SSYNC1\On. 3HAC18154-1 Revision: E 61 . !Wait for digital input WaitDI diSync1. robpos2. !Instructions with coordinated robot targets MoveJ robpos1. MoveJ robpos3. tool1. Considerations The following is to be considered: • • Do not use DropSensor. robpos3. z10.5.

1. Record the movement of the hydraulic press.6. 2. Principles of hydraulic press synchronization 1. Activate the record to be used in the next cycle. .2 Machine Synchronization 2. Introduction 2. This profile is used for modeling of press path. Not using a recorded profile will require a bigger distance between robot and press model when teaching the path. Introduction Overview This section describes how to use a recorded machine profile to improve the accuracy of robot’s synchronization with a hydraulic press.1. All rights reserved.6 Synchronize with hydraulic press using recorded profile 2. Activate the sensor synchronization with the RAPID instruction SyncToSensor.6. 62 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB. 3.

Parameter Synchronization Type Value ROBOT_TO_HPRES The parameters belong to the configuration type Sensor systems in the topic Process.6.2. NOTE! All other signals except Position signal should be empty (i. All rights reserved. see Settings for sensor using Group input on page 64. Descriptions of the system parameters are found in System parameters on page 73. General settings This parameter belong to the configuration type Fieldbus Command in the topic I/O.e. Parameter Sensor start signal Stop press signal Sync Alarm signal © Copyright 2004-2007 ABB. This parameter belong to the configuration type Path Sensor Synchronization in the topic Motion.2. ""). Configuration of system parameters 2. TIP! WaitSensor and DropSensor are not needed in the RAPID program. see Settings for analog input with no DSQC377A encoder on page 63 If the sensor is using group input. Continues on next page 3HAC18154-1 Revision: E 63 . Value Type the name of the I/O signal Type the name of the I/O signal Type the name of the I/O signal Settings for analog input with no DSQC377A encoder The parameters belong to the configuration type Can Interface in the topic Process. Parameter Parameter Value for the instance where Type of Fieldbus Command is IIRFFP.2 Machine Synchronization 2. Configuration of system parameters Introduction This section describes how to configure the parameters to get the best result when using recorded sensor profiles with a hydraulic press.6. Change this value to get good accuracy during start and stop. Value 10-15 Hz. Parameter Virtual sensor Position signal Value Yes Type the name of the analog input. If the system is not using a DSQC377A encoder. Start the tuning with the general settings.

e. Parameter Pos Group IO scale Value Define the number of input data per meter.6. Configuration of system parameters Continued Settings for sensor using Group input The parameters belong to the configuration type Sensor systems in the topic Process. "") TIP! WaitSensor and DropSensor are not needed in the RAPID program. Parameter Virtual sensor Position signal Value Yes Type the name of the used group input.2. The parameters belong to the configuration type Can Interface in the topic Process. . All rights reserved. the default value is set to 10000. NOTE! All other signals except Position signal should be empty (i. 64 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB.2 Machine Synchronization 2.

SyncToSensor Ssync1\On. \WObj:=wobj0. z20. but a pulse on sensor_start_signal is needed to synchronize readings of record and actual positions for each cycle. Second press cycle A pulse on sensor_start_signal is needed to synchronize readings of record and actual positions for each cycle. tool. z10.3. \WObj:=wobj0. All rights reserved. v1000. WaitSensor SSYNC1. tool. ! Process waiting for sensor_start_signal ! then waiting for press movement and record it during 2 sec. ActUnit SSYNC1. SyncToSensor Ssync1\On. 0. PrxActivAndStoreRecord SSYNC1. PRX_HPRESS_PROF. WaitSensor Ssync1. MoveL p20. v1000. tool. MoveL p10. During this cycle the robot is not synchronized with press. Program example First press cycle A pulse on sensor_start_signal will start storing position in a record array.3. SyncToSensor Ssync1\Off. MoveL p30. MoveL p20. During press opening the robot moves synchronized with press. v1000. © Copyright 2004-2007 ABB. "profile. tool. 3HAC18154-1 Revision: E 65 . Third press cycle No special instruction is needed. z10. WaitSensor Ssync1. tool. z20. SyncToSensor Ssync1\Off.log". z20.6. 2. \WObj:=wobj0. v1000. z20. Program example Overview This section describes the programming cycles that are typical for programming a hydraulic press.6. tool. ! Set up a recording for 2 seconds PrxStartRecord SSYNC1. v1000. MoveL p10. MoveL p30. During press opening the robot moves synchronized with press. A new record can also be started. \WObj:=wobj0. \WObj:=wobj0.2 Machine Synchronization 2. v1000. Program example 2. \WObj:=wobj0.

.1. 3. Principles of mold synchronization 1.2 Machine Synchronization 2. TIP! When the molding machine is closing. 66 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB. This profile is used for modeling of mold path. Activate the sensor synchronization with the RAPID instruction SynctoSensor. All rights reserved. Record the movement of the Molding machine. Not using a recorded profile will require a bigger distance between robot and machine model when teaching the path. For more information.7.7.1. Introduction 2. 2. Activate the record to be used in the next cycle. supervision can be used instead of synchronization. see Supervise movement on page 70.7 Synchronize with molding machine using recorded profile 2. Introduction Overview This section describes how to use a recorded machine profile to improve the accuracy of a robot’s synchronization with a molding machine.

Parameter Synchronization Type Value SYNC_TO_IMM The parameters belong to the configuration type Sensor systems in the topic Process. Value 10-15 Hz. Parameter Parameter Value for the instance where Type of Fieldbus Command is IIRFFP. Value Type the name of the I/O signal Type the name of the I/O signal Type the name of the I/O signal Settings for analog input with no DSQC377A encoder The parameters belong to the configuration type Can Interface in the topic Process. ""). Parameter Virtual sensor Position signal Value Yes Type the name of the analog input. Change this value to get good accuracy during start and stop. Descriptions of the system parameters are found in System parameters on page 73. Start the tuning with the general settings. Configuration of system parameters 2.2. Continues on next page 3HAC18154-1 Revision: E 67 .7. NOTE! All other signals except Position signal should be empty (i.7. This parameter belong to the configuration type Path Sensor Synchronization in the topic Motion. All rights reserved. Parameter Sensor start signal Stop press signal Sync Alarm signal © Copyright 2004-2007 ABB. If the system is not using a DSQC377A encoder.2.e. see Settings for analog input with no DSQC377A encoder on page 67 If the sensor is using group input. General settings This parameter belong to the configuration type Fieldbus Command in the topic I/O. Configuration of system parameters Introduction This section describes how to configure the parameters to get the best result when using recorded sensor profiles with a molding machine. TIP! WaitSensor and DropSensor are not needed in the RAPID program.2 Machine Synchronization 2. see Settings for sensor using Group input on page 68.

All rights reserved.2 Machine Synchronization 2.7.e. Configuration of system parameters Continued Settings for sensor using Group input The parameters belong to the configuration type Sensor systems in the topic Process. . The parameters belong to the configuration type Can Interface in the topic Process. Parameter Virtual sensor Position signal Value Yes Type the name of the used group input. The default value is set to 10000. Parameter Pos Group IO scale Value Define the number of increments per meter for the group input. 68 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB. NOTE! All other signals except Position signal should be empty (i.2. "") TIP! WaitSensor and DropSensor are not needed in the RAPID program.

v1000. WaitSensor Ssync1. Second press cycle A pulse on sensor_start_signal is needed to synchronize readings of record and actual positions for each cycle. z20. During press opening the robot moves synchronized with press. \WObj:=wobj0. 2. Third press cycle No special instruction is needed. tool. Program example 2. WaitSensor Ssync1. z20.3. MoveL p30. PRX_PROFILE_T1. v1000. tool.7. \WObj:=wobj0. z20. v1000. © Copyright 2004-2007 ABB. WaitSensor SSYNC1. During press opening the robot moves synchronized with press. ! Set up a recording for 2 seconds PrxStartRecord SSYNC1. "profile. tool.2 Machine Synchronization 2. MoveL p30. A new record can also be started. PrxActivAndStoreRecord SSYNC1. \WObj:=wobj0. v1000. Program example First press cycle A pulse on sensor_start_signal will start storing position in a record array. z20. 3HAC18154-1 Revision: E 69 . MoveL p20. \WObj:=wobj0. ActUnit SSYNC1. tool. During this cycle the robot is not synchronized with press. v1000. tool.3. MoveL p20. ! Process waiting for sensor_start_signal ! then waiting for press movement and record it during 2 sec. z10. tool.7. Program example Overview This section describes the programming cycles that are typical for programming a molding machine. but a pulse on sensor_start_signal is needed to synchronize readings of record and actual positions for each cycle. z10. SyncToSensor Ssync1\On. MoveL p10. MoveL p10. 0. \WObj:=wobj0. SyncToSensor Ssync1\Off.log". SyncToSensor Ssync1\Off. \WObj:=wobj0. v1000. SyncToSensor Ssync1\On. All rights reserved.

extax.2 Machine Synchronization 2. \WObj:=wobj0. All rights reserved. \WObj:=wobj0. In the case of increasing machine positions the limit must be positive corresponding to minimum positive position difference (and minimum advance distance). Supervision does not deactivate the synchronization.1. z20. Usually supervision is used until the robot is moved outside the mold or press.extax. tool. p30.e. fine. fine.. Instead of waiting to be outside the machine to enable close mold the robot enable close mold when it starts to move outside the mold after picking the part. p20. i. tool. SupSyncSensorOn Ssync1. Safetydist (in this case -100) is the limit of the difference between expected machine position and the real machine position. In the case of decreasing machine positions the limit must be negative corresponding to maximum negative position difference (and minimum advance distance). Supervise movement 2.8. tool.extax. MoveL p20.8. -100. It must be negative.eax_f:=sens30. Sens10 is the expected position of the machine (model of the machine movement related to © Copyright 2004-2007 ABB. v1000. With supervision it is possible to turn off the synchronization and turn on supervision when a workpiece is dropped or collected in the molding machine.8 Supervision 2. Supervise movement Introduction The supervision can be used to save cycle time when robot moves outside the mold or press. Example For the case you cannot move the sensor to defined position you have to set the external axis value in your rapid program p10. 70 3HAC18154-1 Revision: E .eax_f:=sens20. The supervision will be done between the sensor position 650 and 150 mm and triggers the output if the distance between the robot and the mould is smaller than 100 mm. WaitSensor Ssync1. \WObj:=wobj0. v1000. SupSyncSensorOff Ssync1. MoveL p10. v1000. The supervision can stop the mold if it comes too near the robot by setting the output signal defined by the system parameter Sync Alarm signal. robot movement) when robot will be at p10 and sens20 is the expected position of the machine when robot will be at p20.1. MoveL p30. 650\SafetyDelay:=0. SupSyncSensorOn protects the robot and machine from damaging. 150. the model should always be moving in advance of the real machine. SupSyncSensorOn is used to supervise the movement of the robot with the mold or press.eax_f:=sens10.

9. Resets and deactivates all records. RAPID components About the RAPID components This is an overview of all the instructions and functions in Machine Synchronization. Stops the recording of the sensor movement. DropSensor is used to: • disconnect from the current object and make the program ready for the next. RAPID components 2.1. Saves active record to file. Set a reference position for the sensor.1. PrxStopRecord PrxActivRecord PrxDeactRecord PrxStoreRecord PrxActivAndStoreRecord PrxUseFileRecord PrxResetRecords PrxDbgStoreRecord PrxSetRecordSampleTime Set sample time for recording. Description Starts a recording of the sensor movement as soon as the sensor_start_signal is set. General synchronization instructions Instruction WaitSensor Description WaitSensor is used to: • connect to an object in the start window on the sensor mechanical unit. Functions for handling recordings Instruction PrxGetMaxRecordpos Description Returns the maximum position (in mm) of the active record. Deactivates the active record.9 Programming and configuration data 2. Save a non active record for debug.9. For more information. SyncToSensor is used to: • start or stop synchronization of robot movement to sensor movement. Continues on next page 3HAC18154-1 Revision: E 71 . SyncToSensor DropSensor PrxResetPos PrxSetPosOffset PrxSetSyncalarm Instructions for handling recordings Instruction PrxStartRecord © Copyright 2004-2007 ABB. Reset the zero position of the sensor. All rights reserved. Activates and saves record to file. Do not use DropSensor for Analog Synchronization. Set pulse length for sync_alarm_signal. Loads and activates a record from file. DropSensor is only used for Sensor Synchronization.2 Machine Synchronization 2. see respective instruction in RAPID reference information on page 77. Activates the record that was just recorded.

2 Machine Synchronization 2. . RAPID components Continued Instructions for supervision Instruction SupSyncSensorOn SupSyncSensorOff Description Start the supervision between robot movement and a synchronized sensor movement. Stop the supervision of the robot movement and synchronized sensor movement. 72 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB. All rights reserved.1.9.

9. Type of Fieldbus Command Counts Per Meter Sync Separation Description The number of counts per meter of the external device motion. Queue Tracking Distance Start Window Width IIRFFP Sensor systems These parameters belong to the topic Process and the type Sensor System.9. If the speed of the device exceeds 200 mm/s this parameter must be increased. Parameter Description Adjustment speed When entering sensor synchronization. For Sensor Synchronization. Not used for Analog Synchronization. Fieldbus Command Only for Sensor Synchronization. there is no need to change the default value.System parameters. The maximum distance (in millimeters) that a connected object may have before being automatically dropped.2. the robot speed must be adjusted to the speed of the external device. Max dist Sensor nominal speed Continues on next page 3HAC18154-1 Revision: E 73 . For Sensor Synchronization. These are different instances of the type Fieldbus Command in the topic I/O. The speed (in mm/s) at which the robot‘ catches up’ to this speed for the first motion is defined by Adjustment Speed. For more information about the parameters.0 meter point on the sensor. Specifies the location of the real part of the poles in the left-half plane (in Hz). All rights reserved. there is no need to change the default value.2 Machine Synchronization 2. Defines the placement of the synchronization switch relative to the 0. The nominal work speed of the external device. System parameters 2. there is no need to change the default value. For Sensor Synchronization. © Copyright 2004-2007 ABB. Defines the size of the start window. there is no need to change the default value. Not used for Analog Synchronization. Min dist The minimum distance (in millimeters) that a connected object may have before being automatically dropped. see Technical reference manual . For Sensor Synchronization.2. there is no need to change the default value. It is possible to connect to objects within this window with the instruction WaitSensor. For Sensor Synchronization. Defines the minimum distance that the external device must move after a sync signal before a new sync signal is accepted as a valid object. System parameters About system parameters This section describes the system parameters in a general way.

Not used for Analog Synchronization. System parameters Continued Parameter Stop press signal Sensor start signal Start ramp Description Name of the digital input signal telling that press is stopping. Sync Alarm signal Name of the digital output signal to stop the synchronized machine. The time (in seconds) at which the sensor process updates the robot kinematics on the sensor position. Time (in ms) at which the synchronization process read the sensor position. The signal must be set before start of machine movement. Name of the analog input signal for sensor position. Name of the digital output signal to drop a connected object on the encoder unit Not used for Analog Synchronization. This signal is needed for safe stop of robot.2. Not used for Analog Synchronization. Name of the digital input signal indicating zero speed on the sensor.2 Machine Synchronization 2. Name of the digital input signal indicating a poll of the encoder unit. CPU load equalization needs to be lowered for the synchronization option. Defines for how many calculation steps the position error may exceed Max Advance Distance. Not used for Analog Synchronization. Parameter Connected signal Position signal Velocity signal Null speed signal Data ready signal Waitwobj signal Description Name of the digital input signal for connection. Pos Update time Motion Planner These parameters belong to the topic Motion and the type Motion planner. CAN Interface These parameters belong to the topic Process and the type CAN Interface.This signal may be set during supervision of sync sensor. Parameter Path resolution Process update time CPU load equalization Description The period at which steps along the path are calculated.9. During this ramping period. Dropwobj signal PassStartW signal Name of the digital output signal to indicate that an object has gone past the start window without being connected. The signal must be triggered 100 ms before the press moves. the position error may be 5 times Max Advance Distance. Continues on next page 74 3HAC18154-1 Revision: E . Name of the analog input signal for sensor speed. Not used for Analog Synchronization. © Copyright 2004-2007 ABB. The default value is 2 but for the synchronization option it should be set equal to 1 to have a stable synchronization speed. Name of the digital input signal to synchronize recorded profile and new machine movement. Not used for Analog Synchronization. Name of the digital output signal to indicate that a connection is desired to an object in the queue. All rights reserved.

7 characters). Transmission This parameter belong to the topic Motion and the type Transmission.9. The max robot TCP speed allowed in m/s. The sensor cannot be deactivated. All rights reserved. Description The max advance distance allowed from calculated position to actual position of the external device. Parameter Rotating move Description Specifies if the sensor is rotating (Yes) or linear (No). The max delay distance allowed from calculated position to actual position of the external device. Max Synchronization Speed Min Synchronization Speed 3HAC18154-1 Revision: E 75 .2 Machine Synchronization 2. The sensor is to be activated automatically at start up. Single type This parameter belongs to the topic Motion and the type Single type. Parameter Mechanics Description Specifies the mechanical structure of the sensor. System parameters Continued Mechanical unit These parameters belong to the topic Motion and the type Mechanical unit. They are used to set allowed deviation between calculated and actual position of the external device. The min robot TCP speed allowed in m/s. Path Sensor Synchronization These parameters belong to the topic Motion and the type Path Sensor Synchronization. and minimum/maximum TCP speed for the robot. Parameter Max Advance Distance Max Delay Distance © Copyright 2004-2007 ABB. Parameter Name Activate at start up Deactivate Forbidden Description The name of the unit (max.2.

Digital output that will cause the encoder interface unit to drop the tracked object and disconnect it. Instruction c1ObjectsInQ Description Group input showing the number of objects in the object queue. Pending objects are objects that are in the queue but are not connected to a work object. The object is removed from the queue. c1Rem1PObj c1RemAllPObj c1DropWObj 76 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB. Digital output that removes all pending objects.9. The object queue is designed for the option Conveyor Tracking and has more functionality than required by Sensor Synchronization. Use the DropWobj instruction instead. signals for the object queue may occasionally be useful.3. Digital output that removes the first pending object from the object queue. Object queue signals The following table shows the I/O signals in the encoder unit DSQC 354 which impact the object queue.2 Machine Synchronization 2. Do not use c1DropWObj in RAPID code.9. These objects are registered by the synchronization switch and have not been dropped. I/O signals 2. I/O signals Overview Sensor Synchronization provides several I/O signals which allow a user or RAPID program to monitor and control the object queue on the encoder interface unit. .3. All rights reserved. If an object is connected. Since each closing of a press is considered an object in the object queue. then it is not removed.

tool.10. v1000. tool. The object is removed from the object queue and cannot be recovered. SyncToSensor Ssync1\Off. DropSensor .´ Related information For information about Wait for connection on sensor 3HAC18154-1 Revision: E See WaitSensor .Drop object on sensor Usage DropSensor is used to disconnect from the current object and the program is ready for the next. DropSensor . Instructions 2.1. v1000. \WObj:=wobj0.1. All rights reserved.Wait for connection on sensor on page 102 Continues on next page 77 . \WObj:=wobj0. The instruction may be issued only after a non synchronized movement has been used in the preceding motion instructions with either a fine point or several (>1) corner zones. Example 1 MoveL *.10 RAPID reference information 2. MoveL *. MoveL *. Basic examples Basic examples of the instruction DropSensor are illustrated below.1. \WObj:=wobj0. Syntax DropSensor [ MechUnit’:=’] < variable (VAR) of mecunit>‘. Program execution © Copyright 2004-2007 ABB.1. Arguments DropSensor MechUnit MechUnit Mechanical Unit Data type: mecunit The moving mechanical unit to which the robot position in the instruction is related. Limitations If the instruction is issued while the robot is actively using the sensor object then the motion stops. tool. v1000. Dropping the object means that the encoder unit no longer tracks the object. DropSensor Ssync1. DropSensor is used for Sensor Synchronization. The instruction must be issued after the robot has passed the last synchronized robtarget. fine. but not for Analog Synchronization.Drop object on sensor 2.1. z10. z10.10.10.2 Machine Synchronization 2.

Drop object on sensor Continued For information about Sync to sensor RobotWare options Sensor Synchronization See SyncToSensor . DropSensor .1.Controller software IRC5 Product specification .10. section Motion Coordination . .Sync to sensor on page 100 Product specification .Controller software IRC5.1.Sensor Synchronization 78 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB.2 Machine Synchronization 2. All rights reserved.

1.10. "profile. File_name Data type: string Name of the file where the profile is stored. Profile of sensor movement activated and is stored in the file profile. The system variable ERRNO will be set to: ERR_ACTIV_PROF ERR_STORE_PROF ERR_USE_PROF for error at activate profile for error at store profile for error at use profile Syntax PrxActivAndStoreRecord [ MechUnit‘ :=’ ] < expression (IN) of mechunit> ’.2 seconds before start of sensor © Copyright 2004-2007 ABB. It must be between 0. The errors can be handled in an error handler. If the delay should be used together with a saved profile the delay has to be specified again in the instruction PrxUseFileRecord.01 and 0.10.1. movement if the record is to be used for synchronization. If given the value 0 no delay is added.2. PrxActivAndStoreRecord 2.’ [ Delay ‘:=’ ] < expression (IN) of num > ’.log. All rights reserved.1. it is just used for the activation. The delay is not saved in the profile. Basic example PrxActivAndStoreRecord SSYNC1. PrxActivAndStoreRecord Usage Activate the recorded profile data and store it in a file. Program execution PrxActivAndStoreRecord must be executed at least 0. 1. Delay Data type: num The delay in seconds can be used to shift the record in time. Arguments PrxActivAndStoreRecord MechUnit Delay File_name MechUnit Data type: mechunit The moving mechanical unit object to which the robot movement is synchronized.2 Machine Synchronization 2.‘ Continues on next page 3HAC18154-1 Revision: E 79 .log".’ [ File_name ‘:=’ ] < expression (IN) of string > ‘. Error handling The following recoverable errors can be generated.2. Can be used instead of calling both PrxActivRecord and PrxStoreRecord.

For information about Recording sensor profile See Synchronize with hydraulic press using recorded profile on page 62 or Synchronize with molding machine using recorded profile on page 66.1.10. All rights reserved.2. 80 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB.2 Machine Synchronization 2. . PrxActivAndStoreRecord Continued Related information Here you list related information and where to find it.

Program execution PrxActivRecord must be executed at least 0.‘ Continues on next page 3HAC18154-1 Revision: E 81 . The errors can be handled in an error handler. !Work synchronized with sensor .2 seconds before start of conveyor movement.3. If given the value 0 no delay is added.10..1.10. WaitTime 0. Error handling The following recoverable errors can be generated.2. PrxActivRecord Usage Activates the record that was just recorded in order to use it without having to save it before. PrxActivRecord 2. Arguments PrxActivRecord MechUnit Delay MechUnit Data type: mechunit The moving mechanical unit object to which the robot movement is synchronized. SetDO do_startstop_machine. Record of sensor is activated and used for prediction of sensor movement as soon as record is ready.1.01 and 0. 1. All rights reserved. 0.. © Copyright 2004-2007 ABB. 0.3. The system variable ERRNO will be set to: ERR_ACTIV_PROF ERR_STORE_PROF ERR_USE_PROF for error at activate profile for error at store profile for error at use profile Syntax PrxActivRecord [ MechUnit ‘:=’ ] < expression (IN) of mechunit>’ . SetDO do_startstop_machine.2 Machine Synchronization 2. It must be between 0.’ [ Delay ‘ :=’ ] < expression (IN) of num > ‘. Basic example PrxActivRecord SSYNC1.1. Delay Data type: num The delay in seconds can be used to shift the record in time.

All rights reserved. PrxActivRecord Continued Related information Here you list related information and where to find it.3.1. For information about Recording sensor profile See Synchronize with hydraulic press using recorded profile on page 62 or Synchronize with molding machine using recorded profile on page 66.2 Machine Synchronization 2.10. . 82 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB.

File_name Data type: string Name of the file where the record is stored. "debug_profile. PrxDbgStoreRecord Usage Store a non activated record for debug.‘ Related information Here you list related information and where to find it. Can be used to compare recordings and check the repeatability. Basic example PrxDbgStoreRecord SSYNC1. Recording sensor profile 3HAC18154-1 Revision: E 83 . Syntax PrxDbgStoreRecord [ MechUnit‘ :=’ ] < expression (IN) of mechunit> ’.2 Machine Synchronization 2.10. Arguments PrxDbgStoreRecord MechUnit Filename MechUnit Data type: mechunit The moving mechanical unit object to which the robot movement is synchronized. Saves the recording in the file debug_profile. See Synchronize with hydraulic press using recorded profile on page 62 or Synchronize with molding machine using recorded profile on page 66.4.10.1. For information about © Copyright 2004-2007 ABB.4. PrxDbgStoreRecord 2.log.log". All rights reserved.1.’ [ File_name‘ :=’ ] < expression (IN) of string > ‘.

84 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB. The record can be activated again.10. For information about Recording sensor profile See Synchronize with hydraulic press using recorded profile on page 62 or Synchronize with molding machine using recorded profile on page 66. Arguments PrxDeactRecord MechUnit MechUnit Data type: mechunit The moving mechanical unit object to which the robot movement is synchronized.5. PrxDeactRecord Usage Deactivates a record. PrxDeactRecord 2.1.1.2 Machine Synchronization 2. Record of sensor movement is deactivated and no longer used for prediction of sensor movement.5. . Limitations Must not be called during synchronization. Basic example PrxDeactRecord SSYNC1. All rights reserved. Syntax PrxDeactRecord [ MechUnit‘ :=’ ] < expression (IN) of mechunit> ‘.10.‘ Related information Here you list related information and where to find it.

1. The sensor position is reset for synchronization functionality and recorded file but IO signal value is not reset.6. PrxResetPos 2. Program execution The sensor unit must be stopped (in the desired zero position) before calling PrxResetPos.0 as additional axis position after this instruction. This instruction is used for software reset of sensor input where no sync switch is available to reset IO signal.’ Related information Here you list related information and where to find it. This instruction is equivalent to a sync switch.6. 3HAC18154-1 Revision: E 85 . Jogging window should show 0. Basic example PrxResetPos SSYNC1. Syntax PrxResetPos [ MechUnit‘ :=’ ] < expression (IN) of mechunit> ’. The sensor position is set to zero.10. Not to be used with the DSQC377A board.2 Machine Synchronization 2. © Copyright 2004-2007 ABB. PrxResetPos Usage Reset the zero position of the sensor.1. All rights reserved. Arguments PrxResetPos MechUnit MechUnit Data type: mechunit The moving mechanical unit object to which the robot movement is synchronized. For information about Recording sensor profile See Synchronize with hydraulic press using recorded profile on page 62 or Synchronize with molding machine using recorded profile on page 66.10.

86 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB.1.7. .10.‘ Related information Here you list related information and where to find it.2 seconds before start of conveyor movement. Arguments PrxResetRecords MechUnit MechUnit Data type: mechunit The moving mechanical unit object to which the robot movement is synchronized. PrxResetRecords Usage Resets and deactivates all records.10. Record of sensor movement is deactivated and no longer used for prediction of sensor movement and the record data is removed. For information about Recording sensor profile See Synchronize with hydraulic press using recorded profile on page 62 or Synchronize with molding machine using recorded profile on page 66.7.2 Machine Synchronization 2. PrxResetRecords 2. Basic example PrxResetRecords SSYNC1.1. Program execution PrxResetRecords must be executed at least 0. Syntax PrxResetRecords [ MechUnit‘ :=’ ] < expression (IN) of mechunit> ‘. All rights reserved.

Arguments PrxSetPosOffset MechUnit Reference MechUnit Data type: mechunit The moving mechanical unit object to which the robot movement is synchronized. All rights reserved. PrxSetPosOffset 2.’ Related information Here you list related information and where to find it. Basic example PrxSetPosOffset SSYNC1. For information about Recording sensor profile See Synchronize with hydraulic press using recorded profile on page 62 or Synchronize with molding machine using recorded profile on page 66. Program execution The sensor unit must be stopped before calling PrxSetPosOffset. The sensor position is set to reference for synchronization functionality and recorded file.2 Machine Synchronization 2. Not to be used with the DSQC377A board. Syntax PrxSetPosOffset [ MechUnit’ :=’ ] < expression (IN) of mechunit> ’. It must be between -5000 and 5000. The sensor position is set to the reference value. Reference Data type: num The reference in meter (or sensor unit).’ © Copyright 2004-2007 ABB. reference. [ Reference ‘:=’ ] < expression (IN) of num > ’.1.10.8.1.10.8. 3HAC18154-1 Revision: E 87 . This function is used for software set of sensor reference where no sync switch is available to reset IO signal. PrxSetPosOffset Usage Set a reference position for the sensor.

1.2 Machine Synchronization 2.10. It must be between 0.1.9. The sample time is therefore set to 0. The default sample time is taken from the system parameter Pos Update time. Related information Here you list related information and where to find it.1. SampleTime Data type: num The sample time in seconds. All rights reserved.10.04. Basic example A 12 second recording is to be made.’ © Copyright 2004-2007 ABB.01 and 0. 88 3HAC18154-1 Revision: E .9.04 seconds.04. in seconds. 0. Note that Pos Update time specifies the sample time in milliseconds.’ [ SampleTime‘ :=’ ] < expression (IN) of num> ’. PrxSetRecordSampleTime 2. Syntax PrxSetRecordSampleTime [ MechUnit‘ :=’ ] < expression (IN) of mechunit> ’. PrxSetRecordSampleTime Usage Set the sample time for recording a profile. PrxSetRecordSampleTime SSYNC1. For information about Recording sensor profile See Synchronize with hydraulic press using recorded profile on page 62 or Synchronize with molding machine using recorded profile on page 66. Arguments PrxSetRecordSampleTime MechUnit SampleTime MechUnit Data type: mechunit The moving mechanical unit object to which the robot movement is synchronized. If a recording is longer than 300 * Pos Update time. belonging to type CAN interface in the topic Process. The maximum number of samples in a recorded profile is 300. while PrxSetRecordSampleTime specifies the sample time in seconds. The sample time cannot be less than 12/300 = 0. the sample time must be increased.

PrxSetSyncalarm 2.10. If Time is set to more than 60.10. the signal continues to be high.1 and 60.1. Arguments PrxSetSyncalarm MechUnit [\Time] | [\NoPulse] MechUnit Data type: mechunit The moving mechanical unit object to which the robot movement is synchronized. If the sync alarm is triggered the sync_alarm_signal is set (not pulsed). The default pulse length is 1 sec.10.2 Machine Synchronization 2. Example 2 PrxSetSyncalarm SSYNC1 \NoPulse.’ Continues on next page 3HAC18154-1 Revision: E 89 . no pulse is used (same effect as using \NoPulse).e. All rights reserved. It must be between 0.1. Basic examples Example 1 PrxSetSyncalarm SSYNC1 \time:=2. the Sync_alarm_signal is pulsed during the time specified by the instruction PrxSetSyncalarm. [\NoPulse] Data type: switch No pulse is used. If sync alarm is triggered. It can also be set to no pulse. i. Sets the length of the pulse on the sync_alarm_signal to 2 seconds.10. The signal is set until the following instruction is executed: SupSyncSensor SSYNC1 \Off Syntax PrxSetSyncalarm [ MechUnit‘ :=’ ] < expression (IN) of mechunit> [ ‘\’ Time ‘:=’ < expression (IN) of num > ] | [ ‘\’ NoPulse ] ’. PrxSetSyncalarm Usage Set sync_alarm_signal behavior to a pulse during specified time. © Copyright 2004-2007 ABB. [\Time] Data type: num The pulse length in seconds.

2 Machine Synchronization 2.1. 90 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB. All rights reserved. . PrxSetSyncalarm Continued Related information Here you list related information and where to find it.10. For information about Recording sensor profile See Synchronize with hydraulic press using recorded profile on page 62 or Synchronize with molding machine using recorded profile on page 66.10.

All rights reserved. Profile of the sensor is recorded as soon as the machine sets the signal sensor_start_signal.10. A start and stop movement can be recorded. If the value 0 is used. For recording hydraulic press (where sensor position zero corresponds to the press being open).11.1. PRX_PROFILE_T1. WaitTime 0. © Copyright 2004-2007 ABB.2 Machine Synchronization 2.The sensor_stop_signal is used first. To be able to make a recording it is important to first make a connection to a sensor (mechanical unit whose speed affects the speed of the robot). It must be between 0. sensor_start_signal is used to record start movement and sensor_stop_signal is used to record stop movement. Arguments PrxStartRecord MechUnit.1. SetDO do_startstop_machine 1. This means that a WaitSensor instruction has to be executed before the recording starts.2.1 and Pos Update time * 300. Profile_type Data type: num Possible value and their explanation is listed below: Value PRX_INDEX_PROF PRX_START_ST_PR Description Record is started by sensor_start_signal. Profile_type MechUnit Data type: mechunit The moving mechanical unit object to which the robot movement is synchronized. Record_duration. Same as for PRX_START_ST_PR only different orders on signals. starts the sensor movement. The recording is started by sensor_stop_signal.11. PRX_STOP_ST_PROF PRX_STOP_M_PROF PRX_HPRESS_PROF PRX_PROFILE_T1 Continues on next page 3HAC18154-1 Revision: E 91 .10. in this example. the instruction PrxStopRecord must be used to stop the recording. Record_duration Data type: num Specifies the duration of record in seconds. PrxStartRecord 2. Signal do_startstop_machine. WaitSensor SSYNC1. PrxStartRecord SSYNC1. 1. PrxStartRecord Usage Resets all profile data and records a new profile of the sensor movement as soon as sensor_start_signal is set. For recording IMM or other machine (where sensor position zero corresponds to the press being closed). Basic example ActUnit SSYNC1.

‘ Related information Here you list related information and where to find it.2 Machine Synchronization 2. PrxStartRecord Continued Program execution PrxStartRecord must be executed at least 0. All rights reserved.’ [ Record_duration‘ :=’ ] < expression (IN) of num > ’.11.’ [ Profile_type‘ :=’ ] < expression (IN) of num >‘.1. .10. 92 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB. For information about Recording sensor profile See Synchronize with hydraulic press using recorded profile on page 62 or Synchronize with molding machine using recorded profile on page 66.2 seconds before start of sensor movement. Syntax PrxStartRecord [ MechUnit ‘:=’ ] < expression (IN) of mechunit>’ .

PrxStopRecord 2. WaitTime 2. 3HAC18154-1 Revision: E 93 . Basic example ActUnit SSYNC1.’ Related information © Copyright 2004-2007 ABB. starts the sensor movement. SetDo do_startstop_machine 1. Profile of sensor movement is recorded as soon as sensor_start_signal is set and after two seconds the recording is stopped with the instruction PrxStopRecord. All rights reserved. 0. Syntax PrxStopRecord [ MechUnit‘ :=’ ] < expression (IN) of mechunit> ’. PrxStopRecord Usage Stops recording a profile.2 Machine Synchronization 2. PrxStopRecord SSYNC1.10.12.2. WaitTime 0. in this example. Signal do_startstop_machine. WaitSensor SSYNC1.10. Arguments PrxStopRecord MechUnit MechUnit Data type: mechunit The moving mechanical unit object to which the robot movement is synchronized. Here you list related information and where to find it. PRX_PROFILE_T1. PrxStartRecord SSYNC1.12. For information about Recording sensor profile See Synchronize with hydraulic press using recorded profile on page 62 or Synchronize with molding machine using recorded profile on page 66.1.1. Should always be used when PrxStartRecord has Record_duration set to 0.

Delay Data type: num The delay in seconds can be used to shift the record in time. It must be between 0. The delay is not saved in the profile.1.’ [ File_name‘ :=’ ] < expression (IN) of string >‘. SetDo do_startstop_machine 0. Basic example ActUnit SSYNC1. Arguments PrxStoreRecord MechUnit Delay Filename MechUnit Data type: mechunit The moving mechanical unit object to which the robot movement is synchronized. PrxActivRecord SSYNC1.‘ Continues on next page 94 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB.2 Machine Synchronization 2. If the delay should be used together with a saved profile the delay has to be specified again in the instruction PrxUseFileRecord. If given the value 0 no delay is added.01 and 0.13. All rights reserved.log".10. Limitations The record must be activated before calling PrxStoreRecord. PrxStoreRecord 2.1.1. .’ [ Delay ‘ :=’ ] < expression (IN) of num > ’. WaitSensor SSYNC1. PRX_PROFILE_T1. 0. PrxStoreRecord Usage Saves an activated record in a file. 0. WaitTime 2. PrxStopRecord SSYNC1. Syntax PrxStoreRecord [ MechUnit ‘:=’ ] < expression (IN) of mechunit>’ . PrxStoreRecord SSYNC1.13.log. it is just used for the activation. File_name Data type: string Name of the file where the profile is stored.10. WaitTime 0. PrxStartRecord SSYNC1.2. "Profile. Profile of sensor movement is recorded as soon as sensor_start_signal is set and is stored in the file profile. SetDo do_startstop_machine 1.

PrxStoreRecord Continued Related information Here you list related information and where to find it.2 Machine Synchronization 2. © Copyright 2004-2007 ABB. 3HAC18154-1 Revision: E 95 . All rights reserved.1.13.10. For information about Recording sensor profile See Synchronize with hydraulic press using recorded profile on page 62 or Synchronize with molding machine using recorded profile on page 66.

PrxUseFileRecord Usage Load and activate a record from a file for sensor synchronization. Syntax PrxUseFileRecord [ MechUnit ‘:=’ ] < expression (IN) of mechunit>’ .1.‘ Related information Here you list related information and where to find it. 96 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB.14.’ [ Delay ‘ :=’ ] < expression (IN) of num > ’. Delay Data type: num The delay in seconds can be used to shift the record in time.2. "profile. . 0.01 and 0.2 seconds before start of conveyor movement. For information about Recording sensor profile See Synchronize with hydraulic press using recorded profile on page 62 or Synchronize with molding machine using recorded profile on page 66.14.2 Machine Synchronization 2. All rights reserved.1.’ [ File_name‘ :=’ ] < expression (IN) of string >‘. Program execution PrxUseFileRecord must be executed at least 0. If given the value 0 no delay is added. PrxUseFileRecord 2.1. Basic example PrxUseFileRecord SSYNC1.10. File_name Data type: string Name of the file where the profile is stored... !Work synchronized with sensorWork synchronized with sensor . WaitTime 0.. It must be between 0. SetDo do_startstop_machine 0. SetDo do_startstop_machine 1.10. Arguments PrxUseFileRecord MechUnit Delay Filename MechUnit Data type: mechunit The moving mechanical unit object to which the robot movement is synchronized.log".

10.10.‘ Related information For information about Supervise sync sensor. SupSyncSensorOff 2. See SupSyncSensorOn on page 98 © Copyright 2004-2007 ABB.2 Machine Synchronization 2. 3HAC18154-1 Revision: E 97 . Arguments SupSyncSensorOff MechUnit MechUnit Mechanical unit Data type: mecunit The name of the mechanical unit.15. All rights reserved.1.15.1. Example SupSyncSensorOff SSYNC1 The sensor is no longer supervised. SupSyncSensorOff Usage SupSyncSensorOff is used to stop supervision of the robot movement and synchronized sensor movement. Basic example Basic example of the instruction SupSyncSensorOff is illustrated below. Syntax SupSyncSensorOff [ MechUnit‘:=’ ] < variable (VAR) of mecunit>‘.

16. SupSyncSensorOn 2. Continues on next page 98 3HAC18154-1 Revision: E . i. Arguments SupSyncSensorOn MechUnit MaxSyncSup SafetyDist MinSyncSup [\SafetyDelay] MechUnit Mechanical unit Data type: mecunit The name of the mechanical unit.1.10. The robot will trigger an alarm if the distance between robot and sensor is smaller then the Safety distance. Basic example Basic example of the instruction SupSyncSensorOn is illustrated below.1. In the case of increasing machine positions the limit must be positive corresponding to minimum positive position difference (and minimum advance distance). SupSyncSensorOn Usage SupSyncSensorOn is used to start the supervision between robot movement and a synchronized sensor movement.10. When the alarm is triggered supervision is stopped. The unit is mm. MinSyncSup Minimal synchronized supervised position Data type: num The robot will start the supervision when the sensor is in the window defined from MinSyncSup position to MaxSyncSup position. the model should always be moving in advance of the real machine. The supervision is terminated if the distance between the robot and sensor is smaller than 100. MaxSyncSup Maximal Synchronized supervised position Data type: num The robot will supervise the sensor until the sensor passes the max sync position. It must be negative.16. 50 The mechanical unit SSync1 is supervised when the sensor is positioned between 50 and 150. The unit is mm. 150. Data type: num Safetydist is the limit of the difference between expected machine position and the real machine position. Example SupSyncSensorOn Ssync1.2 Machine Synchronization 2. When the point is passed the supervision is stopped. The unit is mm. In the case of decreasing machine positions the limit must be negative corresponding to maximum negative position difference (and minimum advance distance). All rights reserved.e. SafetyDist Safety distance © Copyright 2004-2007 ABB. 100.

’ [ MaxSyncSup‘ :=’ ] < expression (IN) of num > ´.10. All rights reserved. Syntax SupSyncSensorOn [ MechUnit ‘:=’ ] <variable (VAR) of mecunit>’ . 3HAC18154-1 Revision: E 99 .´ [ SafetyDist‘ :=’ ] < expression (IN) of num > ´.´ Related information Here you list related information and where to find it. Limitations If the SupSynSensorOn is used before the instruction WaitSensor is finished the robot will stop.1. SupSyncSensorOn Continued [\SafetyDelay] Safety delay Data type: num SafetyDelay is used to adjust the delay between the programmed position of the robot and the sensor supervised position.16. For information about Stop Supervise sync sensor See SupSyncSensorOff on page 97 © Copyright 2004-2007 ABB.2 Machine Synchronization 2. The unit is in seconds.´ [ MinSyncSup‘ :=’ ] < expression (IN) of num > [ \SafetyDelay‘ :=’ ] < expression (IN) of num > ´.

Sync to sensor Usage SyncToSensor (Sync To Sensor) is used to start or stop synchronization of robot movement to sensor movement. MoveL *.Sync to sensor 2. SyncToSensor SSYNC1 /Off means that the robot stops moving synchronized with the sensor. Basic examples Basic examples of the instruction SyncToSensor are illustrated below.17. z10. All rights reserved. MoveL *. tool. SyncToSensor .17. SyncToSensor Ssync1\On. v1000. [\Maxsync] Data type: num The robot will move synchronized with sensor until the sensor passes the Maxsync position. [\On] © Copyright 2004-2007 ABB.1. z20.10. Data type: switch The robot moves synchronized with the sensor after an instruction using the argument On. \WObj:=wobj0.10.2 Machine Synchronization 2. MoveL *. Continues on next page 100 3HAC18154-1 Revision: E . z20. Program execution SyncToSensor SSYNC1 /On means that the robot starts to move synchronized with sensor SSYNC1. v1000. tool. \WObj:=wobj0. SyncToSensor Ssync1\Off. [\Off] Data type: switch The robot moves unsynchronized with the sensor after an instruction using the argument Off. Arguments SyncToSensor MechUnit [\MaxSync][\On] | [\Off] MechUnit Mechanical Unit Data type: mecunit The moving mechanical unit to which the robot position in the instruction is related. v1000. SyncToSensor . If optional parameter Maxsync is not defined the robot will move synchronized until the instruction SyncToSensor SSYNC1/Off is executed. So the robot passes at the taught robtarget at the same time as the sensor passes the external position stored in the robtarget. \WObj:=wobj0. After this the robot will move unsynchronized at programmed speed.1. Example 1 WaitSensor Ssync1. tool.

17.Wait for connection on sensor on page 102 © Copyright 2004-2007 ABB.10.’ Related information For information about Drop object on sensor RobotWare options Sensor Synchronization See DropSensor .Drop object on sensor on page 77 Product specification . All rights reserved.Sensor Synchronization Wait for connection on sensor WaitSensor .Controller software IRC5. section Motion Coordination .2 Machine Synchronization 2.Controller software IRC5 Product specification . Syntax SyncToSensor [ MechUnit’:=’] < variable (VAR) of mecunit> [\MaxSync] [’ \’ On] | [ ’\’ Off] ’. 3HAC18154-1 Revision: E 101 .1.Sync to sensor Continued Limitations If the instruction SyncToSensor SSYNC1 /On is issued while the sensor has not been connected via WaitSensor then the robot will stop. SyncToSensor .

2 Machine Synchronization
2.10.1.18. WaitSensor - Wait for connection on sensor Machine Synchronization

2.10.1.18. WaitSensor - Wait for connection on sensor
Usage
WaitSensor (Wait Sensor) connects to an object in the start window on the sensor

mechanical unit. Basic examples Basic examples of the instruction WaitSensor are illustrated below. See also More examples on page 103. Example 1
WaitSensor Ssync1;

The program connects to the first object in the object queue that is within the start window on the sensor. If there is no object in the start window then execution stops and waits for an object. Arguments
WaitSensor MechUnit[ \RelDist ][ \PredTime][\MaxTime][\TimeFlag] MechUnit

Mechanical Unit Data type: mecunit The moving mechanical unit to which the robot position in the instruction is related.
[ \RelDist ]

Relative Distance Data type: num Waits for an object to enter the start window and go beyond the distance specified by the argument. If the work object is already connected, then execution stops until the object passes the given distance. If the object has already gone past the Relative Distance then execution continues.
[ \PredTime ]

Prediction Time Data type: num Waits for an object to enter the start window and go beyond the distance specified by the argument. If the work object is already connected, then execution stops until the object passes the given distance. If the object has already gone past the Prediction Time then execution continues.
[\MaxTime]

Maximum Time Data type: num The maximum period of waiting time permitted, expressed in seconds. If this time runs out before the sensor connection or reldist reached, the error handler will be called, if there is one, with the error code ERR_WAIT_MAXTIME. If there is no error handler, the execution will be stopped. Continues on next page
102 3HAC18154-1 Revision: E

© Copyright 2004-2007 ABB. All rights reserved.

2 Machine Synchronization
2.10.1.18. WaitSensor - Wait for connection on sensor Machine Synchronization Continued
[\TimeFlag]

Timeout Flag Data type: bool The output parameter that contains the value TRUE if the maximum permitted waiting time runs out before the sensor connection or reldist reached. If this parameter is included in the instruction, it is not considered to be an error if the max. time runs out. This argument is ignored if the MaxTime argument is not included in the instruction. Program execution If there is no object in the start window then program execution stops. If an object is present, then the object is connected to the sensor and execution continues. If a second WaitSensor instruction is issued while connected then an error is returned unless the \RelDist optional argument is used. More examples More examples of the instruction are illustrated below. Example 1
WaitSensor SSYNC1\RelDist:=500.0;

If not connected, then wait for the object to enter the start window and then wait for the object to pass the 500 mm point on the sensor. If already connected to the object, then wait for the object to pass 500 mm. Example 2
WaitSensor SSYNC1\RelDist:=0.0;

If not connected, then wait for an object in the start window. If already connected, then continue execution as the object has already gone past 0.0 mm. Example 3
WaitSensor Ssync1;
© Copyright 2004-2007 ABB. All rights reserved.

WaitSensor Ssync1\RelDist:=0.0;

The first WaitSensor connects to the object in the start window. The second WaitSensor will return immediately if the object is still connected, but will wait for the next object if the previous object had moved past the Maximum Distance or was dropped. Example 4
WaitSensor Ssync1\RelDist:=0.5\PredTime:=0.1;

The WaitSensor will return immediately if the object has passed 0.5 meter but otherwise will wait for an object will reach =Reldist - C1speed * Predtime. The goal here is to anticipate delays before starting a new move instruction. Example 5
WaitSensor Ssync1\RelDist:=0.5\MaxTime:=0.1\Timeflag:=flag1;

The WaitSensor will return immediately if the object has passed 0.5 meter but otherwise will wait 0.1 sec for an object. If no object passes 0.5 meter during this 0.1 sec the instruction will return with flag1 =TRUE.

Continues on next page
3HAC18154-1 Revision: E 103

2 Machine Synchronization
2.10.1.18. WaitSensor - Wait for connection on sensor Machine Synchronization Continued Limitations It requires 50 ms to connect to the first object in the start window. Once connected, a second WaitSensor with \RelDist optional argument will take only normal RAPID instruction execution time. Error handling If following errors occurs during execution of the WaitSensor instruction, the system variable ERRNO will be set. These errors can then be handled in the error handler.
ERR_CNV_NOT_ACT ERR_CNV_CONNECT ERR_CNV_DROPPED The sensor is not activated. The WaitSensor instruction is already connected. The object that the instruction WaitSensor was waiting for has been dropped by another task. (DSQC 354 Revision 2: an object had passed the start window) The object did not come in time and there is no Timeflag

ERR_WAIT_MAXTIME

Syntax
WaitSensor [ MechUnit’:=’]< variable (VAR) of mecunit> [ ’\’ RelDist’:=’ < expression (IN) of num > ] [ ’\’ PredTime’:=’ < expression (IN) of num > ] [’\’MaxTime’ :=’<expression (IN) of num>] [’\’TimeFlag’:=’<variable (VAR) of bool>] ’;’

Related information For information about
Drop object on sensor Sync to sensor RobotWare options Sensor Synchronization

See
DropSensor - Drop object on sensor on page 77 SyncToSensor - Sync to sensor on page 100 Product Specification - Controller Software IRC5, RobotWare 5.0 SyncToSensor - Sync to sensor on page 100 Product Specification - Controller Software IRC5, RobotWare 5.0, section Motion Coordination - Sensor Synchronization
© Copyright 2004-2007 ABB. All rights reserved.

104

3HAC18154-1 Revision: E

2.2. PrxGetMaxRecordpos Usage Returns the max position in mm of the active record.10.2.1. Program execution The recording must be finished and the record must be active. Predefined data Give information about predefined data that is necessary for the function. Return value Data type: num The maximum position (in mm) of the recorded profile of sensor movement. For information about Recording sensor profile See Synchronize with hydraulic press using recorded profile on page 62 or Synchronize with molding machine using recorded profile on page 66. Functions 2. All rights reserved. Arguments PrxGetMaxRecordpos MechUnit MechUnit Data type: mechunit The moving mechanical unit object to which the robot movement is synchronized.1. Basic example maxpos:=PrxGetMaxRecordpos SSYNC1. 3HAC18154-1 Revision: E 105 . Syntax PrxGetMaxRecordpos‘(‘ [ MechUnit‘ :=’ ] < expression (IN) of mechunit> ’)’ A function with a return value of the data type num. PrxGetMaxRecordpos 2.2 Machine Synchronization 2. The maximum sensor position can be used for scaling or limiting max_sync argument in the SyncToSensor instruction. Gets the maximum position for the active profile for the mechanical unit SSYNC1. Related information Here you list related information and where to find it. © Copyright 2004-2007 ABB.10.10.

All rights reserved.10. PrxGetMaxRecordpos 106 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB.1.2 Machine Synchronization 2.2. .

20 MotSupOn 17 MotSupTrigg 17 V Velocity signal 74 3HAC18154-1 Revision: E 107 . 75 Max Delay Distance 75 Max Synchronization Speed 75 Mechanics 75 Min Synchronization Speed 75 modes of operation 51 molding machine 66 Motion commands 49 Motion Supervision 15 Motion Supervision Max Level 15 Motion System 15 MotionSup 16. 66 reversed movement 13 Rotating move 75 E emergency stop 51 external axes 12 S safety 9 sensor object 28 Sensor Synchronization 23 Sensor systems 73 sensor_speed 49 set up Collision Detection 18 soft servo 12 speed 14 Speed reduction % button 49 Speed warnings 49 stop 51 supervision level 15. 16.Index A Activate at start up 75 activate supervision 20 Add or replace parameters 38 Adjustment Speed 73 Analog Synchronization 23 auto mode 51 N Name 75 Nominal Speed 73 Null speed signal 74 O object queue 28 C Change of tool 49 collision 13 Collision Detection Memory 15 configure Collision Detection 18 Connected signal 74 Counts Per Meter 73 CPU_load_equalization 74 P Path Collision Detection 15. 18 M Manual mode 49 manual mode 51 Max Advance Distence 74. 18 Path resolution 74 Performance limits 49 Position signal 74 Position warnings 49 Process update time 74 Programmed speed 49 D Data ready signal 74 deactivate supervision 20 Do not allow deact 75 DropSensor 77 R RAPID limitations 50 recorded profile 62. 18 Path Collision Detection Level 15. All rights reserved. T torque 14 track motion 12 triggering 21 tuning 20 Jog Collision Detection 15. 18 Jog Collision Detection Level 15. 20 SyncToSensor 100 F false triggering 21 Fileldbus Command 73 Finepoints 49 H hydraulic press 62 I IIRFFP 73 independent joint 12 J © Copyright 2004-2007 ABB.

All rights reserved. .108 Index 3HAC18154-1 Revision: E © Copyright 2004-2007 ABB.

.

Revision E. en .ABB AB Robotics Products S-721 68 VÄSTERÅS SWEDEN Telephone: +46 (0) 21 344000 Telefax: +46 (0) 21 132592 3HAC18154-1.