Apparatus and method for robot control

KR1020260121697APending Publication Date: 2026-08-11HYUNDAI MOTOR CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
KR1020250013113
Authority / Receiving Office
KR · KR
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-02-03
Publication Date
2026-08-11

Smart Images

  • Figure PAT00001_ABST
    Figure PAT00001_ABST
Patent Text Reader

Abstract

The present invention relates to a robot control device and method. The system includes: a random value assigning unit that assigns a random value to the motion value of at least one axis among a plurality of axes of a robot; a compensation value assigning unit that assigns a compensation value to the motion value of at least one axis among the axes to which the random value is not assigned, so that the robot performs the task; and a control unit that controls the operation of each of the plurality of axes for a robot including the plurality of axes so that the robot performs the task based on the motion value.
Need to check novelty before this filing date? Find Prior Art

Description

Technology Field

[0001] The present invention relates to a robot control device and method, and more specifically, to a robot control device and method for controlling a robot composed of a plurality of axes. Background Technology

[0002] Robots are widely used in modern industry to perform various tasks. Robots are generally composed of multiple axes, and the movement of each axis is precisely controlled by servo control. This servo control method plays a crucial role in ensuring the task repeatability and precision of the robot.

[0003] Conventional robot control technology is designed to ensure that the robot always performs tasks at the same position by controlling the movement of each servo uniformly according to a fixed position value. While this control method may be effective in precision work environments, the same load is continuously applied to specific axes as the task is repeated. Consequently, intensive wear and fatigue occur in specific areas, which is a major cause of shortened robot component lifespans and increased maintenance costs.

[0004] In particular, robot servo motors and mechanical parts are at risk of failure due to such wear, which can lead to production process interruptions or quality degradation. Therefore, conventional technology has had limitations in effectively reducing wear and fatigue while maintaining operational precision. Prior art literature

[0005] Korean Published Patent Application No. 10-2011-0097909 The problem to be solved

[0006] The present invention was devised to solve the problems described above, and the objective of the present invention is to provide a robot control device and method capable of minimizing wear and fatigue concentrated on specific axes or parts in a repetitive work environment.

[0007] Another objective of the present invention is to provide a robot control device and method capable of extending the lifespan of components by introducing randomness into the movement of each axis while maintaining the working precision of the robot.

[0008] Another objective of the present invention is to provide a robot control device and method capable of extending the maintenance cycle of a robot, reducing operating costs, and realizing a stable and efficient working environment.

[0009] The objectives of the present invention are not limited to the problems mentioned above, and other objectives and advantages of the present invention not mentioned may be understood from the following description and will be more clearly understood by the embodiments of the present invention. Furthermore, it will be understood that the objectives and advantages of the present invention can be realized by the means and combinations thereof set forth in the claims. means of solving the problem

[0010] For the above purpose, a robot control device according to one embodiment of the present invention comprises: a random value assigning unit that assigns a random value to an operating value of at least one axis among a plurality of axes of a robot; a compensation value assigning unit that assigns a compensation value to an operating value of at least one axis among the axes to which the random value is not assigned, so as to perform a task; and a control unit that controls the operation of each of the plurality of axes of a robot including the plurality of axes so that the robot performs the task based on the operating value.

[0011] Preferably, the compensation value assigning unit determines the compensation value by performing a kinematic operation including at least one of inverse kinematics and forward kinematics based on the motion value of the axis to which the random value is assigned.

[0012] Meanwhile, a robot control method according to one embodiment of the present invention comprises assigning a random value to an operating value of at least one axis among a plurality of axes of a robot, assigning a compensation value to an operating value of at least one axis among the axes to which the random value is not assigned to perform a task, and controlling the operation of each of the plurality of axes of a robot including the plurality of axes so that the robot performs the task based on the operating value.

[0013] Preferably, assigning the compensation value includes determining the compensation value by performing a kinematic operation including at least one of inverse kinematics and forward kinematics based on the motion value of the axis to which the random value is assigned. Effects of the invention

[0014] According to the present invention, it has the effect of minimizing wear and fatigue concentrated on a specific axis or part in a repetitive work environment.

[0015] In addition, according to the present invention, the lifespan of the components can be extended by introducing randomness into the movement of each axis while maintaining the working precision of the robot.

[0016] In addition, according to the present invention, it has the effect of extending the maintenance cycle of a robot, reducing operating costs, and realizing a stable and efficient working environment. Brief explanation of the drawing

[0017] FIG. 1 is a configuration diagram of a robot control device according to one embodiment of the present invention. FIG. 2 is a flowchart of a robot control method according to one embodiment of the present invention. FIG. 3 is a diagram illustrating the performance of a task by a welding robot including a plurality of axes according to an embodiment of the present invention. Specific details for implementing the invention

[0018] Hereinafter, embodiments disclosed in this specification will be described in detail with reference to the attached drawings. Identical or similar components regardless of drawing symbols are assigned the same reference number, and redundant descriptions thereof will be omitted. The suffixes "module" and "part" used for components in the following description are assigned or used interchangeably solely for the ease of drafting the specification and do not inherently possess distinct meanings or roles. Furthermore, in describing the embodiments disclosed in this specification, if it is determined that a detailed description of related prior art could obscure the essence of the embodiments disclosed in this specification, such detailed description will be omitted. Additionally, the attached drawings are intended only to facilitate understanding of the embodiments disclosed in this specification; the technical concept disclosed in this specification is not limited by the attached drawings, and it should be understood that they include all modifications, equivalents, and substitutions that fall within the spirit and technical scope of the invention.

[0019] Terms including ordinal numbers, such as first, second, etc., may be used to describe various components, but said components are not limited by said terms. These terms are used solely for the purpose of distinguishing one component from another.

[0020] When it is stated that one component is "connected" or "connected" to another component, it should be understood that while it may be directly connected or connected to that other component, there may also be other components in between. On the other hand, when it is stated that one component is "directly connected" or "directly connected" to another component, it should be understood that there are no other components in between.

[0022] Hereinafter, a robot control device and method according to the present invention will be described in detail with reference to FIGS. 1 to 3.

[0023] FIG. 1 is a configuration diagram of a robot control device according to one embodiment of the present invention, and FIG. 2 is a flowchart of a robot control method according to one embodiment of the present invention.

[0024] Referring to FIG. 1, a robot control device (100) according to one embodiment of the present invention includes a random value assigning unit (110), a compensation value assigning unit (120), a control unit (130), etc.

[0025] The random value assigning unit (110) can assign a random value to the operation value of at least one axis among the multiple axes of the robot (see step S210 of FIG. 2).

[0026] For example, the robot can be a vertical multi-joint robot, a horizontal multi-joint robot, a Cartesian coordinate robot, a parallel robot, a collaborative robot, etc. The random value assigning unit (110) can add or subtract a predetermined random deviation from each axis rotation angle or Cartesian coordinate position to distribute wear accumulated on a specific axis in a robot that repeats the same process for a long period of time. By doing so, it is possible to induce the robot end effector not to move precisely to the same point every time, while not significantly reducing the precision of task execution.

[0027] At this time, the random value assigning unit (110) can assign a random value within a pre-set range.

[0028] For example, the random value assigning unit (110) may assign random values ​​by setting a rotation angle range of, for example, ±0.3 degrees to ±2 degrees or a linear coordinate range of ±0.5 mm to ±5 mm. These ranges may vary depending on physical constraints, such as the stroke limit of the robot axis or the possibility of joint interference, or process precision requirements, such as a position error tolerance range or an angle error tolerance range. In one embodiment, when the robot assembles micro-electronic components, the random value assigning unit (110) may set the random value generation range to be extremely narrow so as to partially reduce uneven wear that accumulates repeatedly on equipment parts without affecting work quality. In another embodiment, the random value assigning unit (110) may assign random values ​​within a range that does not significantly impede the work success rate by applying a slightly wider range in a general machine part transfer process, which is advantageous in terms of equipment lifespan and maintenance. In yet another embodiment, the random value assigning unit (110) may assign random values ​​within a wider range in processes where the error range is relatively wide, such as large welding robots. However, in cases where the weld line deviation is fatal, the random value assignment unit (110) can be operated to maintain the final trajectory precision by applying a larger compensation value from another axis.

[0029] And, the random value assigning unit (110) can assign a random value according to a preset period.

[0030] For example, the random value assigning unit (110) can generate a new random value according to a fixed period, such as a work cycle or time unit, so that randomness is not concentrated in only a specific section during the robot operation process but is evenly distributed. Specifically, the random value assigning unit (110) can vary the period according to the work process, such as morning or afternoon, and according to the time of day, such as day or night. In one embodiment, the random value assigning unit (110) can apply a relatively wide range at night to maximize the wear dispersion effect, and narrow the range during the day to prioritize precision.

[0031] Meanwhile, the reward value assigning unit (120) may assign a reward value to perform a task on the operation value of at least one axis among the axes to which a random value has not been assigned (see step S220 of FIG. 2).

[0032] For example, in a robot having multiple axes, if a random deviation of, for example, ±0.5 degrees or more occurs on a specific axis, the position or orientation of the end effector may change slightly and deviate from the target point. At this time, the compensation value assigning unit (120) can adjust the end effector so that it can ultimately maintain the original target point or work trajectory accurately by assigning a correction angle, a linear movement value, etc. to another axis.

[0033] At this time, the compensation value assigning unit (120) can determine the compensation value by performing a kinematic operation including at least one of inverse kinematics and forward kinematics based on the motion value of the axis to which a random value is assigned.

[0034] At this time, the compensation value assigning unit (120) can first check the motion value of the axis to which a random value has been assigned, and then perform a kinematic calculation including at least one of inverse kinematics and forward kinematics to calculate an appropriate compensation value. For example, if the axis to which a random value has been received has a deviation of, say, +1.2 degrees, the compensation value assigning unit (120) can calculate through forward kinematics how the deviation affects the end effector position or attitude. After that, the compensation value assigning unit (120) can use inverse kinematics to determine how to correct the error generated from the target point on other axes, and based on this, can induce the minimization of the final error by assigning a new motion value to some axes to move their position by ± a few degrees or ± a few mm. In this calculation process, the compensation value assigning unit (120) can comprehensively consider motion values ​​such as the robot's position, velocity, acceleration, and torque. Specifically, in processes handling heavy workpieces, a limit range can be set so that torque overload does not occur when applying compensation values, or in high-speed processes, the compensation amount can be appropriately distributed so that the change in acceleration does not become too large and reduce the cycle time.

[0035] Additionally, the compensation value assigning unit (120) may finely adjust the compensation value by repeatedly applying inverse kinematics and forward kinematics calculations. If there is a risk that the safety limit angle in another axis may be exceeded as a result of significantly compensating one axis, the compensation value assigning unit (120) may slightly reduce the compensation range or distribute the compensation across multiple axes for correction. Through this, the compensation value assigning unit (120) can ensure that the final end effector converges to the target trajectory without error, even though the robot is assigned a random value within, for example, ±2 degrees. In one embodiment, in a field requiring ultra-precision, such as a medical surgical robot, the surgical site may change even with a random deviation of, for example, 0.2 degrees; therefore, the compensation value assigning unit (120) can immediately calculate the deviation through inverse kinematics and apply precise angle adjustments to other axes to stably maintain the position of the surgical tool. On the other hand, in another embodiment, when the work tolerance is somewhat large, such as in a large aircraft part assembly robot, a deviation of ±2 to 3 degrees may be allowed, but since the part is heavy and the joint load is large, there is a high risk of exceeding the torque limit, so the compensation value granting unit (120) can examine the possibility of collision in advance through a forward kinematics simulation and, if necessary, adopt an operational strategy of reinforcing the attitude using an additional axis.

[0036] In short, the compensation value assigning unit (120) recognizes the axis change caused by the application of random values ​​and flexibly corrects the end effector through kinematic calculation so that it still satisfies the required process precision, thereby suppressing uneven wear caused by the repetition of the same trajectory on the robot while maintaining the stability of task performance and production efficiency.

[0037] Furthermore, the reward value assigning unit (120) may be linked with machine learning or online adaptive control techniques to accumulate the pattern of axis deviation occurrence as learning data and optimize the reward pattern for each axis.

[0038] The control unit (130) can control the operation of each of the multiple axes of a robot including multiple axes so that the robot performs a task based on the operation value (see step S230 of FIG. 2).

[0039] For example, the control unit (130) can control the robot to perform tasks required of the robot, such as parts assembly, parts transfer, welding, painting, inspection, etc., based on motion values ​​corresponding to each of the multiple axes. At this time, the motion values ​​are a concept that includes various information related to the movement of the robot axes, and may include position information, velocity information, acceleration information, torque information, etc., including the rotation angle of each axis, linear travel distance, and coordinate values ​​of the end effector.

[0040] FIG. 3 is a diagram illustrating the performance of a task by a welding robot including a plurality of axes according to an embodiment of the present invention.

[0041] Referring to Fig. 3, it can be seen that the robot's axes change by applying random values ​​to the ends of the weld joint. Due to the application of these random values, the robot's overall movement may differ as a, b, and c, but it can be confirmed that the same operation is maintained in the core area where the task is performed. Through this, the welding robot can randomly move specific axes within a certain range, thereby distributing wear at specific locations and promoting efficient maintenance of the equipment.

[0042] Meanwhile, the control unit (130) can return the robot to the state prior to the assignment of the random value if the robot fails to perform the task normally while the random value is assigned.

[0043] For example, if an unexpected collision or overtorque is detected due to a random value, the control unit (130) can immediately stop the operation and switch to a safe mode, and then return the corresponding robot axes to a final normal position, an initial safe position, etc., to protect the equipment and process. Furthermore, after the return, the control unit (130) can store an error log, the random value applied at the time, position information of each axis, torque information, etc.

[0044] And, the random value assignment unit (110) can exclude the corresponding random value in a subsequent process in the case where the task was not performed.

[0045] For example, if a random value within a specific range becomes the cause of repeated defects or collisions, the random value assigning unit (110) can record this as an error value and adjust the random value generation algorithm so as not to generate the same or similar deviation again in the future. Additionally, the random value assigning unit (110) may analyze the number of occurrence limits or acquired error patterns, such as position for each axis, acceleration center of gravity information, etc., to subdivide and block problem values ​​that occur only in specific axis combinations.

[0046] In addition, the random value assignment unit (110) can adjust the range of random value generation in the case where the task is not performed.

[0047] For example, if the random value assignment unit (110) obtains statistics showing that the collision frequency is significantly high at angle deviations exceeding a specific angle, such as ±2 degrees, when analyzing long-term work history, it may subsequently limit the random value generation range to, for example, ±1.5 degrees, or distribute larger random values ​​to other axes with less load, thereby reducing the work failure rate while maintaining the overall wear distribution effect. Meanwhile, if the random value assignment unit (110) identifies a work section where the process margin is sufficient and stable, it may expand the allowable deviation range to, for example, ±3 degrees to diversify the movement of each axis. At this time, the random value assignment unit (110) may apply range expansion or reduction according to robot status such as joint wear, motor temperature, and travel time, or process requirements such as precision and delivery schedule, and may adopt a strategy of updating the most appropriate random value distribution in real time by incorporating machine learning-based optimization techniques if necessary.

[0049] In the specification of this disclosure (particularly in the claims), the use of the term "above" and similar descriptive terms may be in both singular and plural. Furthermore, where a range is described in this disclosure, it is to include an invention to which individual values ​​belonging to said range are applied (unless otherwise stated), as is equivalent to describing each individual value constituting said range in the detailed description of the invention.

[0050] Unless explicitly stated otherwise, the steps constituting the method according to the present disclosure may be performed in a suitable order. The present disclosure is not necessarily limited by the order in which the steps are described. The use of all examples or exemplary terms (e.g., etc.) in the present disclosure is merely for the purpose of describing the present disclosure in detail, and the scope of the present disclosure is not limited by such examples or exemplary terms unless limited by the claims. Furthermore, a person skilled in the art will understand that various modifications, combinations, and changes may be made according to design conditions and factors within the scope of the claims or equivalents to which they are added.

[0051] Accordingly, the scope of the present disclosure should not be limited to the embodiments described above, and all scopes equivalent to or equivalently modified from the claims set forth below, as well as the claims set forth below, shall be considered to fall within the scope of the scope of the present disclosure. Explanation of the symbols

[0052] 100: Robot control unit 110: Random Value Assignment Unit 120: Compensation Value Assignment Section 130: Control unit

Claims

Claim 1 A robot control device comprising: a random value assigning unit for assigning a random value to a motion value of at least one axis among a plurality of axes of a robot; a compensation value assigning unit for assigning a compensation value to a motion value of at least one axis among the axes to which the random value is not assigned to perform a task; and a control unit for controlling the operation of each of the plurality of axes based on the motion value so that the robot performs the task. Claim 2 A robot control device according to claim 1, wherein the compensation value assigning unit determines the compensation value by performing a kinematic operation including at least one of inverse kinematics and forward kinematics based on the motion value of the axis to which the random value is assigned. Claim 3 A robot control device according to claim 1, wherein the control unit returns the robot to the state prior to the assignment of the random value if the robot fails to perform the task normally while the random value is assigned. Claim 4 In paragraph 3, the robot control device wherein the random value assigning unit excludes the random value in the case where the robot fails to perform the task from the random value generation process. Claim 5 In the fourth aspect, the robot control device, wherein the random value assigning unit adjusts the random value generation range when the robot fails to perform the task. Claim 6 A robot control device according to claim 1, wherein the random value assigning unit assigns the random value within a preset range. Claim 7 In claim 6, the robot control device, wherein the random value assigning unit assigns the random value according to a preset period. Claim 8 A robot control method comprising: assigning a random value to a motion value of at least one axis among a plurality of axes of a robot; assigning a compensation value to the motion value of at least one axis among the axes not to which the random value is not assigned to perform a task; and controlling the motion of each of the plurality of axes based on the motion value so that the robot performs the task. Claim 9 A robot control method according to claim 8, wherein assigning the above compensation value includes determining the above compensation value by performing a kinematic operation including at least one of inverse kinematics and forward kinematics based on the motion value of the axis to which the above random value is assigned. Claim 10 A robot control method according to claim 8, wherein the controlling includes returning the robot's operation to the state prior to the assignment of the random value when the robot fails to perform the task normally while the random value is assigned. Claim 11 A robot control method according to claim 10, wherein assigning the random value includes excluding the random value in the case where the robot fails to perform the task from the random value generation process. Claim 12 A robot control method according to the 11th, wherein assigning the random value further includes adjusting the random value generation range so that the same error does not recur when the robot fails to perform the task. Claim 13 A robot control method according to claim 8, wherein assigning the random value includes assigning the random value within a preset range. Claim 14 A robot control method according to claim 13, wherein assigning the random value further includes assigning the random value according to a preset period.