The present invention relates to a motor control device.
In industrial machines including molding machines such as injection molding machines and press molding machines as well as bonding machines, pressure control has been adopted. With pressure control, a pressure signal from a machine is detected when a mechanical drive unit driven by a motor is pressed against a workpiece and the like, which act as pressurization targets; a pressure control computation is set by a control parameter on the basis of the pressure signal; and target pressure is applied, so that the motor is operated. The control parameter is the gain and the like of the pressure control computation.
It is necessary to appropriately adjust the control parameter during the pressure control described above. If a control parameter such as gain is excessively large, oscillation occurs and thus the control system operates unstably. Or, even if the operation of the control system does not become unstable, a small vibration is generated in a pressure signal and it is transmitted to the workpiece and the like, and the result of the machining is adversely affected. Conversely, if the control parameter is excessively small, it takes time to reach the target pressure (the command signal for the pressure, the pressure command signal). Further, when disturbance is applied, this disturbance cannot be removed completely. Particularly, the disturbance cannot be compensated for only by feedforward control and is only removed by the pressure control computation (feedback control) performed on the basis of a deviation of a pressure signal from the target pressure. Accordingly, it is important to appropriately adjust a control parameter of a pressure control unit.
For example, Patent Literature 1 discloses a pressure control technique that involves multiplying the pressure deviation of a pressure signal away from the target pressure with a pressure gain so as to determine a motor speed command and by performing a speed control computation that follows the speed command, in which an elastic constant of a pressurization target is calculated and then divided by a predetermined proportional constant so that a pressure gain is calculated.
Patent Literature 1: Japanese Patent Application Laid-open No. 2008-73713
However, the conventional technique described above does not include a description about a method of determining a proportional constant. Therefore, there has been a problem in that it is necessary to adjust the proportional constant by trial and error and thus it takes time to determine the proportional constant.
Further, to adjust a control parameter, an elastic constant of the pressurization target needs to be calculated. If the elastic constant of the pressurization target is to be calculated, it is necessary to provide a memory for storing processing data and a calculation load is also necessary. Therefore, the configuration of a device becomes complicated, incurring costs. Further, there has been a problem in that an adjustment procedure becomes complicated and thus more adjustment time is needed.
The present invention has been achieved in view of the above problems, and an objective of the invention is to provide a motor control device that can adjust a gain parameter of pressure control so as to improve control performance while securing stability of a control system.
To solve the problems and accomplish the objective described above, the present invention relates to a motor control device that executes pressure control of which a minor loop is speed control or position control. With the pressure control, pressurization or depressurization is performed while a control parameter (gain) of the speed control (or both the speed control and the position control) is fixed and the control parameter of the pressure control is gradually increased; an oscillation amount (or an overshoot amount) is successively detected and stored; and, if the oscillation amount (or the overshoot amount) exceeds an acceptable value (a threshold), on the basis of the control parameter of the pressure control and the oscillation amount (or the overshoot amount) stored during the adjustment, the control parameter of the pressure control is adjusted so that the oscillation amount (or the overshoot amount) is equal to or less than an acceptable value (the threshold).
According to the present invention, a motor control device that can adjust the gain parameter of pressure control that can improve control performance while securing stability of a control system can be obtained.
Exemplary embodiments of a motor control device according to the present invention will be described below in detail with reference to the accompanying drawings. Note that the present invention is not limited to the embodiments.
The motor 11 is a rotary motor. The encoder (speed detection unit) 12 detects the rotation speed of the motor 11 and generates a speed detection signal 108. The encoder 12 may be configured to estimate the rotation speed of the motor 11. The ball screw (mechanical drive unit) 13 converts a rotary motion of the motor 11 into a translational motion. That is, the ball screw 13 is a mechanical drive unit that drives the pressurizing head 14 by an operation of the motor 11. The pressurizing head (mechanical load) 14 is driven through the ball screw 13 by the motor 11. The pressurizing head 14 makes contact with and pressurizes the pressurization target 15 so that the pressurization target 15 is machined. The pressure detector 16 is attached to the pressurizing head 14 and detects pressure or force during pressurization. The pressure detector 16 detects, as a pressure detection signal 109, information on pressure or force when the pressurizing head 14 is pressed against the pressurization target 15. A specific example of the pressure detector 16 is a load cell. While
The motor control device 10 illustrated in
The current control unit 24 supplies a current 107 for driving the motor 11. The process of generating the current 107 is described below.
The pressure-command signal generation unit 40 generates a pressure command signal 100 and outputs the signal 100. The pressure command signal 100 is a profile of the pressure value to be applied to the pressurization target 15 with respect to time.
The pressure control unit 21 receives, as an input signal, a signal 101 corresponding to the deviation (difference) between the pressure command signal 100 from the pressure-command signal generation unit 40 and the pressure detection signal 109 from the pressure detector 16. The pressure control unit 21 performs pressure control computation and calculates a command value of an internal speed-command signal 102 corresponding to the deviation between the command value of the pressure command signal 100 and the detection value of the pressure detection signal 109. That is, the pressure control unit 21 calculates the internal speed-command signal 102 of the motor 11 on the basis of a pressure control parameter so that the pressure detection signal 109 follows the pressure command signal 100.
An example of the pressure control computation performed by the pressure control unit 21 is proportional control. In proportional control, a proportional gain is used as a control parameter, and the product of the proportional gain and a difference obtained by subtracting a value of the pressure detection signal 109 from a value of the pressure command signal 100 is output as the command value of the internal speed-command signal 102. Generally, as the proportional gain increases, the followability of a pressure detection value to a pressure command value is improved. However, if the proportional gain is excessively large, a signal in a control loop exceeds an acceptable value and may be oscillated, or an overshoot may be generated. If a signal in a control loop exceeds an acceptable value and is oscillated, the vibration is also superimposed on a pressure command signal and a pressurization operation is performed on a workpiece while vibration machining of the workpiece is adversely affected. If overshoot is generated, excessive pressure is applied to the pressurization target 15 and the pressurization target 15 may be plastically deformed or broken.
The external speed-command signal generation unit 30 generates an external speed-command signal 103 that indicates the speed at which the motor 11 should be operated regardless of the output signal of the pressure control unit 21.
The value of the external speed-command signal 103 is set according to the speed at which the pressurizing head 14 approaches the pressurization target 15 that is not in contact with the pressurizing head 14.
The speed-command selection unit 22 selects either one of the internal speed-command signal 102 or the external speed-command signal 103 and outputs the selected signal as a speed command signal 104.
The speed control unit 23 receives, as an input signal, a signal 105 corresponding to the deviation (difference) between the speed command signal 104 from the speed-command selection unit 22 and the speed detection signal 108 from the encoder 12. The speed control unit 23 performs speed control computation on the basis of the deviation (difference) between the value of the speed command signal 104 and the value of the speed detection signal 108; calculates a torque command signal 106 for calculating a torque to be generated by the motor 11; and outputs the signal 106. That is, the speed control unit 23 calculates the torque command signal 106 or a force command signal for the motor 11 on the basis of a speed control parameter so that the speed detection signal 108 follows the speed command signal 104 of the motor 11.
An example of the speed control computation performed by the speed control unit 23 is proportional integral control. In this case, a proportional gain and an integral gain are control parameters of the speed control unit 23.
The current control unit 24 receives the torque command signal 106 from the speed control unit 23 as an input signal. The current control unit 24 supplies the current 107 for generating a torque corresponding to the torque command signal 106 to the motor 11. The motor 11 is thus driven by the current 107, pressure applied to the pressurization target 15 is detected by the pressure detector 16, and pressure control is executed so that the pressure follows a pressure command value.
At least one of oscillation information that is detected and output by the oscillation detection unit 42 and an overshoot amount that is detected and output by the overshoot-amount detection unit 43 is input to the pressure-control-unit parameter adjustment unit 41, and a control parameter of the pressure control unit 21 is adjusted.
The oscillation detection unit 42 detects oscillation information (an oscillation amount). Oscillation is a phenomenon where vibration is continuously generated. If a parameter of the pressure control unit 21 or the speed control unit 23 is set to be large enough to be close to a stability limit of a control loop and pressure control is executed, high-frequency vibration is generated and thus oscillation is generated. That is, the oscillation detection unit 42 detects an oscillation of control state quantity.
It is determined first whether the pressurizing head 14 is in contact with the pressurization target 15 (Step S1). Whether the pressurizing head 14 is in contact with the pressurization target 15 may be determined by using a value of the pressure detection signal 109 from the pressure detector 16. If the value of the pressure detection signal 109 is larger than 0, it is determined that the pressurizing head 14 is in contact with the pressurization target 15. If the value is 0, it is determined that the pressurizing head 14 is not in contact with the pressurization target 15.
If it is determined that the pressurizing head 14 is in contact with the pressurization target 15 (branches to Y), the process proceeds to Step S2, and the pressurizing head 14 is moved in a direction in which it separates from the pressurization target 15 (Step S2). Specifically, the external speed-command signal generation unit 30 transmits the external speed-command signal 103 to move the pressurizing head 14 in a direction of not being in contact with the pressurization target 15, and the speed-command selection unit 22 selects the external speed-command signal 103. For example, the direction of moving the pressurizing head 14 so as not to be in contact with the pressurization target 15 is the direction toward the left in
If it is determined that the pressurizing head 14 is not in contact with the pressurization target 15 (branches to N), the process proceeds to Step S3, and the control parameter of the speed control unit 23 serving as a minor loop of the pressure control unit 21 is adjusted (Step S3). A case of adjusting the control parameter of the speed control unit 23 with proportional integral control as exemplified above is described with reference to
To obtain a stable response of a speed control loop, it is known that the ratio between the speed proportional gain Kv and the speed integral gain Kvi is preferably Kv:Kvi:Kp=10J:1-4. Accordingly, if the following are done, a stable response in the speed control loop will be obtained: the speed proportional gain Kv is gradually increased; the speed integral gain Kvi is set correspondingly so; a step signal, a ramp signal, and the like are applied as the speed command signal 104 such that the pressurizing head 14 is operated in a state of not being in contact with the pressurization target 15; and the speed proportional gain Kv and the speed integral gain Kvi are adjusted such that overshoot and vibration are not generated. As long as the control parameter of the speed control unit 23 is adjusted in a state where the pressurizing head 14 is not in contact with the pressurization target 15, the adjustment is not limited thereto.
When the adjustment of the control parameter of the speed control unit 23 is completed, the pressurizing head 14 is moved in a direction in which it makes contact with the pressurization target 15 (Step S4). Specifically, the external speed-command signal generation unit 30 transmits the external speed-command signal 103 to move the pressurizing head 14 in the direction where it makes contact with the pressurization target 15, and the speed-command selection unit 22 selects the external speed-command signal 103. For example, the direction of moving the pressurizing head 14 so as to make contact with the pressurization target 15 is in the direction to the right in
Next, it is determined whether the pressurizing head 14 is in contact with the pressurization target 15 (Step S5). The determination may be performed similarly to Step S1.
If it is determined that the pressurizing head 14 is not in contact with the pressurization target 15 (branches to N), the process proceeds to Step S4, and the pressurizing head 14 is moved in the direction of making contact with the pressurization target 15 (Step S4).
If it is determined that the pressurizing head 14 is in contact with the pressurization target 15 (branches to Y), the process proceeds to Step S6 and an operation is switched from a speed control operation to a pressure control operation (Step S6). That is, the speed-command selection unit 22 switches from the external speed-command signal 103 to the internal speed-command signal 102.
Next, a control parameter of pressure control is set to an initial value (Step S1). That is, a proportional gain that is the control parameter of the pressure control unit 21 is set to an initial value. As the initial value, a value at which oscillation and overshoot are difficult to be generated (for example, a lower limit value that can be set as the proportional gain) is used.
Next, a pressurization operation or a depressurization operation is performed (Step S8). In the pressurization operation, the pressure-command signal generation unit 40 sets a value of the pressure command signal 100 such that the pressure is larger than the current value of the pressure detection signal 109 detected by the pressure detector 16.
At the depressurization operation, the pressure-command signal generation unit 40 sets a value of the pressure command signal 100 such that the pressure is smaller than a current value of the pressure detection signal 109 detected by the pressure detector 16.
Note that
Next, the oscillation detection unit 42 detects an oscillation amount during the pressurization operation or the depressurization operation (Step S9).
Next, it is determined whether the oscillation amount detected by the oscillation detection unit 42 exceeds an oscillation threshold (Step S10). If it is determined that the oscillation amount exceeds the oscillation threshold (branches to Y), the process proceeds to Step S15. If it is determined that the oscillation amount does not exceed the oscillation threshold (branches to N), the process proceeds to Step S11, and the overshoot-amount detection unit 43 detects an overshoot amount (Step S11). The oscillation threshold is an upper limit value of an acceptable oscillation amount that is set in advance.
At Step S11, when the overshoot-amount detection unit 43 detects the overshoot amount, it is determined whether the overshoot amount detected by the overshoot-amount detection unit 43 exceeds an overshoot threshold (Step S12). If it is determined that the overshoot amount exceeds the overshoot threshold (branches to Y), the process proceeds to Step S15. If it is determined that the overshoot amount does not exceed the overshoot threshold (branches to N), the process proceeds to Step S13. The overshoot threshold is an upper limit value of an acceptable overshoot amount that is set in advance.
If the oscillation amount does not exceed the oscillation threshold and the overshoot amount does not exceed the overshoot threshold, the control parameter of the pressure control, the oscillation amount, and the overshoot amount are stored in an associated manner (Step S13). The control parameter of the pressure control is then changed so as to extend a control bandwidth (Step S14). For example, when the pressure control unit 21 executes the proportional control, the proportional gain is increased.
For example, the proportional gain may be increased by using a proportional gain value that is 1.1 times the current proportional gain value as a new proportional gain value.
In a case of extending the control bandwidth, when the proportional gain of the pressure control unit 21 is set by the reciprocal of a control parameter Ta, the control parameter Ta is changed to be reduced, and thus a control parameter that can extend the control bandwidth can be obtained.
After changing the control parameter of the pressure control so as to extend the control bandwidth, the process proceeds to Step S8, and the processes described above may be repeated again from the pressurization operation or the depressurization operation.
Furthermore, if the oscillation amount exceeds the oscillation threshold or if the overshoot amount exceeds the overshoot threshold as described above, the process proceeds to Step S15. The control parameter is then adjusted such that both the oscillation amount and the overshoot amount are equal to or less than their respective thresholds (Step S15). Specifically, the control parameter is adjusted as follows. For example, it is permissible to select a control parameter immediately before either the oscillation amount or the overshoot amount exceeds its threshold, where the oscillation amount and the overshoot amount are stored during the pressurization operation or the depressurization operation when the control parameter of the pressure control unit 21 is changed over Steps S8 to S14. This control parameter is referred to as “first control parameter”. Alternatively, it is permissible to select a control parameter not immediately before but earlier than immediately before either the oscillation amount or the overshoot amount exceeds a threshold. Such a control parameter is referred to as “second control parameter”. Alternatively, an intermediate value of the first control parameter and the second control parameter may be selected. In this way, the control parameter may be set while securing a margin.
The processing then ends. The pressure-control-unit parameter adjustment unit 41 performs the processes as described above with reference to
As described over Steps S7 to S15, according to the present embodiment, a pressurization operation or a depressurization operation is repeated in a state where the pressurizing head 14 is in contact with the pressurization target 15; a control parameter (a pressure proportional gain) of pressure control is gradually changed such that the control bandwidth is gradually extended; at least one of an oscillation amount and an overshoot amount in an actual control loop is detected; the setting of the control parameter of the pressure control when the oscillation amount or the overshoot amount exceeds a thresholds is ascertained in practice; and on the basis of information on the setting, a control parameter that does not allow the oscillation amount or the overshoot amount to exceed their thresholds is selected, so the control parameter is adjusted. As the control parameter is adjusted as described above, pressure control can be executed so that the oscillation amount and the overshoot amount never exceed their respective thresholds. The control parameter is adjusted while an operation is performed in practice, and thus it is possible to quickly obtain an appropriate control parameter without trial and error procedures.
Over Steps S1 to S3, a control parameter of speed control that is a minor loop of pressure control is adjusted before a control parameter of the pressure control unit 21 is adjusted in a state where the pressurizing head 14 is not in contact with the pressurization target 15. Therefore, even when an operation of moving the pressurizing head 14 to approach the pressurization target 15 is performed in the speed control, overshoot and vibration are not generated in the speed.
The control performance of the pressure control (pressure vibration, overshoot, and a quickness of response) is affected by not only the control parameter of the pressure control but also the control parameter of the speed control that is a minor loop of the pressure control. After the pressurizing head 14 contacts the pressurization target 15, the control parameter of the speed control is fixed to be in a state before the pressurizing head 14 contacts the pressurization target 15, the overshoot and oscillation in the pressure control are detected, and the control parameter of the pressure control is adjusted such that the overshoot and the oscillation (vibration) are equal to or less than respective acceptable thresholds. Accordingly, it is possible to prevent speed overshoot and speed oscillation (vibration) in an operation before the pressurizing head 14 contacts the pressurization target 15 (the speed control operation), and even when the pressurizing head 14 contacts the pressurization target 15, the pressure control can be executed without generating any overshoot or oscillation (vibration).
The above description is an example of adjusting the control parameter of the speed control unit 23 while keeping the ratio of the speed proportional gain Kv and the speed integral gain Kvi.
As a comparative example, descriptions will be given of a case where, when a control parameter of the pressure control unit 21 is adjusted, the ratio of the control parameter of the speed control unit 23 and the control parameter of the pressure control unit 21 is set; both the control parameter of the speed control unit 23 and the control parameter of the pressure control unit 21 are gradually increased while the ratio is fixed; an oscillation amount and an overshoot amount are detected; and the control parameter of the speed control unit 23 and the control parameter of the pressure control unit 21 are simultaneously adjusted.
For example, in a case where the speed control unit 23 executes proportional integral control, a control parameter thereof is constituted by the speed proportional gain Kv and the speed integral gain Kvi, and the pressure control unit 21 executes proportional control with a pressure proportional gain Ka, it is permissible that the ratio such as Kv:Kvi:Ka=J:0.25:3 is determined in advance. The control parameter is gradually increased under the condition where if it is given that Ka=300, then Kv=100J and Kvi=25, and under another condition where if it is given that Ka=600, then Kv=200J and Kvi=50; then every time the control parameter is increased, the oscillation amount and the over shoot amount are detected; and the control parameters of the pressure control and the speed control can be adjusted at a single time.
In this comparative example also, as is described in the present embodiment, with respect to the control parameter of the speed control unit 23 (the speed proportional gain Kv and the speed integral gain Kvi), transmission characteristics from the torque command signal 106 of the speed control unit 23 to the speed is 1/(J·s), and thus the ratio of multiple control parameters to each other can be determined appropriately. However, transmission characteristics from a speed signal to the pressure cannot be determined when information such as the elastic constant of the pressurization target 15 is unknown.
Accordingly, if the information such as the elastic constant is unknown, the ratio of the control parameter of the pressure control and the control parameter of the speed control cannot be determined appropriately. Because the ratio of the control parameter of the pressure control and the control parameter of the speed control cannot be determined appropriately as described above, if the ratio of the control parameter of the pressure control and the control parameter of the speed control is fixed and then the parameter of the pressure control is to be adjusted, oscillation overshoot is generated in the pressure control.
As described above, the motor control device according to the present embodiment is the motor control device 10 that includes the motor 11; a speed detection unit (the encoder 12) that detects or estimates the speed of the motor 11; a mechanical drive unit (the ball screw 13) that drives a mechanical load (the pressurizing head 14) by an operation of the motor 11; the pressure detector 16 that detects, as the pressure detection signal 109, information on pressure or force when the mechanical load (the pressurizing head 14) is pressed against the pressurization target 15; the pressure control unit 21 that calculates the internal speed-command signal 102 of the motor 11 on the basis of a pressure control parameter such that the pressure detection signal 109 follows the pressure command signal 100; and the speed control unit 23 that calculates the torque command signal 106 or a force command signal for the motor 11 on the basis of a speed control parameter such that the speed detection signal 108 follows the speed command signal 104 that is either one of the internal speed-command signal 102 and the external speed-command signal 103. The motor control device 10 is a motor control device with features that include the oscillation detection unit 42 that detects an oscillation of a control state quantity and the pressure-control-unit parameter adjustment unit 41. With the pressure-control-unit parameter adjustment unit 41, in a state of pressing the mechanical load (the pressurizing head 14) against the pressurization target 15, only a pressure control parameter of the pressure control unit 21 is changed while a speed control parameter of the speed control unit 23 is fixed; the pressure control parameter is changed from a control parameter setting with a narrow control bandwidth of the pressure control unit 21 so as to extend the control bandwidth of the pressure control unit 21; and when the oscillation detection unit 42 detects oscillation, the control parameter of the pressure control unit 21 is adjusted such that the control bandwidth of the pressure control unit 21 is narrower than that with a control parameter of the pressure control unit 21 during the detecting of the oscillation.
Alternatively, the motor control device according to the present embodiment is the motor control device 10 that includes the motor 11; the speed detection unit (the encoder 12) that detects or estimates the speed of the motor 11; the mechanical drive unit (the ball screw 13) that drives the mechanical load (the pressurizing head 14) by an operation of the motor 11; the pressure detector 16 that detects information on pressure or force when the mechanical load (the pressurizing head 14) is pressed against the pressurization target 15 as the pressure detection signal 109; the pressure control unit 21 that calculates the internal speed-command signal 102 of the motor 11 on the basis of a pressure control parameter such that the pressure detection signal 109 follows the pressure command signal 100; and the speed control unit 23 that calculates the torque command signal 106 or a force command signal for the motor 11 on the basis of a speed control parameter such that the speed detection signal 108 follows the speed command signal 104 that is either one of the internal speed-command signal 102 and the external speed-command signal 103. The motor control device 10 is a motor control device with features that include the overshoot-amount detection unit 43 that detects an overshoot amount from a target value response and the pressure-control-unit parameter adjustment unit 41. With the pressure-control-unit parameter adjustment unit 41,
in which in a state of pressing the mechanical load (the pressurizing head 14) against the pressurization target 15, only a pressure control parameter of the pressure control unit 21 is changed while a speed control parameter of the speed control unit 23 is fixed, the pressure control parameter is changed from a control parameter setting with a narrow control bandwidth of the pressure control unit 21 so as to extend the control bandwidth of the pressure control unit 21, and the control parameter of the pressure control unit 21 is adjusted such that the control bandwidth of the pressure control unit 21 is narrower than that with a control parameter of the pressure control unit 21 when an overshoot amount detected by the overshoot-amount detection unit 43 exceeds an overshoot threshold.
According to the present embodiment, even if the characteristics of a pressurization target are unknown, a control parameter during pressure control can still be adjusted so that oscillation or excessive overshoot is not generated. The control parameter of the pressure control and the control parameter of the speed control, which is a minor loop of the pressure control, are adjusted not in an associated manner but individually. Therefore, in an operation in which the mechanical load approaches the pressurization target (in a state where the mechanical load is not in contact with the pressurization, target), it is possible to implement control that prevents generation of overshoot and oscillation in the speed. Further, in an operation in which the mechanical load pressurizes the pressurization target (in a state where the mechanical load is in contact with the pressurization target), it is possible to implement pressure control that prevents generation of oscillation. While the present embodiment has described an example of detecting both an oscillation amount and an overshoot amount and adjusting the control parameter of the pressure control such that the oscillation amount and the overshoot amount are less than their respective thresholds, note that it is permissible to detect only the oscillation amount and adjust the control parameter of the pressure control such that only the oscillation amount is less than the its threshold. Alternatively, it is permissible to detect only the overshoot amount and adjust the control parameter of the pressure control such that only the overshoot amount is less than the its threshold. When only the oscillation amount is detected, it is possible to adjust the control parameter of the pressure control to make the oscillation amount less than a predetermined value. When only the overshoot amount is detected, it is possible to adjust a control parameter of the pressure control that makes the overshoot amount less than a predetermined value.
While the first embodiment has described a mode in which the minor loop in pressure control is speed control, the present invention is not limited thereto. The present embodiment describes a mode in which a minor loop in the pressure control is position control.
In the motor control device 10a illustrated in
First, the pressure-command signal generation unit 40 generates the pressure command signal 100 and outputs the generated pressure command signal 100.
A pressure control unit 21a receives, as an input signal, the signal 101, which corresponds to the deviation (difference) between the pressure command signal 100 from the pressure-command signal generation unit 40 and the pressure detection signal 109 from the pressure detector 16. The pressure control unit 21a performs pressure control computation and calculates a command value of an internal position-command signal 102a corresponding to the deviation between the command value of the pressure command signal 100 and the detection value of the pressure detection signal 109.
As is the case in the first embodiment, an example of the pressure control computation performed by the pressure control unit 21a is proportional control.
The external position-command signal generation unit 60 generates an external position-command signal 110 that indicates the position at which the motor 11 should be operated regardless of the output signal of the pressure control unit 21a.
The value of the external position-command signal 110 is set at a command value that causes the pressurizing head 14 to approach the pressurization target 15 that is not in contact with the pressurizing head 14.
The position-command selection unit 61 selects either one of the internal position-command signal 102a and the external position-command signal 110 and outputs the selected signal as a position command signal 111.
The position control unit 62 receives a signal 112 corresponding to the deviation (difference) between the position command signal 111 from the position-command selection unit 61 and a current position signal 114 from the encoder 12 as an input signal. The position control unit 62 performs position control computation on the basis of the deviation (difference) between the value of the position command signal 111 from the position-command selection unit 61 and the value of the current position signal 114 and outputs a speed command signal 104a.
An example of a configuration of the position control unit 62 is a configuration of multiplying an input deviation (an input difference) by a position proportional gain acting as a control parameter and thus outputting the speed command signal 104a.
The speed control unit 23 receives a signal 113 corresponding to the deviation (difference) between the value of the speed command signal 104a and the value of the speed detection signal 108 as an input signal. The speed control unit 23 performs speed control computation on the basis of the deviation (difference) between the value of the speed command signal 104a and the value of the speed detection signal 108; calculates the torque command signal 106 for calculating a torque to be generated by the motor 11 or a force command signal; and outputs the calculated signal.
An example of the speed control computation performed by the speed control unit 23 is proportional integral control. In this case, the speed proportional gain and the speed integral gain are the control parameters of the speed control unit 23.
The current control unit 24 receives the torque command signal 106 or a force command signal from the speed control unit 23 as an input signal. The current control unit 24 supplies the current 107 for generating a torque corresponding to the torque command signal 106 or the force command signal to the motor 11. The motor 11 is thus driven, the pressure applied to the pressurization target 15 is detected by the pressure detector 16, and pressure control is executed so that the pressure follows a pressure command value.
Other configurations are identical to those of
As is the case in the first embodiment, it is determined first whether the pressurizing head 14 is in contact with the pressurization target 15 (Step S1).
If it is determined that the pressurizing head 14 is in contact with the pressurization target 15 (branches to Y), the process proceeds to Step 32, and the pressurizing head 14 is moved in a direction in which it is separated from the pressurization target 15 (Step S2). Specifically, the external position-command signal generation unit 60 transmits the external position-command signal 110 to move the pressurizing head 14 in a direction in which is it not in contact with the pressurization target 15, and the position-command selection unit 61 selects the external position-command signal 110. For example, the direction in which the pressurizing head 14 moves so as not to be in contact the pressurization target 15 is to the left in
If it is determined that the pressurizing head 14 is not in contact with the pressurization target 15 (branches to N), the process proceeds to Step S3a; and the control parameters of the position control unit 63 and the speed control unit 23 that act as a minor loop in the pressure control unit 21a are respectively adjusted (Step S3a). Adjustment of the control parameters of the speed control unit 23 and the position control unit 62 is described with reference to
To obtain a stable response in the position and speed control loop, it is known that the ratio of the speed proportional gain Kv, the speed integral gain Kvi, and the position proportional gain Kp to each other preferably satisfies the following: Kv:Kvi:Kp=10J:1-4:1-4. Accordingly, if the following is done a stable response in the speed control loop will be obtained: the speed proportional gain Kv is gradually increased; the speed integral gain Kvi and the position proportional gain Kp are set correspondingly; a step signal, a ramp signal and the like are applied as the speed command signal 104a such that the pressurizing head 14 is operated in a state of not making contact with the pressurization target 15; and the speed proportional gain Kv, the speed integral gain Kvi, and the position proportional gain Kp are adjusted so that the overshoot and vibration are not generated. As long as the control parameters of the position control unit 62 and the speed control unit 23 are preferably adjusted in a state where the pressurizing head 14 is not in contact with the pressurization target 15, the adjustment is not limited thereto.
When the adjustment of the control parameter of the speed control unit 23 is completed, the pressurizing head 14 is moved in a direction to make contact with the pressurization target 15 (Step S4a). Specifically, the external position-command signal generation unit 60 transmits the external position-command signal 110 as a position where the pressurizing head 14 makes contact with the pressurization target 15, and the position-command selection unit 61 selects the external position-command signal 110.
Next, it is determined whether the pressurizing head 14 is in contact with the pressurization target 15 (Step S5). This determination may be performed similarly to Step S1.
If it is determined that the pressurizing head 14 is not in contact with the pressurization target 15 (branches to N), the process proceeds to Step S4a, and the pressurizing head 14 is moved in the direction of in which it makes contact with the pressurization target 15 (Step S4a).
If it is determined that the pressurizing head 14 is in contact with the pressurization target 15 (branches to Y), the process proceeds to Step S6a and an operation is switched from a position control operation to a pressure control operation (Step S6a). That is, the position-command selection unit 61 switches from the external position-command signal 110 to the internal position-command signal 102a.
Next, as is the case in the first embodiment, a control parameter of pressure control is set to an initial value (Step S7). That is, a proportional gain that is the control parameter of the pressure control unit 21a is set to an initial value.
Next, as is the case in the first embodiment, a pressurization operation or a depressurization operation is performed (Step S8).
Next, as is the case in the first embodiment, the oscillation detection unit 42 detects an oscillation amount during the pressurization operation or the depressurization operation (Step S9).
Next, as is the case in the first embodiment, it is determined whether the oscillation amount detected by the oscillation detection unit 42 exceeds an oscillation threshold (Step S10). As is the case in the first embodiment, if it is determined that the oscillation amount exceeds the oscillation threshold (branches to Y), the process proceeds to Step S15. If it is determined that the oscillation amount does not exceed the oscillation threshold (branches to N), the process proceeds to Step S11, and the overshoot-amount detection unit 43 detects an overshoot amount (Step S11). The oscillation threshold is an upper limit value of an acceptable oscillation amount that is set in advance.
As is the case in the first embodiment, at Step S11, when the overshoot-amount detection unit 43 detects the overshoot amount, it is determined whether the overshoot amount detected by the overshoot-amount detection unit 43 exceeds an overshoot threshold (Step S12).
As is the case in the first embodiment, if it is determined that the overshoot amount exceeds the overshoot threshold (branches to Y), the process proceeds to Step S15. If it is determined that the overshoot amount does not exceed the overshoot threshold (branches to N), the process proceeds to Step S13.
As is the case in the first embodiment, if the oscillation amount does not exceed the oscillation threshold and the overshoot amount does not exceed the overshoot threshold, the control parameter of the pressure control, the oscillation amount, and the overshoot amount are stored in an associated manner (Step S13). As is the case in the first embodiment, the control parameter of the pressure control is then changed so as to extend the control bandwidth (Step S14). For example, when the pressure control unit 21a executes the proportional control, the proportional gain is increased.
As is the case in the first embodiment, after changing the control parameter of the pressure control so as to extend the control bandwidth, the process proceeds to Step S8, and the processes described above may be repeated again from the pressurization operation or the depressurization operation.
As is the case in the first embodiment, if the oscillation amount exceeds the oscillation threshold or if the overshoot amount exceeds the overshoot threshold, as described above, the process proceeds to Step S15. The control parameter is then adjusted so that both the oscillation amount and the overshoot amount are equal to or less than their respective thresholds (Step S15).
The processing then ends. The pressure-control-unit parameter adjustment unit 41 performs the processes as described above with reference to
As described over Steps S7 to S15, according to the present embodiment, a pressurization operation or a depressurization operation is repeated in a state where the pressurizing head 14 is in contact with the pressurization target 15; a control parameter (a pressure proportional gain) of pressure control is gradually changed such that the control bandwidth is gradually extended; at least one of an oscillation amount and an overshoot amount in an actual control loop is detected; the setting of the control parameter of the pressure control when the oscillation amount or the overshoot amount exceeds a threshold is ascertained in practice; and on the basis of information on the setting, a control parameter that does not allow the oscillation amount or the overshoot amount to exceed a threshold is selected, and therefore the control parameter is adjusted. As the control parameter is adjusted as described above, the pressure control can be executed such that the oscillation amount and the overshoot amount never exceed the respective thresholds. Further, on the basis of a pressure command signal having an increasing or decreasing pressure value, the control parameter is adjusted while an operation is performed in practice and thus it is possible to quickly obtain an appropriate control parameter without trial and error.
As described above, the motor control device according to the present embodiment is the motor control device 10a that includes the motor 11; a speed detection unit (the encoder 12) that detects or estimates the speed of the motor 11; a mechanical drive unit (the ball screw 13) that drives a mechanical load (the pressurizing head 14) by an operation of the motor 11; the pressure detector 16 that detects information on pressure or force when the mechanical load (the pressurizing head 14) is pressed against the pressurization target 15 as the pressure detection signal 109; the pressure control unit 21a that calculates the internal position-command signal 102a of the motor 11 on the basis of a pressure control parameter such that the pressure detection signal 109 follows the pressure command signal 100; the position control unit 62 that calculates the speed command signal 104a of the motor 11 on the basis of a position control parameter such that the current position signal 114 follows the position command signal 111 that is either one of the internal position-command signal 102a and the external position-command signal 110; and the speed control unit 23 that calculates the torque command signal 106 or a force command signal for the motor 11 on the basis of a speed control parameter such that the speed detection signal 108 follows the speed command signal 104a. The motor control device 10a is a motor control device that has features including the oscillation detection unit 42 that detects an oscillation of control state quantity and the pressure-control-unit parameter adjustment unit 41. The pressure-control-unit parameter adjustment unit 41 in which, in a state of pressing the mechanical load (the pressurizing head 14) against the pressurization target 15, only a pressure control parameter of the pressure control unit 21a is changed while a position control parameter of the position control unit 62 and a speed control parameter of the speed control unit 23 are fixed; the pressure control parameter is changed from a control parameter setting with a narrow control bandwidth of the pressure control unit 21a so as to extend the control bandwidth of the pressure control unit 21a; and when the oscillation detection unit 42 detects oscillation, the control parameter of the pressure control unit 21a is adjusted such that the control bandwidth of the pressure control unit 21a is narrower than that with a control parameter of the pressure control unit 21a during detection of the oscillation.
Alternatively, the motor control device according to the present embodiment is the motor control device 10a that includes the following: the motor 11; the speed detection unit (the encoder 12) that detects or estimates the speed of the motor 11; the mechanical drive unit (the ball screw 13) that drives the mechanical load (the pressurizing head 14) by an operation of the motor 11; the pressure detector 16 that detects information on pressure or force when the mechanical load (the pressurizing head 14) is pressed against the pressurization target 15 as the pressure detection signal 109; the pressure control unit 21a that calculates the internal position-command signal 102a of the motor 11 on the basis of a pressure control parameter such that the pressure detection signal 109 follows the pressure command signal 100; the position control unit 62 that calculates the speed command signal 104a of the motor 11 on the basis of a position control parameter such that the current position signal 114 follows the position command signal 111 that is either one of the internal position-command signal 102a and the external position-command signal 110; and the speed control unit 23 that calculates the torque command signal 106 or a force command signal for the motor 11 on the basis of a speed control parameter such that the speed detection signal 108 follows the speed command signal 104a. The motor control device 10a is a motor control device that has features that include the following: the overshoot-amount detection unit 43 that detects an overshoot amount from a target value response and the pressure-control-unit parameter adjustment unit 41. With the pressure-control-unit parameter adjustment unit 41 in which, in a state of pressing the mechanical load (the pressurizing head 14) against the pressurization target 15, only a pressure control parameter of the pressure control unit 21a is changed while a speed control parameter of the speed control unit 23 is fixed; the pressure control parameter is changed from a control parameter setting with a narrow control bandwidth of the pressure control unit 21a so as to extend the control bandwidth of the pressure control unit 21a; and the control parameter of the pressure control unit 21a is adjusted such that the control bandwidth of the pressure control unit 21a is narrower than that with a control parameter of the pressure control unit 21a when an overshoot amount detected by the overshoot-amount detection unit 43 exceeds an overshoot threshold. According to the present embodiment, even if the characteristics of a pressurization target are unknown, a control parameter during pressure control can be adjusted such that oscillation or excessive overshoot is not generated. The control parameter of the pressure control and the control parameter of the position control that is a minor loop in the pressure control are adjusted not in an associated manner but individually. Therefore, in an operation in which the mechanical load approaches the pressurization target (in a state where the mechanical load is not in contact with the pressurization target), it is possible to implements control that prevents overshoot and oscillation in the position. Further, in an operation in which the mechanical load pressurizes the pressurization target (in a state where the mechanical load is in contact with the pressurization target), it is possible to implement pressure control that prevents the generation of oscillation. While, with the present embodiment, there is a description of an example of detecting both an oscillation amount and an overshoot amount and adjusting the control parameter of the pressure control such that the oscillation amount and the overshoot amount are less than the respective thresholds, it is permissible to detect only the oscillation amount and adjust the control parameter of the pressure control so that only the oscillation amount is less than the oscillation threshold. Note that it is permissible to detect only the overshoot amount and adjust the control parameter of the pressure control such that only the overshoot amount is less than the overshoot threshold. When only the oscillation amount is detected, it is possible to adjust the control parameter of the pressure control that makes the oscillation amount become less than a predetermined value. When only the overshoot amount is detected, it is possible to adjust the control parameter of the pressure control that makes the overshoot amount become less than a predetermined value.
The description of the first embodiment has an example of detecting an oscillation in control state quantity information while a motor is being operated to perform a pressurization operation or a depressurization operation on a pressurization target and adjusting a control parameter of pressure control on the basis of an oscillation amount. However, when the control parameter of the pressure control is adjusted on the basis of the oscillation amount, it is not always necessary to perform the pressurization operation or the depressurization operation. As long as oscillation is generated in a certain operation, the present invention can be applied, and such a case is described in the present embodiment.
The motor control device illustrated in
The processes up to Step S6 are identical to those of
Next, a value of the pressure command signal 100 output from the pressure-command signal generation unit 40 is kept at a fixed value (Step S20); a control parameter of the pressure control is set to an initial value (Step S7); and the pseudo disturbance-torque generation unit 150 applies the pseudo disturbance-torque command signal 151 (Step S21).
Next, the oscillation detection unit 42 detects an oscillation amount when the pseudo disturbance-torque command signal 151 is applied (Step S9). It is then determined whether the oscillation amount detected by the oscillation detection unit 42 exceeds an oscillation threshold (Step S10). If it is determined that the oscillation amount exceeds the oscillation threshold (branches to Y), the process proceeds to Step S15a, and the control parameter is adjusted such that the oscillation amount is equal to or less than the threshold (Step S15a). If it is determined that the oscillation amount does not exceed the oscillation threshold (branches to N), the process proceeds to Step S13a, and the control parameter of the pressure control and the oscillation amount are stored in an associated manner (Step S13a). The control parameter of the pressure control is changed so as to extend the control bandwidth (Step S14a). The process then returns to Step S21 and the identical process is repeated until the oscillation amount exceeds the oscillation threshold. If the oscillation amount exceeds the oscillation threshold, the process proceeds to Step S15a; the relation stored at Step S13a between the control parameter of the pressure control and the oscillation amount is referred to; the control parameter of the pressure control is selected and adjusted such that the oscillation amount is equal to or less than the threshold; and the processing ends.
When the process of adjusting the control parameter of the pressure control unit 21 ends, the pseudo disturbance-torque command generation unit 150 outputs the pseudo disturbance-torque command signal 151, which in this case has a value of 0. The pressure-control-unit parameter adjustment unit 41 performs the processes as described above with reference to
According to the present embodiment, even if characteristics of a pressurization target are unknown, it is possible to adjust a control parameter of pressure control such that an undesirable oscillation phenomenon is not generated during the pressure control. As is the case in the first embodiment, the control parameter of the pressure control and a control parameter of speed control that is a minor loop of the pressure control are adjusted not in an associated manner but individually. Therefore, in an operation in which a mechanical load approaches a pressurization target (in a state where the mechanical load is not in contact with the pressurization target), it is possible to implement control that prevents generation of overshoot and oscillation in the speed. Further, in an operation in which the mechanical load pressurizes the pressurization target (in a state where the mechanical load is in contact with the pressurization target), it is possible to implement pressure control that prevents generation of oscillation. While the present embodiment has a description of a case where a minor loop of a pressure control unit is speed control, as described in the second embodiment, note that even if the minor loop of the pressure control unit is position control, the present embodiment can be applied to such a case, and the effects described above can be also obtained in this case.
As described above, the motor control device according to the present invention is useful for an industrial machine that includes a mechanical drive unit that applies pressure to various pressurization targets including a workpiece and the like, and it is particularly suitably used with a molding machine, a bonding machine, and the like.
Number | Date | Country | Kind |
---|---|---|---|
2013-087619 | Apr 2013 | JP | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/JP2014/054899 | 2/27/2014 | WO | 00 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2014/171191 | 10/23/2014 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
6811387 | Tsutsumi et al. | Nov 2004 | B1 |
20030057901 | Tomita | Mar 2003 | A1 |
20070210740 | Sato et al. | Sep 2007 | A1 |
20080066515 | Iwashita et al. | Mar 2008 | A1 |
20090126453 | Suzuki | May 2009 | A1 |
20100052593 | Kishimoto et al. | Mar 2010 | A1 |
20120268054 | Kishimoto et al. | Oct 2012 | A1 |
20130032961 | Ueda et al. | Feb 2013 | A1 |
20130033220 | Ueda | Feb 2013 | A1 |
20130033221 | Ueda | Feb 2013 | A1 |
20130063068 | Ueda et al. | Mar 2013 | A1 |
Number | Date | Country |
---|---|---|
1426545 | Jun 2003 | CN |
2007-237312 | Sep 2007 | JP |
2008-73713 | Apr 2008 | JP |
4185128 | Nov 2008 | JP |
4889835 | Mar 2012 | JP |
4998475 | Aug 2012 | JP |
201307031 | Feb 2013 | TW |
0189800 | Nov 2001 | WO |
2012008222 | Jan 2012 | WO |
2013018189 | Feb 2013 | WO |
Entry |
---|
Combined Taiwanese Office Action and Search Report issued Jul. 22, 2015 in Taiwanese Patent Application No. 103113641 (Total 8 pages). |
International Search Report issued Apr. 8, 2014 in PCT/JP2014/054899 filed Feb. 27, 2014. |
Number | Date | Country | |
---|---|---|---|
20160041533 A1 | Feb 2016 | US |