US-12617094-B2 - Teach pendant change position touchup visualization
Abstract
A method and system for analyzing data describing touchups to a robot's tool center point position. A robot operator performs the touchups to a robot's tool center point position when the operator notices inaccuracies in the location of operations performed by the robot—such as a spot weld in a wrong location on a workpiece—where the inaccuracies may be caused by mechanical wear in robot joints. Each operator-defined touchup changes the position and optionally orientation of a particular point in the robot's motion program. The disclosed method provides a graphical display of the history of position touchups for the robot, and analyzes the touchup data against certain criteria for the distance, direction and frequency of the touchups. When the analysis determines that any individual or combination of criteria are met, an alert is provided which indicates a possible mechanical wear issue exists with the robot and needs attention.
Inventors
- Xin Hu
- Yi Sun
- Claude Dinsmoor
- Michael Eckert
- Sean Lennon
Assignees
- FANUC AMERICA CORPORATION
Dates
- Publication Date
- 20260505
- Application Date
- 20240314
Claims (20)
- 1 . A method for robot position touchup data analysis, said method comprising: collecting touchup data for a robot, where the touchup data includes one or more touchups, each touchup being an operator-defined change to a tool center point position at a point in a motion program; displaying the touchup data, on a display device, upon request by a user; analyzing the touchup data, on a computer having a processor and memory, using an algorithm configured to determine if alert criteria have been met, where the alert criteria are defined in terms of touchup distance, direction and frequency; and sending an alert when the alert criteria have been met, where the alert includes an indication that the robot may be experiencing mechanical wear which caused the touchup data to trigger the alert, and a description of which alert criteria were met.
- 2 . The method according to claim 1 wherein each touchup is defined by an operator using a teach pendant to command the robot to move the tool center point to a new position which is saved and used henceforth for the point in the motion program.
- 3 . The method according to claim 2 wherein each touchup also includes a change to a tool center point orientation at the point in the motion program.
- 4 . The method according to claim 3 wherein each touchup changes the tool center point position and/or orientation relative to an original position and orientation of the point in the motion program, or relative to a previously-defined touchup.
- 5 . The method according to claim 1 wherein displaying the touchup data includes displaying on a three-dimensional (3D) graph a vector depicting the change to a tool center point position for one or more touchups.
- 6 . The method according to claim 5 wherein the 3D graph includes a textual display of position and orientation data about points at a head and tail of each vector.
- 7 . The method according to claim 1 wherein one of the alert criteria determines whether the touchup data includes multiple touchups to a particular point in the motion program at a frequency, defined as number of touchups per amount of time, exceeding a threshold.
- 8 . The method according to claim 1 wherein one of the alert criteria determines whether the touchup data includes multiple touchups to a particular point in the motion program in a common direction, where the common direction is defined as an angle out of parallel for the multiple touchups being below a threshold.
- 9 . The method according to claim 1 wherein one of the alert criteria determines whether the touchup data includes touchups to multiple points in the motion program in a common direction, where the common direction is defined as an angle out of parallel for the touchups being below a threshold.
- 10 . The method according to claim 1 wherein sending an alert includes providing an audible or visual indication on a controller of the robot, or sending an email or text message or push notification to the user or a robot operator.
- 11 . The method according to claim 1 wherein the touchup data is collected and analyzed for a plurality of robots by a site data collection device at a same site as the robots or by a cloud server at another location, and the alert criteria are configurable for each model of robot and motion program being run.
- 12 . A method for robot position touchup data analysis, said method comprising: collecting touchup data for a plurality of robots, on a data collection device in communication with a controller of each of the robots, where the touchup data includes a plurality of touchups, each touchup being an operator-defined change to a tool center point position at a point in a motion program for one of the robots; displaying the touchup data, on a display device, upon request by a user, including displaying a vector depicting one or more of the touchups on a three-dimensional (3D) graph; analyzing the touchup data, on the data collection device, using an algorithm configured to determine if alert criteria have been met, where the alert criteria are defined in terms of touchup distance, direction and frequency of the touchups on individual robots; and sending an alert when the alert criteria have been met, where the alert lists which robot is affected and includes an indication that the affected robot may be experiencing mechanical wear which caused the touchup data to trigger the alert, and a description of which alert criteria were met.
- 13 . The method according to claim 12 wherein one of the alert criteria determines whether the touchup data includes multiple touchups to a particular point in the motion program at a frequency, defined as number of touchups per amount of time, exceeding a threshold, and one of the alert criteria determines whether the touchup data includes touchups to one point or multiple points in the motion program in a common direction, where the common direction is defined as an angle out of parallel for the touchups being below a threshold.
- 14 . A system for robot position touchup data analysis, said system comprising: a plurality of robots and robot controllers; and a computer having a processor and memory and in communication with the robot controllers, said computer being configured for: collecting touchup data for the robots, where the touchup data includes one or more touchups, each touchup being an operator-defined change to a tool center point position at a point in a motion program for one of the robots; displaying the touchup data, on a display device, upon request by a user; analyzing the touchup data to determine if alert criteria have been met, where the alert criteria are defined in terms of touchup distance, direction and frequency of the touchups on individual robots; and sending an alert when the alert criteria have been met, where the alert includes an indication that the affected robot may be experiencing mechanical wear which caused the touchup data to trigger the alert, and a description of which alert criteria were met.
- 15 . The system according to claim 14 wherein each touchup is defined by an operator using a teach pendant to command one of the robots to move the tool center point to a new position which is saved and used henceforth by the one robot for the point in the motion program.
- 16 . The system according to claim 15 wherein each touchup changes the tool center point position and/or a tool center point orientation relative to an original position and orientation of the point in the motion program, or relative to a previously-defined touchup.
- 17 . The system according to claim 14 wherein displaying the touchup data includes displaying on a three-dimensional (3D) graph a vector depicting the change to a tool center point position for one or more touchups, and where the 3D graph includes a textual display of position and orientation data about points at a head and tail of each vector.
- 18 . The system according to claim 14 wherein one of the alert criteria determines whether the touchup data includes multiple touchups to a particular point in the motion program for an individual robot at a frequency, defined as number of touchups per amount of time, exceeding a threshold.
- 19 . The system according to claim 14 wherein one of the alert criteria determines whether the touchup data includes touchups to a particular point or multiple points in the motion program for an individual robot in a common direction, where the common direction is defined as an angle out of parallel for the touchups being below a threshold.
- 20 . The system according to claim 14 wherein sending an alert includes providing an audible or visual indication on the controller of an affected robot, or sending an email or text message or push notification to the user or a robot operator.
Description
BACKGROUND Field The present disclosure relates generally to the field of industrial robot operational diagnosis and, more particularly, to a method and system for analyzing data defining operator-performed touchups to tool center point position, providing a graphical display of the position touchups, and providing an alert to the operator when the distance, direction and/or frequency of touchups on a particular robot meet criteria which indicate a possible maintenance issue with the robot. Discussion of the Related Art The use of industrial robots to perform a wide range of manufacturing, assembly and material movement operations is well known. Many of these operations and tasks are performed by articulated robots, such as five- or six-axis robots with a servo motor at each rotational joint. Control of such robots is provided in real time, where an end tool motion program is divided into small increments of motion, and a robot controller performs the real-time feedback control calculations to compute joint motor input commands which move the robot end tool according to the prescribed motion program. Kinematic and inverse kinematic (IK) calculations are used to accurately determine the position of a tool center point (TCP) in a workcell coordinate frame based on joint angular positions, and vice versa. However, over time, wear may occur in the robot, such as in joint bearings, creating mechanical looseness which causes the tool center point position to be different than that predicted by the kinematic calculations, depending on load conditions in the robot. When this occurs, a robot operator will notice that certain operations (such as a spot weld) are not being performed at the proper spatial location (such as a point on a workpiece). When a discrepancy in the spatial location of an operation is detected, the operator has the ability to perform a “touchup” to one or more points in the motion program for a particular robot. For example, a touchup may be defined which adjusts the location of a certain point in the motion program by operator-defined distances in the X, Y and Z directions. Adjustments may also be made to yaw, pitch and roll angles of the tool. Several robots may be performing the same operation on the same type of workpiece, using the same motion program. However, because the wear conditions are robot-specific, the operator-defined touchups to tool center point position are also unique to each robot. As wear conditions in the joint(s) of a robot continue to get worse, the need for tool center point touchups may grow more frequent, and/or the magnitude of the touchups may grow larger. Multiple touchups may also be performed which each move the tool center point position incrementally further in the same direction. However, an operator may not recognize these trends, because the operator is responsible for many robots, and certainly cannot be expected to remember and detect particular trends among touchups on each individual robot. Furthermore, until now, there has been no automated way of visualizing and analyzing tool center point touchup data to determine if a deterioration trend has developed. In light of the circumstances described above, there is a need for an improved method of analyzing tool center point position touchup data to determine if maintenance or other action is necessary. SUMMARY The present disclosure describes a method and system for analyzing data describing touchups to a robot's tool center point position. A robot operator may perform the touchups to a robot's tool center point position when the operator notices inaccuracies in the location of operations performed by the robot—such as a spot weld in a wrong location on a workpiece, or a gripper attempting to grasp a workpiece at a wrong location—where the inaccuracies may be caused by mechanical wear in robot joints. Each operator-defined touchup changes the position and orientation of a particular point in the robot's motion program. The disclosed method provides a graphical display of the history of position touchups for the robot, and analyzes the touchup data against certain criteria for the distance, direction and frequency of the touchups. When the analysis determines that any individual or combination of criteria are met, an alert is provided which indicates a possible mechanical wear issue exists with the robot and needs attention. Additional features of the presently disclosed systems and methods will become apparent from the following description and appended claims, taken in conjunction with the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is an illustration of an industrial robot depicting how a joint bearing experiencing mechanical wear can cause a robot tilt which leads to positional inaccuracies in a robot tool; FIG. 2 is a three dimensional graph which illustrates a robot tool center point position touchup as performed by a robot operator, according to an embodiment of the present disclos