ROBOT SYSTEM AND METHOD FOR CONTROLLING A ROBOT

The robot system addresses the issue of shaft vibrations by using a detection element and control unit to generate correction signals, enhancing positional and working accuracy through vibration compensation.

DE102025139985A1Pending Publication Date: 2026-04-09SEIKO EPSON CORP
View PDF 8 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 fail to effectively control vibrations in the direction of rotation of the shaft, leading to reduced positional accuracy and working accuracy of the robot arm.

Method used

A robot system with a base, first and second arms, and a shaft, equipped with a detection element to measure rotational speed and a control unit that generates a correction drive signal to eliminate noise components caused by shaft vibrations, thereby improving positional accuracy.

Benefits of technology

The system enhances the positional accuracy of the shaft and overall working accuracy of the robot by compensating for vibrations in the direction of rotation, thus improving operational precision.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

[Task] Providing a robot system and method for controlling a robot, which can increase the positional accuracy of a shaft about a third axis. [Solution] A robot system is characterized in that it is provided with a base, a first arm, a first drive part, a second arm, a second drive part, a shaft, a third drive part for rotary drive of the shaft, a first sensing part which is provided on the shaft and which detects information about a rotational speed of the shaft, and a control part for controlling the actuation of the first, second and third drive part, and that the control part has a vibration control part which, based on an output value of the first sensing part, generates a first correction drive signal for eliminating a noise component caused by vibrations of the shaft about the third axis and actuates the third drive part by means of the first correction drive signal.
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, in recent years factories have been using robots with robotic arms to perform work processes such as manufacturing, processing, and assembling products and components, thus automating tasks that were previously done manually. These robots incorporate vibration control to suppress vibrations associated with their drive systems, resulting in smoother and more precise robot operation and thus efficient execution of the work processes.

[0003] A robot system according to patent document 1 comprises a robot and a robot control device for controlling the robot's operation. The robot comprises a base, a first arm attached to the base and rotated about a first axis relative to the base, a second arm attached to the first arm and rotated about a second axis relative to the first arm, and a shaft attached to the second arm that moves up and down and rotates relative to the second arm.

[0004] The robot in the robot system according to patent document 1 has sensors for detecting the torque at the joints between the individual arms. The robot control device estimates vibrations of the robot arm based on the sensor outputs and thus obtains vibration information. It then recognizes the received vibration information as noise, generates a drive signal to eliminate the noise, and uses this drive signal to power the motor built into each joint. This enables vibration control. [STATE OF THE ART DOCUMENT][PATENT DOCUMENT]

[0005] Patent Document 1: JP 2017-056544 A [SUMMARY OF THE INVENTION][TASK TO BE SOLVED BY THE INVENTION]

[0006] However, on the robot according to patent document 1, vibration control for vibrations of the shaft attached to the second arm in the direction of rotation is not possible. Therefore, this results in a reduction of the shaft's positional accuracy in the direction of rotation and, consequently, a reduction in the robot's working accuracy. [Means of solving the problem]

[0007] 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 and rotatably connected about the third axis, a third drive component for the rotary drive of the shaft a first detection element, which is provided on the shaft and detects information about the rotational speed of the shaft, and equipped with a control unit for controlling the actuation of the first, second and third drive part wherein the control unit is a vibration control unit which, based on an output value of the first sensing unit, generates a first correction drive signal for the elimination of a noise component caused by vibrations of the shaft about the third axis and actuates the third drive unit by means of the first correction drive signal, exhibits.

[0008] The inventive method for controlling a robot with a base, a first arm 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 and rotatably connected about the third axis, a third drive component for the rotary drive of the shaft and a first detection part, which is provided on the shaft and detects information about the rotational speed of the shaft, characterized by the fact that the process The process includes a first step in which an output value is obtained from the first detection part, and a second step in which, based on the output value obtained in the first step, a first correction drive signal is generated to eliminate a noise component caused by vibrations of the shaft around the third axis, and the third drive part is actuated by the first correction drive signal. [BRIEF DESCRIPTION OF THE DRAWINGS] Fig. Figure 1 is a view illustrating the overall structure of a robot system according to a first and third embodiment of the present invention. Fig. 2 is a block diagram of the robot system according to Fig. 1. Fig. 3 is a side view of a front end section of a shaft, which is connected to the robot system according to Fig. 1 listened. Fig. Figure 4 is a diagram for the time-dependent representation of the rotational speed of the shaft. Fig. Figure 5 is a diagram for the time-dependent representation of a component of the rotational speed of the shaft caused by vibrations of the shaft in the direction of rotation about a third axis. 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 side view of a front end section of a shaft belonging to a robot system according to a second embodiment of the present invention. Fig. Figure 8 is a block diagram of the robot system according to the third embodiment of the present invention. [FORM OF EXECUTION OF THE INVENTION]

[0009] 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>

[0010] 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. 3 is a side view of a front end section of a shaft, which is connected to the robot system according to Fig. 1 listened. Fig. Figure 4 is a diagram for the time-dependent representation of the rotational speed of the shaft. Fig. Figure 5 is a diagram for the time-dependent representation of a component of the rotational speed of the shaft caused by vibrations of the shaft in the direction of rotation about a third axis. 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.

[0011] 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.

[0012] 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’.

[0013] To simplify the explanation, the x-, y-, and z-axes are shown in Fig. 1, Fig. 3 and Fig. 7 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. 7 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. 7 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”.

[0014] 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°.

[0015] 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.

[0016] First, robot 2 will be explained.

[0017] 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 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. Hereinafter, these will generally be referred to simply as "work processes".

[0018] 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.

[0019] 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.

[0020] 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.

[0021] 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.

[0022] 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.

[0023] The lower end section (front end section) of shaft 253 is equipped with an end effector 26. The end effector 26 is selected according to the circumstances, being removable and suitable for the target operations. The end effector 26 is not subject to any particular restrictions. Examples include a hand, polishing machine, grinding machine, cutting machine, spray gun, laser irradiation device, screwdriver, wrench, application device, etc.

[0024] The robot 2, on which the front end section of the robot arm 22, in particular the lower end section of the shaft 253, is equipped with this end effector 26, drives the robot arm 22 and performs work operations such as manufacturing, processing, applying, assembling, dismantling, etc. of objects, e.g. components and products.

[0025] 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.

[0026] 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.

[0027] 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.

[0028] 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.

[0029] 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.

[0030] The robot system 1 has a first detection element for acquiring information about the rotational speed of the shaft 253. The "rotational speed of the shaft 253" here essentially refers to the rotational speed of the shaft 253 due to its rotation, i.e., rotational speed about the third axis J3 (about the z-axis). However, according to the invention, it is not excluded that the rotational speed of the shaft 253 due to its revolution is also included, e.g., the component of the rotational speed about the first axis J1 and the component of the rotational speed about the second axis J2.

[0031] An inertial sensor 19 represents the first detection element for acquiring information about the rotational speed of the shaft 253 about the third axis J3, i.e., an angular velocity of the shaft 253 about the third axis J3, and is, for example, formed from an IMU (Inertial Measurement Unit). In the following, an output value of the inertial sensor 19 is explained as the "angular velocity of the shaft 253 about the z-axis." Furthermore, the "angular velocity of the shaft 253 about the z-axis" is also simply referred to as the "angular velocity of the shaft 253."

[0032] The inertial sensor 19 is attached to the shaft 253, as shown in Fig. 1 and Fig. Figure 3 shows this. Specifically, the inertia sensor 19 is fixed to the outer circumferential part near the lower end section of the shaft 253. That is, the inertia sensor 19 is positioned eccentrically to the third axis J3 and rotates together with the shaft 253. This allows the inertia sensor 19 to acquire information about the angular velocity (rotational speed) of the shaft 253 more accurately, sufficiently, and efficiently. Therefore, a more suitable first correction drive signal S2 can be generated, as mentioned later.

[0033] The location of the shaft 253 equipped with the inertial sensor 19 is not limited to the location mentioned above and can be, for example, the interior of the shaft 253, in particular the cavity formed in the shaft 253 or the upper end section of the shaft 253.

[0034] The inertial sensor 19 can be designed such that it detects not only the angular velocity of the shaft 253, but also at least one of the following: the velocity of the shaft 253 in the direction along the x-axis, the velocity of the shaft 253 in the direction along the y-axis, the velocity of the shaft 253 in the direction along the z-axis, the angular velocity of the shaft 253 about the x-axis, the angular velocity of the shaft 253 about the y-axis, the acceleration of the shaft 253 in the direction along the x-axis, the acceleration of the shaft 253 in the direction along the y-axis, the acceleration of the shaft 253 in the direction along the z-axis, the acceleration (angular acceleration) of the shaft 253 about the x-axis, the acceleration (angular acceleration) of the shaft 253 about the y-axis, and the acceleration (angular acceleration) of the shaft 253 about the z-axis.If these acquisition values ​​are used to generate the first correction drive signal S2, the resulting first correction drive signal S2 may be more suitable, thus enabling more precise and effective vibration control.

[0035] The inertial sensor 19 is electrically connected to the robot control device 3, as shown in Fig. 1 and Fig. 2 shown, and sends the acquired information about the angular velocity of the shaft 253 to the robot control device 3 at all times as an electrical signal. Using the electrical signal (information) about the angular velocity of the shaft 253 output by the inertial sensor 19, the vibration control mentioned later is carried out by a vibration control unit 312 of the robot control device 3.

[0036] An inertial sensor (second detection element) 19 is mounted on the second support 241 of the second arm 24, as shown in Fig. Figure 1 shows the inertia sensor 19, but in the present embodiment, it does not contribute to the vibration control by the vibration control unit 312. The inertia sensor 19 can be omitted entirely.

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

[0038] 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.

[0039] 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.

[0040] 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.

[0041] 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.

[0042] 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.

[0043] The control unit 31 comprises a drive control unit 311 and a vibration control unit 312 as functional components. The drive control unit 311 reads the operating program stored in the memory unit 32, generates a drive signal S1 to drive the motors 27A, 28A, and 292A, and controls the actuation of the motors 27A, 28A, 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 27A, 28A, and 292A, whereby the power supply conditions depend on the respective motor.

[0044] The vibration control unit 312 reads the operating program stored in the memory unit 32, generates a first correction drive signal S2 to drive the motor 291A instead of the drive signal S1, and controls the actuation of the motor 291A by means of the first correction drive signal S2. The control of the actuation of the motor 291A by the vibration control unit 312 based on the first correction drive signal S2 is also referred to as vibration control. The first correction drive signal S2 is a signal for setting the power supply conditions for the motor 291A. The first correction drive signal S2 is a signal accompanied by a correction such that a noise component caused by vibrations of the shaft 253 about the third axis J3 is eliminated, as will be mentioned later. (Gaining the output value of the inertial sensor 19)

[0045] The vibration control unit 312 acquires the output value of the inertial sensor 19, i.e., the information on the angular velocity of the shaft 253, in real time. This angular velocity information can be displayed, for example, in a graph according to Fig. 4 will be shown. The diagram according to Fig. Figure 4 is a diagram, with time on the abscissa and the angular velocity of wave 253 on the ordinate. The plus (+) side of the ordinate shows the angular velocity in the direction of arrow A. Fig. 3 and the negative (-) side, the angular velocity in the direction of arrow B in Fig. 3.

[0046] This information about the angular velocity of the rotation of shaft 253 includes a velocity component V1 (not shown), which is a component of the angular velocity of shaft 253 when shaft 253 is 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 vibrations of shaft 253 in the direction of rotation about the third axis J3. That is, the output value of the inertia sensor 19 is a sum of the velocity components V1 and V2.

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

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

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

[0050] The angular velocities ω1, ω2 and ω3 can be determined in real time or in advance based on the velocity information contained in the operating program. (Calculating the velocity component V2)

[0051] The vibration control unit 312 then 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 + ω3).

[0052] 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 with time on the abscissa and angular velocity on the ordinate. The plus (+) side of the ordinate shows the angular velocity in the direction of arrow A. Fig. 3 and the negative (-) side, the angular velocity in the direction of arrow B in Fig. 3.

[0053] In contrast to the above, the velocity component V1 can be denoted by V1 = ω3 + αω2 (where α is any coefficient from 0 to 1) + βω1 (where β is any coefficient from 0 to 1). In the case of α = 0 and β = 0, V1 = ω3, whereby the angular velocity of wave 253 due to its rotation around the first axis J1 and second axis J2 is not taken into account. (Generating the first correction drive signal S2)

[0054] The vibration control unit 312 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 vibrations of the shaft 253 about the third axis J3 is removed. The motor 291A, i.e., the third drive unit 291, is then driven by the first correction drive signal S2. This allows the shaft 253 to be operated in such a way that the vibrations in the direction of rotation about the third axis J3 are compensated. This vibration control increases the positional accuracy of the shaft 253 about the third axis J3 and, consequently, the working accuracy of the robot 2. Furthermore, noise caused by the vibrations of the shaft 253 can be suppressed.

[0055] The vibration control unit 312 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.

[0056] 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 no revolution of the shaft 253 about the first axis J1 and second axis J2 occurs, where ω1 = 0, ω2 = 0 and V1 = ω3.

[0057] In the present embodiment, the setup in which motor 291A is driven by the first correction drive signal S2 and motors 27A, 28A and 292A are driven by the drive signal S1 is as shown in Fig. Figure 2 shows and explains the present invention. The invention is not limited to this and can be configured such that at least one of the motors 27A, 28A, and 292A is also driven by the first correction drive signal S2 in addition to the motor 291A. 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.

[0058] 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 unit 27 for rotary actuation 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 unit 28 for rotary actuation 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 and rotatably connected about the third axis J3, a third drive unit 291 for rotary actuation of the shaft 253, an inertial sensor 19, which is a first sensing element provided on the shaft 253 and detects information about the rotational speed of the shaft 253, and a control unit 31 for controlling the actuation of the first drive unit 27, second drive unit 28, and third drive unit 291. 291 provided,The control unit 31 includes a vibration control unit 312, which, based on an output value from the inertial sensor 19, generates a first correction drive signal S2 to eliminate a noise component caused by vibrations of the shaft 253 about the third axis J3, and actuates the third drive unit 291 through the first correction drive signal S2. This subjects the shaft 253 to vibration control by the vibration control unit 312 and allows it to be operated in such a way that the vibrations in the direction of rotation about the third axis J3 (noise component) are compensated. Therefore, the positional accuracy of the shaft 253 about the third axis J3 and, consequently, the working accuracy of the robot 2 can be increased. Furthermore, noise caused by the vibrations of the shaft 253 can be suppressed.

[0059] In the explanation of the present embodiment, the angular velocity of shaft 253 about the third axis J3 is given as an example of information about the rotational speed of shaft 253. In the present invention, the rotational speed of shaft 253 is not limited to this and can be an angular acceleration of shaft 253 about the third axis J3.

[0060] The vibration control unit 312 generates the first correction drive signal S2 by subtracting the angular velocity ω1 of the first arm 23 about the first axis J1, the angular velocity ω2 of the second arm 24 about the second axis J2, and the angular velocity ω3 of the shaft 253 about the third axis J3 from the output value of the inertial sensor 19, which is the first sensing unit, as a noise component. This determination of the noise component allows for the precise calculation of the noise component, taking into account the angular velocities ω1, ω2, and ω3. Therefore, a more suitable first correction drive signal S2 can be generated. Consequently, the positional accuracy of the shaft 253 about the third axis J3 can be further increased.

[0061] The vibration control unit 312 can also be configured such that it generates the first correction drive signal S2 by using a value obtained by subtracting the angular velocity ω3 of the shaft 253 from the output value of the inertial sensor 19 as the noise component. That is, the vibration control unit 312 can be configured such that it generates the first correction drive signal S2 without taking the angular velocities ω1 and ω2 into account.

[0062] The inertial sensor 19, which is the first detection element, is positioned eccentrically to the third axis J3 and rotates together with the shaft 253. This allows the inertial sensor 19 to detect the rotational speed of the shaft 253 more accurately, sufficiently, and efficiently. Therefore, a more suitable first correction drive signal S2 can be generated. Consequently, the positional accuracy of the shaft 253 about the third axis J3 can be further increased.

[0063] The inertial sensor 19 is not limited to the aforementioned configuration and can be located at a position that is not eccentric to the third axis J3, i.e., at a location intersecting the third axis J3. Specifically, it can be located at the front end section (lower end section) of the shaft 253, i.e., between the shaft 253 and the end effector 26, or at the upper end section of the shaft 253, or embedded within the shaft 253.

[0064] 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.

[0065] First, in step S101, the vibration control unit 312 obtains the output value from the inertial sensor 19. That is, the vibration control unit 312 obtains the information about the rotational speed of shaft 253 about the third axis J3 (about the z-axis). This information about the rotational speed corresponds to the sum of the value V3 of the speed component V1, which is the component of the angular velocity of shaft 253 when shaft 253 is driven according to the operating program, and the speed component V2, which is the component of the angular velocity of shaft 253 caused by the vibrations of shaft 253 in the direction of rotation about the third axis J3, as mentioned above.

[0066] This step S101 is a first step.

[0067] Subsequently, in step S102, the vibration control unit 312 determines the noise component, i.e., the velocity component V2. The velocity component V2 is determined by calculating V2 = V3 - V1 = V3 - (ω1 + ω2 + ω3), as mentioned above.

[0068] Subsequently, in step S103, the vibration control unit 312 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 vibrations of the shaft 253 about the third axis J3 is eliminated. The first correction drive signal S2 drives the motor 291A, i.e., the third drive unit 291. These steps S102 and S103 constitute a second step.

[0069] Shaft 253 is driven in a state where its behavior is vibration-controlled by the vibration control unit 312, by sequentially performing steps S101-S103. This means that shaft 253 can be operated in such a way that vibrations in the direction of rotation about the third axis J3 are compensated. Therefore, the positional accuracy of shaft 253 about the third axis J3, and consequently the working accuracy of robot 2, can be increased.

[0070] As explained above, the method for controlling a robot is a method for controlling a 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 and rotatably connected about the third axis J3, a third drive element 291 for rotary driving of the shaft 253, and an inertial sensor 19, which is a first sensing element provided on the shaft 253 and acquires information about a rotational speed of the shaft 253, wherein the method has a first step (step S101) in which an output value of the inertial sensor 19 is obtained,and a second step (steps S102 and S103) in which, based on the output value obtained in the first step, a first correction drive signal S2 is generated to eliminate a noise component caused by vibrations of the shaft 253 about the third axis J3, and the third drive unit 291 is actuated by the first correction drive signal S2. This subjects the shaft 253 to vibration control by the vibration control unit 312 and allows it to be operated in such a way that the vibrations in the direction of rotation about the third axis J3 (noise component) are compensated. Therefore, the positional accuracy of the shaft 253 about the third axis J3 and, consequently, the working accuracy of the robot 2 can be increased. Furthermore, noise caused by the vibrations of the shaft 253 can be suppressed. < Second embodiment >

[0071] Fig. Figure 7 is a side view of a front end section of a shaft belonging to a robot system according to a second embodiment of the present invention.

[0072] 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.

[0073] The lower end of shaft 253 is fitted with the end effector 26, as shown in Fig. Figure 7 shows the end effector 26, which is a so-called hand and has a base part 261 and a pair of claw parts 262 provided on the base part 261. The paired claw parts 262 are attached to the base part 261 in such a way that they can be brought close to and moved away from each other, as shown in Figure 7. Fig. Figure 7 shows the direction of the arrow. The base part 261 contains a drive mechanism 263 for opening and closing the claw parts, which drives at least one of the paired claw parts 262 to bring the two claw parts 262 closer together and away from each other. The drive mechanism 263 for opening and closing the claw parts has a drive source 264, which is a motor or solenoid, and the drive source 264 is electrically connected to the robot control device 3 via a driver (not shown).

[0074] The robot control device 3 can, by controlling the power supply to the drive source 264, bring the two claw parts 262 closer together and away from each other, i.e., open and close them. An object, such as a component, can be gripped by bringing the two claw parts 262 closer together. The grip on the object can be released by moving the two claw parts 262 away from each other.

[0075] The side surface of the base part 261 is positioned further from the third axis J3 than the outer circumferential surface of the shaft 253. That is, the base part 261 is larger than the outer diameter of the shaft 253.

[0076] This end effector 26 is rotated together with the rotation of the shaft 253 about the third axis.

[0077] The inertial sensor 19 is provided on the side surface of the base part 261. That is, the inertial sensor 19 is attached to the shaft 253 via the end effector 26 mounted on the shaft 253. This allows the inertial sensor 19 to rotate together with the shaft 253 and to accurately, sufficiently, and efficiently acquire information about the rotational speed of the shaft 253. Therefore, the vibration control unit 312 can generate a more suitable first correction drive signal S2. As a result, the positional accuracy of the shaft 253 about the third axis J3 can be further increased.

[0078] In the present embodiment, the inertial sensor 19 is positioned further away from the third axis J3 than in the first embodiment. This allows the information about the rotational speed of the shaft 253 (angular velocity) to be acquired more accurately, sufficiently, and efficiently.

[0079] In this way, the inertial sensor 19, which is the first detection element, is attached to the shaft 253 via the end effector 26 mounted on the shaft 253. This allows the inertial sensor 19 to detect the rotational speed of the shaft 253 more accurately, sufficiently, and efficiently. Therefore, the vibration control element 312 can generate a more suitable first correction drive signal S2. As a result, the positional accuracy of the shaft 253 about the third axis J3 can be further increased. < Third embodiment >

[0080] Fig. Figure 1 is a view illustrating the overall structure of a robot system according to a third embodiment of the present invention. Fig. Figure 8 is a block diagram of the robot system according to the third embodiment of the present invention.

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

[0082] The robot system 1 is equipped with an inertial sensor 19A, which is a second detection element for detecting a force (inertial force) acting on the second arm 24, as shown in Fig. 1 and Fig. Figure 8 shows the inertial sensor 19A, which is mounted on the second support 241 of the second arm 24 mentioned above. The force acting on the second arm 24 includes the angular velocity and acceleration mentioned later.

[0083] The section of the second arm 24 equipped with the inertial sensor 19A is located between the second drive part 28 and the shaft 253, as shown in Fig. Figure 1 shows that the function of the inertial sensor 19A can be effectively implemented without enlarging the second arm 24. Its location is not limited to this arm. The inertial sensor 19A can, for example, be attached to the root end section or the front end section of the second arm 24, or above the second support 241. In this case, the inertial sensor 19A can be designed such that it is attached to the second support 241 via a support element (not shown).

[0084] The inertial sensor 19A is configured in the same way as the inertial sensor 19, e.g., using an IMU (Inertial Measurement Unit). The direction of the inertial force detected by the inertial sensor 19A is the same as those exemplified for the inertial sensor 19. The inertial sensor 19A is electrically connected to the robot control device 3 and continuously transmits the detected information about the inertial force of the second arm 24 to the robot control device 3 as an electrical signal.

[0085] In the present embodiment, the inertial sensor 19A detects the angular velocity of the second arm 24 about the second axis J2.

[0086] The type, structure, specification, sensitivity, sensing speed, etc. of the inertial sensor 19A may each be identical to or different from that of the inertial sensor 19. (Recovering the output value of the inertial sensor 19A)

[0087] The vibration control unit 312 receives the output value from the inertial sensor 19A and generates a second correction drive signal S3 for the first drive unit 27 and the second drive unit 28. The second correction drive signal S3 is a signal for setting the power supply conditions for the individual motors 27A, 28A and 292A, the power supply conditions depending on the respective motor.

[0088] The output value of the inertial sensor 19A contains a velocity component V4, which is a component of the angular velocity during the drive of the first arm 23 and second arm 24 according to the operating program, and a velocity component V5, which is a component of the rotational velocity of the shaft 253 caused by vibrations of the first arm 23 and second arm 24 in the horizontal direction (plane direction of the xy-plane). That is, the output value of the inertial sensor 19A is a sum of the velocity components V4 and V5. It can be said that the velocity component V5 is a noise component caused by the vibrations of the first arm 23 and second arm 24 in the horizontal direction. (Calculating the velocity component V4)

[0089] The vibration control unit 312 determines the velocity component V4. Since the velocity component V4 is a sum of the angular velocity ω1 of the first arm 23 to the base 21 (about the first axis J1) and the angular velocity ω2 of the second arm 24 to the first arm 23 (about the second axis J2), the velocity component V4 can be represented as ω1 + ω2.

[0090] 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.

[0091] The angular velocities ω1 and ω2 can be determined in real time or in advance based on the velocity information contained in the operating program. (Calculating the velocity component V5)

[0092] The vibration control unit 312 then determines the velocity component V5 by subtracting the velocity component V4 from the sum of the values ​​V6. That is, the velocity component V5 is determined by calculating V6 - (ω1+ ω2). (Generating the second correction drive signal S3)

[0093] The vibration control unit 312 generates the second correction drive signal S3, which is accompanied by a correction such that the velocity component V5 determined above is eliminated, i.e., the noise component caused by the vibrations of the first arm 23 and second arm 24 in the horizontal direction is removed. The second correction drive signal S3 then drives the motors 27A and 28A, i.e., the first drive unit 27 and the second drive unit 28, thereby enabling the operation of the first arm 23 and second arm 24 in such a way that the vibrations in the horizontal direction are compensated. Therefore, the positional accuracy of the first arm 23 and second arm 24, and consequently the working accuracy of the robot 2, can be increased.

[0094] In the method for controlling a robot corresponding to the present embodiment, steps S102 and S103 in the flowchart are carried out according to Fig.6 this control, i.e. generating the second correction drive signal S3 and subsequently driving at least one of the first drive part 27 and second drive part 28, preferably both drive parts, by the second correction drive signal S3.

[0095] In the present embodiment, the first correction drive signal S2 can be generated using the vibration component of the shaft 253 about the third axis J3, which is determined by subtracting the output value of the inertial sensor 19A and the angular velocity ω3 from the output value of the inertial sensor 19.

[0096] In this way, the robot system 1 is equipped with an inertial sensor 19A, which is a second sensing element provided on the second arm 24 and detects a force acting on the second arm 24. Based on an output value from the inertial sensor 19A, the vibration control unit 312 generates a second correction drive signal S3 to eliminate a noise component caused by vibrations of the first arm 23 and second arm 24. The second correction drive signal S3 actuates at least one of the first drive unit 27 and second drive unit 28 (the two drive units in the present embodiment). This subjects the first arm 23 and second arm 24 to vibration control by the vibration control unit 312, enabling them to be operated in such a way that the vibrations are compensated in the horizontal direction.Therefore, the positional accuracy of the first arm 23 and second arm 24, and furthermore the working accuracy of the robot 2, can be increased. In particular, through the synergistic effect with the vibration control for the vibrations of the shaft 253 in the direction of rotation, as mentioned in the first embodiment, a more excellent vibration effect can be achieved and the working accuracy of the robot 2 can be further increased. In addition, noises caused by the vibrations of the individual parts of the robot arm 22 can be suppressed.

[0097] The setup in which only the first drive part 27 is driven by the second correction drive signal S3, or the setup in which only the second drive part 28 is driven by the second correction drive signal S3, is also possible.

[0098] Furthermore, the inertial sensor 19A can be located at a different location than on the second arm 24, e.g. on the first arm 23.

[0099] 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.

[0100] Furthermore, the structure of the first embodiment can be combined with the structure of the third embodiment in any way desired. Similarly, the structure of the second embodiment can be combined with the structure of the third embodiment in any way desired.

[0101] 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 19 Inertial sensor 19A Inertial Sensor 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 231 first document 241 second document 242 Cover 251 Splined shaft nut 252 Ball screw nut 253 wave 261 Base part 262 Claw part 263 Drive mechanism for opening and closing the claw parts 264 Drive source 291 third drive part 291A Motor 291B Encoder 292 fourth drive part 292A Motor 292B encoder 311 Drive control unit 312 Vibration control unit A arrow B Arrow J1 first axis J2 second axis J3 third axis S101 Step S102 Step S103 Step S drive signal S2 first correction drive signal S3 second correction drive signal V1 speed component V2 speed component V3 total value 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 2017-056544 A

[0005]

Citation Information

Patent Citations

  • Robot control device, and robot control method

    JP2017056544A

  • Robot system collaborating with humans

    DE102015012232A1

  • Control system with learning control functions and control procedures

    DE102018000445B4

  • JP002017056544A

  • Sensor apparatus and robot apparatus

    US20120065902A1