Method of controlling a manipulator of an industrial robot, control system and industrial robot
By determining position-dependent load values for the manipulator of an industrial robot and modifying the trajectory to optimize performance parameters, the limitations of workspace and load capacity in existing technologies are solved, enabling more flexible and efficient manipulator control.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-02-11
- Publication Date
- 2026-03-24
AI Technical Summary
In the existing technology, the manipulators of industrial robots are designed too conservatively, resulting in limited workspace and load capacity, which prevents them from fully utilizing their potential, and the control methods are complex and inflexible.
By providing candidate trajectories to the manipulator, position-dependent load values are determined, and the trajectory is modified based on these values to expand the workspace and load capacity. The performance parameters of the manipulator are optimized by leveraging the effects of dynamic loads.
Without shortening the lifespan of mechanical components, the workspace and load capacity of the manipulator are expanded, the manipulator's flexibility and efficiency are improved, and the control method is simplified.
Smart Images

Figure CN116867616B_ABST
Abstract
Description
Technical Field
[0001] This disclosure generally relates to the control of manipulators. In particular, a method for controlling a manipulator of an industrial robot having multiple joints, a control system for controlling a manipulator of an industrial robot having multiple joints, and an industrial robot including a manipulator and a control system are provided. Background Technology
[0002] Industrial robots can include manipulators and control systems for controlling the movement of the manipulators according to robot programs. The structural integrity of the manipulator's mechanical components largely depends on the payload and the manipulator's range of motion. Examples of such mechanical components are the manipulator's links and bearings. The payload can be an object carried by the manipulator's tool. Under both static and dynamic load conditions, the payload and range of motion limit the structural integrity of the manipulator's mechanical components.
[0003] When designing a manipulator, numerous design options are available that influence structural integrity and service life. For each mechanical component, a maximum static load and one or more maximum dynamic loads can be specified, taking into account the component's lifespan. For example, a manipulator's mechanical components can be configured to withstand high loads at low speeds and significantly lower loads at high speeds. These limitations must be considered when controlling the manipulator's movement. In some prior art solutions, worst-case constant limits are selected for each mechanical component. Therefore, this limitation significantly reduces the manipulator's workspace under high loads and significantly reduces the maximum load the manipulator can carry.
[0004] WO2019186146A1 discloses a system for robot-human collaboration. The system includes a multi-axis robot; one or more torque sensors, each configured to measure torque about a corresponding axis of the multi-axis robot; and a controller configured to receive one or more torque measurements obtained from the one or more torque sensors, compare the one or more torque measurements or a function of the one or more torque measurements with a threshold, and control the multi-axis robot based on the comparison. Summary of the Invention
[0005] In some existing industrial robots, maximum values are defined for each of the following: payload, speed, acceleration, and position of a particular manipulator. While these maximum values ensure that the maximum total load on the manipulator's mechanical components is not exceeded and that a specific payload can be used at a specific speed and acceleration at each position within a given workspace, these maximum values and workspaces are often overly conservative. Therefore, this implies a fixed size based on the worst-case scenario that would result in the manipulator's full potential being unused.
[0006] One object of this disclosure is to provide a method for controlling a manipulator of an industrial robot, which improves one or more performance parameters of the manipulator without reducing the lifespan of its mechanical components. A more specific object of this disclosure is to provide a method for controlling a manipulator of an industrial robot, which allows the workspace of the manipulator to be expanded without reducing the lifespan of its mechanical components.
[0007] Another object of this disclosure is to provide a method for controlling a manipulator of an industrial robot, which is effective.
[0008] Another object of this disclosure is to provide a method for controlling a manipulator of an industrial robot, the method being flexible.
[0009] Another object of this disclosure is to provide a method for controlling a manipulator of an industrial robot that is less complex.
[0010] Another object of this disclosure is to provide a method for controlling a manipulator of an industrial robot, which can be executed in real time.
[0011] Another object of this disclosure is to provide a method for controlling a manipulator of an industrial robot that is cost-effective.
[0012] Another object of the present invention is to provide a control method for the manipulator of an industrial robot, which comprehensively solves several or all of the above-mentioned objects.
[0013] Another object of the present invention is to provide a control system for controlling a manipulator of an industrial robot, which solves one, several or all of the above-mentioned objects.
[0014] Another object of the present invention is to provide an industrial robot including a manipulator and a control system, which solves one, several or all of the above-mentioned objects.
[0015] According to one aspect, a method is provided for controlling a manipulator of an industrial robot having multiple joints, the method comprising: providing a candidate trajectory for the manipulator; determining at least one position-related load for the candidate trajectory, the position-related load value representing at least one position-related load acting on the manipulator; modifying the candidate trajectory based on the at least one position-related load value to provide a modified trajectory; and executing the modified trajectory by the manipulator.
[0016] This method is based on the fact that the maximum acceptable total load, given the lifespan of a mechanical component, is not static. Instead, the maximum total load depends on the contribution of position-dependent loads to the total load. Dynamic loads on manipulator mechanical components are generally more significant than static loads. Due to the dynamic behavior of the manipulator, mechanical components are more prone to failure due to mechanical fatigue than to reaching the maximum static load. For many mechanical components, lifespan depends on a combination of speed and torque. For example, the permissible tilting load on a bearing may be relatively low under dynamic conditions but relatively high under near-static conditions. Therefore, a higher total load can be allowed if position-dependent loads constitute a larger portion of the total load.
[0017] By providing a modified trajectory based on at least one position-related load value determined for a candidate trajectory, this method enables the manipulator to perform additional trajectories in many cases without compromising the lifespan of the manipulator's mechanical components, given a manipulator rating. This method allows for an expanded workspace and / or enables the manipulator to carry heavier payloads, albeit at a lower performance level, without shortening the lifespan of the manipulator's mechanical components. Examples of such mechanical components are the manipulator's linkages, bearings, gearbox, and motor. If the modified trajectory is partially or entirely within the expanded workspace (previously prevented by prior art control solutions), the manipulator's performance may be limited within the expanded workspace (e.g., by limiting payload, speed, and / or acceleration within the expanded workspace).
[0018] When the position-dependent load is within the margin of the maximum position-dependent load representing the maximum static load on the mechanical component with respect to the dimensional life of the mechanical component, the total load on the mechanical component (including position-dependent load, velocity-dependent load, and acceleration-dependent load) can be increased to allow for additional force or torque until the maximum total load on the mechanical component with respect to the dimensional life of the mechanical component is reached. By increasing the total load in this way, the amount of force and torque available for the velocity-dependent and acceleration-dependent terms can be increased.
[0019] The manipulator can be programmable on three or more axes, such as six or seven axes. The manipulator may include a motor and gearbox at each joint. The joints can be rotary and / or translational joints.
[0020] Candidate trajectories can be provided in various ways. These trajectories can be input by the user or generated by a robot program executed within the industrial robot's control system.
[0021] At least one position-dependent load may include one or more forces acting on mechanical components of the manipulator, and / or one or more torques acting on mechanical components of the manipulator. Therefore, determining at least one position-dependent load value representing at least one position-dependent load acting on the manipulator for a candidate trajectory may include examining the position-dependent components of the forces and torques. The determination of at least one position-dependent load value may be performed at each moment, for example, at a frequency of at least 10 Hz, such as 100 Hz.
[0022] Based on the fundamental optimal or best lifespan of one or more mechanical components of the manipulator, a candidate trajectory can be modified based on at least one position-related load value to provide a modified trajectory. The method may also include informing the user how to modify the candidate trajectory to provide the modified trajectory.
[0023] At least one position-related load may include a gravity load. Alternatively or additionally, at least one position-related load may include a position-related force and / or torque from one or more springs acting on the actuator.
[0024] Modifying a candidate trajectory to provide a modified trajectory may include modifying the velocity of one or more joints, the acceleration of one or more joints, and / or the path of the candidate trajectory. For example, velocity and acceleration may be limited for a modified trajectory, such as when increasing the total load to allow for additional force or torque. The method may also include notifying the user, for example, by displaying velocity and / or acceleration limitations via a display.
[0025] The method may further include providing a model describing the static and dynamic characteristics of the manipulator, the model having position-dependent load terms; determining at least one position-dependent load value for a candidate trajectory based on the position-dependent load terms; determining load constraints on load parameters of the manipulator's mechanical components based on the at least one position-dependent load value; and determining the modified trajectory of the manipulator by solving an optimization problem with an objective function and load constraints. The load parameters may be the total load as described above. The load parameters may be force or torque.
[0026] For example, the objective function could be to minimize time, but it could also be to minimize energy consumption, noise, or mechanical fatigue. For instance, at each time step, at least one location-dependent load value, load constraints, and modified trajectory can be determined through dynamic optimization iteratively.
[0027] This model enables the determination of load effects at arbitrary locations on the manipulator for each candidate trajectory. Therefore, the use of dedicated sensors for measuring manipulator loads can be eliminated. By determining load constraints based on at least one position-dependent load value, the manipulator's position, velocity, and acceleration can be adjusted to provide a dynamic workspace dependent on at least one position-dependent load. Load constraints can be determined based on the fundamental optimal or best-case lifetime of one or more mechanical components of the manipulator.
[0028] The model may include one or more inertial terms defining the manipulator's inertia; one or more centripetal terms defining the manipulator's centripetal load; one or more gravity terms defining the manipulator's gravitational load; and / or one or more frictional terms defining the frictional load for each joint. Each inertial term may depend on one, several, or all of the joint positions and / or accelerations. Each centripetal term may depend on one, several, or all of the joint positions and / or velocities. Each gravity term may depend on one, several, or all of the joint positions.
[0029] When the position-related load value of a position-related load item is lower than the position-related load threshold, the load constraint can be determined as a relatively low load constraint value. When the position-related load value is higher than the position-related load threshold, the load constraint can be determined as a relatively high load constraint value. The method may also include, for example, notifying the user via a display that the load constraint has been determined as a relatively high load constraint value, the position-related load item is higher than the position-related load threshold, and the speed and / or acceleration is limited. Therefore, the user can be notified when the manipulator increases a performance parameter at the expense of another performance parameter.
[0030] At least one position-dependent load value can be determined for the manipulator when carrying a payload. Therefore, this method can consider the payload when determining at least one position-dependent load value for a candidate trajectory and when modifying the candidate trajectory to provide a modified trajectory. However, this method also has some advantages, such as an expanded workspace when the manipulator is not carrying a payload.
[0031] According to another aspect, a control system for controlling a manipulator of an industrial robot having multiple joints is provided. The control system includes at least one data processing device and at least one memory storing a computer program thereon. The computer program includes program code that, when executed by the at least one data processing device, causes the at least one data processing device to perform the following steps: providing a candidate trajectory for the manipulator; determining at least one position-related load for the candidate trajectory, the position-related load value representing at least one position-related load acting on the manipulator; modifying the candidate trajectory based on the at least one position-related load value to provide a modified trajectory; and executing the modified trajectory by the manipulator.
[0032] At least one location-dependent load may include a gravity load.
[0033] Modifying candidate trajectories to provide modified trajectories may include modifying the velocities of one or more joints, the accelerations of one or more joints, and / or the paths of the candidate trajectories.
[0034] The computer program may include program code that, when executed by at least one data processing device, causes the at least one data processing device to perform the following steps: providing a model describing the static and dynamic characteristics of a manipulator, the model having position-dependent load terms; determining at least one position-dependent load value for a candidate trajectory based on the position-dependent load terms; determining load constraints on load parameters of mechanical components of the manipulator based on the at least one position-dependent load value; and determining a modified trajectory of the manipulator by solving an optimization problem having an objective function and load constraints.
[0035] The model may include: one or more inertial terms defining the inertia of the manipulator; one or more centripetal terms defining the centripetal load of the manipulator; one or more gravity terms defining the gravitational load of the manipulator; and / or one or more friction terms defining the frictional load of each joint.
[0036] When the location-related load value of a location-related load item is lower than the location-related load threshold, the load constraint can be determined as a relatively low load constraint value. When the location-related load value is higher than the location-related load threshold, the load constraint can be determined as a relatively high load constraint value.
[0037] When carrying a payload, at least one position-dependent load value can be determined for the manipulator.
[0038] According to another aspect, an industrial robot including a manipulator and a control system according to the present disclosure is provided. Attached Figure Description
[0039] Further details, advantages, and aspects of this disclosure will become apparent from the following description taken in conjunction with the accompanying drawings, in which:
[0040] Figure 1 : A schematic side view of an industrial robot including its manipulators;
[0041] Figure 2 : This schematically represents the extended workspace used for the manipulator;
[0042] Figure 3 : schematically representing the load parameters of the manipulator as a distance function when the method described herein is not used; and
[0043] Figure 4 : This schematically represents the load parameters of the manipulator as a distance function when using the method described in this paper. Detailed Implementation
[0044] The following describes a method for controlling a manipulator of an industrial robot with multiple joints, a control system for controlling the manipulator of an industrial robot with multiple joints, and an industrial robot including the manipulator and the control system. The same or similar reference numerals will be used to denote the same or similar structural features.
[0045] Figure 1 A schematic side view of an industrial robot 10 is shown. The industrial robot 10 includes a manipulator 12 and a control system 14. The industrial robot 10 also includes a base 16. The manipulator 12 is movable relative to the base 16. Figure 1 The Cartesian coordinate system X, Y, and Z are also shown for reference.
[0046] The manipulator 12 of this specific example includes seven axes. The manipulator 12 includes a first link 18a rotatable relative to the base 16 at a first joint 20a, a second link 18b rotatable relative to the first link 18a at a second joint 20b, a third link 18c rotatable relative to the second link 18b at a third joint 20c, a fourth link 18d rotatable relative to the third link 18c at a fourth joint 20d, a fifth link 18e rotatable relative to the fourth link 18d at a fifth joint 20e, a sixth link 18f movable relative to the fifth link 18e at a sixth joint 20f, and a seventh link 18g rotatable relative to the sixth link 18f at a seventh joint 20g. One, several, or all of links 18a-18g may alternatively be designated by the reference numeral "18". One, several, or all of joints 20a-20g may alternatively be designated by the reference numeral "20".
[0047] Manipulator 12 also includes an end effector or tool, illustrated herein as gripper 22. For example... Figure 1 As shown, the manipulator 12 carries the payload 24 via the gripper 22. The payload 24 may be, for example, an item that is moved by the manipulator 12 during a pick-up and drop operation.
[0048] Figure 1 Three bearings 26 are also shown, one each at the second joint 20b, the third joint 20c, and the fifth joint 20e. However, a bearing 26 may be provided at each joint 20. Each link 18 is driven at its joint 20 by means of an associated motor and an associated gearbox. The joints 20, links 18, bearings 26, motors, and gearboxes are examples of the mechanical components of the actuator 12.
[0049] The control system 14 communicates with the manipulator 12 via signals to control its operation. The control system 14 may be, for example, a robot controller. The control system 14 includes a data processing device 28 and a memory 30. The memory 30 stores a robot program. The robot program includes program code that, when executed by the data processing device 28, causes the data processing device 28 to perform and / or command the various steps described herein.
[0050] The industrial robot 10 in this example also includes a display 32 for displaying various information related to the operation of the industrial robot 10. The display 32 may be provided, for example, in a teach pendant (TPU). The display 32 communicates with the control system 14 via signals.
[0051] exist Figure 1 The candidate trajectory 34a is shown in the figure. Candidate trajectory 34a includes associated path 36a, associated velocity 38a, and associated acceleration 40a, as shown in the figure. Figure 1 As illustrated schematically. Therefore, a trajectory differs from a path because it contains more information than just a path, such as velocity curves and / or acceleration curves along the path. Candidate trajectory 34a can also be considered to include payload 24. If candidate trajectory 34a is executed, then path 36a may be followed by, for example, the tool center point TCP.
[0052] The robot program includes software for generating candidate trajectories 34a and for optimizing candidate trajectories 34a through dynamic optimization to provide a modified trajectory 34b. One or more candidate trajectories 34a may alternatively be input by the user. At each time step, candidate trajectories 34a are evaluated, for example, using a look-ahead function implemented in the robot program. Figure 1 As schematically shown, the modified trajectory 34b also includes associated path 36b, associated velocity 38b, and associated acceleration 40b. Velocities 38a and 38b may be alternatively represented by the reference numeral "38". Accelerations 40a and 40b may be alternatively represented by the reference numeral "40".
[0053] Figure 1 The force 42 and torque 44 acting at a specific mechanical component of the manipulator 12 (here, at the gripper 22) are also schematically illustrated. For each candidate trajectory 34a, the resultant force 42 and torque 44 can be calculated at one or more arbitrarily selected points on the manipulator 12. The force 42 and torque 44 are collectively referred to as load parameter 46. Because load parameter 46 can be calculated, no dedicated sensor is required to measure it. Another example of load parameter 46 is stress.
[0054] To meet the structural integrity specifications of the mechanical components of the manipulator 12, both static and dynamic loads must be considered when executing the trajectory via the manipulator 12. Dynamic loads are typically reduced to levels significantly below the static load capacity to avoid fatigue of the mechanical components. Furthermore, maximum dynamic loads can be specified for the mechanical components for several different dynamic load conditions. For example, the bearing 26 at the first joint 20a can have unique specified limits on bending moments at both low speed 38 and high speed 38. When the gripper 22 is close to the base 16, the position-related bending moment at the first joint 20a is low. Therefore, a relatively large portion of the bending moment limit of the bearing 26 at the first joint 20a can be used for speed-related terms or for accelerating the manipulator 12. When the manipulator 12 is extended and the payload 24 is heavy, the position-related bending moment at the first joint 20a is very high. In this case, to prevent overload, the speed-related forces 42 and torque 44 at the first joint 20a, as well as the acceleration-related forces 42 and torque 44 at the first joint 20a, must be kept low.
[0055] With the proposed candidate trajectory 34a, the vector τ, including one or more load parameters 46, can be calculated at each time step along the associated path 36a using the model of manipulator 12. k for:
[0056]
[0057] When considering the complete dynamics of manipulator 12, τ k It is a vector of force 42 and torque 44, or, when expressing the dynamics about a cross section, joint 20, or some other coordinate system in the structure of manipulator 12, τ. k It is a vector of three forces 42 and three torques 44 (also known as a wrench).
[0058] The vector q and its derivative represent the position of joint 20, the velocity 38 of joint 20, and the acceleration 40 of joint 20.
[0059] It is the acceleration term of the model, which can be alternatively written as
[0060] M k (q) is the inertia matrix that depends on the position of joint 20. The inertia matrix is an example of an inertial-related term that defines the inertia of manipulator 12.
[0061] It is the velocity term of the model, which can be alternatively written as
[0062] This represents a centripetal effect and is an example of a centripetal term that defines the centripetal load of manipulator 12.
[0063] τ k,q This is the location term of the model, which can be alternatively written as g. k (q).
[0064] g k (q) represents the position-dependent load term of the manipulator 12, which is exemplified here as the gravity-dependent load term. Therefore, this model describes the static and dynamic characteristics of the manipulator 12.
[0065] Therefore, equation (1) can be rewritten as:
[0066]
[0067] Additionally, a friction term can be added to the model. This friction term typically depends on the velocity 38 of joint 20, but may also depend on the position of joint 20.
[0068] Using this model, the load parameters 46 can be calculated for any point in the manipulator 12 for any candidate trajectory 34a.
[0069] By considering the model in equation (1), it is clear that τ can be reduced by decreasing the effects from velocity 38 and acceleration 40. k However, due to M k C k and g k Each of these is a function of the position of joint 20, so velocity 38 and acceleration 40 need to be very conservative to provide a guaranteed limit τ. k In addition, the load consists of 24 pairs of M. k C k and g k It also has a significant impact. Given the lifespan of the specific mechanical components, the method of this disclosure allows for the modification of the speed 38 and acceleration 40 of the manipulator 12 in a simpler but still non-conservative manner based on model (1).
[0070] Optimizing candidate trajectory 34a to provide modified trajectory 34b is performed here using several constraints that need to be satisfied in the optimal solution. Equation (1) is included in the optimization as a load parameter, where:
[0071] a k,min ≤τ k τa k,max (2)
[0072] The vector inequality is interpreted as a component inequality, where a k,min It is the lower limit of the corresponding load parameter 46, a k,maxThis is the upper limit of the corresponding load parameter 46. The load constraint limit is determined to be one or more position-dependent load terms (here, the gravity term g). k The function of ).
[0073] Norm constraints can also be added to the optimization process according to the following formula:
[0074] ||τ k ||≤b k,max (3)
[0075] Where b k,max This is the upper limit of the norm of force 42 or torque 44. This upper limit can usually be a constant, but here it depends on the gravitational component g. k (q) is certain.
[0076] Then, the optimization process is calculated. and A feasible solution, which satisfies the load constraint a k,min and a k,max and norm constraint b k,max In this optimization, τ k It is replaced by equation (1).
[0077] The number of constraints can be arbitrary, since there can be any number of coordinate systems k, and in each coordinate system, it is possible to constrain the norms of each component and the forces 42 and 44. It is also possible to introduce norm constraints only for the components in a single plane (e.g., force 42 acting in the XY plane).
[0078] Since the optimization is solved in discrete time over a finite range, therefore τ k The value is evaluated in a finite number of time instances, which will depend on the sampling time and the choice of optimization method in the optimization problem. The time interval can be, for example, from 1 ms to 50 ms.
[0079] Since the path is given for candidate trajectory 34a, the position-related load value g calculated in the time step... k (q) produces something close to a k,max When the value is , The inequality a must be small, zero, or negative. k,min ≤τ k ≤a k,max Only then is it valid. In this case, we can add 'a'. k,max ,but and This gives you more solution space.
[0080] Figure 2The diagram schematically illustrates an industrial robot 10, a normal working space 48 accessible using existing technological solutions, and an extended working space 50 accessible by the method according to this disclosure. Figure 2 Also shown is a position 52 at the outer boundary of the extended workspace 50, which the manipulator 12 can reach and move in due to the methods described herein.
[0081] In the gravitational component g k (q) When the load constraint is relatively high or relatively close, the robot program will expand the load constraint a. k,min and a k,max The limitation. That is, reduce the lower load constraint a. k,min And add upper load constraint a k,max By modifying the load constraints in this way, the method allows the load parameter 46 to increase while still satisfying the dynamic load limits of the mechanical components regarding their lifespan, and it is not necessary to define specific limits on the speed 38 and / or acceleration 40. For example, if the speed 38 of joint 20 were limited to a fixed value, the speed 38 could be reduced more than necessary, which in turn reduces the cycle time and performance of manipulator 12.
[0082] The expansion of load constraints allows for an increase in performance parameters. For example, manipulator 12 is enabled to move from normal operating space 48 to extended operating space 50, but performance is reduced (e.g., speed 38 and / or acceleration 40 are limited). This expansion of load constraints is allowed because the maximum load on load parameter 46 is not static, but depends on the contribution of position-dependent loads to load parameter 46. Specifically, how is it based on the gravitational component g? k (q) Modifying load constraints is part of the design and tuning of the manipulator 12. This is done during product development. The various parameters used to tune this correlation can be part of an open configuration. In this case, an advanced user of the control system 14 can tune the correlation and also expand the workspace of the manipulator 12.
[0083] Without this method, the ratings of many mechanical components of the manipulator 12 (such as bearing 26) would have to be increased in order for the manipulator 12 to reach and move within the extended workspace 50. This would not only increase costs but would also result in poor utilization of the maximum performance level of the manipulator 12 within the normal operating space 48.
[0084] As an alternative to expanding the workspace, this method allows the manipulator 12 to carry a heavier payload 24. The speed 38 and acceleration 40 of the manipulator 12 must then be reduced at the expanded position (but not necessarily closer to the base 16). The payload 24 can be increased, for example, from 500 kg to 750 kg.
[0085] As an alternative to determining load constraints for the optimization problem based on at least one position-related load, position-related load values can be determined for candidate trajectory 34a. If the position-related load values for one or more joints 20 are higher than the position-related load threshold, the velocity 38 and acceleration 40 of that joint 20 can be limited in the modified trajectory 34b.
[0086] Figure 3 The diagram schematically illustrates the load parameter 46 of the manipulator 12 as a function of the distance 54 of the gripper 22 from the base 16 when not using the methods described herein. The load parameter 46 could be, for example, force 42 or torque 44. Shaded areas represent loads that can be used for dynamic loads, such as velocity 38 and acceleration 40. Figure 3 A constant and conservative constraint 56 on the load parameter 46 is also shown, for example, as calculated by equation (1). At position 52 (see...) Figure 2 The position-dependent load corresponds to a constant and conservative constraint 56 on load parameter 46. Therefore, no velocity 38 and acceleration 40 are available at position 52. This is the case in existing technical solutions. Figure 2 The reason for the smaller normal operating space 48 shown.
[0087] Figure 4 The load parameter 46 of the manipulator 12 as a function of distance 54 is schematically illustrated when using the method described herein. At position 52, the position-dependent load value is relatively high. Therefore, the method increases the load constraint on the load parameter 46 to allow for velocity 38 and acceleration 40 at position 52. This can be done without exceeding the structural integrity specifications of the manipulator 12, since dynamic loads are more critical than static loads. Therefore, the manipulator 12 can operate in an extended workspace 50, but velocity 38 and acceleration 40 will be reduced. Figure 4 In this context, limitation 58 represents, for example, a performance limitation of the motor in joint 20. Information associated with this increase in load constraints can be displayed to the user via display 32.
[0088] Although this disclosure has been described with reference to exemplary embodiments, it should be understood that the invention is not limited to what has been described above. For example, it should be understood that the dimensions of the components may vary as needed. Therefore, the invention is intended to be limited only by the scope of the appended claims.
Claims
1. A method for controlling a manipulator (12) of an industrial robot (10) having multiple joints (20a-20f), the method comprising: - Provide candidate trajectories (34a) for the manipulator (12); - Determine at least one position-related load value for the candidate trajectory (34a), the at least one position-related load value representing at least one position-related load acting on the manipulator (12); - Based on the at least one location-related load value, modify the candidate trajectory (34a) to provide a modified trajectory (34b). as well as - The modified trajectory (34b) is executed by the manipulator (12); The method further includes: - Provide a model describing the static and dynamic characteristics of the manipulator (12), the model having position-dependent load terms; - Based on the location-related load term, determine the at least one location-related load value for the candidate trajectory (34a); - Based on the at least one position-related load value, determine the load constraints of the load parameters (46) for the mechanical components (18a-18g; 26) of the manipulator (12); and - By solving an optimization problem with an objective function and the load constraints, the modified trajectory (34b) for the manipulator (12) is determined. Wherein, when the position-related load value of the position-related load item is lower than the position-related load threshold, the load constraint is determined to be a relatively low load constraint value, and when the position-related load value is higher than the position-related load threshold, the load constraint is determined to be a relatively high load constraint value.
2. The method of claim 1, wherein the at least one position-related load includes a gravity load.
3. The method according to any one of claims 1-2, wherein modifying the candidate trajectory (34a) to provide the modified trajectory (34b) includes modifying one or more of the following: the velocity (38) of one or more joints (20a-20f), the acceleration (40) of one or more joints (20a-20f), and / or the path (36a, 36b) of the candidate trajectory (34a).
4. The method according to any one of claims 1-2, wherein the model comprises: - Define one or more inertial-related terms for the inertia of the manipulator (12); - Define one or more centripetal terms of the centripetal load of the manipulator (12); - Define one or more gravity-related terms for the gravity load of the manipulator (12); and / or - Define one or more friction-related terms for the friction load of each joint (20a-20f).
5. The method according to any one of claims 1-2, wherein the at least one position-related load value is determined for the manipulator (12) when the manipulator carries a payload (24).
6. A control system (14) for controlling a manipulator (12) of an industrial robot (10) having multiple joints (20a-20f), the control system (14) comprising at least one data processing device (28) and at least one memory (30) thereon storing a computer program, the computer program comprising program code that, when executed by the at least one data processing device (28), causes the at least one data processing device (28) to perform the following steps: - Provide candidate trajectories (34a) for the manipulator (12); - Determine at least one position-related load value for the candidate trajectory (34a), the at least one position-related load value representing at least one position-related load acting on the manipulator (12); - Based on the at least one location-related load value, modify the candidate trajectory (34a) to provide a modified trajectory (34b). as well as - Command the manipulator (12) to execute the modified trajectory (34b); The program code, when executed by the at least one data processing device (28), causes the at least one data processing device (28) to further perform the following steps: - Provide a model describing the static and dynamic characteristics of the manipulator (12), the model having position-dependent load terms; - Based on the location-related load term, determine the at least one location-related load value for the candidate trajectory (34a); - Based on the at least one position-related load value, determine the load constraints of the load parameters (46) of the mechanical components (18a-18g; 26) of the manipulator (12). as well as - By solving an optimization problem with an objective function and the load constraints, the modified trajectory (34b) for the manipulator (12) is determined. Wherein, when the position-related load value of the position-related load item is lower than the position-related load threshold, the load constraint is determined to be a relatively low load constraint value, and when the position-related load value is higher than the position-related load threshold, the load constraint is determined to be a relatively high load constraint value.
7. The control system (14) of claim 6, wherein the at least one position-related load includes a gravity load.
8. The control system (14) according to claim 6 or 7, wherein modifying the candidate trajectory (34a) to provide the modified trajectory (34b) includes modifying one or more of the following: the velocity (38) of one or more joints (20a-20f), the acceleration (40) of one or more joints (20a-20f) and / or the path (36a, 36b) of the candidate trajectory (34a).
9. The control system (14) according to any one of claims 6-7, wherein the model comprises: - Define one or more inertial-related terms for the inertia of the manipulator (12); - Define one or more centripetal terms of the centripetal load of the manipulator (12); - Define one or more gravity-related terms for the gravity load of the manipulator (12); and / or - Define one or more friction-related terms for the friction load of each joint (20a-20f).
10. The control system (14) according to any one of claims 6 to 7, wherein the at least one position-related load value is determined for the manipulator (12) when the manipulator (12) carries a payload (24).
11. An industrial robot (10) comprising a manipulator (12) and a control system (14) according to any one of claims 6 to 10.
Citation Information
Patent Citations
Robot control apparatus for force control
CN101195221A
Smooth time optimal trajectory planning method for robot
CN109623810A
Collaborative robot system
WO2019186146A1