Robot control methods, robot systems, and storage media

CN115139295BActive Publication Date: 2025-10-28SEIKO EPSON CORP
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202210320661.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2021-03-31
Filing Date
2022-03-29
Publication Date
2025-10-28
Estimated Expiration
2042-03-29

AI Technical Summary

Technical Problem

Existing technologies require determining the inherent vibration frequency by tapping the robotic arm or using measuring devices, which is time-consuming and resource-intensive.

Method used

By acquiring the target position information when the robotic arm moves, and based on the posture and center of gravity relationship at the target position, it is decided to remove specific frequency components from the drive signal to generate a correction drive signal to suppress vibration.

Benefits of technology

It effectively reduces the vibration of the robotic arm, shortens the vibration end time, improves the accuracy and efficiency of operation, and eliminates the need for tapping or measuring devices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115139295B_ABST
    Figure CN115139295B_ABST
Patent Text Reader

Abstract

This invention discloses a robot control method, a robot system, and a storage medium capable of suppressing vibrations using a simple method. The robot control method comprises: a robot having a base, a robotic arm connected to the base, and a drive unit including a motor driving the robotic arm; a first step of acquiring target position information related to a target position when the robotic arm is moved; a second step of determining a frequency component to be removed from a drive signal driving the motor based on the posture of the robotic arm at the target position according to the acquired target position information; and a third step of removing the frequency component determined in the second step from the drive signal to generate a correction drive signal.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to robot control methods, robot systems, and storage media. Background Technology

[0002] In recent years, due to rising labor costs and labor shortages in factories, the automation of manually performed tasks has been accelerated through various robots or their peripheral devices. Among the various robots, the robot shown in Patent Document 1 is known, for example.

[0003] The robot in Patent Document 1 performs the following actions to reduce arm vibration. First, it measures the vibration by striking the end effector located on the arm. Next, it calculates the arm's natural vibration frequency based on the measurement result. Then, based on the calculated natural vibration frequency, it corrects the torque control signal by removing specific frequency components from the torque control signal used to move the arm.

[0004] By using this corrected torque signal to drive the arm, it is possible to reduce the vibration generated in the arm.

[0005] Existing technical documents

[0006] Patent documents

[0007] Patent Document 1: Japanese Patent Application Publication No. 2001-293638

[0008] However, in order to determine the inherent vibration frequency, the robot in Patent Document 1 needs to perform the task of striking with a hammer or prepare a measuring device to measure the vibration, which is time-consuming. Summary of the Invention

[0009] The robot control method of the present invention is a robot control method having a base, a robotic arm connected to the base, and a drive unit including a motor for driving the robotic arm, characterized in that it has:

[0010] The first step is to obtain target position information related to the target position when the robotic arm is moved;

[0011] The second step involves determining the frequency components to be removed from the drive signal driving the motor, based on the posture of the robotic arm at the target position obtained from the target position information; and

[0012] The third step involves removing the frequency component determined in the second step from the drive signal to generate a corrected drive signal.

[0013] The robot control method of the present invention is a robot control method having a base, a robotic arm connected to the base, and a drive unit including a motor for driving the robotic arm, characterized in that it has:

[0014] The first step is to obtain target position information related to the target position when the robotic arm is moved;

[0015] The second step involves determining the frequency components to be removed from the drive signal driving the motor, based on the positional relationship between the center of gravity G1 of the robotic arm at the target position and the center of gravity G2 of the end effector located on the robotic arm, according to the acquired target position information; and

[0016] The third step involves removing the frequency component determined in the second step from the drive signal to generate a corrected drive signal.

[0017] The robot system of the present invention is characterized by having:

[0018] abutment;

[0019] The robotic arm is connected to the base.

[0020] The drive unit includes a motor that drives the robotic arm; and

[0021] The control unit controls the operation of the robotic arm.

[0022] The control unit has:

[0023] The acquisition unit acquires target position information related to the target position when the robotic arm is moved; and

[0024] The correction signal generation unit determines the frequency component to be removed from the drive signal driving the motor based on the posture of the robot arm at the target position obtained from the target position information, and removes the determined frequency component from the drive signal to generate a correction drive signal.

[0025] The robot control program of the present invention is a control program for controlling a robot having a base, a robotic arm connected to the base, and a drive unit including a motor for driving the robotic arm, characterized in that it is used to execute:

[0026] The first step is to obtain target position information related to the target position when the robotic arm is moved;

[0027] The second step involves determining the frequency components to be removed from the drive signal driving the motor, based on the posture of the robotic arm at the target position obtained from the target position information; and

[0028] The third step involves removing the frequency component determined in the second step from the drive signal to generate a corrected drive signal. Attached Figure Description

[0029] Figure 1 This is a schematic diagram of the robot system of the present invention.

[0030] Figure 2 yes Figure 1 The diagram shows a block diagram of the robot system.

[0031] Figure 3 yes Figure 1 The block diagram of the control device is shown.

[0032] Figure 4 This is a diagram showing an example of the table referenced by the adjustment section.

[0033] Figure 5 This is a diagram showing an example of the table referenced by the adjustment section.

[0034] Figure 6 This is a diagram showing an example of the table referenced by the adjustment section.

[0035] Figure 7 This is a diagram showing an example of the table referenced by the adjustment section.

[0036] Figure 8 It is shown Figure 1 A side view showing the positional relationship between the center of gravity of the robot and its arm and the center of gravity of the end effector.

[0037] Figure 9 It is shown Figure 1 A side view showing the positional relationship between the center of gravity of the robot and its arm and the center of gravity of the end effector.

[0038] Figure 10 It is shown Figure 1 The diagram shows the overall shape of the robotic arm.

[0039] Figure 11 It is shown Figure 1 The diagram shows the overall shape of the robotic arm.

[0040] Figure 12 It is used for explanation Figure 1 The diagram shows the motion path of the robotic arm.

[0041] Figure 13 This is a flowchart illustrating the robot control method of the present invention.

[0042] Explanation of reference numerals in the attached figures

[0043] 2…robot, 3…teaching device, 4…receiving unit, 5…force detection unit, 7…end effector, 8…control device, 8A…motion processing unit, 8B…servo processing unit, 8C…storage unit, 8D…communication unit, 20…robotic arm, 21…base, 22…first arm, 23…second arm, 24…third arm, 25…drive unit, 26…drive unit, 27…u drive unit, 28…z drive unit, 31…CPU, 32…storage unit, 33…communication unit, 34…display unit, 81…position command generation unit, 82…adjustment unit, 83…position control unit, 84…speed control unit, 85…filtering unit, 86…current control unit, 100…machine Human system, 220… housing, 230… housing, 241… axis, 251… motor, 252… brake, 253… encoder, 261… motor, 262… brake, 263… encoder, 271… motor, 272… brake, 273… encoder, 281… motor, 282… brake, 283… encoder, A1… positional relationship, A2… positional relationship, B1… shape, B2… shape, C1… height, C2… height, G1… center of gravity, G2… center of gravity, O1… first axis, O2… second axis, O3… third axis, T1… table, TCP… control point, P1… position, P2… position, P3… position, P4… position. Detailed Implementation

[0044] Hereinafter, the robot control method, robot system and robot control program of the present invention will be described in detail based on the preferred embodiments shown in the accompanying drawings.

[0045] Implementation

[0046] Figure 1 This is a schematic diagram of the robot system of the present invention. Figure 2 yes Figure 1 The diagram shows a block diagram of the robot system. Figure 3 yes Figure 1 The block diagram of the control device is shown. Figures 4-7 These are diagrams showing an example of the table referenced by the adjustment section. Figure 8 and Figure 9 They are shown respectively Figure 1 A side view showing the positional relationship between the center of gravity of the robot and its arm and the center of gravity of the end effector. Figure 10 and Figure 11 They are shown respectively Figure 1 The diagram shows the overall shape of the robotic arm. Figure 12 It is used for explanation Figure 1 The diagram shows the motion path of the robotic arm. Figure 13 This is a flowchart illustrating the robot control method of the present invention.

[0047] In addition, Figure 1 For ease of explanation, the x-axis, y-axis, and z-axis are shown as three mutually orthogonal axes. Furthermore, the direction parallel to the x-axis will be referred to as the "x-axis direction," the direction parallel to the y-axis as the "y-axis direction," and the direction parallel to the z-axis as the "z-axis direction." Additionally, Figure 1 The z-axis direction, i.e., the up-down direction, is designated as the "vertical direction," while the x-axis and y-axis directions, i.e., the left-right directions, are designated as the "horizontal directions." Furthermore, within each axis, the front end side is referred to as the "+ side," and the base end side is referred to as the "- side."

[0048] Figure 1 and Figure 2 The robot system 100 shown is, for example, a device used in operations such as holding, handling, assembling, and inspecting objects (hereinafter referred to as "workpieces") that are work objects such as electronic components and electronic devices. The robot system 100 includes a robot 2, a teaching pendant 3 for teaching the robot 2 motion programs, a control device 8 for controlling the operation of the robot 2, a force detection unit 5, and an end effector 7. Furthermore, the robot 2 and the teaching pendant 3 can communicate via wired or wireless means, and their communication can also be carried out via a network such as the Internet.

[0049] First, let's explain robot 2.

[0050] Robot 2, as shown in the diagram, is a horizontal articulated robot, i.e., a SCARA robot. However, it is not limited to this configuration; Robot 2 can also be a vertical 6-axis articulated robot, or a similar type of articulated robot. Figure 1 As shown, robot 2 has a base 21, a robotic arm 20 connected to the base 21, and a receiving unit 4 for receiving prescribed operations from the operator.

[0051] The base 21 supports the robotic arm 20. The base 21 houses the control device 8, which will be described later. Furthermore, the origin of the robot's coordinate system is set at any point on the base 21. It should be noted that... Figure 1 The x-axis, y-axis, and z-axis shown are the axes of the robot coordinate system.

[0052] The robotic arm 20 includes a first arm 22, a second arm 23, and a third arm 24 that serves as a working head. In addition, the connection between the base 21 and the first arm 22, the connection between the first arm 22 and the second arm 23, and the connection between the second arm 23 and the third arm 24 are also referred to as joints.

[0053] It should be noted that robot 2 is not limited to the configuration shown in the figure. The number of arms can be one, two, or more than four.

[0054] Additionally, the robot 2 includes: a drive unit 25 for rotating the first arm 22 relative to the base 21; a drive unit 26 for rotating the second arm 23 relative to the first arm 22; a u drive unit 27 for rotating the axis 241 of the third arm 24 relative to the second arm 23; and a z drive unit 28 for moving the axis 241 relative to the second arm 23 in the z-axis direction.

[0055] like Figure 1 and Figure 2 As shown, the drive unit 25 is built into the housing 220 of the first arm 22 and includes: a motor 251 that generates driving force; a brake 252; a reducer (not shown) that reduces the driving force of the motor 251; and an encoder 253 that detects the rotation angle of the rotating shaft of the motor 251 or the reducer.

[0056] The drive unit 26 is built into the housing 230 of the second arm 23 and includes: a motor 261 that generates driving force; a brake 262; a reducer (not shown) that reduces the driving force of the motor 261; and an encoder 263 that detects the rotation angle of the rotating shaft of the motor 261 or the reducer.

[0057] The drive unit 27 is built into the housing 230 of the second arm 23 and includes: a motor 271 that generates driving force; a brake 272; a reducer (not shown) that reduces the driving force of the motor 271; and an encoder 273 that detects the rotation angle of the rotating shaft of the motor 271 or the reducer.

[0058] The drive unit 28 is built into the housing 230 of the second arm 23 and includes: a motor 281 that generates driving force; a brake 282; a reducer (not shown) that reduces the driving force of the motor 281; and an encoder 283 that detects the rotation angle of the rotating shaft of the motor 281 or the reducer.

[0059] Motors 251, 261, 271, and 281 can be servo motors such as AC servo motors and DC servo motors. Additionally, as speed reducers, planetary gear reducers and wave gear devices can be used.

[0060] Brakes 252, 262, 272, and 282 have the function of slowing down the robotic arm 20. Specifically, brake 252 slows down the movement speed of the first arm 22, brake 262 slows down the movement speed of the second arm 23, brake 272 slows down the movement speed of the third arm 24 in the U-axis direction, and brake 282 slows down the movement speed of the third arm 24 in the Z-axis direction.

[0061] The control device 8 activates brakes 252, 262, 272, and 282 and decelerates each part of the robotic arm 20 by changing the power supply conditions. Brakes 252, 262, 272, and 282 are controlled by the control device 8 independently of motors 251, 261, 271, and 281.

[0062] Examples of brakes 252, 262, 272, and 282 include electromagnetic brakes, mechanical brakes, hydraulic brakes, and pneumatic brakes.

[0063] In addition, such as Figure 2 As shown, encoders 253, 263, 273, and 283 are position detection units for detecting the position of the robotic arm 20. Encoders 253, 263, 273, and 283 are electrically connected to the control device 8. Encoders 253, 263, 273, and 283 transmit information related to the detected rotation angle as electrical signals to the control device 8. Therefore, the control device 8 can control the operation of the robotic arm 20 based on the received information related to the rotation angle.

[0064] These drive units 25, 26, u-drive unit 27, and z-drive unit 28 are respectively connected to corresponding motor drivers (not shown) and are controlled by the control device 8 via the motor drivers.

[0065] The base 21 is fixed to the ground (not shown), for example, by bolts. A first arm 22 is connected to the upper end of the base 21. The first arm 22 is rotatable relative to the base 21 about a first axis O1 along the vertical direction. When the drive unit 25 that rotates the first arm 22 is activated, the first arm 22 rotates relative to the base 21 about the first axis O1 in a horizontal plane. Furthermore, the amount of rotation of the first arm 22 relative to the base 21 can be detected by an encoder 253.

[0066] Furthermore, the front end of the first arm 22 is connected to the second arm 23. The second arm 23 is rotatable relative to the first arm 22 about a second axis O2 along the vertical direction. The axial direction of the first axis O1 is the same as the axial direction of the second axis O2. That is, the second axis O2 is parallel to the first axis O1. When the drive unit 26 that rotates the second arm 23 is driven, the second arm 23 rotates relative to the first arm 22 about the second axis O2 in the horizontal plane. In addition, the amount of drive of the second arm 23 relative to the first arm 22, specifically the amount of rotation, can be detected by the encoder 263.

[0067] Additionally, a third arm 24 is mounted and supported at the front end of the second arm 23. The third arm 24 has a shaft 241. The shaft 241 is rotatable relative to the second arm 23 about a third axis O3 along the vertical direction and is movable in the vertical direction. This shaft 241 is the foremost arm of the robotic arm 20.

[0068] When the u-drive unit 27 that rotates the shaft 241 is driven, the shaft 241 rotates about the z-axis. In addition, the amount of rotation of the shaft 241 relative to the second arm 23 can be detected by the encoder 273.

[0069] Furthermore, when the z-drive unit 28, which moves shaft 241 in the z-axis direction, is driven, shaft 241 moves in the vertical direction, i.e., the z-axis direction. Additionally, the amount of movement of shaft 241 relative to the second arm 23 in the z-axis direction can be detected by encoder 283.

[0070] Furthermore, robot 2 is equipped with a front-end coordinate system with the front end of axis 241 as the control point TCP and the control point TCP as the origin. This front-end coordinate system is calibrated with the aforementioned robot coordinate system, enabling the transformation of positions in the front-end coordinate system to the robot coordinate system. Therefore, the position of the control point TCP can be determined using the robot coordinate system.

[0071] Furthermore, various end effectors 7 can be detachably connected to the lower end of shaft 241. In the illustrated configuration, the end effector 7 is a hand that holds the workpiece. However, it is not limited to this configuration; for example, it can be a hand that holds the workpiece by suction or adsorption, or it can be a tool such as a screwdriver or wrench, or it can be a coating device such as a sprayer.

[0072] It should be noted that the end effector 7 is not a component of the robot 2 in this embodiment, but it may be a part or all of the end effector 7 that is a component of the robot 2.

[0073] like Figure 1 As shown, the force detection unit 5 detects the force applied to the robot 2, that is, the force applied to the robotic arm 20 and the base 21. In this embodiment, the force detection unit 5 is provided below the base 21, that is, on the -z axis side, and supports the base 21 from below.

[0074] It should be noted that the location of the force detection unit 5 is not limited to the above-mentioned locations. For example, it can also be the lower end of the shaft 241 or each joint portion.

[0075] The force detection unit 5 can be configured, for example, to have multiple elements made of piezoelectric materials such as crystal that output charge when subjected to external force. Furthermore, the control device 8 can convert the amount of charge into a value related to the external force applied to the robotic arm 20. Additionally, if such a piezoelectric material is used, the direction in which charge is generated when subjected to external force can be adjusted according to the set orientation.

[0076] In addition, the receiving unit 4 is the designated operating area for receiving personnel. Although not shown, the receiving unit 4 has a teach-in button. This teach-in button can be used for direct teaching. The teach-in button can be either a mechanical button or a touch-sensitive electronic button. Furthermore, other buttons with different functions can be arranged around the teach-in button.

[0077] Next, the teaching device 3 will be explained.

[0078] like Figure 2 As shown, the teaching pendant 3 has the function of specifying the action program for the robot 2. Specifically, the teaching pendant 3 inputs the position and posture of the robotic arm 20 to the control device 8.

[0079] like Figure 2 As shown, the teaching pendant 3 includes a CPU (Central Processing Unit) 31, a storage unit 32, a communication unit 33, and a display unit 34. While not particularly limited, examples of teaching pendants 3 include tablet computers, personal computers, and smartphones.

[0080] The CPU 31 reads and executes various programs stored in the storage unit 32. The signals generated by the CPU 31 are sent to the control device 8 of the robot 2 via the communication unit 33. As a result, the robotic arm 20 can perform a specified task under specified conditions.

[0081] The storage unit 32 stores various programs that the CPU 31 can execute. Examples of storage units 32 include volatile memory such as RAM (Random Access Memory), non-volatile memory such as ROM (Read Only Memory), and portable external storage devices.

[0082] The communication unit 33 uses external interfaces such as wired LAN (Local Area Network) or wireless LAN to transmit and receive signals with the control device 8.

[0083] The display unit 34 is composed of various displays. In this embodiment, as an example, it is described as a touch panel type, that is, the display unit 34 has display function and input operation function.

[0084] However, this configuration is not limited to this one; it can also include an additional input operation unit. In this case, the input operation unit can include, for example, a mouse or keyboard. Alternatively, it can be a configuration that uses a mouse and keyboard simultaneously with the touch panel.

[0085] Next, the control device 8 will be described.

[0086] like Figure 1 As shown, the control device 8 is built into the base 21 in this embodiment. Additionally, as... Figure 2 As shown, the control device 8 has the function of controlling the drive of the robot 2 and is electrically connected to the various parts of the robot 2. It should be noted that, not limited to this, the control device 8 can also be configured separately from the robot 2.

[0087] Here, when the robotic arm 20 is temporarily stopped during operation or when it is stopped after operation, vibration occurs in the robotic arm 20. This vibration affects the accuracy and operation time of the operation, so it is preferable to minimize it. More specifically, it is preferable to minimize the time until the vibration ends. It should be noted that the situation of shortening the time until the vibration ends will be referred to as "vibration suppression" below.

[0088] In order to suppress vibration, in robot system 100, specific frequency components are removed from the drive signals that drive motors 251, 261, 271 and 281 to generate a correction drive signal.

[0089] The intensity of the vibration is determined by various factors, including the weight of the end effector 7, the posture of the robotic arm 20 when it is stopped, the position of the control point TCP, the path traversed so far, the speed and acceleration along that path.

[0090] To determine which frequency component to remove from the drive signal to generate the corrected drive signal, it is preferable to consider these conditions. Among these conditions, the posture of the robot arm 20 at the target position, such as when the task is completed, is particularly likely to affect vibration suppression. Therefore, in this invention, the corrected drive signal is generated based on the posture of the robot arm 20 at the target position.

[0091] like Figure 3 As shown, the control device 8 is an apparatus for executing the robot control method of the present invention, and includes a motion processing unit 8A, a servo processing unit 8B, a storage unit 8C, and a communication unit 8D. The motion processing unit 8A and the servo processing unit 8B are each composed of at least one processor.

[0092] The storage unit 8C stores various programs that can be executed by the motion processing unit 8A and the servo processing unit 8B, including the robot control program of the present invention, and tables described later. Examples of storage units 8C include volatile memory such as RAM (Random Access Memory), non-volatile memory such as ROM (Read Only Memory), and portable external storage devices. The communication unit 8D uses external interfaces such as wired LAN (Local Area Network) and wireless LAN to transmit and receive signals between itself and various parts of the robot 2 and the teaching pendant 3. The communication unit 8D functions as an acquisition unit for obtaining target position information related to the target position when the robotic arm 20 is moved.

[0093] The motion processing unit 8A includes a position command generation unit 81 and an adjustment unit 82.

[0094] The position command generation unit 81 generates a position command signal indicating the target position where the end effector 7 should be located, the speed up to the target position, and the acceleration based on the motion program input by the user. It should be noted that the user can input the motion program using an input device such as the teach pendant 3.

[0095] The adjustment unit 82 determines the frequency components to be removed by the filtering unit 85 based on information input by the user. This will be described later.

[0096] The servo processing unit 8B includes a position control unit 83, a speed control unit 84, a filtering processing unit 85, and a current control unit 86.

[0097] The position control unit 83 receives the target position, speed to the target position, and acceleration information generated by the position command generation unit 81, and generates and outputs speed control signals for each motor 251, motor 261, motor 271, and motor 281 based on this information and the detection results of the force detection unit 5.

[0098] The speed control unit 84 receives a speed control signal from the position control unit 83. In addition, based on the speed control signal received from the position control unit 83 and the detection results of encoders 253, 263, 273 and 283, the speed control unit 84 generates a torque control signal (hereinafter also referred to as a "drive signal") and outputs it to the filter processing unit 85.

[0099] The filtering processing unit 85 uses a band-stop filter to remove specific frequency components from the torque control signal received from the speed control unit 84, thereby generating a new torque control signal (hereinafter also referred to as a "corrected drive signal"), which is then output to the current control unit 86. In this specification, "removal" refers to setting specific frequency components to 0, and also includes reducing specific frequency components. Based on the signal output from the adjustment unit 82, the filtering processing unit 85 determines the coefficients used in the band-stop filter, i.e., the frequency components removed by the band-stop filter.

[0100] The current control unit 86 receives a torque control signal from the filter processing unit 85 and a feedback signal (not shown) indicating the amount of current supplied to motors 251, 261, 271, and 281. Based on the torque control signal received from the filter processing unit 85 and the feedback signal received from the servo amplifier (not shown), the current control unit 86 determines the amount of current supplied to motors 251, 261, 271, and 281 and drives motors 251, 261, 271, and 281.

[0101] Here, in the robot system 100, the user can input target position information related to the target position. For example, by using the teaching pendant 3 to input information related to the motion path, the user can obtain information related to the posture of the robotic arm 20 at the target position (hereinafter referred to as "shape information"). It should be noted that here, the case where the target position is set to the position of the control point TCP when the task is completed is explained.

[0102] The overall shape of the robotic arm 20 is determined by the rotational positions, i.e., rotational angles, of motors 251, 261, 271, and 281. In particular, in SCARA robots, the rotational angle of motor 261, i.e., the angle between the first arm 22 and the second arm 23, has a significant impact on vibration characteristics. The overall shape of the robotic arm 20 at the target position is... Figure 10 When the shape B1 is shown, and for Figure 11 When the shape B2 is shown, the time until the vibration ends is different. The main reason is that the inherent vibration characteristics of the robot 2 as a whole change depending on the distance between the position of the control point TCP and the root of the robotic arm 20.

[0103] Accordingly, vibration can be suppressed by generating a corrective drive signal after considering shape information. Specifically, the adjustment unit 82 determines, based on shape information, the frequency components to be removed from the drive signals driving motors 251, 261, 271, and 281. The adjustment unit 82 refers to... Figure 4The frequency components to be removed are determined using Table T1. Table T1 shows the relationship between the shape information of the robotic arm 20 and the frequency components, which was determined experimentally beforehand. It should be noted that, instead of relying on Table T1, the composition of the frequency components to be removed can also be determined based on a calibration curve showing the relationship between height information and frequency components.

[0104] like Figure 4 As shown, for example, in the case of shape B1, the frequency component removed is F1. Furthermore, the adjustment unit 82 outputs the signal corresponding to F1 to the filtering processing unit 85. And, a corrected drive signal can be obtained through such processing. By using this corrected drive signal to drive motors 251, 261, 271, and 281, resonance of the robotic arm 20 or end effector 7 can be suppressed, and the time until the vibration ends can be shortened.

[0105] The shape information includes at least one of the following: the rotation angle of the first arm 22 relative to the base 21, the rotation angle of the second arm 23 relative to the first arm 22, and the rotation angle of the third arm 24 relative to the second arm 23. Preferably, the shape information includes the rotation angle of the second arm 23 relative to the first arm 22. The rotation angle of the second arm 23 relative to the first arm 22 has a significant impact on the overall attitude. Therefore, the rotation angle of the second arm 23 relative to the first arm 22 has a significant impact on the vibration characteristics. Thus, by determining the removed frequency component as F1 based on the rotation angle of the second arm 23 relative to the first arm 22, it is possible to further efficiently generate a high-precision correction drive signal for vibration suppression.

[0106] Furthermore, the vibration characteristics at the point of stop are also affected by the direction in which the control point TCP moves towards the target position. That is, the vibration characteristics after stopping are affected by the direction of movement towards the target position. Therefore, it is preferable to determine F1 as the frequency component removed based on the driving directions of motors 251, 261, 271, and 281 when moving towards the target position. This allows for the generation of a correction drive signal with high accuracy in vibration suppression.

[0107] Here, when the removed frequency component is set as F0, F0 can be represented by the following equation (1).

[0108] F0=K1×W×Ew×J 2 +K2×Ez×Z×J+K0×W×Z…(1)

[0109] In Equation (1), K1, K2, and K0 are inherent coefficients of the robot, which can be calculated from measured values. Additionally, J in Equation (1) represents the rotation angle of the second arm 23 relative to the first arm 22. Furthermore, W in Equation (1) represents weight information. Additionally, Z in Equation (1) represents the position of the control point TCP along the z-axis. Furthermore, Ew in Equation (1) represents the combined weight of the end effector 7 and the workpiece. Furthermore, Ez in Equation (1) represents the position of the center of gravity after combining the end effector 7 and the workpiece.

[0110] Accordingly, it is preferable to consider at least one of these factors in addition to shape information when generating the correction drive signal.

[0111] In the robot system 100, the user can input information related to the weight of the end effector 7 and the workpiece via the teaching device 3. For example, the user can directly input the weight of the end effector 7 and the workpiece, or the user can input the type of end effector 7, and the adjustment unit 82 can determine the weight of the end effector 7 based on a table showing the relationship between the input result and the weight of the end effector 7. Alternatively, the weight of the workpiece can also be determined using a table in the same way. Furthermore, the adjustment unit 82 considers the information related to the weight of the end effector 7 and the weight of the workpiece (hereinafter referred to as "weight information") to determine the frequency components to be removed from the drive signal.

[0112] For example, the time until the vibration ends differs depending on whether the weight of the end effector 7 and the workpiece is relatively heavy (W1) or relatively light (W2). Generally, it is shown that the heavier the weight of the end effector 7 and the workpiece, the longer the time until the vibration ends. Consider this situation, such as... Figure 5 As shown, a table T1 is prepared in advance for each weight information. By referring to any one of these tables based on the weight information, a correction drive signal can be generated, thereby enabling the generation of a correction drive signal with high accuracy in vibration suppression.

[0113] It should be noted that when the end effector 7 is configured not to hold the workpiece, the weight of the workpiece is set to 0, and the weight information is only the weight of the end effector 7.

[0114] Furthermore, in the robot system 100, the user can input height information. For example, the user can obtain information related to the track traversed by the control point TCP by using the teaching pendant 3 to output information related to the motion path. It should be noted that here, the height information is described as the height when the control point TCP is located at the final target position.

[0115] The height of the control point TCP at the time of stopping is, for example, Figure 8 When the position is shown, and for Figure 9 The time until the vibration ends differs at the positions shown. Generally, the lower the height of the control point TCP, the longer the time until the vibration ends. In the illustrated configuration, the trend of a longer time until the vibration ends at height C2 compared to height C1 is shown. Consider this situation, such as... Figure 6 As shown, a table T1 is prepared in advance according to each height information. A correction drive signal is generated based on the weight information and by referring to any one of these tables, thereby enabling the generation of a correction drive signal with high accuracy in vibration suppression.

[0116] Next, the robotic arm 20 was subjected to... Figure 12 The actions shown will be explained. It should be noted that, in... Figure 12 The diagram shows the track of the control point TCP. Figure 12 The actions shown are an upward movement, a horizontal movement, and a downward movement. The upward movement proceeds from the starting position P1 to the ending position P2. The horizontal movement proceeds from the ending position P2 to the starting position P3. The downward movement proceeds from the starting position P3 to the ending position P4.

[0117] The above explanation focused on determining the frequency components to be removed based on the height of the control point TCP at the end position P4 of the descent. However, depending on the specific conditions, it is sometimes better to determine the frequency components to be removed based on the height of the control point TCP at the start position P1 of the ascent or the start position P3 of the descent, in order to suppress horizontal vibrations. Specifically, when none of the following conditions 1, 2, and 3 are met, the frequency components to be removed are determined based on the height of the control point TCP at the start position P1 of the ascent.

[0118] If at least one of the following conditions 1, 2, and 3 is met, the frequency components to be removed are determined based on the height of the control point TCP at the start position P3 of the descent action. If none of the following conditions 1, 2, and 3 are met, the frequency components to be removed are determined based on the height of the control point TCP at the start position P1 of the action.

[0119] Condition 1: The distance between the starting position P3 and the ending position P4 of the descent is more than a specified distance.

[0120] Condition 2: The starting position P3 of the descent is above the specified height.

[0121] Condition 3: The height of the descent action ending position P4 is above the specified height.

[0122] Condition 1 relates to the distance of the descent. When the descent distance is relatively long, it is preferable to determine the frequency components to be removed based on the height of the control point TCP at the descent start position P3. This allows the generation of a drive signal that suppresses horizontal vibrations.

[0123] Condition 2 relates to the height of the starting position P3 of the descent. When the starting position P3 is relatively high, it is preferable to determine the frequency components to be removed based on the height of the control point TCP at the starting position P3. This allows for the generation of a drive signal that suppresses vibrations of the horizontal component.

[0124] Condition 3 relates to the height of the descent end position P4. When the height of the descent end position P4 is relatively high, it is preferable to determine the frequency components to be removed based on the height of the control point TCP at the descent start position P3. This allows for the generation of a drive signal that suppresses horizontal vibrations.

[0125] By selecting the reference position for determining the frequency component to be removed based on the conditions of the action, vibration can be suppressed more effectively. It should be noted that "selection" includes both the case where the control device 8 selects based on its own judgment criteria and the case where it receives instructions from the user to select via the teaching device 3, etc.

[0126] It should be noted that these elements can also be combined to generate a correction driving signal. Additionally, a multidimensional table representing the relationships between the elements can be prepared in advance.

[0127] Next, while referring to Figure 13 The flowchart shown illustrates an example of the robot control method of the present invention.

[0128] First, in step S101, target location information is acquired. This step, as described above, is performed by the user inputting various information, including target location information, using the teaching pendant 3, and the control device 8 acquiring this information. Step S101 is the first step.

[0129] Next, in step S102, based on various information such as the target position information obtained in step S101, the frequency components to be removed from the drive signals driving motors 251, 261, 271, and 281 are determined. This step is performed by the adjustment unit 82. Furthermore, as described above, this step is performed by appropriately selecting a table based on the information input in step S101 and referring to the selected table. This step S102 is the second step.

[0130] Next, in step S103, the frequency components determined in step S102 are removed from the drive signal to generate a correction drive signal. As mentioned above, this step is performed by the filtering processing unit 85. This step S103 is the third step.

[0131] Next, in step S104, motors 251, 261, 271, and 281 are driven based on the correction drive signal. This suppresses vibrations during stops or temporary pauses, enabling accurate and rapid operation. This step S10 is the fourth step.

[0132] As explained above, the robot control method of the present invention is a control method for robot 2, which includes: a base 21; a robotic arm 20 connected to the base 21; and drive units 25, 26, u-drive units 27, and z-drive units 28, including motors 251, 261, 271, and 281 for driving the robotic arm 20. Furthermore, the robot control method of the present invention includes: a first step of acquiring target position information related to a target position when the robotic arm 20 is moved; a second step of determining, based on the posture of the robotic arm 20 at the target position of the acquired target position information, a frequency component to be removed from the drive signals driving motors 251, 261, 271, and 281; and a third step of removing the frequency component determined in the second step from the drive signals to generate a corrected drive signal. By driving the robot 2 with this corrected drive signal, vibrations during stops or temporary stops can be suppressed, enabling accurate and rapid operation. In particular, the step of obtaining information related to vibration characteristics by striking the robotic arm 20 with a hammer, as in the past, can be omitted, allowing for simpler methods to suppress vibrations.

[0133] Here, shape information can also be referred to as information related to the positional relationship between the center of gravity G1 of the robotic arm 20 and the center of gravity G2 of the end effector 7 in the pose at the target position. The positional relationship between the center of gravity G1 and the center of gravity G2 at the target position is as follows: Figure 8 When the positional relationship A1 is shown, and when it is Figure 9 The time until the vibration ends is different when the positional relationship A2 is shown. This is because the inherent vibration characteristics of the robot 2 as a whole change depending on the distance between the centers of gravity G1 and G2, and the direction in which they shift. Therefore, by generating a correction drive signal considering the positional relationship between the center of gravity G1 of the robotic arm 20 and the center of gravity G2 of the end effector 7 in a specified posture, the effects of this invention can be achieved.

[0134] Specifically, the adjustment department referenced 82 Figure 7The frequency components to be removed are determined using Table T2. Table T2 shows the relationship between the positions of the centroids G1 and G2 and the frequency components, which was determined experimentally beforehand. It should be noted that, alternatively, the composition of the frequency components to be removed can be determined based on a calibration curve representing the relationship between altitude information and frequency components, instead of Table T2.

[0135] like Figure 4 As shown, for example, when the positional relationship between the center of gravity G1 and the center of gravity G2 is B1, the frequency component removed is F1. In this case, the adjustment unit 82 outputs the signal corresponding to F1 to the filtering processing unit 85. Furthermore, a corrected drive signal can be obtained through such processing. By driving the motors 251, 261, 271, and 281 with this corrected drive signal, resonance of the robot arm 20 or the end effector 7 can be suppressed, and the time until the vibration ends can be shortened.

[0136] Thus, the robot control method of the present invention is a control method for robot 2, which includes: a base 21; a robotic arm 20 connected to the base 21; and drive units 25, 26, u-drive units 27, and z-drive units 28, including motors 251, 261, 271, and 281 for driving the robotic arm 20. Furthermore, the robot control method of the present invention includes: a first step of acquiring target position information related to a target position when the robotic arm 20 is moved; a second step of determining, based on the positional relationship between the center of gravity G1 of the robotic arm 20 at the target position and the center of gravity G2 of the end effector 7 provided on the robotic arm 20, a frequency component to be removed from the drive signals of the drive motors 251, 261, 271, and 281; and a third step of removing the frequency component determined in the second step from the drive signals to generate a corrected drive signal. By using this corrected drive signal to drive the robot 2, vibrations during stops or temporary stops can be suppressed, enabling accurate and rapid operation. In particular, the step of using a hammer to strike the robotic arm 20 to obtain information related to vibration characteristics, which was previously done, can be omitted, and vibration can be suppressed in a simple way.

[0137] It should be noted that, in this embodiment, various information can also be input using an input device other than the teaching pendant 3.

[0138] Furthermore, in the second step, the frequency components are determined based on calibration curves or tables representing the relationship between the frequency components and the posture of the robotic arm 20. Thus, the frequency components to be removed can be determined through simple processing.

[0139] Furthermore, robot 2 is a SCARA robot, and its robotic arm 20 has a first arm 22 connected to base 21, a second arm 23 connected to the first arm 22, and a third arm 24 connected to the second arm 23. Additionally, the orientation of the robotic arm 20 at the target position in the second step of acquiring target position information refers to the angle formed by the first arm 22 and the second arm 23 at the target position. This allows for the generation of a highly accurate vibration-suppressing correction drive signal.

[0140] Furthermore, the determination of the frequency components in the second step is also based on the driving directions of motors 251, 261, 271, and 281 as they move towards the target position. This allows for the generation of a highly accurate corrected drive signal for vibration suppression.

[0141] Furthermore, the determination of the frequency components in the second step is also based on weight information, including information related to the weight of the end effector 7 installed on the robotic arm 20 and the weight of the object being worked on by the end effector 7. This allows for the generation of a highly accurate correction drive signal with vibration suppression.

[0142] Furthermore, in the third step, a band-stop filter is used to remove the frequency components determined in the second step from the drive signal, generating a corrected drive signal. Thus, a corrected drive signal can be generated through simple processing.

[0143] Furthermore, the robot control method of the present invention includes a fourth step of driving the drive unit 25, drive unit 26, u-drive unit 27, and z-drive unit 28 based on a correction drive signal. This suppresses vibrations during stops or temporary pauses, enabling accurate and rapid operation.

[0144] Furthermore, the robot control program of the present invention is a robot control program having a base 21, a robotic arm 20 connected to the base 21, and a drive unit 25, drive unit 26, u drive unit 27, and z drive unit 28 including motors 251, 261, 271, and 281 driving the robotic arm 20. The robot control program of the present invention performs the following steps: a first step, acquiring target position information related to the target position when the robotic arm 20 is moved; a second step, determining the frequency components to be removed from the drive signals of the drive motors 251, 261, 271, and 281 based on the posture of the robotic arm 20 at the target position of the acquired target position information; and a third step, removing the frequency components determined in the second step from the drive signals to generate a corrected drive signal. By using the corrected drive signal obtained after executing this robot control program to drive the robot 2, vibrations during stops or temporary stops can be suppressed, enabling accurate and rapid operation. In particular, the step of obtaining information related to vibration characteristics by striking the robotic arm 20 with a hammer, as in the past, can be omitted, allowing for simpler methods to suppress vibrations.

[0145] It should be noted that the robot control program of the present invention can be stored in storage unit 32, or in storage unit 8C, for example, it can be stored in a recording medium such as CD-ROM, or in a storage device that can be connected via a network.

[0146] Furthermore, the robot system of the present invention includes: a base 21; a robotic arm 20 connected to the base 21; drive units 25, 26, u-drive units 27, and z-drive units 28, including motors 251, 261, 271, and 281 driving the robotic arm 20; and a control device 8, which is a control unit for controlling the operation of the robotic arm 20. The control device 8 further includes: a communication unit 8D, which is an acquisition unit for acquiring target position information related to the target position when the robotic arm 20 moves; and an adjustment unit 82 and a filtering processing unit 85, which is a correction signal generation unit. Based on the posture of the robotic arm 20 at the target position of the acquired target position information, the correction signal generation unit determines the frequency components to be removed from the drive signals of the drive motors 251, 261, 271, and 281, removes the determined frequency components from the drive signals, and generates a correction drive signal. By using this correction drive signal to drive the robot 2, vibrations during stops or temporary stops can be suppressed, enabling accurate and rapid operation. In particular, the step of using a hammer to strike the robotic arm 20 to obtain information related to vibration characteristics, as was done in the past, can be omitted, and vibration can be suppressed in a simple way.

[0147] The robot control method, robot system, and robot control program of the present invention have been described above based on the illustrated embodiments. However, the present invention is not limited thereto, and the configuration of each part can be replaced with any configuration having the same function. In addition, other arbitrary components and processes may be added to the robot control method, robot system, and robot control program.

[0148] Furthermore, in the described embodiment, the configuration of the control device 8 generating the correction drive signal has been explained, but the present invention is not limited thereto, and the configuration of the teaching device 3 generating the correction drive signal may also be used. That is, the "control unit" may also be regarded as the control device 8, or it may be configured as a control unit built into the teaching device 3.

Claims

1. A method for controlling a robot, characterized in that, The robot has the following characteristics: abutment; The robotic arm is connected to the base; and The drive unit includes a motor that drives the robotic arm. The robotic arm has a first arm connected to the base, a second arm connected to the first arm, and a third arm connected to the second arm. The robot control method includes: The first step is to obtain target position information related to the target position when the robotic arm is moved; The second step involves determining the frequency components to be removed from the drive signal driving the motor based on the positional relationship between the center of gravity of the robotic arm at the target position and the center of gravity of the end effector located on the robotic arm, based on the obtained target position information; and The third step involves removing the frequency component determined in the second step from the drive signal to generate a corrected drive signal.

2. The robot control method according to claim 1, characterized in that, The determination of the frequency component in the second step is also based on the driving direction of the motor when moving towards the target position.

3. The robot control method according to claim 1, characterized in that, The determination of the frequency component in the second step is also based on weight information, which includes information related to the weight of the end effector installed on the robotic arm and the weight of the object that is the work target of the end effector.

4. The robot control method according to claim 1, characterized in that, In the third step, a band-stop filter is used to remove the frequency components determined in the second step from the drive signal, thereby generating the corrected drive signal.

5. The robot control method according to claim 1, characterized in that, The robot control method includes a fourth step of driving the drive unit based on the correction drive signal.

6. A robot system, characterized in that, have: abutment; The robotic arm is connected to the base. The drive unit includes a motor that drives the robotic arm; and The control unit controls the operation of the robotic arm. The robotic arm has a first arm connected to the base, a second arm connected to the first arm, and a third arm connected to the second arm. The control unit has: The acquisition unit acquires target position information related to the target position when the robotic arm is moved; as well as The correction signal generation unit determines the frequency component to be removed from the drive signal driving the motor based on the positional relationship between the center of gravity of the robot arm at the target position and the center of gravity of the end effector provided on the robot arm, based on the acquired target position information. The determined frequency component is then removed from the drive signal to generate a correction drive signal.

7. A storage medium, characterized in that, The system stores a control program for controlling a robot having a base, a robotic arm connected to the base, and a drive unit including motors for driving the robotic arm. The robotic arm has a first arm connected to the base, a second arm connected to the first arm, and a third arm connected to the second arm. The control program is used to execute: The first step is to obtain target position information related to the target position when the robotic arm is moved; The second step is to determine the frequency components to be removed from the drive signal driving the motor based on the positional relationship between the center of gravity of the robotic arm at the target position and the center of gravity of the end effector set on the robotic arm, based on the obtained target position information. as well as The third step involves removing the frequency component determined in the second step from the drive signal to generate a corrected drive signal.

Citation Information

Patent Citations

  • Control device

    JP2001293638A

  • Overshoot detection method, overshoot detection system, overshoot adjustment method and robot system

    CN112140127A

  • Control Device And Robot System

    US20180281184A1

  • Control apparatus, horizontal articulated robot and robot system

    US20200023515A1

  • Encoder abnormality detecting method, operation control device, robot, and robot system

    US20210060784A1