Method and control device for optimising the actual accuracy of a machine having a plurality of axles

By employing a kinematic and dynamic model to determine compensation signals, the method and control device enhance the accuracy of multi-axis machines by compensating for drivetrain deviations, achieving precise target execution and reducing vibrations.

WO2025199560A1PCT designated stage Publication Date: 2025-10-02KEBA IND AUTOMATION GMBH
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/AT2025/060139
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-03-28
Filing Date
2025-03-26
Publication Date
2025-10-02

AI Technical Summary

Technical Problem

Existing methods for controlling multi-axis machines, such as industrial robots, fail to adequately compensate for deviations caused by drivetrain characteristics like gear design, leading to inaccuracies in path movements due to resonant frequencies, which conventional filtering cannot address effectively.

Method used

A method and control device that utilize a kinematic and dynamic model of the machine to computationally determine parameters or signals for compensating actual deviations, incorporating a dynamic model that accounts for temporal behavior and vibrations, allowing for precise execution of target specifications by inverting the dynamic behavior of the machine.

Benefits of technology

This approach significantly reduces actual deviations, enabling machines to follow target trajectories with high accuracy, minimizing vibrations and jerking movements, and improving overall precision by a factor of more than 10 times compared to conventional controls.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure AT2025060139_02102025_PF_FP_ABST
    Figure AT2025060139_02102025_PF_FP_ABST
Patent Text Reader

Abstract

The invention relates to a method and a control device (3) for optimising the actual accuracy of a machine (1) having a plurality of axles (2), for example an industrial robot. The axles (2) of the machine (1) are controlled by at least one electronic control device (3) in such a way that a predetermined target specification (4) can be executed or followed with small or negligible actual deviations (5). The method comprises the following steps: - determining a kinematic model of said machine (1), which kinematic model takes into account at least the geometry of the machine, - determining a dynamic model of said machine (1), which dynamic model takes into account at least one temporally correlated movement behaviour of the machine (1), in particular takes into account a vibration behaviour of the machine (1), - computationally determining parameters or signals in order to at least partially compensate for actual deviations (5) of said machine (1) with respect to a predetermined target specification (4), in particular with respect to a predetermined target movement path or with respect to a predetermined point on an end effector (10) or tool of an industrial robot, wherein at least parts of the kinematic model and at least parts of the dynamic model are used, - controlling the multi-axle machine (1) using the computationally determined parameters or signals in order to at least partially compensate for actual deviations (5) with respect to the predetermined target specification (4).
Need to check novelty before this filing date? Find Prior Art

Description

[0001] METHOD AND CONTROL DEVICE FOR OPTIMIZING THE ACTUAL ACCURACY OF A MULTI-AXIS MACHINE

[0002] The invention relates to a method for optimizing the actual accuracy of a multi-axis machine, in particular an industrial robot, and to a control device for optimizing the actual accuracy of a multi-axis machine. The axes of the machine, in particular their actuators, are controlled by at least one electronic control device such that a predetermined target specification leads to reduced or negligibly small actual deviations, for example, a target trajectory can be followed with reduced path deviations.

[0003] US20220314450A1 describes a method for controlling a robot having a base, a robot arm coupled to the base, and a drive unit with a motor for driving the robot arm. The method comprises a first step of acquiring target position information about a target position when the robot arm is moved; a second step of determining a frequency component to be removed from a drive signal for driving the motor based on a posture of the robot arm at the target position of the acquired target position information; and a third step of removing the frequency component determined in the second step from the drive signal to generate a corrected drive signal. This method is intended to reduce mechanical oscillations or vibrations of the robot arm resulting from the robot arm stopping upon reaching the target position.

[0004] EPI 132790B1 discloses a control device for a machine having an electric motor as the drive source of the machine. This control device comprises a natural frequency determining means for determining a frequency or cycle of a natural vibration of the machine and / or an auxiliary device attached to the machine as a controlled system. Furthermore, the control device comprises a movement command generating means for generating a movement command for the electric motor such that the natural vibration of the machine and / or the auxiliary device is suppressed in accordance with the frequency or cycle of the natural vibration determined by the natural frequency determining means. The natural frequency determining means comprises a frequency analyzer for analyzing a vibration frequency of a control signal for the electric motor to determine the frequency or cycle of the natural vibration.The motion command generation means has a filter for reducing the amplitude of the natural vibration. Furthermore, the motion command generation means automatically changes a coefficient of the filter in accordance with the frequency or cycle of the natural vibration, which is determined by the frequency analyzer. In this known system, the vibrations of the end effector or workpiece, whether stationary or stopped at the target position, are recorded using a laser measuring device. Such filter-based vibration suppression is only partially satisfactory; in particular, the filter is provided in the control system of the drive controller and suppresses signals in the moment. While such a filter enables the removal of unwanted signals, such as vibrations in the moment, it does not, in itself, ensure that the actual accuracy, for example of the position or speed, meets the desired requirements.

[0005] In applications that place the highest demands on actual accuracy, drivetrain characteristics, particularly deviations from linear transmission behavior (or a constant transmission ratio) and elasticity, are primarily responsible for the deviations. These arise from the design of gears or timing belts and generate specific deviation patterns for each path movement. These deviations cannot be compensated for by the filtering described so far, since the signals to be compensated often lie in the range of the resonant frequencies of the mechanical system. Filtering the oscillation frequencies eliminates the possibility of specific influence and compensation.

[0006] The object of the present invention was to overcome the disadvantages of the prior art and to provide a machine with several axes, in particular an industrial robot, which machine or industrial robot offers improved actual accuracy, e.g. with regard to axis movements or other target specifications.

[0007] This object is achieved by a method and a control device according to the claims.

[0008] The method according to the invention is designed to optimize the actual accuracy of a machine with multiple axes, in particular an industrial robot. High actual accuracy is to be understood as a small deviation between the theoretically desired target profile and the practically achievable actual profile, e.g., a robot path. In the context of the invention, actual accuracy is primarily understood to mean the movement accuracy, i.e., the temporal progression of the position accuracy of the machine. However, the invention can also be applied, for example, to speed, force, pressure, or torque, or their positioning or stopping accuracy. For example, if speed accuracy or force accuracy is required, the use of a suitable measuring system can be expedient in order to achieve the necessary steps to achieve an improvement in the actual accuracy. Furthermore, it should be mentioned that, for example,When a force is required to be as precise as possible, both the absolute magnitude and the direction can play a role. The modifications required to apply the invention to these magnitudes are within the skill of a person skilled in the art, based on the teachings of technical practice. The axes of this multi-axis machine are controlled by at least one electronic control device in such a way that a predetermined target position is typically executed by the so-called TCP (tool center point) or end effector of the machine, or can be executed, with the smallest or negligible actual deviations. The most accurate target trajectory path possible is particularly useful for two- or three-dimensional trajectories. This applies above all to machines with coupled axes.

[0009] This optimization process includes the following steps:

[0010] - Determining a kinematic model of the machine to be optimized, which kinematic model takes into account at least its geometry,

[0011] - Determining a dynamic model of the machine to be optimized, which dynamic model takes into account at least one temporal behavior, in particular a temporally correlated movement behavior, namely a dynamic movement behavior of the machine, in particular a delayed behavior and / or vibration behavior of the machine during the execution of movements,

[0012] - computationally determining parameters or signals for at least partially compensating actual deviations or positioning deviations of this machine with respect to the predetermined target specification, in particular with respect to a predetermined point on an end effector or tool of an industrial robot, wherein both at least parts of the kinematic model and at least parts of the dynamic model are used,

[0013] - Controlling the multi-axis machine using the computationally determined parameters or signals to at least partially compensate for actual deviations with respect to the predetermined target value.

[0014] In the context of the invention, a "kinematic model of the machine" is understood to mean an at least partially descriptive, data-based simulation of the geometry or kinematics of the machine. The term "dynamic model of the machine" is understood to mean an at least partially descriptive, data-based simulation of the dynamic behavior, in particular the movement behavior of the machine.

[0015] To determine the dynamic model of the machine, an additional measuring device may be included, which is designed to measure data on the dynamic positioning and movement behavior of this machine.

[0016] The measures according to the invention enable a predetermined target specification to be achieved quickly and immediately with a high degree of accuracy, i.e. without numerous and therefore lengthy iteration steps. Above all, only a minimal amount of manual work and monitoring is required by the machine operator or commissioning technician, as the dynamic model can usually be incorporated at least partially automatically. A particular advantage is that the ultimately occurring dynamic movement behavior of the machine is already incorporated in advance or initially into the determination of parameters or signals for at least partially compensating for actual deviations, thus preventing vibration-related actual deviations of the machine. In particular, inertia, in particular mass moments of inertia of the axes, finite accuracies and resolutions of the actuators for the axes, frequency-dependent influences orVibrations in the actuators for the axes, deviations in the transmission behavior of the drive trains, temperature influences or temperature changes, and the like, influence the dynamic movement behavior of the machine and thus the ultimately occurring actual deviations of the machine. The measures according to the invention make it possible (e.g. in the case of movement accuracy) to reach the target point or the successive target points in space as planned, without, for example, the TCP of the machine oscillating compared to the planned path during its movements in space, in particular without under- or over-steering with regard to the target movement and thus deviating. Many movements of a machine with active, controllable actuators involve vibrations or minimal jerking movements; for example, due to natural vibrations, positive feedback or frequency superposition of coupled components of the machine.The measures according to the invention compensate for disturbing frequencies occurring during the execution of the movement (amplified or reduced and phase-shifted) and thus optimize the actual accuracy of the machine during the implementation of the target specification.

[0017] In particular, it may be expedient if, in the step of computationally determining parameters or signals for at least partially compensating actual deviations, the calculation is carried out in such a way that the dynamic behavior or vibration behavior of at least one axis or of a drive train of the machine is inverted, in particular according to the principle of inverting the movement of at least one axis of the machine. In particular, an inversion of the kinematics can be used to calculate the compensation parameters, particularly taking into account the dynamic behavior of the machine. For example, a signal can be calculated back from the detected deviation and an inverse kinematics, with which the deviation can be compensated.

[0018] The vibration behavior at certain points can be determined, for example, by measuring the impulse response. This vibration behavior is saved, for example, as a position-dependent, linearized dynamic model. The dynamic model can exhibit dependencies on other parameters. In the case of robots, these are typically dependencies on corresponding axis positions. However, the dynamic model can also exhibit other dependencies, e.g. environmental influences such as temperature or humidity, influences of operating modes, etc. In the case of a pick-and-place robot, it can be expected that the dynamic model will also depend on the weight or orientation of the object that the robot is currently moving. The dynamic model can, for example, be linearized and then incorporated into the robot control system, at least in a position-dependent manner.

[0019] For compensation, it is important to understand the transfer behavior from the compensation input to the behavior of the overall system. This includes not only the mechanical behavior but also the dynamic behavior of the drive controller and influences that occur during movement (e.g., friction, particularly sliding friction at the respective speeds). It is advantageous if the dynamic model is defined in such a way that it is created during the execution of a target specification, whereby this target specification should be as similar as possible to the later desired target specification. In this way, the dynamic model can describe the aforementioned influences (e.g., elasticity of gears and / or damping due to sliding friction) as precisely as possible.

[0020] This overall behavior can be determined using control-engineered stimulation techniques. This can be done, for example, by introducing suitable additional excitations at the input (e.g., jumps or spikes) and measuring the response at the output. After the subsequent mathematical modeling of the dynamic model, it is available for the next steps.

[0021] The linearized dynamic model can be represented as a mathematical discrete-time transfer function, as is known from discrete-time modeling of dynamic systems using difference equations. This representation allows for a simple inversion of the transfer behavior.

[0022] When the robot follows a path, the controller sends a target signal to the drives. By measuring the actual position, e.g., the TCP, deviations between the target position (derived from the purely kinematic model) and the actual position (derived, for example, from a measurement) can be determined. This deviation arises, for example, from elasticity, friction, particularly speed-dependent friction, damping, and other factors not considered in the kinematic model. This deviation is subsequently used to calculate parameters or signals to at least partially compensate for actual deviations.

[0023] These parameters or signals can be calculated by applying an inverse axis transformation to the deviation. This could, for example, result in a signal that causes the deviation. Under otherwise identical conditions, this signal alone should lead to the same deviation in reality. If this signal is given a negative sign, it can be used as a compensation signal by adding it to the setpoint signal sent to the drives. The setpoint signal, including the compensation signal, should then result in a deviation of zero.

[0024] This approach offers several advantages: Simple filters can be used to avoid vibrations caused by the planned motion patterns. By incorporating the dynamic model and its inversion, vibrations caused by the mechanical components (e.g., the gearbox) can be avoided. For this purpose, the dynamic model can be used to add a compensating signal to the setpoint curves, which effectively reduces actual deviations even at higher frequencies. This extends the effective range of compensation signals to higher frequencies.

[0025] The use of a compensation signal goes beyond the effect of a filter, since not only are certain frequencies suppressed, but the target setting is actively intervened in and certain frequencies can also be amplified if necessary.

[0026] The calculation of the compensation signal is not only suitable for quasi-static applications (e.g., positioning at a point would be considered quasi-static), as the dynamics (e.g., acceleration) are also taken into account. The calculation of the parameters or signals for at least partial compensation is therefore carried out taking the dynamics (inertia, acceleration, elasticity, and damping) into account.

[0027] The dynamic model can be determined in advance and can be retrieved at any time during subsequent operation of the machine.

[0028] The dynamic system can be determined with a predetermined accuracy. The more accurately the dynamic model of the system is determined, the greater the possibility of influencing the system, and the higher the frequency components that can be used for compensation.

[0029] The dynamic model can also be transferred to other machines of the same design. However, it should be noted that deviations may creep into the dynamic model. For example, the dynamic behavior of the gearbox may differ from machine to machine. Therefore, transfers of the dynamic model should be carried out with caution.

[0030] Accordingly, according to an expedient measure, the computational determination of parameters or signals for at least partial compensation of actual deviations can be based on the principle of an inverse transfer function. This technical measure can be practically implemented using a digital control device, so that optimized actual accuracy can be achieved reliably and functionally. In particular, a compensation can also be calculated that changes the target specification used as an input for the drive controller. In particular, such a setup can be achieved by using a feedforward control, whereby the feedforward control takes the dynamic model into account and specifies the compensation signal for the drive controller as the output variable.In particular, specifying the position or speed as a control signal proves to be advantageous here, since the dynamic model models, among other things, accelerations, which have a particular impact on position or speed specifications.

[0031] Furthermore, greater accuracy can be achieved this way without making changes to the drive controller. This is also advantageous because drive controllers typically do not offer the option of changing their configuration during operation. Intervention on the control side thus enables compensation for any drive or motor.

[0032] The control of the machine using the computationally determined parameters or signals for at least partial compensation of actual deviations can be used for at least one of the axes of the machine.

[0033] Alternatively, or in combination with the measures described above, the parameters or signals for at least partially compensating for actual deviations can be determined in such a way that control signals or actuating signals for drives of machine axes eliminate or minimize undesired deviations in the machine's drive train. In particular, the electronic control device can be configured to generate control signals or actuating signals for the drives of machine axes in such a way that undesired deviations, e.g., vibrations, of at least one axis of the machine are eliminated or minimized, thereby eliminating or minimizing actual deviations of the machine with respect to the predetermined target value.

[0034] According to an advantageous embodiment, it can be provided that the dynamic model is determined by measurements using a measuring device, in particular by measuring the position changes, speed, force, pressure or torque ratios with respect to at least one predetermined point of the machine, or by measuring actual deviations with respect to at least one predetermined point of the machine, for example its TCP, with respect to the three-dimensional space.

[0035] In particular, it can be provided that the kinematic model for axis transformations is used to computationally determine idealized or theoretical target specifications or target positions of the machine, particularly taking the geometry of the machine into account, and the dynamic model is used to explain the deviations from these idealized or theoretical target specifications or target positions that occur. Accordingly, the dynamic model of the machine takes into account the dynamic motion behavior of the machine, which dynamic motion behavior depends on the positions of the machine's axes or on the various poses of the machine.

[0036] Another advantageous feature is a configuration in which several different spatial positions or several different kinematic overhangs or overhang widths of a predetermined point on a machine tool, another working point of the machine, a TCP, or a machine end effector are taken into account in the dynamic model. This allows extensive workspaces and / or configurations to be represented in the dynamic model, allowing a new trajectory to be implemented quickly and with high precision within these workspaces.

[0037] According to a further development, it is possible to determine the dynamic model with respect to different spatial positions or kinematic extensions of the machine, which particularly include areas of a workspace in which movements are to be performed with high precision. Spatially distributed or grid-like measuring points are used, in particular, in relation to axis positions or coordinate systems. This also allows for the rapid programming of a modified trajectory and its highly precise execution.

[0038] Furthermore, it can be expedient if the dynamic model is determined with respect to a subset of spatial positions of the machine in such a way that it is derived from previously determined dynamic models in spatial proximity, in particular by interpolation or extrapolation. On the one hand, the dynamic model can be subsequently refined more finely by interpolation. On the other hand, it can be enlarged by extrapolation. Furthermore, starting from an initial trajectory for which a dynamic model has already been recorded, the trajectory can be modified step by step by small shifts in specified directions. For example, changes in the height direction and / or a lateral offset or extension of trajectories can be used to quickly achieve new, precisely implementable trajectories.

[0039] Furthermore, it can be advantageous if the dynamic model is determined with respect to the progress of a movement to be executed. This can ensure that the dynamic model can be determined quickly. This can be particularly helpful when optimizing for an application that requires only one fixed movement that is not subject to change.

[0040] According to an advantageous embodiment, the machine is a multi-axis industrial robot comprising a plurality of independently positionable, yet mechanically coupled, axes, such that a positioning error of a first axis affects the positioning of serially connected, mechanically coupled axes. The specified method also allows for effective compensation of the cumulative positioning errors in such a multiply coupled drive train.

[0041] According to a further advantageous embodiment, the computationally determined parameters or signals for at least partial compensation of actual deviations can be used to significantly increase the actual accuracy when repeating or running through the same target specification. Compensation with the parameters or signals for at least partial compensation of path deviations is particularly effective here, since the machine can use compensation signals that were calculated specifically for this target specification.

[0042] Furthermore, it can be provided that the at least one control device comprises an iteratively learning control component which is designed such that

[0043] - the predetermined target specification is executed in one run using the computationally determined parameters or signals for at least partial compensation of actual deviations from the machine, and during this time any actual deviations that still occur are determined, which can be done for example by means of a measuring device arranged externally to the machine or by means of robot-side sensors, for example by means of sensors attached to the end effector or at other points on the robot arm, and wherein a) these actual deviations that still occur are used to further improve the said parameters or signals for at least partial compensation of actual deviations, and wherein b) these further improved parameters or signals for at least partial compensation of actual deviations are used in a further run in order to execute the predetermined target specification from the machine again.This is especially true when executing or running through the same target specification repeatedly. In this way, actual deviations can be achieved that are particularly small, for example more than 10 times smaller than would be the case with conventional controls. Typically, actual accuracy can be improved by a factor of more than 10. The actual extent of the improvement depends heavily on the application and the design of the machine's mechanics. Typically, an iteratively learning control component works particularly well with less elastic mechanics. With elastic mechanics, however, an iteratively learning control system can tend to produce problematic oscillations, which can be brought under control by using the dynamic model.

[0044] According to a further variant, it is possible to repeat the above-mentioned steps a) and b) at least once. Through these step-by-step evaluations and improvements, the achievable actual accuracy can be successively increased.

[0045] According to an advantageous further development, it can be provided that only a subset of the machine's axes are modeled in the dynamic model, in particular, only those axes are modeled that have the largest moments of inertia or the lowest stiffness or the greatest influence on the resulting movement. This allows a high actual accuracy to be achieved in an efficient manner.

[0046] In particular, it can be advantageous if the compensation of actual deviations from the predetermined target specification takes place in such a way that the at least one parameter or the at least one signal for at least partial compensation of actual deviations, in particular a compensation signal or a compensation value, is added to a base signal calculated from the kinematic model for an axis to be controlled or to base signals for several axes to be controlled, thereby causing actual deviations from the target specification to be at least reduced. This can improve the control behavior, whereby suitable compensation of disturbances is possible and stability problems are prevented. This variant is particularly advantageous if the dynamic model is sufficiently accurate to compensate for stability problems with sufficient precision.

[0047] Furthermore, it can be provided that the at least one control device or the iteratively learning control component is configured to influence or optimize only those sections of the predetermined target specification that were previously defined or for which actual deviations exceed a predetermined limit value when determining further improved parameters or signals. This allows for a focus on specific path sections of a technical process that should be particularly precise. This can result in savings in resources or time.

[0048] Furthermore, it can be provided that repeated traversing of sections of the target specification is limited to those sections of the target specification where the radius of a predetermined point or operating point of the machine relative to a base of the machine exceeds a predetermined radius limit. In these zones, actual deviations are generally relatively large. The specified measures enable a rapid and particularly useful determination of the parameters or signals for compensating for actual deviations.

[0049] A particularly advantageous embodiment is one in which a position measurement system, such as a laser measurement system, is used to determine the dynamic model and / or the actual deviations. This system enables dynamic measurement of the respective spatial positions of moving sections of the machine. This allows for precise position detection even with respect to moving points or sections of the machine.

[0050] According to an advantageous development, the position measuring system can comprise at least one laser tracker arranged at a distance from the machine. This allows the actual position of relevant points or sections of the machine to be determined with high precision in relation to three-dimensional spaces, compared to sensors on servo drives of the machine. Furthermore, it can be expedient for the position measuring system to comprise at least one inertial sensor connected to the machine at at least one segment. This can also enable practical position detection, while potentially interfering contours in the machine's working area are largely avoided. Furthermore, this can simplify the construction and commissioning of the automation system comprising the machine.

[0051] Furthermore, it can be provided that measured values ​​from the position measuring system are transmitted to the at least one electronic control device of the machine in real time, in particular synchronously with the control cycle of the control device. This makes it possible to set up a control circuit or a monitoring loop, whereby any positioning deviations can be responded to as quickly as possible. Furthermore, it can be ensured that measured values ​​can be processed in the control system at equidistant time intervals. This prevents the loss of measured values ​​or the miscalculation of the same measured value in different control cycles. Compensation can thus also be determined for each point in time in a signal curve. This allows compensation for dynamic effects to be achieved.

[0052] Furthermore, it can be provided that the iteratively learning control component is an integral part of the electronic control device of the machine, so that in particular synchronicity and real-time behavior of such a control system are inherently fulfilled.

[0053] The object underlying the invention is also achieved by an electronic control device for optimizing the actual accuracy of a machine with multiple axes with respect to traversing a predetermined target specification. This machine can be formed, in particular, by an industrial robot. The at least one centrally, decentrally, or distributed control device is adapted or configured to

[0054] - Using a kinematic model of this machine, which kinematic model takes into account at least its geometry,

[0055] - Using a dynamic model of this machine, which takes into account at least one temporally correlated, i.e. dynamic, movement behavior of the machine, wherein, for determining the dynamic model of this machine, a measuring device is included or comprised, which is designed to measure data on the dynamic positioning and movement behavior of this machine,

[0056] - computationally determining parameters or signals for at least partially compensating actual deviations or positioning deviations of this machine with respect to the predetermined target specification, in particular with respect to a predetermined point on an end effector or tool of an industrial robot, wherein both at least parts of the kinematic model and at least parts of the dynamic model are used,

[0057] - Controlling the multi-axis machine using the computationally determined parameters or signals to at least partially compensate for actual deviations with respect to the predetermined target value.

[0058] The advantageous effects and effects that can be achieved with such a control device can be found in the above description parts.

[0059] According to an advantageous embodiment, the control device can comprise a first or standard control component configured to control the axes of the machine, and a further, iteratively learning control component configured to determine parameters or signals for at least partially compensating for actual deviations or positioning deviations. This iteratively learning control component can be coupled to the first control component via data technology. This makes it possible to efficiently improve existing automation systems with regard to the achievable movement or actual accuracy.

[0060] In particular, it may be advantageous if the electronic control device of the machine is designed to implement or execute at least individual steps of the method described above.

[0061] The object of the invention is further achieved by a machine with a plurality of controllable axes for carrying out actuating movements, in particular by an industrial robot, said machine comprising an electronic control device for controlling the axes, which control device is designed according to the relevant claims.

[0062] The separation of the kinematic model and the dynamic model proves to be a particular advantage here. According to the state of the art, the kinematic model is typically used, which achieves significantly increased positioning accuracy through calibration (target-actual comparison). A dynamic model is not usually used to control a machine, as it cannot be readily provided. This advantageous use is also practical, particularly by measuring the dynamic model according to the method described above.

[0063] This is especially true for multi-axis machines with coupled axes, as the dynamic model varies significantly depending on the axis position. The possibility of compensation using feedforward control, and especially its combination with a learning control system, proves particularly advantageous here.

[0064] For a better understanding of the invention, it is explained in more detail using the following figures.

[0065] They show in a highly simplified, schematic representation:

[0066] Fig. 1 A machine with several axes for the program-controlled execution of two- or three-dimensional positioning movements;

[0067] Fig. 2 an electronic control device for a machine with multiple axes.

[0068] By way of introduction, it should be noted that in the variously described embodiments, identical parts are provided with identical reference symbols or component designations. The disclosures contained throughout the description can be applied analogously to identical parts with identical reference symbols or component designations. Furthermore, the positional information chosen in the description, such as top, bottom, side, etc., refers to the directly described and illustrated figure, and these positional information must be applied analogously to the new position in the event of a change in position.

[0069] In the context of this description, the "axes of the machine" are to be understood as "controllable axes of movement of the machine." These axes can be formed by joint axes, rotation axes, and / or linear axes.

[0070] Figures 1 and 2 illustrate a technical system with which the achievable movement or actual accuracy of a controllable machine 1, in particular a multi-axis industrial robot, can be improved. For this purpose, a special electronic control device 3 and a special optimization or control method for the machine 1 are provided.

[0071] The machine 1 comprises several axes 2 with which predetermined movements of at least one working point or of at least one end effector 10, for example a welding torch, an application nozzle for paint or adhesive, a workpiece gripper, or the like, can be carried out automatically. For this purpose, these actuating or movement axes 2 comprise controllable drives 12, for example actuators or servo motors or linear drives such as piston-cylinder units, as is known per se. These drives 12 act on actuating mechanisms, such as articulated or telescopically mounted actuating arms. The at least one control device 3 of the machine controls the corresponding drives 12 based on a software-stored program sequence, wherein - as is also known per se - a plurality of sensors or encoders can be integrated, which influence the program sequence.An axis 2 or a combination of several axes 2, in particular of controllable drives 12 and actuating mechanisms, can also be referred to as the drive train of the machine 1.

[0072] The movement or actual accuracy achievable by the machine 1 with respect to a predetermined or planned target specification 4 - shown in Fig. 1 in solid lines as an example as an S-curve between the spatial points PI and P2 - depends, among other things, on the elasticity of the actuating mechanisms of the axes 2, on the achievable positioning accuracies or positioning resolutions of the drives 12, on the precision of any brakes for the axes 2, on changing load moments or projection widths 15, 16 of the end effector 10 relative to the base of the machine 1, on deviations in the transmission behavior of the drive train, on temperature influences, on movement speeds, on load changes, on mechanical vibrations, and on other factors.

[0073] As a result, actual deviations 5 - shown in dashed lines - that are considered unusable or undesirable above a certain extent can occur with respect to the two- or three-dimensionally predetermined target specification 4. These actual deviations 5 from the target specification 4, which occur during ongoing positioning movements of the machine 3, can be reduced or compensated for using the optimization method described below, in particular kept within satisfactory, improved limit values. In this process, a data-based, kinematic model 6 is created of the machine 1 in question and made available to the control device 3. This kinematic model 6 represents, among other things, at least parts of the kinematic or geometric structure of the machine 1. The kinematic model 6 can be based on design data and / or measurement data of the machine 1.Based on the kinematic model 6, the control device 3 can calculate so-called axis transformations and thus determine which axes 2 of the machine 1 are to be controlled in which manner in order to implement the desired target specification 4. From the kinematic model 6, the control device 3 can therefore derive control commands for the axes 2 or their drives 12 in order to determine the target specification 4 in an idealized manner or purely mathematically. However, with these plan-based or calculation-based control specifications, the target specification 4 can only be achieved to a limited extent due to the factors described above.

[0074] The optimization method therefore further comprises determining a data-based, dynamic model 7 of the machine 1. This dynamic model 7 is also made available to the control device 3 for use or is generally determined by the control device 3. The dynamic model 7 takes into account at least one temporally correlated, i.e. dynamic, movement behavior. In particular, the dynamic model 7 can describe a dynamic movement behavior of the machine 1 and at least indirectly depict the discrepancies or deviations that occur between the theoretical or planned movement behavior or positioning behavior of the axes 2 (target behavior) and the actually resulting or occurring movement behavior or positioning behavior of the axes 2 (actual behavior). The dynamic model 7 is therefore comparable to a data-based description of the actual movement behavior of the machine 7 orThe dynamic model 7 represents the actual movement or positioning behavior of the machine 1 in data terms. In particular, the dynamic model can take into account the vibration behavior of the machine 1 or of at least individual axes 2 of the machine 1 during the execution of two- or three-dimensional movements.

[0075] Preferably, a measuring device 8 is involved in determining the dynamic model 7 of the machine 1, which measuring device is set up to metrologically record data on the dynamic positioning and movement behavior of the machine 1. This measuring device 8 is therefore set up to determine actual data or to determine the actual, dynamic movement behavior or the actually occurring actual deviations 5. In many cases, the dynamic model 7 will depend on the respective axis positions or properties of the drive train, in particular the deviations from the linear transmission behavior and other external factors, e.g. a load to be moved or environmental factors. Preferably, the dynamic model is determined as a function of these factors, e.g. determined in relation to several axis positions.

[0076] The measuring device 8 can be designed as a single-component or multi-component device, in particular as a centralized or distributed device. The measuring device 8 can be arranged externally with respect to the machine 1 and / or on the machine 1 or on at least one of its axes 2. In particular, the dynamic model 7 can be determined by measurements using the measuring device 8, in particular by measuring the position changes of at least one predetermined point on the machine 1 or by measuring actual deviations 5 from at least one predetermined point on the machine 1. The measuring device 8 is configured to measure the movements or the temporally changing positions of the machine 1 and to record them in data format. The measuring device 8 can therefore be designed as a position measuring system 17, which records the spatial movement behavior of the machine 1 during movements of the machine 1.Depending on the SI unit of the target specification 4, the measuring device can also be designed as a speed, force, or torque measuring system, for example. The selection of appropriate measuring systems is within the skill of the specialist working in this technical field, based on the teaching of technical practice.

[0077] A practical position measuring system 17 can comprise at least one stationary laser tracker 18 with sufficient measurement accuracy with respect to a plurality of spatial points. Such a laser tracker 18 can be arranged at a distance from the machine 1 to be measured. It is expedient if the position measuring system 17 enables 3D measurement of the movement sequences or position changes of at least sections of the machine 1 in real time.

[0078] The position measuring system 17 can, alternatively or in combination with a laser tracker 18, comprise at least one inertial sensor 19 (Fig. 2), which is arranged on at least one of the axes 2 of the machine 1, as shown schematically in Fig. 2. It is expedient if the detection or measured values ​​of the position measuring system 17 are transmitted to the at least one electronic control device 3 of the machine 1 in real time, in particular synchronously with the control cycle of the control device 3. This data transmission can be carried out wirelessly and / or via cable.

[0079] Based on at least parts of the kinematic model 6 and the dynamic model 7, the control device 3 then determines parameters or signals 9, which are subsequently used to at least partially compensate for de facto occurring or expected actual deviations 5 of the machine 1 along the predetermined target specification 4. These actual deviations 5 are caused, for example, by the external factors or influences described above. The target specification 4 or the actual deviations 5 can, in particular, relate to a predetermined point on the end effector 10 or tool of the machine 1. The computational determination of parameters or signals 9 for at least partially compensating for actual deviations 5 can, according to an expedient procedure, be based on a comparison between the planned or target data from the kinematic model 6 and the real orBuild up actual data taking into account the dynamic model 7, especially because the dynamic model 7 of the control device 3 can supply or provide information or data about the respective dynamic movement behavior of the machine 1.

[0080] The control of the machine 1 or of at least one of its axes 2 then takes place by incorporating or using the computationally determined parameters or signals 9 for at least partial compensation of actual deviations 5 with respect to the predetermined target value 4, as is schematically illustrated in Fig. 2. In particular, a base signal 14, derived primarily from the kinematic model 6, for the basic control of one or more axes 2 can be superimposed, combined, or linked with the at least one computationally determined parameter or signal 9 for at least partial compensation of actual deviations 5 in order to obtain a qualitatively improved control signal 11 for controlling the at least one axis 2 or the at least one drive 12. This improved control signal 11 can, in particular, be a digital control signal, which can subsequently be fed to an electronic drive controller 20.This drive controller 20 can generate at least one control signal 21, which is provided for operating the at least one axis 2 or the at least one drive 12. In particular, it can be provided that the at least partial compensation of actual deviations 5 with respect to the predetermined target specification 4 takes place in such a way that the at least one parameter or the at least one signal 9 for at least partial compensation of actual deviations 5, in particular a compensation signal or a compensation value, is added to a base signal 14 calculated from the kinematic model 6 for an axis 2 to be controlled or to base signals 14 for several axes 2 to be controlled, thereby causing actual deviations 5 from the target specification 4 to be at least reduced.

[0081] In the step of computationally determining parameters or signals 9 for at least partially compensating for actual deviations 5, the calculation can be carried out in such a way that the dynamic behavior or vibration behavior of at least one axle 2 or of at least one drive train of the machine 1 is inverted, in particular according to the principle of inverting the dynamic behavior of the drive train of at least one axle 2 of the machine 1. In particular, the computational determination can be carried out in such a way that control signals 11 for drives 12 of axles 2 of the machine 1 cause undesired deviations in a drive train of the machine 1 to be eliminated or minimized. In particular, deviations caused by the drive train can be eliminated or minimized. As a result, actual deviations 5 of the machine 1 with respect to the predetermined target specification 4 can be eliminated or minimized.

[0082] As explained above, it is expedient if the kinematic model 6 for axis transformations is used to computationally determine idealized or theoretical target specifications 4 or target positions of the machine 1 and, in particular, takes into account the geometry of the machine 1, while the dynamic model 7 is used to compute or determine the parameters or signals 9 for at least partially compensating for actual deviations 5. The actual deviations 5 that occur from this idealized or theoretical target specification 4 or target position are determined by the measuring device.

[0083] In the dynamic model 7, several different spatial positions or several different kinematic overhang widths 15, 16 of a predetermined point on a tool of machine 1, another operating point of machine 1, a TCP, or an end effector 10 of machine 1 can be taken into account. In particular, the dynamic model 7 depends on the positioning of the individual axes. This creates a comprehensive data-based representation of the dynamic movement behavior of machine 1 in space and the resulting positioning deviations compared to the respective target positions of machine 1 or its axes 2. This allows even far-reaching changes to the target specification 4 to be implemented quickly.

[0084] The determination of the dynamic model 7 with respect to different spatial positions or kinematic overhangs 15, 16 of the machine 1 can also be carried out in such a way that the dynamic model 7 only includes areas of a working space of the machine 1 in which movements are to be performed with high precision. In particular, spatially distributed or grid-arranged measuring points can be used with respect to axis positions or coordinate systems.

[0085] The dynamic model 7 with respect to a subset of spatial positions of the machine 1 can also be determined in such a way that it is derived from previously determined dynamic models in spatial proximity, in particular by interpolation or extrapolation.

[0086] As can be seen especially from Fig. 1, the machine 1 can be formed by a multi-axis industrial robot comprising a plurality of independently positionable, yet mechanically coupled axes 2. In such an industrial robot, a positioning deviation of a first axis close to the base has a significant impact on the positioning of serially connected, mechanically coupled axes 2, in particular on the positioning accuracy of its end effector 10.

[0087] According to an advantageous development, the control device 3 can comprise an iteratively learning control component 13, as is illustrated purely schematically in Fig. 2. This iteratively learning control component 13 is implemented or designed such that the predetermined target specification 4 is run through in an initial or initial run using the computationally determined parameters or signals 9 for at least partially compensating for actual deviations 5 from the machine 1, and the actual deviations 5 still occurring during this run are determined. These actual deviations 5 that still occur are then used to further improve the aforementioned parameters or signals 9 for at least partially compensating for actual deviations 5.The further improved parameters or signals 9 for at least partially compensating for actual deviations 5 are then used in at least one further run to execute the predetermined target specification 4 of the machine 1 again, whereby the actual accuracy will generally be further increased in this further run. According to an iteratively learning control concept, the aforementioned execution, determination, and correction steps are repeated several times, whereby the actual accuracy can be further increased with an increasing number of runs. This is especially the case when the dynamic model 7 is determined with sufficient accuracy.

[0088] It may be expedient if only a subset of the axes 2 of the machine 1 is modeled in the dynamic model 7, in particular if only that axis or only those axes 2 are modeled which have the greatest moments of inertia or the lowest stiffness or the greatest influence on the movement. In this way, a significant improvement in the actual accuracy can be achieved with minimal effort. Furthermore, the at least one control device 3 or the iteratively learning control component 13 can be configured to influence only those subsections of the predetermined target specification 4 when determining further improved parameters or signals 9 which were previously defined by a user, or for which actual deviations 5 exist which lie above a predetermined limit value.Likewise, repeated travel of subsections of the target specification 4 can be limited to those subsections of the target specification 4 in which there is an outreach of a predetermined point or working point of the machine 1 relative to a base of the machine 1 that lies above a predetermined outreach limit value.

[0089] The iteratively learning control component 13 can be an integral part of the electronic control device 3 of the machine 1, so that in particular synchronicity and real-time behavior of such a control system are inherently fulfilled.

[0090] The control device 3 can be centralized or distributed and comprise several control units communicating with each other. In particular, the control device 3 can comprise a first control component configured to control the axes 2 of the machine 1, and a further, iteratively learning control component 13 configured to determine parameters or signals 9 for at least partially compensating for actual deviations, and which iteratively learning control component 13 can be or is data-coupled to the first control component. The at least one electronic control device 3 is configured to carry out the steps of the method described above and specified in the claims.

[0091] The embodiments show possible embodiments, whereby it should be noted at this point that the invention is not limited to the specifically illustrated embodiments thereof, but rather various combinations of the individual embodiments with each other are also possible and this possibility of variation lies within the skill of the person skilled in the art in this technical field due to the teaching of technical action by means of the objective invention.

[0092] The scope of protection is determined by the claims. However, the description and drawings must be used to interpret the claims. Individual features or combinations of features from the various embodiments shown and described may represent independent inventive solutions. The problem underlying these independent inventive solutions can be derived from the description.

[0093] For the sake of clarity, it should finally be pointed out that, in order to better understand the structure, some elements have been shown out of scale and / or enlarged and / or reduced in size.

[0094] Reference symbol list

[0095] machine

[0096] Axles

[0097] Control device

[0098] Target specification

[0099] Actual deviations of kinematic model dynamic model

[0100] Measuring device

[0101] Signals (compensation signals)

[0102] End effector

[0103] Control signals

[0104] Drives iteratively learning control component

[0105] Base signal

[0106] Projection width

[0107] Projection width

[0108] Measuring system, especially position measuring system

[0109] Laser tracker

[0110] Inertial sensor

[0111] Drive controller

[0112] Control signal

Claims

Patent claims 1. Method for optimising the actual accuracy of a machine (1) with several axes (2), in particular an industrial robot, wherein the axes (2) of the machine (1) are controlled by at least one electronic control device (3) in such a way that a predetermined target specification (4) can be executed or followed with small or negligible actual deviations (5), the method comprising the following steps: - determining a kinematic model (6) of said machine (1), which kinematic model (6) takes into account at least its geometry, - determining a dynamic model (7) of said machine (1), which dynamic model (7) takes into account at least a time-correlated movement behavior of the machine (1), in particular a vibration behavior of the machine (1), - computationally determining parameters or signals (9) for at least partially compensating actual deviations (5) of said machine (1) with respect to a predetermined target specification (4), in particular with respect to a predetermined target movement path or with respect to a predetermined point on an end effector (10) or tool of an industrial robot, wherein both at least parts of the kinematic model (6) and at least parts of the dynamic model (7) are used, - Controlling the multi-axis machine (1) using the computationally determined parameters or signals (9) for at least partial compensation of actual deviations (5) with respect to the predetermined target specification (4).

2. Method according to claim 1, wherein the determination of the dynamic model (7) is carried out by means of stimulation methods, and wherein the machine (1) is controlled in such a way that it particularly resembles the later application tasks, whereby at least the following influences of a drive train of the machine (1) are incorporated into the dynamic model (7): elasticities of gears and / or damping by sliding friction.

3. Method according to one of the preceding claims, wherein in the step of calculating parameters or signals (9) for at least partial compensation of actual deviations (5), the calculation is carried out in such a way that the dynamic behavior or vibration behavior of at least one axle (2) or of at least one drive train of the machine (1) is inverted, in particular according to the principle of a Inversion of the dynamic behavior of the drive train of at least one axle (2) of the machine (1).

4. Method according to one of the preceding claims, wherein, for determining the dynamic model (7) of said machine (1), a measuring device (8) is included which is set up for the metrological acquisition of data on the dynamic positioning and movement behavior of said machine (1), in particular by measuring the position changes in at least one predetermined position of the machine (1).

5. Method according to one of the preceding claims, wherein the control of the multi-axis machine (1) using the computationally determined parameters or signals (9) for at least partially compensating for actual deviations (5) with respect to the predetermined target specification (4) is carried out in such a way that a feedforward control is used in which the control signal (11) for the drive controller is modified, wherein the feedforward control is carried out in such a way that the dynamic model (7) is taken into account and the compensation signal (9) of the feedforward control specifies a position or a speed.

6. Method according to one of the preceding claims, wherein the dynamic model (7) is determined at several different spatial positions or several different kinematic projection widths (15, 16) for a predetermined point on a tool of the machine (1), another working point of the machine (1), a TCP, or an end effector (10) of the machine (1), wherein these are in particular linearized dynamic models for these predetermined points.

7. Method according to one of the preceding claims, wherein the determination of the dynamic model (7) takes place with respect to different spatial positions or kinematic projection widths (15, 16) of the machine (1), which in particular comprise regions of a working space in which target specifications (4) are to be carried out with high actual accuracy, wherein in particular spatially distributed measuring points are used with respect to axis positions or coordinate systems.

8. Method according to one of the preceding claims, wherein the dynamic Model (7) is determined with respect to a subset of spatial positions of the machine (1) in such a way that it is derived from previously determined dynamic models in spatial proximity, in particular is determined by interpolation or extrapolation.

9. Method according to one of the preceding claims, wherein the dynamic model (7) is determined with respect to the progress of a movement to be executed.

10. Method according to one of the preceding claims, wherein the machine (1) comprises a plurality of independently positionable, but mechanically coupled axes (2), so that a positioning deviation of a first axis (2) has an effect on the positioning of serially connected, mechanically coupled axes (2), wherein the machine is in particular a multi-axis industrial robot.

11. Method according to one of the preceding claims, wherein the at least one control device (3) comprises a control component (13) which is designed such that when a same predetermined target specification (4) is passed through again, the computationally determined parameters or signals (9) are used to at least partially compensate for actual deviations from this target specification (4).

12. Method according to one of the preceding claims, wherein the at least one control device (3) comprises an iteratively learning control component (13) which is designed such that - the predetermined target specification (4) is run through in one pass using the computationally determined parameters or signals (9) for at least partial compensation of actual deviations (5) from the machine (1) and during this time still occurring actual deviations (5) are determined, and wherein a) these still occurring actual deviations (5) are used for further improvement of the said parameters or signals (9) for at least partial compensation of actual deviations (5), and wherein b) these further improved parameters or signals (9) for at least partial compensation of actual deviations (5) in a further run in order to run the predetermined target specification (4) of the machine (1) again.

13. The method according to claim 12, wherein said steps a) and b) are repeated at least once.

14. Method according to one of the preceding claims, wherein in the dynamic model (7) only a subset of the axes (2) of the machine (1) is modeled, in particular only that axis is modeled or only those axes (2) are modeled which have the greatest moments of inertia or the lowest stiffness.

15. Method according to one of the preceding claims, wherein the at least partial compensation of actual deviations (5) compared to the predetermined target specification (4) takes place in such a way that the at least one parameter or the at least one signal (9) for the at least partial compensation of actual deviations (5), in particular a compensation signal or a compensation value, is added to the target specification (4) for one or more axes (2) to be controlled, thereby causing actual deviations (5) from the target specification (4) to be at least reduced.

16. Method according to one of the preceding claims, wherein the at least one control device (3) or the iteratively learning control component (13) is configured to influence, when determining further improved parameters or signals (9), only those subsections of the predetermined target specification (4) which have been defined or for which actual deviations (5) are present which are above a predetermined limit value.

17. The method according to claim 16, wherein repeated traversing of subsections of the target specification (4) is limited to those subsections of the target specification (4) in which there is an overhang of a predetermined point or working point of the machine (1) relative to a base of the machine (1) which lies above a predetermined overhang limit value.

18. Method according to one of the preceding claims, wherein a measuring system or a position measuring system (17) is used to determine the dynamic model (7) and / or the actual deviations (5), which enables a dynamic measurement of the respective Spatial positions of moving sections of the machine (1) are possible.

19. The method according to claim 18, wherein the measuring system or the position measuring system (17) comprises at least one laser tracker (18) which is arranged at a distance from the machine (1).

20. The method according to claim 18 or 19, wherein the measuring system or the position measuring system (17) comprises at least one inertial sensor (19) which is arranged on at least one of the axes (2) of the machine (1).

21. Method according to one of claims 18 to 20, wherein measured values ​​of the measuring system or the position measuring system (17) are transmitted to the at least one electronic control device (3) of the machine (1) in real time, in particular synchronously with the control clock of the control device (3).

22. Method according to one of claims 12 to 21, wherein the iteratively learning control component (13) is an integral part of the electronic control device (3) of the machine (1), so that in particular synchronicity and real-time behavior of such a control system are inherently fulfilled.

23. Control device (3) for optimising the actual accuracy, for example the path accuracy, of a machine (1) with several axes (2), in particular an industrial robot, with regard to executing a predetermined target specification (4), for example with regard to following a predetermined target movement path, wherein the control device (3) is set up to - using a kinematic model (6) of said machine (1), which kinematic model (6) takes into account at least its geometry, - using a dynamic model (7) of said machine (1) which takes into account at least one temporally correlated movement behavior of the machine (1), - computationally determining parameters or signals (9) for at least partially compensating actual deviations (5) of said machine (1) with respect to the predetermined target specification (4), in particular with respect to a path accuracy along the predetermined target movement path with respect to a predetermined point on an end effector (10) or tool of the industrial robot, wherein both at least parts of the kinematic model (6) and at least parts of the dynamic model (7) are used, - Controlling the multi-axis machine (1) using the computationally determined parameters or signals (9) for at least partial compensation of actual deviations (5) with respect to the predetermined target specification (4).

24. Control device (3) according to claim 23, wherein the control device (3) comprises a first control component which is set up to control the axes (2) of the machine (1), and a further, iteratively learning control component (13) which is set up to determine parameters or signals (9) for at least partially compensating for actual deviations, and which iteratively learning control component (13) is or can be coupled to the first control component in terms of data technology.

25. Control device (3) according to claim 23 or 24, wherein this control device (3) is further configured to carry out the steps of the method according to one of claims 1 to 22.

26. Machine (1) with several controllable axes (2) for carrying out positioning movements, in particular industrial robots, said machine (1) comprising an electronic control device (3) for controlling the axes (2), characterized in that the control device (3) is designed according to one of claims 23 to 25.

Citation Information

Patent Citations

  • Controller for machine

    EP1132790B1

  • Method For Controlling Robot, Robot System, And Storage Medium

    US20220314450A1

  • crane or excavator for handling a load suspended from a load rope with load swing damping

    DE10064182A1

  • Method for eliminating the lag error of the operating point of a device

    EP2089780B1

  • Detent torque compensation in an industrial robot

    WO2018037011A1