WO2025199560A1 - Method and control device for optimising the actual accuracy of a machine having a plurality of axles - Google Patents
Method and control device for optimising the actual accuracy of a machine having a plurality of axlesInfo
- Publication number
- WO2025199560A1 WO2025199560A1 PCT/AT2025/060139 AT2025060139W WO2025199560A1 WO 2025199560 A1 WO2025199560 A1 WO 2025199560A1 AT 2025060139 W AT2025060139 W AT 2025060139W WO 2025199560 A1 WO2025199560 A1 WO 2025199560A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- machine
- dynamic model
- control device
- actual
- target specification
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/1641—Programme controls characterised by the control loop compensation for backlash, friction, compliance, elasticity in the joints
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/0265—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/404—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/31—From computer integrated manufacturing till monitoring
- G05B2219/31264—Control, autonomous self learn knowledge, rearrange task, reallocate resources
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/42—Servomotor, servo controller kind till VSS
- G05B2219/42128—Servo characteristics, drive parameters, during test move
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/42—Servomotor, servo controller kind till VSS
- G05B2219/42144—Online tuning of fuzzy controller by ann
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/42—Servomotor, servo controller kind till VSS
- G05B2219/42151—Learn dynamics of servomotor system by ann
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/42—Servomotor, servo controller kind till VSS
- G05B2219/42152—Learn, self, auto tuning, calibrating, environment adaptation, repetition
Definitions
- 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.
- 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.
- EPI 132790B 1 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 a cycle of a natural vibration of the machine and/or an auxiliary device attached to the machine as a controlled system.
- 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 the 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 in order to determine the frequency or the cycle of the Natural vibration can be determined.
- the motion command generation means has a filter for reducing the amplitude of the natural vibration.
- 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.
- the vibrations of the end effector or workpiece that is 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, e.g., vibrations in the moment, it does not in itself ensure that the actual accuracy, e.g., of the position or speed, meets the desired requirements.
- the object of the present invention was to overcome the disadvantages of the prior art and to provide a machine with multiple 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.
- the method according to the invention is designed to optimize the actual accuracy of a multi-axis machine, in particular an industrial robot.
- High actual accuracy is defined as a small deviation between the theoretically desired target path and the practically achievable actual path, e.g., a robot path.
- actual accuracy primarily refers to movement accuracy, i.e., the temporal progression of the machine's positioning accuracy.
- the invention can also be applied, for example, to speed, force, pressure, or torque accuracy, or their positioning or stopping accuracy.
- speed accuracy or force accuracy is required, the use of a suitable measuring system can be expedient in implementing the necessary steps to improve actual accuracy.
- the axes of this multi-axis machine are controlled by at least one electronic control device in such a way that a predetermined target specification is executed or can be followed, typically by the so-called TCP (tool center point) or end effector of the machine, with the smallest possible or negligible actual deviations. If the desired trajectory is as accurate as possible, this is particularly useful for two- or three-dimensional trajectories. This applies especially to machines with coupled axes.
- This optimization process includes the following steps:
- 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.
- the measures according to the invention enable a predetermined target specification to be met with high accuracy quickly and immediately, i.e., without numerous and thus lengthy iteration steps. Above all, little manual work and monitoring is required by the machine operator or commissioning technician, since 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, thereby mitigating vibration-related actual deviations of the machine.
- inertias in particular mass moments of inertia of the axes, finite accuracies and resolutions of the actuators for the axes, frequency-dependent influences or vibrations of 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 temporally successive target points in space as planned, without, for example, the TCP of the machine oscillating relative to the planned path during its movements in space, in particular, under- or over-controlling with respect to the target movement and thus deviating.
- oscillations or minimal jerking movements are involved; for example, due to natural oscillations, positive feedback. or frequency overlaps between interconnected machine components.
- the measures according to the invention compensate for interfering frequencies occurring during the execution of the movement (amplified or reduced and phase-shifted), thus optimizing the actual accuracy of the machine during the implementation of the target specification.
- 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.
- 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.
- the vibration behavior at specific 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 further 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 also depends, for example, 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.
- 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 accurately as possible.
- 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 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.
- 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.
- 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.
- the computational determination of parameters or signals for at least partial compensation of actual deviations is 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 with functional stability.
- compensation can also be calculated that changes the target specification used as an input for the drive controller.
- 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 an output variable. Specifying the position or speed as a control signal proves particularly advantageous here, since the dynamic model models, among other things, accelerations, which have a particularly significant impact on position or speed specifications.
- 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.
- 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.
- the dynamic model is determined by measurements using a measuring device, in particular by measuring the position changes, speed, force, pressure or torque ratios in relation to at least one predetermined point of the machine, or by Measurement of actual deviations with respect to at least one predetermined point of the machine, for example its TCP, with respect to three-dimensional space.
- 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.
- 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.
- Another advantageous feature is a configuration in which several different spatial positions or several different kinematic projections or projection 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.
- 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.
- the dynamic model can be subsequently refined more finely by interpolation.
- it can be enlarged by extrapolation.
- the trajectory can be gradually modified by small shifts in specified directions. For example, changes in the vertical direction and/or lateral displacement or extension of trajectories can be used to quickly achieve new, precisely implementable trajectories.
- 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.
- 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.
- 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 calculated specifically for this target specification.
- the at least one control device comprises an iteratively learning control component which is designed such that
- 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 is carried out, 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 can be used, and wherein a) these still occurring actual deviations 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 are used to at least partial compensation of actual deviations in a further run in order to run the machine through the predetermined target specification again. This naturally applies in particular when the same target specification is executed or run through again.
- the compensation of actual deviations from the predetermined target specification is carried out in such a way that the at least one parameter or the at least one signal for at least partial compensation of actual deviations,
- a compensation signal or a compensation value is added, which ensures that actual deviations from the target value are at least reduced. This can improve control behavior, allowing for appropriate compensation of disturbances and preventing stability problems.
- This variant is particularly advantageous when the dynamic model is sufficiently accurate to compensate for stability problems.
- 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
- 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 used for the metrological recording of data about the dynamic positioning and movement behavior of this machine is set up,
- 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.
- the electronic control device of the machine is designed to implement or execute at least individual steps of the method described above.
- the separation of the kinematic model and the dynamic model proves to be a particular advantage.
- the kinematic A model is used that achieves significantly increased positioning accuracy through calibration (target-actual comparison).
- a dynamic model is not typically used to control a machine, as it cannot be readily provided. This advantageous use is also practical, particularly by measuring the dynamic model using the method described above.
- Fig. 2 an electronic control device for a machine with multiple axes.
- 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.
- 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.
- a special electronic Control device 3 and a special optimization or control method for the machine 1 are provided.
- 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.
- these actuating or movement axes 2 comprise controllable drives 12, as is known per se, for example actuators or servo motors or linear drives such as piston-cylinder units.
- 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.
- 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.
- 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.
- the control device 3 can calculate so-called axis transformations and thereby determine which axes 2 of the machine 1 are to be controlled and in what 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 be able to determine the target specification 4 in an idealized manner or purely mathematically.
- target 4 can only be achieved to a limited extent due to the factors described above.
- 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.
- the dynamic model 7 can describe a dynamic movement behavior of the machine 1 and at least indirectly map 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, or the dynamic model 7 maps the actual movement or positioning behavior of the machine 1 in data terms.
- the dynamic model can take into account a 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.
- a measuring device 8 is involved to determine the dynamic model 7 of the machine 1, which measuring device is designed to measure data on the dynamic positioning and movement behavior of the machine 1.
- This measuring device 8 is therefore designed to determine actual data or to determine the actual, dynamic motion behavior or the actual deviations 5 that actually occur.
- 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.
- the dynamic model is determined depending on these factors, e.g., with respect to multiple axis positions.
- the measuring device 8 can be designed as a single- or multi-component device, in particular centralized or distributed.
- 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.
- 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.
- the measuring device can also be designed, for example, as a speed, force, or torque measuring system. Based on the teachings of technical action, the selection of appropriate measuring systems is within the skill of the specialist working in this technical field.
- 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.
- the position measuring system 17 may, 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.
- the control device 3 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, be related 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 partial compensation of 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 or 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.
- 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.
- 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.
- 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 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, whereby the actual deviations 5 from the target specification 4 are at least reduced.
- 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.
- 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.
- deviations caused by the drive train can be eliminated or minimized.
- actual deviations 5 of the machine 1 with respect to the predetermined target specification 4 can be eliminated or minimized.
- 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.
- the dynamic model 7 In the dynamic model 7, several different spatial positions or several different kinematic projection widths 15, 16 of 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 machine 1.
- 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.
- 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.
- the machine 1 can be formed by a multi-axis industrial robot comprising a plurality of independently positionable, yet mechanically coupled axes 2.
- 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.
- 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.
- 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.
- 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.
Landscapes
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Artificial Intelligence (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Manufacturing & Machinery (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Feedback Control In General (AREA)
- Numerical Control (AREA)
Abstract
Description
VERFAHREN UND STEUERVORRICHTUNG ZUR OPTIMIERUNG DER IST-GENAUIGKEIT EINER MASCHINE MIT MEHREREN ACHSEN METHOD AND CONTROL DEVICE FOR OPTIMIZING THE ACTUAL ACCURACY OF A MULTI-AXIS MACHINE
Die Erfindung betrifft ein Verfahren zur Optimierung der Ist-Genauigkeit einer Maschine mit mehreren Achsen, insbesondere eines Industrieroboters, sowie eine Steuervorrichtung zur Optimierung der Ist- Genauigkeit einer Maschine mit mehreren Achsen. Die Achsen der Maschine, insbesondere deren Stellantriebe, werden dabei von wenigstens einer elektronischen Steuervorrichtung derart gesteuert, dass eine vorbestimmte Soll-Vorgabe zu reduzierten bzw. vernachlässigbar kleinen Ist- Abweichungen führt, beispielsweise eine Soll-Bewegungsbahn mit reduzierten Bahnabweichungen abgefahren werden kann. 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.
Die US20220314450A1 beschreibt ein Verfahren zum Steuern eines Roboters mit einer Basis, einem mit der Basis gekoppelten Roboterarm und einer Antriebseinheit mit einem Motor zum Antreiben des Roboterarms. Das Verfahren umfasst einen ersten Schritt des Erfassens von Zielpositionsinformationen zu einer Zielposition, wenn der Roboterarm bewegt wird; einen zweiten Schritt zum Bestimmen einer Frequenzkomponente, die aus einem Antriebssignal zum Antreiben des Motors entfernt werden soll, basierend auf einer Haltung des Roboterarms an der Zielposition der erfassten Zielpositionsinformationen; und einen dritten Schritt zum Entfernen der im zweiten Schritt bestimmten Frequenzkomponente aus dem Ansteuersignal, um ein korrigiertes Ansteuersignal zu erzeugen. Mit diesem Verfahren sollen mechanische Schwingungen bzw. Vibrationen des Roboterarms infolge des Stoppens des Roboterarms beim Erreichen der Zielposition verringert werden. 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.
Die EPI 132790B 1 offenbart eine Steuereinrichtung für eine Maschine, die einen Elektromotor als Antriebsquelle der Maschine hat. Diese Steuereinrichtung umfasst ein Eigenfrequenz- Bestimmungsmittel zum Bestimmen einer Frequenz oder eines Zyklus einer Eigenschwingung der Maschine und/oder einer Zusatzvorrichtung, die an der Maschine als ein gesteuertes System angebracht ist. Weiters umfasst die Steuereinrichtung ein Bewegungsbefehl-Erzeugungsmittel zum Erzeugen eines Bewegungsbefehls für den Elektromotor derart, dass die Eigenschwingung der Maschine und/oder der Zus atz Vorrichtung in Übereinstimmung mit der durch das Eigenfrequenz-Bestimmungsmittel bestimmten Frequenz oder dem durch dieses bestimmten Zyklus der Eigenschwingung unterdrückt wird, wobei das Eigenfrequenz-Bestimmungsmittel einen Frequenz- Analysator zum Analysieren einer Schwingungsfrequenz eines Steuersignals für den Elektromotor umfasst, um die Frequenz oder den Zyklus der Eigenschwingung bestimmen zu können. Das Bewegungsbefehl-Erzeugungsmittel hat dabei ein Filter zum Verringern einer Amplitude der Eigenschwingung. Zudem ändert das Bewegungsbefehl-Erzeugungsmittel automatisch einen Koeffizienten des Filters in Übereinstimmung mit der Frequenz oder dem Zyklus der Eigenschwingung, die oder der durch den Frequenz-Analysator bestimmt ist. Bei diesem bekannten System werden die Schwingungen des stehenden oder an der Zielposition gestoppten Endeffektors bzw. Werkstücks mittels einer Lasermessvorrichtung aufgenommen. Eine solche filterbasierte Schwingungsunterdrückung ist nur bedingt zufriedenstellend, insbesondere ist der Filter in der Regelung des Antriebsreglers vorgesehen und unterdrückt Signale im Moment. Ein derartiger Filter ermöglicht zwar die Entfernung unerwünschter Signale z.B. Schwingungen im Moment, stellt für sich genommen aber nicht sicher, dass dabei auch die Ist-Genauigkeit z.B. der Position oder der Geschwindigkeit die gewünschten Erfordernisse erfüllt. EPI 132790B 1 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 a 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 the cycle of the natural vibration determined by the natural frequency determining means, wherein the natural frequency determining means comprises a frequency analyzer for analyzing a vibration frequency of a control signal for the electric motor in order to determine the frequency or the cycle of the Natural vibration can be determined. The motion command generation means has a filter for reducing the amplitude of the natural vibration. In addition, 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 that is 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, e.g., vibrations in the moment, it does not in itself ensure that the actual accuracy, e.g., of the position or speed, meets the desired requirements.
Bei Anwendungen, die höchste Ansprüche an die Ist- Genauigkeit stellen, sind vor allem Eigenschaften des Antrieb sstrangs, insbesondere Abweichungen vom linearen Übertragungsverhalten (bzw. einer konstanten Übersetzung) und Elastizitäten, für die Abweichungen verantwortlich. Diese ergeben sich aus dem Aufbau von Getrieben oder auch Zahnriemen und erzeugen für jede Bahnbewegung spezifische Abweichungsmuster. Diese Abweichungen können durch die bisher beschriebene Filterung nicht kompensiert werden, da die zu kompensierenden Signale oft im Bereich der Resonanzfrequenzen des mechanischen Systems liegen. Eine Filterung der Schwingfrequenzen nimmt die Möglichkeit einer spezifischen Einflussnahme und Kompensation. 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.
Aufgabe der vorliegenden Erfindung war es, die Nachteile des Standes der Technik zu überwinden und eine Maschine mit mehreren Achsen, insbesondere einen Industrieroboter, zur Verfügung zu stellen, welche Maschine bzw. welcher Industrieroboter eine verbesserte Ist- Genauigkeit, z.B. hinsichtlich Achsbewegungen oder anderer Soll-Vorgaben bietet. The object of the present invention was to overcome the disadvantages of the prior art and to provide a machine with multiple 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.
Diese Aufgabe wird durch ein Verfahren und eine Steuervorrichtung gemäß den Ansprüchen gelöst. This object is achieved by a method and a control device according to the claims.
Das erfindungsgemäße Verfahren ist zur Optimierung der Ist- Genauigkeit einer Maschine mit mehreren Achsen, insbesondere eines Industrieroboters, konzipiert. Eine hohe Ist- Genauigkeit ist derart zu verstehen, dass eine geringe Abweichung zwischen dem theoretisch gewünschten Soll- Verlauf und dem praktisch erreichbaren Ist- Verlauf, z.B. einer Roboterbahn, besteht. Im Kontext der Erfindung ist unter Ist- Genauigkeit primär die Bewegungsgenauigkeit, also der zeitliche Verlauf der Positionsgenauigkeit der Maschine zu verstehen. Die Erfindung kann aber beispielsweise auch auf Geschwindigkeits-, Kraft-, Druck- bzw. Moment- oder deren Positionierung s- bzw. Stoppgenauigkeit angewendet werden. Zum Beispiel kann im Falle einer geforderten Geschwindigkeitsgenauigkeit oder Kraftgenauigkeit die Verwendung eines geeigneten Messsystems zielführend sein, um die benötigten Schritte zur Erreichung der Verbesserung der Ist- Genauigkeit zu erreichen. Des Weiteren ist zu erwähnen, dass z.B. bei einer georderten Kraftgenauigkeit sowohl die absolute Größe als auch die Richtung eine Rolle spielen können. Die benötigten Änderungen für die Übertragung der Erfindung auf diese Größen liegen, aufgrund der Lehre zum technischen Handeln, im Können des auf diesem technischen Gebiet tätigen Fachmannes. Die Achsen dieser mehrachsigen Maschine werden dabei von wenigstens einer elektronischen Steuervorrichtung derart gesteuert, dass eine vorbestimmte Soll- Vorgabe typischerweise vom sogenannten TCP (Werkzeugmittelpunkt) oder Endeffektor der Maschine mit möglichst geringen oder vemachlässigbaren Ist- Abweichungen ausgeführt wird bzw. abgefahren werden kann. Im Falle einer möglichst genauen Soll-Bewegungsbahn ist dies vor allem für zwei- oder dreidimensionale Bewegungsbahnen zielführend. Dies trifft vor allem auf Maschinen mit gekoppelten Achsen zu. The method according to the invention is designed to optimize the actual accuracy of a multi-axis machine, in particular an industrial robot. High actual accuracy is defined as a small deviation between the theoretically desired target path and the practically achievable actual path, e.g., a robot path. In the context of the invention, actual accuracy primarily refers to movement accuracy, i.e., the temporal progression of the machine's positioning accuracy. However, the invention can also be applied, for example, to speed, force, pressure, or torque accuracy, 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 implementing the necessary steps to improve actual accuracy. Furthermore, it should be noted that, for example, with a required force accuracy, both the absolute magnitude and the direction can play a role. The necessary modifications for transferring the invention to these quantities are, based on the teaching of technical action, within the skill of the person skilled in this technical field. The axes of this multi-axis machine are controlled by at least one electronic control device in such a way that a predetermined target specification is executed or can be followed, typically by the so-called TCP (tool center point) or end effector of the machine, with the smallest possible or negligible actual deviations. If the desired trajectory is as accurate as possible, this is particularly useful for two- or three-dimensional trajectories. This applies especially to machines with coupled axes.
Dieses Optimierungsverfahren umfasst folgende Schritte: This optimization process includes the following steps:
- Bestimmen eines kinematischen Modells der zu optimierenden Maschine, welches kinematische Modell zumindest deren Geometrie berücksichtigt, - Determining a kinematic model of the machine to be optimized, which kinematic model takes into account at least its geometry,
- Bestimmen eines dynamischen Modells der zu optimierenden Maschine, welches dynamische Modell zumindest ein zeitliches Verhalten, insbesondere ein zeitlich korreliertes Bewegungsverhalten, nämlich ein dynamisches Bewegungs verhalten der Maschine berücksichtigt, im Speziellen ein verzögertes Verhalten und/oder Schwingungs verhalten der Maschine im Zuge der Ausführung von Bewegungen berücksichtigt, - 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,
- rechnerisches Bestimmen von Parametern oder Signalen zur wenigstens teilweisen Kompensation von Ist- Abweichungen bzw. Positionierungsabweichungen dieser Maschine in Bezug auf die vorbestimmte Soll-Vorgabe, insbesondere in Bezug auf einen vorbestimmten Punkt an einem Endeffektor oder Werkzeug eines Industrieroboters, wobei sowohl zumindest Teile des kinematischen Modells als auch zumindest Teile des dynamischen Modells verwendet werden, - 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,
- Steuern der mehrachsigen Maschine unter Verwendung der rechnerisch bestimmten Parameter oder Signale zur wenigstens teilweisen Kompensation von Ist- Abweichungen in Bezug auf die vorbestimmte Soll-Vorgabe. - Control of the multi-axis machine using the computationally determined Parameters or signals for at least partial compensation of actual deviations with respect to the predetermined target value.
Unter „kinematisches Modell der Maschine“ ist im Kontext der Erfindung eine wenigstens partiell beschreibende, datentechnische Nachbildung der Geometrie bzw. Kinematik der Maschine zu verstehen. Unter dem Begriff „dynamisches Modell der Maschine“ ist eine wenigstens partiell beschreibende, datentechnische Nachbildung des dynamischen Verhaltens, insbesondere des Bewegungsverhaltens der Maschine zu verstehen. 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.
Zum Bestimmen des dynamischen Modells der Maschine kann eine zusätzliche Messvorrichtung einbezogen sein, welche zum messtechnischen Erfassen von Daten über das dynamische Positionierungs- und Bewegungs verhalten dieser Maschine eingerichtet ist. 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.
Durch die erfindungsgemäßen Maßnahmen kann eine vorbestimmte Soll-Vorgabe rasch bzw. umgehend, also ohne zahlreiche und somit langwierige Iterations schritte, mit hoher Genauigkeit abgefahren werden. Vor allem ist von einem Betreiber bzw. Inbetriebnahmetechniker der Maschine nur wenig manuelle Arbeit und Kontrolle nötig, da das dynamische Modell meist zumindest teilautomatisiert einfließen kann. Insbesondere ist von Vorteil, dass das letztendlich auftretende, dynamische Bewegungs verhalten der Maschine bereits im Vorfeld bzw. bereits initial in die Bestimmung von Parametern oder Signalen zur wenigstens teilweisen Kompensation von Ist- Abweichungen einfließt und dadurch schwingungsbedingte Ist- Abweichungen der Maschine hintangehalten werden. Vor allem Trägheiten, insbesondere Massenträgheitsmomente der Achsen, endliche Genauigkeiten und Auflösungen der Stellantriebe für die Achsen, frequenzabhängige Einflüsse bzw. Schwingungen der Stellantriebe für die Achsen, Abweichungen im Übertragungsverhalten der Antriebsstränge, Temperatureinflüsse bzw. Temperaturveränderungen, und dergleichen, beeinflussen das dynamische Bewegungs verhalten der Maschine und somit die letztendlich auftretenden Ist- Abweichungen der Maschine. Durch die erfindungsgemäßen Maßnahmen ist es (z.B. im Falle der Bewegungsgenauigkeit) ermöglicht, wie geplant den Sollpunkt bzw. die zeitlich aufeinanderfolgenden Sollpunkte im Raum zu erreichen, ohne dass beispielsweise der TCP der Maschine im Zuge seiner Bewegungen im Raum gegenüber der geplanten Bahn schwingt, insbesondere in Bezug auf die Sollbewegung unter- oder übersteuert und dadurch abweicht. In vielen Bewegungen einer Maschine mit aktiven, steuerbaren Stellantrieben sind Schwingungen bzw. minimale Ruckelbewegungen involviert; beispielsweise aufgrund von Eigenschwingungen, Mitkopplungen bzw. Frequenzüberlagerungen von miteinander gekoppelten Komponenten der Maschine. Durch die erfindungsgemäßen Maßnahmen werden während der Bewegungsausführung auftretende, störende Frequenzen kompensiert (verstärkt oder reduziert und phasenverschoben) angesteuert und damit wird die Ist-Genauigkeit der Maschine im Zuge der Umsetzung der Soll- Vorgabe optimiert. The measures according to the invention enable a predetermined target specification to be met with high accuracy quickly and immediately, i.e., without numerous and thus lengthy iteration steps. Above all, little manual work and monitoring is required by the machine operator or commissioning technician, since 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, thereby mitigating vibration-related actual deviations of the machine. In particular, inertias, in particular mass moments of inertia of the axes, finite accuracies and resolutions of the actuators for the axes, frequency-dependent influences or vibrations of 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 temporally successive target points in space as planned, without, for example, the TCP of the machine oscillating relative to the planned path during its movements in space, in particular, under- or over-controlling with respect to the target movement and thus deviating. In many movements of a machine with active, controllable actuators, oscillations or minimal jerking movements are involved; for example, due to natural oscillations, positive feedback. or frequency overlaps between interconnected machine components. The measures according to the invention compensate for interfering frequencies occurring during the execution of the movement (amplified or reduced and phase-shifted), thus optimizing the actual accuracy of the machine during the implementation of the target specification.
Insbesondere kann es zweckmäßig sein, wenn im Schritt des rechnerischen Bestimmens von Parametern oder Signalen zur wenigstens teilweisen Kompensation von Ist- Abweichungen die Berechnung derart erfolgt, dass das dynamische Verhalten bzw. Schwingungs verhalten von wenigstens einer Achse bzw. von einem Antrieb sstrang der Maschine invertiert wird, insbesondere nach dem Prinzip einer Invertierung der Bewegung von zumindest einer Achse der Maschine. Im Speziellen kann eine Invertierung der Kinematik insbesondere unter Berücksichtigung des dynamischen Verhaltens der Maschine zur Berechnung der Kompensationsparameter verwendet werden. Beispielsweise kann aus der erfassten Abweichung und einer inversen Kinematik auf ein Signal rückgerechnet werden mit dem die Abweichung kompensiert werden kann. 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.
Das Sch wing verhalten an bestimmten Punkten kann z.B. durch Messung der Impulsantwort bestimmt werden. Dieses Sch wing verhalten wird beispielsweise als positionsabhängiges linearisiertes dynamisches Modell abgespeichert. Das dynamische Modell kann Abhängigkeiten von weiteren Parametern aufweisen. Bei Robotern sind dies typischerweise Abhängigkeiten von entsprechenden Achsstellungen bzw. Achspositionen. Das dynamische Modell kann aber auch weitere Abhängigkeiten aufweisen, z.B. Umwelteinflüsse wie Temperatur oder Feuchtigkeit, Einflüsse von Betriebsmodi, usw.. So ist Im Fall eines Pick-and-Place Roboters damit zu rechnen, dass das dynamische Modell z.B. auch vom Gewicht oder der Ausrichtung des Gegentandes abhängt den der Roboter zur Zeit bewegt. Das dynamische Modell kann z.B. linearisiert und zumindest positionsabhängig anschließend in die Steuerung des Roboters einfließen. The vibration behavior at specific 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 further 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 also depends, for example, 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.
Für Kompensationen ist es wichtig, das Übertragungsverhalten vom Kompensationseingang zum Verhalten des Gesamtsystems zu kennen. Das umfasst neben dem mechanischen Verhalten auch das dynamische Verhalten des Antriebsreglers und Einflüsse, die während der Bewegung auftreten (z.B. die Reibung insbesondere die Gleitreibung bei den jeweiligen Geschwindigkeiten). Vorteilhaft ist es, wenn das dynamische Modell derart bestimmt wird, dass es im Zuge der Ausführung einer Soll-Vorgabe entsteht, wobei diese Soll-Vorgabe der später gewünschten Soll-Vorgabe möglichst ähnlich sein soll. Auf diese Weise kann das dynamische Modell die oben genannten Einflüsse (z.B. Elastizitäten von Getrieben und/oder Dämpfung durch Gleitreibung) möglichst exakt beschreiben. 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 motion (e.g., friction, especially 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 accurately as possible.
Dieses Gesamtverhalten kann durch regelungstechnische Stimulationsverfahren ermittelt werden. Das kann beispielsweise durch Einbringen geeigneter zusätzlicher Anregungen am Eingang (beispielsweise Sprünge oder Spikes) und durch Messung der Reaktion am Ausgang erfolgen. Nach der anschließenden mathematischen Modellierung des dynamischen Modells steht dieses für die weiteren Schritte zur Verfügung. 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.
Das linearisierte dynamische Modell kann in Form einer mathematischen zeitdiskreten Übertragung sfunktion repräsentiert werden, wie es aus der zeitdiskreten Modellierung dynamischer Systeme über Differenzengleichungen bekannt ist. Diese Darstellung ermöglicht eine einfache Inversion des Übertragungsverhaltens. 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.
Beim Abfahren einer Bahn durch den Roboter wird von der Steuerung ein Sollsignal an die Antriebe gesendet. Durch Messung der tatsächlichen Position, z.B. des TCP, können Abweichungen zwischen Sollposition (folgend aus dem rein kinematischen Modell) und Ist-Position (folgend z.B. aus einer Messung) bestimmt werden. Diese Abweichung entsteht z.B. durch Elastizitäten, Reibungen insbesondere geschwindigkeitsabhängige Reibungen, Dämpfungen und weiteren Faktoren die im kinematischen Modell nicht berücksichtigt sind. Diese Abweichung wird im Weiteren zur Berechnung von Parametern oder Signalen zur wenigstens teilweisen Kompensation von Ist- Abweichungen verwendet. 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 (especially speed-dependent friction), damping, and other factors not considered in the kinematic model. This deviation is then used to calculate parameters or signals to at least partially compensate for actual deviations.
Diese Parameter oder Signale können derart errechnet werden, dass eine inverse Achstransformation auf die Abweichung angewendet wird. Daraus folgt beispielsweise ein Signal welches die Abweichung verursacht. Für sich genommen müsste, unter sonst gleichen Bedingungen, genau jenes Signal zur gleichen Abweichung in der Realität führen. Versieht man dieses Signal mit negativem Vorzeichen, kann es als Kompensationssignal verwendet werden, indem man es auf das Sollsignal, das an die Antriebe gesendet wird, aufaddiert. Das Sollsignal samt Kompensationssignal müsste dann eine Abweichung von Null ergeben. 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.
Vorteilhaft an dieser Vorgehensweise sind mehrere Punkte: Durch einfache Filter können Schwingungen vermieden werden, deren Anregung aus den geplanten Bewegungsverläufen kommt. Durch die Einbeziehung des dynamischen Modells und dessen Umkehrung können Schwingungen vermieden werden, deren Anregung aus der Mechanik stammt (z.B. dem Getriebe). Dazu kann mit Hilfe des dynamischen Modells ein kompensierendes Signal in den Sollwertverläufen addiert werden, das auch bei höheren Frequenzen noch Ist- Abweichungen effektiv reduziert. Damit wird der Wirkungsbereich von Kompensationssignalen zu höheren Frequenzen hin erweitert. There are several advantages to this approach: Simple filters can be used to prevent vibrations caused by the planned motion patterns. By incorporating the dynamic model and its inversion, vibrations caused by 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.
Die Verwendung eines Kompensationssignals geht über die Wirkung eines Filters hinaus, da nicht nur bestimmte Frequenzen unterdrückt werden, sondern aktiv in die Sollvorgabe eingegriffen wird und bestimmte Frequenzen bei Bedarf auch verstärkt werden können. 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.
Die Berechnung des Kompensationssignals ist nicht nur für quasistatische Anwendungen verwendbar (quasistatisch wäre z.B. die Positionierung an einem Punkt), da die Dynamik (z.B. Beschleunigung) mitberücksichtigt wird. Die Berechnung der Parameter oder Signale zur wenigstens teilweisen Kompensation wird also unter Berücksichtigung der Dynamik (Trägheiten, Beschleunigungen, Elastizitäten und Dämpfungen) durchgeführt. 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 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.
Das Bestimmen des dynamischen Modells ist vorab möglich und im späteren Betrieb der Maschine jederzeit abrufbar. The dynamic model can be determined in advance and can be retrieved at any time during subsequent operation of the machine.
Das dynamische System kann mit zuvor festgelegter Genauigkeit bestimmt werden. Je genauer das dynamische Modell des Systems bestimmt wird, desto größer ist auch die Möglichkeit der Einflussnahme auf das System bzw. kann die Kompensation entsprechend höhere Frequenzanteile nutzen. 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.
Das dynamische Modell kann auch auf andere baugleiche Maschinen übertragen werden. Wobei allerdings zu beachten ist, dass sich dabei auch Abweichungen in das dynamische Modell einschleichen können. Beispielsweise kann sich das dynamische Verhalten des Getriebes von Maschine zu Maschine unterscheiden. Entsprechende Übertragungen des dynamischen Modells sind somit mit Bedacht durchzuführen. 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.
Dementsprechend kann gemäß einer zweckmäßigen Maßnahme vorgesehen sein, dass die rechnerische Bestimmung von Parametern oder Signalen zur wenigstens teilweisen Kompensation von Ist- Abweichungen auf dem Prinzip einer inversen Übertragungsfunktion beruht. Diese technische Maßnahme ist mittels einer digitalen Steuervorrichtung praktikabel umsetzbar, sodass eine optimierte Ist-Genauigkeit zuverlässig bzw. funktionsstabil erzielbar ist. Insbesondere kann auch eine Kompensation errechnet werden, welche die Soll-Vorgabe verändert, die als Eingang für die Antriebsregler verwendet werden. Insbesondere kann ein derartiger Aufbau dadurch erfolgen, dass eine Vorsteuerung zum Einsatz kommt, wobei die Vorsteuerung das dynamische Modell berücksichtigt und als Ausgangsgröße das Kompensationssignal für den Antriebsregler vorgibt. Insbesondere eine Vorgabe der Position oder der Geschwindigkeit als Steuersignal erweist sich hier als vorteilhaft, da das dynamische Modell unter anderem Beschleunigungen modelliert, welche sich vor allem bei Positions- oder Geschwindigkeitsvorgaben auswirken. Accordingly, according to an appropriate measure, it can be provided that the computational determination of parameters or signals for at least partial compensation of actual deviations is 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 with functional stability. In particular, 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 an output variable. Specifying the position or speed as a control signal proves particularly advantageous here, since the dynamic model models, among other things, accelerations, which have a particularly significant impact on position or speed specifications.
Außerdem ist auf diese Weise eine höhere Genauigkeit erreichbar ohne Änderungen im Antriebsregler vorzunehmen. Vorteilhaft ist dies auch deshalb, da Antriebsregler üblicherweise nicht die Möglichkeit bieten ihre Konfiguration im laufenden Betrieb zu ändern. Der Eingriff auf Steuerungsseite ermöglicht somit eine Kompensation für beliebige Antriebe bzw. Motore. 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.
Die Steuerung der Maschine unter Verwendung der rechnerisch bestimmten Parameter oder Signale zur wenigstens teilweisen Kompensation von Ist- Abweichungen kann für zumindest eine der Achsen der Maschine genutzt werden. 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.
Alternativ oder in Kombination zu den vorstehend beschriebenen Maßnahmen, kann die Bestimmung der Parameter oder Signale zur wenigstens teilweisen Kompensation von Ist- Abweichungen derart erfolgen, dass Steuersignale bzw. Stellsignale für Antriebe von Achsen der Maschine eine Tilgung oder Minimierung von unerwünschten Abweichungen im Antriebsstrang der Maschine bewirken. Insbesondere kann die elektronische Steuervorrichtung dazu eingerichtet sein, Steuersignale bzw. Stellsignale für die Antriebe von Achsen der Maschine derart zu erzeugen, dass unerwünschte Abweichungen, z.B. Schwingungen, von wenigstens einer Achse der Maschine getilgt oder minimiert werden und dadurch Ist- Abweichungen der Maschine in Bezug auf die vorbestimmte Soll-Vorgabe getilgt oder minimiert werden. 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 undesirable 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 undesirable 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.
Entsprechend einer vorteilhaften Ausprägung kann vorgesehen sein, dass das dynamische Modell durch Messungen mittels einer Messvorrichtung bestimmt wird, insbesondere durch Messung der Positionsänderungen, Geschwindigkeits-, Kraft-, Druck- oder Drehmoment- Verhältnisse in Bezug auf zumindest einen vorbestimmten Punkt der Maschine, oder durch Messung von Ist- Abweichungen in Bezug auf zumindest einen vorbestimmten Punkt der Maschine, beispielsweise deren TCP, in Bezug auf den dreidimensionalen Raum. 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 in relation to at least one predetermined point of the machine, or by Measurement of actual deviations with respect to at least one predetermined point of the machine, for example its TCP, with respect to three-dimensional space.
Insbesondere kann vorgesehen sein, dass das kinematische Modell für Achstransformationen zur rechnerischen Bestimmung von idealisierten bzw. theoretischen Soll-Vorgaben oder Soll- Positionen der Maschine herangezogen wird und insbesondere die Geometrie der Maschine berücksichtigt, und wobei das dynamische Modell zur Erklärung der dabei auftretenden Abweichungen von diesen idealisierten bzw. theoretischen Soll-Vorgaben oder Soll-Positionen herangezogen wird. Dementsprechend berücksichtigt das dynamische Modell der Maschine das dynamische Bewegungsverhalten der Maschine, welches dynamische Bewegungs verhalten von den Positionen der Achsen der Maschine bzw. von den diversen Posen der Maschine abhängig ist. 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.
Vorteilhaft ist auch eine Ausprägung, gemäß welcher im dynamischen Modell mehrere unterschiedliche Raumpositionen oder mehrere unterschiedliche kinematische Ausladungen bzw. Ausladungsweiten eines vorbestimmten Punktes an einem Werkzeug der Maschine, eines sonstigen Arbeitspunktes der Maschine, eines TCP, oder eines Endeffektors der Maschine mitberücksichtigt werden. Dadurch können im dynamischen Model weitreichende Arbeitsräume und/oder Konfigurationen abgebildet sein, wodurch eine neue Bewegungsbahn in diesen Arbeitsräumen rasch und zugleich mit hoher Präzision umgesetzt werden kann. Another advantageous feature is a configuration in which several different spatial positions or several different kinematic projections or projection 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.
Gemäß einer Weiterbildung ist es möglich, dass die Bestimmung des dynamischen Modells in Bezug auf unterschiedliche Raumpositionen oder kinematische Ausladungen der Maschine stattfindet, welche insbesondere Bereiche eines Arbeitsraumes umfassen, in denen Bewegungen mit hoher Genauigkeit durchführt werden sollen, wobei insbesondere räumlich verteilte bzw. rasterförmig angeordnete Messpunkte bezogen auf Achsstellungen oder Koordinatensysteme verwendet werden. Auch dadurch kann die Programmierung einer geänderten Bewegungsbahn und deren hochgenaues Abfahren rasch umgesetzt werden. 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.
Ferner kann es zweckmäßig sein, wenn das dynamische Modell in Bezug auf eine Teilmenge von räumlichen Positionen der Maschine derart bestimmt wird, dass dieses aus zuvor bereits bestimmten dynamischen Modellen in räumlicher Nähe abgeleitet wird, insbesondere durch Interpolation oder Extrapolation bestimmt wird. Einerseits kann durch Interpolation das dynamische Modell nachträglich feiner granuliert werden. Andererseits kann es durch Extrapolation vergrößert werden. Darüber hinaus kann ausgehend von einer ersten Bewegungsbahn bei - lo der bereits ein dynamisches Modell aufgenommen wurde, die Bewegungsbahn schrittweise um geringe Verschiebungen in festgelegte Richtungen abgeändert werden. Beispielsweise können Änderungen in Höhenrichtung und/oder ein seitliches Versetzen oder Erweitern von Bahnen genutzt werden, um rasch neue, präzise umsetzbare Bewegungsbahn zu erzielen. Furthermore, it may 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 at - For a dynamic model that has already been recorded, the trajectory can be gradually modified by small shifts in specified directions. For example, changes in the vertical direction and/or lateral displacement or extension of trajectories can be used to quickly achieve new, precisely implementable trajectories.
Ferner kann es von Vorteil sein, wenn das dynamische Modell in Bezug auf den Fortschritt einer auszuführenden Bewegung bestimmt wird. Dadurch kann erreicht werden, dass ein schnelles Bestimmen des dynamischen Modells möglich ist. Insbesondere bei der Optimierung für eine Anwendung, bei der nur eine feststehende Bewegung erforderlich ist, die nicht verändert wird, kann dies hilfreich sein. 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.
Gemäß einer vorteilhaften Ausprägung ist die Maschine ein mehrachsiger Industrieroboter, welcher eine Mehrzahl von unabhängig voneinander positionierbaren, jedoch mechanisch gekoppelten Achsen umfasst, sodass eine Positionierungsabweichung einer ersten Achse Auswirkungen auf die Positionierung von seriell anschließenden, mechanisch gekoppelten Achsen hat. Durch das angegebene Verfahren können auch die sich kumulierenden Positionierungsabweichungen bei einem solchen mehrfach gekoppelten Antrieb sstrang gut kompensiert werden. 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.
Gemäß einer weiteren vorteilhaften Ausführung können die rechnerisch bestimmten Parameter oder Signale zur wenigstens teilweisen Kompensation von Ist- Abweichungen dazu genutzt werden, beim nochmaligen Ausführen bzw. Durchlaufen einer gleichen Soll-Vorgabe die Ist- Genauigkeit deutlich zu erhöhen. Die Kompensation mit den Parametern oder Signalen zur wenigstens teilweisen Kompensation von Bahnabweichungen entfaltet hier eine besonders große Wirkung, da die Maschine Kompensationssignale verwenden kann, die speziell für diese Soll-Vorgabe berechnet wurden. 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 calculated specifically for this target specification.
Des Weiteren kann vorgesehen sein, dass die wenigstens eine Steuervorrichtung eine iterativ lernende Steuerungskomponente umfasst, welche derart ausgeführt ist, dass Furthermore, it can be provided that the at least one control device comprises an iteratively learning control component which is designed such that
- die vorbestimmte Soll-Vorgabe in einem Durchlauf unter Verwendung der rechnerisch bestimmten Parameter oder Signale zur wenigstens teilweisen Kompensation von Ist- Abweichungen von der Maschine abgefahren wird und währenddessen noch auftretende Ist- Abweichungen bestimmt werden, was beispielsweise mittels einer extern zur Maschine angeordneten Messvorrichtung oder mittels roboterseitiger Sensoren, beispielsweise mittels am Endeffektor oder an anderen Stellen des Roboterarms angebrachten Sensoren, vorgenommen werden kann, und wobei a) diese noch auftretenden Ist- Abweichungen zur weiteren Verbesserung der genannten Parameter oder Signale zur wenigstens teilweisen Kompensation von Ist- Abweichungen verwendet werden, und wobei b) diese weiter verbesserten Parameter oder Signale zur wenigstens teilweisen Kompensation von Ist- Abweichungen in einem weiteren Durchlauf verwendet werden, um die vorbestimmte Soll-Vorgabe von der Maschine erneut abzufahren. Insbesondere gilt dies selbstverständlich in besonderer Weise beim nochmaligen Ausführen bzw. Durchlaufen einer gleichen Soll-Vorgabe. Auf diese Weise sind Ist- Abweichungen erzielbar, deren Abweichungen besonders gering sind, beispielsweise mehr als 10-mal kleiner sind, als dies mit herkömmlichen Steuerungen der Fall wäre. Typischerweise kann eine Ist-Genauigkeit um einen Faktor von über 10 verbessert werden. Wie stark die Verbesserung tatsächlich ist, hängt stark von der Anwendung und dem Aufbau der Mechanik der Maschine ab. Üblicherweise wirkt eine iterativ lernende Steuerungskomponente besonders gut bei wenig elastischen Mechaniken. Bei elastischen Mechaniken kann eine iterativ lernende Steuerung allerdings zu problematischen Schwingungen tendieren, was wiederum durch Verwenden des dynamischen Modells unter Kontrolle gebracht werden kann. - 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 is carried out, 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 can be used, and wherein a) these still occurring actual deviations 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 are used to at least partial compensation of actual deviations in a further run in order to run the machine through the predetermined target specification again. This naturally applies in particular when the same target specification is executed or run through again. In this way, actual deviations can be achieved whose deviations are particularly small, for example more than 10 times smaller than would be the case with conventional controls. Typically, an actual accuracy can be improved by a factor of over 10. The actual extent of the improvement depends heavily on the application and the structure of the machine's mechanics. An iteratively learning control component usually works particularly well with less elastic mechanics. However, in elastic mechanics, iterative learning control may tend to produce problematic oscillations, which can be controlled by using the dynamic model.
Gemäß einer weiteren Ausprägung ist es möglich, dass die vorstehend genannten Schritte a) und b) wenigstens einmal wiederholt werden. Durch diese schrittweisen Evaluierungen und Verbesserungen kann die erzielbare Ist- Genauigkeit sukzessive weiter gesteigert werden. 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.
Entsprechend einer vorteilhaften Weiterbildung kann vorgesehen sein, dass in dem dynamischen Modell nur eine Teilmenge der Achsen der Maschine modelliert ist, insbesondere nur jene Achse modelliert ist oder nur jene Achsen modelliert sind, welche die größten Trägheitsmomente oder die geringsten Steifigkeiten oder den größten Einfluss auf die resultierende Bewegung aufweisen. Dadurch kann auf effiziente Art und Weise eine hohe Ist-Genauigkeit erzielt werden. 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.
Insbesondere kann es vorteilhaft sein, wenn die Kompensation von Ist- Abweichungen gegenüber der vorbestimmten Soll-Vorgabe derart erfolgt, dass zu einem von dem kinematischen Modell kalkulatorisch abgeleiteten Basissignal für eine anzusteuemde Achse oder zu Basissignalen für mehrere anzusteuernde Achsen der wenigstens eine Parameter oder das wenigstens eine Signal zur wenigstens teilweisen Kompensation von Ist-Abweichungen, insbesondere ein Kompensations signal oder ein Kompensationswert, hinzugefügt wird, wodurch bewirkt wird, dass Ist- Abweichungen von der Soll-Vorgabe zumindest verringert werden. Dadurch kann das Führungsverhalten verbessert werden, wobei eine geeignete Kompensation von Störungen möglich ist und Stabilitätsprobleme hintangehalten werden. Von besonderem Vorteil ist diese Variante, wenn das dynamische Modell hinreichend genau ist, um Stabilitätsprobleme hinreichend genau zu kompensieren. In particular, it may be advantageous if the compensation of actual deviations from the predetermined target specification is carried out 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, which ensures that actual deviations from the target value are at least reduced. This can improve control behavior, allowing for appropriate compensation of disturbances and preventing stability problems. This variant is particularly advantageous when the dynamic model is sufficiently accurate to compensate for stability problems.
Ferner kann vorgesehen sein, dass die wenigstens eine Steuervorrichtung oder die iterativ lernende Steuerungskomponente dazu eingerichtet ist, bei der Bestimmung von weiter verbesserten Parametern oder Signalen nur solche Teilabschnitte der vorbestimmten Soll-Vorgabe zu beeinflussen bzw. zu optimieren, welche zuvor definiert wurden, oder bei denen Ist- Abweichungen vorliegen, welche über einem vorbestimmten Grenzwert liegen. Dadurch kann auf bestimmte Bahnabschnitte eines technischen Prozesses, welche besonders genau sein sollen, fokussiert werden. Dadurch ist eine Einsparung von Ressourcen oder Zeit erzielbar. Furthermore, it can be provided that the at least one control device or the iteratively learning control component is configured to influence or optimize, when determining further improved parameters or signals, only those sections of the predetermined target specification that were previously defined or for which actual deviations exist that exceed a predetermined limit. This makes it possible to focus on specific path sections of a technical process that should be particularly precise. This can result in savings in resources or time.
Darüber hinaus kann vorgesehen sein, dass ein wiederholtes Abfahren von Teilabschnitten der Soll-Vorgabe auf solche Teilabschnitte der Soll-Vorgabe beschränkt wird, bei welchen eine Ausladung eines vorbestimmten Punktes bzw. Arbeitspunktes der Maschine relativ zu einer Basis der Maschine vorliegt, die über einem vorbestimmten Ausladungs-Grenzwert liegt. In diesen Zonen sind Ist- Abweichungen in der Regel relativ groß. Durch die angegebenen Maßnahmen ist eine rasche und besonders nutzbringende Ermittlung der Parameter oder Signale zur Kompensation von Ist- Abweichungen erzielbar. 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.
Besonders vorteilhaft ist eine Ausprägung, gemäß welcher vorgesehen sein kann, dass zur Bestimmung des dynamischen Modells und/oder der Ist- Abweichungen ein Positionsmesssystem, beispielsweise ein Laservermessungssystem, verwendet wird, welches eine dynamische Messung der jeweiligen Raumpositionen von bewegten Abschnitten der Maschine ermöglicht. Dadurch kann eine präzise Positionserfassung selbst in Bezug auf bewegte Punkte oder Abschnitte der Maschine erzielt werden. 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.
Gemäß einer vorteilhaften Weiterbildung kann vorgesehen sein, dass das Positionsmesssystem wenigstens einen Lasertracker umfasst, welcher zur Maschine distanziert angeordnet ist. Dadurch kann im Vergleich zu Gebern an Servoantrieben der Maschine die Ist-Position von relevanten Punkten oder Abschnitten der Maschine in Bezug auf dreidimensionale Räume hochgenau bestimmt werden. Ferner kann es zweckmäßig sein, wenn das Positionsmesssystem wenigstens einen Inertialsensor umfasst, welcher an wenigstens einem Segment mit der Maschine verbunden ist. Auch dadurch kann eine praktikable Positionserfassung ermöglicht werden, wobei potenzielle Störkonturen im Arbeitsbereich der Maschine weitestgehend vermieden werden. Darüber hinaus können dadurch der Aufbau und die Inbetriebnahme des die Maschine umfassenden Automatisierungssystems vereinfacht werden. 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 space, compared to sensors on the machine's servo drives. Furthermore, it may be expedient for the position measuring system to include at least one inertial sensor connected to the machine at at least one segment. This can also enable practical position detection while largely avoiding potential interference contours in the machine's working area. Furthermore, this can simplify the setup and commissioning of the automation system encompassing the machine.
Darüber hinaus kann vorgesehen sein, dass Messwerte des Positionsmesssystems in die wenigstens eine elektronische Steuervorrichtung der Maschine in Echtzeit übertragen werden, insbesondere synchron zum Steuerung stakt der Steuervorrichtung übertragen werden. Dadurch kann ein Regelkreis oder eine Monitoringschleife aufgebaut werden, wodurch auf allfällige Positionierungsabweichungen möglichst zeitnah reagiert werden kann. Außerdem kann so dafür gesorgt werden, dass Messwerte in äquidistanten Zeitabständen in der Steuerung verarbeitet werden können. Einem Verlust von Messwerten oder dem Verrechnen des gleichen Messwertes in verschiedenen Steuerung stakten wird somit vorgebeugt. Eine Kompensation kann so auch für jeden Zeitpunkt in einem Signalverlauf bestimmt werden. Damit können Kompensationen für dynamische Effekte erreicht werden. 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.
Des Weiteren kann vorgesehen sein, dass die iterativ lernende Steuerungskomponente ein integraler Bestandteil der elektronischen Steuervorrichtung der Maschine ist, sodass insbesondere Synchronität und Echtzeitverhalten eines solchen Steuerungssystems inhärent erfüllt sind. 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.
Die der Erfindung zugrundeliegende Aufgabe wird auch durch eine elektronische Steuervorrichtung zur Optimierung der Ist-Genauigkeit einer Maschine mit mehreren Achsen in Bezug auf ein Abfahren einer vorbestimmten Soll-Vorgabe gelöst. Diese Maschine kann insbesondere durch einen Industrieroboter gebildet sein. Die wenigstens eine zentral, dezentral, oder verteilt ausgeführte Steuervorrichtung ist angepasst bzw. eingerichtet zum 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
- Verwenden eines kinematischen Modells dieser Maschine, welches kinematische Modell zumindest deren Geometrie berücksichtigt, - Using a kinematic model of this machine, which kinematic model takes into account at least its geometry,
- Verwenden eines dynamischen Modells dieser Maschine, welches zumindest ein zeitlich korreliertes, das heißt dynamisches, Bewegungsverhalten der Maschine berücksichtigt, wobei zum Bestimmen des dynamischen Modells dieser Maschine eine Messvorrichtung einbezogen wird bzw. umfasst ist, welche zum messtechnischen Erfassen von Daten über das dynamische Positionierungs- und Bewegungsverhalten dieser Maschine eingerichtet ist,- 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 used for the metrological recording of data about the dynamic positioning and movement behavior of this machine is set up,
- rechnerischen Bestimmen von Parametern oder Signalen zur wenigstens teilweisen Kompensation von Ist- Abweichungen bzw. Positionierungsabweichungen dieser Maschine in Bezug auf die vorbestimmte Soll-Vorgabe, insbesondere in Bezug auf einen vorbestimmten Punkt an einem Endeffektor oder Werkzeug eines Industrieroboters, wobei sowohl zumindest Teile des kinematischen Modells als auch zumindest Teile des dynamischen Modells verwendet werden, - 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,
- Steuern der mehrachsigen Maschine unter Verwendung der rechnerisch bestimmten Parameter oder Signale zur wenigstens teilweisen Kompensation von Ist- Abweichungen in Bezug auf die vorbestimmte Soll-Vorgabe. - 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.
Die mit einer solchen Steuervorrichtung erzielbaren vorteilhaften Wirkungen und Effekte sind den vorstehenden Beschreibungsteilen zu entnehmen. The advantageous effects and effects that can be achieved with such a control device can be found in the above description parts.
Entsprechend einer vorteilhaften Ausführungsform kann vorgesehen sein, dass die Steuervorrichtung eine erste bzw. standardmäßig vorgesehene Steuerungskomponente umfasst, welche zur Ansteuerung der Achsen der Maschine eingerichtet ist, und eine weitere, iterativ lernende Steuerungskomponente umfasst, welche zur genannten Bestimmung von Parametern oder Signalen zur wenigstens teilweisen Kompensation von Ist- Abweichungen bzw. Positionierungsabweichungen eingerichtet ist, und welche iterativ lernende Steuerungskomponente mit der ersten Steuerungskomponente datentechnisch koppelbar ist. Dadurch ist es ermöglicht, bestehende Automatisierungssysteme auf effiziente Art und Weise hinsichtlich der erzielbaren Bewegungs- bzw. Ist-Genauigkeit zu verbessern. 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.
Insbesondere kann es vorteilhaft sein, wenn die elektronische Steuervorrichtung der Maschine dazu eingerichtet ist, wenigstens einzelne Schritte des vorstehend beschriebenen Verfahrens umzusetzen oder auszuführen. 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.
Die Aufgabe der Erfindung wird ferner durch eine Maschine mit mehreren steuerbaren Achsen zur Ausführung von Stellbewegungen, insbesondere durch einen Industrieroboter gelöst, wobei diese Maschine eine elektronische Steuervorrichtung zur Steuerung der Achsen umfasst, welche Steuervorrichtung gemäß den diesbezüglichen Ansprüchen ausgebildet ist. 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.
Als besonderer Vorteil erweist sich hier die Aufteilung des kinematischen Modells und des dynamischen Modells. Nach dem Stand der Technik wird üblicherweise das kinematische Modell verwendet welches durch eine Kalibrierung (Soll-Ist- Abgleich) eine deutlich gesteigerte Positioniergenauigkeit erzielt. Ein dynamisches Modell wird üblicher Weise nicht zur Steuerung einer Maschine herangezogen, da dieses nicht auf einfache Weise zur Verfügung gestellt werden kann. Insbesondere durch Messung des dynamischen Modells nach dem zuvor beschriebenen Verfahren, ist die vorteilhafte Nutzung auch praxistauglich anwendbar. The separation of the kinematic model and the dynamic model proves to be a particular advantage. According to the state of the art, the kinematic A model is used that achieves significantly increased positioning accuracy through calibration (target-actual comparison). A dynamic model is not typically used to control a machine, as it cannot be readily provided. This advantageous use is also practical, particularly by measuring the dynamic model using the method described above.
Insbesondere gilt dies für mehrachsige Maschinen mit gekoppelten Achsen, da hier das dynamische Modell je nach Achsstellung deutlich variiert. Besonders vorteilhaft erweist sich hier auch die Möglichkeit einer Kompensation mittels Vorsteuerung sowie insbesondere deren Kombination mit einer lernenden Steuerung. 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.
Zum besseren Verständnis der Erfindung wird diese anhand der nachfolgenden Figuren näher erläutert. For a better understanding of the invention, it is explained in more detail using the following figures.
Es zeigen jeweils in stark vereinfachter, schematischer Darstellung: They show in a highly simplified, schematic representation:
Fig. 1 Eine Maschine mit mehreren Achsen zur programmgesteuerten Ausführung von zwei- oder dreidimensionalen Stellbewegungen; Fig. 1 A machine with several axes for the program-controlled execution of two- or three-dimensional positioning movements;
Fig. 2 eine elektronische Steuervorrichtung für eine Maschine mit mehreren Achsen. Fig. 2 an electronic control device for a machine with multiple axes.
Einführend sei festgehalten, dass in den unterschiedlich beschriebenen Ausführungsformen gleiche Teile mit gleichen Bezugszeichen bzw. gleichen Bauteilbezeichnungen versehen werden, wobei die in der gesamten Beschreibung enthaltenen Offenbarungen sinngemäß auf gleiche Teile mit gleichen Bezugszeichen bzw. gleichen Bauteilbezeichnungen übertragen werden können. Auch sind die in der Beschreibung gewählten Lageangaben, wie z.B. oben, unten, seitlich usw. auf die unmittelbar beschriebene sowie dargestellte Figur bezogen und sind diese Lageangaben bei einer Lageänderung sinngemäß auf die neue Lage zu übertragen. 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 mutatis mutandis 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 mutatis mutandis to the new position in the event of a change in position.
Im Kontext der vorliegenden Beschreibung sind die „Achsen der Maschine“ als „steuerbare Bewegungsachsen der Maschine“ zu verstehen. Diese Achsen können durch Gelenksachsen, Rotationsachsen und/oder Linearachsen gebildet sein. 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.
In den Fig. 1 und 2 ist ein technisches System veranschaulicht, mit welchem die erzielbare Bewegungs- bzw. Ist-Genauigkeit einer steuerbaren Maschine 1, insbesondere eines mehrachsigen Industrieroboters, verbessert werden kann. Hierfür sind eine spezielle elektronische Steuervorrichtung 3 und ein spezielles Optimierungs- bzw. Steuerverfahren für die Maschine 1 vorgesehen. 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.
Die Maschine 1 umfasst mehrere Achsen 2 mit welchen vorbestimmte Bewegungen von wenigstens einem Arbeitspunkt bzw. von wenigstens einem Endeffektor 10, beispielsweise einem Schweißbrenner, einer Auftragungsdüse für Lack oder Kleber, einem Werkstückgreifer, oder dergleichen, automatisiert ausführbar sind. Hierzu umfassen diese Stell- bzw. Bewegungsachsen 2 wie an sich bekannt steuerbare Antriebe 12, beispielsweise Stell- bzw. Servomotoren oder Linearantriebe wie zum Beispiel Kolben-Zylindereinheiten. Diese Antriebe 12 wirken auf Stellmechaniken ein, wie zum Beispiel gelenkig oder teleskopisch gelagerte Stellarme. Die wenigstens eine Steuervorrichtung 3 der Maschine steuert dabei die entsprechenden Antriebe 12 auf Basis eines softwaretechnisch hinterlegten Programmablaufes, wobei - wie ebenso an sich bekannt - eine Mehrzahl von Sensoren bzw. Gebern eingebunden sein können, welche auf den Programmablauf Einfluss haben. Eine Achse 2 oder eine Kombination von mehreren Achsen 2, insbesondere von steuerbaren Antrieben 12 und Stellmechaniken, kann auch als Antrieb sstrang der Maschine 1 bezeichnet werden. 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, as is known per se, for example actuators or servo motors or linear drives such as piston-cylinder units. 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.
Die von der Maschine 1 erzielbare Bewegungs- bzw. Ist- Genauigkeit in Bezug auf eine vorbestimmte bzw. planmäßige Soll-Vorgabe 4 - in Fig. 1 in vollen Linien beispielhaft als S- Kurve zwischen den Raumpunkten PI und P2 dargestellt - hängt unter anderem von Elastizitäten der Stellmechaniken der Achsen 2, von erzielbaren Positionierungsgenauigkeiten bzw. Positionierungsauflösungen der Antriebe 12, von der Präzision von allfälligen Bremsen für die Achsen 2, von sich verändernden Lastmomenten bzw. Au sladungs weiten 15, 16 des Endeffektors 10 relativ zur Basis der Maschine 1, von Abweichungen im Übertragungsverhalten des Antriebsstrangs, von Temperatureinflüssen, von Bewegungsgeschwindigkeiten, von Belastungsveränderungen, von mechanischen Schwingungen, und weiteren Faktoren ab. 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.
Demzufolge können ab einem gewissen Ausmaß als unbrauchbar oder unerwünscht geltende Ist- Abweichungen 5 - strichliert veranschaulicht - in Bezug auf die zwei- oder dreidimensional vorbestimmte Soll-Vorgabe 4 auftreten. Diese im Zuge von laufenden Stellbewegungen der Maschine 3 auftretenden Ist- Abweichungen 5 gegenüber der Soll-Vorgabe 4 können mit dem nachfolgend beschriebenen Optimierungsverfahren verringert bzw. kompensiert werden, insbesondere innerhalb von zufriedenstellenden, verbesserten Grenzwerten gehalten werden. Dabei wird von der betreffenden Maschine 1 ein datentechnisches, kinematisches Modell 6 erstellt und der Steuervorrichtung 3 zur Verfügung gestellt. Dieses kinematische Modell 6 bildet unter anderem wenigstens Teile des kinematischen bzw. geometrischen Aufbaus der Maschine 1 ab. Das kinematische Modell 6 kann auf Konstruktionsdaten und/oder Vermessungsdaten der Maschine 1 beruhen. Anhand des kinematischen Modells 6 ist es für die Steuervorrichtung 3 möglich, sogenannte Achstransformationen zu berechnen und dadurch zu ermitteln, welche Achsen 2 der Maschine 1 in welcher Weise zu steuern sind, um die gewünschte Soll-Vorgabe 4 umsetzen zu können. Aus dem kinematischen Modell 6 sind also von der Steuervorrichtung 3 Steuerbefehle für die Achsen 2 bzw. deren Antriebe 12 ableitbar, um die Soll-Vorgabe 4 in idealisierter Weise bzw. rein rechnerisch bestimmen zu können. Allerdings ist mit diesen planbasierten bzw. rechnungsbasierten Steuerungsvorgaben die Soll-Vorgabe 4 aufgrund der vorstehend beschriebenen Faktoren nur bedingt erzielbar. As a result, actual deviations 5, which are considered unusable or undesirable, may occur beyond a certain extent—illustrated by dashed lines—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, they can be kept within satisfactory, improved limit values. 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. Using the kinematic model 6, the control device 3 can calculate so-called axis transformations and thereby determine which axes 2 of the machine 1 are to be controlled and in what 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 be able to determine the target specification 4 in an idealized manner or purely mathematically. However, with these plan-based or invoice-based control specifications, target 4 can only be achieved to a limited extent due to the factors described above.
Das Optimierungsverfahren umfasst daher weiters eine Bestimmung eines datentechnischen, dynamischen Modells 7 der Maschine 1. Diese dynamische Modell 7 wird ebenso der Steuervorrichtung 3 zur Verwertung zur Verfügung gestellt oder grundsätzlich von der Steuervorrichtung 3 bestimmt. Das dynamische Modell 7 berücksichtigt zumindest ein zeitlich korreliertes, also dynamisches Bewegungsverhalten. Insbesondere kann das dynamische Modell 7 ein dynamisches Bewegungsverhalten der Maschine 1 beschreiben und zumindest indirekt die dabei auftretenden Diskrepanzen bzw. Abweichungen zwischen dem theoretischen bzw. planmäßigen Bewegungsverhalten bzw. Po sitionierungs verhalten der Achsen 2 (Soll-Verhalten) und dem tatsächlich resultierenden bzw. eintretenden Bewegungs verhalten bzw. Positionierung s verhalten der Achsen 2 (Ist- Verhalten) abbilden. Das dynamische Modell 7 ist daher mit einer datentechnischen Beschreibung über das Ist-Bewegungsverhalten der Maschine 7 vergleichbar bzw. bildet das dynamische Modell 7 das Ist-Bewegungs- oder Po sitionierungs verhalten der Maschine 1 datentechnisch ab. Insbesondere kann in dem dynamischen Modell ein Schwingungsverhalten der Maschine 1 bzw. von wenigstens einzelnen Achsen 2 der Maschine 1 im Zuge der Ausführung von zwei- oder dreidimensionalen Bewegungen berücksichtigt sein. 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 map 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, or the dynamic model 7 maps the actual movement or positioning behavior of the machine 1 in data terms. In particular, the dynamic model can take into account a 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.
Vorzugsweise ist zum Bestimmen des dynamischen Modells 7 der Maschine 1 eine Messvorrichtung 8 involviert, welche zum messtechnischen Erfassen von Daten über das dynamische Positionierungs- und Bewegungs verhalten der Maschine 1 eingerichtet ist. Diese Messvorrichtung 8 ist also zum Bestimmen von Ist-Daten bzw. zum Bestimmen des tatsächlichen, dynamischen Bewegungsverhaltens bzw. der tatsächlich auftretenden Ist- Abweichungen 5 eingerichtet. In vielen Fällen wird das dynamische Modell 7 von den jeweiligen Achsstellungen bzw. Eigenschaften des Antrieb sstrangs, insbesondere den Abweichungen vom linearen Übertragungsverhalten und weiteren externen Faktoren, z.B. einer zu bewegenden Last oder Umweltfaktoren, abhängen. Vorzugsweise wird das dynamische Modell abhängig von diesen Faktoren bestimmt, z.B. in Bezug auf mehrere Achs Stellungen bestimmt. Preferably, a measuring device 8 is involved to determine the dynamic model 7 of the machine 1, which measuring device is designed to measure data on the dynamic positioning and movement behavior of the machine 1. This measuring device 8 is therefore designed to determine actual data or to determine the actual, dynamic motion behavior or the actual deviations 5 that actually occur. 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 depending on these factors, e.g., with respect to multiple axis positions.
Die Messvorrichtung 8 kann ein- oder mehrkomponentig, insbesondere zentralisiert oder verteilt ausgeführt sein. Die Messvorrichtung 8 kann in Bezug auf die Maschine 1 extern angeordnet sein und/oder an der Maschine 1 bzw. an wenigstens einer ihrer Achsen 2 angeordnet sein. Insbesondere kann das dynamische Modell 7 durch Messungen mittels der Messvorrichtung 8 bestimmt werden, insbesondere durch Messung der Positionsänderungen von zumindest einem vorbestimmten Punkt der Maschine 1 oder durch Messung von Ist- Ab weichungen 5 von zumindest einem vorbestimmten Punkt der Maschine 1. Die Messvorrichtung 8 ist dazu eingerichtet die Bewegungen bzw. die zeitlich sich verändernden Positionen der Maschine 1 zu vermessen und datentechnisch aufzuzeichnen. Die Messvorrichtung 8 kann demnach als Positionsmesssystem 17 ausgeführt sein, welches das räumliche Bewegungs verhalten der Maschine 1 im Zuge von Bewegungen der Maschine 1 aufzeichnet. Je nach SI-Einheit der Soll- Vorgabe 4 kann die Messvorrichtung z.B. auch als Geschwindigkeits-, Kraft- oder Momen- ten-Messsystem aufgebaut sein. Die Auswahl entsprechender Messsysteme liegt aufgrund der Lehre zum technischen Handeln im Können des auf diesem technischen Gebiet tätigen Fachmannes. The measuring device 8 can be designed as a single- or multi-component device, in particular centralized or distributed. 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, for example, as a speed, force, or torque measuring system. Based on the teachings of technical action, the selection of appropriate measuring systems is within the skill of the specialist working in this technical field.
Ein praktikables Positionsmesssystem 17 kann wenigstens einen stationär angeordneten Lasertracker 18 mit hinreichender Messgenauigkeit in Bezug auf eine Vielzahl von Raumpunkten umfassen. Ein solcher Lasertracker 18 kann distanziert zu der zu vermessenden Maschine 1 angeordnet sein. Zweckmäßig ist es, wenn das Positionsmesssystem 17 eine 3D-Vermes- sung der Bewegungsabläufe bzw. Positionsveränderungen zumindest von Abschnitten der Maschine 1 in Echtzeit ermöglicht. 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.
Das Positionsmesssystem 17 kann alternativ oder in Kombination zu einem Lasertracker 18 wenigstens einen Inertialsensor 19 (Fig. 2) umfassen, welcher an wenigstens einer der Achsen 2 der Maschine 1 angeordnet ist, wie dies in Fig. 2 schematisch gezeigt ist. Zweckmäßig ist es, wenn die Erfassungs- bzw. Messwerte des Positionsmesssystems 17 in die wenigstens eine elektronische Steuervorrichtung 3 der Maschine 1 in Echtzeit übertragen werden, insbesondere synchron zum Steuerung stakt der Steuervorrichtung 3 übertragen werden. Diese Datenübertragung kann funktechnisch und/oder kabelgebunden erfolgen. The position measuring system 17 may, 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.
Basierend auf zumindest Teilen des kinematischen Modells 6 und des dynamischen Modells 7 werden von der Steuervorrichtung 3 sodann Parameter bzw. Signale 9 bestimmt, welche in weiterer Folge zur wenigstens teilweisen Kompensation von de facto auftretenden bzw. erwartungsgemäßen Ist- Abweichungen 5 der Maschine 1 entlang der vorbestimmten Soll-Vorgabe 4 herangezogen werden. Diese Ist- Abweichungen 5 werden beispielsweise durch die oben beschriebenen externen Faktoren bzw. Einflüsse verursacht. Die Soll-Vorgabe 4 bzw. die Ist- Abweichungen 5 können insbesondere in Bezug zu einem vorbestimmten Punkt am Endeffektor 10 oder Werkzeug der Maschine 1 stehen. Die rechnerische Bestimmung von Parametern oder Signalen 9 zur wenigstens teilweisen Kompensation von Ist- Abweichungen 5 kann gemäß einer zweckmäßigen Vorgangsweise auf einem Vergleich zwischen den Plan- bzw. Soll-Daten aus dem kinematischen Modell 6 und den Real- bzw. Ist-Daten unter Berücksichtigung des dynamischen Modell 7 aufbauen, vor allem weil das dynamische Modell 7 der Steuervorrichtung 3 Informationen bzw. Daten über das jeweilige dynamische Bewegungsverhalten der Maschine 1 liefern bzw. bereitstellen kann. 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, be related 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 partial compensation of 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 or 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.
Die Steuerung der Maschine 1 bzw. von wenigstens einer ihrer Achsen 2 erfolgt dann unter Einbindung bzw. Verwendung der rechnerisch bestimmten Parameter oder Signale 9 zur wenigstens teilweisen Kompensation von Ist- Abweichungen 5 in Bezug auf die vorbestimmte Soll-Vorgabe 4, wie dies in Fig. 2 schematisch veranschaulicht ist. Insbesondere kann ein vor allem vom kinematischen Modell 6 abgeleitetes Basissignal 14 zur grundsätzlichen Ansteuerung einer oder mehreren Achsen 2 mit dem wenigstens einen rechnerisch ermittelten Parameter oder Signal 9 zur wenigstens teilweisen Kompensation von Ist- Abweichungen 5 überlagert bzw. kombiniert oder verknüpft werden, um ein qualitativ verbessertes Steuersignal 11 zur Ansteuerung der wenigstens einen Achse 2 bzw. des wenigstens einen Antriebes 12 zu erhalten. Dieses verbesserte Steuersignal 11 kann insbesondere ein digitales Steuersignal sein, welches in weiterer Folge einem elektronischen Antriebsregler 20 zugeführt werden kann. Dieser Antriebsregler 20 kann wenigstens ein Ansteuersignal 21 erzeugen, welches zum Betreiben der wenigstens einen Achse 2 bzw. des wenigstens einen Antriebes 12 vorgesehen ist. Insbesondere kann vorgesehen sein, dass die wenigstens teilweise Kompensation von Ist- Abweichungen 5 gegenüber der vorbestimmten Soll-Vorgabe 4 derart erfolgt, dass zu einem von dem kinematischen Modell 6 kalkulatorisch abgeleiteten Basissignal 14 für eine anzusteuernde Achse 2 oder zu Basissignalen 14 für mehrere anzusteuemde Achsen 2 der wenigstens eine Parameter oder das wenigstens eine Signal 9 zur wenigstens teilweisen Kompensation von Ist- Abweichungen 5, insbesondere ein Kompensationssignal oder ein Kompensationswert, hinzugefügt wird, wodurch bewirkt wird, dass Ist- Abweichungen 5 von der Soll-Vorgabe 4 zumindest verringert werden. 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 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 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, whereby the actual deviations 5 from the target specification 4 are at least reduced.
Im Schritt des rechnerischen Bestimmens von Parametern oder Signalen 9 zur wenigstens teilweisen Kompensation von Ist- Abweichungen 5 kann die Berechnung derart erfolgen, dass unter Berücksichtigung des dynamischen Verhaltens bzw. Schwingungsverhaltens von wenigstens einer Achse 2 bzw. von wenigstens einem Antriebsstrang der Maschine 1 invertiert wird, insbesondere nach dem Prinzip einer Inversion des dynamischen Verhaltens des Antriebsstranges von zumindest einer Achse 2 der Maschine 1. Insbesondere kann die rechnerische Bestimmung derart erfolgen, dass Steuersignale 11 für Antriebe 12 von Achsen 2 der Maschine 1 eine Tilgung oder Minimierung von unerwünschten Abweichungen in einem Antriebsstrang der Maschine 1 bewirken. Insbesondere kann eine Tilgung oder Minimierung von Abweichungen vorgenommen werden, die durch den Antriebsstrang entstehen. Dadurch können Ist-Abweichungen 5 der Maschine 1 in Bezug auf die vorbestimmte Soll-Vorgabe 4 getilgt oder minimiert werden. 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.
Wie vorstehend ausgeführt ist es zweckmäßig, wenn das kinematische Modell 6 für Achstransformationen zur rechnerischen Bestimmung von idealisierten bzw. theoretischen Soll-Vorgaben 4 oder Soll-Positionen der Maschine 1 herangezogen wird und insbesondere die Geometrie der Maschine 1 berücksichtigt, während das dynamische Modell 7 verwendet wird um die rechnerische Bestimmung bzw. Ermittlung der Parameter oder Signale 9 zur wenigstens teilweisen Kompensation von Ist- Abweichungen 5 mit zu berücksichtigen. Die auftretenden Ist- Abweichungen 5 von dieser idealisierten bzw. theoretischen Soll-Vorgabe 4 oder Soll-Position werden durch die Messvorrichtung bestimmt. 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.
Im dynamischen Modell 7 können mehrere unterschiedliche Raumpositionen oder mehrere unterschiedliche kinematische Ausladungsweiten 15, 16 eines vorbestimmten Punktes an einem Werkzeug der Maschine 1, eines sonstigen Arbeitspunktes der Maschine 1, eines TCP, oder eines Endeffektors 10 der Maschine 1 mitberücksichtigt werden. Insbesondere ist das dynamische Modell 7 abhängig von der Positionierung der einzelnen Achsen. Dadurch ist ein umfassendes datentechnisches Abbild des dynamischen Bewegungsverhaltens der Maschine 1 im Raum und der dabei auftretenden Positionierungsabweichungen im Vergleich zu den jeweiligen Soll-Positionen der Maschine 1 bzw. ihrer Achsen 2 geschaffen. Dadurch sind sogar weitreichende Veränderungen der Soll-Vorgabe 4 rasch umsetzbar. In the dynamic model 7, several different spatial positions or several different kinematic projection widths 15, 16 of 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 machine 1. 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.
Die Bestimmung des dynamischen Modells 7 in Bezug auf unterschiedliche Raumpositionen oder kinematische Ausladungsweiten 15, 16 der Maschine 1 kann auch derart erfolgen, dass das dynamische Modell 7 nur Bereiche eines Arbeitsraumes der Maschine 1 umfasst, in denen Bewegungen mit hoher Genauigkeit durchführt werden sollen. Insbesondere können räumlich verteilte bzw. rasterförmig angeordnete Messpunkte bezogen auf Achs Stellungen oder Koordinatensysteme verwendet werden. 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.
Das dynamische Modell 7 in Bezug auf eine Teilmenge von räumlichen Positionen der Maschine 1 kann auch derart bestimmt werden, dass dieses aus zuvor bereits bestimmten dynamischen Modellen in räumlicher Nähe abgeleitet wird, insbesondere durch Interpolation oder Extrapolation bestimmt wird. 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.
Wie vor allem der Fig. 1 entnehmbar ist, kann die Maschine 1 durch einen mehrachsigen Industrieroboter gebildet sein, welcher eine Mehrzahl von unabhängig voneinander positionierbaren, jedoch mechanisch gekoppelten Achsen 2 umfasst. Bei einem solchen Industrieroboter hat eine Positionierungsabweichung einer basisnahen, ersten Achse erhebliche Auswirkungen auf die Positionierung von seriell anschließenden, mechanisch gekoppelten Achsen 2, insbesondere auf die Positionierungsgenauigkeit von dessen Endeffektor 10. 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.
Entsprechend einer vorteilhaften Weiterbildung kann die Steuervorrichtung 3 eine iterativ lernende Steuerungskomponente 13 umfassen, wie dies in Fig. 2 rein schematisch veranschaulicht ist. Diese iterativ lernende Steuerungskomponente 13 ist derart implementiert bzw. ausgeführt, dass die vorbestimmte Soll-Vorgabe 4 in einem initialen bzw. anfänglichen Durchlauf unter Verwendung der rechnerisch bestimmten Parameter oder Signale 9 zur wenigstens teilweisen Kompensation von Ist- Abweichungen 5 von der Maschine 1 abgefahren wird und die währenddessen noch auftretenden Ist-Abweichungen 5 bestimmt werden. Diese noch auftretenden Ist- Abweichungen 5 werden sodann zur weiteren Verbesserung der genannten Parameter oder Signale 9 zur wenigstens teilweisen Kompensation von Ist- Abweichungen 5 verwendet. Die weiter verbesserten Parameter oder Signale 9 zur wenigstens teilweisen Kompensation von Ist-Abweichungen 5 werden dann in wenigstens einem weiteren Durchlauf verwendet, um die vorbestimmte Soll-Vorgabe 4 von der Maschine 1 erneut abzufahren, wobei in diesem weiteren Durchlauf die Ist-Genauigkeit in der Regel weiter erhöht sein wird. Entsprechend einem iterativ lernenden Steuerungskonzept werden die genannten Ausführungs-, Ermittlungs- und Korrekturschritte mehrmals wiederholt, wobei mit zunehmender Anzahl von Durchläufen die Ist-Genauigkeit weiter erhöht werden kann. Dies ist vor allem dann der Fall, wenn das dynamische Modell 7 hinreichend genau bestimmt wird. 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 partial compensation of 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 partial compensation of actual deviations 5. used. 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, wherein 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.
Zweckmäßig kann es sein, wenn in dem dynamischen Modell 7 nur eine Teilmenge der Achsen 2 der Maschine 1 modelliert ist, insbesondere nur jene Achse modelliert ist oder nur jene Achsen 2 modelliert sind, welche die größten Trägheitsmomente oder die geringsten Steifigkeiten oder den größten Einfluss auf die Bewegung aufweisen. Dadurch kann mit minimiertem Aufwand eine erhebliche Verbesserung der Ist-Genauigkeit erzielt werden. Ferner kann die wenigstens eine Steuervorrichtung 3 oder die iterativ lernende Steuerungskomponente 13 dazu eingerichtet sein, bei der Bestimmung von weiter verbesserten Parametern oder Signalen 9 nur solche Teilabschnitte der vorbestimmten Soll-Vorgabe 4 zu beeinflussen, welche zuvor von einem Anwender definiert wurden, oder bei denen Ist- Abweichungen 5 vorliegen, welche über einem vorbestimmten Grenzwert liegen. Ebenso kann ein wiederholtes Abfahren von Teilabschnitten der Soll-Vorgabe 4 auf solche Teilabschnitte der Soll-Vorgabe 4 beschränkt sein, bei welchen eine Ausladung eines vorbestimmten Punktes oder Arbeitspunktes der Maschine 1 relativ zu einer Basis der Maschine 1 vorliegt, die über einem vorbestimmten Ausladungs-Grenzwert liegt. 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.
Die iterativ lernende Steuerungskomponente 13 kann ein integraler Bestandteil der elektronischen Steuervorrichtung 3 der Maschine 1 sein, sodass insbesondere Synchronität und Echtzeitverhalten eines solchen Steuerungssystems inhärent erfüllt sind. 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.
Die Steuervorrichtung 3 kann zentralisiert ausgeführt sein, oder verteilt ausgeführt sein und mehrere miteinander kommunizierende Steuerungseinheiten umfassen. Insbesondere kann die Steuervorrichtung 3 eine erste Steuerungskomponente umfassen, welche zur Ansteuerung der Achsen 2 der Maschine 1 eingerichtet ist, und eine weitere, iterativ lernende Steuerungskomponente 13 umfassen, welche zur genannten Bestimmung von Parametern oder Signalen 9 zur wenigstens teilweisen Kompensation von Ist- Abweichungen eingerichtet ist, und welche iterativ lernende Steuerungskomponente 13 mit der ersten Steuerungskomponente datentechnisch koppelbar ist oder gekoppelt ist. Die wenigstens eine elektronische Steuervorrichtung 3 ist dazu eingerichtet, die Schritte des vorstehend beschriebenen und in den Ansprüchen angegebenen Verfahrens auszuführen. 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, which is configured to control the axes 2 of the machine 1, and a further, iteratively learning control component 13, which is configured to determine parameters or signals 9 for at least partially compensating actual deviations, and which Iteratively learning control component 13 is or can be coupled to the first control component for data purposes. 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.
Die Ausführungsbeispiele zeigen mögliche Ausführungsvarianten, wobei an dieser Stelle bemerkt sei, dass die Erfindung nicht auf die speziell dargestellten Ausführungsvarianten derselben eingeschränkt ist, sondern vielmehr auch diverse Kombinationen der einzelnen Ausführungsvarianten untereinander möglich sind und diese Variationsmöglichkeit aufgrund der Lehre zum technischen Handeln durch gegenständliche Erfindung im Können des auf diesem technischen Gebiet tätigen Fachmannes liegt. 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.
Der Schutzbereich ist durch die Ansprüche bestimmt. Die Beschreibung und die Zeichnungen sind jedoch zur Auslegung der Ansprüche heranzuziehen. Einzelmerkmale oder Merkmalskombinationen aus den gezeigten und beschriebenen unterschiedlichen Ausführungsbeispielen können für sich eigenständige erfinderische Lösungen darstellen. Die den eigenständigen erfinderischen Lösungen zugrundeliegende Aufgabe kann der Beschreibung entnommen werden. 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.
Der Ordnung halber sei abschließend darauf hingewiesen, dass zum besseren Verständnis des Aufbaus Elemente teilweise unmaßstäblich und/oder vergrößert und/oder verkleinert dargestellt wurden. 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.
Bezugszeichenaufstellung Reference symbol list
Maschine machine
Achsen Axles
S teuervorrichtung Control device
Soll-Vorgabe Target specification
Ist- Abweichungen kinematischen Modells dynamischen Modells Actual deviations of kinematic model dynamic model
Mes s Vorrichtung Measuring device
Signale (Kompensations Signale) Signals (compensation signals)
Endeffektor End effector
Steuersignale Control signals
Antriebe iterativ lernende SteuerungskomponenteDrives iteratively learning control component
Basissignal Base signal
Ausladungsweite Projection width
Ausladungsweite Projection width
Messsystem insbesondere PositionsmesssystemMeasuring system, especially position measuring system
Lasertracker Laser tracker
Inertialsensor Inertial sensor
Antriebsregler Drive controller
Ansteuersignal Control signal
Claims
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102024108996.2A DE102024108996A1 (en) | 2024-03-28 | 2024-03-28 | Method and control device for optimizing the actual accuracy of a multi-axis machine |
| DE102024108996.2 | 2024-03-28 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2025199560A1 true WO2025199560A1 (en) | 2025-10-02 |
Family
ID=95252100
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/AT2025/060097 Pending WO2025199553A1 (en) | 2024-03-28 | 2025-03-05 | Method and system for improving the actual accuracy of an output-side movement |
| PCT/AT2025/060139 Pending WO2025199560A1 (en) | 2024-03-28 | 2025-03-26 | Method and control device for optimising the actual accuracy of a machine having a plurality of axles |
Family Applications Before (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/AT2025/060097 Pending WO2025199553A1 (en) | 2024-03-28 | 2025-03-05 | Method and system for improving the actual accuracy of an output-side movement |
Country Status (2)
| Country | Link |
|---|---|
| DE (1) | DE102024108996A1 (en) |
| WO (2) | WO2025199553A1 (en) |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE10064182A1 (en) * | 2000-10-19 | 2002-05-08 | Liebherr Werk Nenzing | Crane or excavator for handling a load suspended from a load rope with load swing damping |
| EP1132790B1 (en) | 2000-02-10 | 2003-06-18 | Fanuc Ltd | Controller for machine |
| EP2089780B1 (en) * | 2006-10-30 | 2012-09-05 | Franz Ehrenleitner | Method for eliminating the lag error of the operating point of a device |
| WO2018037011A1 (en) * | 2016-08-26 | 2018-03-01 | Siemens Aktiengesellschaft | Detent torque compensation in an industrial robot |
| US20220314450A1 (en) | 2021-03-31 | 2022-10-06 | Seiko Epson Corporation | Method For Controlling Robot, Robot System, And Storage Medium |
Family Cites Families (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5155423A (en) | 1986-02-18 | 1992-10-13 | Robotics Research Corporation | Industrial robot with servo |
| US6258007B1 (en) | 1999-05-27 | 2001-07-10 | Teijin Seiki Boston, Inc | Multi-sensor harmonic drive actuator arrangement assembly |
| DE10312025A1 (en) * | 2003-03-18 | 2004-10-07 | Delta-X GmbH Ingenieurgesellschaft Gesellschaft für Strukturanalyse | Position control error compensation method for machine, involves compensation mechanism for deformations of processing machines with continuously measuring circuit utilized on basis of finite element method computation |
| JP2006110702A (en) | 2004-10-18 | 2006-04-27 | Fanuc Ltd | Robot having learning control function, and method for controlling robot |
| DE102007024143A1 (en) * | 2007-05-24 | 2008-11-27 | Dürr Systems GmbH | Motion control for elastic robot structures |
| JP5279299B2 (en) | 2008-02-29 | 2013-09-04 | キヤノン株式会社 | POSITION CONTROL APPARATUS, EXPOSURE APPARATUS, AND DEVICE MANUFACTURING METHOD EQUIPPED WITH AN ITS |
| US8473103B2 (en) | 2009-01-27 | 2013-06-25 | Fanuc Robotics America, Inc. | Secondary position feedback control of a robot |
| CN102163047B (en) | 2010-02-19 | 2014-02-12 | 发那科株式会社 | Robot with learning control function |
| JP6784722B2 (en) * | 2018-06-28 | 2020-11-11 | ファナック株式会社 | Output device, control device, and evaluation function value output method |
| JP6806746B2 (en) * | 2018-09-21 | 2021-01-06 | ファナック株式会社 | Motor control device |
| JP7405537B2 (en) * | 2019-09-05 | 2023-12-26 | ファナック株式会社 | Machine learning device, servo control device, servo control system and machine learning method |
| DE102020127532B3 (en) * | 2020-10-20 | 2021-11-11 | Deutsches Zentrum für Luft- und Raumfahrt e.V. | Control method for controlling the torque and / or the position of at least one elastic joint of a handling device, torque controller, position controller and use of the method for controlling the position and / or the torque of at least one elastic joint of a handling device |
-
2024
- 2024-03-28 DE DE102024108996.2A patent/DE102024108996A1/en active Pending
-
2025
- 2025-03-05 WO PCT/AT2025/060097 patent/WO2025199553A1/en active Pending
- 2025-03-26 WO PCT/AT2025/060139 patent/WO2025199560A1/en active Pending
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP1132790B1 (en) | 2000-02-10 | 2003-06-18 | Fanuc Ltd | Controller for machine |
| DE10064182A1 (en) * | 2000-10-19 | 2002-05-08 | Liebherr Werk Nenzing | Crane or excavator for handling a load suspended from a load rope with load swing damping |
| EP2089780B1 (en) * | 2006-10-30 | 2012-09-05 | Franz Ehrenleitner | Method for eliminating the lag error of the operating point of a device |
| WO2018037011A1 (en) * | 2016-08-26 | 2018-03-01 | Siemens Aktiengesellschaft | Detent torque compensation in an industrial robot |
| US20220314450A1 (en) | 2021-03-31 | 2022-10-06 | Seiko Epson Corporation | Method For Controlling Robot, Robot System, And Storage Medium |
Also Published As
| Publication number | Publication date |
|---|---|
| DE102024108996A1 (en) | 2025-10-02 |
| WO2025199553A1 (en) | 2025-10-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE102011011681B4 (en) | Robot with a learning control function | |
| DE102009049172B4 (en) | Method and device for controlling a manipulator | |
| EP2954986B1 (en) | Apparatus and method for managing and controlling motion of a multiple body system | |
| DE2656433C3 (en) | Method and arrangement for the control of manipulators and industrial robots | |
| DE102015010124B4 (en) | A robot program generating device that generates a robot program for reducing bumps of the joints of the robot | |
| DE102018115279B4 (en) | ROBOT THAT PERFORMS LEARNING CONTROL IN APPLICATIONS THAT REQUIRE CONSTANT SPEED, AND CONTROL METHODS FOR SUCH | |
| WO2008141730A1 (en) | Movement controller for elastic robot structures | |
| DE19847339A1 (en) | Servo control method for drive system | |
| DE10321970A1 (en) | Method for guiding the movement of a movable machine element of a numerically controlled machine tool or production machine | |
| DE102004021468A1 (en) | Method for controlling a machine, in particular an industrial robot | |
| DE112014006247T5 (en) | Motor controller | |
| EP1980374A2 (en) | Robot control, industrial robot and method for obtaining an absolutely precise model | |
| EP3292445B1 (en) | Trajectory determination method for non-productive movements | |
| AT525225A1 (en) | Method and device for determining a time-optimal trajectory | |
| DE102005048390A1 (en) | Method and device for motion control of a movable machine element of a machine | |
| EP0931283B1 (en) | Method and control structure for controlling moments in numerically controlled elastic (and therefore oscillation-capable) multiple mass systems | |
| DE102017217270B4 (en) | Servo motor control apparatus, servo motor control method and program for controlling a servo motor | |
| DE19500738C1 (en) | System and method for controlling a motor-driven jointed arm | |
| WO2025199560A1 (en) | Method and control device for optimising the actual accuracy of a machine having a plurality of axles | |
| AT506758B1 (en) | METHOD FOR DAMPING MACHINE RESONANCES | |
| DE102022126205B4 (en) | Robotic system for moving a payload with minimal payload sway and increased positioning accuracy | |
| EP1708058B1 (en) | Method for compensating the oscillations of a main axis | |
| EP3961320B1 (en) | Method and device for guiding the movement of a movable machine element of a machine | |
| EP2016471B1 (en) | Method for coordinating drive arrangements in a machine tool, track design unit and associated machine tool | |
| EP1742131B1 (en) | Method for influencing a controller or for controlling a movement unit and controller or controller components of a movement unit |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 25721726 Country of ref document: EP Kind code of ref document: A1 |