Motor control system, robot system, and motor control method

The motor control system adjusts control parameters using data-driven control based on posture information to prevent vibrations, ensuring precise and efficient operation without interference.

JP2025172623APending Publication Date: 2025-11-26KAWASAKI JUKOGYO KK
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024078234
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-05-13
Publication Date
2025-11-26

AI Technical Summary

Technical Problem

Existing motor control systems cause vibrations in the object of operation when adjusting control parameters, leading to potential physical interference with surrounding components.

Method used

A motor control system that adjusts control parameters using data-driven control based on posture information obtained separately from feedback values, preventing vibrations by setting control parameters through feedback control.

Benefits of technology

The system effectively adjusts control parameters without causing vibrations, ensuring precise and accurate operation of the object, even in confined spaces, while reducing adjustment time and preventing interference.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025172623000001_ABST
    Figure 2025172623000001_ABST
Patent Text Reader

Abstract

To provide a motor control system, a robot system, and a motor control method which can perform automatic regulation of control parameters without causing vibration of an operation object.SOLUTION: A robot system 100 performs, while activating an operation object through feedback control based on a feedback value FB indicating a drive state of a motor, an adjustment operation adjusting a control parameter ρ through the data driven type control configuring the control parameter ρ of the feedback control based on attitude information yini acquired separately from the feedback value FB.SELECTED DRAWING: Figure 7
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to a motor control system, a robot system, and a motor control method. [Background technology]

[0002] Conventionally, motor control systems have been disclosed. Patent Document 1 describes an electric motor control device that controls an electric motor. This electric motor control device is configured with a feedback loop that controls the electric motor so that a command signal and an operating amount of the electric motor coincide. Furthermore, the electric motor control device described in Patent Document 1 generates vibration in the operation of the electric motor by adding a swept sine wave disturbance signal to the drive signal in order to automatically adjust the control gain in the feedback control. Then, the control gain is automatically adjusted based on the magnitude and frequency of the vibration generated by the disturbance signal. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Patent No. 5206994 Summary of the Invention [Problem to be solved by the invention]

[0004] However, when a disturbance signal is added in the automatic adjustment of a control gain as a control parameter, as in the motor control device described in Patent Document 1, vibrations occur in the object of operation that is operated by driving the motor. In this case, the generated vibrations may cause the object of operation to physically interfere with surrounding components. Therefore, it is desirable to automatically adjust the control parameters without causing vibrations in the object of operation.

[0005] This disclosure has been made to solve the above-mentioned problems, and one purpose of this disclosure is to provide a motor control system, a robot system, and a motor control method that are capable of automatically adjusting control parameters without causing vibrations in the moving object. [Means for solving the problem]

[0006] A motor control system according to a first aspect of this disclosure includes a motor, an operating object that is operated by driving the motor, and a control unit that operates the operating object through feedback control using a feedback value that indicates the driving state of the motor, and performs an adjustment operation to adjust the control parameters through data-driven control that sets control parameters in the feedback control based on posture information that indicates the posture of the operating object obtained separately from the feedback value.

[0007] As described above, a motor control system according to a first aspect of this disclosure operates an object to be moved by feedback control using a feedback value indicating the drive state of the motor, and includes a control unit that performs an adjustment operation to adjust the control parameters by data-driven control, which sets control parameters for the feedback control based on posture information indicating the posture of the object to be moved that is acquired separately from the feedback value. This allows the control parameters to be adjusted based on the posture information by data-driven control without causing vibrations in the object to be moved. As a result, it is possible to automatically adjust the control parameters without causing vibrations in the object to be moved.

[0008] A robot system according to a second aspect of this disclosure includes a motor, a robot arm having a plurality of interconnected links and operating when driven by the motor, and a control unit that operates the robot arm by feedback control using a feedback value that indicates the drive state of the motor, and that performs an adjustment operation to adjust the control parameters by data-driven control that sets control parameters in the feedback control based on posture information that indicates the posture of the robot arm obtained separately from the feedback value.

[0009] As described above, a robot system according to a second aspect of this disclosure operates a robot arm unit through feedback control using feedback values ​​indicating the drive state of a motor, and includes a control unit that performs an adjustment operation to adjust control parameters through data-driven control that sets control parameters for the feedback control based on posture information indicating the posture of the robot arm unit acquired separately from the feedback values. This allows the control parameters to be adjusted based on the posture information through data-driven control without causing vibrations in the object to be operated. As a result, a robot system can be provided that can automatically adjust control parameters without causing vibrations in the object to be operated.

[0010] A motor control method according to a third aspect of this disclosure comprises: operating an object that is operated by driving a motor through feedback control using a feedback value that indicates the driving state of the motor, thereby acquiring posture information that indicates the posture of the object separately from the feedback value; and adjusting the control parameters through data-driven control that sets control parameters in the feedback control based on the posture information acquired separately from the feedback value.

[0011] A motor control method according to a third aspect of this disclosure adjusts control parameters using data-driven control, which sets control parameters for feedback control based on attitude information acquired separately from feedback values, as described above. This allows the control parameters to be adjusted based on attitude information using data-driven control without causing vibrations in the object being moved. As a result, a motor control method can be provided that can automatically adjust control parameters without causing vibrations in the object being moved. [Effects of the Invention]

[0012] The motor control system, robot system, and motor control method disclosed herein can automatically adjust control parameters without causing vibrations in the moving object. [Brief explanation of the drawings]

[0013] [Figure 1] 1 is a schematic diagram showing a substrate processing system in which a robot system according to a first embodiment of the present disclosure is arranged. [Figure 2] 1 is a block diagram showing a configuration of a robot system according to a first embodiment of the present disclosure. FIG. [Figure 3] FIG. 2 is a perspective view schematically illustrating the configuration of a robot arm unit. [Figure 4] FIG. 2 is a block diagram showing the configuration of a drive unit disposed in a robot arm unit. [Figure 5] FIG. 3 is a block diagram for explaining a control process performed by a control unit. [Figure 6] FIG. 2 is a schematic diagram for explaining a link angle in a robot arm portion. [Figure 7] FIG. 1 is a block diagram for explaining data-driven control using the FRIT method. [Figure 8] FIG. 2 is a flowchart illustrating a motor control method according to the first embodiment. [Figure 9] FIG. 10 is a block diagram showing the configuration of a robot system according to a second embodiment of the present disclosure. [Figure 10]FIG. 4 is a block diagram for explaining estimation of posture information by a control unit. DETAILED DESCRIPTION OF THE INVENTION

[0014] Hereinafter, an embodiment of the present disclosure will be described with reference to the drawings.

[0015] [First embodiment] The configuration of a robot system 100 according to a first embodiment will be described with reference to Figures 1 to 7. The robot system 100 is an example of a motor control system.

[0016] (Robot system configuration) 1, the robot system 100 is arranged in a substrate processing system 900 that performs processes such as resist coating or etching on a substrate 101, for example, in a clean room. The substrate processing system 900 includes a processing device 102 that performs processes on the substrate 101. In the processing device 102, a substrate placement part 102a on which the substrate 101 is placed in order to transfer the substrate 101 to the processing device 102 is arranged in a load lock part that is a place for taking in and taking out the substrate 101.

[0017] In a substrate processing system 900 in which processing is performed on the substrates 101, the robot system 100 transports the substrates 101 between a FOUP 103 (Front Opening Unify Pod), which is a container for storing multiple substrates 101, and a processing device 102. The robot system 100 is, for example, an Equipment Front End Module (EFEM). The FOUP 103 has a substrate placement portion 103a on which the substrate 101 is placed. In the FOUP 103, multiple substrates 101 are arranged vertically. The substrates 101 are semiconductor wafers having a disk shape. The substrates 101 are formed of, for example, silicon, germanium, or quartz glass.

[0018] As shown in FIG. 2, the robot system 100 includes a robot 10. The robot 10 includes a robot arm unit 20, a substrate holding hand 30, and a drive unit 40. The robot system 100 also includes a sensor unit 50, a control unit 60, a memory unit 70, and a display unit 80. The robot 10 is a substrate transport robot that transports a substrate 101. The robot 10 is placed in a transport chamber that is partitioned from the outside in the EFEM. The robot arm unit 20 is an example of an object to be operated.

[0019] As shown in FIG. 3 , the robot arm 20 includes a plurality of interconnected link portions 21, 22, and 23. The link portions 21, 22, and 23 rotate about parallel rotation axes A1, A2, and A3. That is, the robot arm 20 is a horizontally articulated robot arm. The rotation axes A1, A2, and A3 extend along the Z direction, which is the vertical direction. The link portions 21, 22, and 23 are connected to each other in this order from the base end to the tip of the robot arm 20. The base end of the robot arm 20 is connected to a base portion 24 disposed on the floor. A substrate holding hand 30 is connected to the tip of the robot arm 20. Specifically, one end of the link portion 21 is connected to the base portion 24 via a joint JT1. One end of the link portion 22 is connected to the other end of the link portion 21 via a joint JT2. One end of the link portion 23 is connected to the other end of the link portion 22 via a joint JT3. The other end of the link portion 23 is connected to the substrate holding hand 30. The joint JT1 rotates the link portion 21 relative to the base portion 24 about a rotation axis A1 extending in the Z direction, which is the vertical direction. The joint JT2 rotates the link portion 22 relative to the link portion 21 about a rotation axis A2 extending in the Z direction, which is the vertical direction. The joint JT3 rotates the link portion 23 relative to the link portion 22 about a rotation axis A3 extending in the Z direction, which is the vertical direction. The substrate holding hand 30 is connected to the link portion 23 so as to operate integrally with the link portion 23. In addition, the robot arm portion 20 moves in the vertical direction relative to the base portion 24.

[0020] The substrate holding hand 30 is connected to the tip of the robot arm unit 20 and is an end effector that holds the substrate 101. When the robot 10 transports the substrate 101 between the FOUP 103 and the processing device 102, the substrate holding hand 30 holds the substrate 101 along a horizontal plane and transports the substrate 101. The substrate holding hand 30 has a U-shaped plate with a forked tip. The robot 10 transports the substrate 101 by operating the robot arm unit 20 with the substrate 101 placed on the upper surface of the substrate holding hand 30, which is on the Z1 direction side.

[0021] As shown in FIG. 4 , a driving unit 40 that drives the robot arm unit 20 is disposed at each of the joints JT1, JT2, and JT3. The driving unit 40 includes a motor 41, an encoder 42, and a transmission mechanism 43. The motor 41, the encoder 42, and the transmission mechanism 43 are disposed at each of the joints JT1, JT2, and JT3. The motor 41 serves as a driving source for the driving force of the driving unit 40. That is, the robot arm unit 20 operates by being driven by the motor 41. The motor 41 is, for example, a servo motor. The encoder 42 detects the rotation angle of the motor 41. Specifically, the encoder 42 detects the rotation position of the output shaft of the motor 41. The transmission mechanism 43 transmits the driving force of the motor 41. The transmission mechanism 43 includes, for example, a reducer having a plurality of gears. The drive unit 40 changes the link angle, which is the angle formed between the multiple link units 21, 22, and 23 in the robot arm unit 20, by transmitting the driving force of the motor 41 via the transmission mechanism 43. The encoder 42 is an example of a rotation angle detection unit.

[0022] As shown in FIG. 3 , the sensor unit 50 detects the posture of the robot arm unit 20. The sensor unit 50 includes a laser tracker that detects the posture of the robot arm unit 20 by emitting detection light. For example, the sensor unit 50 detects the three-dimensional position of the tip of the robot arm unit 20 by irradiating the tip of the robot arm unit 20 with laser light as detection light and detecting the detection light reflected from the tip of the robot arm unit 20. For example, the sensor unit 50 detects the position of the base end of the substrate holding hand 30, which is the tip of the link unit 23 as the tip of the robot arm unit 20. Specifically, a pair of targets 50a that reflect the detection light are disposed at the tip of the link unit 23. The sensor unit 50 detects the positions of the pair of targets 50a by emitting detection light to the pair of targets 50a and detecting the detection light reflected by the pair of targets 50a. The sensor unit 50 detects the posture of the robot arm unit 20 by detecting the positions of the targets 50a. The sensor unit 50 is disposed at a position where it irradiates the robot arm unit 20 with detection light, and is disposed, for example, above the robot arm unit 20. The target 50a is disposed on the upper surface of the link unit 23 in the robot arm unit 20.

[0023] As shown in FIG. 2, the control unit 60 includes a main control unit 60a, a servo control unit 60b, and a drive circuit unit 60c. The control unit 60 controls the operation of the robot arm unit 20. The control unit 60 also controls the operation of each unit of the robot system 100. The control unit 60 is a robot controller that controls the operation of the robot 10. The control unit 60 controls the transport operation of the substrate 101 by the robot 10. The main control unit 60a and the servo control unit 60b include, for example, a CPU (Central Processing Unit). The main control unit 60a controls the rotational operation of each of the joints JT1, JT2, and JT3 of the robot arm unit 20. The servo control unit 60b controls the drive current output to the motor 41, which serves as a drive source for operating the robot arm unit 20, based on a command from the main control unit 60a. The drive circuit unit 60c supplies drive power to the joints JT1, JT2, and JT3. The drive circuit unit 60c includes an inverter circuit that supplies AC power to the motor 41. The drive circuit unit 60c is disposed for each of the joints JT1, JT2, and JT3.

[0024] The storage unit 70 includes a storage device such as a hard disk. The storage unit 70 stores various programs and parameters used in the control processing executed by the control unit 60. The control unit 60 executes the control processing based on the programs and parameters stored in the storage unit 70.

[0025] The display unit 80 displays information indicating the operating status of the robot system 100 under the control of the control unit 60. The display unit 80 includes a monitor display such as a liquid crystal or organic EL display.

[0026] (Control of robot arm movement) 5, in this embodiment, the control unit 60 controls the operation of the robot arm unit 20 by feedback control using a set control parameter ρ. The control unit 60 calculates an operation amount u for operating the motor 41 based on the input target value r and feedback value FB. iniThe robot arm unit 20 is operated by driving the motor 41 through feedback control that outputs a signal. The control unit 60 includes a controller 61, a controller 62, and a controller 63 as functional components for feedback control. The controllers 61, 62, and 63 are functional blocks that are realized when the arithmetic device of the control unit 60 reads and executes a predetermined control program stored in the storage unit 70. In other words, the control unit 60 operates as the controllers 61, 62, and 63. Note that the controllers 61, 62, and 63 may each be configured as hardware such as an electronic circuit.

[0027] The control unit 60 performs two-degree-of-freedom control using controllers 61 and 62 as feedforward controllers and a controller 63 as a feedback controller. A , the calculation process by the controller 62 is C B , and the calculation process by the controller 63 is K(ρ), the manipulated variable u for the input target value r is ini is expressed by the following equation (1).

number

[0028] <Control parameter adjustment operation> In this embodiment, the control unit 60 operates the robot arm unit 20 by feedback control using a feedback value FB according to a preset control parameter ρ, and also operates the robot arm unit 20 by using posture information y ini In the adjustment operation, the control unit 60 performs an adjustment operation to adjust the control parameter ρ by data-driven control that sets the control parameter ρ in the feedback control based on the posture information y ini In order to obtain the information, for example, the robot arm unit 20 is caused to carry the substrate 101 from the substrate placement unit 102 a of the processing device 102 to the substrate placement unit 103 a of the FOUP 103 .

[0029] The control unit 60 calculates the posture information y based on the detection signal from the sensor unit 50. ini Specifically, in the adjustment operation, the control unit 60 acquires the manipulated variable u as time-series data based on the preset control parameter ρ. ini By outputting the manipulated variable u, the robot arm unit 20 performs an operation to change the position of the substrate holding hand 30. ini By operating the robot arm unit 20 in accordance with the above, posture information y as time-series data is obtained based on the detection signal from the sensor unit 50. ini The control unit 60 acquires the posture information y iniThe control unit 60 acquires information indicating the position of the tip of the robot arm unit 20 as a signal indicating the position of the target 50a from the sensor unit 50, for example, and acquires the three-dimensional position of the target 50a placed at the tip of the robot arm unit 20. Then, the control unit 60 acquires information indicating the three-dimensional position and orientation of the tip of the robot arm unit 20 based on the acquired position of the target 50a.

[0030] Specifically, as shown in FIG. 6 , the control unit 60 performs arithmetic processing based on structural characteristics such as the lengths of the links 21, 22, and 23, which are stored in advance in the storage unit 70, and the positions of the pair of targets 50a on the link unit 23, to obtain link angles θ1, θ2, and θ3, which are angles formed between the links 21, 22, and 23. The link angle θ1 is the angle of the extension direction of the link unit 21 relative to the reference direction of the base unit 24. The reference direction is, for example, the X direction. The extension direction of the link unit 21 is the direction from the position of the rotation axis A1 of the joint JT1 to the position of the rotation axis A2 of the joint JT2 on the horizontal XY plane. The link angle θ2 is the angle of the extension direction of the link unit 22 relative to the extension direction of the link unit 21. The extension direction of link portion 22 is the direction from the position of rotation axis A2 of joint JT2 to the position of rotation axis A3 of joint JT3 on the horizontal XY plane. Link angle θ3 is the angle of the extension direction of link portion 23 relative to the extension direction of link portion 22. The extension direction of link portion 23 is the direction from the position of rotation axis A3 of joint JT3 on the horizontal XY plane to the position where the center of substrate 101 is located on substrate holding hand 30. The control unit 60 calculates link angles θ1, θ2, and θ3 from the position of the tip of the robot arm unit 20 acquired based on the detection signal from sensor unit 50 by inversely transforming the calculation process that calculates the position of the tip of the robot arm unit 20 using link angles θ1, θ2, and θ3 and the lengths of links 21, 22, and 23 using an inverse function.

[0031] The control unit 60 calculates the posture information y , which indicates the position of the tip of the robot arm unit 20, based on the acquired link angles θ1, θ2, and θ3. ini Obtain the posture information y ini are values ​​obtained by converting the acquired link angles θ1, θ2, and θ3 into values ​​corresponding to the rotation angles of the motors 41 based on the reduction ratios in the transmission mechanisms 43 including the reducers arranged for the joints JT1, JT2, and JT3. In this way, the control unit 60 operates the multiple motors 41 arranged for the joints JT1, JT2, and JT3 to generate posture information y ini The "posture information indicating a common posture" here refers to the posture information y for each of the joints JT1, JT2, and JT3 based on the common information indicating the position of the tip of the robot arm unit 20. ini That is, the control unit 60 acquires the posture information y ini In order to obtain the posture information y corresponding to each of the joints JT1, JT2, and JT3, the robot arm unit 20 is caused to perform a single common operation, rather than performing an individual operation for each of the joints JT1, JT2, and JT3. ini Get.

[0032] As shown in FIG. 7, the control unit 60 calculates the acquired posture information y ini Based on the pseudo reference input r f The control parameter ρ is adjusted by data-driven control using the FRIT (Fictitious Reference Iterative Tuning) method, which is an iterative adjustment method using (ρ). In the adjustment operation, the control unit 60 adjusts the manipulated variable u ini and the posture information y ini The pseudo reference input r is calculated based on the target value r. f In the FRIT method for two-degree-of-freedom control, the pseudo reference input r is obtained using the following equation (2): f (ρ) is calculated.

number

number

[0033] Specifically, in the adjustment operation using the FRIT method, the control unit 60 calculates the posture information y ini and the corresponding time series data, the manipulated variable u ini In other words, the control unit 60 performs an adjustment operation by causing the robot arm unit 20 to perform a common operation, thereby obtaining the posture information y ini and the manipulated variable u, which includes the current command, which is the output from the feedback control in the adjustment operation. ini and calculates the pseudo reference input r for each of the motors 41 by the calculation process according to the formula (2). f Then, the control unit 60 obtains the pseudo reference input r f The target response characteristic T based on (ρ) d The output by the pose information y ini The evaluation function J is expressed by the equation (3) as the L2 norm of the error between F That is, the control unit 60 obtains the pseudo reference input r f Response characteristics T by (ρ) d The output of and the acquired posture information y ini The control unit 60 calculates a control parameter ρ that minimizes the square error between the evaluation function JF By obtaining the control parameter ρ that takes the minimum value in (ρ), the evaluation function J F The control unit 60 optimizes the control parameter ρ to obtain an appropriate value for the control parameter ρ. The control unit 60 obtains the posture information y as time-series data corresponding to each of the plurality of motors 41. ini and the manipulated variable u ini and the evaluation function J F By optimizing (ρ), multiple types of control parameters ρ corresponding to each of the multiple motors 41 are adjusted. That is, in adjusting the control parameter ρ once, the control unit 60 does not perform multiple operations, but instead uses one set of data from a single operation to perform calculation processing using data-driven control and calculates an appropriate control parameter ρ.

[0034] The target response characteristic T d For example, a first-order transfer function or a second-order transfer function is used for the target response characteristic T d When a first-order transfer function is used as the response speed, the response speed is set by setting the time constant T shown in the following equation (4).

number

number

[0035] <Limit hit detection> Here, in the adjustment operation, when the current flowing through the motor 41 due to the operation of the robot arm unit 20 reaches the current upper limit value, the acquired posture information y ini The stability of the data such as the posture information y decreases. That is, the degree of change in the acquired data differs before and after the current flowing through the motor 41 reaches the upper current limit, causing the data to lose continuity. In this case, the posture information y ini and the manipulated variable u ini Evaluation function J based on F It becomes difficult to obtain an appropriate control parameter ρ in optimizing (ρ).

[0036] Therefore, in this embodiment, when the magnitude of the current flowing through the motor 41 reaches a predetermined upper current limit during the adjustment operation, the control unit 60 adjusts the posture information y ini For example, the control unit 60 changes the operation of the robot arm unit 20 to obtain the operation amount u iniWhen the value of the current command acquired as the current command reaches a preset current upper limit value stored in the storage unit 70, the control unit 60 determines that the current flowing through the motor 41 has reached the current upper limit value. The current upper limit value is set as the smallest value among multiple upper limits, such as the current upper limit value in the motor 41, the current upper limit value in the drive circuit unit 60c, or a current upper limit value set by software. The current upper limit value may be determined using an instantaneous peak value, an effective value, a moving average value, or the like. When the control unit 60 determines that the current flowing through the motor 41 has reached the current upper limit value during the adjustment operation, the control unit 60 reduces the operating speed of the robot arm unit 20 during the adjustment operation and performs the adjustment operation again at the changed operating speed. When the current flowing through the motor 41 has reached the current upper limit value, the control unit 60 changes the set value of the operating speed of the robot arm unit 20 during the adjustment operation by a predetermined percentage, such as 90%.

[0037] <Output of history information and notification information> Furthermore, the control unit 60 stores the adjusted control parameter ρ in the storage unit 70 each time an adjustment operation is performed. The control unit 60 performs the adjustment operation at predetermined intervals, such as during maintenance of the substrate processing system 900, and stores the value of the control parameter ρ adjusted in the adjustment operation in the storage unit 70. The predetermined interval is, for example, one day. The control unit 60 also outputs history information of the control parameter ρ stored in the storage unit 70. For example, the control unit 60 displays the history information on the display unit 80 by outputting the history information of the control parameter ρ. The control unit 60 may output the history information of the control parameter ρ to an external computer or server device used by an inspector. The control unit 60 may also output notification information notifying the degree of adjustment of the control parameter ρ. The control unit 60 may determine whether the value of the control parameter ρ is appropriate. For example, if the value of the control parameter ρ set by the adjustment operation is not within a predetermined determination range, the control unit 60 determines that the value of the control parameter ρ is inappropriate. When it is determined that the value of the control parameter ρ is inappropriate, the control unit 60 outputs notification information indicating that the value of the control parameter ρ is inappropriate, as notification information for notifying the degree of adjustment of the control parameter ρ. The control unit 60 may, for example, display the notification information on the display unit 80, or may output the notification information to an external computer or server device.

[0038] (Motor control method) Next, the control processing of the motor control method according to this embodiment will be described based on a flowchart with reference to up to Fig. 8. The control processing of the motor control method from step S1 to step S10 shown in Fig. 8 is executed when an adjustment operation is performed by the control unit 60 in the robot system 100.

[0039] First, in step S1, the operation of the robot arm unit 20 in the adjustment operation is set. iniA movement path is set to indicate how the robot arm unit 20 will operate to obtain the above information. A plurality of movement paths for the robot arm unit 20 in the adjustment operation are set. For example, the number of movement paths for the robot arm unit 20 in the adjustment operation is set to the same number as the number of destinations for the substrate 101. For example, two types of operations are set as adjustment operations: an operation to transport the substrate 101 from the substrate mounting unit 102a of the processing apparatus 102 to the substrate mounting unit 103a of the FOUP 103, and an operation to transport the substrate 101 from the substrate mounting unit 103a to the substrate mounting unit 102a. The operation of the robot arm unit 20 in the adjustment operation is set to be the same as the operation to transport the substrate 101 in the substrate processing system 900. Therefore, in the adjustment operation, the robot arm unit 20 may be operated with the substrate 101 or a jig simulating the substrate 101 held by the substrate holding hand 30.

[0040] Next, in step S2, the robot arm unit 20 is operated by feedback control based on a preset control parameter ρ, and posture information y is obtained separately from the feedback value FB in the feedback control. ini The control unit 60 acquires the posture information y ini In order to obtain the posture information y as time-series data during the period when the robot arm 20 is moving, the control unit 60 operates the robot arm 20 according to one of the set movement paths. ini and the operation amount u as time series data corresponding to one operation ini Get.

[0041] Next, in step S3, the posture information y ini It is determined whether the data acquisition of the posture information y has been completed successfully. ini If it is determined that the acquisition of the posture information y has been completed, the process proceeds to step S5. iniIf it is determined that acquisition of the posture information y has not been completed, the process proceeds to step S4. Specifically, in step S3, it is determined whether or not the magnitude of the current flowing through the motor 41 has reached a predetermined upper current limit in the adjustment operation in step S2, thereby determining whether or not data acquisition has been completed normally. That is, if the magnitude of the current flowing through the motor 41 has reached a predetermined upper current limit, the control unit 60 ini If the magnitude of the current flowing through the motor 41 has not reached a predetermined upper current limit, the control unit 60 determines that the acquisition of the posture information y ini The control unit 60 determines that data acquisition is complete and proceeds to step S5. Note that if the magnitude of the current flowing through at least one of the plurality of motors 41 reaches a predetermined upper current limit, the control unit 60 determines that data acquisition is not complete. If the magnitude of the current flowing through all of the plurality of motors 41 has not reached a predetermined upper current limit, the control unit 60 determines that data acquisition is complete.

[0042] In step S4, the movement of the robot arm unit 20 in the adjustment operation is corrected. Specifically, the control unit 60 determines that the magnitude of the current flowing through the motor 41 in the adjustment operation has reached a predetermined upper current limit, and corrects the set movement of the robot arm unit 20 so as to reduce the movement speed of the robot arm unit 20. After the movement of the robot arm unit 20 has been corrected in step S4, the process returns to step S2 again, and the posture information y ini The operation of obtaining the information is performed.

[0043] In step S5, the acquired posture information y ini and the manipulated variable u ini The time series data is subjected to preprocessing such as noise removal. The noise removal includes, for example, low-pass filtering.

[0044] Next, in step S6, the control parameter ρ is adjusted. The control unit 60 performs the calculation process represented by the equations (2) and (3) to obtain the attitude information y ini The control parameter ρ is adjusted by data-driven control that sets the control parameter ρ in feedback control based on the above.

[0045] Next, in step S7, it is determined whether all operations in the adjustment operation have been completed. If it is determined that all operations have been completed, the process proceeds to step S9. If it is determined that all operations have not been completed, the process proceeds to step S8. The control unit 60 determines whether all of the multiple types of operations of the robot arm unit 20 set in the adjustment operation have been completed.

[0046] In step S8, another operation from the set operations is set. That is, the operation of the robot arm unit 20 in the adjustment operation is changed. Thereafter, the process returns to step S2, and steps S2 to S6 are executed using the changed operation, thereby adjusting the control parameter ρ again.

[0047] In step S9, a table storing the control parameter ρ acquired in step S6 is created and stored in the storage unit 70. The control unit 60 stores the control parameter ρ for each set operation in the storage unit 70. That is, the control unit 60 sets a control parameter ρ separately for each of a plurality of types of operation of the robot arm unit 20 and stores the set control parameter ρ in the storage unit 70.

[0048] Next, in step S10, the adjustment operation for adjusting the control parameter ρ is completed, thereby completing the control processing of the motor control method of this embodiment.

[0049] [Effects of the first embodiment] In the first embodiment, the following effects can be obtained.

[0050] In the first embodiment, as described above, the robot system 100 operates the robot arm 20 as an object to be operated by feedback control using the feedback value FB indicating the driving state of the motor 41, and also operates the robot arm 20 by using the posture information y ini The control unit 60 performs an adjustment operation to adjust the control parameter ρ by data-driven control that sets the control parameter ρ in feedback control based on the posture information y ini As a result, the control parameter ρ can be automatically adjusted without causing vibration in the robot arm unit 20.

[0051] In addition, the posture information y ini By adjusting the control parameter ρ by data-driven control based on ini Therefore, the control parameter ρ can be adjusted more easily than when the control parameter ρ is directly set. Also, compared to when the control parameter ρ is adjusted by data-driven control based on the feedback value FB, the control parameter ρ can be adjusted automatically based on the attitude information y ini By adjusting the control parameter ρ by data-driven control based on the above, the control parameter ρ can be adjusted based on the actual posture of the robot arm unit 20 as the object to be moved, so that the control parameter ρ can be adjusted so as to more accurately control the movement of the robot arm unit 20 even when an elastic component is included in the movement of the robot arm unit 20. Therefore, the control parameter ρ can be automatically adjusted more accurately without causing vibration in the robot arm unit 20.

[0052] In the adjustment operation, the control unit 60 uses the posture information y ini Evaluation function J using FBy calculating the control parameter ρ using (ρ), the control parameter ρ is adjusted by data-driven control. As a result, the posture information y ini The evaluation function J obtained by directly using F Using (ρ), the adjustment of the control parameter ρ can be evaluated directly from the posture of the actual robot arm unit 20. Therefore, the control parameter ρ can be adjusted by data-driven control so as to correspond to the posture of the actual robot arm unit 20, and therefore the automatic adjustment of the control parameter ρ can be performed with higher accuracy without causing vibrations in the robot arm unit 20.

[0053] The robot system 100 as a motor control system includes, as an object to be operated, a robot arm unit 20 having a plurality of interconnected link units 21, 22, and 23. The control unit 60 operates the robot arm unit 20 by feedback control during the adjustment operation, and acquires posture information y indicating the posture of the robot arm unit 20. ini The control parameter ρ is adjusted based on the calculated value. As a result, even when the robot arm unit 20 is operated, the control parameter ρ can be easily automatically adjusted without causing vibrations in the robot arm unit 20. Therefore, even when the robot arm unit 20 is arranged to operate in a small space, it is possible to effectively prevent the robot arm unit 20 from physically interfering with surrounding members, and it is also possible to automatically adjust the control parameter ρ for controlling the operation of the robot arm unit 20.

[0054] The control unit 60 determines the acquired one piece of posture information y ini The adjustment operation is performed by calculating the control parameter ρ by data-driven control using the multiple posture information y ini Compared with the case where one posture information y ini By calculating the control parameter ρ using data-driven control and performing adjustment operations, the posture information y iniTherefore, it is possible to suppress an increase in the work time required to adjust the control parameter ρ.

[0055] The robot system 100 as a motor control system includes a plurality of motors 41. The control unit 60 operates the plurality of motors 41 in the adjustment operation to obtain posture information y ini Based on this, multiple types of control parameters ρ corresponding to each of the multiple motors 41 are adjusted. As a result, even when multiple members such as the link units 21, 22, and 23 are operated by the multiple motors 41, the posture information y indicating a common posture of the robot arm unit 20 as the object of operation can be calculated for the control parameters ρ corresponding to each of the multiple motors 41. ini Therefore, the control parameter ρ corresponding to each of the plurality of motors 41 can be automatically adjusted based on the overall posture of the robot arm unit 20. Therefore, the robot arm unit 20 can be operated individually for each of the plurality of motors 41 to obtain the posture information y ini Unlike the case where the control parameter ρ is obtained by the method of the present invention, the control parameter ρ can be easily adjusted in consideration of interference such as resonance between multiple members. As a result, the control parameter ρ can be adjusted so as to suppress vibrations caused by resonance between multiple members. Therefore, the robot arm unit 20 can be operated individually for each of the multiple motors 41 to obtain the posture information y ini In addition, when the robot arm unit 20 is operated individually for each of the multiple motors 41, the operating range of the robot arm unit 20 becomes larger. Therefore, the posture information y obtained from a common posture is ini This allows the control parameter ρ corresponding to each of the multiple motors 41 to be adjusted, so that even when the robot arm unit 20 is arranged to operate in a small area, physical interference of the robot arm unit 20 with surrounding components can be more effectively prevented.

[0056] The control unit 60 calculates the manipulated variable u for operating the motor 41 based on the input target value r and feedback value FB. ini The motor 41 is driven by feedback control that outputs the manipulated variable u to operate the robot arm unit 20 as the object of operation. ini and the posture information y ini The pseudo reference input r is calculated based on the target value r. f (ρ) and the preset target response characteristic T d and the obtained pseudo reference input r f (ρ) and the acquired posture information y ini Evaluation function J using F By optimizing (ρ), the control parameter ρ is adjusted. This allows the posture information y ini Based on the pseudo reference input r f Since (ρ) is calculated, the pseudo reference input r f (ρ) is calculated so as to correspond to the actual posture of the robot arm unit 20. f (ρ) can be calculated. Therefore, the pseudo reference input r f The target response characteristic T for (ρ) d and posture information y indicating the actual posture of the robot arm unit 20. ini and the evaluation function J F By comparing and evaluating using (ρ), the control parameter ρ can be more appropriately adjusted to correspond to the actual posture of the robot arm unit 20.

[0057] The control unit 60 calculates the manipulated variable u for operating the motor 41 based on the input target value r and feedback value FB. ini The robot arm unit 20 is operated by driving the motor 41 through feedback control that outputs a torque command or a current command for the motor 41. ini and posture information y indicating the position of the tip of the robot arm unit 20.ini The control parameter ρ is adjusted by data-driven control based on the above. Here, if an elastic component is included in the rigidity of the robot arm unit 20 or in the transmission mechanism 43 such as a reducer that transmits the driving force of the motor 41, the position of the tip of the robot arm unit 20 may be shifted due to the elastic component. In contrast, in the first embodiment, in the adjustment operation, the manipulated variable u ini and posture information y indicating the position of the tip of the robot arm unit 20. ini Therefore, unlike the case of performing data-driven control in which a feedback value FB such as the rotation angle of the motor 41 is directly used, the control parameter ρ is adjusted by data-driven control based on the above. ini By adjusting the control parameter ρ by data-driven control based on the above, the control parameter ρ can be adjusted to correspond to the actual position of the tip of the robot arm unit 20. As a result, the control parameter ρ that controls the operation of the robot arm unit 20 can be adjusted more appropriately.

[0058] The robot system 100 as a motor control system includes a sensor unit 50 that detects the posture of the robot arm unit 20 as an object to be operated. During the adjustment operation, the control unit 60 calculates posture information y ini By acquiring the posture information y based on the detection signal from the sensor unit 50, the control parameter ρ is adjusted by data-driven control. ini Since the posture information y ini Therefore, the control parameter ρ can be easily adjusted automatically without causing vibration in the robot arm unit 20.

[0059] In the adjustment operation, when the magnitude of the current flowing through the motor 41 reaches a predetermined current upper limit value, the control unit 60 adjusts the posture information y iniHere, when the magnitude of the current flowing through the motor 41 reaches a predetermined upper current limit, the movement of the robot arm unit 20 is restricted due to the current being restricted. In this case, the movement of the robot arm unit 20 is no longer constant, and the acquired posture information y ini Therefore, the posture information y ini Since the control parameter ρ is adjusted by data-driven control based on the above, it is conceivable that the accuracy of the adjustment of the control parameter ρ will decrease. Taking this into consideration, in the first embodiment, when the magnitude of the current flowing through the motor 41 reaches a predetermined current upper limit, the posture information y ini This changes the operation of the robot arm unit 20 to acquire the posture information y acquired during the adjustment operation. ini As a result, it is possible to prevent the accuracy of adjustment of the control parameter ρ by data-driven control from decreasing.

[0060] The robot system 100 as a motor control system is connected to the tip of a robot arm unit 20 and includes a substrate holding hand 30 that holds a substrate 101. The control unit 60 calculates posture information y obtained by the robot arm unit 20 changing the position of the substrate holding hand 30 during the adjustment operation. ini The control parameter ρ is adjusted by data-driven control based on the above. Here, when the substrate 101 is held by the substrate holding hand 30 and transported by the operation of the robot arm unit 20, the transport operation may be performed in a narrow area. In such a case, it may be difficult to vibrate the robot arm unit 20 in order to perform the adjustment operation. In contrast, in the robot system 100 according to the first embodiment, the posture information y obtained by the operation of changing the position of the substrate holding hand 30 by the robot arm unit 20 is used in the adjustment operation. iniThe control parameter ρ is adjusted by data-driven control based on the posture information y obtained by performing a normal operation of transporting the substrate 101. ini Based on this, the control parameter ρ can be adjusted by data-driven control. As a result, even when the substrate 101 is transported using the substrate holding hand 30 that holds the substrate 101, the control parameter ρ can be automatically adjusted more effectively without causing vibrations in the robot arm unit 20.

[0061] The robot system 100, which serves as a motor control system, includes a horizontally articulated robot arm 20 including multiple link units 21, 22, and 23 that rotate around parallel rotation axes A1, A2, and A3. During the adjustment operation, the control unit 60 adjusts a control parameter ρ that controls the operation of the horizontally articulated robot arm 20 using data-driven control. In the horizontally articulated robot arm 20, the structural differences, such as the lengths of the multiple link units 21, 22, and 23 included in the robot arm 20, may be reduced to reduce the area in which the robot arm 20 is installed in a top view and to increase the operating range of the robot arm 20. In this case, the natural frequencies of the multiple link units 21, 22, and 23 are close to each other, causing the multiple link units 21, 22, and 23 to interfere with each other and resonate with each other during operation of the robot arm 20. This interference may cause vibrations during operation of the horizontally articulated robot arm 20. Taking this into consideration, the robot system 100 according to the first embodiment adjusts the control parameter ρ that controls the operation of the horizontally articulated robot arm unit 20 by data-driven control during the adjustment operation. ini Since the control parameter ρ can be automatically adjusted by data-driven control based on the above, the control parameter ρ can be effectively adjusted so as to suppress vibrations caused by interference between the plurality of link portions 21, 22, and 23.

[0062] The control unit 60 outputs at least one of the history information of the stored control parameter ρ and notification information notifying the degree of adjustment of the control parameter ρ. This makes it possible to check how the control parameter ρ has changed as a result of the adjustment operation by referring to at least one of the history information and notification information output by the control unit 60.

[0063] [Second embodiment] 9 and 10, a robot system 200 according to the second embodiment will be described. In the second embodiment, posture information y ini Unlike the first embodiment in which the attitude information y is acquired based on the detection result by the encoder 42 serving as the rotation angle detection unit, ini It is estimated that the same components as those in the first embodiment are denoted by the same reference numerals and the description thereof will be omitted. The robot system 200 is an example of a motor control system.

[0064] (Configuration of the robot system according to the second embodiment) 9, a robot system 200 according to the second embodiment includes a robot 10 including a robot arm unit 20, a substrate holding hand 30, and a drive unit 40, a storage unit 70, and a display unit 80, similar to the first embodiment. In the second embodiment, the robot system 200 does not include a sensor unit 50 for detecting the posture of the robot arm unit 20, but includes a control unit 260. The control unit 260 of the second embodiment controls the operation of each unit of the robot system 200, similar to the control unit 60 of the first embodiment. Similarly to the first embodiment, the control unit 260 controls the operation of the robot arm unit 20 by feedback control based on a set control parameter ρ, and also uses posture information y acquired separately from the feedback value FB in the feedback control. ini and the control variable u in feedback control ini Based on this, an adjustment operation is performed to adjust the control parameter ρ by data-driven control using the FRIT method.

[0065] (Estimation of posture information) As with the control unit 60 of the first embodiment, the control unit 260 acquires a feedback value FB indicating the driving state of the motor 41 based on the detection result by the encoder 42 during feedback control. In the second embodiment, the control unit 260 acquires posture information y based on the detection result by the encoder 42 separately from the feedback value FB acquired based on the detection result by the encoder 42 during the adjustment operation. ini and the estimated posture information y ini The control parameter ρ is adjusted by data-driven control based on the above.

[0066] 10, the control unit 260 includes, as functional components, a controller 61, a controller 62, a controller 63, and an estimation unit 264. Like the controllers 61, 62, and 63, the estimation unit 264 is a functional block that is realized by the arithmetic device of the control unit 260 reading and executing a predetermined control program stored in the storage unit 70. In other words, the control unit 260 operates as the estimation unit 264. Note that the estimation unit 264 may be configured by hardware such as an electronic circuit.

[0067] The estimation unit 264 acquires the rotation angle of the motor 41 for each of the joints JT1, JT2, and JT3 based on the detection results from the encoder 42. Then, the estimation unit 264 estimates the link angles θ1, θ2, and θ3 of the link units 21, 22, and 23 based on the acquired rotation angle of the motor 41. Then, the control unit 260 calculates the posture information y ini By obtaining the posture information y ini That is, the estimation unit 264 estimates the posture information y ini It functions as a state estimation observer that estimates

[0068] For example, the estimation unit 264 of the control unit 260 may estimate the link angles θ1, θ2, and θ3 of the links 21, 22, and 23 based on the rotation angle of the motor 41 by performing a calculation process that is preset and stored in the storage unit 70. Alternatively, the estimation unit 264 may estimate the link angles θ1, θ2, and θ3 by using a 3D model of the robot arm 20 that is pre-stored in the storage unit 70. When using the 3D model, the storage unit 70 stores a 3D model that simulates the shape, size, rigidity, and other characteristics of each of the links 21, 22, and 23 of the robot arm 20. The estimation unit 264 simulates the operation of the robot arm 20 by operating the 3D model based on the acquired rotation angle of the motor 41. Based on the simulation results, the estimation unit 264 estimates the link angles θ1, θ2, and θ3.

[0069] The estimated posture information y ini The control process for adjusting the control parameter ρ by data-driven control based on the estimated posture information y ini and the control variable u ini and the pseudo reference input r f (ρ) and the pseudo reference input r f (ρ) and the target response characteristic T d and posture information y ini Evaluation function J using F The value of the control parameter p is adjusted by data-driven control using the FRIT method that optimizes (ρ). Note that other configurations according to the second embodiment are the same as those of the first embodiment.

[0070] In the second embodiment, the robot system 200 as a motor control system includes an encoder 42 as a rotation angle detection unit that detects the rotation angle of the motor 41. The control unit 260 acquires a feedback value FB that indicates the driving state of the motor 41 based on the detection result by the encoder 42. Then, in the adjustment operation, the control unit 260 acquires posture information y based on the detection result by the encoder 42 separately from the feedback value FB acquired based on the detection result by the encoder 42. ini and the estimated posture information y ini The control parameter ρ is adjusted by data-driven control based on the result of detection by the encoder 42. In this way, a feedback value FB used to control the driving of the motor 41 is obtained, and posture information y ini Since the posture information y ini This can prevent the configuration of the robot system 200 from becoming more complex, compared to when the configuration for acquiring the signal is arranged separately from the encoder 42. Other effects of the second embodiment are similar to those of the first embodiment.

[0071] [Variations] It should be noted that the embodiments disclosed herein should be considered to be illustrative and not restrictive in all respects. The scope of the present disclosure is defined by the claims, not by the description of the above embodiments, and further includes all modifications (variations) within the meaning and scope equivalent to the claims.

[0072] In the first and second embodiments, the robot arm 20 as the operation target is a horizontally articulated robot arm. However, the present disclosure is not limited to this. In the present disclosure, the robot arm may be a vertically articulated robot arm. The robot arm may have a parallel link mechanism. A moving mechanism other than a robot arm, such as a linear movement mechanism having a slide mechanism, may also be the operation target. An aligner device that detects the orientation of a substrate may also be the operation target. For example, control parameters for controlling a motor that rotates a substrate placed in an aligner device may be adjusted using data-driven control by acquiring the rotational position of the substrate as posture information. Furthermore, in the operation of a dual-arm robot having a pair of robot arms, control parameters may be adjusted using data-driven control based on posture information. When the pair of robot arms in a dual-arm robot have a common shape, interference such as resonance may easily occur in the operation of the pair of robot arms. In such a case, by adjusting the control parameters using data-driven control based on posture information acquired while the pair of robot arms are operating, it is possible to effectively adjust the control parameters while taking into account interference such as resonance between the pair of robot arms.

[0073] In the first and second embodiments described above, an example has been shown in which the substrate holding hand 30 that holds the substrate 101 is connected to the robot arm unit 20 as the operation target, but the present disclosure is not limited to this. In the present disclosure, a hand that holds a workpiece other than a substrate may be connected to the robot arm unit as an end effector. Also, an end effector that performs processing such as machining on the workpiece may be connected to the robot arm unit.

[0074] In the first and second embodiments, an example was shown in which the robot arm unit 20, which is the object to be operated, is connected to the base unit 24 placed on the floor, but the present disclosure is not limited to this. In the present disclosure, the robot arm unit may be placed on a wall surface or a ceiling surface. Also, the robot arm unit may be placed on a movable cart unit having wheels and a drive unit for driving the wheels.

[0075] In the first and second embodiments, the pseudo reference input r f (ρ) and the evaluation function J expressed by Eq. (3) F The control parameter ρ is calculated by the FRIT method. ini Although an example has been given in which the control parameter ρ is adjusted based on the following equation (6), the present disclosure is not limited to this. In the present disclosure, the control parameter may be adjusted based on attitude information by data-driven control other than the FRIT method. For example, the control parameter may be adjusted based on attitude information by data-driven control using the VRFT method (virtual reference feedback tuning). In the VRFT method, the virtual reference input r is adjusted by the following equation (6): v is obtained.

number

number

[0076] Furthermore, even when the FRIT method is used, calculation processing different from the above equations (2) and (3) may be performed. For example, in feedback control by one degree of freedom control without feedforward control, control parameters may be adjusted by data-driven control using the FRIT method. In addition, to prevent excessive input, the evaluation function J shown in equation (8) EF The control parameters may be adjusted by the E-FRIT (Extended-FRIT) method using (ρ).

number

[0077] In the first and second embodiments, the posture information y indicating a common posture acquired by operating the plurality of motors 41 in the adjustment operation is iniAlthough an example has been shown in which the control parameter ρ is adjusted based on ρ, the present disclosure is not limited to this. In the present disclosure, the control parameter may be adjusted based on multiple pieces of posture information. Furthermore, when a plurality of motors are operated to drive a moving object, posture information based on a common operation may not be used in adjusting the control parameters for each of the plurality of motors. For example, posture information may be acquired for each of the plurality of motors through mutually different operations. For example, posture information may be acquired by operating multiple joints in a robot arm unit as a moving object, one axis at a time, for each axis. Furthermore, a single motor may be used to move the moving object.

[0078] In the first and second embodiments, the operation amount u ini Although an example has been shown in which the current command is included, the present disclosure is not limited to this. In the present disclosure, the operation amount for the motor may include a torque command. A torque sensor may also be provided in the robot system. Feedback control based on the torque command may be performed by providing a torque sensor for each joint of the robot arm. A current sensor may also be provided as the torque sensor in the robot system. That is, the torque for each joint may be calculated based on the current detected by the current sensor. A current sensor may be provided for each joint in the robot arm, or the current for each joint may be detected in a drive circuit unit of a control unit serving as a robot controller.

[0079] In the first embodiment, an example was described in which the posture of the robot arm 20, which is the object of operation, is detected by the sensor unit 50, which is a laser tracker that emits detection light. However, the present disclosure is not limited to this. In the present disclosure, the posture of the object of operation may be detected by a sensor unit other than a laser tracker. For example, the position of the tip of the robot arm may be detected by using a photoelectric sensor that emits detection light and detects the robot arm when the emitted detection light is blocked. Furthermore, posture information indicating the position of the tip of the robot arm may be obtained by detecting the position of an end effector, such as a substrate holding hand, disposed at the tip of the robot arm, or a workpiece, such as a substrate held by the end effector, and performing a predetermined arithmetic process, such as an inverse transformation process, on the detection result. Alternatively, the posture of the object of operation may be detected by using a sensor, such as a magnetic sensor, a capacitance sensor, a mechanical contact sensor, or a current sensor, instead of emitting detection light. Alternatively, the posture of the object of operation may be detected based on an optically captured image of the object of operation. Furthermore, when a laser tracker is used as the sensor unit, a target may not be placed on the object of operation, such as a robot arm. For example, the posture of the moving object may be detected by directly detecting the detection light reflected on the outer surface of the moving object.

[0080] In the first and second embodiments, the manipulated variable u iniIn the above example, the operation of the robot arm unit 20 during the adjustment operation is changed when the current command value reaches a predetermined upper current limit based on the current command value as the current command value. However, the present disclosure is not limited to this. In the present disclosure, even when the current flowing through the motor reaches the current upper limit, the control parameters may be adjusted by data-driven control based on acquired data such as posture information without changing the operation of the robot arm unit. Alternatively, a current sensor may be provided to detect the current flowing through the motor, and whether the current flowing through the motor has reached the current upper limit may be determined based on the detection result of the current sensor rather than the value of the current command as the manipulated variable. Alternatively, the operation speed of the robot arm unit may be detected instead of the current, and the operation of the robot arm unit during the adjustment operation may be changed when the detected speed reaches the speed upper limit. Furthermore, in the adjustment operation of an operating object other than the robot arm unit, the operation of the operating object during the adjustment operation may be changed when the current flowing through the motor reaches a predetermined upper current limit.

[0081] In the first and second embodiments, an example was described in which a transmission mechanism 43 including a reducer was provided for each of the joints JT1, JT2, and JT3 in the robot arm 20, which is operated by the drive of multiple motors 41. However, the present disclosure is not limited to this. In the present disclosure, a transmission mechanism such as a reducer need not be provided. For example, the robot arm may be operated by a direct drive system in which the robot arm is directly operated by the rotating shaft of the motor. Even in this case, a discrepancy may occur between the rotation angle of the motor and the link angle due to the elastic component of the link section of the robot arm itself. Therefore, appropriate control parameters can be obtained by performing data-driven control based on posture information.

[0082] In the first and second embodiments, the posture information y iniIn the above example, the link angles θ1, θ2, and θ3 are converted into values ​​corresponding to the rotation angle of the motor 41 based on the reduction ratio of the transmission mechanism 43, and the converted values ​​are acquired. However, the present disclosure is not limited to this. In the present disclosure, the acquired link angles may be directly acquired as posture information, and an adjustment operation may be performed to adjust the control parameters based on the posture information. For example, in optimization of the evaluation function using posture information, a value may be corrected according to the reduction ratio, and calculation processing may be performed using data-driven control such as the FRIT method using posture information in the dimension of the link angles rather than the dimension of the motor rotation angle.

[0083] In the first and second embodiments, an example was shown in which an adjustment operation is performed at predetermined intervals, such as during maintenance of the substrate processing system 900 in which the robot systems 100 and 200 serving as motor control systems are installed. However, the present disclosure is not limited to this. In the present disclosure, an adjustment operation may be performed before the motor control system is first used, or before the motor control system is shipped. In this case, the control parameters may be adjusted by performing an operation different from the operation performed when the operating object is actually used.

[0084] In the first and second embodiments, the control units 60 and 260 output history information of the control parameter ρ stored in the storage unit 70 and, if the value of the control parameter ρ is not within a predetermined determination range, output notification information indicating that the value of the control parameter ρ is inappropriate. However, the present disclosure is not limited to this. In the present disclosure, the control unit may output at least one of the history information and the notification information. Furthermore, the control unit may output notification information indicating the degree of adjustment of the control parameter by calculating a moving average of the control parameter. For example, the control unit may calculate a moving average of the control parameter acquired in each of multiple adjustment operations and determine whether the result of the moving average is within a predetermined range. Then, if the control unit determines that the result of the moving average is not within the predetermined range, the control unit may output notification information indicating that the value of the control parameter is inappropriate as notification information indicating the degree of adjustment of the control parameter. Furthermore, the control unit may output the control parameter or the determination result itself, indicating whether the result of the moving average of the control parameter is within the predetermined range, as notification information.

[0085] In the first and second embodiments, the movement of the robot arm unit 20 as the movement object is controlled, and the posture information y ini In the above example, the control of the movement of the object and the control of the adjustment of the control parameter ρ by data-driven control based on the posture information are performed by common control units 60 and 260, but the present disclosure is not limited to this. In the present disclosure, the control of the movement of the object and the control of the adjustment of the control parameter by data-driven control based on the posture information may be performed by separate control units. For example, the control of obtaining posture information based on the detection signal from the sensor unit may be performed by a control unit arranged separately from the control unit that controls the movement of the object.

[0086] The functions of the elements disclosed herein can be performed using circuits or processing circuits, including general-purpose processors, special-purpose processors, integrated circuits, application-specific integrated circuits (ASICs), conventional circuits, and / or combinations thereof, configured or programmed to perform the disclosed functions. A processor is considered a processing circuit or circuit because it includes transistors and other circuitry. In this disclosure, a circuit, unit, or means is hardware that performs the recited functions or hardware that is programmed to perform the recited functions. The hardware may be hardware disclosed herein or other known hardware that is programmed or configured to perform the recited functions. Where the hardware is a processor, which is considered a type of circuit, the circuit, means, or unit is a combination of hardware and software, and the software is used to configure the hardware and / or processor.

[0087] [Aspect] It will be appreciated by those skilled in the art that the exemplary embodiments described above are examples of the following aspects.

[0088] (Aspect 1) A motor; an operating object that operates when driven by the motor; a control unit that operates the object to be operated by feedback control using a feedback value that indicates the driving state of the motor, and that performs an adjustment operation to adjust the control parameters by data-driven control that sets control parameters in the feedback control based on posture information that indicates the posture of the object to be operated, obtained separately from the feedback value.

[0089] (Aspect 2) The motor control system of aspect 1, wherein the control unit adjusts the control parameters using the data-driven control by calculating the control parameters using an evaluation function that uses the posture information obtained separately from the feedback value during the adjustment operation.

[0090] (Aspect 3) the operating object includes a robot arm having a plurality of link portions connected to each other, The motor control system of aspect 1 or aspect 2, wherein the control unit adjusts the control parameters based on the posture information indicating the posture of the robot arm unit obtained by operating the robot arm unit through the feedback control during the adjustment operation.

[0091] (Aspect 4) The motor control system according to any one of aspects 1 to 3, wherein the control unit performs the adjustment operation by calculating the control parameters through the data-driven control using the acquired one of the posture information.

[0092] (Aspect 5) The motor includes a plurality of the motors, A motor control system according to any one of aspects 1 to 4, wherein the control unit adjusts the plurality of types of control parameters corresponding to each of the plurality of motors based on the posture information indicating a common posture obtained by operating the plurality of motors during the adjustment operation.

[0093] (Aspect 6) The control unit operating the object to be operated by driving the motor through the feedback control that outputs an operation amount for operating the motor based on the input target value and the feedback value; The motor control system of aspect 2, wherein in the adjustment operation, a pseudo reference input is acquired that simulates the target value based on the manipulated variable and the attitude information acquired separately from the feedback value, and the control parameters are adjusted by optimizing the evaluation function using a predetermined target response characteristic, the acquired pseudo reference input, and the acquired attitude information.

[0094] (Aspect 7) The control unit The robot arm unit is operated by driving the motor through the feedback control that outputs an operation amount for operating the motor based on an input target value and the feedback value, and A motor control system as described in aspect 3, wherein, in the adjustment operation, the control parameters are adjusted by the data-driven control based on the operation amount including a torque command or a current command for the motor and the posture information indicating the position of the tip of the robot arm unit.

[0095] (Aspect 8) Further, a sensor unit for detecting the posture of the motion target is provided. A motor control system according to any one of aspects 1 to 7, wherein the control unit, during the adjustment operation, adjusts the control parameters using the data-driven control by acquiring the posture information based on a detection signal from the sensor unit.

[0096] (Aspect 9) a rotation angle detection unit that detects a rotation angle of the motor; The control unit acquiring the feedback value indicating the driving state of the motor based on the detection result by the rotation angle detection unit; A motor control system according to any one of aspects 1 to 8, wherein, in the adjustment operation, the attitude information is estimated based on the detection results by the rotation angle detection unit separately from the feedback value obtained based on the detection results by the rotation angle detection unit, and the control parameters are adjusted by the data-driven control based on the estimated attitude information.

[0097] (Aspect 10) The motor control system of aspect 3, wherein the control unit changes the operation of the robot arm unit for acquiring the posture information when the magnitude of the current flowing to the motor reaches a predetermined current upper limit value during the adjustment operation.

[0098] (Aspect 11) a substrate holding hand connected to a tip of the robot arm and holding a substrate; A motor control system as described in aspect 3, wherein the control unit adjusts the control parameters using the data-driven control based on the posture information obtained by the robot arm unit performing an operation to change the position of the substrate holding hand during the adjustment operation.

[0099] (Aspect 12) the robot arm unit includes a horizontally articulated robot arm unit including the plurality of link units that rotate around rotation axes that are parallel to each other, 4. The motor control system according to claim 3, wherein the control unit adjusts the control parameters that control the operation of the horizontally articulated robot arm unit using the data-driven control during the adjustment operation.

[0100] (Aspect 13) A motor control system according to any one of aspects 1 to 12, wherein the control unit outputs at least one of history information of the stored control parameters and notification information notifying the degree of adjustment of the control parameters.

[0101] (Aspect 14) A motor; a robot arm unit having a plurality of link units connected to each other and operated by the drive of the motor; a control unit that operates the robot arm unit through feedback control using a feedback value that indicates a drive state of the motor, and performs an adjustment operation to adjust the control parameters through data-driven control that sets control parameters in the feedback control based on posture information that indicates the posture of the robot arm unit obtained separately from the feedback value.

[0102] (Aspect 15) operating an object that is operated by driving a motor through feedback control using a feedback value that indicates a driving state of the motor, thereby acquiring posture information that indicates a posture of the object separately from the feedback value; and adjusting the control parameters by data-driven control that sets control parameters in the feedback control based on the attitude information acquired separately from the feedback value. [Explanation of symbols]

[0103] 20 Robot arm 21, 22, 23 Link section 30 Substrate holding hand 41 Motor 42 Encoder (rotation angle detection unit) 50 Sensor unit 60, 260 Control unit 70 Storage section 80 Display section 100, 200 Robot system (motor control system) 101 Substrate

Claims

1. A motor; an operating object that operates when driven by the motor; a control unit that operates the object to be operated by feedback control using a feedback value that indicates the driving state of the motor, and that performs an adjustment operation to adjust the control parameters by data-driven control that sets control parameters in the feedback control based on posture information that indicates the posture of the object to be operated, obtained separately from the feedback value.

2. 2. The motor control system according to claim 1, wherein the control unit adjusts the control parameters by the data-driven control by calculating the control parameters using an evaluation function that uses the posture information acquired separately from the feedback value during the adjustment operation.

3. the operating object includes a robot arm having a plurality of link portions connected to each other, 3. The motor control system according to claim 1, wherein the control unit adjusts the control parameters based on the posture information indicating the posture of the robot arm unit obtained by operating the robot arm unit through the feedback control during the adjustment operation.

4. 3. The motor control system according to claim 1, wherein the control unit performs the adjustment operation by calculating the control parameters through the data-driven control using the acquired one of the attitude information.

5. The motor includes a plurality of the motors, 3. The motor control system according to claim 1, wherein the control unit adjusts the plurality of types of control parameters corresponding to each of the plurality of motors based on the posture information indicating a common posture obtained by operating the plurality of motors during the adjustment operation.

6. The control unit operating the object to be operated by driving the motor through the feedback control that outputs an operation amount for operating the motor based on the input target value and the feedback value; 3. The motor control system according to claim 2, wherein in the adjustment operation, a pseudo reference input is acquired by calculating the target value in a pseudo manner based on the manipulated variable and the attitude information acquired separately from the feedback value, and the control parameter is adjusted by optimizing the evaluation function using a preset target response characteristic, the acquired pseudo reference input, and the acquired attitude information.

7. The control unit The robot arm unit is operated by driving the motor through the feedback control that outputs an operation amount for operating the motor based on an input target value and the feedback value, and 4. The motor control system according to claim 3, wherein in the adjustment operation, the control parameters are adjusted by the data-driven control based on the operation amount including a torque command or a current command for the motor and the posture information indicating a position of a tip of the robot arm.

8. Further, a sensor unit for detecting the posture of the motion target is provided.

3. The motor control system according to claim 1, wherein the control unit adjusts the control parameters by the data-driven control during the adjustment operation by acquiring the posture information based on a detection signal from the sensor unit.

9. a rotation angle detection unit that detects a rotation angle of the motor; The control unit acquiring the feedback value indicating the driving state of the motor based on the detection result by the rotation angle detection unit; 3. The motor control system according to claim 1, wherein, in the adjustment operation, the attitude information is estimated based on the detection result by the rotation angle detection unit separately from the feedback value obtained based on the detection result by the rotation angle detection unit, and the control parameters are adjusted by the data-driven control based on the estimated attitude information.

10. 4. The motor control system according to claim 3, wherein the control unit changes the operation of the robot arm unit for acquiring the posture information when a magnitude of a current flowing through the motor reaches a predetermined upper current limit value during the adjustment operation.

11. a substrate holding hand connected to a tip of the robot arm and holding a substrate; 4. The motor control system according to claim 3, wherein the control unit adjusts the control parameters by the data-driven control based on the posture information acquired by the robot arm unit performing an operation to change the position of the substrate holding hand during the adjustment operation.

12. the robot arm unit includes a horizontally articulated robot arm unit including the plurality of link units that rotate around rotation axes that are parallel to each other, The motor control system according to claim 3 , wherein the control unit adjusts the control parameters for controlling the operation of the horizontally articulated robot arm unit by the data-driven control in the adjustment operation.

13. 3. The motor control system according to claim 1, wherein the control unit outputs at least one of history information of the stored control parameters and notification information that notifies the degree of adjustment of the control parameters.

14. A motor; a robot arm unit having a plurality of link units connected to each other and operated by the drive of the motor; a control unit that operates the robot arm unit through feedback control using a feedback value that indicates a drive state of the motor, and performs an adjustment operation to adjust the control parameters through data-driven control that sets control parameters in the feedback control based on posture information that indicates the posture of the robot arm unit obtained separately from the feedback value.

15. operating an object that is operated by driving a motor through feedback control using a feedback value that indicates a driving state of the motor, thereby acquiring posture information that indicates a posture of the object separately from the feedback value; and adjusting the control parameters by data-driven control that sets control parameters in the feedback control based on the attitude information acquired separately from the feedback value.

Citation Information

Patent Citations

  • Water proof coupler

    JP1977006994A