RSD-TR-1 -87 A Survey of Robot Test Method With Examples By Paul G. Ranky Visiting Professor Department of Mechancial Engineering and Applied Mechnics The University of Michigan Ann Arbor, Michigan 48109-1109 (313) 764-8481 Michael Wodzinski, Manager Robot Testing Selspot Systems 1233 Chicago Road Troy, Michigan 48083 (313) 583-6940 February 1987 OENTER FOR RESEARCH ON INTEGRATED MANUFACTURING Robot Systems Division The College of Engineering The University of Michigan Ann Arbor, Michigan 48109-1109

RSD-TR- 1-87 TABLE OF CONTENTS 1. Introduction........................................1 2. Robot Measurement Concepts........................................ 5 3. Robot Mesasurement Principles 6 4. Robot Test Measurement Results 7 5. An Overview of Robot Test Methods 9 6. The IPA-Stuttgard Robot Test Method.10 7. The Test-Robot Program 12 7.2 The Mark II Version of the Test-Robot Program.19 8. The Ford RAACC Robot Testing Method.20 9. Laser Based Robot Test Methods Currently Under Development.................................................. 35 9.1 The National Bureau of Standards Laser Method...................... 42 9.2 The Chesapeake Laser Systems Robot Test Method.................. 43

RSD-TR-1-87 10. Conclusions................................................................................. 45 11. Acknowledgements....................................................................... 45 12. References and Further Readings........................................ 45

1. Introduction The robotics technology is over twenty-five years old, but is still experiencing many different growing pains of which we are addressing mainly the pose error (or in other words position and orientation error) measurement methods in this paper. Pose error measurements (both static and continuous path) are increasingly important since every robot has its own fingerprint, which must be taken into consideration when designing unmanned cells for precision work and when generating robot programs off-line in an integrated CAD/CAM (or CIM, Computer Integrated Manufacturing) system environment. (Figures 1 and 2). In this paper we are discussing well known methods and new approaches with many examples. We do believe that future robotic workcell design systems,simulation systems as well as the FMSs (Flexible Manufacturing Systems) will require the knowledge of each robot's pose error, partly for off-line simulation and programming, as well as for real-time recalibration purposes. Keeping these major and difficult research and developement tasks to be solved and currently under research in mind, let us give a brief survey of different robot test methods as well as discuss some new research results too. Various types of performance test methods have been utilized since the inception of the industrial robot. Performance testing has many forms from verifying the design goals by the manufacturer to the determination of the best robot for a particular application. Each type of testing is related to the various phases whilst a robot model passes through its useful life. Three distinct phases of development usually occur during design: The ALPHA PHASE, representing the fabrication and the test of a prototype robot which was designed based on goals set forth by the design engineers in the form of functional and design specifications. Testing during this phase includes the verification of the design specifications and the determination of the system integrity. The final output of this phase is a proposed specification and a prototype robot.

|Host Computr/N etwo rk e:'..tlr/Rb Pgm abInfoa ftCiM System......................... I LocalAreat NeBusiness Level Lor~ Datbm M a Dangemt ab (ogram, aes, dgo"" (System let CAD Level:;....:..,........ _.......................... CtD DCrv:, Leve ji.............i:i..:i:?!.:-:i......! ii:izi....... Production Planncr's and Robot Robot AGV, etc.. amme DUb CAM system Robot Tool Databac |........ s............'Robots CAM Level Database FAS _Netwck Drive Flexible Assembly System (FAS) | I~ Robot L [x Area Netwt (LAN) tl 1 C onDtroera| tCont blern FAS Level (pro@sms, state, di_ l * * robot tooul maai4n cantants, es.) Figure 1. The architecture of a CIM (Computer Integrated Manufacturing) data.processing network, in which robot test data must be used both at off-line cell design and programming levels (indicated as CAM), as well as in the real-time controlled manufacturing system (FAS) level.

The BETA PHASE consists of either preproduction or initial production units which are sent to specific customers on consignment. The beta sites are carefully selected to represent typical applications of the particular robot being evaluated. Both the robot manufacturers and the beta site customers use this phase to determine whether certain features should be incorporated or eliminated. The output of this phase is the specification of the robot. The PRODUCTION phase consists of the actual robots manufactured in quantities. Tests conducted during this phase are designed to determine whether or not the robot meets its specifications, and how it performs in a particular application. The tests performed in each of these phases may be similar or even identical depending on the performance parameters to be measured. The type of information which can be obtained is often limited by the test equipment. [ Ref. 1]. At the very beginning of the short history of robots many of the test techniques used for the measurement of robots were adopted from the "NC world". Numerically controlled (NC) machine tools were used to quantify robot performance but it was quickly determined that performance parameters of robots were quite different in particular in the case of non-cartesian type robots. One major advantage of machine tools is the ability to fix the work by means of rigid fixtures onto the table of the machine tool. The machine tool then has control over the environment of the process. The majority of current industrial robots, on the other hand, are spatial mechanisms which perform tasks on parts (or work) located somewhere in space. Since the robot designer does not know where these parts will be located by the robot users, the performance of the robot is in general not optimized for any particular area, or location. The other important difference is that whereas some machine tool testing techniques are designed to measure the parts made and to monitor the machine, robot testing techniques must determine the performance for all parts of the entire work envelope, regardless of the actual application.

DESCRDRUODc Robot conouller Generl description. description CONTROLLER ID ~~~~~~~~~~~.:~~~~~~~~~~~~~~~ ~ ~~.:~.. ~.........~~....................................... TE, T RESULTS M TOOL TYPE ID........' — _+ ] ^ - | [ G~~~~ TchNDical Analytical and description of ragphical the robot arm description of geometry. the test results.. SOuD MODEL ID SOLID MODEL FILE Arm graphics model and Aulrti a nimation file. Robot too tlyp description ffi Figure 2. The data structure of a robot database in which besides arm individual fingerprints of robots.

This criteria places severe constraints on the test equipment because not only is the three dimensional position of the robot is required but this position must be of sufficient accuracy to be meaningful. Considering the fact that most current industrial robots have work envelopes larger than one cubic meter, to be able to monitor a one cubic meter volume at a resolution of an order of approximately ten times greater than that rated for a typical robot exceeds the capabilities of most currently available test equipment. 2. Robot Measurement Concepts Since often performance parameters such as repeatability, accuracy and resolution are confused, let us define each of them: REPEAT/BILITY is defined as the closeness of agreement of repeated position movements, under the same conditions, to the same location (Ref. 3]. (Note that'location' means a truely three dimensional position [x, y, z] and an orientation vector [0, A, T].) ACCURACY is the degree to which the actual location corresponds to the desired or commanded location. RESOLUTION is a measure of the smallest possible increment of change in the variable output of a device. Resolution is determined by the position feedback devices (e.g., optical encoders) internal to the robot mechanism. Resolution varies depending on robot position. (In the case of articulated robots for example it is usually best at the innermost points and worst at the outermost points. Both repeatability and accuracy are dependent on the resolution of the robot since the robot control must use the position information from the feedback devices to determine whether it is at the commanded, taught location (in the case of static repeatability and static accuracy) or travelling along the desired trajectory (in the case of kinematic repeatability and kinematic accuracy). Resolution is rarely specified by the robot manufacturers since it varies depending on the position of the robot and is usually of no consequence to the user. The resolution determines parameters such as repeatability and accuracy which are used to determine whether or not a robot will be able to perform well in a particular application.

Accuracy is a measure of how well a robot moves to the absolute position and orientation of the desired location everytime it is commanded to do so, whereas repeatability measures how well the robot returns to the taught location time-after-time. (Note again, "location" meaning a 3D position vector, x, y, z pointing from the robot base coordinate system's origin to the tool-center-point frame and the orientation of the tool, typically given by the so called Euler angles, 0, A, T. To summarize, one could say that accuracy is a measure of the theoretical location or path of the robot, whereas repeatability is a measure of the relative placement of a location or a path. 3. Robot Measurement Principles Most performance tests developed for industrial robots can be designed to measure either Point-to-Point or Path behavior. Point-to-Point tests measure parameters such as quasi-static repeatability, quasi-static accuracy or dynamic stability. Path tests measure parameters such as kinematic repeatability or kinematic accuracy ( Refs. [1] and [12). Each type of test places different demands on the test equipment. Let us summarize those general guidelines which are recommended when testing industrial robots: * The measurement equipment should have a resolution of at least one order-of-magnitude greater than the value to be measured. For example of a repeatability of 0.0254 millimeters (0.001 inch) is to be measured, then the test equipment should have a resolution of at least 0.00254 millimeters (0.0001 inch). ~ Non-contact gauging (e.g. analog distance sensors, laser interferometers,proximity gauges, vision systems) is preferred over contact gauges (e.g., LVDTs, dial indicators, etc.). Contact gauges have a tendency to creep over time due to the contact forces imparted from the robot during each measurement, as well as they represent greater investment when interfaced to computers for real-time data evaluation purposes.

~ The robot mounting platform (e.g. mounting plate) should be rigid. Any shift in the mounting platform will appear as a shift in the robot. Usually this shift due to the dynamic forces is exacerbated when the robot is at full extention and carries full load. ~ Only one control parameter should be changed at a time for tests with multiple permutations. Performance parameters such as repeatability are dependent on parameters such as speed, settling time, robot temperature, payload and extension. If many of these parameters are changed at the same time then it becomes difficult to determine which parameter causes any degradation in performance. ~ The test equipment should be time and temperature stable. Many performance parameters are tested over prolonged periods of time. It is essential that the test equipment remain stable during the entire test period, thus frequent test equipmnent recalibration might be necessary. * One must be careful when testing and programming the robot, especially around singularity points thus safety rules must be followed. (One of the most important of these is that the test engineers should not be within the reach of the robot and between the robot and any other object when the robot is energized). 4. Robot Test Measurement Results The results of each type of robot tests have different forms. The most common form of data analysis technique used in industry is process statistics. Control charts show the statistical behavior of performance parameters such as repeatability by determining the average, range and standard deviation of a sample location (Ref 5). The following guidelines are generally used when evaluating process control charts: ~ A controlled process has both the average and range curves appear as random patterns between the control limits. ~ The presence of one or more points beyond the control limit is evidence of instability.

Runs (seven points in a row on one side of the average or intervals in a row that are consistently increasing or decreasing) indicate instability [Ref. 5]. The statistical formulas used for calculation of the average, range and standard deviation are given below: [Ref. 6] Average Placement of the Total Samples (X): X Where Xi = Average of the Individual Sub-Groups i = Number of Sub-Groups Average Range of the Total Samples (R): R -? Where Ri - Range of the Individual Sub-Groups i = Number of Sub-Groups Computed Trial Control Limits - Average Placement Upper Limit = X + A2R Lower Limit = X - A2R Where A2 is a constant based upon the sample size. - Range Upper Limit = D4R Where D4 is a constant based upon the sample size. NOTE: For sample sizes below seven, the lower range limit Is zero. 8

Estimate of Process Standard Deviation: Where D2 is a constant based on the sample size. Standard Deviation from Samples: (including variations from out of control points) N(AJ-C) NOTE: The resultant of the above formula is one sigma (d). To determine the conventional ~3 sigma, multiply the resultant of the above by ~3. 5. An Overview of Robot Test Methods Various robot test methods have been developed to determine the performance of industrial robots. The methods presented in this section illustrate basic principles which can be used to determine different aspects of robot performance: * The IPA method (in Stuttgart) illustrates a generalized approach to the measurement of both static positioning errors and dynamic path parameters. * The method developed at Trent Polytechnic, Nottingham and the Mark II version at the University of Michigan by the first author of this paper describes a technique for the measurement of position and orientation errors obtained during static positioning and calculated statistically as three dimensional error vectors, rather than scalar values. ~ The Ford RAACC method describes industrial techniques for the certification of industrial robots using the Selspot vision system. ~ The National Bureau of Standards (USA) method employing laser based instrumentation, and finally

* The Chesapeake Laser Systems Method using split laser beams in order to determine position errors. 6. The IPA-Stuttgart robot test method In order to measure the characteristics within the complete workspace of an industrial robot with sufficient accuracy, it is necessary to have exact coordination between the robot and the measuring equipment. The testbed must also be highly automated in order to reduce the amount of time required to determine the performance of the robot. With these requirements in mind, IPA Stuttgart (Prof. Warnecke and his research team) constructed a testbed consisting of a measuring platform and a three-dimensional measuring device. (Note that the discussion on this method in this paper is based on Ref. 7). The measuring device is movable along three sides of the measuring platform. This device allows for the measuring head to be positioned with an accuracy of 0.01 rmm within the complete workspace. An adapter unit provides the interface for mounting the measuring cube quickly to the robot's gripper. Three acceleration sensors are mounted within the measuring cube to obtain three-dimensional acceleration information. The velocity values are obtained through the integration of the acceleration values. The measuring head can be rotated about any of its three axes. Since the measuring head is of cardanic construction, orientation of the path sensor can be obtained for any position in space without changing the intersection point of the sensor's axes in relation to the measuring device. The proximity gauges also allow for three-dimensional measurement of the oscillation of the gripper's end position. (Figure 3). Potentiometers mounted at each revolute joint provide the angular position of the measuring head. This information combined with the position sensors on the measuring platform define the position of the measuring head for any point in time. Once the measuring head has been positioned, the proximity sensors provide three-dimensional displacement information of the robot under test. A computer is used to hold the measuring and the data evaluation time to a minimum [Ref. 7]. The original measuring apparatus was useful for the determination of point-to-point information but the advent of continuous path controlled robots required a different apparatus to be developed which could measure both path accuracy and path repeatability parameters. A measuring head was developed which incorporated two proximity 10

C-Achse (Harbl C-Achse A-Achsa X'Achse (Hand) AZ X-Achss Figure 3. The geometry of the test apparatus designed and applied in 1977 by IPA-Stuttgart. This pioneer work employed a co-ordinate measuring machine as an "objective, outside resource" for measuring the accuracy of the robot. 11

sensors. The measuring head was then attached to the gripper flange of the robot under test. The measuring head is held at a fixed distance from a calibrated measuring beam during programming. The distance from the measuring beam is recorded as the robot moves along the beam during programming. The robot is then run in automatic mode and a second path is recorded. The test computer then compares the two paths and displays the results. According to the designers of this test bed following a nonlinear (e.g., circular) arc is not necessary since a straight line, placed diagonal in space, requires the movement of all axes to maintain the orientation of the measuring head. This simplifies the data acquisition process considerably. Many robots displayed a strong temperature drift during initial start of the tests. To reduce the effect of the drift, the path tests were conducted after the robot was in a stabilized condition. For tests where the long term effects were of interest, the temperature drift represented the largest problem to be overcome. In some cases temperature sensors (e.g. thermocouplers) were used to indicate -the temperature stability of the robot. Tests of long duration were conducted in two phases. During the start-up phase the measurements were conducted over short cycles (approximately three minutes). After the robot had stabilized, the measurements were conducted over longer time intervals (approximately 10 minutes). Conducting the tests in this manner allowed the warm-up behavior of the robot to be adequately characterized. 7. The TEST-ROBOT Program In general, manufacturing errors associated with each joint, arm or tool together with the robot control system errors result in three dimensional robot hand position and orientation errors. The TEST-ROBOT computer program and the Mark I version of the test kit was developed by the first author at Trent Polytechnic, Nottingham in 1983-84, to measure the robot hand alignment errors and to characterize the orientation capability of industrial robots [Ref. 8]. 7.1 The Mark I Version of the TEST- ROBOT program Figures 4 to 6 show the initial (i.e. Mark I) test equipment which was used to verify the concept. (Although the test equipment uses dial indicators, non-contact displacement transducers are preferred and are currentlyinstalled at The University of Michigan as the Mark II version 12

Figure 4. The TEST-ROBOT apparatus (developed by the first author of this text at Trent Polytechnic, Nottingham in 1983-84) employs nine dial gauges and a test cube, held by the robot. The device and software are capable of providing static three dimensional pose error measurement results. (Adapted from Ref. 13).

iZ ret ng Y tSt,,9 Robot orientation error vector J First load test-cube Calculated (i.e. actual) orientation vector test-cube orientation vector Robot arm Test-cube reference point k / Test-cube position vector Y few fig 0.o ~.e Figures 5 and 6 illustrate the way the normal unit vectors are calculated and used for pose error measurement in the TEST-ROBOT program (Mark I Version, Ref. 13). 14

of this device.) The concept of this robot test method is very simple and is based on the following considerations. The true position of the robot hand (i.e., tool) can be defined by a vector F pointing to any known point of the test component in the test-rig coordinate system (a point on the test cube is often used for simplicity) and the robot hand orientation vectors defined by l1, 21' nf3 independent unit normal vectors which define the orientation of the robot hand in the test-rig coordinate system. If a sufficient number of measurements are performed, then the evaluation of a series of such measurements indicate the statistical average error of the position and orientation of the robot hand [Ref. 8 and 13]. The core of the calculation method is based on the following mathematical model: Consider Face 1 on the test-cube. (See Figure 5 again). Having measured the indicated points in the test-rig coordinatesystem, vectors P1, 1i21 and p3 can be defined from points P1, P2, and P3 on Face 1 of the test-cube. Teointoofnete L The orientation of Face 1 can be determined by calculating the normal (unit) vector (il) to the face. The P2p1 and P2p3 vectors can be defined as: P2p'P1 P2 and P2P3 P3 - P2 Both of these normal vectors lie in the plane of Face 1. A vector normal to Face 1 will be P2P3 X P2"P1 and since P2P1 (X1 x2) i + (Y1 y2) + (Z1 - 2) k and P2P3 (x3'- x2) + (Y3 - Y2) T + (z3 z2) k then P2P3 X p2P1' 15

[(Y3 - Y22) (Z('- 2) (z3 z'2)] + + [(x1 - x2)(z3 - 2) - (x3 - X2)(z1 - z2)] J + + [(x3 - X2)(Y1'Y2) - (X1 - X2)(Y3' Y2)] k For simplicity, if C1 = (Y3 - Y2)(Z1 z 2) - (Y1 Y2)(z3 z2) C2 = (x1 - 2)(z3 2) - (x3 - x2)(z1 - z2) C3 = (x3 - x2)(y1'Y2- (xl x2)(Y3 Y2) then P1P3 X 2P1 = C1ii + C2j + C3k where C1, C2 and C3 contain only sensory feedback (i.e., measured) data and are easily computed. The unit normal to Face 1 is ~t' 1 c+ + The other two unit vectors in2 and n3 can be found independently on Face 2 and Face 3, after having measured points P4, P5, P6, P7, P8 and P9, respectively. It is important to realize that by calculating and measuring any of the above three normal vectors, the robot test-rig and test-cube perpendicularity errors can also be detected.'This redundant information serves as a self-calibrating and diagnostic feature, since the test-cube is correctly manufactured and fully measured for perpendicularity before the robot alignment error measurements are performed. (Clearly this was the reason for using nine dial indicators rather than six sensors in the manually read test rig). Having found'1, n2 and'3 normal unit vectors independently, the orientation vector of the robot hand can be defined as: nI + n2 + n3 ~~'l ~~~~'2~~.3

Figure 7. The main menu of the TEST-ROBOT program (Mark I version). Figure 8. The interactive input data structure setup screen of the TEST-ROBOT program (Mark I version).. Figure 9. A sample interactive data input screen of the TEST-ROBOT program (Mark I version).

Robot= S-_ Date:___ 3:,! TEStROBfOT Input data Tbes I It ej: IAn MIC) ATA GROUP'TE' RIG DIALtNo. 1 2 3 4 S 7 a 10 p~71)~ 1z.'S l.id 2.S'J Z.S'7 2.17 2.. t.5s's 2.5o t.~~ FACE/A ~(Measuage Sp- sY $1 l q.3s $.$q 4 S7 $ % $ $.27 I.'i" vakies) Luaril P3 Z. 2iL L,.t1 L.13 Z..I 2.1 Z.90 Z.Io 2.07 L.o? L.D, Z L..7o L.7o t.b1 6.. 70 it.71 2..71 7. 71 L.71 Z.71 2.70 FACE/B (Menmsme oo - x, Mims) n S...'.$ 2. S-.- Z. $ ~ P.t t. 34 z.$tf 2.1,9 2.13 00 a"w"Iuss~) z& P3 I. 75' I.4'7 9C I.-.. vG.'-~ I.C C.?.7 I.t 14 pil 1.L? I.$ I-I 1...o I.1 1.$Z- 1.3.I. o II. 14o FACE/C (Mesur. P 2. L. 2L.73 2.2d 1 2.1 2...-. 2..I- 2.20 2.. to.14 "" values) [ kot P3. O (P O.M1 0.'I 0. 71 0.71.Oto 0.71,. 7w 0. 7 0.7 Figure 10. A typical input data sheet as measured (in metric) using the TEST-ROBOT program apparatus. (Note the hajor changes, particularly in the "Z" position, when comparing the first data group with the rest.)

Assuming that i,+1 is the subsequent position of ri, generally the relative position error (i.e. relative to the coordinate system of the test apparatus) of the robot (i.e., the position error between two subsequent test-cube loading and unloading operations) can be calculated as: The absolute position and orientation error calculation is based on and is relative to the first test-cube load position and orientation. In other words, the first load (or set) position and orientation provides the base data set(i.e., the baseline) for the repeatibility error calculations. After a sufficient number of robot loading and unloading operations are performed, a statistical analysis of the position and orientation errors can be made. During the analysis, the measured as well as the calculated data can also be displayed and/or printed using the computer program, developed by the first author of this paper, Ref. 13]. (Figures 7 to 9)... In this TEST-ROBOT program for user convenience and for experimentation, the input data table can be edited (partially or fully, i.e., for each test-cube face and/or measuring point) and the program can be re-run as many times as desired. Since the device contains nine contact gauges manual reading errors are automatically detected by the program. Several different industrial robots have been tested successfully with the described method and software. Figure 10 shows an example of some test data collected. 7.2 The Mark II version of the TEST-ROBOT program The Mark II version of this device and software, utilyzing six low cost analog non-contact sensors, capable of measuring distance as accurately as +-0.02 mm, is under installation at the University of Michigan. [Ref. 12]. Since this new device is using non-contact gauges, which are directly interfaced via an AND data logging card to an IBM/XT, there was no need for automatic error detection as with the less expensive, but more time consuming manually read contact gauges. The other difference in the Mark II version is that the roles have been changed, i.e. the robot carries the sensory based "bell", a special tool, and 19

places it above cubes layed out by the test engineer in the work area of the robot. The software has been rewritten too, and a very efficient and fast calculation method has been applied to evaluate the "three plus two plus one " distance sensor data input received from the bell and when calculating the orientation unit normal vectors. With this new device and software the robot error calculation sequence and the test method are based on the same core concept as with the Mark I version, i.e. that scalar data does not express true robot repeatibility and accuracy errors, thus vectorial representation is necessary in the form of x, y, x position vectors and n1, n2, n3 wrist orientation vectors (which are then converted into Euler angles for real-time recalibration purposes). (Figures 11 and 12). (Note that the measurement principles as well as the calculation results are currently in preparation for publication by the first author and his students and will be published soon after this paper ([Ref. 12]). To summarize, Figures 13 to 19 explain the core concept and provide a sample run of the program too. The strength of this method is that it provides static positioning repeatability and accuracy data in the form of vectors, by utilyzing a low cost device and IBM/PC based software. The benefit of this method is that it is both applicable for off-line as well as for real-time measurements (i.e. for real-time robot recalibration purposes). On the other hand one should also mention that the vision based systems, even if they are several times more expensive, provide valuable dynamic measurement results, which are often very important, in particular in the case of path accuracy tests. Let us discuss the most famous of these vision system based methods, the Ford RAAC method. 8. The Ford RAACC Robot Testing Method The Ford Motor Company devised some tests after some discrepancies were found between the actual performance and the specified performance of the robots they had purchased. A group within the Robotics and Automation Applications Consulting Center (RAACC) became responsible for the certification of all robot models which were to be purchased by the Ford Motor Company. The major premise for the development of these tests was to use comparable test equipment and test procedures on each robot to enabling the comparison of different robots. The information is then disseminated to each Ford plant to allow the application engineers to determine the best robot for the application at hand. 20

_, b/ L',3,/ Ias Figure 11. This figure illustrates the concept of the three dimensional vector (rather than scalar) repeatibility and accuracy measurement and error representation problems. As it can be seen 0b (the origin of the bell, held by the robot in the Mark 11 version design) must be defined in the world co-ordinate system only if accuracy is measured. For static repeatibility tests, errors are expressed as position and orientation vectors, relative to 0b, in the form of xi, yi, z, position and l1 i, 2.i, o3 rientation vectors. (Note that for error measurement purposes the TEST-ROBOT program uses the normal unit vectors to express orientation errors, which then are converted into O, A, T, making the data suitable for the robot controller for example for real-time recalibration, or path modification). 21

Sphere of mean distance J ~ ~ Ln (The radius of this sphere \ L3 I expresses the repeati.bility of the mean) x A Orientation Repeat ibility Ln 0 Figure 12 Explanation of the way position and orientation repeatibility is defined in the TEST-ROBOT program. (Note that for simplicity the x, y, z position vectors are indicated as Li in the position repeatibility figure, and the n1 i, n2i, n3,i unit normal vectors converted into O, A, T are shown as Li vectors in the Orientation repeatibility drawing. According to the three dimensional error representation, as introduced in the TEST-ROBOT program, the circles shown in the figure are spheres, indicating the length of the mean error vector, as the result of a statistical analysis involving all three dimensional measured data. 22

Macro Flowchart (Start l (for Pose Error Measurements. Initialization System startup (Initialize all constants and variables). Sampling specification The user defines the sampling / measuring method. Measurement (input) Read sensory input data via A/D converter, and transform it to 5 (xyzOAT). Determine errors A_error:= Measured xyzOAT - Ideal xyzOAT; for ACCURACY. R_error:= Measured length - First length; for REPEATI BILITY. Stati stical analysis Statistical analysis for ACCURACY and REPEAT I BILITY. REPEATI BILITY MAPPING loop. This is a loop for mapping repeatal.bility. The user can specify any location (xyzOAT) and the software package will estimate the repeatability based on the linear / B-spline interpolation. ACCURACY MAPPING loop. This is a loop for mapping ACCURACY. The user can specify any location (xyzOAT) and the software package will estimate the local error based on the linear / B-spline interpolation method. END Figure 13. The macro flowchart of the TEST-ROBOT program (Mark II version, Ref. 12).

-2 2 Obxyz Figure 14. The concept of calculating the!, n'-2 and n'3 normal unit vectors in the 0b co-ordinate system employing three-two-one distance measuring sensors in the device. 24

Determination of Position and Orientation (Pose) Errors Input: Output: x, y, z of i, and, 1i 2 n 3 pt~No /z xiI 2 is the sensor coordinate system on the test frame of the gripper. e vr from Solve ~' f2 =3 X? II 2 =( 1 X -V) / no.rm(T X X = n3fl Xf2 1 7 E 3- =0 Output Qand 7,,n~ Figure 15. The algorithm for determining robot pose errors with the TEST-ROBOT program (Mark II version). 25

Ob r A h _ Ideal ob i / | 0 Ideal Relative Ob iis erro.u be Vector Analysis, difference / Q Ideal Relative I Figure 16. The Vector analysis of the measured relative and the ideal relative vectors, when measuring repeatibility errors with the TEST-ROBOT program (Mark Il version). 26

PrAIA Cie'OC: O.D4' A-* —- -:,~ ~ n,, n3 *,,,,-,:- -......... Figure 17. A sample test run of the.......: mL -0.9999669 0.0033333 -0.0033333 TEST-ROBOT program (Mark II.:- -0.0033222 -0.. o999 -0.0033222 n3 - 0.0033443 -0.00331 11. 9 999U version). a.m.o.a. At cuxb 9: 1. and elssurment 9: 2e-I-.n x y z mi -0.9999722 0.0033332 0.0066665 n2 a -0.0033557 -0.9999167 -0.0033557 r3 a 0.0066552 -0.0033779 3.9999721.eee-e —-At cube 9: 1. and mesaurment 9: 3* —---- n x y zY -0.9999t722 -0.0064645 -0.0033332 n2 - 0.0064442 -0.9999559 0.0064442 n3' -0.0033774 0.0066219 0.9999724.-mm.. - At cube 9: 2, and messurarent 9: -rn.... K K nL -,1.000000 0.0000000 0.0000000 nt2 0.0000000 -1.0000000 0.00OOO00 nn3 0. 0000000 0.00o0000 1.0000000 At cube: 2. and mas: urm-nt: 2. -....., n X y 2 n* z -1.0000000 0.0000000 0.0000000 0.0000000 -.000000 0.0ooooooo000000 n3 - 0.0000000 3.0000000 1.0000000 rn...... At cube 9: 2, and assur nt: 3 —---- n x y 2 eeee eee-e-eeee-e — --- e eo o. ooooooo e. -1.0000000 3.0000000 0.0000000 n2 a 0.0000000 -1.000 000 0.0000000 n3 a 0.0000000 0.0000000 1.0000000 - -..ee. At cube: 3, and messure"nt::.. n x y 2 ai -0. 999989 0.0033333 -0.0033333 n2 a -0.0033222 -0.9999690 -0.0033222 n3 a -0.0033443 -0.0033111 0.9999669. —-.. — At cube 9: 3, and msasurment *: 2 —---- n x y z nL..-0.9999722 3.00333332 03,306665 n2 -0.0033557 -0.9999647 -0.0033557 nt3 0.3066552 -0.0033779 0.9999721.m...... At cube 9: 3, and messurment 9: 3eemm — *. -0.9999722 -0.006i665 -0.0033332 2 0 3.0066442 -0, 9999553 0.0064442 n3 -0.0033774 0.0044219 0.9999724 - - At cube: 4, and naesuinnt 9: I — n II y X n - -1.0o00000 0.0000000 0. ~*000000 n2 * 0.0000000 -1.0000000 0,.0000000 n3 * 0. 3000000 0.0000000 1.0000000 urnarne At Cub: 4, and issumrit 9: 2I.eI n -.0000000 0.0000000 0o.ooooo000000a n2 u 0.0000000 -1. 0000000 0. 0000000 it3 * 0.0000000 0.0000000 1.0000000 27 _

!rint file'O*20TZ.D' -- RAW OATA R:CFRD Cue. repto x y t anqle o anqie a angle - 1 1 7.50307?.51O01 7.53913 0.76041 -0.00471 -0.76373 3 9.42770 9.57473 9.47110 -1.09915 -0.C00743 I.:561, 2 L?7.50000 7.50000 7.50000 1.57010 0. 00000 -1.57060 2 2. 50000. 50000 6.50000 1. 7060 0.00000 -1. 7080 2 3 9.50000 9.50000 9.50000 1.57010 0.00000 -L.57CS80 3 1 7.50307 7.51011 7.53963 0.78041 -0.00471 -0.76373 3 2 1.56799 6.42480. 47t43 -0.46966 0.:0746 0.46634 3 3 9.42770 9.57471 9.47810 -1.3991S -0.00743 1.1;35l 4 1 7.50000 7.50000 7.50000 1.57060 0.00000 -1.57060 4 2 8.50000 6.50000 6.50000 1.57060 0.00000 -1.57060 4 3 9.50000 9.50000 9.50000 1.57080 0.00000 -1.57060 5 1 7.50307 t.51016 7.53963 0.78041 -0.00471 -0.78373 5 2 6.56799 6.42460 6.47143 -0.46968 0.00746 0.46634 5 3 9.42770 9.57476 9.47t10 -1.09915 -0.00743.e:051 6 1 7.50000 7.50000 7.50000 1.57060 0.00000 -1.5700O 6 2 6.50000 6.50000 6.50000 1.57080 0.:0000 -1.57060 6 3 9.50000 9.50000 9.50000 1.57060 0.O00000 -1.5700 7 1 7.50307 7.5101t 7.53963 0.76041 -0.00471 -0.76373 7 2 6.56799 6.42410 8.471.43 -0.4694 0.00746 0.46634 7 3 9. 42770 9.574786 9.4710 -1.09915 -0.00743.1 0561 fAN RLC3ORD -uD# mean x aman y mean * mean o:mean &r &d sn a:..i............e........................... 1 -0.00042 0.00325 -0.00355 -1.63361 -0.00156;.a3360 2 0.00000 0.00000 0.00000 0.00000 0.00000 o. 2:oo 3 -0.00042 0.00325 -0.00355 -1.8331 -0.0016 L.963360 4 0.00000 0.00000 0.00000 0.00000 0.00000 03. CO0 5 -0.00042 0.00325 -0.00355 -1.83361 -O.00156 L.3360 6 0.00000 0.00000 0.00000 0.00000 0.00000.:CZCO 7 -0.00042 0.00325 -0.0035 -1.83361 -0.00156 1.83360 VAPiAN RECORD (:.]ee vartn x varian y varfin: varian &o Varian a& Varian *a 0.61971 0.71351 0.62646 0.61019 0.00004 0.61579 2 0.64467 0.66667 0.66647 0.00000 0.00000 0.30000 3 0.61971 0 tt135 0.62446 0.61019 0.00004 0.61571 4 0e66467 0*64647 0 * X 1 000 0 e 0oa 006 O. ooo S 0.61971 0.71351 0.62646 0.61019 0.00004 0.61576 6 0.66467 0.66667 0.6 7 0.0000.00000.0ooooo 00oo? 3.61971 0.7.131 0.62446 0.61019 0.0004 0.6157! _ _ R --:STANOARDD E~VIATION RECORD i:;e#e sd x sed y sd sd ao & sc am so t: teemlee.me........miame.me.meemir. -ef....o 1 0.76722 0.4470 0.79149 0.79115 0.00646:.3794; 2 0.t1650 0. 1650 0.81650 0.00000 0.300000 o.:. 0 3 0.7?722 0.64470 0.79149 0.76115 0.0064 0 3.?747: 4 0.1650 0.8160 0.l1650 0.00000 0.00000.3::0 5 0.70'722 0.64470 0.79149 0.7S115 0.00641 0.784*7'. 6 0.650 0.61650 0.1650o 0.00000 0.00000 o.:0 o0 RAN Rs14rtabLl~ty length DATA RWCOIO.iN l_. —_l.....me el le__.,, _ _ _ _ _ Cub.e repeate PIlenqtC O_ienqtr mooamm imemil.emmAmDM R.merem a MIe 1 1 0.00000 0.00000 1 2 1. 471 l.76792 1 3 3.42398 2.66517 2 1 0.00000 0.00000 2 2 1.73205 0.00000 2 3 3.46410 0.00000 3 1 0.00000 0.00000 3 2 1.68471 1. 76792 3 3 3.42399 2.66517 4 1 0.00000 0.00000 4 2 1.73205 0.00000 4 3 3.46410 0.00000 S 1 0.00000 0. 00000 5 2 1. 6478 1.76t72 5 3 3. 4239 2. 6451 6 O.1 0.00000 0. 00000 2 1. 73205 0.00000 6 3 3.46410 0.00000 7 1 0.00000 0.00000 7 2 1.6647 1 ~1'7672" -- * *_- R-Ipacbl i..y RCORD'....... Cube wan P varian P utd P sea 0 vaWrin 0 sit 0 1 t70282 4.6500 2.156 1.4 2.66778 1.6935 2,l.320os 4.73205 2.17533 0.00000 0.00000 0.30000 3 1.702,,2 4.,500 2.158,6 1.470O 2.66778 1.69935 4 1.7t320 4.73205 2.1'7533 0.00000 0.00000 0.00000 S 1.70282 4.66500 2.15866 1.47770 t.66778 1.69935 6 1.73205 4.73205 2.17533 0.00000 0.00000 0.00G00o 7 1.70282 46450,0 2.5,64 1.o47770 26,6 77 1.6993 28

Firstly: rotate 0 arround z. z Z' Secondly: rotate A arround the new y. zo" y" Finally, rotate T arround the new z again. T Tx yx" X In this case where A is almost zero, Z Z and O = -T; the orientation of the axis is almost the Compare the two same as the original. coordinate systems (" and "' ). XE" Y Figure 18. The comparison between employing the Euler angles and the normal unit vectors for expressing the orientation error.

Calibration Device'Constant Distance. Test-B./,. ~ Sensors. To the AD) Converter the analog d rcalibrationbed is' df 30 the test bell. and calibratin

I' Figure 20. The Ford RAACC center robot test bed setup (Ref. 6). Figure 21. Selspot cameras track the motion of a robot to evaluate performance such as cycle, point-to-point control and continuous path control.

Following the RAACC method, the robot under test is first put through a cycling test which consists of movement of all axes from one end of motion to the other at full rated speed and payload. This first test is noninstrumented and is run continuously for 40 hours with any duty cycle limitations strictly followed. The purpose of this test is to check for infant mortality problems (e.g., under-sized fuses, bolts not properly tightened, etc.) and to get a feel for the integrity and reliability of the robot system. The first test apparatus developed by Ford consisted of a proximity sensor system for the measurement of point-to-point behavior. A test stand was constructed for placement of a test head (or nest - RAACC term) in various strategic locations within the work envelope of the robot under test. The test head consisted of three proximity sensors mounted orthogonally to each other. A target is mounted to the end of the robot and then moved into the test head along a described path. (Figures 20 and 21). The approach first taken by Ford was to measure the robot under various conditions. The result was a series of tests consisting of three basic motions (sweep, in/out, up/down) and eight permutations on the robot condition (varying payload, reach and speed). (Figure 22). One thousand continuous cycles were measured from a cold start. Then process statistics were used to determine the average placement, range, minimum reading, maximum reading, frequency distribution and standard deviation (~+3 Sigma) of the data collected. It became evident that there were too many permutations. Tests on each robot took over a month to perform resulting in a lengthy backlog at the RAACC Center. As a solution, a minimum test requirement was adopted to check the robot under worst case conditions (i.e., maximum reach, maximum speed, maximum payload) for each of the three motions and to measure only the major axes for gross positioning behavior. The term Repeatable Placement Accuracy (RPA) was coined to describe: Repeatable Placement Accuracy is defined as the envelope of variance that the tool point was positioned after repeated cycles in relation to the original taught position. 32

This should not be confused with "repeatability" which is the envelope of variance irrespective of original taught point (e.g., the range of difference between the various locations of the tool point) [Ref. 6]. Each of the test motions were designed to measure either a particular axis or groups of axes to determine their contribution to RPA. The sweep motion was designed to limit motion to the base rotation axis on robots with rotary base axes or to the first linear axis of cartesian type robots. Through experimentation it has been determined that the base axis of robots which rotate about their base usually has the most detrimental effect of RPA. For this type of robot, the base rotation axis usually has the lowest resolution (when considering the full extension of the robot) and the highest frictional loading. The sweep test fixes all other axes and moves only the first axis. This motion simulates many typical material handling applications where the robot would pick up a part from one location (e.g., from a conveyor) and place the part to another location (i.e., a pallet). The in/out motion is limited to the upper arm, forearm, and wrist axes (to maintain wrist posture) of articulated robots and to the second linear axis of cartesian robots. This motion simulates tool loading applications. Similarly, the up/down test is limited to the same upper arm, forearm and wrist axes of articulated robots and to the third linear axis of cartesian robots. This motion would simulate palletizing and part insertion activities. In addition to being capable of capturing the end points, the path of the end-effector is measured too (by means of the same vision system) as it approaches the measurement area. A strip-chart recorder is used to measure any undershoot or overshoot which may result and to determine when an output signal occurs in relation to the end point position (or more precisely, location). The effect of warm-up on RPA is also evaluated to determine the drift tendencies of the robot. This allows the user to determine if exercise programs are required in the actual applications to enable the robot to maintain the required RPA. The advent of the Robot Check system from SELSPOT Inc. allowed Ford to measure the path behavior dynamically of industrial robots being

t. —.~k;' -.. ~,4 ~. 4 *// XY Plane Horizontal Motion Perpendicular to Robot Centerline / /Z I'00X YZ Plane Vertical Motion Along the Robot Centerline I ZX Plane Vertical Motion Perpendicular to Robot Centerline Figure 22. Ford RAACC tests. Typified test planes of motion. 34

considered for purchase. Process applications (e.g., welding and sealant) require information on the ability of the robot to follow straight lines, arcs and negotiate corners. A test scheme was developed which consisted of a series of rectangles and circles positioned within three planes. Tracing each path at 10%, 50% and 100% speed allows the path accuracy versus speed behaviors to be characterized. (Figures 23 to 28). The path tests can be considered as a form of benchmark test. The goal is to determine the relative performance along a predefined path. All tests are conducted in a warm-start condition and at full payload. The rectangular and circular motions are placed in the center portion of the work envelope to allow the best performance available to be measured. One series of tests (i.e., all three planes at all three speeds) is run using precision points (i.e., aceleration/deceleration at each taught point) and another series is run by utilizing the so called fly-by intermediate points (i.e., for rough accuracy measurements). For each plane, graphs of the position of the three measured speeds are overlaid and measurements are taken to determine any degredation with the increase in speed. (Figures 24 to 27). The 10% speed run is used as a baseline from which the 50% and 100% speed runs are measured. Graphs of the velocities are evaluated to determine th performance around the taught points. Cycle times are also measured and the average velocity for the entire motion is determined. As shown in Figures 23 to 28, the results from the Ford certification tests provide the application engineer with valuable information regarding the integrity and actual performance capability of industrial robots. When properly designed, the tests can be used for the comparison and subsequent selection of a robot for a particular application. 9. Laser Based Robot Test Methods Currently under Development The approach taken for measuring performance by monitoring the spatial position of the robot places stringent demands on the measurement system. There are many types of equipment capable of measuring static behavior (e.g. analog distance sensors, proximity sensors, LVDTs, vision systems, etc.) but there are few systems available with the required resolution or the measurement of dynamic behavior. By far the largest problem for measuring dynamic properties is the ability to measure the spatial position of the robot over a large volume 35<

ROBOT DYNAMIC POSITIONING POSITION CHECK SELSPOT SYSTEMS LTD. (mm) TROY, MICHIGAN USA PAGE: DATE: 12-DEC-1986 08: 16: 23 LABEL: FORD RAACC TEST EXAMPLE: REPEATABILITY: COLD START ORIFT AXIS #2 0.m x I. y ~0.2!.,,.,,, |.. D.;!..,.......oa OqN _0_25 0.25! z 0.50 A ~ ~.... I. 0 100 0 measured).,

ROBOT BRIEF OVERVIEW POSITION CHECK SELSPOT SYSTEMS LTD. (mm) TROY, MICHIGAN USA PAGE: OATE: 12-MAR-1986 22: 29: 50 LABEL: FORD RAACC TEST EXAMPLE: 6 X 12' RECTANGLE: FLYBY MODE: OX% SPEED LABEL2 FORD RAACC TEST EXAMPLE: 6' X 12' RECTANGLE: FLYBY MODE: 50% SPEED LABEL3: FORD RAACC TEST EXATLE 6' X 12' RECTANGLE: FLYBY MODE: t00% SPEED 300 z iI 100% SPEED 50% SPEED / 10% SPEED X Figure 24. Robot path test employing the Selspot vision system. Note the degradation of the path with increasing speed - linear interpolation case. 37

ROBOT BRIEF OVERVIEVI VELOCITY CHECK SELSPOT SYSTEMS LTD. (mm/s) TROY, MICHIGAN USA PAGE: DATE: 12-MAR-1986 22: 29: 50 LABELi: FORO RAACC TEST EXAMPLE: 6' X 12" RECTANGLE: FLYBY MODE: O1% SPEED LAEL2: FORD RAACC TEST EXAMPLE: 6' X 12' RECTANGLE: FLYBY MODE: 50 SPEED LAaEL3: FORO RAACC TEST EXAMPLE 6' X 12' RECTANGLE: FLYBY MOOE: tOO SPEED 1000 ABS t \ 51%0% SPEED!. I Figure 25. (Companion graph to Figure 24). Note the plateau in velocity and the degradation of speed uniformity with increasing speed. 38

ROBOT BRIEF OVERVIEW POSITION CHECK SELSPOT SYSTEMS LTD. (mm) TROY, MICHIGAN USA PAGE: OATE: 17-APR-1986 10: 41: 31 LA8ELI: FORD RAACC TEST EXAMPLE: ~2' OIA CIRCLE: FLYBY MODE': 1iO SPEED LABEL2 FOM RAACC TEST EXAMPLE: t2' OIA CIRCLE: FLYBY MOOE: 50X SPEED LABEL3: FORD RAACC TEST EXAMPLE: 12' DIA CIRCLE: FLYBY MODE: OOXZ SPEED 480tZ 10% SPEED 50% SPEED /~ / —-*~/ \ 100% SPEED x Ui; 80,, @'''''' 2~ Figure 26. Ford RAACC path test. circular interpolation. (Note the degradation in path with increasing speed). 39

ROBOT BRIEF OVERVIEW VELOCITY CHECK SELSPOT SYSTEMS LTD. (mm/s) TROY, MICHIGAN USA PAGE: DATE: 17-APR-1986 10: 41: 31 LABELi: FORD RAACC TEST EXAMPLE: 12' OIA CIRCLE: FLYBY MODE: 10% SPEED LABEL2 FOFR RAACC TEST EXAMPLE: 12' DIA CIRCLE: FLYBY ODE: 50X SPEED LABEL3: FORD RAACC TEST EXAMPLE: 2' DIA CIRCLE: FLYBY MOOE: OO SPEED N ABS 100% SPEED to% SE50E% SPEED t 10% SPEED t ( o0 Figure 27. Ford RAACC path test, circular interpolation. (Note the plateau in velocity, indicating that the robot has reached its commanded speed, and the degradation of the plateau with increase in velocity). 40

TEST NJ EXAMPLE TEST DATE: MANLFACTUIRER SELSPOT SYSTEMS. LTD. M00EL CARTESIAN ROBOT Computed triol control li i ts X CHART -0. 200 NMJBER OF CYCLES 500 lo000 ComputQd trial control limit 0. o RANI CHR tlpper 2L.... 0 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __., _ W W. NUIJER OF CYCLES 500 10X0 HISTOGRAM OF ALL REATINGS mm FRER FICY 6-5 130 Fi9ure 28. Re~eatibilitv Drocess Statistics. Foid RMCC test.

(i.e., greater than one cubic meter) with the required resolution (i.e., better than 0.1 millimeter). Many types of technologies have been investigated to provide this resolution. For example, stereo vision systems have been used but their resolution is dependent on the field-of-view of the lenses. As the measurement volume increases, the resolution drops dramatically. Probably the most promising technology is the use of laser interferometry. Most interferometers can measure a linear distance in the range of micro-inches. The use of interferometers for CNC machine tool and coordinate measuring machine (CMM) calibration is well established. Most interferometer systems have automatic temperature and humidity compensation and their use is relatively straight forward. Traditionally interferometers have been used for uniaxial measurements only since light travels in a relatively straight line. The ability to provide three-dimensional measurement of the robot tool-point requtres the laser to track the robot as it performs its motion. Much of the work being performed in this area is in the development of an accurate tracking system [Ref. 1]. 9.1 The National Bureau of Standards' laser method A research group was formed in the National Bureau of Standards (NBS-USA) for the measurement of industrial robot performance. The basic function of this group is to devise methodologies, instruments and standard test procedures for characterizing the accuracy, repeatability and dynamic performance of robots [ Ref. 9]. The system developed by NBS uses the concept of one length and two angles for the determination of three-dimensional position. (Figure 19). In this method the idea is to continuously control the angles of projection of a laser beam in order to that the beam will impinge on the target mirror mounted to the robot wrist. The target mirror is also angularly controlled and returns the measuring beam to the source. The change in "length" of the beam is measured by interferometry and this change in "length", when combined with the angular measurements, yields the position of the robot wrist in spherical coordinates. The angular orientation of the mirror on the robot wrist can also be used for information regarding the wrist orientation. Quadrature photodiodes are used to generate the information necessary 42

to control the four angular servos (two on the tracking mirror and two on the target mirror) [ Ref.1]. (Figure 29). Using two tracking systems, one of them mounted on the robot wrist and the other one on the lasergun, it can also provide information on the wrist orientation. The angular output of the robot wrist tracking mirrors can be used to determine the angular orientation of the robot wrist. Due to the small angles involved using this technique, a very accurate angular positioning device must be developed to provide the needed overall system resolution. This system, as well as the other laser interferometer based systems currently under developemnt, require an unobstructed line of sight to the target. Since a laser interferometer determines position by counting the number of interference patters as the target is moved along the laser beam, any obstruction in the path of the light will result in a loss of counts and an error in the measurement. (Vision systems have this problem to some extent too, but most are able to recover and continue measuring when the light returns into the field-of-view.) 9.2 The Chesapeake Laser Systems Robot Test Method A system developed by Chesapeake Laser Systems is similar to the system developed by NBS but differs in the approach taken for the determination of position. A laser beam is split into three distinct beams which are aimed at a retroreflector mounted on the robot tool-point. Three interferometers are used to obtain three length measurements. A triangulation scheme is used then to determine the spatial position of the robot tool-point. The three laser beams track the target retroflector by means of rotating mirrors connected to a servo control system (Figure 30, [Ref. 10]). It should be noted that the information of the angular orientation of the tracking reflectors is unnecessary, since the three cartesian coordinates of the target may be obtained solely from the three distance measurements and the knowledge of the position of the tracking systems [Ref. 10]. Wrist orientation information could be obtained by the addition of three more length measurements (i.e. by employing three more interferometers and the associated equipment). All laser beams (as much as six) must also be unobstructed in the Chesapeake system otherwise the system 43'

Beamlipltter Target Mirror Beamiplitter 08 B Trackling MirrorD A ~ b Figure 29. The conceptual arrangement of the laser mirrors in the NBS robot laser tracking system, currently under development (Adapted from Ref. 9). SEA M REFERENCE sPLt I r~.s 1 RETROREFLECTOR LA /\ER TARGET RETROREFLECTOR.PHOTOOETECTORS REERENCEL SIGNALI Figure 30. The conceptual design of the Chasepeake Laser System's split beam laser robot checking system. (Adapted from Refs. 10 and 11). 44

will not be able to provide position information. It should be emphasized though that a sufficient access must be available for just about every type of measurement system available. Vision systems and laser tracking systems differ only that they are usually located outside the work envelope and therefore require that the robot itself must not block the line of sight to the measurement equipment. In practice this does not usually present any significant restrictions. 10. Conclusions Firstly, the purpose of this discussion was to emphasize the importance of truely three dimensional robot pose error testing when designing cells for accurate work, when using off-line robot program generators and when applying real-time error recovery and recalibration tools in precision robot cells. Secondly, we felt that it was important to orient the reader and discuss some of the different equipment and robot test methodologies which have been used and/or are currently under development for the measurement of robot performance. Finally let us emphasize that this discussion is not intended to describe all types of equipment and measurement techniques currently available for robot pose error measurements. The reader is encouraged to read other sources of robot testing techniques [Refs. 9-12]. Acknowledgements The authors of this paper express their thanks to The University of Michigan, Selspot systems, and the IEEE/ USA Society for supporting their work. References and Further Reading 1. K. Lau and R.J. Hocken: "A Survey of Current Robot Metrology Methods", Annals of the CIRP, vol. 33/2, 1984. 2. G. Arnold: Continuous-Path Testing of Aerospace Robots, RIA/SME Technical Paper MS86-195, 1986. 45

3 901n 03695 2367 3. Rouut institute of America, RIA Robotics Glossary, Robot Industries Associattion, 1984. 4. P. Albertson: Verifying Robot Performance, Robotics Today, 33-36 (October 1983). 5. Statistical Methods Office, CONTINUING PROCESS CONTROL and Process Capability Improvement, Ford Motor Company Operations Support Staffs, (February 1984). 6. Robotics and Automation Applications Consulting Center, ROBOT ASSESSMENT PROGRAM, Test Procedures, Test Equipment, Data Collection, Ford Motor Company, Engineering and Manufacturing Staff, Ford, (January 1986). 7. H.J. Warnecke, Test Stand for Industrial Robots, The 7th International Symposium on Industrial Robotics, Proceedings, October 19-21, 1977. 8. P.G. Ranky and C.Y. Ho, Robot Modelling, Control and Applications with Software, IFS (Publications) Ltd, UK, 1985. 348 p. 9. K. Lau, R. Hocken, W. Haight: An Automatic Laser Tracking Interferometer System for Robot Metrology, National Bureau of Standards, Gaithersburg, MD, 17 March 1985. 10. L.B. Brown: A Random-Path Laser Interferometer System, International Congress on Applications of Lasers and Electro-Optics, San Francisco, California, 11-14 November 1985. 11. G. Arnold, Continuous-Path Testing of Aerospace Robots, Robotic Solutions in Aerospace Manufacturing Conference, Orlando, FL, 3-5 March 1986. 12. P.G. Ranky (instr.), Tan T eik-Khui, Tani June, at all (students): Robot Position and Orientation Error Measurement with a Non-contact Sensory Based Interchangeable Hand, (Research paper in preparation), University of Michigan, Ann Arbor, USA., 1987. 13. P. G. Ranky: A Robot Test Method with Software, The Industrial Robot, 1984. 46