Arm equipment
The arm-equipped device with a direct drive motor system addresses the issue of long settling times by adjusting the third gain post-command to minimize control component cancellation, ensuring precise and efficient arm movement without complex configurations.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-22
- Publication Date
- 2026-03-06
AI Technical Summary
Conventional robot arm configurations using direct drive motors suffer from increased load inertia and longer settling times due to the cancellation of proportional and integral control outputs, which is exacerbated by the lack of a code discriminator in general-purpose servo amplifiers, leading to complex control configurations.
An arm-equipped device with a direct drive motor system that adjusts the third gain after command completion to minimize the cancellation of proportional and integral control components, allowing for precise arm movement without the need for a code discriminator, using a control unit to determine the control amount based on deviations and predicted movement speeds.
The device achieves high-precision arm movement with reduced settling time and a simpler configuration by minimizing the cancellation of control components, eliminating the need for complex sign discrimination and reducing the settling time of the arm.
Smart Images

Figure 2026037561000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to an arm-equipped device using a direct drive motor. [Background technology]
[0002] Conventionally, arms installed in robots and the like are connected to motors via speed reduction mechanisms. In this configuration, the speed reduction mechanism interposed between the motor and the arm causes a decrease in the positional accuracy of the arm when the arm is driven by the motor.
[0003] Therefore, in order to improve the positioning accuracy of the arm, the inventors of the present invention considered adopting a configuration in which the arm is connected to the motor without a reduction mechanism, that is, a configuration in which the arm is driven by a so-called direct drive motor.
[0004] However, when a configuration in which the arm is driven by a direct drive motor is adopted, the load inertia is larger than when the arm and motor are connected via a reduction mechanism, resulting in a longer settling time for the arm. The settling time for the arm is the time from when a command to move the arm is completed until the arm position converges to within a predetermined range including the target position.
[0005] It is generally known that the motor control amount is determined by performing proportional control and integral control, as will be described later. When controlling a direct drive motor by performing proportional control and integral control, after the command is completed, the output by the proportional control and the output by the integral control are opposite outputs and cancel each other out, which can result in the actual control amount being smaller than the appropriate control amount. This is thought to be the cause of the long settling time of the arm.
[0006] In order to prevent the output from proportional control and the output from integral control from canceling each other out, and thus prevent the actual control amount from becoming too small relative to the appropriate control amount, in Patent Document 1, a sign discriminator in a servo system control device discriminates whether the sign of the input to a PI controller, which has the same sign as the output of proportional control, and the sign of the integrated value of an integrator are the same or different. If the signs are the same, a normal integral operation is performed, and if the signs are different, the integrated value of the integrator is set to a preset constant. [Prior art documents] [Patent documents]
[0007] [Patent Document 1] Japanese Patent Application Laid-Open No. 2007-87367 Summary of the Invention [Problem to be solved by the invention]
[0008] The configuration of Patent Document 1 requires a code discriminator, but general-purpose servo amplifiers used to control motors do not have the functionality of a code discriminator. Furthermore, it is difficult to change the configuration of a general-purpose servo amplifier to one that includes a code discriminator. Therefore, in order to perform the control described in Patent Document 1, control must be performed by a controller upstream of the general-purpose servo amplifier, which may result in a complex device configuration.
[0009] An object of the present invention is to provide an arm-equipped device that can shorten the settling time of the arm with a simpler configuration. [Means for solving the problem]
[0010] The arm-equipped device of the first invention comprises an arm supported so as to be swingable, a direct drive motor connected to the arm and driving the arm, a sensor for acquiring information relating to the position of the arm, and a control unit that determines a control amount for driving the direct drive motor and drives the direct drive motor to control the movement speed and position of the arm, wherein the control unit, during a command to move the arm to a target position, determines a deviation between the position of the arm acquired based on the detection result of the sensor and the target position indicated by the command as a first deviation, The control amount is determined based on a value obtained by multiplying the first deviation by a first gain and a value obtained by adding at least the predicted movement speed of the arm based on the command, and the difference between the movement speed of the arm calculated based on the detection results of the sensor, and the control amount is determined based on the value obtained by multiplying the second deviation by a second gain and the value obtained by multiplying the accumulated value of the first deviation or the accumulated value of the second deviation by a third gain, and the direct drive motor is driven to move the arm to the target position, and the third gain is made smaller during a predetermined period after the command is completed than during a period before the command is completed.
[0011] In this invention, during a command specifying a target position of the arm, the control amount of the direct drive motor is determined based on the value obtained by multiplying the second deviation by the second gain and the cumulative value of the first deviation or the value obtained by multiplying the cumulative value of the second deviation by the third gain, and the direct drive motor is controlled to move the arm to the target position. This makes it possible to move the arm to the target position with greater accuracy than when the above control is performed with a configuration in which the arm and the motor that drives the arm are connected via a speed reduction mechanism or the like.
[0012] Here, unlike the present invention, if the third gain is not changed before and after the completion of the above command, after the completion of the above command, the component of the control amount of the direct drive motor based on the value obtained by multiplying the second deviation by the second gain (component due to proportional control) and the component based on the value obtained by multiplying the cumulative value of the first deviation or the cumulative value of the second deviation by the third gain (component due to integral control) will cancel each other out, causing the control amount of the direct drive motor to become smaller than the appropriate control amount, and the above settling time will become longer.
[0013] Therefore, in the present invention, the third gain is set smaller during a predetermined period after the command is completed than during a period before the command is completed. This reduces the degree to which the proportional control component and the integral control component cancel each other out in the control amount of the direct drive motor after the command is completed. As a result, the control amount of the direct drive motor after the command is completed becomes an appropriate control amount, and the settling time of the arm can be shortened.
[0014] Furthermore, in the present invention, the settling time of the arm is shortened by making the third gain smaller during a predetermined period after the command is completed than during a period before the command is completed, and therefore, unlike Patent Document 1, there is no need for a configuration to determine whether the component due to proportional control and the component due to integral control have the same sign or different signs. This makes it possible to shorten the settling time of the arm with a simple configuration.
[0015] The arm-equipped device of the second invention is the arm-equipped device of the first invention, wherein, during the command, the control unit determines the control amount based on a value obtained by adding together a value obtained by multiplying the first deviation by the first gain and a predicted movement speed of the arm based on the command, and a movement speed of the arm calculated based on the detection results of the sensor, as the second deviation, and a value obtained by multiplying the second deviation by the second gain and a value obtained by multiplying the cumulative value of the second deviation by the third gain.
[0016] In the present invention, the second deviation is the deviation between the arm movement speed calculated based on the sensor detection results and the sum of the first deviation multiplied by the first gain and the predicted arm movement speed based on the command.The arm is moved to the target position by controlling the direct drive motor using a control variable determined based on the sum of the second deviation multiplied by the second gain and the cumulative second deviation multiplied by the third gain.This allows the arm to be moved to the target position more accurately than when the above control is performed using a configuration in which the arm and the motor that drives the arm are connected via a reduction mechanism or the like.
[0017] Furthermore, even when controlling the direct drive motor in this manner, by making the third gain smaller during the predetermined period after the command is completed than during the period before the command is completed, it is possible to reduce the degree to which the proportional control component and the integral control component cancel each other out in the control amount of the direct drive motor after the command is completed. As a result, the control amount of the direct drive motor after the command is completed becomes an appropriate control amount, and the settling time of the arm can be shortened.
[0018] The arm-equipped device of the third invention is the arm-equipped device of the first invention, wherein, during the command, the control unit determines the control amount based on the value obtained by multiplying the second deviation by the second gain, using as the second deviation the deviation between the sum of the value obtained by multiplying the first deviation by the first gain, the predicted movement speed of the arm based on the command, and the value obtained by multiplying the cumulative value of the first deviation by the third gain, and the movement speed of the arm calculated based on the detection results of the sensor.
[0019] In the present invention, the second deviation is the deviation between the arm movement speed calculated based on the sensor detection results and a value obtained by adding together the first deviation multiplied by the first gain, the predicted arm movement speed based on the command, and the cumulative value of the first deviation multiplied by the third gain.The arm is then moved to the target position by determining a control amount based on the second deviation multiplied by the second gain and controlling the direct drive motor.This allows the arm to be moved to the target position more accurately than when the above control is performed using a configuration in which the arm and the motor that drives the arm are connected via a reduction mechanism or the like.
[0020] Furthermore, even when controlling the direct drive motor in this manner, by making the third gain smaller during the predetermined period after the command is completed than during the period before the command is completed, it is possible to reduce the degree to which the proportional control component and the integral control component cancel each other out in the control amount of the direct drive motor after the command is completed. As a result, the control amount of the direct drive motor after the command is completed becomes an appropriate control amount, and the settling time of the arm can be shortened.
[0021] In the present invention, as described above, the second deviation is the deviation between the arm movement speed calculated based on the detection result of the sensor and the sum of the value obtained by multiplying the first deviation by the first gain, the predicted movement speed of the arm based on the command, and the value obtained by multiplying the accumulated value of the first deviation by the third gain. That is, the second deviation corresponds to the value obtained by multiplying the accumulated value of the first deviation by the third gain. Therefore, in the present invention, if the control amount is determined based on the value obtained by multiplying the second deviation by the second gain, the control amount is determined based on the value obtained by multiplying the second deviation by the second gain and the value obtained by multiplying the first deviation by the third gain.
[0022] An arm-equipped device according to a fourth aspect of the present invention is the arm-equipped device according to the first aspect of the present invention, wherein the predetermined period is changeable.
[0023] In the present invention, the settling time of the arm can be shortened by changing the predetermined period during which the third gain is made smaller than the period before command completion depending on the operating status of the arm-equipped device, etc.
[0024] An arm-equipped device of a fifth aspect of the present invention is the arm-equipped device of the first aspect of the present invention, wherein the control unit sets the third gain to 0 during the predetermined period.
[0025] In the present invention, by setting the third gain to 0 for a predetermined period, the control amount of the direct drive motor is determined regardless of the accumulated value of the first deviation or the accumulated value of the second deviation, which are factors that lengthen the settling time of the arm, and therefore the settling time of the arm can be shortened.
[0026] The arm-equipped device of a sixth aspect of the invention is the arm-equipped device of the first aspect of the invention, further comprising: a plurality of the arms connected to each other so as to be able to swing; and a plurality of the direct drive motors directly connected to each of the plurality of the arms, wherein the control unit determines the control amount for each of the plurality of direct drive motors based on a value obtained by multiplying the second deviation by the second gain and a value obtained by multiplying the accumulated value of the first deviation or the accumulated value of the second deviation by the third gain, and drives the direct drive motor to move the arm to the target position, and for at least one of the plurality of direct drive motors, makes the third gain smaller during the predetermined period than during the period before command completion.
[0027] For each of the multiple direct drive motors, the control amount of the direct drive motor is determined based on the value obtained by multiplying the second deviation by the second gain and the cumulative value of the first deviation or the value obtained by multiplying the cumulative value of the second deviation by the third gain, and the motor is driven based on the determined control amount.This makes it possible to move the multiple arms to the target positions with greater precision than when the above control is performed with a configuration in which the arms and the motors that drive the arms are connected via a speed reducer, etc.Furthermore, for at least one of the multiple direct drive motors, the third gain is made smaller during a predetermined period than during the period before command completion, thereby shortening the settling time of the arm. [Effects of the Invention]
[0028] According to the present invention, the arm can be moved to the target position with high precision, and the settling time of the arm can be shortened with a simple configuration. [Brief explanation of the drawings]
[0029] [Figure 1] FIG. 2A is a schematic configuration diagram of the robot system of the first embodiment as seen from above, and FIG. 2B is a schematic configuration diagram of the robot system of the first embodiment as seen from the front to the rear. [Figure 2] FIG. 2 is a block diagram showing the electrical configuration of the robot system according to the first embodiment. [Figure 3] 2 is a block diagram for explaining control of a DD motor by a control device in the first embodiment. FIG. [Figure 4] 10(a) is a flowchart showing the flow of processing for changing a third gain, and FIG. 10(b) is a flowchart showing the flow of processing for changing a predetermined time. [Figure 5] FIG. 10 is a diagram for explaining forward movement of the hand. [Figure 6]FIG. 10(a) is a diagram showing an example of a change in the output signal from the second proportional control unit, a change in the output signal from the integral control unit, and a signal obtained by adding these two signals together when the third gain is not changed before and after the completion of the command; and FIG. 10(b) is a diagram showing an example of a signal obtained by adding the output signal from the second proportional control unit and the output signal from the integral control unit, and a change in the first deviation when the third gain is not changed before and after the completion of the command. [Figure 7] FIG. 10(a) is a diagram showing an example of a change in the output signal from the second proportional control unit, a change in the output signal from the integral control unit, and a signal obtained by adding these two signals together when the third gain is reduced after the command is completed; and FIG. 10(b) is a diagram showing an example of a signal obtained by adding the output signal from the second proportional control unit and the output signal from the integral control unit, and a change in the first deviation when the third gain is reduced before and after the command is completed. [Figure 8] FIG. 10A is a diagram showing an example of a change in the position of the tip of the hand unit in the left-right direction when the third gain is not changed before and after the completion of the command, and when the third gain is reduced after the completion of the command; and FIG. 10B is a diagram showing an example of a change in the position of the tip of the hand unit in the front-back direction when the third gain is not changed before and after the completion of the command, and when the third gain is reduced after the completion of the command. [Figure 9] FIG. 10 is a block diagram for explaining control of a DD motor by a control device in a second embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0030] [First embodiment] A first preferred embodiment of the present invention will now be described.
[0031] <Robot system configuration> The robot system 1 of the first embodiment (the "arm-equipped device" of the present invention) is installed in a semiconductor manufacturing device and transports a semiconductor substrate D between a semiconductor processing device that performs various processes on the semiconductor substrate D and a load port for loading and unloading the semiconductor substrate D from the semiconductor manufacturing device.
[0032] As shown in Figures 1(a), (b), and 2, the robot system 1 of the first embodiment includes a support portion 12, three arms 13A to 13C, three direct drive motors 14A to 14C (hereinafter sometimes referred to as DD motors 14A to 14C), and a control device 20.
[0033] In the first embodiment, the front-rear direction, left-right direction, and up-down direction are defined as mutually orthogonal directions as shown in Figures 1(a) and 1(b). In the first embodiment, the front and rear sides in the front-rear direction, the right and left sides in the left-right direction, and the upper and lower sides in the up-down direction are defined as shown in Figures 1(a) and 1(b). Here, the front-rear direction and the left-right direction are two mutually orthogonal directions parallel to an installation surface P on which the robot system 1 is installed, and the up-down direction is a direction orthogonal to the installation surface P. The installation surface P is, for example, a horizontal plane. However, the installation surface P is not limited to this, and may be a plane that intersects with the horizontal plane.
[0034] The support column 12 is configured in a generally cylindrical shape with its axis extending in the vertical direction, and is fixed to the installation surface P.
[0035] The arm 13A is a member that is elongated in one direction substantially parallel to the installation surface P. One longitudinal end of the arm 13A is connected to the support 12 via a direct drive motor 14A. More specifically, the direct drive motor 14A has a main body 21A and a rotating shaft 22A. The main body 21A is fixed to the upper end of the support 12 together with a coil (not shown). The rotating shaft 22A is connected to the main body 21A and extends upward and downward to a position above the main body 21A. The upper end of the rotating shaft 22A is connected to one longitudinal end of the arm 13A. This supports the arm 13A relative to the support 12 so that the arm 13A can swing about the rotating shaft 22A. When the direct drive motor 14A is driven, the rotating shaft 22A rotates, thereby driving the arm 13A to swing about the rotating shaft 22A. The structure of the DD motor 14A itself is well known, so a more detailed description of the structure of the DD motor 14A will be omitted here. The same applies to the DD motors 14B and 14C described below.
[0036] The arm 13B is a member elongated in one direction substantially parallel to the installation surface P. The other longitudinal end of the arm 13A and one longitudinal end of the arm 13B are connected via a DD motor 14B. More specifically, the DD motor 14B has a main body 21B and a rotating shaft 22B. The main body 21B is fixed to the other longitudinal end of the arm 13A together with a coil (not shown). The rotating shaft 22B is connected to the main body 21B and extends upward and downward beyond the main body 21B. The upper end of the rotating shaft 22B is connected to one longitudinal end of the arm 13B. This supports the arm 13B relative to the arm 13A so that the arm 13B can swing about the rotating shaft 22B. When the DD motor 14B is driven, the rotating shaft 22B rotates, thereby driving the arm 13B to swing about the rotating shaft 22B.
[0037] The arm 13C is a member elongated in one direction substantially parallel to the installation surface P. The other end in the longitudinal direction of the arm 13B and one end in the longitudinal direction of the arm 13C are connected via the DD motor 14C. More specifically, the DD motor 14C has a main body portion 21C and a rotating shaft portion 22C. The main body portion 21C is fixed to the other end in the longitudinal direction of the arm 13C together with a coil (not shown). The rotating shaft portion 22C is connected to the main body portion 21C and extends vertically upward beyond the main body portion 21C. And the upper end portion of the rotating shaft portion 22C is connected to one end in the longitudinal direction of the arm 13C. Thereby, the arm 13C is supported by the arm 13B so as to be swingable about the rotating shaft portion 22C. When the DD motor 14C is driven, the rotating shaft portion 22C rotates, whereby the arm 13C is driven to swing about the rotating shaft portion 22C. Further, a hand 25 is provided at the other end in the longitudinal direction of the arm 13C. The hand 25 supports the semiconductor substrate D from below.
[0038] Also, as shown in FIG. 2, the DD motors 14A to 14C are respectively provided with encoders 15A to 15C (the "sensors" of the present invention). The encoders 15A to 15C respectively acquire the rotation angle of the rotating shaft portions 22A to 22C with respect to the reference position and output a signal corresponding to the acquired rotation angle. Since the positions of the arms 13A to 13C are determined by the rotation angles of the rotating shaft portions 22A to 22C, the rotation angles acquired by the encoders 15A to 15C are information regarding the positions of the arms 13A to 13C.
[0039] In the robot system 1, the control device 20 controls the DD motors 14A to 14C to drive the arms 13A to 13C, thereby swinging the arms 13A to 13C to move the hand 25.
[0040] <Control of the DD motor> Next, the control of the DD motors 14A to 14C by the control device 20 will be described. As shown in FIG. 2, the control device 20 receives the signals from the encoders 15A to 15C. The control device 20 also receives external command signals indicating the trajectories of the left-right and front-back movement of the tip of the hand 25. The command signals indicate the target rotation angles of the DD motors 14A to 14C at each point in time for each of the DD motors 14A to 14C. The control device 20 controls the DD motors 14A to 14C based on the signals received from the encoders 15A to 15C and the command signals. Specifically, the control device 20 controls each of the DD motors 14A to 14C as shown in the block diagram of FIG. 3. In FIG. 3, the DD motor 14 refers to each of the DD motors 14A to 14C, and the encoder 15 refers to the encoder 15A to 15C that corresponds to the DD motor 14. In the following description, the arm 13A to 13C that corresponds to the DD motor 14 will be referred to as the arm 13.
[0041] To explain in detail the control of the DD motor 14 by the control device 20, when controlling the DD motor 14, the control device 20 functions as a first filter unit 31, a speed feedforward control unit 32 (hereinafter sometimes referred to as the speed FF control unit 32), a first proportional control unit 33, a differentiator 34, a second proportional control unit 35, an integral control unit 36, a second filter unit 37 and a current control unit 38.
[0042] The first filter unit 31 performs filtering such as smoothing out sudden changes in the command signal as necessary.
[0043] The speed FF control unit 32 outputs a signal corresponding to the predicted rotation speed of the DD motor 14, which is a predicted value of the rotation speed of the DD motor 14, based on the change over time of the command signal filtered by the first filter unit 31. Here, the movement speed of the arm 13 is determined by the rotation speed of the DD motor 14. Therefore, the signal output by the speed FF control unit 32 corresponds to the predicted movement speed of the arm 13, which is a predicted value of the movement speed of the arm 13 based on the change over time of the command signal. The movement speed of the arm 13 refers to the movement speed of a specific part of the arm 13.
[0044] The first proportional control unit 33 includes an amplifier unit 33A. The first proportional control unit 33 performs proportional control by outputting a signal obtained by multiplying a first deviation Δ1, which is the deviation between the target value of the rotation angle of the DD motor 14 indicated by the command signal filtered by the first filter unit 31 and the rotation angle of the DD motor 14 indicated by the signal output from the encoder 15, by a first gain G1 using the amplifier unit 33A. Here, as described above, the position of the arm 13 is determined by the rotation angle of the DD motor 14, and therefore the first deviation Δ1 corresponds to the deviation between the target position of the arm 13 and the position of the arm 13 indicated by the detection result of the encoder 15.
[0045] The differentiator 34 outputs a signal obtained by differentiating the signal output from the encoder 15. That is, the signal output from the differentiator 34 is a signal that corresponds to the rotation speed of the DD motor 14. Here, the movement speed of the arm 13 is determined by the rotation speed of the DD motor 14, and therefore the signal output from the differentiator 34 corresponds to the movement speed of the arm 13.
[0046] The second proportional control unit 35 includes an amplifier unit 35A. The second proportional control unit 35 performs proportional control by outputting a signal obtained by multiplying a second deviation Δ2, which is the deviation between the signal output from the differentiator 34 and a signal obtained by adding together the signal output from the first proportional control unit 33 and the signal output from the speed FF control unit 32, by a second gain G2 using the amplifier unit 35A. That is, the signal output by the second proportional control unit 35 is a signal obtained by multiplying the second deviation Δ2, which is the deviation between the rotational speed of the DD motor 14 (the movement speed of the arm 13) and the value obtained by adding together the value obtained by multiplying the first deviation Δ1 by the first gain G1 and the predicted rotational speed of the DD motor 14 (the predicted movement speed of the arm 13), by the second gain G2.
[0047] The integral control unit 36 includes an amplifier unit 36A. The integral control unit 36 calculates an accumulated value (integral value) of the second deviation Δ2, and performs integral control to output a signal obtained by multiplying the accumulated value of the second deviation Δ2 by a third gain G3 using the amplifier unit 36A.
[0048] The second filter unit 37 includes filters such as a notch filter and a torque filter, and filters the signal obtained by adding the signal output from the second proportional control unit 35 and the signal output from the integral control unit 36. The notch filter is a filter that removes specific frequency components in order to suppress resonance in the system. The torque filter is a filter that removes high-frequency components from the signal.
[0049] The current control unit 38 controls the signal to be output to the DD motor 14 based on the signal filtered by the second filter unit 37. The DD motor 14 generates torque according to the current controlled by the current control unit 38. As a result, in the first embodiment, the control amount of the DD motor 14 is determined based on the value obtained by multiplying the second deviation Δ2 by the second gain G2 and the value obtained by multiplying the cumulative value of the second deviation Δ2 by the third gain G3.
[0050] In the first embodiment, when the control device 20 controls at least one of the DD motors 14A to 14C as shown in the block diagram of Fig. 3, the control device 20 changes the value of the third gain G3 by performing processing according to the flowchart of Fig. 4(a). For example, when the robot system 1 is powered on, the control device 20 starts processing according to the flowchart of Fig. 4(a), and while the robot system 1 is powered on, the control device 20 continues processing according to the flowchart of Fig. 4(a). When the flowchart of Fig. 4(a) starts, the value of the third gain G3 is set to G3a.
[0051] 4(a) in detail, the control device 20 determines whether the command has been completed (S1). In S1, the control device 20 determines that the command has been completed when, for example, the change in the value of the command signal remains less than a predetermined value for a certain period of time or more.
[0052] The control device 20 waits until the command is completed (S1: NO), and when the command is completed (S1: YES), changes the value of the third gain G3 from G3a to G3b, which is smaller than G3a (S2). Here, G3b may be 0, or a value greater than 0 and smaller than G3a.
[0053] Thereafter, the control device 20 waits until a predetermined set time has elapsed (S3: NO). Here, the set time is a time set based on the time for one control cycle when the control device 20 performs the processing shown in the block diagram of FIG. 3. Then, when the set time has elapsed (S3: YES), the control device 20 changes the value of the third gain G3 back to G3a from G3b (S4), and the processing returns to S1. Then, in the first embodiment, the control device 20 performs the processing according to the flowchart of FIG. 4, so that when the control device 20 performs the processing shown in the block diagram of FIG. 3, the value of the third gain G3 is made smaller during a predetermined period from the timing at which the command is completed to the timing at which the set time has elapsed, than during a period before command completion, which is the period until the command is completed.
[0054] In this embodiment, the control device 20 can change the predetermined time by performing processing according to the flowchart in Fig. 4(b) and changing the set time in S4. For example, when the robot system 1 is powered on, the control device 20 starts processing according to the flowchart in Fig. 4(b), and while the robot system 1 is powered on, the control device 20 continues processing according to the flowchart in Fig. 4(b).
[0055] 4(b) in detail, the control device 20 waits until it receives a set time change instruction to change the set time (S11: NO). For example, an input device such as a PC is connected to the control device 20, and an operator operates the input device to send a set time change instruction to the control device 20. The set time change instruction also includes information about the set time after the change.
[0056] When a set time change instruction is received (S11: YES), the control device 20 executes a set time change process to change the set time to the time indicated by the information on the changed set time included in the set time change instruction (S12), and then the process returns to S11.
[0057] <Comparison between when the third gain is reduced and when it is not> Next, a comparison will be made between a case where, as in the first embodiment, when the control device 20 performs the processing shown in the block diagram of FIG. 3, the value of the third gain G3 is reduced after the completion of the command by performing processing according to the flowchart of FIG. 4, and a case where, unlike the first embodiment, the control device 20 does not change the value of the third gain G3 before and after the completion of the command when performing the processing shown in the block diagram of FIG. 3.
[0058] Here, a case will be described in which the command is input to move the arms 13A to 13C from the position indicated by the solid line in the figure to the position indicated by the two-dot chain line in the figure so as to move the tip of the hand 25 forward without changing the position in the left-right direction, as shown in Fig. 5. Also, the description will be made assuming that the command is started at time T1 and completed at time T2.
[0059] Unlike the first embodiment, when the control device 20 performs the process shown in the block diagram of FIG. 3 without changing the value of the third gain G3 before and after the completion of the command, for example, as shown in FIG. 6(a), after time T2 when the command is completed, the signal E1a output from the second proportional control unit 35 and the signal E2a output from the integral control unit 36 become opposite in sign but similar in magnitude. Therefore, after time T2, the signals E1a and E2a cancel each other out, and the sum of the signals E1a and E2a (=E1a+E2a) becomes close to zero. As a result, as shown in FIG. 6(b), after time T2 when the command is completed, the value of the signal Ea becomes close to zero while the first deviation Δ1 is sufficiently large. As described above, the control amount of the direct drive motor 14 is determined by the signal Ea. Therefore, after time T2, the control amount of the direct drive motor 14 is small relative to the control amount appropriate for the first deviation Δ1.
[0060] In contrast, when the control device 20 performs the process shown in the block diagram of FIG. 3 and sets the value of the third gain G3 after the command is completed to be smaller than that during the period before the command is completed, as in the first embodiment, for example, as shown in FIG. 7(a), the magnitude of the signal E2b output from the integral control unit 36 decreases after time T2, and the degree to which the signals E1b output from the second proportional control unit 35 and E2b output from the integral control unit 36 cancel each other out is small. Therefore, the value of the signal Eb (=E1b+E2b), which is the sum of the signals E1b and E2b after time T2, becomes larger than when the value of the third gain G3 is not changed before and after the command is completed. As a result, as shown in FIG. 7(b), while the first deviation Δ1 is somewhat large after time T2, the value of the signal Eb is larger than the value of the signal Ea, and the control amount of the DD motor 14 becomes close to the control amount appropriate for the first deviation Δ1.
[0061] 8(a) and 8(b), when the value of the third gain G3 is reduced after the completion of the command compared to before the completion of the command ("G3 changed" in the figure), the time from time T2 until the tip of the hand 25 reaches the target position can be shortened compared to when the value of the third gain G3 is not changed before and after the completion of the command ("G3 not changed" in the figure). Here, the tip of the hand 25 reaches the target position when the position of the tip of the hand 25 in the left-right direction falls within a predetermined range Rx including the target position Dx and the position of the tip of the hand 25 in the front-back direction falls within a predetermined range Ry including the target position Dy for a certain period of time. Here, the predetermined ranges Rx and Ry are set according to the accuracy required for the position of the tip of the hand 25. The higher the accuracy required for the position of the tip of the hand 25, the narrower the predetermined ranges Rx and Ry are set.
[0062] 7(a), (b) and 8(a), (b) show examples in which the value G3b of the third gain G3 after the above command is completed is set to 0.
[0063] <Effects> In the first embodiment, a first deviation Δ1 is defined as the deviation between a target value of the rotation angle of the DD motor 14 (position of the arm 13) and the rotation angle of the DD motor 14 (position of the arm 13) indicated by a signal output from the encoder 15. A second deviation Δ2 is defined as the deviation between the sum of a value obtained by multiplying the first deviation Δ1 by a first gain G1 and an estimated rotation speed of the DD motor 14 (estimated movement speed of the arm 13) based on the command, and the rotation speed of the DD motor 14 (movement speed of the arm 13) calculated based on the detection result of the encoder 15. During a command specifying a target position of the arm 13, a control amount for the DD motor 14 is determined based on a value obtained by multiplying the second deviation Δ2 by a second gain G2 and a value obtained by multiplying the accumulated value of the second deviation Δ2 by a third gain G3, and the DD motor 14 is controlled to move the arm 13 to the target position. As a result, unlike the first embodiment, the arm 13 can be moved to the target position with greater precision than when the above control is performed with the arm and the motor that drives the arm connected via a reduction mechanism or the like.
[0064] Here, unlike the first embodiment, if the third gain G3 is not changed before and after the above command is completed, after the above command is completed, the component in the control amount of the DD motor 14 based on the value obtained by multiplying the second deviation Δ2 by the second gain G2 (component due to proportional control) and the component based on the value obtained by multiplying the integral value of the second deviation Δ2 by the third gain G3 (component due to integral control) will cancel each other out, causing the control amount of the DD motor 14 to become smaller than the appropriate control amount and lengthening the settling time of the arm 13.
[0065] Therefore, in the first embodiment, for at least one DD motor 14 among the DD motors 14A to 14C, the third gain G3 is set smaller during a predetermined period after the command is completed than during a period before the command is completed. This reduces the degree to which the components due to proportional control and the components due to integral control cancel each other out in the control amount of the at least one DD motor 14 after the command is completed. As a result, the control amount of the at least one DD motor 14 after the command is completed becomes an appropriate control amount, and the settling time of at least one arm 13 corresponding to the at least one DD motor 14 can be shortened compared to when the third gain G3 is not changed before and after the command is completed.
[0066] Furthermore, in the first embodiment, the settling time of the arm 13 is shortened by making the third gain smaller during a predetermined period after the command is completed than during a period before the command is completed, and therefore, unlike Patent Document 1, there is no need for a configuration for determining whether the component due to proportional control and the component due to integral control have the same sign or different signs. This makes it possible to shorten the settling time of the arm 13 with a simple configuration.
[0067] In addition, in the first embodiment, the predetermined period is changeable. Therefore, by changing the predetermined period for which the third gain is made smaller than the period before command completion depending on the operating status of the arm-equipped device, the settling time of the arm 13 can be shortened.
[0068] Furthermore, in the first embodiment, when G3b, which is the third gain G3 for a predetermined period, is set to 0, the control amount of the DD motor 14 is determined regardless of the cumulative value of the second deviation Δ2, which is a factor that lengthens the settling time of the arm 13, and therefore the settling time of the arm 13 can be shortened.
[0069] [Second embodiment] Next, a second preferred embodiment of the present invention will be described. The robot system of the second embodiment has a structure similar to that of the robot system 1 of the first embodiment. However, unlike the first embodiment, in the second embodiment, the control device 20 controls the DD motors 14A to 14C as shown in the block diagram of FIG.
[0070] More specifically, in the second embodiment, the control device 20 functions as an integral control unit 61 when controlling the DD motor 14, instead of functioning as the integral control unit 36 of the first embodiment. The integral control unit 61 includes an amplifier 61A. The integral control unit 61 calculates an accumulated value (integral value) of the first deviation Δ1, and outputs a signal obtained by multiplying the accumulated value of the first deviation Δ1 by a third gain G3 using the amplifier 61A.
[0071] Furthermore, in the second embodiment, the second proportional control unit 35 outputs a signal obtained by multiplying a second deviation Δ2, which is the deviation between the signal output from the differentiator 34 and a signal obtained by adding together the signal output from the first proportional control unit 33, the signal output from the speed FF control unit 32, and the signal output from the integral control unit 61, by a second gain G2 using an amplifier unit 35A. That is, the second proportional control unit 35 outputs a signal obtained by multiplying the first deviation Δ1 by the first gain G1, the predicted rotation speed of the DD motor 14 (the predicted movement speed of the arm 13), and the second deviation Δ2, which is the deviation between the value obtained by multiplying the cumulative value of the first deviation Δ1 by a third gain G3 using an amplifier unit 61A and the rotation speed of the DD motor 14 (the movement speed of the arm 13), by the second gain G2.
[0072] Furthermore, in the second embodiment, the current control unit 38 controls the signal to be output to the DD motor 14 based on the signal output from the second proportional control unit 35 and filtered by the second filter unit 37. The DD motor 14 generates torque according to the current controlled by the current control unit 38. That is, in the second embodiment, the control amount of the DD motor 14 is determined based on the value obtained by multiplying the second deviation Δ2 by the second gain G2.
[0073] In the second embodiment, as described above, the second deviation Δ2 is the deviation between the rotation speed of the DD motor 14 and the value obtained by multiplying the first deviation Δ1 by the first gain G1, the predicted rotation speed of the DD motor 14, and the value obtained by multiplying the cumulative value of the first deviation Δ1 by the third gain G3. That is, the second deviation Δ2 corresponds to the value obtained by multiplying the cumulative value of the first deviation Δ1 by the third gain G3. Therefore, in the second embodiment, if the control amount of the DD motor 14 is determined based on the value obtained by multiplying the second deviation Δ2 by the second gain G2, the control amount of the DD motor 14 is determined based on the value obtained by multiplying the second deviation Δ2 by the second gain G2 and the value obtained by multiplying the cumulative value of the first deviation Δ1 by the third gain G3.
[0074] <Effects> In the second embodiment, a first deviation Δ1 is defined as the deviation between the target value of the rotation angle of the DD motor 14 (the position of the arm 13) and the rotation angle of the DD motor 14 (the position of the arm 13) indicated by the signal output from the encoder 15. A second deviation Δ2 is defined as the deviation between the rotation speed of the DD motor 14 (the movement speed of the arm 13) and a value obtained by adding together a value obtained by multiplying the first deviation Δ1 by a first gain G1, an expected rotation speed of the DD motor 14 (an expected movement speed of the arm 13), and a value obtained by multiplying the cumulative value of the first deviation Δ1 by a third gain G3. Then, during a command specifying the target position of the arm 13, the control amount of the DD motor 14 is determined based on the value obtained by multiplying the second deviation Δ2 by the second gain G2, and the DD motors 14A to 14C are controlled to move the arm 13 to the target position. As a result, unlike the second embodiment, the arm 13 can be moved to the target position with greater precision than when the above control is performed with a configuration in which the arm and the motor that drives the arm are connected via a reduction mechanism or the like.
[0075] Here, unlike the second embodiment, if the third gain G3 is not changed before and after the above command is completed, after the above command is completed, among the control quantities of the DD motors 14A to 14C, the value obtained by multiplying the second deviation Δ2 by the second gain G2, the component based on the value obtained by multiplying the integral value of the first deviation Δ1 by the third gain G3 (component due to integral control) and the other components (components due to proportional control) will cancel each other out, causing the control quantities of the DD motors 14A to 14C to become smaller than the appropriate control quantities, and lengthening the settling time of the arm 13.
[0076] Therefore, in the second embodiment, for at least one of the DD motors 14A-14C that drive the arms 13A-13C, the third gain G3 is set smaller during a predetermined period after the command is completed than during a period before the command is completed. This reduces the degree to which the proportional control component and the integral control component cancel each other out in the control amount of the at least one DD motor 14 after the command is completed. As a result, the control amount of the at least one DD motor 14 after the command is completed becomes an appropriate control amount, and the settling time of the at least one arm 13 corresponding to the at least one DD motor 14 can be shortened compared to when the third gain G3 is not changed before and after the command is completed.
[0077] Furthermore, in the second embodiment, the settling time of the arm 13 is shortened by making the third gain smaller in a predetermined period after the command is completed than in a period before the command is completed, and therefore, unlike Patent Document 1, there is no need for a configuration for determining whether the component due to proportional control and the component due to integral control have the same sign or different signs. This makes it possible to shorten the settling time of the arm 13 with a simple configuration.
[0078] In addition, in the second embodiment, the predetermined period can be changed. Therefore, by changing the predetermined period for which the third gain is made smaller than the period before command completion depending on the operating status of the arm-equipped device, the settling time of the arm 13 can be shortened.
[0079] Furthermore, in the second embodiment, when G3b, which is the third gain G3 for a predetermined period, is set to 0, the control amount of the DD motor 14 is determined regardless of the cumulative value of the first deviation Δ1, which is a factor that lengthens the settling time of the arm 13, and therefore the settling time of the arm 13 can be shortened.
[0080] [Variations] Although the preferred embodiments of the present invention have been described above, the present invention is not limited to the above-described embodiments, and various modifications are possible within the scope of the claims.
[0081] In the first and second embodiments, the predetermined period during which the value of the third gain G3 is made smaller than that of the period before command completion is a period that starts immediately after the command is completed, but this is not limiting. For example, the predetermined period may be a period that starts after the command is completed.
[0082] In the first and second embodiments, the timing at which the predetermined period starts is fixed to immediately after the command is completed, and the predetermined period can be changed by changing the set time. In other words, only the timing at which the predetermined period ends can be changed, but this is not limited to this. For example, the start timing of the predetermined period may be changeable. Alternatively, both the start timing and the end timing of the predetermined period may be changeable. Alternatively, the predetermined period may not be changeable.
[0083] In the first and second embodiments, the robot system has three arms, but this is not limiting. The robot system may have two, four, or more arms, or may have only one arm. In a robot system having two, four, or more arms, the value of the third gain G3 for the DD motor driving at least one arm may be set smaller during a predetermined period than during the period before command completion.
[0084] In the first and second embodiments, the encoders 15A to 15C acquire information about the rotation angles of the DD motors 14A to 14C as information about the positions of the arms 13A to 13C, but this is not limiting. Information about the positions of the arms 13A to 13C, separate from the information about the rotation angles of the DD motors 14A to 14C, may be acquired by sensors other than the encoders provided on the DD motors 14A to 14C.
[0085] Although the above description has been given of an example in which the present invention is applied to a robot system for transporting semiconductor substrates, the present invention is not limited to this. The present invention can also be applied to robot systems for transporting objects other than semiconductor substrates. Furthermore, the present invention can also be applied to other arm-equipped devices having arms driven by direct drive motors. [Explanation of symbols]
[0086] 1: robot system, 13, 13A to 13C: arm, 14, 14A to 14C: direct drive motor (DD motor), 15, 15A to 15C: encoder, 20: control device
Claims
1. an arm supported so as to be swingable; a direct drive motor connected to the arm and driving the arm; a sensor for obtaining information regarding the position of the arm; a control unit that determines a control amount for driving the direct drive motor and drives the direct drive motor to control the movement speed and position of the arm, The control unit During a command to move the arm to a target position, a deviation between the position of the arm acquired based on the detection result of the sensor and the target position indicated by the command is defined as a first deviation; a second deviation is a deviation between a value obtained by multiplying the first deviation by a first gain and at least a predicted movement speed of the arm based on the command, and a movement speed of the arm calculated based on the detection result of the sensor; determining the control amount based on a value obtained by multiplying the second deviation by a second gain and a value obtained by multiplying the accumulated value of the first deviation or the accumulated value of the second deviation by a third gain, and driving the direct drive motor to move the arm to the target position; The arm-equipped device, wherein the third gain is made smaller during a predetermined period after the command is completed than during a pre-command completion period before the command is completed.
2. The control unit In the said instruction: a second deviation is defined as a deviation between a value obtained by multiplying the first deviation by the first gain and a predicted movement speed of the arm based on the command, and a movement speed of the arm calculated based on the detection result of the sensor; 2. The arm-equipped device according to claim 1, wherein the control amount is determined based on a value obtained by multiplying the second deviation by the second gain and a value obtained by multiplying a cumulative value of the second deviation by the third gain added together.
3. The control unit In the said instruction: a second deviation is a deviation between a value obtained by multiplying the first deviation by the first gain, a predicted movement speed of the arm based on the command, and a value obtained by multiplying the cumulative value of the first deviation by the third gain, and the movement speed of the arm calculated based on the detection result of the sensor; 2. The arm-equipped apparatus according to claim 1, wherein the control amount is determined based on a value obtained by multiplying the second deviation by the second gain.
4. 2. The arm-equipped device according to claim 1, wherein the predetermined period is changeable.
5. The control unit 2. The arm-equipped device according to claim 1, wherein the third gain is set to 0 during the predetermined period.
6. A plurality of the arms connected to each other so as to be able to swing; a plurality of the direct drive motors directly connected to each of the plurality of arms, The control unit determining the control amount for each of the plurality of direct drive motors based on a value obtained by multiplying the second deviation by the second gain and a value obtained by multiplying the cumulative value of the first deviation or the cumulative value of the second deviation by the third gain, and driving the direct drive motor to move the arm to the target position; and 2. The arm-equipped apparatus according to claim 1, wherein the third gain is set to be smaller during the predetermined period than during the pre-command completion period for at least one of the plurality of direct drive motors.
Citation Information
Patent Citations
Control apparatus and control method of servo system
JP2007087367A