robot systems

JP2026143074APending Publication Date: 2026-09-08NACHI FUJIKOSHI CORP +1
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2025030470
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-02-27
Publication Date
2026-09-08

AI Technical Summary

Benefits of technology

【0009】 本発明により、減速機の角度伝達誤差等の影響を低減し、位置決め精度や経路追従性能を向上できるロボットシステムを提供できる。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026143074000001_ABST
    Figure 2026143074000001_ABST
Patent Text Reader

Abstract

This robot system reduces the effects of angle transmission errors in the gearbox and improves positioning accuracy and path-following performance. [Solution] The robot system 1 comprises a robot 2 having a motor and a reduction gear, and a control device 3 having a processor 31 and a memory 32, which controls the operation of the robot 2. The processor 31 provides feedback of the speed of the output shaft connected to the reduction gear at a predetermined sampling period, calculates the speed deviation between the speed command of the output shaft and the speed of the output shaft, stores the speed deviation for one rotation of the motor in the memory 32 in correspondence with the rotation angle of the motor, retrieves the value of the speed deviation corresponding to the rotation angle of the motor in the future from the memory 32 as the future value of the speed deviation, and executes the processing of a feedforward controller that outputs a feedforward gain signal based on the future value of the speed deviation and the current value of the speed deviation, thereby determining the current command of the motor.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a robot system comprising: a robot having a motor and a speed reducer; and a control device that controls the operation of the robot. [Background Art]

[0002] An articulated robot has a motor and a speed reducer such as a harmonic gear speed reducer at each joint. It is known that the angle transmission error of a speed reducer adversely affects the positioning accuracy and path following performance of a robot. The angle transmission error is the difference between the theoretically calculated rotation angle of the output shaft of the speed reducer determined based on an arbitrary rotation angle applied to the input shaft of the speed reducer and the actual rotation angle of the output shaft. Since the angle transmission error has periodic characteristics, it is conceivable to use these characteristics to reduce the influence of the angle transmission error. For example, Patent Document 1 discloses a motor control device that suppresses periodic vibration of a compressor motor. [Prior Art Literature] [Patent Literature]

[0003] [Patent Document 1] Japanese Unexamined Patent Publication No. 2022-066991 [Summary of the Invention] [Problem to be Solved by the Invention]

[0004] However, since Patent Document 1 does not assume a speed reducer, the technology of Patent Document 1 cannot be directly applied to a robot, and improvements in the positioning accuracy and path following performance of the robot cannot be achieved.

[0005] The present invention has been made in view of the aforementioned circumstances, and an object of the present invention is to provide a robot system capable of reducing the influence of angle transmission error of a speed reducer and improving positioning accuracy and path following performance. [Means for Solving the Problem]

[0006] To achieve the aforementioned objectives, the present invention provides a robot system comprising: a robot having a motor and a reduction gear; a control device having a processor and memory for controlling the operation of the robot, wherein the processor provides feedback of the speed of an output shaft connected to the reduction gear at a predetermined sampling period, calculates a speed deviation between the speed command of the output shaft and the speed of the output shaft, stores the speed deviation for one rotation of the motor in memory in correspondence with the rotation angle of the motor, retrieves a value of the speed deviation corresponding to a future rotation angle of the motor from the memory and sets it as the future value of the speed deviation, executes a feedforward controller process that outputs a feedforward gain signal based on the future value of the speed deviation and the current value of the speed deviation, and determines the current command of the motor based on the current value of the speed deviation and the feedforward gain signal.

[0007] The processor may also be controlled to bring the transfer function from the input to the feedforward controller to the velocity of the output shaft closer to 1.

[0008] Furthermore, the processor may provide feedback on the motor speed, the helix angle of the reduction gear, and the output shaft speed at the sampling period, and correct the motor current command based on the motor speed, the helix angle of the reduction gear, and the output shaft speed. [Effects of the Invention]

[0009] The present invention provides a robot system that can reduce the effects of angle transmission errors in the gearbox and improve positioning accuracy and path-following performance. [Brief explanation of the drawing]

[0010] [Figure 1] This figure shows the overall configuration of a robot system according to an embodiment of the present invention. [Figure 2] Figure 1 shows an example of the internal structure of a joint. [Figure 3] Block diagram showing an example of the control device in Figure 1. [Figure 4] Block diagram of the predictive feedforward control system to explain the feedforward control unit in Figure 3. [Figure 5] Block diagram of a predictive feedforward control system using future velocity deviation values ​​to explain the feedforward control unit in Figure 3. [Figure 6] A flowchart showing an example of the processing flow executed by the control device in Figure 1. [Figure 7] Figure 1 shows an example of the array of speed deviations stored in memory. [Figure 8] Overall diagram showing an example of the results of suppressing angular transmission error according to an embodiment of the present invention. [Figure 9] A partial diagram showing an example of the results of suppressing angular transmission error according to an embodiment of the present invention. [Modes for carrying out the invention]

[0011] Embodiments of the present invention will be described in detail below based on the drawings. The shapes, sizes, and positional relationships of each component shown in the drawings are shown in a general manner to the extent that the embodiments of the present invention can be understood, and embodiments of the present invention are not limited to the examples shown in the drawings.

[0012] Figure 1 is a diagram showing the overall configuration of a robot system according to an embodiment of the present invention. As shown in Figure 1, the robot system 1 comprises a robot 2 having a plurality of joints 21 and a control device 3 that controls the movement of the robot 2.

[0013] Robot 2 is, for example, an industrial robot and comprises a base 22 installed on a floor or the like, an arm 23 connected to the base 22, and a tool 24 attached to the end of the arm 23. The arm 23 is composed of a linkage mechanism having a plurality of joints 21 and a plurality of links. Each joint 21 connects a pair of adjacent links and is driven by a power mechanism (motor, reducer, bearing, gear, etc.) to rotate the pair of links relative to each other. Robot 2 is, for example, a vertical articulated robot with 6 joints 21. However, embodiments of the present invention are applicable regardless of the number of joints 21 of robot 2.

[0014] The processor 31, memory 32, auxiliary storage device 33, and input / output interface 34 of the control device 3 are connected via a bus 35. The processor 31 is a CPU (Central Processing Unit), etc., which reads computer programs pre-stored in the auxiliary storage device 33, etc., into the memory 32 and executes multiple instructions sequentially. The memory 32 is a volatile memory such as semiconductor memory, and is a storage device that the processor 31 can directly read and write data to. The auxiliary storage device 33 is a computer-readable non-temporary storage medium such as a hard disk drive, solid-state drive, or USB (Universal Serial Bus) memory, and stores computer programs and data. The input / output interface 34 is an external connection device used for input and output of signals to and from the robot 2, etc.

[0015] All or part of the functions of the control device 3 may be composed of logic circuits or analog circuits, and the processing of various programs may be composed of electronic circuits such as FPGAs (Field Programmable Gate Arrays). Furthermore, the control device 3 may include devices not shown in Figure 1, such as a wireless LAN (Local Area Network) adapter (wireless communication device), a liquid crystal display (display device), a keyboard and mouse (input devices).

[0016] The control device 3 may be incorporated in the base 22 or the like of the robot 2, or may be installed outside the robot 2. The robot 2 and the control device 3 are communicatively connected via a communication cable or wirelessly. The number of the control devices 3 may be one or plural.

[0017] Figure 2 is a diagram showing an example of the internal configuration of the joint in Figure 1. In Figure 2, bearings, gears, cables, and the like are omitted from the power mechanism of the joint 21. As shown in Figure 2, each joint 21 of the robot 2 includes a motor 41 and a speed reducer 43 connected to a motor shaft 42 of the motor 41. An output shaft 44 of the speed reducer 43 is connected to a link 25 (load) of the robot 2.

[0018] Further, the joint 21 includes a drive device 45 for the motor 41 and an encoder 46 that detects the rotation angle of the motor shaft 42. The drive device 45 and the encoder 46 are communicatively connected to the control device 3. Furthermore, the joint 21 may be provided with various sensors not shown in the drawings. The drive device 45 drives the motor 41 in accordance with a control signal from the control device 3. The encoder 46 outputs detection signals of the rotation direction and rotation angle of the motor shaft 42 to the control device 3.

[0019] The control device 3 may have the function of an observer (state observer) 36 that estimates the state of a controlled object. In the embodiment of the present invention, the observer 36 estimates the speed of the output shaft 44 connected to the speed reducer 43, the speed of the motor 41, and the torsion angle of the speed reducer 43 at a predetermined sampling cycle. Alternatively, instead of the values estimated by the observer 36, measurement values obtained by various sensors or calculated values based on the measurement values may be used for these values. In the embodiment of the present invention, any detection means for the speed of the output shaft 44, the speed of the motor 41, and the torsion angle of the speed reducer 43 may be used.

[0020] Superscripts and subscripts of variables used in the following drawings and mathematical formulas have a reduced notation size in sentences, which lowers visibility. Therefore, in the following description, subscripts are described as they are, and superscripts are described after the symbol "^". For example, the leftmost variable in Figure 3 is expressed as "ωL^ref".

[0021] Figure 3 is a block diagram showing an example of the control device in Figure 1. The plant model 50 is a model of each joint 21 of the robot 2. The processor 31 of the control device 3 controls the state feedback unit 70 and the feedforward control unit 80, assuming that each joint 21 is configured as a plant model 50, and controls the rotation angle θL of the output shaft 44 based on the velocity command ωL^ref of the output shaft 44.

[0022] First, let's explain plant model 50. Plant model 50 is a two-inertia system resonance model that includes a motor 41 and a gearbox 43. The reduction ratio of the gearbox 43 is Rg, and the spring constant is Ks. The moment of inertia of the motor 41 is JM, and the viscous friction resistance is DM. The moment of inertia of the link 25 (load) is JL, and the viscous friction resistance is DL.

[0023] The q-axis current Iq is converted to an analog value by a ZOH (zero-order hold) 51 that holds the value until the next sampling, and is converted to torque τM by a gain element 52 with torque constant Kt. The torque τM is added to the motor element 55 corresponding to the motor 41 by subtracting the output from the reduction element 53 corresponding to the reduction gear 43 by a subtraction element 54. The output of the motor element 55 is the speed ωM of the motor 41, which is converted to the rotation angle θM of the motor 41 via an integral element 56. The rotation angle θM of the motor 41 is output to the load element 62 corresponding to the link 25 (load) via a subtraction element 57 corresponding to the reduction gear 43, an error element 58 which is a mathematical model of the angle transmission error, an addition element 59, a subtraction element 60, and a gain element 61 corresponding to the spring constant Ks. Φi of the error element 58 indicates the phase. Error element 58 models an example of angular transmission error in a harmonic drive gear reducer, where the tooth groove pitch error causes two vibrations for each rotation of the motor 41. Addition element 59 adds the output from error element 58 to the output from subtraction element 57. The output of load element 62 is the velocity ωL of the output shaft 44, which is converted to the rotation angle θL of the output shaft 44 via integration element 63. Subtraction element 60 subtracts the rotation angle θL of the output shaft 44 from the output of addition element 59 and outputs it as the helix angle θs of the reducer 43.

[0024] Next, the state feedback unit 70 will be described. The state equation with the velocity ωL of the output shaft 44 as the output is expressed by equation (1). The processor 31 obtains the numerical values ​​of each element of the discrete-time matrix (=equation (2)) related to equation (1).

[0025]

number

[0026]

number

[0027] The processor 31 controls the discrete-time system state feedback unit 70 at each sampling period Ts in order to suppress resonance between the two inertial systems. The plant model Pv(z) is represented by the pulse transfer function of equation (3), where f is the discrete-time system state feedback gain 71.

[0028]

number

[0029] The discrete-time state feedback gain 71 is determined by the pole configuration method, as shown in equation (4). Here, ω is the pole on the continuous-time plane, and Ts is the sampling period.

[0030]

number

[0031] The processor 31 provides feedback on the speed ωM of the motor 41, the helix angle θs of the reduction gear 43, and the speed ωL of the output shaft 44 at a sampling period Ts. The processor 31 then corrects the current command I^ref of the motor 41 based on the speed ωM of the motor 41, the helix angle θs of the reduction gear 43, and the speed ωL of the output shaft 44. The subtraction element 72 subtracts the state feedback gain f from the current command I^ref of the motor 41 and outputs it as the q-axis current Iq.

[0032] Next, the feedforward control unit 80 will be described. Figure 4 is a block diagram of the predictive feedforward control system used to explain the feedforward control unit in Figure 3. Cv(z) is the PI speed controller, and Pv(z) is a two-inertia plant model without zero-order hold (=equation (3)). Cv(z) is defined as shown in equation (5). Here, Kps and Kis are the proportional gain and integral gain in Cv(z), respectively. Furthermore, Cv(z) is implemented using the backward difference method.

[0033]

number

[0034] PI control cannot suppress the angular transmission error of the reducer 43. If we define the velocity ripple that cannot be suppressed by PI control as efeed, the transfer function from the velocity command ω^ref of the output shaft 44 to efeed is given by equation (6).

[0035]

number

[0036] In a steady state, the velocity response ω^res of the output shaft 44 matches the velocity command ω^ref of the output shaft 44, and the velocity deviation eω between them is 0. However, when a periodic disturbance is input, the velocity response ω^res of the output shaft 44 oscillates, and a velocity deviation eω affected by the periodic disturbance is generated. The processor 31 of the control device 3 uses the velocity deviation eω affected by the periodic disturbance as the input efeed to the feedforward controller Gff(z), and matches the velocity response ω^res of the output shaft 44 with the input efeed to the feedforward controller Gff(z). In this way, the control device 3 can reduce the oscillation of the velocity response ω^res of the output shaft 44 due to the periodic disturbance.

[0037] The processor 31 controls the transfer function from the input to the feedforward controller Gff(z) to the velocity response ω^res of the output shaft 44 to approach 1, in order to match the velocity response ω^res of the output shaft 44 with the input efeed to the feedforward controller Gff(z). To this end, the feedforward controller Gff is designed by the reciprocal of the closed-loop transfer function Gclose of the controlled system. The closed-loop transfer function Gclose is given by equation (7), and the feedforward controller Gff is given by equation (8).

[0038]

number

[0039]

number

[0040] Since equation (7) has a fourth-order denominator and a third-order numerator, the feedforward controller Gff becomes a non-proper transfer function with a third-order denominator and a fourth-order numerator, as shown in equation (8), and cannot be realized as is. Therefore, we divide the numerator of equation (8) by the denominator and define the feedforward controller Gff by equation (9). Here, the first term of equation (9) is the quotient of the division, Aff is the remainder of the division, and Bff is the denominator of equation (8).

[0041]

number

[0042] When the control system shown in Figure 4 is applied, periodic disturbances are canceled out, and the resulting velocity deviation eω is free from the influence of periodic disturbances. However, in the embodiment of the present invention, since the velocity deviation eω affected by periodic disturbances is required, it is necessary to predict the velocity deviation eω affected by periodic disturbances even after vibration suppression.

[0043] From the control system shown in Figure 4, the velocity deviation eω(k) and the velocity response ω^res(k) of the output shaft 44 are expressed by equations (10a) and (10b).

[0044]

number

[0045] Equation (11) is obtained by transforming equation (10a) using equations (10b) and (6).

[0046]

number

[0047] The processor 31 uses the gain Gof, expressed in equation (12), to estimate the input efeed(k) to the feedforward controller Gff(z) in equation (11) from the velocity deviation eω(k).

[0048]

number

[0049] Figure 5 is a block diagram of a predictive feedforward control system using future values ​​of velocity deviation to explain the feedforward control unit of Figure 3. The control system shown in Figure 5 is configured based on equations (11) and (12). The feedforward gain signal rf(k) shown in Figure 5 is expressed as equation (13) using equation (9). Note that "z" (= z to the power of 1) in the first term on the right-hand side of equation (9) represents "one sample advance", and efeed(k+1) is the value one sample in the future.

[0050]

number

[0051] The formula for calculating the feedforward gain signal rf(k) shown in equation (13) includes not only the current input value efeed(k) to the feedforward controller Gff(z), but also the value efeed(k+1) one sample in the future. Therefore, in order to implement the control system shown in Figure 5, it is necessary to obtain the future input value efeed(k+1) to the feedforward controller Gff(z).

[0052] In this embodiment of the present invention, the characteristic that the angle transmission error of the reduction gear 43 is periodic is utilized, and it is assumed that if the rotation angle θM of the motor 41 is the same, the velocity deviation eω affected by the periodic disturbance will be the same. Under this assumption, the processor 31 stores the velocity deviation eω affected by the periodic disturbance for one rotation of the motor 41 in memory 32, corresponding to the rotation angle θM of the motor 41. The processor 31 also retrieves the value of the velocity deviation eω affected by the periodic disturbance corresponding to the rotation angle θM(k+1) of the motor 41 one sample in the future from memory 32, and sets it as the future value of the velocity deviation affected by the periodic disturbance one sample in the future eω(k+1). The processor 31 then sets eω(k+1) as the future value efeed(k+1) of the input to the feedforward controller Gff(z), and calculates the feedforward gain signal rf(k) from equation (13).

[0053] In general, even if the transfer function of a continuous-time system does not have unstable zeros, it is known that if the relative order exceeds 2, the discretized zeros become unstable zeros. The transfer function from the q-axis current Iq to the velocity ωL of the output axis 44, for which the discrete-time matrix (=equation (2)) is obtained, is given by equation (14), and the plant model Pv(z) (=equation (3)) has unstable zeros.

[0054]

number

[0055] The feedforward controller Gff in equation (8) contains the reciprocal of Pv(z) and has an unstable pole, so it will not work as is. In the embodiment of the present invention, an approximate inverse system design using ZPETC (Zero Phase Error Tracking Algorithm for Digital Control) is used. For details of ZPETC, see M. Tomizuka: "Zero phase error tracking algorithm for digital control”, Journal of Dynamic Systems, Measurement, and This is described in "Control, Vol.109, pp.65-68, 1987".

[0056] According to ZPETC, for the controlled plant model Pv(z) shown in equation (15), we obtain the approximate inverse system PZPETC(z) shown in equation (16). Here, B+(z) is a factor in B(z) that has stable zeros, and B-(z) is a factor in B(z) that has unstable zeros. The processor 31 of the control device 3 uses Gff shown in equation (17) as a feedforward controller. This allows the feedforward control to operate stably.

[0057]

number

[0058] Returning to the explanation of the feedforward control unit 80 in Figure 3, the speed command ωL^ref of the output shaft 44 is subtracted by the subtraction element 81 from the speed ωL of the output shaft 44, which is fed back at the sampling period Ts, and added to the PI speed controller 82 as a speed deviation eω(k). The speed deviation eω(k) is then combined with a gain element 84 by an addition element 83 and stored in memory 32 as the input efeed(k) to the feedforward controller 85. The feedforward controller 85 receives the current value efeed(k) as input to the feedforward controller 85, as well as a future value efeed(k+1) read from memory 32, and outputs a feedforward gain signal rf(k). The feedforward gain signal rf(k) is combined with the output from the PI speed controller 82 by an addition element 86 and converted into a current command I^ref for the motor 41.

[0059] Figure 6 is a flowchart showing an example of the processing flow performed by the control device in Figure 1. For example, the control device 3 controls the movement of the robot 2 based on the teaching data of the robot 2 that is taught in advance.

[0060] The processor 31 of the control device 3 provides state feedback of the motor speed ωM, the torsion angle θs of the reduction gear 43, and the output shaft speed ωL at a predetermined sampling period Ts (step S1). Next, the processor 31 calculates the speed deviation eω between the speed command ωL^ref of the output shaft 44 and the speed ωL of the output shaft 44 (step S2), and stores the speed deviation eω in memory 32 in association with the rotation angle θM of the motor 41 (step S3).

[0061] Figure 7 shows an example of a speed deviation array stored in the memory of Figure 1. The speed deviation array 90 is a data area on memory 32 for storing the correspondence between the rotation angle θM of the motor 41 and the speed deviation eω for one rotation of the motor 41. The rotation angle θM of the motor 41 is, for example, the mechanical angle of the motor 41. Each element of the speed deviation array 90 is, for example, assigned to θ1, θ2, ..., θn (=360 degrees) by dividing the rotation angle θM of the motor 41 into fixed angular intervals. The processor 31 stores the value of the speed deviation eω calculated in step S2 in the element of the rotation angle θk of the motor 41 at the current sampling k. If a value is already stored in the corresponding element, the processor 31 overwrites it and stores the value of the speed deviation eω. That is, the processor 31 stores the latest value of the speed deviation eω for one rotation of the motor 41 in memory 32. Furthermore, due to the effects of mechanical resonance and angular transmission errors, the speed deviation eω has at least two vibration peaks within one rotation of the motor 41.

[0062] Returning to the explanation of Figure 6, the processor 31 then executes the control of the feedforward control unit 80 to determine the current command I^ref for the motor 41 (step S4).

[0063] Now, let's explain the process in step S4. The processor 31 retrieves the value of the velocity deviation eω corresponding to the rotation angle θM(k') of the motor 41 one sample later (where k'>k) from memory 32 and sets it as the future value of the velocity deviation. More specifically, the processor 31 obtains the future value of the velocity deviation eω(k+1) for one sample later than the current sampling k from memory 32. For example, the processor 31 adds the value obtained by multiplying the current motor 41 speed ωM(k) by the sampling period Ts to the current motor 41 rotation angle θM(k) to obtain the rotation angle θM(k+1) of the motor 41 one sample later. This assumes that the speed after one sample does not change or changes only slightly. Then, the processor 31 retrieves the value of the velocity deviation eω corresponding to the rotation angle θM(k+1) of the motor 41 one sample later from memory 32 and sets it as the future value of the velocity deviation one sample later.

[0064] Next, the processor 31 processes the feedforward controller Gff(z), which outputs a feedforward gain signal rf(k), based on the future value of the speed deviation eω(k+1) and the current value of the speed deviation eω(k). Here, the processor controls the transfer function from the input to the feedforward controller Gff(z) to the speed response ωL^res of the output shaft 44 to approach 1. Then, the processor 31 determines the current command I^ref for the motor 41 based on the current value of the speed deviation eω(k) and the feedforward gain signal rf(k).

[0065] In step S5, the processor 31 controls the state feedback unit 70 and corrects the current command I^ref of the motor 41 based on the speed ωM of the motor 41, the helix angle θs of the reduction gear 43, and the speed ωL of the output shaft 44. The processor 31 then transmits the current signal related to the corrected current command I^ref of the motor 41 to the drive unit 45 of the motor 41 (step S6).

[0066] Next, the processor 31 checks whether to terminate the operation of robot 2 according to the teaching data (step S7). If the operation is not to be terminated (No in step S7), the processor 31 repeats the process from step S1, and if the operation is to be terminated (Yes in step S7), it terminates the process.

[0067] Figure 8 is an overall view showing an example of the suppression of angular transmission error according to an embodiment of the present invention. Figure 9 is a partial view showing an example of the suppression of angular transmission error according to an embodiment of the present invention. In Figures 8 and 9, the horizontal axis represents time (Times [s]), and the vertical axis represents the velocity of the output shaft 44 (ωL [rad / s]). Figure 9 shows the period from 4 seconds to 5 seconds in Figure 8. The solid line (Response) represents the velocity response ωL^res of the output shaft 44, and the dotted line (Reference) represents the velocity command ωL^ref of the output shaft 44. According to Figures 8 and 9, it can be seen that the angular transmission error is suppressed quickly, and that this suppressed state is maintained.

[0068] As described above, the processor 31 of the control device 3 provides feedback of the speed ωL of the output shaft 44 connected to the reduction gear 43 at a predetermined sampling period Ts, and calculates the speed deviation eω between the speed command ωL^ref of the output shaft and the speed ωL of the output shaft 44. The processor 31 also stores the speed deviation eω for one rotation of the motor 41 in the memory 32, corresponding to the rotation angle θM of the motor 41. The processor 31 then retrieves the value of the speed deviation eω corresponding to the rotation angle θM(k') of the motor 41 in the future (where k'>k) from the memory 32 and sets it as the future value of the speed deviation eω(k'). Based on the future value of the speed deviation eω(k') and the current value of the speed deviation eω(k), the processor 31 executes the processing of the feedforward controller Gff, which outputs a feedforward gain signal rf, and determines the current command I^ref of the motor 41 based on the current value of the speed deviation eω(k) and the feedforward gain signal rf. This allows the robot system 1 to reduce the effects of angle transmission errors and other factors in the reduction gear 43, thereby improving positioning accuracy and path-following performance.

[0069] Furthermore, the processor 31 controls the transfer function from the input to the feedforward controller Gff to the velocity ωL of the output shaft 44 to approach 1. This makes it possible to match the velocity response ωL^res of the output shaft 44 with the input efeed to the feedforward controller Gff, thereby reducing oscillations in the velocity response ωL^res of the output shaft 44 due to periodic disturbances.

[0070] Furthermore, the processor 31 provides feedback on the speed ωM of the motor 41, the torsion angle θs of the reduction gear 43, and the speed ωL of the output shaft 44 at a predetermined sampling period Ts, and corrects the current command I^ref of the motor 41 based on the speed ωM of the motor 41, the torsion angle θs of the reduction gear 43, and the speed ωL of the output shaft 44. This suppresses mechanical resonant vibrations of the robot 2 and improves positioning accuracy and path-following performance.

[0071] Preferred embodiments of the robot system and the like according to the present invention have been described above with reference to the attached drawings, but the present invention is not limited to these examples. It will be obvious to those skilled in the art that various modifications and alterations can be conceived within the scope of the technical idea disclosed herein, and these will naturally also fall within the technical scope of the present invention. [Explanation of Symbols]

[0072] 1…Robot system 2... Robots 3…Control device 31… Processor 32...memory 41... Motor 42……Reducer Ts... Sampling period θM... Motor rotation angle ωM………Motor speed I^ref... Motor current command ωL………Speed ​​of the output shaft ωL^ref………Speed ​​command for the output shaft eω... Speed ​​deviation between the output shaft speed command and the output shaft speed θs... Helix angle of the gearbox Gff... Feedforward controller rf... Feedforward gain signal

Claims

1. A robot having a motor and a gearbox, A control device having a processor and memory, which controls the operation of the robot, Equipped with, The aforementioned processor, The speed of the output shaft connected to the reduction gear is fed back at a predetermined sampling period, and the speed difference between the speed command of the output shaft and the speed of the output shaft is calculated. The speed deviation is stored in the memory for one rotation of the motor, corresponding to the rotation angle of the motor. The process of a feedforward controller is executed, which retrieves the value of the speed deviation corresponding to the rotation angle of the motor in the future from the current sampling point, sets it as the future value of the speed deviation, and outputs a feedforward gain signal based on the future value of the speed deviation and the current value of the speed deviation. The current command for the motor is determined based on the current value of the speed deviation and the feedforward gain signal. A robotic system characterized by the following features.

2. The processor controls the transfer function from the input to the feedforward controller to the velocity of the output shaft to approach 1. The robot system according to feature 1.

3. The processor provides feedback of the motor speed, the helix angle of the reduction gear, and the output shaft speed at the sampling period, and corrects the motor current command based on the motor speed, the helix angle of the reduction gear, and the output shaft speed. The robot system according to feature 1.

Citation Information

Patent Citations

  • Motor control device for air conditioner and motor control method for air conditioner

    JP2022066991A