Positioning control device and positioning control method
By evaluating and adjusting recording using the status sensor signal in the positioning control device, excellent parameters are quickly determined, and the problems of adjustment time and unstable performance in the prior art are solved, and efficient positioning control is achieved.
Patent Information
- Application Number
- CN201980103204.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2019-12-26
- Publication Date
- 2025-08-01
- Estimated Expiration
- 2039-12-26
AI Technical Summary
The prior art has the problem that adjustment takes a long time in positioning control and depends on the experience of the operator, resulting in unstable control performance.
The positioning control device uses the adjustment unit to perform evaluation results based on the status sensor signal to determine the excellent parameters, and uses the adjustment record storage and estimation unit to estimate the excellent parameters under unadjusted conditions to achieve fast and high-performance positioning operations.
Shorten the adjustment time, improve the performance and stability of positioning control, and reduce the dependence on operator experience.
Smart Images

Figure CN114846427B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a positioning control device that controls positioning performed by an electric motor. Background Art
[0002] In an electronic component mounter, a semiconductor manufacturing apparatus, etc., positioning control is performed to drive the position of a mechanism such as a mounting head by a target distance by driving an electric motor. In the positioning control, by setting parameters that define the timing pattern of the command signal used for driving the device, parameters of the control system, etc. to optimal values, the time required for positioning can be shortened and the productivity of the device can be improved. However, there are the following problems with these parameter settings: when the moving mechanism is a mechanism that easily generates low-rigidity vibrations, adjustment by trial and error is required, and the adjustment work takes time and effort. In addition, the time consumed for the adjustment work, the results of the adjustment, etc. largely depend on the knowledge and experience of the operator, and there is a problem that the quality of the adjustment fluctuates depending on the operator. As a technique for solving the above problems, a technique for setting parameters using a pre-prepared command pattern has been proposed.
[0003] Patent Document 1 discloses an automatic adjustment method for an electric motor control device that automatically adjusts control parameters in feedback control, feedforward control, etc. The automatic adjustment method disclosed in Patent Document 1 generates a plurality of position command patterns for adjustment operation that continuously change, and when given as the position command value of the position controller, adjustment is performed to increase the response frequency of the position controller and the speed controller within the range where the vibration amplitude of the position deviation waveform does not exceed a specified value.
[0004] Patent Document 1: Japanese Unexamined Patent Application Publication No. 2007-135344 Summary of the Invention
[0005] In the automatic adjustment method of Patent Document 1, one optimal control parameter is selected for all position command patterns. Therefore, there are problems that the suitability of the control parameter for an individual position command pattern is poor and the control performance is low. In addition, since it is necessary to execute operations for a plurality of position command patterns, there is a problem that the adjustment takes a long time.
[0006] The present invention has been made in view of the above circumstances, and an object thereof is to provide a positioning control device that requires a short adjustment time and can perform high-performance positioning operations.
[0007] The positioning control device according to the present invention defines the operation of the motor in a positioning operation in which a mechanical load mechanically connected to the motor moves by a target moving distance through operating conditions and a parameter that can be changed based on the operating conditions, that is, a command parameter. The positioning control device includes: an adjustment unit that performs adjustment, that is, performs a positioning operation based on an adjustment condition as one of the operating conditions and a test parameter as one of the command parameters, and determines one of the command parameters as an excellent parameter corresponding to the adjustment condition based on an evaluation result obtained from a state sensor signal detected according to the state of the motor or the mechanical load during the performed positioning operation; an adjustment record storage unit that stores a set of the adjustment condition and the excellent parameter corresponding to the adjustment condition as an adjustment record; and a estimation unit that determines one of the command parameters as an estimated excellent parameter corresponding to an unadjusted condition as one of the operating conditions based on the adjustment record, where the unadjusted condition is different from the adjustment condition stored in the adjustment record.
[0008] Effect of the Invention
[0009] According to the present invention, it is possible to provide a positioning control device that requires a short adjustment time and can perform a high-performance positioning operation. Description of the Drawings
[0010] Figure 1 It is a block diagram showing an example of the structure of the positioning control device in Embodiment 1.
[0011] Figure 2 It is a diagram showing an example of the command mode in Embodiment 1.
[0012] Figure 3 It is a diagram showing an example of the relationship between the operating conditions and the command parameters in Embodiment 1.
[0013] Figure 4 It is a flowchart showing an example of the adjustment operation in Embodiment 1.
[0014] Figure 5 It is a diagram showing an example of the time response of the deviation in Embodiment 1.
[0015] Figure 6 It is a flowchart showing an example of the adjustment operation in Embodiment 1.
[0016] Figure 7 It is a diagram showing a structural example in the case where the processing circuit included in the positioning control device in Embodiment 1 is composed of a processor and a memory.
[0017] Figure 8 It is a diagram showing a structural example in the case where the processing circuit included in the positioning control device in Embodiment 1 is composed of dedicated hardware.
[0018] Figure 9 It is a block diagram showing an example of the structure of the positioning control device in Embodiment 2.
[0019] Figure 10 It is a diagram illustrating the structure of the operating condition determination unit in Embodiment 2.
[0020] Figure 11 It is a block diagram showing an example of the structure of the positioning control device in Embodiment 3.
[0021] Figure 12 It is a diagram showing an example of the correspondence between the operating conditions and command parameters in Embodiment 3.
[0022] Figure 13 It is a flowchart showing an example of the operation of the positioning control device in Embodiment 3.
[0023] Figure 14 It is a block diagram showing an example of the structure of the positioning control device in Embodiment 4.
[0024] Figure 15 It is a block diagram showing an example of the structure of the adjustment unit in Embodiment 4.
[0025] Figure 16 It is a block diagram showing an example of the structure of the positioning control device in Embodiment 5.
[0026] Figure 17 It is a block diagram showing an example of the structure of the estimation unit in Embodiment 5.
[0027] Figure 18 It is a diagram showing an example of the structure of the neural network in Embodiment 5. Detailed Embodiments
[0028] Hereinafter, the embodiments will be described in detail based on the accompanying drawings. In addition, the embodiments described below are merely illustrative. Also, the various embodiments can be executed by appropriate combination.
[0029] Embodiment 1
[0030] Figure 1It is a block diagram showing an example of the structure of the positioning control device 1000 in the present embodiment. The positioning control device 1000 includes: an instruction generation unit 2 that determines an instruction signal 103 based on a test parameter 105 and an adjustment condition 108; and a control unit 4 that drives a motor 1 based on the instruction signal 103 to perform a positioning operation. Further, the positioning control device 1000 includes an adjustment unit 7 that performs adjustment to determine an excellent parameter 106 corresponding to the adjustment condition 108. Moreover, the positioning control device 1000 includes: an adjustment record storage unit 10 that stores an adjustment record 111; and an estimation unit 8 that estimates the excellent parameter 106 corresponding to the adjustment condition 108 as an estimated excellent parameter 107 based on the adjustment record 111.
[0031] The motor 1 generates torque, thrust, etc. by the drive power E output from the control unit 4. Examples of the motor 1 include a rotary servo motor, a linear motor, a stepping motor, etc. The mechanical load 3 is mechanically connected to the motor 1 and is driven by the motor 1. As the mechanical load 3, a device that operates by the torque, thrust, etc. generated by the motor 1 and performs the positioning operation of the mechanical load 3 can be appropriately selected. Here, the positioning operation is an operation of moving the mechanical load 3 by a target moving distance. Examples of the mechanical load 3 include an electronic component mounter, a semiconductor manufacturing device, etc. In addition, the movement of the mechanical load 3 in the positioning operation may be the movement of the entire mechanical load 3 or the movement of a movable part of a part of the mechanical load 3. The motor 1 and the mechanical load 3 are referred to as a control object 2000.
[0032] Based on the instruction signal 103, the control unit 4 supplies the drive power E to the motor 1 to drive the motor 1 so that the motor 1 follows the instruction signal 103. Here, the instruction signal 103 is an instruction value for the motor 1. For example, it may be an instruction value for the position, speed, acceleration, torque, current of the motor 1. As the control unit 4, a structure that makes the position of the motor 1 follow the instruction signal 103 can be appropriately adopted. For example, a feedback control system may be adopted, which calculates the torque or current of the motor 1 based on PID control so that the difference between the detected position of the motor 1 and the instruction signal 103 becomes smaller. In addition, as the control unit 4, a two-degree-of-freedom control system in which feedforward control is added to the feedback control may be adopted, and the feedback control drives the motor 1 so that the detected position of the mechanical load 3 follows the instruction signal 103. The positioning control device 1000 can also be configured not to include the control unit 4 as a structural element. For example, it may be a memory, a processor, etc. outside the positioning control device 1000 that Figure 1 similarly drives the motor 1 to follow the instruction signal 103 in the same way as the control unit 4.
[0033] The state sensor 5 detects the state of at least one of the motor 1 or the mechanical load 3, i.e., the state of the control object 2000, as the state sensor signal 101. As examples of the state quantity, the position, speed, acceleration, current, torque, thrust, etc. of the motor 1 can be cited. Moreover, as examples of the state quantity, the position, speed, acceleration, etc. of the mechanical load 3 can be cited. The state quantity can be all or part of those exemplified above. As examples of the state sensor 5, an encoder, a laser displacement meter, a gyro sensor, an acceleration sensor, a current sensor, a force sensor, etc. can be cited. It is assumed that Figure 1 the state sensor 5 described here is an encoder that detects the position of the motor 1 as the state quantity.
[0034] The adjustment unit 7 performs a positioning operation based on the adjustment condition 108 as one of the operating conditions and the test parameter 105 as one of the command parameters. Then, based on the evaluation result 109 obtained from the state sensor signal 101 that has detected the state of the motor 1 or the mechanical load 3 during the executed positioning operation, one of the command parameters is determined as the excellent parameter 106 corresponding to the adjustment condition 108. A series of actions performed by the adjustment unit 7 described above is called adjustment. In addition, in the above adjustment, the adjustment unit 7 may also determine a plurality of test parameters 105 and execute the positioning operations realized by the adjustment condition 108 and each of the plurality of test parameters multiple times.
[0035] The terms used in the description of the adjustment performed by the adjustment unit 7 will be described. The time-series pattern of the command values such as the position, speed, acceleration, etc. of the motor 1 during the positioning operation is called the command pattern. In the present embodiment, the command pattern is defined by the adjustment condition 108 and the test parameter 105. In other words, if the adjustment condition 108 and the test parameter 105 are determined, the command pattern during the positioning operation is uniquely determined, and the operation of the motor is defined. Here, the adjustment condition 108 is a kind of operating condition. Moreover, the operating condition refers to the condition that restricts the operation of the motor 1 during the positioning operation, and the operating condition includes at least one numerical parameter that defines the operation of the motor 1. This numerical parameter is called the operating parameter. The operating parameter may also include the target moving distance. The target moving distance refers to the target value of the moving distance of the mechanical load 3 in the positioning operation.
[0036] The command parameter is a command that specifies the operation of the motor 1 and is input to the command generation unit 2. The command generation unit 2 determines the command signal 103 based on the command parameter. Then, the control unit 4 drives the motor 1 based on the command signal 103. In addition, the test parameter 105, the excellent parameter 106 described later, the estimated excellent parameter 107 described later, etc. are each a set of command parameters, and they can be called names for classifying command parameters by type. The test parameter 105 is a type of command parameter and is a parameter that can be changed based on the adjustment condition 108. In addition, by using the adjustment condition 108 as a constraint condition and making various changes to the test parameter 105, it is possible to perform positioning operations in various command modes based on the above constraint conditions. This will be used later Figure 2 Specific examples of the test parameter 105, the command mode, the adjustment condition 108, etc. will be described.
[0037] The adjustment unit 7 acquires the adjustment condition 108. In the present embodiment, the adjustment condition 108 can be determined by the operator or by a device inside or outside the positioning control device 1000. The adjustment unit 7 determines one or more test parameters 105 based on the adjustment condition 108. Then, the command generation unit 2 acquires the adjustment condition 108 and the determined test parameter 105, generates the command signal 103, and the control unit 4 performs the positioning operation based on the command signal 103. In other words, the adjustment unit 7 performs the positioning operation based on the adjustment condition 108 and the test parameter 105. The evaluation unit 6 determines the result obtained by evaluating the performed positioning operation based on the aforementioned state sensor signal 101 as the evaluation result 109. In addition, the evaluation unit 6 evaluates the test parameter 105 used in the positioning operation by evaluating the positioning operation. In addition, when a plurality of test parameters 105 are determined, the control unit 4 performs the positioning operation based on the combination between each of the adjustment condition 108 and the determined test parameters 105. The operation of the evaluation unit 6 evaluating the positioning operation, that is, the test parameter 105, will be described later.
[0038] The adjustment unit 7 obtains the evaluation result 109. Then, based on the obtained evaluation result 109, one of the command parameters is determined as the excellent parameter 106 corresponding to the adjustment condition 108. Here, the excellent parameter 106 is a kind of command parameter. In addition, the command parameter for performing the positioning operation with a good execution evaluation result 109 can also be determined as the excellent parameter 106. In such a case, the excellent parameter 106 varies depending on the evaluation method of the evaluation unit 6, and by setting the evaluation method of the evaluation unit 6 to a desired method, the performance required for the positioning operation can be selected. The adjustment unit 7 only needs to determine one of the command parameters as the excellent parameter 106 based on the evaluation result 109. As an example, the test parameter 105 with the best evaluation result 109 of the positioning operation performed during the adjustment can also be determined as the excellent parameter 106. In addition, as an example, two parameters with a good evaluation result 109 of the positioning operation performed during the adjustment can also be selected, and their intermediate value can be determined as the excellent parameter 106.
[0039] In addition, the operation from when the adjustment unit 7 obtains the adjustment condition 108 until the excellent parameter 106 corresponding to the adjustment condition 108 is determined is called adjustment. In the present embodiment, the adjustment unit 7 performs the positioning operation one or more times, and obtains the evaluation result 109 for each positioning operation. The set of the adjustment condition 108 and the determined excellent parameter 106 is stored as the adjustment record 111 in the adjustment record storage unit 10. Here, an example of the operation of associating the adjustment condition 108 and the excellent parameter 106 is shown. They can also be associated based on the input timing. For example, they can be associated by grouping the adjustment condition 108 and the excellent parameter 106 input immediately after the adjustment condition 108 is input. In addition, identifiers can be set for both the adjustment condition 108 and the excellent parameter 106 to perform the association.
[0040] The estimation unit 8 acquires the unadjusted condition 110. Here, the unadjusted condition 110 is a type of operating condition. The unadjusted condition 110 can also be set to an operating condition different from the adjustment condition 108 stored in the adjustment record storage unit 10. The estimation unit 8 further determines one of the command parameters as the estimated excellent parameter 107 corresponding to the unadjusted condition 110 based on the adjustment record 111. Here, the estimated excellent parameter 107 is a type of command parameter. Here, the excellent parameter 106 is determined by the adjustment performed by the adjustment unit 7. As an example, it can also be set as the command parameter for performing the positioning operation that gives a good evaluation result 109 based on the adjustment condition 108. On the other hand, the estimated excellent parameter 107 is a parameter determined by estimation by the estimation unit 8 by setting one of the command parameters as the estimated excellent parameter 107 corresponding to the unadjusted condition 110. Here, the estimation unit 8 only needs to determine one of the command parameters as the estimated excellent parameter 107 based on the adjustment record 111, and various methods can be adopted. As an example, it is also possible to estimate one of the command parameters that gives a good evaluation result 109 based on the unadjusted condition 110 and determine it as the estimated excellent parameter 107. As an example, it is also possible to estimate one of the command parameters that is considered to give the best evaluation result 109 and determine it as the estimated excellent parameter 107. Additionally, it is also possible to sequentially select several command parameters that are considered to give good evaluation results 109 starting from the highest level and determine their average value as the estimated excellent parameter 107. In Figure 1 In the structural example of, the unadjusted condition 110 is externally given, but it is also possible to provide a structural element inside the positioning control device 1000 for determining the unadjusted condition 110. In addition, in the present embodiment, in Figure 1 In the structural example of, it is set that the estimated excellent parameter 107 and the unadjusted condition 110 are input to the command generation unit 2, but the estimated excellent parameter 107 and the unadjusted condition 110 do not necessarily have to be input to the command generation unit 2. For example, it can also be a structure for outputting to the outside, or a structure stored in the adjustment record storage unit 10.
[0041] Next, specific examples of the test parameter 105, command mode, adjustment condition 108, etc. are illustrated. Figure 2 is a diagram showing an example of the command mode in the present embodiment. Figure 2 (a) to Figure 2 (d) have the time on the horizontal axis. In Figure 2 (a) to Figure 2 (d), the vertical axis shows the position, speed, acceleration, and jerk of the motor 1, which are the command signals 103. Here, the speed, acceleration, and jerk are the first derivative, second derivative, and third derivative of the position of the motor 1, respectively. The intersection of the horizontal axis and the vertical axis is the time point 0 at which the command start time for starting the evaluation of the operation is reached on the horizontal axis. Regarding Figure 2Regarding the operating conditions of the motion example, the target moving distance is set to D. That is, the position of the motor 1 is 0 at the evaluation operation start time point 0, and the position of the motor 1 at the time t = T1 + T2 + T3 + T4 + T5 + T6 + T7 when it becomes the end time point is set to D.
[0042] Figure 2 The instruction pattern is sequentially divided into the 1st interval to the 7th interval from the instruction start time point, that is, time 0 to the end time point. Let n be a natural number from 1 to 7, and the time length of the nth interval is set to the nth time length Tn. In Figure 2 the motion example, the seven parameters from the 1st time length T1 to the 7th time length T7 are set as one test parameter 105. That is, the parameters in groups of seven are set as one test parameter 105. The magnitudes of the accelerations in the 2nd interval and the 6th interval are set to Aa and Ad respectively, and they are constant within the intervals. It should be noted that the magnitude of the acceleration Aa and the magnitude of the acceleration Ad are dependent variables of the test parameter 105 and there is no degree of freedom for setting. In addition, in Figure 2 the example, since it is assumed that the signal representing the instruction signal 103 sequentially is the instruction pattern, the values at each moment of the instruction pattern are called the instruction signal 103.
[0043] The instruction signal 103 at the moment t (0 ≤ t < T1) in the 1st interval can be calculated in the following manner. What is obtained by integrating the jerk, the acceleration A1, and the velocity V1 respectively over the period from time 0 to the moment t within the 1st interval is the acceleration A1, the velocity V1, and the position P1. Moreover, in the 1st interval, the acceleration increases at a certain ratio and reaches the magnitude of the acceleration Aa at the moment T1. Therefore, the jerk in the 1st interval is the value obtained by dividing the magnitude of the acceleration Aa by T1. Thus, the acceleration A1, the velocity V1, and the position P1 can be calculated as in equations (1) to (3) respectively.
[0044] [Mathematical formula 1]
[0045]
[0046] [Mathematical formula 2]
[0047]
[0048] [Mathematical formula 3]
[0049]
[0050] In addition, similar to the 1st interval, the instruction signal 103 at the moment t (T1 ≤ t < T1 + T2) in the 2nd interval, that is, the acceleration A2, the velocity V2, and the position P2, can be calculated as in equations (4) to (6).
[0051] [Mathematical formula 4]
[0052] A2(t) = Aa…(4)
[0053] [Mathematical formula 5]
[0054]
[0055] [Mathematical formula 6]
[0056]
[0057] In addition, similar to the first interval, the command signal 103 at time t (T1 + T2 ≤ t < T1 + T2 + T3) in the third interval, that is, the acceleration A3, velocity V3, and position P3, can be calculated as in equations (7) to (9).
[0058] [Mathematical formula 7]
[0059]
[0060] [Mathematical formula 8]
[0061]
[0062] [Mathematical formula 9]
[0063]
[0064] In addition, similar to the first interval, the command signal 103 at time t (T1 + T2 + T3 ≤ t < T1 + T2 + T3 + T4) in the fourth interval, that is, the acceleration A4, velocity V4, and position P4, can be calculated as in equations (10) to (12).
[0065] [Mathematical formula 10]
[0066] A4(t) = 0…(10)
[0067] [Mathematical formula 11]
[0068]
[0069] [Mathematical formula 12]
[0070]
[0071] In addition, similar to the first interval, the command signal 103 at time t (T1 + T2 + T3 + T4 ≤ t < T1 + T2 + T3 + T4 + T5) in the fifth interval, that is, the acceleration A5, velocity V5, and position P5, can be calculated as in equations (13) to (15).
[0072] [Mathematical formula 13]
[0073]
[0074] [Mathematical formula 14]
[0075]
[0076] [Mathematical formula 15]
[0077]
[0078] In addition, similar to the first interval, the command signal 103 at time t (T1 + T2 + T3 + T4 + T5 ≤ t < T1 + T2 + T3 + T4 + T5 + T6) in the sixth interval, that is, the acceleration A6, the velocity V6, and the position P6, can be calculated as in equations (16) to (18).
[0079] [Mathematical formula 16]
[0080] A6(t) = -Ad…(16)
[0081] [Mathematical formula 17]
[0082]
[0083] [Mathematical formula 18]
[0084]
[0085] In addition, similar to the first interval, the command signal 103 at time t (T1 + T2 + T3 + T4 + T5 + T6 ≤ t ≤ T1 + T2 + T3 + T4 + T5 + T6 + T7) in the seventh interval, that is, the acceleration A7, the velocity V7, and the position P7, can be calculated as in equations (19) to (21).
[0086] [Mathematical formula 19]
[0087]
[0088] [Mathematical formula 20]
[0089]
[0090] [Mathematical formula 21]
[0091]
[0092] Moreover, at the time point t = T1 + T2 + T3 + T4 + T5 + T6 + T7 which is the end time point, the speed V7 is consistent with 0, and the position P7 is consistent with the target moving distance D. Therefore, at the end time point, equations (22) and (23) hold. The magnitude Aa of the acceleration in the second interval and the magnitude Ad of the acceleration in the sixth interval can be determined from equations (22) and (23).
[0093] [Mathematical formula 22]
[0094] V7 = 0…(22)
[0095] [Mathematical formula 23]
[0096] P7 = D…(23)
[0097] The above is an example of the operation of the instruction generation unit 2 that generates the instruction signal 103 based on the test parameter 105 and the adjustment condition 108. Here, in the first interval, the third interval, the fifth interval, and the seventh interval, the jerk is a non-zero constant value. That is, the first time length T1, the third time length T3, the fifth time length T5, and the seventh time length T7 specify the time when the jerk is a non-zero constant value. Here, the non-zero constant value means a constant value greater than 0 or a constant value less than 0. In addition, in these intervals, the magnitude of the jerk can be set as the test parameter 105 instead of the time length Tn. For example, when the magnitude of the jerk in the first interval is specified as J1, the first time length T1 and the jerk J1 have the relationship as shown in equation (24).
[0098] [Mathematical formula 24]
[0099]
[0100] Determining the time length of the interval where the jerk is a non-zero constant value as the test parameter 10 and determining the magnitude of the jerk in the interval where the jerk is a non-zero constant value as the test parameter 105 are equivalent. As shown in the above example, the test parameter 105 only needs to determine the instruction mode through the test parameter 105 and the adjustment condition 108. As exemplified here, multiple options can also be obtained based on the same adjustment condition 108. In addition, the selection method of the test parameter 105 is not limited to the method described above. Here, in the method Figure 2 described above, if the operating condition and the instruction parameter are determined, the maximum acceleration of the motor 1 is determined. That is, Figure 2This is an example where the maximum acceleration of the motor 1 during the positioning operation is specified by the operating conditions and the command parameters. In such a case, the command parameters can be changed based on the constraint condition that does not exceed the maximum acceleration of the motor 1, and the command parameters for the positioning operation that gives a good evaluation result 109 can be searched for. In addition, the maximum acceleration of the motor is mostly determined by the specifications of the motor. By adopting the above structure, adjustment can be easily performed.
[0101] Figure 3 This is a diagram showing an example of the relationship between the operating conditions and the command parameters in the present embodiment. In addition, Figure 3 the operating conditions shown are the adjustment condition 108 and the unadjusted condition 110, Figure 3 and the command parameters shown are the excellent parameters 106 and the estimated excellent parameters 107. Figure 3 The horizontal axis of this represents the target moving distance as one of the operating parameters. Figure 3 The vertical axis of this is the command parameter. In Figure 3 (a) and Figure 3 (b), the adjustment record 111 is plotted. That is, in Figure 3 (a) and Figure 3 (b), the adjustment condition 108 and the excellent parameter 106 corresponding to the adjustment condition 108 are plotted using filled symbols, that is, black circle symbols. Here, the nth adjustment condition 108 is set as the target moving distance D (n) . And the jth time length at the target moving distance D (n) is set as Tj (n) . Here, n is an integer greater than or equal to 3, and j is an integer from 1 to 7. In addition, Tj (n) is the jth parameter of the nth excellent parameter 106, that is, Figure 2 the jth jth time length in the example of this. As described above, in Figure 2 the example of this, it is assumed that one command parameter is composed of 7 time lengths.
[0102] In addition, in order to display in an easy-to-understand manner, in Figure 3 , as the excellent parameter 106, only the jth parameter of the command parameter is shown. As shown in the operation example of Figure 2 , when one command parameter is composed of multiple parameters, each of the multiple parameters of the command parameter can be plotted in the same way. In addition, when the operating conditions have one or more operating parameters in addition to the target moving distance, it can be substituted for Figure 3Rather than drawing on a two-dimensional plane as described above, drawing is performed in a multi-dimensional space having coordinate axes for each of the operating parameters. Here, the set of the n-th adjustment condition 108 and the n-th excellent parameter 106, i.e., the adjustment record 111, is designated as Ln. The n-th adjustment record Ln can be set as the n-th target moving distance D (n) and the n-th excellent parameter 106 and written as in Equation (25).
[0103] [Equation 25]
[0104] L n =(D (n) , T1 (n) , T2 (n) , T3 (n) , T4 (n) , T5 (n) , T6 (n) , T7 (n) )…(25)
[0105] In addition, in Figure 3 , five adjustment records 111 from the (n - 2)-th to the (n + 2)-th are shown, but the number of data of the adjustment record 111 only needs to be greater than or equal to 1, and preferably greater than or equal to 2. The more the number of data points of the adjustment record 111 is, the more accurately the estimation unit 8 can estimate the estimated excellent parameter 107. Figure 3 (b) In addition to the data points shown in Figure 3 (a), between D (n) and D (n+1) , the unadjusted condition D * and the estimated excellent parameter Tj * corresponding to the unadjusted condition D * are plotted using a hollow, i.e., white circle, symbol. The estimation unit 8 can also perform linear interpolation as in Equation (26) based on the adjustment record 111, thereby estimating the estimated excellent parameter Tj * .
[0106] [Equation 26]
[0107]
[0108] In Equation (26), the estimated excellent parameter Tj * is determined by using the linear first-order approximation formula of the adjustment records Ln and Ln + 1 near the unadjusted condition D *In other words, the estimation unit 8 estimates the estimated excellent parameter 107 by using a linear interpolation function that approximates the operation parameter and the excellent parameter 106 as input and output, respectively. In addition, the estimation unit 8 may, as shown in Equation (27), use an approximate polynomial of degree P, that is, a P-th order function, instead of the linear interpolation function, to perform the estimation by interpolation. If the summation symbol Σ is used, Equation (27) can be written as Equation (28).
[0109] [Mathematical formula 27]
[0110] Tj * = aj (0) + aj (1) D * + aj (2) D 2* +…+ aj (u) D u* +…+ aj (P) D P* …(27)
[0111] [Mathematical formula 28]
[0112]
[0113] aj in Equation (28) (u) is a constant determined by the adjustment record 111, boundary conditions, etc. In addition to the linear interpolation and polynomial interpolation exemplified above, approximation implemented by Lagrange interpolation, spline interpolation, etc. may also be used to estimate the estimated excellent parameter 107. The above is an example of the operation of the estimation unit 8 estimating the estimated excellent parameter 107 as an instruction parameter with excellent positioning control performance based on the adjustment record 111 and according to the unadjusted condition 110. In addition, in the present embodiment, only the operation parameter of the adjustment condition 108 is set as the target moving distance, but operation parameters other than the target moving distance may also be added. Examples of the operation parameter include the start position, stop position, etc. of the positioning operation of the mechanical load 3. In a state where the target moving distance is the same, if the start position, stop position, etc. of the operation are changed, the characteristics of the mechanical load 3 may change, and the magnitude of the vibration generated, the frequency of the vibration generated, the nature of the attenuation of the vibration generated, etc. may change, and readjustment of the instruction parameter is required. In other words, the start position, stop position, etc. of the positioning operation of the mechanical load 3 affect the evaluation result 109 of the positioning operation, that is, the goodness of the positioning operation.
[0114] In addition, the estimation unit 8 may also calculate the maximum acceleration in all the positioning operations performed based on the adjustment conditions 108 included in the adjustment record 111 and the excellent parameters 106 corresponding to the adjustment conditions 108. Moreover, the estimated excellent parameter 107 may be determined in such a way that the value of the maximum acceleration in the positioning operation performed based on the unadjusted condition 110 and the estimated excellent parameter 107 corresponding to the unadjusted condition 110 is less than the calculated value. By determining the estimated excellent parameter 107 in this way, it is possible to exclude from the estimation results obtained by the estimation unit 8 the combinations of the unadjusted condition 110 and the estimated excellent parameter 107 that generate impossible thrust or torque. Moreover, based on the operating conditions, it is possible to combine adjustment and estimation to efficiently search for the command parameters for the positioning operation that yields a good evaluation result 109.
[0115] Also, as the operating parameters, the magnitude of the inertia of the mechanical load 3, the ambient temperature, etc. may be adopted. Here, the inertia of the mechanical load 3 is determined by the mass of the machine, etc. The disturbance of the positioning control device 1000 varies according to the inertia, the ambient temperature, etc., and sometimes affects the performance of the positioning operation. As described above, the numerical values that affect the control performance may also be used as the operating parameters constituting the adjustment conditions 108 to constitute a device capable of performing high-performance positioning control corresponding to each operating parameter. In addition, the disclosure of the present embodiment has been described by taking the case where the mechanical load 3 moves linearly and the positioning control device 1000 controls linear positioning as an example. However, for example, it may also be applied to the case where the movable part of the mechanical load 3 rotates and rotational positioning is controlled. In such a case, angles, angular velocities, and angular accelerations may be used instead of positions, velocities, and accelerations, respectively.
[0116] When the adjustment conditions 108 include a plurality of operating parameters and each operating parameter can take a plurality of values, the adjustment conditions 108 may also be created for all combinations of the types of operating parameters and the values that can be taken. An example of the adjustment conditions 108 is given. For example, as the operating parameters, a target moving distance that can take 5 values and the inertia of the mechanical load 3 that can take 3 values are adopted. In such a case, the number of adjustment conditions 108 may be set to M = 15, and the main body that supplies the adjustment conditions 108 to the adjustment unit 7 and the adjustment record storage unit 10 stores 15 adjustment conditions 108 in a table. Here, data stored in a state where values obtained when an independent variable is varied in various ways can be taken out corresponding to the independent variable is called a table. As an example of the storage location for storage, for example, a storage device capable of taking out data can be cited. In addition, the main body that supplies the adjustment conditions 108 may, for example, also be a structural element such as Figure 9 the operating condition determination unit 11 shown.
[0117] Figure 4It is a flowchart showing an example of the adjustment operation in the present embodiment. The adjustment unit 7 sets the total number of adjustments M in step S101. M can also be set to the total number of adjustment conditions 108. In step S102, the adjustment unit 7 initializes the number of executions of the adjustment k to k = 0. Here, regarding the order of step S101 and step S102, either one can be executed first, or a part or all of the two operations can be executed simultaneously. Next, in step S103, the adjustment unit 7 increments the number of executions of the adjustment k. That is, k is increased by 1. Next, in step S104, the adjustment unit 7 reads the k-th adjustment condition 108 out of the M adjustment conditions 108. In addition, in the description of Figure 4 , an example of a structure in which all the adjustment conditions 108 are determined in advance and the data stored in the table is read out is illustrated, but it can also be set to a structure in which the adjustment conditions 108 are not determined in advance and the adjustment conditions 108 are determined each time step S104 is executed.
[0118] Next, in step S105, the adjustment unit 7 performs the following adjustment based on the k-th adjustment condition 108, and determines the excellent parameter 106 corresponding to the k-th adjustment condition 108 as the k-th excellent parameter (106). Next, in step S106, the adjustment record storage unit 10 associates the k-th adjustment condition and the k-th excellent parameter 106 and stores them as an adjustment record 111. Next, in step S107, the adjustment unit 7 determines whether k is greater than or equal to M. In step S107, when it is determined that k is less than M, the process proceeds to step S103. Moreover, in step S107, the operation process from step S103 to step S107 is repeatedly executed until it is determined that k is greater than or equal to M. On the other hand, in step S107, when it is determined that k is greater than or equal to M, the adjustment operation for all the adjustment conditions 108 is ended. By executing the Figure 4 shown operation process, the adjustment record storage unit 10 stores the adjustment record 111 in which the adjustment condition 108 and the excellent parameter 106 corresponding to the adjustment condition 108 are grouped for all M adjustment conditions 108.
[0119] Next, the structure and operation of the evaluation unit 6 are illustrated. Figure 5 It is a diagram showing an example of the time response of the deviation in the present embodiment. The deviation refers to the difference between the target moving distance and the position of the motor 1. In the Figure 5 operation example, the position of the motor 1 is detected by the state sensor 5 as the state sensor signal 101. Figure 5 (a) to Figure 5(c) Separately shows the time waveforms of the deviations of the positioning actions performed based on different test parameters 105. Here, when the instruction generation unit 2 generates an instruction signal 103 based on the test parameter 105 and the control unit 4 performs a positioning action based on the generated instruction signal 103, the performed positioning action is referred to as a positioning action based on the test parameter 105. Additionally, in Figure 2 's example, like one test parameter 105 being composed of 7 time lengths, the test parameter 105 can also be composed of multiple parameters.
[0120] In Figure 5 's shown example, when detecting the completion time point of the positioning, an allowable width IMP that serves as a benchmark for the accuracy of the positioning control is determined in advance. Moreover, the time from the start of the positioning control until the magnitude of the deviation first becomes less than or equal to the allowable width IMP is referred to as the stabilization time. The stabilization time is sometimes longer than the end time T1 + T2 + T3 + T4 + T5 + T6 + T7 of the instruction pattern, but due to the influence of mechanical vibration, etc., the stabilization time is sometimes shorter than the end time.
[0121] In Figure 5 (a)'s action example, the stabilization time is Tst1, and after the stabilization time Tst1, the magnitude of the deviation does not exceed the allowable width IMP until the amplitude converges. In Figure 5 (b)'s action example, the stabilization time is Tst2, and after the stabilization time Tst2, until the amplitude converges, the magnitude of the deviation exceeds the allowable width IMP once. In Figure 5 (c), the stabilization time is Tst3, and after the stabilization time Tst3, the magnitude of the deviation does not exceed the allowable width IMP until the amplitude converges. Here, the stabilization time Tst3 is smaller than the stabilization time Tst1 and larger than the stabilization time (Tst2 < Tst3 < Tst1). It is desired to achieve both that the deviation does not exceed the allowable width IMP after the stabilization time and to shorten the positioning time from the start time point of the positioning action until the deviation first becomes less than a predetermined value. Moreover, based on the same adjustment condition 108, Figure 5 (a) to Figure 5 (c)'s three positioning actions shown are performed. In such a case, Figure 5 (c)'s action example has the highest control performance, and the test parameter 105 for which the positioning action of Figure 5 (c) is performed can be determined as the excellent parameter 106. As described above, the evaluation result 109 can also be determined based on the positioning time. In addition, the positioning time starts from the start time point of the positioning action, but the starting point is not limited to such a case. For example, a time point that is a certain time earlier or later than the start time point of the positioning action can also be used as the starting point.
[0122] The evaluation unit 6 can also combine the stabilization time and the overshoot information to determine the evaluation result. The overshoot information is information on whether the magnitude of the period deviation exceeds the allowable width IMP during a period from a time point after the elapse time from the positioning time until a predetermined time has elapsed. In this way, by determining the evaluation result 109 based on the overshoot information, the possibility that the test parameter 105 for which the magnitude of the deviation after the completion time of the positioning operation exceeds the allowable width IMP is selected as the excellent parameter 106 can be reduced. In addition, the possibility that the test parameter 105 for which the positioning operation with a large vibration amplitude of the execution deviation is selected as the excellent parameter 106 can be reduced. Alternatively, the evaluation unit 6 may output the evaluation function E of Equation (29) as the evaluation result. The smaller the evaluation function E, the higher the control performance. The adjustment unit 7 performs adjustment aiming at minimizing the evaluation function E. Alternatively, the reciprocal of Equation (29) may be set as the evaluation function. The larger the evaluation function, the higher the control performance, and adjustment is performed aiming at maximizing the evaluation function.
[0123] [Mathematical formula 29]
[0124] E = Tst + L × Pe…(29)
[0125] Tst, the first term on the right side of Equation (29), is the stabilization time. In addition, the second term L × Pe is a penalty term determined based on the overshoot information. Pe in the second term is a value indicating the presence or absence of a penalty. For example, it may be set to 1 when the magnitude of the deviation exceeds the allowable width from the completion time of the positioning operation until a certain time has elapsed, and set to 0 when it does not exceed. In addition, L in the second term is a positive constant that determines the magnitude of the penalty. If L is increased, the evaluation function of Equation (29) depends more on the penalty than on the stabilization time, and adjustment is performed to preferentially avoid the penalty. On the other hand, if L is decreased, the evaluation function depends more on the stabilization time than on the penalty, and adjustment is performed to preferentially shorten the stabilization time. The above is an example of the structure and operation of the evaluation unit 6.
[0126] In addition, the structure of the evaluation unit 6 is not limited to the above. For example, the evaluation result 109 can also be calculated using the time integral value of the deviation and the time integral value of the thrust of the motor 1. Additionally, an optimal regulator that calculates the evaluation result 109 by combining them can also be used. Additionally, after the magnitude of the deviation first becomes less than or equal to the allowable width, the maximum value of the excess of the position relative to the target movement distance can be used as an index until a predetermined time has elapsed. Additionally, the evaluation result 109 can be determined based on the overshoot magnitude, which is the distance of overtravel in the opposite direction to the start position of the positioning action, observed from the final arrival position of the positioning action when the target movement distance is exceeded. Additionally, the maximum acceleration in the command mode or the maximum speed in the command mode can be used as the evaluation result. Additionally, they can be used in combination. Furthermore, the positioning control device 1000 can be configured not to include the evaluation unit 6 as a structural element. For example, it can be a memory and a processor, a processor, etc. outside the positioning control device 1000, which, like the evaluation unit 6 of Figure 1 evaluates the positioning action, i.e., the test parameter 105, based on the state sensor signal 101.
[0127] Figure 6 is a flowchart showing an example of the adjustment operation of the present embodiment. If the adjustment starts, in step S111, the adjustment unit 7 sets the total number of test times V, which is the total number of test times of the positioning action performed based on one adjustment condition 108. In step S112, the adjustment unit 7 initializes the test times i being executed. For example, it can also be i = 0. In Figure 6 the operation example of, V test parameters 105 are prepared in advance, and when performing the i-th positioning action, the i-th test parameter 105 is set from the V prepared test parameters 105.
[0128] As an example of the setting method of the test parameter 105, a cyclic method called grid search can be cited. An explanation will be given for using the Figure 2An example of grid search for the exemplary test parameter 105 consisting of 7 time lengths. A plurality of values that the first time length T1 can take are set. The set values may also include 0. When the first time length T1 is 0, the time from the start of the operation until the acceleration of the command signal 103 reaches the maximum acceleration is 0. Similarly to the first time length T1, for the 6 time lengths from the second time length T2 to the seventh time length T7, several values that can be taken by each parameter are also discretely set. It should be noted that the 7 time lengths cannot take negative values. Next, the combinations of the set values are set in advance as the test parameter 105. For example, assume that the parameters constituting one test parameter 105 are the 7 time lengths from the first time length T1 to the seventh time length T7, and 3 values are discretely set for each of the time lengths. In this case, the number of combinations is 3 to the 7th power, that is, 2187, and the number of test parameters 105 is 2187. In this case, the total number of tests can also be set to V = 2187. The above is an example of the setting of the test parameter 105 implemented by grid search.
[0129] Next, in step S113, the adjustment unit 7 increments the test number i. That is, the test number i is increased by 1. Next, in step S114, the adjustment unit 7 determines the test parameter 105 for the test to perform the i-th positioning operation. Next, in step S115, the adjustment unit 7 reads out the i-th test parameter 105 from the V test parameters 105 set in step S111. Then, the command generation unit 2 determines the command signal 103 based on the adjustment condition 108 and the read test parameter 105. In step S115, the control unit 4 determines the drive power E based on the command signal 103 and the state sensor signal 101 and performs the positioning operation. And, in step S115, the state sensor 5 determines the i-th state sensor signal 101. Next, in step S116, the evaluation unit 6 determines the i-th evaluation result 109, and the adjustment unit 7 obtains the i-th evaluation result 109. The i-th evaluation result 109 is the evaluation result for the i-th positioning operation. Next, in step S117, the adjustment unit 7 determines whether i is greater than or equal to V. In step S117, when the adjustment unit 7 determines that i is less than V, it proceeds to step S113. Moreover, in step S117, until it is determined that i is greater than or equal to V, the operation flow from step S113 to step S117 is repeatedly executed, and the positioning operations from the first to the V-th and the determination of the evaluation result 109 corresponding to each positioning operation are performed.
[0130] On the other hand, when it is determined that i is greater than or equal to V (i≥V), the adjustment unit 7 proceeds to step S118. At this time, the following state is reached, that is, the positioning operations up to the above-mentioned first to V-th ones are executed, and V test parameters 105 used for the positioning operation and evaluation results 109 corresponding to each of the test parameters 105 are obtained. In step S118, the adjustment unit 7 selects the test parameter 105 with the best performance for the positioning control from the V evaluation results 109 and determines it as the excellent parameter 106 based on the adjustment condition 108. In addition, as Figure 4 explained above, the adjustment unit 7 performs adjustment for each of the adjustment conditions 108 to obtain the excellent parameter 106. Therefore, in the operation following the Figure 4 flowchart shown, a total of M excellent parameters 106 are obtained.
[0131] As described above, by implementing the operation process from step S111 to step S118, the test parameter 105 with the most excellent evaluation result 109 corresponding to one adjustment condition 108 can be determined as the excellent parameter 106. In addition, the adjustment method is not limited to the above, and the excellent parameter 106 corresponding to the adjustment condition can also be determined by a different process. Also, in the Figure 6 example, the test parameter 105 that has executed the optimal positioning operation is selected as the excellent parameter 106, but it is not necessary to select from the test parameters 105. As long as the command parameter that gives the best positioning operation is selected based on the adjustment condition 108. In the present embodiment, a method of adjusting the command parameter that specifies the command mode to improve the performance of the positioning control is described. As another example, it can be configured that the command parameter includes a control gain used when the control unit 4 performs feedback control or feedforward control, and the optimal value of the control gain is searched by adjustment.
[0132] Figure 7 FIG. is a diagram showing a structural example in the case where the processing circuit included in the positioning control device 1000 in the present embodiment is constituted by the processor 10001 and the memory 10002. When the processing circuit is constituted by the processor 10001 and the memory 10002, each function of the processing circuit of the positioning control device 1000 is realized by software, firmware, or a combination of software and firmware. Software, firmware, etc. are described as programs and stored in the memory 10002. In the processing circuit, by the processor 10001 reading and executing the program stored in the memory 10002, each function is realized. That is, the processing circuit has a memory 10002 that stores a program for finally executing the processing of the positioning control device 1000. In addition, it can also be said that these programs cause a computer to execute the process and method of the positioning control device 1000.
[0133] Here, the processor 10001 can also be a CPU (Central Processing Unit), a processing device, an arithmetic device, a microprocessor, a microcomputer, or a DSP (Digital Signal Processor), etc. The memory 10002 can also be, for example, a non-volatile or volatile semiconductor memory such as RAM (Random Access Memory), ROM (Read Only Memory), flash memory, EPROM (Erasable Programmable ROM), EEPROM (registered trademark) (Electrically EPROM), etc. Additionally, the memory 10002 can also be a magnetic disk, a floppy disk, an optical disk, a high-density disk, a mini disk, or a DVD (Digital Versatile Disc), etc.
[0134] Figure 8 This is a diagram showing a structural example in the case where the processing circuit included in the positioning control device 1000 in the present embodiment is constituted by dedicated hardware. In the case where the processing circuit is constituted by dedicated hardware, Figure 8 the processing circuit 10003 shown can also be, for example, a single circuit, a composite circuit, a programmed processor, a parallel-programmed processor, an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or a combination thereof. The functions of the positioning control device 1000 can be implemented by the processing circuit 10003 in units of each function, or multiple functions can be implemented collectively by the processing circuit 10003. In addition, the positioning control device 1000 and the control object 2000 can also be connected via a network. Further, the positioning control device 1000 can also exist on a cloud server.
[0135] As described above, according to the present embodiment, it is possible to provide a positioning control device that requires a short adjustment time and can perform high-performance positioning operations.
[0136] Embodiment 2
[0137] Figure 9FIG. is a block diagram showing an example of the configuration of the positioning control device 1000a in the present embodiment. The positioning control device 1000a has an operation condition determination unit 11 in addition to the structural elements of the positioning control device 1000 of the first embodiment. The operation condition determination unit 11 determines either one or both of the adjustment condition 108 or the non-adjustment condition 110 based on the adjustment record 111 or the mechanical specifications of the control object 2000. More specifically, it determines the operation parameters of the adjustment condition 108 or the operation parameters of the non-adjustment condition 110. In the present embodiment, the same reference numerals as those of Figure 1 the same or corresponding structural elements are labeled as Figure 1 the same.
[0138] In the following description, the range of the operation conditions for setting the adjustment condition 108 or the non-adjustment condition 110 is referred to as the adjustment range. The adjustment range may also be the range of the operation parameters. When there are a plurality of operation parameters, for the operation condition having a plurality of operation parameters, the ranges of the plurality of operation parameters may be set as the adjustment range, and the range determined in the multi-dimensional space having the dimension corresponding to the number of operation parameters may be used as the adjustment range. The operation condition determination unit 11 determines the values of the operation parameters of the adjustment condition 108 or the non-adjustment condition 110 within the adjustment range. In addition, the set adjustment condition 108 may be saved as a table. For example, it may be set in such a manner that the operation parameters of a plurality of adjustment conditions 108 are arranged at equal intervals within the adjustment range.
[0139] Figure 10 FIG. is a diagram illustrating the configuration of the operation condition determination unit 11 in the present embodiment. Figure 10 The operation condition determination unit 11 shown in (a) has an accuracy estimation unit 1101, a mechanical specification 1102, and a determination unit 1103. As the mechanical specification 1102, the mechanical specifications of the motor 1, the mechanical load 3, etc. are stored. Examples of the mechanical specifications stored as the mechanical specification 1102 include the maximum speed, maximum acceleration, maximum torque of the motor 1, the inertia of the mechanical load 3, etc. The mechanical specification 1102 may also be information that can be retrieved and recorded in a storage device, for example. The accuracy estimation unit 1101 estimates, for a part or all of the adjustment range, the degree of ease or difficulty in accurately estimating the estimation excellent parameter 107 for the estimation unit 8 based on the mechanical specification 1102 or the adjustment record 111.
[0140] Here, the range in which the estimated excellent parameter 107 can be easily estimated with high precision can also be a range where the difference ratio between the estimated excellent parameter 107 and the excellent parameter 106 is smaller than other parts in the adjustment range. Here, the above-mentioned estimated excellent parameter 107 is the estimated excellent parameter 107 in which the estimation unit 8 estimates one operating condition included in this range as the unadjusted condition 110. Moreover, the excellent parameter 106 is an excellent parameter 106 determined by the adjustment unit 7 by performing adjustment with the same operating condition as the above as the test parameter 105. Additionally, for example, it is conceivable that, as in formula (22), the estimation unit 8 performs estimation using linear interpolation. In such a case, the accuracy estimation unit 1101 can also, based on the adjustment record 111, in the adjustment range, set the part where the relationship between the operating parameter of the adjustment condition 108 and the excellent parameter 106 is close to a linear relationship as the high-precision range. Additionally, the part that is greatly different from the linear relationship can be set as the low-precision range. Thus, the accuracy estimation unit 1101 can also set the high-precision range and the low-precision range.
[0141] The determination unit 1103 can also increase the density of the adjustment condition 108 in the range where it is difficult to achieve high-precision prediction. Additionally, it can also increase the density of the unadjusted condition 110 in the range where it is easy to achieve high-precision prediction. Here, the density of the adjustment condition 108 or the unadjusted condition 110 can also be the density of the operating parameter. Here, the density of the operating parameter is the degree of the number of operating parameters configured within a certain width of the value of the operating parameter. That is, when the number of operating parameters configured within a certain width of the value of the operating parameter is large, it is said that the density of the operating parameter is high.
[0142] Next, the operation of the accuracy estimation unit 1101 will be exemplified. Let the operating parameter be the target moving distance. Additionally, assume that the mechanical load 3 has a resonance frequency. Moreover, the speed and acceleration of the motor 1 are each limited to be less than or equal to the maximum speed and less than or equal to the maximum acceleration. And the mechanical load 3 performs the following positioning operation, that is, from the stopped state (the state where the speed is zero) to the state of the maximum speed, it accelerates with the maximum acceleration, and then, it moves at the maximum speed for as long as possible, and after that, it decelerates with the maximum acceleration until it stops. In such a case, the shape (command pattern) of the speed pattern showing the speed in time series is ideally an isosceles trapezoid shape. And there is a target moving distance in the adjustment range where vibration is likely to occur. Near this target moving distance where vibration is likely to occur, the value of the command parameter where vibration is difficult to occur changes sharply depending on the change in the target moving distance. Therefore, the vicinity of the target moving distance where vibration is likely to occur can be set as the low-precision range where it is difficult to perform high-precision estimation of the estimated excellent parameter 107. The above is an example of the operation of the accuracy estimation unit 1101.
[0143] In addition, the range of operating conditions where it is highly likely that the mechanical load 3 will operate according to the analytical formula can be determined as a range that is easy to estimate the excellent parameter 107, that is, a high-precision range. Also, the number of low-precision ranges and the number of high-precision ranges can be one, or multiple, and high-precision ranges and low-precision ranges can be mixed in the adjustment range. Moreover, when setting multiple low-precision ranges or high-precision ranges, the widths of the low-precision ranges, high-precision ranges, etc. can be the same or different from each other. Additionally, low-precision ranges or high-precision ranges can be set for all of the multiple operating parameters, or can be set for a part of them. As described above, according to Figure 10 the structure of the present embodiment described in (a), it is possible to set the adjustment condition 108 or the unadjusted condition 110 corresponding to the difficulty of estimating the excellent parameter 107 by the estimation unit 8. Therefore, it is possible to select the range effective for performing the adjustment and perform the adjustment.
[0144] Figure 10 The operating condition determination unit 11 shown in (b) replaces Figure 10 the accuracy estimation unit 1101 shown in (a) and has an adjustment range determination unit 1104. In Figure 10 the structural example shown in (a), the adjustment condition 108 or the unadjusted condition 110 is determined for a pre-given adjustment range, but in Figure 10 the structural example shown in (b), the adjustment range determination unit 1104 determines the adjustment range based on the mechanical specifications 1102 or the adjustment record 111.
[0145] The operation of the adjustment range determination unit 1104 for determining the adjustment range will be exemplified below. As the mechanical specifications 1102, the maximum speed of the motor 1, i.e., Vmax, and the maximum acceleration of the motor 1, i.e., Amax, are stored. The mechanical load 3 performs the following positioning operation, that is, it accelerates at the maximum acceleration from the stopped state (state where the speed is zero) to the state of the maximum speed, and then moves at the maximum speed for as long as possible and decelerates at the maximum acceleration. The adjustment range is given by the target moving distance as an operating parameter, and the adjustment range is from the target moving distance 0 to the target moving distance Dmax. It is assumed that the adjustment range determination unit 1104 determines the adjustment range by determining the maximum value of the target moving distance, i.e., Dmax.
[0146] Vmax 2 / Amax is the target moving distance in the point-to-point positioning of the motor where the maximum speed and the maximum acceleration are limited, where it accelerates at the maximum acceleration, decelerates at the maximum acceleration, and the speed reaches the highest point and becomes the maximum speed. In such a case, if the target moving distance is less than Vmax 2 / Amax, the shape of the speed pattern (command pattern) is triangular, and there is no interval of moving at the maximum speed Vmax, which is likely to cause vibration. Therefore, it is expected that the positioning time can be significantly shortened by performing adjustment. That is, the effect of adjustment is large.
[0147] On the other hand, when the target moving distance exceeds Vmax 2 / Amax, the shape of the speed pattern (command pattern) is trapezoidal, and there is an interval of moving at the maximum speed Vmax. In such a case, it is difficult to generate vibration, and it is impossible to expect to significantly shorten the positioning time by adjustment. That is, the effect of adjustment is small. According to the above description, it can be said that when the target moving distance exceeds Vmax 2 / Amax, the effect of adjustment is small, and when the target moving distance is less than Vmax 2 / Amax, the effect of adjustment is large. In such a case, the adjustment range determination unit 1104 can also determine the adjustment range as described below using Equation (30).
[0148] [Mathematical formula 30]
[0149]
[0150] C in Equation (30) is a positive constant. The adjustment range determination unit 1104 can also make C in Equation (30) fall within, for example, 0.5 to 3, and set the range of the target moving distance in Equation (30) from 0 to Dmax as the adjustment range. More preferably, C in Equation (30) can be set to 1, and the range of the target moving distance in Equation (30) from 0 to Dmax can be set as the adjustment range. In this way, Vmax 2 / Amax can be set as the index value, and the case of a value lower than the same degree as this index value can be set as the adjustment range. That is, the range with a large adjustment effect can also be set as the adjustment range, and the adjustment time can be further shortened. The above is an example of the operation of the adjustment range determination unit 1104. The determination unit 1103 sets the adjustment condition 108 in the adjustment range determined by the adjustment range determination unit 1104. In addition, the adjustment condition 108 or the non-adjustment condition 110 can also be set at equal intervals in the adjustment range. Additionally, based on the adjustment record 111, the area where the operating parameter corresponding to the adjustment condition 108 changes sharply with the excellent parameter 106 corresponding to the adjustment condition 108 can be determined as the adjustment range. In other words, based on the adjustment record 111, the range of the operating conditions where the change of the excellent parameter 106 is large depending on the adjustment condition 108 can be determined as the adjustment range. Moreover, the range of the operating conditions where the effect of shortening the time required for the positioning operation by adjustment or the effect of reducing vibration by adjustment is large can be determined as the adjustment range.
[0151] As described above, according to the present embodiment, it is possible to provide a positioning control device that requires a short adjustment time and can perform high-performance positioning operations. Further, it includes an operation condition determination unit 11 that determines an adjustment condition 108 or an unadjusted condition 110 based on the mechanical specifications of the motor 1 or the mechanical load 3, or an adjustment record 111.
[0152] The operation condition determination unit 11 may also include an accuracy estimation unit 1101 that determines the ease with which the estimation unit 8 can accurately estimate the estimated excellent parameter 107. In such a case, the number of adjustment conditions 108 can be increased or decreased corresponding to the estimation accuracy of the estimated excellent parameter 107 in the adjustment range. Therefore, by setting a plurality of adjustment conditions 108 in the low-accuracy range, it is possible to obtain the excellent parameter 106 through adjustment without relying on estimation. Moreover, adjustment can be performed efficiently. In addition, by setting a plurality of unadjusted conditions 110 in the high-accuracy range, it is possible to obtain the estimated excellent parameter 107 through estimation without relying on adjustment. Moreover, the time required for adjustment can be further shortened, and adjustment can be performed efficiently.
[0153] In addition, the operation condition determination unit 11 may also include an adjustment range determination unit 1104 that determines an adjustment range, which is the range of operation conditions for setting the adjustment condition 108. In such a case, the range in which the effect of shortening the positioning time that can be expected through adjustment is large can be set as the adjustment range for performing adjustment. Moreover, the time required for adjustment can be further shortened, and adjustment can be performed efficiently.
[0154] Embodiment 3
[0155] Figure 11 FIG. is a block diagram showing an example of the configuration of the positioning control device 1000b in the present embodiment. The positioning control device 1000b includes an adjustment unit 7a and an adjustment record storage unit 10a instead of the adjustment unit 7 and the adjustment record storage unit 10 of the positioning control device 1000 in Embodiment 1. Further, it includes Figure 1 an adjustment management unit 9 that is not included in the positioning control device 1000 shown. In the Figure 11 description, the same reference numerals are assigned to the same or corresponding structural elements as Figure 1 those in Figure 1 the same.
[0156] An overview of the differences between the positioning control device 1000 and the positioning control device 1000b is described. The positioning control device 1000b performs a positioning operation realized by the unadjusted condition 110 and the presumed excellent parameter 107. Moreover, it judges whether the performed positioning operation is good or bad, and in the case of a bad positioning operation, determines a new operating condition, that is, an additional adjustment condition 112. Further, the adjustment unit 7a performs adjustment based on the additional adjustment condition 112, and determines one of the command parameters as an additional excellent parameter 113 corresponding to the additional adjustment condition 112.
[0157] The operation of the positioning control device 1000b is described. The adjustment unit 7a performs adjustment based on the adjustment condition 108 in the same manner as the adjustment unit 7 in the first embodiment. Moreover, the adjustment record storage unit 10a stores the adjustment record 111 in the same manner as the adjustment record storage unit 10 in the first embodiment. In Figure 1 the positioning control device 1000, the presumption unit 8 obtains the unadjusted condition 110 from the outside. On the other hand, in Figure 11 the positioning control device 1000b, the adjustment management unit 9 determines the unadjusted condition 110. In Figure 11 the positioning control device 1000b, it may also be configured to obtain the unadjusted condition 110 from the outside. Figure 11 the presumption unit 8 of Figure 1 is the same as the presumption unit 8 of
[0158] In the case where the judgment result obtained through this verification does not meet a predetermined criterion, the adjustment management unit 9 decides to add an additional adjustment condition 112. Here, it is preferable that the additional adjustment condition 112 is an operating condition different from the adjustment condition 108 included in the adjustment record 111. Further, the adjustment unit 7a performs an adjustment based on the determined additional adjustment condition 112, and determines one of the command parameters as an additional excellent parameter 113 corresponding to the additional adjustment condition 112. The adjustment record storage unit 10a stores the group of the additional adjustment condition 112 and the additional excellent parameter 113 as an additional adjustment record. In addition, in the case where the positioning operation based on the estimated excellent parameter 107 that has been performed meets a predetermined criterion, the adjustment record storage unit 10a may also store the group of the unadjusted condition 110 and the estimated excellent parameter 107 as an adjustment record 111. Further, for the group of the unadjusted condition 110 and the estimated excellent parameter 107, it may also be stored as an additional adjustment record instead of the adjustment record 111.
[0159] Figure 12 FIG. is an example showing the correspondence relationship between the operating conditions and the command parameters in the present embodiment. Figure 12 The horizontal axis of FIG. represents the operating conditions. Figure 12 The vertical axis of FIG. represents the command parameters. In Figure 12 FIG., data points, axes, etc. that are the same as or corresponding to those in Embodiment 1 are labeled with the Figure 3 same reference numerals. For Figure 3 the data points, axes, etc. labeled in Figure 12 (a), the meanings of the reference numerals are the same as those in Figure 3 (a). In Figure 12 (b), in addition to the data points shown in Figure 12 (a), the unadjusted condition 110 and the estimated excellent parameter 107 are also shown. Here, the unadjusted condition 110 and the estimated excellent parameter 107 are referred to as unadjusted data. Here, hollow symbols (white circle symbols) are used to represent the unadjusted data for which it is judged that the verification result meets a predetermined criterion, that is, good unadjusted data. On the other hand, cross-mark symbols (multiplication symbols) are used to represent the unadjusted data for which it is judged that the criterion is not met, that is, the unadjusted data for which the verification result is negative. In Figure 12 FIG., the range of the operating conditions between adjacent adjustment conditions 108 is referred to as an unknown interval. Further, regarding the unknown interval, in addition to the range of the operating conditions between the adjacent adjustment conditions 108 described above, the range at the end of the adjustment range where the adjustment conditions 108 are arranged and the range between the adjustment conditions 108 adjacent to the end may also be set as the unknown interval. The unknown interval INT (n) is the operating parameters of two adjustment conditions 108, namely D (n) and D (n +1)The open interval between. As shown in Equation (31), the unknown interval INT (n) is set to (D (n) , D (n+1) ). In addition, in the example shown in Figure 12 , four unknown intervals from the unknown interval INT (n-2) to the unknown interval INT (n+1) are illustrated, but the number of unknown intervals can increase or decrease corresponding to the number of adjustment conditions 108.
[0160] [Mathematical Formula 31]
[0161] INT (n) = (D (n) , D (n+1) )…(31)
[0162] In Figure 12 (c), similar to Figure 12 (b), in the unadjusted data, data points whose verification results are judged to be good are represented by white circles, but data points whose verification results are judged to be no are not shown. Moreover, the additional adjustment condition 112 and the additional excellent parameter 113 are shown by double-layer circular symbols. As described above, the group of the additional adjustment condition 112 and the additional excellent parameter 113 is called an additional adjustment record. In Figure 12 (b), in the unknown interval INT (n-2) and the unknown interval INT (n-1) , there is unadjusted data with a verification result of no. The adjustment management unit 9 adds one additional adjustment condition 112 to each of the unknown intervals where there is unadjusted data with a verification result of no. That is, one additional adjustment record is added to each of the unknown interval INT (n-2) and the unknown interval INT (n-1) .
[0163] The additional adjustment record added to the unknown interval INT (n-2) is set to the data point represented by D ad1 and Tj ad1 . The additional adjustment record added to the unknown interval INT (n-1) is set to the data point represented by D ad2 and Tj ad2The data points represented. As described above, the positioning control device 1000b of the present embodiment performs verification on the unadjusted data. Therefore, it is possible to detect unadjusted data for which positioning operations that do not meet the criteria are performed. Moreover, as described above, the adjustment management unit 9 can determine an additional adjustment condition 112 at an unknown interval where the presence of unadjusted data for which verification is determined to be no exists in the interval between two adjustment conditions 108, that is, in the unknown interval. If a configuration for determining the additional adjustment condition 112 is made in this way, it is possible to determine an operating condition close to the unadjusted condition 110 of the unadjusted data for which verification is determined to be no as the additional adjustment condition 112. Here, being close to two operating conditions may mean that the values of the same type of operating parameters possessed by the two operating conditions are close. That is, it is possible to selectively configure the additional adjustment condition 112 for a region where the estimation accuracy of the estimated excellent parameter 107 is low. Thereby, adjustment can be performed efficiently.
[0164] Figure 13 is a flowchart showing an example of the operation of the positioning control device 1000b in the present embodiment. Figure 13 shows saving from the adjustment record storage unit 10a Figure 12 the adjustment record 111 shown in (a) to the adjustment record storage unit 10a saving Figure 12 the operation flow up to the additional adjustment record in (c). In addition, before starting Figure 13 the operation flow, Figure 12 the adjustment record 111 shown in (a) has been saved in the adjustment record storage unit 10a. If the operation flow is started, in step S201, the adjustment management unit 9 determines the number of unknown intervals corresponding to the number of adjustment conditions 108 saved in the adjustment record storage unit 10a. Let the number of unknown intervals be P. Next, in step S202, the adjustment management unit 9 initializes the unknown interval number q, which is the number of the unknown interval being processed. Here, in step S202, Figure 13 the initialization of setting the value of q to 0 is performed, but as the initialization, other values such as 1 can also be set, for example.
[0165] Next, in step S203, the adjustment management unit 9 increments the unknown interval number q being processed. In other words, the unknown interval number q being processed is increased by 1. Next, in step S204, the adjustment management unit 9 determines the unadjusted conditions 110 for the q-th unknown interval among the L unknown intervals. Then, in step S205, the adjustment management unit 9 initializes the unadjusted condition number w being processed. For example, as the initialization, the value of w can also be set to 0. Preferably, the number of these L unadjusted conditions 110 is prepared to be able to confirm the performance of the positioning control. In Figure 12 the example shown, four unadjusted conditions 110 are determined for each unknown interval, and L = 4.
[0166] Next, in step S206, the adjustment management unit 9 increments the unadjusted condition number w being processed. In other words, an operation of incrementing the unadjusted condition number w being processed by 1 is performed. Next, in step S207, the estimation unit 8 determines the estimated excellent parameter 107 corresponding to the w-th unadjusted condition 110. Next, in step S208, the adjustment unit 7a, etc. performs the positioning operation realized by the w-th unadjusted data, i.e., the w-th positioning operation. Next, in step S209, the adjustment management unit 9 obtains the w-th evaluation result 109 made by the evaluation unit 6 based on the state sensor signal 101 obtained in the w-th positioning operation. Next, in step S210, the adjustment management unit 9 determines whether w is greater than or equal to L. Moreover, when w is less than L, it proceeds to step S206. Moreover, until it is determined in step S210 that w is greater than or equal to L, the operation process from step S206 to step S210 is repeatedly executed. On the other hand, in step S210, when it is determined that w is greater than or equal to L, it proceeds to step S211. At this time, it becomes a state where L evaluation results from the 1st evaluation result 109 to the L-th evaluation result 109 are obtained.
[0167] In step S211, the adjustment management unit 9 determines whether all of the above L evaluation results satisfy a predetermined criterion. In step S211, when it is determined that all of the L evaluation results satisfy the criterion, it proceeds to step S212. On the other hand, in step S211, when it is determined that at least one of the L evaluation results does not satisfy the criterion, it proceeds to step S213. When proceeding to step S212, the adjustment management unit 9 determines whether L is less than or equal to q. When L is less than or equal to q, the operation process ends. On the other hand, when L is greater than q, it proceeds to step S203. In step S212, the operation process from step S203 to step S212 is repeatedly executed until it is determined that L is less than or equal to q.
[0168] When proceeding to step S213, the adjustment management unit 9 determines the additional adjustment condition 112. Then, in step S214, the adjustment unit 7a performs the adjustment based on the additional adjustment condition 112, i.e., the additional adjustment, and determines the additional excellent parameter 113. Then, in step S215, the adjustment record storage unit 10a stores the group of the additional adjustment condition 112 and the additional excellent parameter 113 as an additional adjustment record. Then, it proceeds to step S204. Moreover, until it is determined in step S211 that the L evaluation results satisfy the criterion, the operation process from step S204 to step S215 is repeatedly executed.
[0169] In addition, in Figure 12In the operation example, the unknown section occupies the whole between two adjacent adjustment conditions 108, but the unknown section can also be a part between two adjacent adjustment conditions 108. For example, in the range of operating conditions, the unknown section can also be set in such a way that the less likely-to-be-used part is not included in the unknown section. In addition, the adjustment management unit 9 can also arrange more unknown sections in the range of operating conditions with a higher utilization possibility than in the range of operating conditions with a lower utilization possibility. Moreover, more additional adjustment conditions 112 can also be set in the range of operating conditions with a higher utilization possibility, and the adjustment can be performed with emphasis. In addition, the intervals between the unadjusted conditions 110 and the intervals between the unadjusted conditions 110 and the adjustment conditions 108 can be set equally or unequally. In addition, in the setting of the unadjusted conditions 110, the unadjusted conditions 110 can also be probabilistically determined using random numbers.
[0170] In Figure 12 In the operation example shown, one additional adjustment condition 112 is taken at the center of the unknown section, but two or more additional adjustment conditions 112 can also be arranged in the unknown section. In addition, in the state where the additional adjustment condition 112 is determined, when other operating conditions are newly determined as the additional adjustment condition 112, the existing additional adjustment conditions 112 can be retained or deleted. In addition, the additional adjustment condition 112 can also be changed based on the unadjusted condition 110 that is judged as no in the verification. For example, the additional adjustment condition 112 can also be set within a range less than or equal to a specified distance from the unadjusted condition 110 that is judged as no. Moreover, the adjustment can also be efficiently performed by focusing on the vicinity of the unadjusted condition judged as no and performing the adjustment. Here, the distance between two operating conditions can also be the difference between two homogeneous operating parameters included in these two operating conditions.
[0171] Figure 11 The adjustment management unit 9 shown determines the additional adjustment condition 112 when the judgment result obtained through verification does not satisfy a predetermined criterion. However, the operation of the adjustment management unit 9 of the present embodiment is not limited to such a method. When the adjustment unit 7a and the adjustment management unit 9 do not perform verification, the adjustment management unit 9 can also determine the additional adjustment condition 112 as one of the operating conditions. In addition, when verification is performed, the adjustment management unit 9 can determine the additional adjustment condition 112 as one of the operating conditions regardless of the result of the verification performed. Moreover, since the adjustment can be additionally performed on the operating conditions for which the adjustment has not been performed, it is preferable that the additional adjustment condition 112 determined by the adjustment management unit 9 is an operating condition different from the adjustment condition 108. Figure 11The adjustment unit 7a shown performs adjustment based on the additional adjustment condition 112 determined as described above, and can determine one of the command parameters as the additional excellent parameter 113 corresponding to the determined additional adjustment condition 112. Further, the adjustment record storage unit 10a can store the set of the additional adjustment condition 112 and the additional excellent parameter 113 corresponding to the additional adjustment condition 112 as an additional adjustment record.
[0172] As described above, according to the present embodiment, similarly to the first embodiment, it is possible to provide a positioning control device that requires a short adjustment time and can perform a high-performance positioning operation. Further, the positioning control device 1000b of the present embodiment includes an adjustment management unit 9. The adjustment management unit 9 determines an additional adjustment condition 112 that is one of the operating conditions and is different from the adjustment condition 108. Further, the adjustment unit 7a performs adjustment based on the additional adjustment condition 112, and determines one of the command parameters as the additional excellent parameter 113 corresponding to the additional adjustment condition 112. The adjustment record storage unit 10a further stores the set of the additional adjustment condition 112 and the additional excellent parameter 113 as an additional adjustment record. According to the present embodiment, it is possible to perform adjustment based on the additional adjustment condition 112 not included in the adjustment record 111, and determine the command parameter with a good evaluation result 109. Therefore, it is possible to provide a positioning control device that can perform a positioning operation with higher accuracy.
[0173] Further, the adjustment unit 7a performs a positioning operation based on the unadjusted condition 110 and the estimated excellent parameter 107 as a verification positioning operation. The adjustment management unit 9a determines whether the evaluation result 109 obtained based on the state sensor signal 101 during the verification positioning operation satisfies a predetermined criterion. Further, when the criterion is not satisfied, the adjustment management unit 9a determines the additional adjustment condition 112. Therefore, it is possible to select a case where the evaluation result for the estimated excellent parameter 107 does not satisfy the criterion and set the additional adjustment condition 112, and it is possible to perform highly efficient adjustment without performing unnecessary adjustment.
[0174] The adjustment management unit 9 may determine the additional adjustment condition 112 in an unknown section where the unadjusted condition 110 determined to not satisfy the criterion is arranged. Here, the unknown section may be set as the range of the operating conditions between adjacent adjustment conditions 108. Further, the unknown section may be set as the range of the operating conditions between the end of the adjustment range where the adjustment condition 108 is arranged and the adjacent adjustment condition 108. Since the positioning control device of the present embodiment has the above-described configuration, it is possible to determine the additional adjustment condition 112 near the unadjusted condition 110 determined to not satisfy the criterion. Therefore, it is possible to selectively determine the additional adjustment condition 112 in a portion where the estimation accuracy of the estimated excellent parameter 107 is low.
[0175] In addition, similar to the operation condition determination unit 11 that adjusts the determination adjustment condition 108 or the unadjusted condition 110 shown in Figure 9 and Figure 10 , the adjustment management unit 9 can also determine the additional adjustment condition 112 by using the mechanical specification 1102, the adjustment record 111, etc. In addition, when the target movement distance is specified in the operation condition 108, the adjustment management unit 9 can also determine the reference distance based on the maximum speed of the motor 1 determined in advance and the maximum acceleration of the motor 1 determined in advance. Moreover, the additional adjustment condition 112 can be determined in such a way that the target movement distance of the additional adjustment condition 112 is the same as or less than the reference distance. The reference distance can also be a distance such that the greater the maximum speed of the motor determined in advance, the longer it is, and the greater the maximum acceleration of the motor determined in advance, the shorter it is. In addition, for example, the maximum acceleration of the motor 1 and the maximum speed of the motor 1 are provided as the mechanical specifications of the motor 1. Moreover, the adjustment management unit 9 can also determine Dmax described in equation (30) with C being 1 as the reference distance, and determine the additional adjustment condition 112 in such a way that the target movement distance as the operation condition is set within a range less than or equal to the reference distance. In this way, if the additional adjustment condition 112 is determined, the additional adjustment condition 112 is set within the range where the positioning operation time can be significantly shortened by adjustment, that is, the effective range of adjustment.
[0176] Embodiment 4
[0177] Figure 14 FIG. is a block diagram showing an example of the structure of the positioning control device 1000c in the present embodiment. The structure of the positioning control device 1000c is the same as that of the positioning control device 1000 shown in Figure of Embodiment 1, except that it has an adjustment unit 7b instead of the adjustment unit 7. Figure shown. FIG. is a block diagram showing an example of the structure of the adjustment unit 7b. The adjustment unit 7b has an adjustment learning unit 70. The same reference numerals are given to the structural elements shown in , that are the same as or corresponding to the structural elements shown in of Embodiment 1. and shown in of Embodiment 1. shown.
[0178] The adjustment learning unit 70 learns the relationship between the test parameter 105 used for the positioning operation and the state quantity including the evaluation result 109 of the performed positioning operation, and determines the test parameter 105 based on the learning result. The adjustment learning unit 70 has: a reward calculation unit 701 that calculates a reward r based on the evaluation result 109; and a value function update unit 702 that updates the value function Q based on the reward r. In addition, The adjustment learning unit 70 learns the relationship between the test parameters 105 and the evaluation result 109, or the adjustment learning unit 70 may learn the relationship between the test parameters 105 and the adjustment state quantity including the evaluation result 109. As an example of the adjustment state quantity, the adjustment condition 108, the mechanical specifications of the motor 1 or the mechanical load 3, the surrounding environment such as temperature and humidity, etc. can be cited. And, the adjustment learning unit 70 has an intention determination unit 703, and this intention determination unit 703 determines the test parameter 105 used for the positioning action to be executed during adjustment based on the value function Q. In the present embodiment, in In the operation of step S114, the adjustment learning unit 70 determines the test parameter 105. In addition to the above, the operation flow of the present embodiment is the same as that of Embodiment 1 in and the same.
[0179] An example of the operation in which the adjustment learning unit 70 determines the test parameter 105 will be described. The adjustment learning unit 70 can perform learning using various learning algorithms. In the present embodiment, the case where reinforcement learning is applied is described as an example. Reinforcement learning is that an agent (acting subject) in a certain environment observes the current state and determines the action to be taken. The agent selects an action and obtains a reward from the environment. Moreover, learn the strategy that gets the most rewards through a series of actions. As representative methods of reinforcement learning, Q-learning, TD-learning, etc. are known. For example, in the case of Q-learning, the general update formula of the action value function Q(s, a) is represented by Equation (32). The update formula can also be expressed in an action value table.
[0180] [Mathematical formula 32]
[0181]
[0182] In Equation (32), s t represents the environment at time t, and a t represents the action at time t. Through the action a t , the environment changes to s t+1 . r t+1 represents the reward obtained through this change in the environment, γ represents the discount rate, and α represents the learning coefficient. In addition, the discount rate γ is set in the range greater than 0 and less than or equal to 1 (0 < γ ≤ 1), and the learning coefficient α is set in the range greater than 0 and less than or equal to 1 (0 < α ≤ 1). In the case where Q-learning is applied, the action a t is the determination of the test parameter 105. The environment s tIt consists of adjustment condition 108, the initial position of the motor 1, etc.
[0183] An example of the operation of the reward calculation unit 701 for determining the reward r is shown. The reward calculation unit 701 determines the reward r corresponding to the evaluation result 109. The evaluation unit 6 illustrated in Embodiment 1 determines the evaluation result 109 based on the overshoot information and the stabilization time or the positioning time. Here, as described above, the overshoot information is information on whether the magnitude of the deviation exceeds the allowable width IMP during the period from the elapsed time point of the stabilization time to the elapsed predetermined time. Hereinafter, when the allowable width IMP is exceeded during the period until the predetermined time has elapsed, the overshoot information is referred to as good, and when the allowable width IMP is not exceeded during the period until the predetermined time has elapsed, the overshoot information is referred to as no. When the overshoot information is no, the value obtained by subtracting 5 from the reciprocal value of the stabilization time is set as the reward r, and when the overshoot information is good, the reciprocal value of the stabilization time is set as the reward r. For example, when the overshoot information is no and the stabilization time is 0.1 second, the reward r is set to 5 obtained by subtracting 5 from the reciprocal of the stabilization time, which is 10. The reward calculation unit 701 can also search for the test parameter 105 with a short stabilization time and good overshoot information by determining the reward r in this way. In addition, the evaluation unit 6 can also determine the evaluation result 109 based on the magnitude of the overshoot, which is the distance of overtravel beyond the target movement distance to the opposite side of the start position of the positioning action.
[0184] The value function update unit 702 updates the action value function Q based on the reward r calculated by the reward calculation unit 701. The intention determination unit 703 determines the action a with the largest updated action value function Q t . That is, the test parameter 105 is determined in such a way that the action value function Q is the largest. In addition, in the description of the positioning control device 1000c, the case where reinforcement learning is applied as the learning algorithm used by the adjustment learning unit 70 is described, but the learning algorithm of the present embodiment is not limited to reinforcement learning. Well-known learning algorithms such as supervised learning, unsupervised learning, and semi-supervised learning can also be applied. In addition, as the above learning algorithm, deep learning for learning the extraction of the feature amount itself can also be used. In addition, machine learning can also be performed according to other methods, such as neural networks, genetic programming, functional logic programming, support vector machines, and Bayesian optimization.
[0185] In addition, a positioning control device having a trained learner can also be configured. The trained learner performs the learning described in this embodiment. The trained learner can also be composed of trained data, a trained program, or a combination thereof. By using the trained learner, the learning using other positioning control devices can be utilized, so that a positioning control device capable of achieving high-performance positioning can be provided without newly performing learning. In addition, the structure described in this embodiment can also be applied to the adjustment unit 7 shown in the adjustment unit 7a shown in, and the adjustment can be efficiently performed.
[0186] As described above, the positioning control device 1000c of this embodiment, like the positioning control device of Embodiment 1, can provide a positioning control device that requires a short adjustment time and can perform high-performance positioning operations. And the positioning control device 1000c of this embodiment has an adjustment unit 7b. The adjustment unit 7b has an adjustment learning unit 70 that learns the relationship between the test parameter 105 and the adjustment state quantity including the evaluation result 109, and determines the test parameter 105 based on the learning result. By utilizing the learning result, the test parameter can be determined. Moreover, the time required for adjustment can be shortened. For example, in cases where it is difficult to predict the behavior of the mechanical load 3, such as when the rigidity of the mechanical load 3 is small, by having the adjustment learning unit 70 determine the test parameter 105 using the learning result, the time required for adjustment can be shortened. In addition, compared with the adjustment that repeats simple trial and error, the time required for adjustment can be shortened.
[0187] Embodiment 5
[0188] is a block diagram showing an example of the structure of the positioning control device 1000d in this embodiment. The positioning control device 1000d has a estimation unit 8a instead of the estimation unit 8 of the positioning control device 1000 of Embodiment 1 shown in. Other aspects are the same as those of the positioning control device 1000 of Embodiment 1. In the description of the positioning control device 1000d, the same reference numerals are assigned to the same or corresponding structural elements as those of Embodiment 1.
[0189] FIG. 0 is a block diagram showing an example of the structure of the estimation unit 8a in the present embodiment. The estimation unit 8a learns the relationship between the adjustment condition 108 and the excellent parameter 106 corresponding to the adjustment condition 108 based on the estimated state quantity including the adjustment record 111. Then, based on the learning result, one of the command parameters is determined as the estimated excellent parameter 107 based on the unadjusted condition 110. Here, based on the unadjusted condition 110, the command parameter for executing the positioning operation that gives a good evaluation result 109 may also be determined as the estimated excellent parameter 107. In the following description, as an example, the estimation unit 8a has an estimation learning unit 80 that learns an estimation function Es for calculating the estimated excellent parameter based on the unadjusted condition 110. The estimation learning unit 80 has: an error calculation unit 801 that calculates an error er between the adjustment record 111 and the estimated excellent parameter 107; and an estimation function update unit 802 that updates the estimation function Es based on the error er. Further, the estimation learning unit 80 has an estimated value determination unit 803 that determines the estimated excellent parameter 107 based on the estimation function Es and the unadjusted condition 110. In addition, in the error calculation unit 801 calculates the error er based on the adjustment record 111, but the error er may also be calculated based on the estimated state quantity including the adjustment record 111.
[0190] The estimation learning unit 80 may, for example, also learn the relationship between the excellent parameter 106 and the adjustment condition 108 according to a neural network model by so-called supervised learning. Here, by supplying a large amount of data sets of a certain input and result (label) to the learning device, the characteristics of these data sets are learned, and the model for estimating the result based on the input is called supervised learning. A neural network is composed of the following layers, that is, an input layer composed of multiple neurons, an intermediate layer (hidden layer) composed of multiple neurons, and an output layer composed of multiple neurons. The intermediate layer may be 1 layer or may be 2 layers or more.
[0191] FIG. 9 is a diagram showing an example of the structure of the neural network in the present embodiment. For easy understanding of the description, the number of inputs of the neural network is 3 and the number of layers is 3. If a plurality of inputs are input to the input layer composed of X1 to X3, the value obtained by multiplying the input value by the weight W1 composed of w11 to w16 is input to the intermediate layer composed of Y1 and Y2. And, the value obtained by multiplying the input value of the intermediate layer by the weight W2 composed of w21 to w26 is output from the output layer composed of Z1 to Z3. This output result changes depending on the values of the weight W1 and the weight W2. The neural network shown learns the relationship between the adjustment condition 108 and the excellent parameter 106 corresponding to the adjustment condition 108 through supervised learning according to the data set created based on the adjustment record 111 input to the estimation learning unit 80. That is, in an example of the learning implemented by the neural network in the present embodiment, the adjustment condition 108 is input to the input layer, and the weights W1 and W2 are adjusted so that the evaluation result 109 of the positioning operation using the excellent parameter 106 output from the output layer becomes excellent. In addition, a positioning control device equipped with a trained learner that has performed the learning described in the present embodiment may be configured. The trained learner may be composed of trained data, a trained program, or a combination thereof. By using the trained learner, learning using other positioning control devices can be utilized, so that a positioning control device capable of achieving high-performance positioning can be provided without newly performing learning.
[0192] In addition, the structure described in the present embodiment may be applied to other structures. As an example of other structures, there can be cited the estimation unit 8 of the positioning control device 1000a shown, the estimation unit 8 of the positioning control device 1000b shown, or the estimation unit 8 of the positioning control device 1000c shown. Moreover, in the positioning control device 1000a, the positioning control device 1000b, or the positioning control device 1000c, the estimation of the excellent parameter 107 can also be performed with high accuracy or high efficiency.
[0193] As described above, according to the present embodiment, similarly to the first embodiment, a positioning control device that requires a short adjustment time and can perform a high-performance positioning operation can be provided. And the positioning control device 1000d of the present embodiment has an estimation unit 8a, and the estimation unit 8a has an estimation learning unit 80. The estimation learning unit 80 learns the relationship between the excellent parameter 106 and the adjustment condition 108 based on the estimation state quantity including the adjustment record 111, and determines the estimated excellent parameter 107 based on the learning result. Therefore, the estimated excellent parameter 107 can be determined more accurately in a shorter time. Moreover, even for the mechanical load 3 with complex characteristics, the excellent parameter 106 that can achieve a positioning operation with a good evaluation result 109 can be efficiently determined in a shorter time.
[0194] Explanation of reference numerals
[0195] 1 Motor, 2 Instruction generation unit, 3 Mechanical load, 4 Control unit, 5 State sensor, 6 Evaluation unit, 7, 7a, 7b Adjustment unit, 8, 8a Estimation unit, 9 Adjustment management unit, 10, 10a Adjustment record storage unit, 11 Operating condition determination unit, 70 Adjustment learning unit, 80 Estimation learning unit, 101 State sensor signal, 103 Instruction signal, 105 Test parameter, 106 Excellent parameter, 107 Estimated excellent parameter, 108 Adjustment condition, 109 Evaluation result, 110 Unadjusted condition, 111 Adjustment record, 112 Additional adjustment condition, 113 Additional excellent parameter, 701 Reward calculation unit, 702 Value function update unit, 703 Intention determination unit, 801 Error calculation unit, 802 Estimation function update unit, 803 Estimated value determination unit, 1000, 1000a, 1000b, 1000c Positioning control device, 1102 Mechanical specifications, 2000 Control object, INT(n) Unknown interval.
Claims
1. A positioning control device that defines the operation of a motor in a positioning operation in which a mechanical load mechanically connected to the motor moves by a target moving distance based on operating conditions and a parameter that can be changed based on the operating conditions, namely, a command parameter. The positioning control device has: An adjustment unit that performs adjustment, that is, performs the positioning operation based on an adjustment condition as one of the operating conditions and a test parameter as one of the command parameters, and determines one of the command parameters as an excellent parameter corresponding to the adjustment condition based on an evaluation result obtained from a state sensor signal obtained by detecting any one of the position, speed, or acceleration of the motor or the mechanical load during the executed positioning operation. An adjustment record storage unit that stores a set of the adjustment condition and the excellent parameter corresponding to the adjustment condition as an adjustment record; and An estimation unit that determines one of the command parameters as an estimated excellent parameter corresponding to an unadjusted condition as one of the operating conditions based on the adjustment record, where the unadjusted condition is different from the adjustment condition stored as the adjustment record. The positioning control device further has an adjustment management unit that determines an additional adjustment condition as one of the operating conditions different from the adjustment condition. The adjustment unit performs the adjustment based on the additional adjustment condition determined by the adjustment management unit and determines one of the command parameters as an additional excellent parameter corresponding to the additional adjustment condition. The adjustment record storage unit further stores the set of the additional adjustment condition and the additional excellent parameter as an additional adjustment record. The adjustment unit performs the positioning operation based on the unadjusted condition and the estimated excellent parameter as a verification positioning operation. The adjustment management unit determines whether an evaluation result obtained from the state sensor signal during the verification positioning operation meets a predetermined criterion. If the criterion is not met, the determination of the additional adjustment condition is performed.
2. The positioning control device according to claim 1, wherein: When the criterion is met, the adjustment record storage unit stores the set of the unadjusted condition and the estimated excellent parameter as the adjustment record or the additional adjustment record.
3. The positioning control device according to claim 1 or 2, wherein: It has an operating condition determination unit that determines the adjustment condition or the unadjusted condition based on at least any one of the mechanical specifications of the motor and the mechanical load, or the adjustment record.
4. The positioning control device according to any one of claims 1 to 3, wherein: The range of the operating conditions for configuring the adjustment conditions is defined as the adjustment range, and the operating conditions at both ends of the adjustment range are defined as the adjustment range ends. The unknown interval of the range of the operating conditions is defined as the range between two adjacent adjustment conditions included in the adjustment record and the range between the adjustment condition adjacent to the adjustment range end included in the adjustment record and the adjustment range end. The adjustment management unit determines the additional adjustment conditions in such a way that the additional adjustment conditions are configured in the unknown interval where the unadjusted conditions determined not to satisfy the reference are configured.
5. The positioning control device according to any one of claims 1 to 4, characterized in that The operating conditions include numerical parameters related to the operation of the motor, i.e., operating parameters, and the target moving distance is one of the operating parameters. The estimation unit estimates the estimated excellent parameter using a linear interpolation function that approximates the operating parameter and the excellent parameter as input and output, respectively.
6. The positioning control device according to any one of claims 1 to 5, characterized in that If the operating conditions and the command parameters are determined, the maximum value of the acceleration of the motor during the positioning operation executed based on the operating conditions and the command parameters is determined.
7. The positioning control device according to any one of claims 1 to 6, characterized in that The adjustment unit determines a plurality of test parameters corresponding to the adjustment conditions, executes the positioning operation through each group between the adjustment conditions and the determined test parameters, and determines one of the command parameters as the excellent parameter corresponding to the adjustment conditions based on the evaluation result obtained from the state sensor signal during the positioning operation.
8. The positioning control device according to any one of claims 1 to 7, characterized in that The estimation unit determines the estimated excellent parameter in such a way that the maximum acceleration during the positioning operation executed based on the unadjusted conditions and the estimated excellent parameter corresponding to the unadjusted conditions is smaller than the maximum acceleration during all the positioning operations executed based on the adjustment conditions and the excellent parameters corresponding to the adjustment conditions included in the adjustment record.
9. The positioning control device according to any one of claims 1 to 8, characterized in that It further has an evaluation unit that determines the evaluation result by evaluating the test parameters based on the state sensor signal. The evaluation unit determines the evaluation result based on the positioning time, which is the time from the start time of the positioning operation until the difference, i.e., the deviation, between the position of the mechanical load and the target moving distance is less than a predetermined value.
10. The positioning control device according to any one of claims 1 to 9, characterized in that It further has an evaluation unit that determines the evaluation result by evaluating the test parameters based on the state sensor signal. The evaluation unit determines the evaluation result based on the magnitude of overshoot, which is the distance that the position of the mechanical load exceeds the target moving distance and travels excessively toward the side opposite to the start position of the positioning operation when observed from the final arrival position of the positioning operation.
11. The positioning control device according to any one of claims 1 to 10, characterized in that the adjustment unit has an adjustment learning unit that learns the relationship between the adjustment state quantity including the evaluation result and the test parameter, and determines the test parameter based on the learning result.
12. The positioning control device according to any one of claims 1 to 10, characterized in that the adjustment unit has an adjustment learning unit that determines the test parameter based on a trained model that has learned the relationship between the adjustment state quantity including the evaluation result and the test parameter.
13. The positioning control device according to any one of claims 1 to 12, characterized in that the estimation unit has an estimation learning unit that learns the relationship between the excellent parameter and the adjustment condition based on the estimation state quantity including the adjustment record, and determines the estimated excellent parameter based on the learning result.
14. The positioning control device according to any one of claims 1 to 12, characterized in that the estimation unit has an estimation learning unit that determines the estimated excellent parameter based on a trained model that has learned the relationship between the excellent parameter and the adjustment condition based on the estimation state quantity including the adjustment record.
15. The positioning control device according to claim 1 or 4, characterized in that the target moving distance is specified by the operating condition, the adjustment management unit sets a reference distance, which is a distance that is longer as the maximum speed of the motor determined in advance is greater and shorter as the maximum acceleration of the motor determined in advance is greater, the adjustment management unit further determines the additional adjustment condition in such a way that the target moving distance of the additional adjustment condition is the same as or shorter than the reference distance.
16. A positioning control method that specifies the operation of the motor in a positioning operation in which a mechanical load mechanically connected to the motor moves by a target moving distance by an operating condition and a command parameter that can be changed based on the operating condition, in this positioning control method, adjustment is performed, that is, the positioning operation based on an adjustment condition as one of the operating conditions and a test parameter as one of the command parameters is performed, and based on the evaluation result obtained from a state sensor signal obtained by detecting any one of the position, speed, or acceleration of the motor or the mechanical load during the performed positioning operation, one of the command parameters is determined as an excellent parameter corresponding to the adjustment condition based on the adjustment condition, and the set of the adjustment condition and the excellent parameter corresponding to the adjustment condition is saved as an adjustment record. Based on the adjustment record, one of the instruction parameters is determined as a presumptive excellent parameter corresponding to an unadjusted condition that is one of the operating conditions, and the unadjusted condition is different from the adjustment condition saved as the adjustment record. An additional adjustment condition that is one of the operating conditions and is different from the adjustment condition is determined. Based on the determined additional adjustment condition, the adjustment is performed, and one of the instruction parameters is determined as an additional excellent parameter corresponding to the additional adjustment condition. The group of the additional adjustment condition and the additional excellent parameter is further saved as an additional adjustment record. The positioning action based on the unadjusted condition and the presumptive excellent parameter is performed as a verification positioning action. It is determined whether the evaluation result obtained from the state sensor signal during the verification positioning action satisfies a predetermined criterion. When the criterion is not satisfied, the determination of the additional adjustment condition is performed.
Citation Information
Patent Citations
Method and apparatus for automatically adjusting motor controller
JP2007135344A
Control unit and control method of motor
JP2005110396A
Optimal operation pattern selection method for motor, optimal operation pattern selection program for motor, and motor selection device
US20160140264A1