Advertisement

ROBOTICS
Application manual
BullsEye

Advertisement

Table of Contents
loading

Summary of Contents for ABB BullsEye

  • Page 1 ROBOTICS Application manual BullsEye...
  • Page 2 Trace back information: Workspace R18-2 version a11 Checked in 2018-10-11 Skribenta version 5.3.008...
  • Page 3 Application manual BullsEye RobotWare 6.08 Document ID: 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved. Specifications subject to change without notice.
  • Page 4 The information in this manual is subject to change without notice and should not be construed as a commitment by ABB. ABB assumes no responsibility for any errors that may appear in this manual. Except as may be expressly stated anywhere in this manual, nothing herein shall be construed as any kind of guarantee or warranty by ABB for losses, damages to persons or property, fitness for a specific purpose or the like.
  • Page 5: Table Of Contents

    BECheckTcp - BullsEye check TCP ............6.2.2 BEDebugState - Debug state control ............6.2.3 BERefPointer - BullsEye reference pointer ........... 6.2.4 BESetupToolJ - BullsEye setup tool joint move ..........6.2.5 BETcpExtend - BullsEye extend TCP ............6.2.6 BEUpdateTcp - BullsEye update TCP ............Functions ......................
  • Page 6 This page is intentionally left blank...
  • Page 7: Overview Of This Manual

    Overview of this manual Overview of this manual About this manual This manual explains the basics of when and how to use the option BullsEye®. • Product overview • Operation overview • Requirements overview • Software set-up • Software reference, RAPID...
  • Page 8 Continued Revisions Revision Description Released with RobotWare 6.0. Released with RobotWare 6.04. • BullsEye is now a separate RobotWare option. Released with RobotWare 6.07. • Added information about EIO configuration in section Installation on page Released with RobotWare 6.08. •...
  • Page 9: Product Documentation

    Product documentation Categories for user documentation from ABB Robotics The user documentation from ABB Robotics is divided into a number of categories. This listing is based on the type of information in the documents, regardless of whether the products are standard or optional.
  • Page 10 The operating manuals describe hands-on handling of the products. The manuals are aimed at those having first-hand operational contact with the product, that is production cell operators, programmers, and troubleshooters. Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 11: Safety

    ELECTROSTATIC Warns for electrostatic hazards which could result DISCHARGE (ESD) in severe damage to the product. Continues on next page Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 12 Continued Symbol Designation Significance NOTE Describes important facts and conditions. Describes where to find additional information or how to do an operation in an easier way. Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 13: Make Sure That The Main Power Has Been Switched Off

    To avoid these personal injuries, switch off the main power on the controller before proceeding work. Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 14: Risks Associated With Live Electric Parts

    Tools, material handling devices, etc., may be live even if the robot system is in the OFF position. Power supply cables which are in motion during the working process may be damaged. Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 15: Introduction To Bullseye

    2.1 Product overview Introduction to BullsEye BullsEye® 10 provides completely automated Tool Center Point (TCP) definition for the IRC5 robot controller and introduces support of new tools in addition to MIG welding torch configurations. Concentric cutting tools may also be used where the stick-out is defined as the distance from the cutting tip to the part surface.
  • Page 16 2 Introduction to BullsEye® 2.1 Product overview Continued • Optimized update times. Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 17: Theory Of Operation

    2 Adjust for the misalignment automatically by redefining the TCP to the new torch position using the BullsEye. After the BullsEye system updates the current TCP definition, the torch will rotate around the TCP as before because the robot arm has adjusted its path to compensate for the torch misalignment.
  • Page 18 2 Introduction to BullsEye® 2.2 Theory of operation Continued Robot arm follows same path but torch path has changed xx1400001212 Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 19: Limitations

    Limitations for calibration BullsEye 10 can be used to calibrate tools of a variety of shapes. While earlier versions of BullsEye were restricted to welding MIG tool designs, BullsEye 10 is also suited to cutting tools that do not have a consumable wire electrode like a MIG tool.
  • Page 20 TCP z-axis inline with mounting surface z-axis not supported BullsEye is incapable of defining a tool that has the TCP centered along the z-axis of the robot 6th axis mounting surface, and the z-axis of the tool perpendicular to the mounting surface.
  • Page 21: Safety Information

    WARNING Before beginning work with the robot, make sure you are familiar with the safety regulations described in the manual Operating manual - General safety information. Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 22 This page is intentionally left blank...
  • Page 23: Installation

    • BullsEye application manual (this manual). The manual is distributed in electronic format. • BullsEye scanning device. Typically this will be the standard BullsEye yoke described below. • BullsEye robot software. Software can be delivered as a separate product, or as part of cell management software like GAP and EasyArc.
  • Page 24 Orientation of the scanning device Although BullsEye can be configured to handle any scan device orientation, it is easiest to setup BullsEye when the beam of the scanning device is in a plane parallel to the plane of the robot base.
  • Page 25 The BullsEye option is available for the robot controller only if the BullsEye option is purchased. If BullsEye is installed in a system with the Arc option, it will only be installed on the robots that installs Arc. If installed in a system without the Arc option it will be installed in all robots.
  • Page 26 I/O board. Pass your hand through the BullsEye yoke beam to break the beam. The LED on the I/O board corresponding to the input should turn on when the beam is broken.
  • Page 27: Maintenance

    4 Maintenance 4 Maintenance Overview The BullsEye is shipped complete and requires very little maintenance aside from keeping the unit clean. For wiring information, see Electrical installation on page Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 28 This page is intentionally left blank...
  • Page 29: User Guide

    Even though the power is switched off at the robot controller, there may be energized cables connected to external equipment and are consequently not affected by the mains switch on the controller. Continues on next page Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 30: Overview

    5.1 Overview Initialization and define a tool The first step in using BullsEye® is to define a tool. This is done using the BESetupToolJ instruction. This instruction adds a tooldata instance to the BullsEye collection of tools, defines the starting position, and lets BullsEye know how it should behave when other global methods are called.
  • Page 31: Data Storage

    The file is stored in the following directory, with a name like, $HOME\BullsEye® \BE_Data_T_ROB1.sys, where T_ROB1 is the name of the task. Each robot task that is using BullsEye will have its own data file. The directory path may not be changed.
  • Page 32: Using Bullseye

    Introduction The user module in your system may look different than the basic example used in this procedure, however, all user modules will make calls to BullsEye methods like BECheckTcp and BESetupToolJ. This section focuses solely on the flexibility of these global methods themselves.
  • Page 33: The Global Methods Of Bullseye

    5.3.1 The global methods of BullsEye The term global method BullsEye has several global methods used to access BullsEye features. The term, global methods, refers to RAPID instructions that are visible from your RAPID program. That is to say that the instructions may be called from your RAPID program in the same way you might make a call to the MoveJ instruction.
  • Page 34: Defining A Tool

    Action Use the BESetupToolJ instruction to define a tool. This instruction adds a tooldata instance to the BullsEye collection of tools, defines the starting position, and lets BullsEye know how it should behave when other global methods are called. This information is passed to the instruction through several required and optional argu- ments.
  • Page 35 Design Data, Scan Data, and Device Data. These three data types provide configurable parameters used to influence the beha- vior of BullsEye for the newly added tool. The names of the data type are be_tooldesign, be_scan, and be_device, respectively. This section will cover some of the basic parameters.
  • Page 36 5 User guide 5.3.2 Defining a tool Continued Action The next argument is the tool. All information passed to BullsEye with the BESetupToolJ instruction will be associated by the tool name. BESetupToolJ jtApprPos, jtStartPos, 15, tdMigDefault, scan- BullsMig, devYokeUp, v100, fine, tWeldGun;...
  • Page 37: Default Bullseye Data

    When a small tooling ball is mounted on the robot as a tool, this data instance will provide data that allows BullsEye to find the center of the ball. Default device data for a standard BullsEye yoke scanning device devYokeUp positioned with the yoke facing up relative to the robot base.
  • Page 38: Selecting Different Bullseye Data

    5.3.4 Selecting different BullsEye data 5.3.4 Selecting different BullsEye data Introduction Sometimes it is necessary to choose a different data instance. Consider a system where the BullsEye yoke is mounted upside down. Illustration: scan device orientations xx1400001219 xx1400001220 The image on the left shows the yoke mounted right side up.The figure on the right shows the yoke mounted upside down.
  • Page 39 BESetupToolJ jtApprPos, jtStartPos, 15, tdMigDefault, scan- BullsMig, devYokeDown, v100, fine, tWeldGun; Continues on next page Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 40 5 User guide 5.3.4 Selecting different BullsEye data Continued Note This general procedure is used for choosing new be_scan and be_tooldesign data, also. Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 41: Creating New Bullseye Data Instances

    A common parameter that sometimes requires a change is the Signal Name. The BullsEye scanning device is wired to a digital input in the controller. The signal name used in BullsEye must match the signal name defined in system parameters.
  • Page 42 5 User guide 5.3.5 Creating new BullsEye data instances Continued Creating new BullsEye data instances Action From the Program Data window, view the be_device data in the system. The following figures shows viewing the be_device data with built-in scope and with task scope.
  • Page 43 5 User guide 5.3.5 Creating new BullsEye data instances Continued Action The new data instance may be modified because it was declared in an open module, meaning it is not read-only. We need to modify the Signal Name. • Tap Enter to view the data instance fields.
  • Page 44 5 User guide 5.3.5 Creating new BullsEye data instances Continued Note This general procedure is used for choosing new be_scan and be_tooldesign data, also. Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 45: Bullseye Data Parameters

    BESetupToolJ instruction re-executed. It takes some practice to be able to run the setup on the first try. It is best to try running the BullsEye before permanently mounting the sensor, in case you find that it must be moved to complete the setup.
  • Page 46: Quickcheck

    Another commonly used optional argument is the Status argument. The Status argument returns an integer that may be evaluated in the calling RAPID code. Each error condition returns a unique error number. Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 47: Bullseye Status Codes

    5.4 BullsEye status codes 5.4 BullsEye status codes About status codes BullsEye uses status codes to report errors from the user instructions. The error code may be captured using the INOUT Status parameter in BEUpdateTcp, BERefPointer, and BECheckTcp. List of error codes The following is a list of the error codes and a brief description for each.
  • Page 48 BESliceCountErr BullsEye will take "slices" of the tool to find the end of the tool. If it cannot find the end of the tool in a reasonable number of scans, the instruction will be aborted and this message will be raised.
  • Page 49 BE_Data module. Load the correct BE_Data module, or reinitialize and run the setup instruction. BEBeamMoveErr BullsEye has detected that the beam has moved. Re-run the setup. BECheckErr There was a problem in the BECheckTcp instruction. The cause is unknown.
  • Page 50 This tool has been initialized with the optional UserFramePos. The optional functionality is not working correctly and the execution has been aborted. BEUnknownErr An unknown error has occurred. Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 51: Frequently Asked Questions

    I/O board. The signal is commonly given the name diBE_SENSE1. CONST be_device devYokeUp:=["diBE_SENSE1",TRUE, CONST be_device devYokeUp:=["diMyNewSense",TRUE, BullsEye must be informed of the name of the digital input. The name of the signal is defined in the be_device data instance that is passed into the BESetupToolJ instruction. See be_device in...
  • Page 52 This is the preferred method since it negates the positional inaccuracy of the robot carrier. If the BullsEye scanning device is fixed in the world, then a flag must be set in the be_device data to inform BullsEye.
  • Page 53 [TRUE,30,1,50,3.5,4,FALSE,FALSE,1.2,[130,100,100,100], [220,130,100,100]]; When a tool with welding wire is measured, BullsEye cannot actually measure the real location of the end of the wire. The wire location is measured close to the end of the gas cup, and the TCP is mathematically extended down from the end of the gas cup based on the TCP Extension parameter passed into the BESetupToolJ instruction.
  • Page 54 MinBodyDia We want to put a very small number here so that BullsEye will not think it has reached the end of the tool until it makes slices all the way past the end of the ball. We will use 1 mm.
  • Page 55: Rapid Reference

    In such cases it may be necessary to increase Repeatability in order for the robot to find an acceptable solution. A convergence error is reported via the BullsEye error code argument when the system cannot reach the desired repeatability within a reasonable time.
  • Page 56 Device upright Device inverted MovedWithRobot Data type: bool If the robot baseframe is moved by a mechanism, does the BullsEye move with it? If not, set this to FALSE. RefPoint Data type: bool If there is a reference pointer to define, set this parameter to TRUE.
  • Page 57 <MovedWithRobot of bool> <RefPoint of bool> Related information Described in: BESetupToolJ BESetupToolJ - BullsEye setup tool joint move on page 72 be_scan be_scan - Scan data on page 58 be_tooldesign be_tooldesign - Tool design on page 61 Application manual - BullsEye 3HAC050989-001 Revision: C ©...
  • Page 58: Be_Scan - Scan Data

    6 RAPID reference 6.1.2 be_scan - Scan data 6.1.2 be_scan - Scan data Usage be_scan describes how BullsEye® should behave during the scanning process. Components NumOfScans Data type: num The number of redundant scans is defined here. Redundant scanning will give better repeatability and accuracy.
  • Page 59 Structure <dataobject of be_scan> <NumOfScans of num> <BodyScanMargin of num> <WireScanMargin of num> <TwistAngle of num> <TiltAngle of num> <InitPatternRad of num> Continues on next page Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 60 6.1.2 be_scan - Scan data Continued Related information Described in: BESetupToolJ BESetupToolJ - BullsEye setup tool joint move on page 72 be_device be_device - Device data on page 55 be_tooldesign be_tooldesign - Tool design on page 61 Application manual - BullsEye 3HAC050989-001 Revision: C ©...
  • Page 61: Be_Tooldesign - Tool Design

    The minimum tool body diameter within the scan range. This is typically the diameter at the "end" of the tool. Units: mm xx1400001232 Continues on next page Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 62 The RangeShift is useful in ignoring weld spatter on a MIG welding torch. Units: mm SliceGap Data type: num When scanning to find the end of the tool BullsEye® takes "slices" of the tool until the end is found. The SliceGap is the thickness of each slice. Units: mm ScanWire Data type: bool If ScanWire is TRUE, then BullsEye®...
  • Page 63 Manual for an explanation of speeddata. Caution: Setting this parameter too high may cause damage to the work tool or may introduce resonance into large gantry-style robot applications. Continues on next page Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 64 <SlowMoveSpeed of speeddata> <FastMoveSpeed of speeddata> Related information Described in: BESetupToolJ BESetupToolJ - BullsEye setup tool joint move on page 72 be_device be_device - Device data on page 55 be_scan be_scan - Scan data on page 58 Application manual - BullsEye 3HAC050989-001 Revision: C ©...
  • Page 65: Instructions

    QuickCheck. If the measurement indicates that the tool TCP has moved, BullsEye will do a complete evaluation to get the new TCP. If the change is found to be less than the maximum allowed change, the TCP will be updated.
  • Page 66 With this option, neither the z-dimension of the tool, nor the orientation of the tool, is updated. CAUTION This is not a recommended BullsEye method. [\ElapsedTime] Data type: num This parameter will return the overall time required to complete the QuickCheck plus any TCP updating time.
  • Page 67 Execution in stepwise mode is not supported. Error handling Known errors are raised as BullsEye error codes in the optional argument Status. These codes can be handled outside the instruction with standard conditional statements. BullsEye error codes are not n constants handled in a RAPID error handler.
  • Page 68: Bedebugstate - Debug State Control

    Usage BEDebugState is used to control the debug log detail level. Normally only limited information in stored in the BullsEye log files. With this instruction, more detailed information is recorded to help advanced users determine the cause of an error.
  • Page 69: Berefpointer - Bullseye Reference Pointer

    BERefPointer Tool [\UserInterface] [\Status] [\TLoad] Tool Data type: tooldata Tool is the tooldata instance that will be evaluated. The tool must be initialized in the BullsEye Collection with the instruction BESetupToolJ before BERefPointer can be used. [\UserInterface] Data type: string An optional user interface may be specified here.
  • Page 70 6 RAPID reference 6.2.3 BERefPointer - BullsEye reference pointer Continued string st4, be_status Condition) <body of procedure> ENDPROC [\Status], <INOUT> Data type: be_status This optional parameter returns the status code. A status code other than 1 indicates a problem in execution. For more information on status codes, see...
  • Page 71 Execution in stepwise mode is not supported. Error handling Known errors are raised as BullsEye error codes in the optional argument Status. These codes can be handled outside the instruction with standard conditional statements. BullsEye error codes are not n constants handled in a RAPID error handler.
  • Page 72: Besetuptoolj - Bullseye Setup Tool Joint Move

    6.2.4 BESetupToolJ - BullsEye setup tool joint move 6.2.4 BESetupToolJ - BullsEye setup tool joint move Usage BESetupToolJ is used to define a TCP and add the tool to the BullsEye collection. The scanning behavior is dictated by the parameters passed into the instruction. Basic examples BESetupToolJ jtApprPoint, jtStartPos,15,tdMigDefault, scanBullsMig, devYokeUp,v200,fine,tTestTemp;...
  • Page 73 Technical reference manual - RAPID Instructions, Functions and Data types. Tool Data type: tooldata Tool is the tooldata instance that is to be added to the BullsEye collection. Continues on next page Application manual - BullsEye 3HAC050989-001 Revision: C...
  • Page 74 TRUE. For example, if the robot is mounted on a rotating tower with linear carriage movement on the boom, then it is possible that the BullsEye scanning device could be mounted to the first link, and the robot mounted to the second link.
  • Page 75 - RAPID Instructions, Functions and Data types. Program execution The tool is added to the BullsEye collection along with all of the data that is passed into the instruction. BullsEye will then perform a scan sequence to determine the TCP of the tool.
  • Page 76 6 RAPID reference 6.2.4 BESetupToolJ - BullsEye setup tool joint move Continued [ StartPoint ':='] < expression (IN) of jointtarget > ',' [ TcpExtens ':='] < expression (IN) of num > [ ToolDesign ':=' ] < expression (IN) of be_tooldesign > ',' [ Scan ':=' ] <...
  • Page 77: Betcpextend - Bullseye Extend Tcp

    BETcpExtend is used to vary the TCP along its z-axis. The instruction may be used to modify electrode stick-out for a tool that has already been set up in BullsEye. There is no need to re-run the BullsEye initialization and setup routines after making a change with BETcpExtend.
  • Page 78 Not supported. Error handling Known errors are raised as BullsEye error codes in the optional argument Status. These codes may be handled outside the instruction with standard conditional statements. BullsEye error codes are not ERRNO constants handled in a RAPID error handler.
  • Page 79: Beupdatetcp - Bullseye Update Tcp

    6 RAPID reference 6.2.6 BEUpdateTcp - BullsEye update TCP 6.2.6 BEUpdateTcp - BullsEye update TCP Usage BEUpdateTcp is used to measure and update the TCP of a tool that has been previously initialized and setup with BESetupToolJ. Basic examples BEUpdateTcp tTestTemp;...
  • Page 80 Execution in stepwise mode is not supported. Error handling Known errors are raised as BullsEye error codes in the optional argument Status. These codes may be handled outside the instruction with standard conditional statements. BullsEye error codes are not ERRNO constants handled in a RAPID error handler.
  • Page 81 - Scan data on page 58 be_tooldesign be_tooldesign - Tool design on page 61 BESetupToolJ BESetupToolJ - BullsEye setup tool joint move on page 72 Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 82: Functions

    Related information Described in: OffsToolPolar OffsToolPolar - Offsets tool cartesian on page 83 Definition of pos Technical reference manual - RAPID Instructions, Functions and Data types Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 83: Offstoolpolar - Offsets Tool Cartesian

    [ Radius ':=' ] < expression (IN) of num > ',' [ Angle ':=' ] < expression (IN) of num > ')' Related information Described in: OffsToolXYZ OffsToolXYZ - Offsets tool cartesian on page 82 Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 84 This page is intentionally left blank...
  • Page 85: Spare Parts

    Opto-electronic sensor xx1400002302 BullsEye complete Article num- Description Note 0506310880 BullsEye stand alone, complete 0505004880 BullsEye upper pole 0505003880 BullsEye pole foot Continues on next page Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 86 7 Spare parts Continued Article num- Description Note 0503293880 Ext. cable 0503293881 Ext. cable 10 m 0503293883 Ext. cable 15 m xx1400002305 Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 87: Index

    14 BETcpExtend, 77 voltage, 14 BEUpdateTcp, 79 safety signals in manual, 11 signals cabinet lock, 14 safety, 11 symbols safety, 11 danger levels, 11 Application manual - BullsEye 3HAC050989-001 Revision: C © Copyright 2004-2018 ABB. All rights reserved.
  • Page 90 PuDong District SHANGHAI 201319, China Telephone: +86 21 6105 6666 ABB Inc. Robotics and Motion 1250 Brown Road Auburn Hills, MI 48326 Telephone: +1 248 391 9000 abb.com/robotics © Copyright 2004-2018 ABB. All rights reserved. Specifications subject to change without notice.

This manual is also suitable for:

0503060880

Table of Contents