Determination of the Industrial Robot Positioning Performance

Position performance is one of most important parameters in terms industrial robotics and CNC machine tools. These performance criteria are changed during machine operation and therefore it is necessary to measure device parameters in regular intervals. This measurement should be as fast and easy as possible. In the case of CNC machine tools, the Renishaw Ballbar device is commonly used for such purposes. This device fits both requirements regardless it does not offer same amount of useful information for CNC machine tools and industrial robots that require special approach to measurement and data analysis which is main topic of presented article.


Introduction
Industrial robots are, in addition to features such as load capacity, shape and size of the workspace, also specified by performance criteria.These are defined in ISO 9283, which divides the performance criteria into four basic groups: position and path performances, minimum positioning time and static compliance.In the technical documentation, manufacturers of industrial robots most commonly list one-time pose repeatability (RP), which belongs to a group of position performance.[1] This standard, in addition to the definition of individual characteristics, also mentions the recommended conditions for their measurement and evaluation.In the paper [2], the authors pointed to several shortcomings of this standard, including the missing specification of the measuring device for testing individual characteristics.This gives an industrial robot user the ability to decide what measurement device to use.Papers published in this field are presenting various measuring devices in connection with the measurement of the performance characteristics, such as a dial digital indicator [3,4], laser interferometer [5,6], laser tracker [7,8], camera systems [9] and a Ballbar [10,11].
During the operation of an industrial robot, the performance criteria may change due to various factors.The article [12] mentions five factors that cause them to change.These are environmental, parametric, computational, measurement errors, and errors caused by the robot application itself.At present, industrial robots are also used in applications requiring high repeatability.These are robots with a repeatability of ± 0.02mm, used for precise manipulation or measurement operations.In such applications, it is all the more important to Corresponding author: vladimir.tlach@fstroj.uniza.skcarry out industrial robot measurements at regular intervals.This ensures the long-term monitoring of the industrial robot's condition, which can be used for planning its maintenance or maintenance shutdown.One of the requirements for such a regular measurement is its simplicity and speed.Many of the methods presented in field-specific papers represent a complex process of measurement and another problem may be the high cost of the measuring device.
In the case of CNC machine tools, a Ballbar device is used as a standard tool for measuring performance criteria.This makes possible to carry out a quick and simple measurement for calibration and evaluation of the CNC machine tool.The measurement process itself is based on a change of radius when performing circular paths (or arc portions) around a fixed point determined by the center pivot.By using the attachments, measurements can be made on radii from 50 to 600mm.The data thus obtained are further processed in Ballbar 20 software and used to calculate the total accuracy of the machine in accordance with effective international standards.[13] This paper presents a Ballbar measurement applied to the industrial robot Fanuc LR Mate 200iC.It is an industrial robot of standard design with six controlled axes, placed in the laboratory at the Department of Automation and Production Systems of the University of Žilina.
The purpose of the described measurement is to verify repeatability in positioning the robot end piece in the shortest possible time and in the simplest possible way.Repeatability is the ability of the robot to repeatedly acquire the same position of its TCP point (Tool Center Point).The measurement procedure and the software supplied with Ballbar were specially developed for use on a machine tool in which the circular motion is created by the simultaneous movement of two perpendicular linear axes, which is not possible in case of industrial robots with serial kinematics [5].For this reason, industrial robot measurement requires a special approach to measurement and data analysis, which is also the main topic of this article.For the purpose of generating circular paths, specialized software under development by the Department of Automation and Production Systems is used.

Method of measurement
Measurement was performed on a Fanuc LR Mate 200iC industrial robot in the department's laboratory.The entire measuring assembly is shown in Fig. 1, consisting of the aforementioned robot and the Renishaw Ballbar QC20-W measuring system.The robot end piece is loaded with a weight of 360g (7.2%) during the measurement.The measuring assembly is a Ballbar, a magnetic center pivot clamped on a table equipped with a magnetic dish into which the Ballbar ball fits perfectly, and a magnetic tool cup that is clamped onto the robot flange by means of an extension attachment.The magnetic dish of the center stand represents a fixed point of rotation.The measured data are transferred to the PC via the Bluetooth interface.Sensor accuracy of ± 0.5μm (reported at 20°C) and the measuring range of ± 1mm rank Ballbar among very accurate gauges [13].However, this high accuracy and limited range of measurable deviations may be a problem in measuring the industrial robot performance as the robots does not achieve the same precision as CNC machine tools and therefore this device may not be able to measure their characteristics.
The Ballbar measurement is based on the measurement of the radius deviations between the programmed and the actual radius of the circular path of the robot's end segment.In the Fanuc's programming environment, the circular path can only be created using two semicircles.During the execution of the path thus created, the TCP point of the robot stops at its end point after describing the first semicircle.It then re-starts to describe the second semicircle.A smooth path can be achieved by using the endpoint circumvention function, but in this case, the circular path is deformed to an elliptical one.The circular path made up of two semicircles is therefore inappropriate for Ballbar measurement.
Previous experiments, results of which will be published soon, was performed on a CNC machine tool with a pseudo circular path formed by 512 points connected by linear paths.Comparison of the measurement with such polygonal path and real circular path that uses circular interpolation commands, showed negligible difference similar to the deviation between two consecutive identical measurements.That's why we also chose a pseudo circular path that consists of multiple points when making measurements on the Fanuc robot.

Preparation for measurement
The first step before the measurement is to program the circular path of the given radius to apply the measurement to.Due to the above reasons, we have chosen a circular path made of multiple points.For the purpose of the experiment, a CGIR (Circular Generator for Industrial Robot) application, Fig. 2a, was created to calculate the coordinates (X and Y) of the individual points on the circle so that the resulting polygon was the most accurate approximation of the measured theoretical circle.In addition, it was used to generate the program to control the Fanuc robot.The generated program's text output is that of an ".LS" extension.If the robot's control system includes the "ASCI Program Loader (R796)" software extension, then the program can be loaded directly.Otherwise, using Fanuc-RoboGuide offline robot software, the program in that format can be converted to a ".TP" file and then loaded into the robot's control system.The center of calculated circle with coordinates {X = 0; Y = 0; Z = 0}, at the same time represents the start of the user coordinate system (UF).It is defined with respect to the World Coordinate System (WCS) -Fig.2b.This allows the same program with a measuring circle to be used in any position within the robot workspace.In our case, we have selected three measurement positions, which are changed by the UF coordinate adjustment.For measurement with the Ballbar, a circle with a radius R is required.For the measurement, this circle is replaced by a corrected circle of the radius Rc formed by the npoints.After joining these points with segments, an n -polygon represents the most precise approximation of the desired circle of radius R. Coordinates in the robot control system can be entered up to three decimal places, which is taken into account when calculating X and Y peak coordinates of the said polygon, according to the relations (1) and (2).Where αi represents the angle between the center flowline of the corrected circle Rc and the counterclockwise X -axis.This angle is determined by the relationship (3).
Where i ranges from 0 to n, n is the number of points (polygon peaks).φ is the circle's measured angle, that is, if the coordinates of the points on the whole circle are calculated, then φ = 360.
A numerical method is used to determine the radius of the corrected circle, which, based on geometric conversions, controls the deviation of the polygon from the desired circle using the following formulas.
From the coordinate points thus determined, the length of the Li line, joining the two adjacent points on the polygon, is calculated according to the relation (7).

Execution of the measurement
For the measurement, the described corrected radius of the Rc circle was used, where the circle itself was made of 512 points with a radius of 100.0026 mm, with the maximum length of the segment Lmax is 1.2281mm, selected so that the deviation from the actual circle R is as small as 0.0007mm.The corrected radius of the circle described is determined by the calculation so that the resulting polygon is the most accurate approximation of the desired circle.Based on these parameters, two control programs for the Fanuc robot were generated in the application; one for clockwise movement and the other one for the opposite direction.Both of these programs, along with the Magnetic Stand Setup program, were run in automatic mode using remote control.The latter is used in practice to run the robot's automatic cycle.This not only automates the whole process of measurement, but also brings the laboratory tests closer to the real production condition.Thanks to this, we are able to determine the total time needed for measuring -3 minutes with great precision.This is a very short time that will not significantly affect the manufacturing process of the industrial robot.On the contrary, regular testing is a way of long term monitoring the robot's condition.With sufficient data collected, it is possible to predict a change in the observed characteristics of an industrial robot and thereby plan its maintenance.This may consist of calibration of the controlled robot axes, more detailed measurements of other parameters by other methods (e.g.measurement of the individual joints' play) or other service interventions.
The measurement itself was preceded by a three-hour start-up of the industrial robot, consisting of running circular paths alternating in each of the three measured positions, which reliably mimicked the state in which the robot would be immediately found in the event of production interruption.

Measurement results
Performed laboratory tests consisted of two series of measurements.In the first one, 5 repeated measurements were made on each of the three measured positions.One of the findings is the considerable difference between the actual speed of the TCP point of the robot and the speed specified in the control program.In all five measurements, the maximum linear velocity was set for each position, which is 4000mm/s for this robot model.The average measured speed from the five measurements is 77.6mm/s for the first position, 77.5mm/s for the second and 77.9mm/s for the third measured position.The detected velocity differences can be attributed to a very short path between the points of the corrected circle Rc.At the same time, the hypothesis that the stated maximum velocity is only a theoretical speed obtained from the robot's mathematical model and from the maximum angular speeds of the individual robot joints is thereby confirmed.To achieve this high linear velocity, a long enough path would be needed, which, in our opinion, is longer than the robot's workspace allows.
At the same time, this series of measurements suggests a very good repeatability of the given robot, which confirms the results of the measurements mentioned in the article [1] and in the Master's thesis [14], where the repeatability of this industrial robot was measured using the Renishaw XL-80 laser interferometer and the digital indicator.However, the consistency of the Ballbar measurement results needs to be verified by a larger number of measurements.
The second series of measurements was performed on one of the positions (UF = {X = 500; Y = 0; Z = -179}) in order to verify the effect of the CNT parameter on the measurement results.The CNT is a part of the motion command in the robot control program, which defines MATEC Web of Conferences 137, 01004 (2017) DOI: 10.1051/matecconf/201713701004 MTeM -AMaTUC 2017 the size of the programmed bypass point.This parameter can range from 0 to 100.The CNT100 stands for the largest circumvention and vice versa when defining a motion command with CNT0, the TCP point of the robot will stop at individual points.In the first series of five repeated measurements at three different positions, the CNT value was set at 100.
Three measurements were made at CNT100, CNT50 and CNT10, with the speed parameter being the same at all three measurements (4000mm/s).Reduction in the CNT value occurred in two ways.The first is the measurement length or the time required to execute two circular paths in one direction ( ).The lower the CNT value, the more time was needed to make the one way circular path.At CNT100 it was 17 seconds, at CNT50 100 and CNT10 the path completion in one direction took 226 seconds.Fig. 3 The effect of the CNT parameter on the time required to execute two circular paths in one direction.
Changes in the CNT value further demonstrated themselves as source of significant vibrations of the robot end piece in course of its running the circular path.They have been expressed as following: the lower the CNT value, the greater the vibrations.The vibrations were evaluated subjectively, at CNT 100, they were not observed and the path run was continuous, but at CNT10, considerable vibrations at the robot's end piece could be observed.In our opinion, this phenomenon is due to the fact that the lower the point circumvention, the closer is the TCP point proximity to the programmed point, thus requiring the reduction of speed and repeated acceleration.With such a large number of points used, the rate of velocity change is very high, which results in the oscillation of the robot's end piece.This phenomenon is also facilitated by the very structure of the robot, which is that of an open kinematic chain.

Conclusion
This paper presents the measurement of positioning performance performed on the Fanuc LR Mate 200iC industrial robot using the Renishaw Ballbar QC20-W.A method was developed based on polygonal pseudo circular path, calculated to be the most accurate approximation of the circle required for Ballbar measurement.
Renishaw Ballbar is a popular measuring device for simple and very fast measuring of the working characteristics of CNC machine tools.The proposed measurement method allows this simple and quick measurement to be applied to industrial robot measurements as well.This method can be used in virtually any applications of industrial robots.At the same time, by customizing the control programs of the entire measurement cycle for the automated industrial robot.The article demonstrated the amount of time it takes to interrupt the robot's working cycle in production conditions.The time period of 3 minutes per measured position represents a negligible delay in the production process which can, on the other hand, bring financial savings in terms of industrial robot maintenance as routine testing and monitoring of the robot condition and performance allows precise maintenance planning.However, such planning requires sufficient amount of data collected regularly.This can easily prevents occurrence of collisions, malfunction of the robot, or production of defective products resulting from the deterioration of the working characteristics.
As noted in the introduction, due to high accuracy and the limited measuring range allowed by the Ballbar, it may not be possible for this device to measure the industrial robot characteristics.In our case, none of these problems occurred.Had we gotten close to the Ballbar measurable margin during the measurement, it would have been necessary to adjust the robot's control program so that the measurement could be performed.This can be achieved by subtracting the measured deviations from the radii of the individual programmed points, a suitable method for such a calculation being the decomposition of the measured profile by the Fourier transform and the reverse profile composition of the first 512 harmonics, while the amplitude of the first harmonic component should be adjusted to zero, as it represents the eccentricity, which is considered to be a measurement error and should therefore be excluded.This article was made under the support of APVV project -APVV-16-0283 Research and development of multi-criteria diagnosis of production machinery and equipment based on the implementation of artificial intelligence methods.

Fig. 2
Fig. 2 Application for calculate points on the circle (a) and position of the coordinate systems on the Fanuc LR Mate 200iC robot (b).