ROBOT SYSTEM AND METHOD FOR CONTROLLING A ROBOT

A dual detection system with weighted output values from shaft and arm sensors in the robot system addresses the challenge of inaccurate vibration detection, achieving precise vibration control and improved robot arm performance.

DE102025139986A1Pending Publication Date: 2026-04-09SEIKO EPSON CORP
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
DE · DE
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-10-01
Publication Date
2026-04-09

AI Technical Summary

Technical Problem

Existing robot systems face challenges in accurately detecting vibrations of robot arms due to the reliance on a single accelerometer, which limits the effectiveness of vibration control based on the robot arm's position.

Method used

The robot system incorporates a dual detection system with a first detection element on a shaft and a second detection element on an arm, utilizing a control unit to select and weight output values from these elements based on a predetermined ratio, generating a correction drive signal to eliminate unnecessary vibrations.

Benefits of technology

This approach enables highly accurate vibration control, enhancing the positional accuracy and working precision of the robot by compensating for vibrations, regardless of the arm's position.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

[Task] To provide a robot system and method for controlling a robot that enables highly accurate vibration control. [Solution] A robot system is characterized in that a control part selects a selection part which, according to the position of a shaft in the direction of a third axis or in the surface direction whose normal corresponds to the third axis, selects a first output value A1 of a first detection part and a second output value A2 of a second detection part based on a predetermined ratio α (where α is any number of 0 or more and 1 or less); a computation part which determines an output value A based on at least one of the first output value A1 and second output value A2 selected according to the predetermined ratio α;and a vibration control section which, based on the output value A, generates a first correction drive signal for eliminating a noise component caused by unnecessary vibrations of a first or second arm and, by means of the first correction drive signal, actuates at least one of a first and second drive section;
Need to check novelty before this filing date? Find Prior Art

Description

[TECHNICAL FIELD]

[0001] The present invention relates to a robot system and a method for controlling a robot. [TECHNICAL BACKGROUND]

[0002] Due to increased personnel costs and labor shortages, factories have in recent years automated many work processes, such as the manufacturing, processing, and assembly of products and components, using robots with robotic arms. These processes are previously performed manually. These robots incorporate vibration control to suppress vibrations associated with their drive mechanisms, resulting in smoother and more precise robot operation and thus efficient performance of the work processes.

[0003] A robot system according to patent document 1 comprises a robot and a controller for controlling the robot's operation. The robot includes a robot arm with several arms rotatably connected to one another at joints, an end effector attached to the front end section of the robot arm, and an accelerometer attached to the robot arm. The controller performs vibration suppression control to suppress vibrations of the end effector based on an output value from the accelerometer. [STATE OF THE ART DOCUMENT][PATENT DOCUMENT]

[0004] Patent Document 1: JP 2022-177607 A [SUMMARY OF THE INVENTION][TASK TO BE SOLVED BY THE INVENTION]

[0005] In the robot according to patent document 1, the vibrations of the robot arm cannot always be accurately detected, as they depend on the position of the robot arm and are therefore only equipped with a single accelerometer. Consequently, highly accurate vibration control dependent on the position of the robot arm is not possible. [Means of solving the problem]

[0006] The robot system according to the invention is equipped with a base, a first arm which is rotatably connected to the base about a first axis, a first drive component for the rotary drive of the first arm, a second arm which is rotatably connected to the first arm about a second axis parallel to the first axis, a second drive unit for the rotary drive of the second arm, a shaft which is movably connected to the second arm along a third axis parallel to the second axis, a third drive component for the rotary drive of the shaft a fourth drive component that drives the shaft in such a way that it is moved, a first detection element that is provided on the shaft and detects a force acting on the shaft, a second detection element provided on the first or second arm and detects a force acting on the equipped first or second arm, a control unit for controlling the actuation of the first, second, third and fourth drive unit provided, where the control unit a selection part which, according to a position of the shaft in the direction of the third axis or in the surface direction whose normal corresponds to the third axis, selects a first output value A1 of the first detection part and a second output value A2 of the second detection part based on a predetermined ratio α (where α is any number of 0 or more and 1 or less), a calculation part that determines an output value A based on at least one of the first output value A1 and second output value A2, which is selected based on the given ratio α, and a vibration control unit which, based on the output value A, generates a first correction drive signal for the elimination of a noise component caused by unnecessary vibrations of the first or second arm and actuates at least one of the first and second drive units by means of the first correction drive signal, exhibits.

[0007] The inventive method for controlling a robot, in which the actuation of the robot is carried out by a base, a first arm which is rotatably connected to the base about a first axis, a first drive component for the rotary drive of the first arm, a second arm which is rotatably connected to the first arm about a second axis parallel to the first axis, a second drive unit for the rotary drive of the second arm, a shaft which is movably connected to the second arm along a third axis parallel to the second axis, a third drive component for the rotary drive of the shaft a fourth drive component that drives the shaft in such a way that it is moved, a first detection part that is provided on the shaft and has an effect on the shaft Force captured, and a second detection element provided on the first or second arm and detects a force acting on the equipped first or second arm, is controlled, whereby the process a first step in which, according to a position of the wave in the direction of the third axis or in the surface direction whose normal corresponds to the third axis, a first output value A1 of the first detection part and a second output value A2 of the second detection part are selected based on a predetermined ratio α (where α is any number of 0 or more and 1 or less), a second step in which an output value A is determined based on at least one of the first output value A1 and second output value A2, which is selected based on the given ratio α, and a third step in which, based on the output value A, a first correction drive signal is generated to eliminate a noise component caused by unnecessary vibrations of the first or second arm, and at least one of the first and second drive parts is actuated by the first correction drive signal, includes. [BRIEF DESCRIPTION OF THE DRAWINGS] Fig. Figure 1 is a view illustrating the overall structure of a robot system according to a first embodiment of the present invention. Fig. 2 is a block diagram of the robot system according to Fig. 1. Fig. Figure 3 is a view to illustrate a capture axis of a first and second capture part according to Fig. 1. Fig. Figure 4 is a diagram for the time-dependent representation of a summed value of velocity components. Fig. Figure 5 is a diagram for the time-dependent representation of a velocity component through unnecessary oscillations. Fig. 6 is a flowchart to illustrate an example of a tax operation, which is controlled by a tax section according to Fig. 2 is carried out. Fig. Figure 7 is a diagram illustrating a calibration curve used to determine an output value A on a robot system according to a second embodiment of the present invention. Fig. Figure 8 is a vertical top view of a robot belonging to a robot system according to a third embodiment of the present invention. Fig. Figure 9 is a block diagram of a robot system according to a fourth embodiment of the present invention. [FORM OF EXECUTION OF THE INVENTION]

[0008] In the following, a robot system and method for controlling a robot according to the present invention will be explained in more detail based on preferred embodiments shown in the accompanying drawings. <First embodiment>

[0009] Fig. Figure 1 is a view illustrating the overall structure of a robot system according to a first embodiment of the present invention. Fig. 2 is a block diagram of the robot system according to Fig. 1. Fig. Figure 3 is a view to illustrate a capture axis of a first and second capture part according to Fig. 1. Fig. Figure 4 is a diagram for the time-dependent representation of a summed value of velocity components. Fig. Figure 5 is a diagram for the time-dependent representation of a velocity component through unnecessary oscillations. Fig. 6 is a flowchart to illustrate an example of a tax operation, which is controlled by a tax section according to Fig. 2 is carried out.

[0010] To simplify the explanation, the side of a base 21 on a robot arm 22 is shown in Fig. 1 hereinafter also referred to as the ‘root end’ and the opposite side, i.e. the side of an end effector 26, also referred to as the ‘front end’.

[0011] To simplify the explanation, the x-, y-, and z-axes are shown in Fig. 1, Fig. 3 and Fig. Figure 8 is represented as three right-angled axes. The tip of the arrow on each axis points "+" and the opposite side "-". The +z axis direction, i.e., the top side in Fig. 1, Fig. 3 and Fig. 8 is also referred to as "top" and the -z-axis direction, i.e., the bottom side, is also referred to as "bottom". Furthermore, the z-axis direction, i.e., up and down directions, is shown in Fig. 1, Fig. 3 and Fig. 8 is referred to as the “vertical direction” and the x- and y-axis direction, i.e., the surface direction of the xy-plane, is referred to as the “horizontal direction”.

[0012] In this description, "vertical" means not only the case of coincidence with the vertical, but also the case of inclination to the vertical by some amount, e.g., within ± 10°. In this description, "parallel" means not only the case in which two objects coincide with the parallel, but also the case in which they are inclined to the parallel by some amount, e.g., within ± 10°.

[0013] A robot system 1 is a system for carrying out the inventive method for controlling a robot, which is equipped with a robot 2 and a robot control device 3, as shown in Fig. 1 shown.

[0014] First, robot 2 will be explained.

[0015] As in Fig. As shown in Figure 1, robot 2 is a SCARA robot that drives a robot arm 22 with a desired operation and performs, for example, work processes using an end effector 26, such as transporting, assembling, testing, etc., of workpieces, such as electronic components, or various work processes on workpieces using tools, such as machining, applying, etc. In the following, these will generally be referred to simply as "work processes".

[0016] The robot 2 has a base 21 and a robot arm 22 rotatably connected to the base 21, as shown in Fig. Figure 1 shows the base 21 being fixed to a floor surface parallel to the horizontal plane.

[0017] The robot arm 22 comprises a first arm 23 rotatably connected to the base 21 about a first axis J1, a second arm 24 rotatably connected to the first arm 23 about a second axis J2 parallel to the first axis J1, and a working head 25. The first axis J1, second axis J2, and a third axis J3 (mentioned later) are parallel to each other and run along the vertical direction.

[0018] The first arm 23 comprises a first support 231, which is primarily responsible for the stiffness of the first arm 23. The second arm 24 comprises a second support 241, which is primarily responsible for the stiffness of the second arm 24, and a cover 242. The second support 241 is, for example, formed from a plate- or frame-shaped component and is provided on the lower part of the second arm 24. The upper part of the second support 241 is covered by the cover 242. A third drive element 291 and a fourth drive element 292, mentioned later, are mounted in the cover 242.

[0019] The working head 25 is provided at the front end section of the second arm 24. The working head 25 has a splined shaft nut 251 and a ball screw nut 252, which are arranged coaxially at the front end section of the second arm 24, and a shaft 253, which is a splined shaft passing through the splined shaft nut 251 and the ball screw nut 252.

[0020] The shaft 253 is designed to penetrate the second arm 24 in the z-axis direction. The lower end section of the shaft 253 projects downwards from the lower surface of the second support 241. Furthermore, the shaft 253 is rotatable about a third axis J3, which is its central axis and runs along the vertical direction, and is movable up and down along this third axis J3.

[0021] The lower end section (front end section) of the shaft 253 is equipped with an end effector 26. The end effector 26 is not subject to any particular restrictions and can be, for example, a hand, polishing machine, grinding machine, cutting machine, spray gun, laser irradiation device, screwdriver, wrench, application device, etc.

[0022] The robot 2 has a reinforcement element 4 for strengthening the shaft 253 at a point around the third axis J3 on the side of the front end of the second arm 24. The reinforcement element 4 has a first plate 41, a second plate 42, and a pair of auxiliary shafts 43 that couple these plates together so that they can be brought close to and moved away from each other. The pair of auxiliary shafts 43 are located on the -y-axis and +y-axis sides of the second arm 24.

[0023] The first plate 41 and the second plate 42 are each formed in a plate-like shape and arranged parallel to each other in such a direction that their thickness direction runs along the z-axis. The first plate 41 is located on the side of the +z-axis and the second plate 42 on the side of the -z-axis.

[0024] The upper surface of the first plate 41 is fixed to the side of the lower surface of the second support 241 of the second arm 24. The first plate 41 also has a through-hole for the shaft 253, through which the shaft 253 passes, although this is not shown. A bearing (not shown) is attached to the through-hole, which supports the shaft 253 in such a way that it is rotatable about the third axis J3 and movable along the third axis J3 (in the up and down direction).

[0025] Furthermore, the first plate 41 has through holes for guiding the auxiliary shafts 43 through them. A bearing (not shown) is attached to the through hole, which supports the auxiliary shaft 43 in such a way that it is movable along the third axis J3.

[0026] The second plate 42 has a through-hole for the shaft 253, through which the shaft 253 passes, although it is not shown. A bearing (not shown) is attached to the through-hole, which supports the shaft 253 in such a way that it can rotate about the third axis J3 relative to the second plate 42.

[0027] As shaft 253 rises and falls, the second plate 42 and the pair of auxiliary shafts 43 rise and fall together with shaft 253. Shaft 253 is supported by the first plate 41 and second plate 42, allowing it to rise and fall stably. This reduces the axial runout of shaft 253 and contributes to vibration suppression.

[0028] A first detection element 19A, which will be mentioned later, is provided on the upper surface of the second plate 42. In other words, the first detection element 19A is provided on the shaft 253 via the reinforcement element 4.

[0029] The robot 2 has a first drive part 27, which is a joint actuator for coupling the base 21 with the first arm 23 and for rotating the first arm 23 to the base 21 about the first axis J1, and a second drive part 28, which is a joint actuator for coupling the first arm 23 with the second arm 24 and for rotating the second arm 24 to the first arm 23 about the second axis J2.

[0030] Furthermore, the robot 2 has a third drive part 291 for rotating the shaft 253 about the third axis J3 by rotating the splined shaft nut 251 and a fourth drive part 292 for moving (up and down) the shaft 253 along the third axis J3 by rotating the ball screw nut 252.

[0031] The first drive unit 27 comprises a motor 27A, an encoder 27B, a reduction gear (not shown), etc. The second drive unit 28 comprises a motor 28A, an encoder 28B, a reduction gear (not shown), etc. The third drive unit 291 comprises a motor 291A, an encoder 291B, a reduction gear (not shown), etc. The fourth drive unit 292 comprises a motor 292A, an encoder 292B, a reduction gear (not shown), etc.

[0032] Motors 27A, 28A, 291A and 292A are each electrically connected to the robot control device 3 via a motor driver (not shown), as shown in Fig. Figure 2 shows that the robot control device 3 controls the power supply conditions of a power source (not shown) for the individual motors 27A, 28A, 291A and 292A, i.e., power supply quantity, power supply timing, etc., via the individual motor drivers. This allows the actuation of the robot arm 22 to be controlled such that each arm is moved into a desired position.

[0033] Encoders 27B, 28B, 291B, and 292B are each electrically connected to the robot control unit 3. Each encoder acquires a rotational position signal from its corresponding motor and transmits it to the robot control unit 3. Based on the rotational position signals received from each encoder, the robot control unit 3 regulates the power supply to motors 27A, 28A, 291A, and 292A. The robot arm 22 is actuated by sensing the rotational positions of individual motors 27A, 28A, 291A, and 292A, thus ensuring precise operation.

[0034] The robot system 1 comprises a first detection element 19A, which is attached to the shaft 253 and detects an inertial force (force) acting on the shaft 253, and a second detection element 19B, which is attached to the second arm 24 and detects an inertial force (force) acting on the second arm 24. The angular velocity and acceleration mentioned later serve as examples of the force acting on the shaft and the force acting on the arm, respectively. (First recording section 19A)

[0035] The first detection element 19A essentially detects an angular velocity about a detection axis Jaz at a location equipped with the first detection element 19A, as shown in Fig. 1 and Fig. Figure 3 shows that the first sensing element 19A is attached to the shaft 253 via the second plate 42 of the reinforcement element 4, as mentioned above. Therefore, it can be said that the first sensing element 19A detects the inertial force (force) acting on the shaft 253. The sensing axis Jaz is an axis along the vertical direction that passes through an origin OA fixed in the first sensing element 19A, as shown in Fig. Figure 3 shows this first acquisition unit 19A, for example, consists of an IMU (Inertial Measurement Unit).

[0036] The axis along the x-axis direction passing through the origin OA is called the capture axis Jax, the axis along the y-axis direction passing through the origin OA is called the capture axis Jay, and the axis along the z-axis direction passing through the origin OA is called the capture axis Jaz.

[0037] The location equipped with the first detection element 19A is not limited to the above-mentioned configuration. The shaft 253, the end effector 26, etc., can be equipped with it. The location on the shaft 253 equipped with the first detection element 19A is not subject to any particular restriction and can be, for example, the outer circumference of the shaft 253, the interior of the shaft 253, in particular the cavity formed in the shaft 253, or the upper end section of the shaft 253. The first detection element 19A can be indirectly attached to the shaft 253 via any component.

[0038] The first detection element 19A can be designed such that it detects not only the angular velocity about the detection axis Jaz, but also at least one of the following: velocity in the direction along the detection axis Jax, velocity in the direction along the detection axis Jay, velocity in the direction along the detection axis Jaz, angular velocity about the detection axis Jax, angular velocity about the detection axis Jay, acceleration in the direction along the detection axis Jax, acceleration in the direction along the detection axis Jay, acceleration in the direction along the detection axis Jaz, acceleration (angular acceleration) about the detection axis Jax, acceleration (angular acceleration) about the detection axis Jay and acceleration (angular acceleration) about the detection axis Jaz.If these acquisition values ​​are used to generate a later-mentioned first correction drive signal S2, the resulting first correction drive signal S2 may be more suitable, thus enabling more precise and effective vibration control.

[0039] The first detection unit 19A is electrically connected to the robot control device 3, as shown in Fig. 2 shown, and sends the acquisition information, i.e., at least the information about the angular velocity about the acquisition axis Jaz, to the robot control device 3 at all times as an electrical signal. From the electrical signal (information) about the angular velocity about the acquisition axis Jaz output by the first acquisition part 19A, the information about the inertial force (force) acting on the shaft 253 can be extracted, whereby the vibration control mentioned later is carried out by a vibration control part 314 of the robot control device 3 using this information. (Second recording section 19B)

[0040] The second detection element 19B essentially detects an angular velocity about a detection axis Jbz at a location equipped with the second detection element 19B, as shown in Fig. 1 and Fig. Figure 3 shows the detection axis Jbz, which is an axis along the vertical direction passing through an origin OB fixed in the second detection part 19B. Since the second detection part 19B is located on the second arm 24, it can be said that it detects an acceleration (force) about the detection axis Jbz of the second arm 24. This second detection part 19B can be configured in the same way as the first detection part 19A.

[0041] The axis along the x-axis direction passing through the origin OB is called the acquisition axis Jbx, the axis along the y-axis direction passing through the origin OB is called the acquisition axis Jby, and the axis along the z-axis direction passing through the origin OB is called the acquisition axis Jbz.

[0042] The second detection element 19B is attached to the lower surface of the second support 241 of the second arm 24. The second detection element 19B is not limited to this configuration, but can, for example, be attached to the upper surface or the side surface of the second support 241, or to a location other than the second support 241, e.g., to any point on the cover 242.

[0043] In contrast, the second detection part 19B can be attached to a point on the first arm 23, e.g. on the upper part, lower part, side part, etc. of the first support 231.

[0044] The second detection part 19B can be designed such that it detects not only the angular velocity about the detection axis Jbz, but also at least one of the following: velocity in the direction along the detection axis Jbx, velocity in the direction along the detection axis Jby, velocity in the direction along the detection axis Jbz, angular velocity about the detection axis Jbx, angular velocity about the detection axis Jby, acceleration in the direction along the detection axis Jbx, acceleration in the direction along the detection axis Jby, acceleration in the direction along the detection axis Jbz, acceleration (angular acceleration) about the detection axis Jbx, acceleration (angular acceleration) about the detection axis Jby and acceleration (angular acceleration) about the detection axis Jbz.If these acquisition values ​​are used to generate a first correction drive signal S2, the resulting first correction drive signal S2 may be more suitable, thus enabling more precise and effective vibration control.

[0045] The second detection unit 19B is electrically connected to the robot control device 3, as shown in Fig. 2 shown, and sends the acquisition information, i.e., at least the information about the angular velocity about the acquisition axis Jbz of the second arm 24, as an electrical signal to the robot control device 3 at all times. From the electrical signal (information) about the angular velocity about the acquisition axis Jbz output by the second acquisition part 19B, the information about the acceleration (force) about the acquisition axis Jbz of the second arm 24 can be extracted, and using this information, the vibration control mentioned later is carried out by a vibration control part 314 of the robot control device 3.

[0046] The robot control device 3 will then be explained.

[0047] In the present embodiment, the robot control device 3 is mounted at a location remote from the robot 2, as shown in Fig. Figure 1 shows the robot control device 3. However, the robot control device 3 is not limited to this setup, but can also be integrated into the base 21. Furthermore, the robot control device 3 has a function for controlling the drive of the robot 2 and is electrically connected to the individual parts of the robot 2 mentioned above.

[0048] The robot control device 3 has a control unit 31, a memory unit 32 and a communication unit 33, as shown in Fig. 2 shown. The individual parts are connected to each other, for example via buses, so that they can communicate with each other.

[0049] The control unit 31, for example, consists of at least one CPU (Central Processing Unit), reads various programs stored in the memory unit 32, such as operating programs, etc., and executes them. A signal generated in the control unit 31 is sent to the individual parts of the robot 2 via the communication unit 33, and signals from the individual parts of the robot 2 are received by the control unit 31 via the communication unit 33. This enables the robot arm 22 to perform predefined work processes under predefined conditions.

[0050] The memory section 32 stores various programs executed by the control section 31. Memory section 32 is defined as a structure comprising volatile memory, such as RAM (Random Access Memory), non-volatile memory, such as ROM (Read Only Memory), a removable external storage device, etc.

[0051] The communication unit 33 sends and receives signals from the robot control device 3 using external interfaces such as wired LAN (Local Area Network), wireless LAN, etc. In this case, communication can take place via a server (not shown) or a network such as the Internet, etc.

[0052] The control unit 31 comprises a drive control unit 311, selection unit 312, calculation unit 313 and vibration control unit 314 as functional parts. (Drive control unit 311)

[0053] The drive control unit 311 reads the operating program stored in the memory unit 32, generates a drive signal S1 to drive the motors 291A and 292A, and controls the actuation of the motors 291A and 292A by means of the drive signal S1. The drive signal S1 is a signal for setting the power supply conditions for the individual motors 291A and 292A, whereby the power supply conditions depend on the respective motor. (Selection section 312)

[0054] During the vibration control process, the selection unit 312 acquires an output value from the first detection unit 19A (hereinafter referred to as "first output value A1") and an output value from the second detection unit 19B (hereinafter referred to as "second output value A2") and selects, according to predefined rules, the ratio in which these values ​​are to be used. That is, the first output value A1 of the first detection unit 19A and the second output value A2 of the second detection unit 19B are selected in a predefined ratio α : 1 - α (where α is any number greater than or greater than 0 and less than 1).

[0055] In the present embodiment, the selection element 312 performs the above selection according to the position of the shaft 253, i.e., according to its position (height) in the direction of the third axis J3. The position of the shaft 253 is the position of a control point fixed at the lower end (front end) of the shaft 253. However, the "position of the shaft 253" can be understood as any position other than the control point. The height of the shaft 253 can be determined from the acquisition value (output value) of the encoder 292B.

[0056] The selection element 312 can be configured such that, according to the position in the plane direction (xy-plane) whose normal corresponds to the third axis J3, the ratio α : 1 - α (where α is any number of 0 or more and 1 or less) is selected, as explained in a third embodiment mentioned later. Furthermore, it can be configured such that, according to the position of the shaft 253 in the three-dimensional direction (each position in the x-, y-, and z-axis directions), the ratio α : 1 - α is selected.

[0057] In the present embodiment, the selection element 312 sets the above value α in the range between 0 or more and 1 or less, according to the position of the shaft 253 in the direction of the third axis J3 (z-axis direction), according to predefined rules. Hereinafter, the position of the shaft 253 in the direction of the third axis J3 is referred to as the "height of the shaft 253". More specifically, α is set to 1 when the height of the shaft 253 is less than a predefined threshold value, while α is set to 0 when the height of the shaft 253 is equal to or greater than the threshold value.

[0058] The threshold value is a value that serves as a criterion for determining the ratio between the first output value A1 and the second output value A2, specifically a value that serves as a criterion for assessing which output value is more suitable for use. The threshold value can, for example, be determined experimentally beforehand and is stored in memory section 32.

[0059] The method for setting the threshold is not subject to any particular restrictions. For example, it can be determined depending on whether the distance between the position of the lower end of the shaft 253 and the lower surface of the second support 241 is equal to or greater than the threshold.

[0060] The selection element 312 does not only set α to 0 or 1, as in the setup described above, but can also, for example, set it to a value between 1 and 0 according to the position of the shaft 253 in the direction of the third axis J3. In other words, α can be set to any value between 0 or more and 1 or less, either stepwise or continuously, according to the height of the shaft 253. (Calculation part 313)

[0061] The calculation part 313 calculates the first output value A1 × α + the second output value A2 × (1 - α) = output value A and thus determines the output value A. The output value A is a value obtained taking into account the ratio selected by the selection part 312. That is, the output value A is a value of the result after weighting, which of the first output value A1 and second output value A2 is to be used, and in what ratio.

[0062] In the present embodiment, the first output value A1 is selected when the height of shaft 253 at a low position is less than the threshold value. The second output value A2 is selected when the height of shaft 253 at a high position is equal to or greater than the threshold value.

[0063] This selection part 312 and calculation part 313 determine the output value A in real time or at specified time intervals and send it to the vibration control part 314. (Vibration control part 314)

[0064] The vibration control unit 314 reads the operating program stored in the memory unit 32 and generates a first correction drive signal S2 to drive motors 27A and 28A based on the output value A. The vibration control unit 314 then controls the actuation of motors 27A and 28A by means of the first correction drive signal S2. This control of the actuation of motors 27A and 28A by the vibration control unit 314 based on the first correction drive signal S2 is also referred to as vibration control. The first correction drive signal S2 is a signal used to establish the power supply conditions for motors 27A and 28A. This first correction drive signal S2 is accompanied by a correction such that it eliminates a noise component caused by vibrations of the first arm 23 and second arm 24 in the horizontal direction, as will be discussed later.The oscillations of the first arm 23 and second arm 24 in the horizontal direction are referred to below as "unnecessary oscillations".

[0065] The first correction drive signal S2 for motor 27A and the first correction drive signal S2 for motor 28A differ in their power supply conditions, but this will not be considered in the following. A simple expression, "controlling the actuation of motors 27A and 28A by the first correction drive signal S2", is used. (Gaining the issue value A)

[0066] The vibration control unit 314 obtains the output value A determined by the computing unit 313 in real time. This angular velocity information can be displayed, for example, in a diagram according to Fig. 4 will be shown. The diagram according to Fig. Figure 4 is a diagram, represented with time in the abscissa and angular velocity of the output value A in the ordinate.

[0067] The output value A contains a velocity component V1 (not shown), which is a component of the angular velocity of the first arm 23 and second arm 24 about the z-axis when the first arm 23 and second arm 24 are driven according to the operating program, and a velocity component V2 (see Fig. 5), which is a component of the angular velocity of shaft 253 caused by unnecessary vibrations. That is, the output value A is a sum of the velocity components V1 and V2.

[0068] It can be said that the velocity component V2 is a noise component caused by unnecessary vibrations. One reason for the presence of the velocity component V2 is that, in the end effector 26, which consists of a tool, etc., with a rotating part, the shaft 253 unintentionally oscillates in the direction of rotation about the third axis J3 due to the rotation of the rotating part, etc. (Calculating the velocity component V1)

[0069] The vibration control unit 314 determines the velocity component V1. The velocity component V1 is represented by V1 = ω1 + ω2, since it is a sum of the angular velocity ω1 of the first arm 23 about the first axis J1 and the angular velocity ω2 of the second arm 24 about the second axis J2.

[0070] The angular velocity ω1 can be determined from the acquisition value of encoder 27B and the angular velocity ω2 from the acquisition value of encoder 28B.

[0071] The angular velocities ω1 and ω2 are not only determined from the acquisition values ​​of the encoders 27B and 28B, but can also be determined, for example, either based on the velocity information contained in the operating program in real time or in advance, or from information about the position of the robot arm 22 obtained by analyzing the position of the robot arm 22 based on images of the robot arm 22 taken by a separately mounted image acquisition unit (camera), which is not shown. This also applies to determining the height of the shaft 253 and the determination of an angle θ mentioned later. (Calculating the velocity component V2)

[0072] The vibration control unit 314 subtracts the velocity component V1 from the sum of the values ​​V3 to determine the velocity component V2. That is, the velocity component V2 is determined by calculating V2 = V3 - V1 = V3 - (ω1 + ω2).

[0073] The velocity component V2 can be represented, for example, by a diagram according to Fig. 5 will be shown. The diagram according to Fig. Figure 5 is a diagram, represented with time on the abscissa and angular velocity on the ordinate. (Generating the first correction drive signal S2)

[0074] The vibration control unit 314 generates the first correction drive signal S2, which is accompanied by a correction such that the velocity component V2 determined above is eliminated, i.e., the noise component caused by the unnecessary vibrations is removed. Then, the motors 27A and 28A, i.e., the first drive unit 27 and the second drive unit 28, are driven by the first correction drive signal S2. This enables operation in such a way that the unnecessary vibrations are compensated. This vibration control increases the positional accuracy of the first arm 23 and second arm 24, and consequently the working accuracy of the robot 2. Furthermore, noise caused by the vibrations of the first arm 23 and second arm 24 can be suppressed.

[0075] The vibration control unit 314 can perform the above vibration control only during the standstill of the robot arm 22, i.e., standstill of the rotary operation of the first arm 23 and second arm 24, or only during the actuation of the robot arm 22, or both during the standstill of the robot arm 22 and during its actuation.

[0076] During the standstill of the rotary operation of the first arm 23 and second arm 24, the motors 27A and 28A remain stationary, so that ω1 = 0, ω2 = 0 and V1 = V3 (output value A) can be.

[0077] If only a single sensing element, corresponding to the second sensing element 19B, is attached, as before, the sensing element cannot accurately detect the vibrations of the robot arm depending on the position of the robot arm, thus preventing highly accurate vibration control. More specifically, it is difficult to accurately detect the vibrations of the robot arm in a state where a shaft corresponding to shaft 253 has descended to a relatively low point if only a single sensing element is attached at the location equipped with the second sensing element 19B.On the other hand, it is difficult to accurately detect the vibrations of the robot arm in a state where a wave corresponding to wave 253 has risen to a relatively high point, if only a single detection part is attached at the point equipped with the first detection part 19A, because the vibrations of the wave corresponding to wave 253 cause noise.

[0078] In robot system 1, the first detection unit 19A and the second detection unit 19B are therefore each provided on the shaft 253 and the second arm 24 (or first arm 23) so that the first output value A1 from the first detection unit 19A and the second output value A2 from the second detection unit 19B are weighted according to predefined rules and then used. That is, the selection unit 312 selects the first output value A1 and the second output value A2 in the predefined ratio α : 1 - α (where α is any number of 0 or more and 1 or less), and then the calculation unit 313 determines the first output value A1 × α + the second output value A2 × (1-α) = output value A.Then, based on the output value A, the vibration control unit 314 generates the first correction drive signal S2, which is accompanied by a correction such that the noise component caused by the unnecessary vibrations is eliminated, in order to drive the first drive unit 27 with the motor 27A and the second drive unit 28 with the motor 28A by means of the first correction drive signal S2.

[0079] In the present embodiment, the selection element 312 sets α to 1 when the height of the shaft 253 is less than a predetermined threshold, while it sets α to 0 when the height of the shaft 253 is equal to or greater than the threshold. That is, vibration control is performed using the first output value A1 as output value A in a state where the shaft 253 has descended to a relatively low position, since the effectiveness of the first output value A1 from the first sensing element 19A is considered higher. Vibration control is performed using the second output value A2 as output value A in a state where the shaft 253 has risen to a relatively high position, since the effectiveness of the second output value A2 from the second sensing element 19B is considered higher. This allows a more accurate and suitable output value A to be determined according to the height of the shaft 253.Therefore, a more suitable vibration control, in particular high-precision vibration control, can be achieved using the output value A.

[0080] As explained above, a robot system 1 comprises a base 21, a first arm 23 rotatably connected to the base 21 about a first axis J1, a first drive element 27 for the rotary drive of the first arm 23, a second arm 24 rotatably connected to the first arm 23 about a second axis J2 parallel to the first axis J1, a second drive element 28 for the rotary drive of the second arm 24, a shaft 253 movably connected to the second arm 24 along a third axis J3 parallel to the second axis J2, a third drive element 291 for the rotary drive of the shaft 253, a fourth drive element 292 that drives the shaft 253 such that it is moved, a first sensing element 19A provided on the shaft 253 and sensing a force (inertial force) acting on the shaft 253, and a second sensing element 19B.which is provided on the first arm 23 or second arm 24 (second arm 24 in the present embodiment) and detects a force acting on the equipped first arm 23 or second arm 24 (second arm 24 in the present embodiment), a control part 31 for controlling the actuation of the first drive part 27, second drive part 28, third drive part 291 and fourth drive part 292, wherein the control part 31 includes a selection part 312 which, according to a position of the shaft 253 in the direction of the third axis J3 or in the plane direction whose normal corresponds to the third axis J3 (position of the shaft 253 in the direction of the third axis J3 in the present embodiment), selects a first output value A1 of the first detection part 19A and a second output value A2 of the second detection part 19B in a predetermined ratio α (where α is any number of 0 or more and 1 or less), a Calculation part 313,The device determines an output value A based on at least one of the first output value A1 and the second output value A2, which is selected based on the predetermined ratio α, and comprises a vibration control unit 314 which, based on the output value A, generates a first correction drive signal S2 for eliminating a noise component caused by unnecessary vibrations of the first arm 23 or second arm 24 and actuates at least one of the first drive unit 27 and second drive unit 28 (the two drive units in the present embodiment) by means of the first correction drive signal S2. This allows for a more accurate and suitable output value A and a first correction drive signal S2 based on it, corresponding to the position of the robot arm 22, in particular taking into account the position of the shaft 253 in the direction of the third axis J3 or in the plane direction whose normal corresponds to the third axis J3.This can be obtained. Therefore, highly accurate vibration control can be achieved using the first correction drive signal S2.

[0081] The first detection element 19A can be attached directly to the shaft 253 or via a component, structure, etc., such as the reinforcing element 4, to the shaft 253, as in the present embodiment, as mentioned above. Furthermore, the second detection element 19B can be attached at any point on the first arm 23.

[0082] In the present embodiment, the setup in which motors 27A and 28A are driven by the first correction drive signal S2 and motors 291A and motor 292A are driven by the drive signal S1 is as shown in Fig. Figure 2 shows and explains the invention. The present invention is not limited to this and can be configured such that at least one of the motors 291A and 292A is also driven by the first correction drive signal S2 in addition to the motors 27A and 28A. In this case, a superior vibration effect on the entire robot arm 22 can be achieved, thus increasing the working accuracy of the robot 2 more effectively.

[0083] Furthermore, it is possible to configure the setup so that either motor 27A or motor 28A is driven by the drive signal S1.

[0084] It is explained that the selection element 312 performs the selection with the predetermined ratio α : 1 - α according to the position of the shaft 253 in the direction of the third axis J3. The present invention is not limited to this and can be configured such that the selection with the predetermined ratio α : 1 - α (where α is any number of 0 or more and 1 or less) is carried out according to the position of the shaft 253 in the plane direction whose normal corresponds to the third axis J3, as explained in a third embodiment, or that the selection with the predetermined ratio α : 1 - α is carried out according to the position of the shaft 253 in one of the directions of the third axis J3 and the plane direction whose normal corresponds to the third axis J3, or in both directions (the three-dimensional direction).

[0085] The selection element 312 sets α to a value between 1 and 0 according to the position of shaft 253 in the direction of the third axis J3. This allows α to be adjusted to a suitable value taking into account the position of shaft 253 in the direction of the third axis J3. Therefore, more precise vibration control is possible.

[0086] The selection element 312 sets α to 1 when the position of shaft 253 in the direction of the third axis J3 is less than a predefined threshold, while it sets α to 0 when the position of shaft 253 in the direction of the third axis J3 is equal to or greater than the threshold. This allows for a superior vibration effect while simplifying control processing.

[0087] The invention is not limited to the above setup, but can be designed such that two or more threshold values ​​are used and the individual threshold values ​​are each compared with the position of the shaft 253 in the direction of the third axis J3. That is, such a setup is possible in which α can be set in multiple stages.

[0088] An example of the inventive method for controlling a robot is then presented using a flowchart in accordance with Fig. Section 6 explains. The following section explains the procedure after the execution of the read operating program.

[0089] First, in step S101, selection part 312 selects the first output value A1 of the first acquisition part 19A and the second output value A2 of the second acquisition part 19B in the predefined ratio α : 1 - α (where α is any value greater than or equal to 0 and less than or equal to 1). In this step, selection part 312 performs the selection according to the position of wave 253, i.e., according to its position in the direction of the third axis J3 and the plane direction (xy-plane) whose normal corresponds to the third axis J3. More specifically, the information on the height of wave 253 (position in the direction of the third axis J3) is obtained by encoder 292B, where α is set to 1 if the height of wave 253 is less than a predefined threshold, while α is set to 0 if the height of wave 253 is equal to or greater than the threshold. This step S101 is a first step.

[0090] Subsequently, in step S102, the arithmetic unit 313 calculates the first output value A1 × α + the second output value A2 × (1 - α) = output value A to determine the output value A. That is, the output value A is determined by substituting the value α set in step S101 in the equation with the first output value A1 × α + second output value A2 × (1 - α). This step S102 is a second step.

[0091] Subsequently, in step S103, the vibration control unit 314 determines the noise component, i.e., the velocity component V2. The velocity component V2 is determined by calculating V2 = V3 (output value A) - V1 = V3 - (ω1 + ω2), as mentioned above.

[0092] Subsequently, in step S104, the vibration control unit 314 generates the first correction drive signal S2, which is accompanied by a correction such that the velocity component V2 is eliminated, i.e., the noise component caused by the unnecessary vibrations is removed. The first correction drive signal S2 controls the actuation of motors 27A and 28A. This actuates the first drive unit 27 and the second drive unit 28 in a vibration-controlled state. These steps S103 and S104 constitute a third step.

[0093] The first arm 23 and second arm 24 are driven in a state where their behavior is subject to suitable vibration control by the vibration control unit 314, by performing steps S101 - S104 sequentially. This means that the robot arm 22 can be operated in such a way that unnecessary vibrations are compensated for. This allows for more precise and highly accurate vibration control, taking into account the height of the shaft 253. Therefore, the positional accuracy of the shaft 253 and, consequently, the working accuracy of the robot 2 can be increased.

[0094] As explained above, the method for controlling a robot is a method for controlling the actuation of the robot 2 with a base 21, a first arm 23 rotatably connected to the base 21 about a first axis J1, a first drive element 27 for rotary driving of the first arm 23, a second arm 24 rotatably connected to the first arm 23 about a second axis J2 parallel to the first axis J1, a second drive element 28 for rotary driving of the second arm 24, a shaft 253 movably connected to the second arm 24 along a third axis J3 parallel to the second axis J2, a third drive element 291 for rotary driving of the shaft 253, a fourth drive element 292 that drives the shaft 253 such that it is moved, a first sensing element 19A provided on the shaft 253 and sensing a force (inertial force) acting on the shaft 253, and a second Recording section 19B,which is provided on the first arm 23 or second arm 24 (second arm 24 in the present embodiment) and detects a force acting on the equipped first arm 23 or second arm 24 (second arm 24 in the present embodiment), wherein the method comprises a first step (step S101) in which, according to a position of the shaft 253 in the direction of the third axis J3 or in the plane direction whose normal corresponds to the third axis J3, a first output value A1 of the first detection part 19A and a second output value A2 of the second detection part 19B are selected in a predetermined ratio α (where α is any number of 0 or more and 1 or less), a second step (step S102) in which an output value A is determined based on at least one of the first output value A1 and second output value A2 based on the predetermined ratio α, and a third step (steps S103 and S104),The system comprises a first correction drive signal S2, generated based on the output value A, for eliminating a noise component caused by unnecessary vibrations of the first arm 23 or second arm 24, and actuating at least one of the first drive part 27 and second drive part 28 (the two drive parts in the present embodiment). This allows for a more accurate and suitable output value A and a first correction drive signal S2 based on this value, corresponding to the position of the robot arm 22, particularly taking into account the position of the shaft 253 in the direction of the third axis J3 or in the plane direction whose normal corresponds to the third axis J3. Therefore, highly accurate vibration control can be achieved using the first correction drive signal S2. < Second embodiment >

[0095] Fig. Figure 7 is a diagram illustrating a calibration curve used to determine an output value A on a robot system according to a second embodiment of the present invention.

[0096] The second embodiment of the robot system and method for controlling a robot according to the invention is described below with reference to Fig. 7 explained. In the following, the main difference to the first embodiment is explained, and the explanation of the same things is omitted.

[0097] The selection element 312 sets α (any number of 0 or more and 1 or less) to a predetermined value between 1 and 0 according to the position of the shaft 253 in the direction of the third axis J3, i.e., its height. In the present embodiment, the selection element 312 continuously varies α in the range between 1 and 0. Specifically, the selection element 312 sets α based on the calibration curve K according to Fig. 7. The calibration curve K shows a favorable value α for each position of shaft 253 in the direction of the third axis J3 and represents data indicating which ratio between the first output value A1 and the second output value A2 is suitable for determining the output value A. The calibration curve K can, for example, be determined experimentally beforehand and is stored in memory section 32. This information can be stored in memory section 32 in the form of a table or function instead of the calibration curve K.

[0098] The selection part 312 obtains the information about the height of the wave 253 from the encoder 292B and sets α based on the calibration curve K (corresponding to step S101 in the first embodiment). Subsequently, the computation part 313 calculates the first output value A1 × α + the second output value A2 × (1 - α) = output value A to determine the output value A. That is, the output value A is determined by substituting the value α set in step S101 in the equation with the first output value A1 × α + second output value A2 × (1 - α) (corresponding to step S102 in the first embodiment).

[0099] The vibration control unit 314 then determines the noise component, i.e., the velocity component V2, and generates the first correction drive signal S2, which is accompanied by a correction such that the velocity component V2 is eliminated, i.e., the noise component caused by the unnecessary vibrations is removed. The first correction drive signal S2 drives the motors 27A and 28A, i.e., the first drive unit 27 and the second drive unit 28 (corresponding to steps S103 and S104 in the first embodiment).

[0100] This control allows for the determination of a more precise and suitable output value A, as the height of shaft 253 is considered more closely and in multiple stages. Therefore, vibration control using the output value A can be performed with significantly improved accuracy.

[0101] In this way, the selection element 312 in the present embodiment varies continuously between 1 and 0 according to the position of the shaft 253 in the direction of the third axis J3 α. This allows for a more accurate and suitable output value A and a first correction drive signal S2 based on this value, taking into account the height of the shaft 253. Therefore, more precise vibration control can be achieved using the first correction drive signal S2.

[0102] The selection part 312 can also be designed such that it varies in multiple stages in the range between 1 and 0 according to the position of the shaft 253 in the direction of the third axis J3 α.

[0103] The calibration curve K in Fig. Figure 7 is represented by a sloping straight line. It is not limited to this line and can be represented, for example, by a polygon or an arc such as a hyperbola, parabola, logarithmic curve, etc.

[0104] Furthermore, an optimal curve can be selected from several existing calibration curves K1, K2, K3 ... Kn (where n is a natural number) according to the operating conditions of the robot 2, e.g. type, shape, weight, work content, etc. of the end effector 26 or workpiece. < Third embodiment >

[0105] Fig. Figure 8 is a vertical view from above, i.e. in the -z-axis direction, of a robot belonging to a robot system according to a third embodiment of the present invention.

[0106] The third embodiment of the robot system and method for controlling a robot according to the invention is described below with reference to Fig. 8 explained. In the following, the main difference to the first embodiment is explained, and the explanation of the same things is omitted.

[0107] In the present embodiment, the selection element 312 selects the first output value A1 of the first detection element 19A and the second output value A2 of the second detection element 19B in the predetermined ratio α : 1 - α (where α is any number greater than or greater than 0 and less than 1) according to the position of the shaft 253 in the plane direction (direction of the xy-plane), whose normal corresponds to the third axis J3. The selection element 312 sets the above α to a value between 1 and 0 according to the position of the shaft 253 in the direction of the xy-plane.

[0108] The position in the direction of the xy-plane can be determined based on the information of the angle θ of the second arm 24 to the first arm 23 (see. Fig. 8) The angle θ is the angle between the centerline of the first arm 23, i.e., segment 200, which connects the first axis J1 with the second axis J2 and runs in a horizontal direction, and the centerline of the second arm 24, i.e., segment 300, which connects the second axis J2 with the third axis J3 and runs in a horizontal direction. This angle θ can be determined, for example, from the output value of encoder 28B.

[0109] If the value |θ|, representing the absolute value of the angle θ, is equal to or greater than a predefined threshold θ0 (e.g., 30°) (θ0 ≤ |θ|), i.e., if the bend of the second arm 24 relative to the first arm 23 is substantial, α is set to 0, resulting in the output value A being equal to the second output value A2. Conversely, if the value |θ| is less than the predefined threshold θ0 (|θ| < θ0), i.e., if the bend of the second arm 24 relative to the first arm 23 is absent or minimal, α is set to 1, resulting in the output value A being equal to the first output value A1. The threshold θ0 is a value that serves as a criterion for determining the relationship between the first output value A1 and the second output value A2, specifically a value that serves as a criterion for assessing which output value is more suitable for use. The threshold θ0 can, for example,It is determined experimentally beforehand and is stored in memory section 32. Instead of |θ|, θ can be used as the value to be compared with the threshold θ0.

[0110] The computing unit 313 then determines the output value A. Based on the output value A, the vibration control unit 314 generates the first correction drive signal S2, which is accompanied by a correction such that the noise component caused by the unnecessary vibrations is eliminated, and actuates the first drive unit 27 and the second drive unit 28 by the first correction drive signal S2. This allows a more accurate and suitable output value A to be determined, taking into account the position of the shaft 253 in the plane direction (direction of the xy-plane), whose normal corresponds to the third axis J3. Therefore, highly accurate vibration control can be appropriately achieved using the output value A.

[0111] In particular, in a state where the second arm 24 is not bent or only slightly bent relative to the first arm 23 (|θ| < θ0), the shaft 253 lies at a location in the xy-plane farther from the first axis J1, so that the first sensing element 19A can detect the unwanted vibrations more accurately than the second sensing element 19B. Conversely, in a state where the second arm 24 is considerably bent relative to the first arm 23 (θ0 ≤ |θ|), the shaft 253 lies at a location in the xy-plane closer to the first axis J1, so that the second sensing element 19B can detect the unwanted vibrations more accurately than the first sensing element 19A. This selection makes the setup according to the present embodiment effective in achieving the advantage mentioned in the first embodiment.

[0112] In addition to the above setup, α can be selected (set) in the same way as above, taking into account the angle θ1 of the first arm 23 to the base 21. This allows the position of the shaft 253 in the plane direction (direction of the xy-plane), whose normal corresponds to the third axis J3, to be determined more precisely, and furthermore enables highly accurate vibration control. < Fourth embodiment >

[0113] Fig. Figure 9 is a block diagram of a robot system according to a fourth embodiment of the present invention.

[0114] The fourth embodiment of the robot system and method for controlling a robot according to the invention is described below with reference to Fig. 9 explained. In the following, the main difference to the first embodiment is explained, and the explanation of the same things is omitted.

[0115] In the present embodiment, the selection element 312, in addition to the height of the shaft 253, also considers a moment of inertia (inertial force) about the first axis J1 in order to select the ratio α : 1 - α (where α is any number of 0 or more and 1 or less). That is, the selection element 312 obtains αk by multiplying a coefficient k corresponding to the moment of inertia about the first axis J1.

[0116] The coefficient k is varied depending on the value of the moment of inertia about the first axis J1. Therefore, the coefficient k can be considered a variable. The coefficient k is determined appropriately based on the value of the moment of inertia about the first axis J1, a formula relating it to the coefficient k, a calibration curve, a table, etc. This formula, calibration curve, or table is pre-stored in memory section 32.

[0117] The control unit 31 has an inertia moment calculation unit 315, as shown in Fig. Figure 9 shows the moment of inertia calculation part 315. This calculates the moment of inertia about the first axis J1 based on the torque about the first axis J1 and the information about the angular acceleration of the second arm 24 relative to the first arm 23.

[0118] Then the computing unit 313 determines the output value A based on αk. Based on the output value A, the vibration control unit 314 generates the first correction drive signal S2, which is accompanied by a correction such that the noise component caused by the unnecessary vibrations is eliminated, and actuates the first drive unit 27 and the second drive unit 28 by means of the first correction drive signal S2.

[0119] In this way, the selection element 312, in the present embodiment, generates the first correction drive signal S2, taking into account the moment of inertia about the first axis J1 in addition to the height of the shaft 253. This allows for a more accurate and suitable output value A and a first correction drive signal S2 based on this value, also taking into account the moment of inertia about the first axis J1. The first correction drive signal S2 controls the actuation of the motors 27A and 28A. This ensures that the first drive element 27 and the second drive element 28 are actuated in a highly accurate vibration-controlled state.

[0120] In this way, a more precise vibration control can be achieved in the present embodiment, since the ratio α : 1 - α (where α is any number of 0 or more and 1 or less) is selected taking into account the moment of inertia (inertial force) about the first axis J1.

[0121] The individual embodiments of the robot system and method for controlling a robot according to the invention are explained above, but the present invention is not limited to these. Each part of the robot system can be replaced by any structure that can perform the same function. Furthermore, any structures can be added to the robot system.

[0122] Furthermore, the structure of the first embodiment can be arbitrarily combined with the structure of at least one of the second, third, and fourth embodiments. The structure of the second embodiment can also be arbitrarily combined with the structure of at least one of the third and fourth embodiments. Finally, the structure of the third embodiment can be arbitrarily combined with the structure of the fourth embodiment.

[0123] In the inventive method for controlling a robot, any number of process steps can be added to the above-mentioned individual embodiments for any purpose. [REFERENCE MARK LIST] 1 robot system 2 robots 3 Robot control device 4 Reinforcement part 19A first recording section 19B second recording part 21 Base 22 robot arm 23 first arm 24 second arm 25 working head 26 End effector 27 first drive part 27A Motor 27B encoder 28 second drive part 28A Motor 28B encoder 31 Control unit 32 memory section 33 Communication section 41 first record 42 second record 43 Auxiliary shaft 200 route 231 first document 241 second document 242 Cover 251 Splined shaft nut 252 Ball screw nut 253 wave 291 third drive part 291A Motor 291B Encoder 292 fourth drive part 292A Motor 292B encoder 300 route 311 Drive control unit 312 Selection section 313 Calculation section 314 Vibration control unit 315 Moment of inertia calculation section A first output value A2 second output value J1 first axis J2 second axis J3 third axis Jax detection axis Jay detection axis Jaz detection axis JBX acquisition axis Jby detection axis Jbz recording axis K calibration curve OA Origin OB Ursprung S1 drive signal S101 Step S102 Step S103 Step S104 Step S2 first correction drive signal V1 speed component V2 speed component V3 total value θ angle QUOTES INCLUDED IN THE DESCRIPTION

[0000] This list of documents cited by the applicant was automatically generated and is included solely for the reader's convenience. The list is not part of the German patent or utility model application. The DPMA accepts no liability for any errors or omissions. Cited patent literature

[0000] JP 2022-177607 A

[0004]

Citation Information

Patent Citations

  • Manipulator

    JP2022177607A