Control system, control method, and program

JPWO2024166555A5Pending Publication Date: 2025-10-20
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2024576159
Authority / Receiving Office
JP · JP
Patent Type
Applications
Filing Date
2025-07-16
Publication Date
2025-10-20

AI Technical Summary

Technical Problem

Model predictive control systems face challenges in effectively suppressing disturbances in multi-input/output plants, particularly due to high computational demands and delayed processing of disturbance estimators, which can lead to deterioration of the disturbance suppression function.

Method used

A control system that includes a disturbance estimation section, a model predictive control section, and a correction section, where different processors handle model predictive control and disturbance estimation independently, allowing for shorter output cycles for disturbance estimation and correction, thereby improving the practicality and effectiveness of disturbance suppression.

Benefits of technology

This approach enhances the practicality of model predictive control and disturbance suppression functions by reducing the likelihood of deterioration and allowing for more efficient processing, even with less expensive processors, and ensures that the disturbance suppression function operates effectively without deviating from manipulated variable constraints.

✦ Generated by Eureka AI based on patent content.
Patent Text Reader

Abstract

The present invention improves the practicality relating to a model prediction control function and a disturbance suppression function. A disturbance inference unit (2) infers, on the basis of a first operation amount and a control amount, disturbance to a control object (Ob1) to which the control amount in accordance with the first operation amount is outputted, and outputs an inference signal including a disturbance amount. A model prediction control unit (3) calculates, on the basis of the control amount, a second operation amount, and outputs a control signal including the second operation amount. A correction unit (4) corrects the second operation amount by using correction information based on the disturbance amount, and outputs an output signal including the first operation amount which is the corrected second operation amount. The model prediction control unit (3) has one or more first processors. The disturbance inference unit (2) has one or more second processors. The model prediction control unit (3) outputs the control signal at a first output cycle. The disturbance inference unit (2) outputs the inference signal at a second output cycle. A correction unit (4) outputs the output signal at a third output cycle. The second output cycle and the third output cycle are both shorter than the first output cycle.
Need to check novelty before this filing date? Find Prior Art

Description

Control system, control method, and program

[0001] The present disclosure generally relates to a control system, a control method, and a program, and more particularly to a control system, a control method, and a program having a model predictive control function.

[0002] Patent Document 1 discloses a control system including a multi-input / output plant (control target) and a control device that uses a model predictive control function to predict the behavior of the multi-input / output plant when a disturbance is applied and controls the disturbance. The control device includes a controlled variable prediction error calculation unit, a disturbance estimation unit, and a disturbance suppression unit. The controlled variable prediction error calculation unit calculates a controlled variable prediction error, which is the difference between a controlled variable prediction value calculated by the model predictive control function and a controlled variable signal output from the multi-input / output plant. The disturbance estimator calculates a disturbance estimate based on a step response terminal value previously acquired by the model predictive control function and the controlled variable prediction error calculated by the controlled variable prediction error calculation unit. The disturbance suppression unit corrects the controlled variable calculated by the model predictive control function based on the disturbance estimate calculated by the disturbance estimator and outputs a corrected controlled variable. According to Patent Document 1, even when model predictive control is applied to a multi-input / output plant, the disturbance suppression function is improved, can be realized at low cost with a small amount of calculation, can be configured only from the results of a step response test, and does not violate the controlled variable constraints of the model predictive control.

[0003] JP 2010-204784 A

[0004] However, when the amount of calculation in the model predictive control is greater than the amount of calculation in the disturbance estimator, for example, delaying the processing of the disturbance estimator in accordance with the model predictive control may result in a decrease in the function of removing or suppressing disturbances (disturbance suppression function).Patent Document 1 discloses that the disturbance estimator can be executed at a control cycle that is faster than the control cycle of the model predictive control function, but further improvement is desired in terms of practicality.

[0005] The present disclosure has been made in view of the above-mentioned circumstances, and aims to provide a control system, a control method, and a program that can improve the practicality of a model predictive control function and a disturbance suppression function.

[0006] A control system according to one aspect of the present disclosure outputs an output signal including a first manipulated variable to a controlled object. The control system includes a disturbance estimator, a model predictive control unit, and a correction unit. The disturbance estimator estimates a disturbance generated or applied in the controlled object, which outputs a controlled variable signal including a controlled variable in response to the first manipulated variable, based on the first manipulated variable and the controlled variable, and outputs an estimated signal including the disturbance variable as the estimation result. The model predictive control unit calculates a second manipulated variable based on the controlled variable and outputs a control signal including the second manipulated variable. The correction unit corrects the second manipulated variable using correction information based on the disturbance variable, and outputs the output signal including the first manipulated variable, which is the corrected second manipulated variable. The model predictive control unit includes one or more first processors that perform processing related to model predictive control. The disturbance estimator includes one or more second processors that perform processing related to disturbance estimation. The model predictive control unit outputs the control signal at a first output period. The disturbance estimator outputs the estimated signal at a second output period. The correction unit outputs the output signal at a third output period, the second output period and the third output period both being shorter than the first output period.

[0007] A control method according to one aspect of the present disclosure is a control method for a control system that outputs an output signal including a first manipulated variable to a controlled object. The control method includes a disturbance estimation step, a model predictive control step, and a correction step. In the disturbance estimation step, a disturbance generated or applied in the controlled object, which outputs a controlled variable signal including a controlled variable in response to the first manipulated variable, is estimated based on the first manipulated variable and the controlled variable, and an estimated signal including the disturbance variable is output as the estimated result. In the model predictive control step, a second manipulated variable is calculated based on the controlled variable, and a control signal including the second manipulated variable is output. In the correction step, the second manipulated variable is corrected using correction information based on the disturbance variable, and the output signal including the first manipulated variable, which is the corrected second manipulated variable, is output. The model predictive control step is performed by one or more first processors that execute processing related to model predictive control. The disturbance estimation step is performed by one or more second processors that execute processing related to disturbance estimation. In the model predictive control step, the control signal is output at a first output period. In the disturbance estimation step, the estimated signal is output at a second output period. In the correcting step, the output signal is output at a third output period, both of which are shorter than the first output period.

[0008] A program according to one aspect of the present disclosure is a program for causing one or more processors to execute the above-described control method.

[0009] The present disclosure has the advantage of improving the practicality of the model predictive control function and the disturbance suppression function.

[0010] FIG. 1 is a block diagram of a control system according to one embodiment. FIG. 2A is a block diagram of a model predictive control unit in the control system. FIG. 2B is a block diagram of a disturbance estimator in the control system. FIG. 3A is a comparative graph of manipulated variables when correction by a corrector in the control system is not applied. FIG. 3B is a graph of manipulated variables when correction by a corrector in the control system is applied. FIG. 4 is a flowchart for explaining the operation of the control system. FIG. 5 is a block diagram for explaining an application example 1 of the control system. FIG. 6 is a block diagram for explaining an application example 2 of the control system. FIG. 7 is a block diagram of a modified example 1 of the control system. FIG. 8 is a block diagram of a modified example 2 of the control system. FIG. 9 is a block diagram of a modified example 3 of the control system.

[0011] (Summary) Below, a control system, a control method, and a program according to embodiments and modifications will be described with reference to the drawings. Note that the following embodiment and modifications are merely one of various embodiments of the present disclosure. Furthermore, the following embodiment and modifications can be modified in various ways depending on the design, etc., as long as the object of the present disclosure can be achieved. Furthermore, the configuration of each of the modifications can be appropriately combined with the following embodiment or other modifications.

[0012] A control system 1 (see FIG. 1 ) according to one embodiment is a system that uses the function of model predictive control (hereinafter sometimes abbreviated as "MPC"), which performs optimization while predicting future responses at each time. The control system 1 outputs an output signal including a first manipulated variable to a control object Ob1 (see FIG. 1 ). That is, the control system 1 uses the prediction result by the MPC to provide a control input (first manipulated variable) to the control object Ob1. Specifically, the MPC solves an optimization problem for each control period based on a model of the control object Ob1, and the control system 1 uses the result to perform feedback control of the control object Ob1.

[0013] The type of the control object Ob1 referred to here is not particularly limited. For example, the control object Ob1 may include a servo motor that drives a load device and a detector (encoder, etc.) that detects the position, speed, etc. of the servo motor.

[0014] If the control object Ob1 includes a servo motor, for example, the first manipulated variable may be one or more control values ​​related to the servo motor. For example, the one or more control values ​​may be values ​​of one or more parameters of the servo motor's drive current, drive voltage, torque, thrust, speed, and position. The control object Ob1 outputs a control variable signal including a control variable according to the first manipulated variable. The control variable is a quantity indicating the state of the control object Ob1, and may include the position, speed, etc. of the servo motor detected by a detection unit. The MPC performs feedback control using the control variable (the position, speed, etc. of the servo motor) detected by the detection unit.

[0015] As shown in FIG. 1 , the control system 1 includes a disturbance estimation unit 2 , a model predictive control unit 3 , and a correction unit 4 .

[0016] The disturbance estimator 2 estimates a disturbance that has occurred in or been applied to the control object Ob1 based on the first manipulated variable and the controlled variable, and outputs an estimated signal including the disturbance amount that is the estimation result.

[0017] The model predictive control unit 3 has an MPC function. The model predictive control unit 3 calculates a second manipulated variable based on the control variable and outputs a control signal including the second manipulated variable. The correction unit 4 corrects the second manipulated variable using correction information based on the disturbance variable and outputs an output signal including the first manipulated variable, which is the corrected second manipulated variable.

[0018] In short, the control system 1 has an MPC function and a function (disturbance suppression function) of estimating the amount of disturbance and correcting the manipulated variable predicted by the MPC to make it less susceptible to the influence of the disturbance.

[0019] The model predictive control unit 3 has one or more first processors P1 (see FIG. 2A) that execute processing related to model predictive control. The disturbance estimator 2 has one or more second processors P2 (see FIG. 2B) that execute processing related to disturbance estimation. The model predictive control unit 3 outputs a control signal at a first output period. The disturbance estimator 2 outputs an estimated signal at a second output period. The corrector 4 outputs an output signal at a third output period. Both the second output period and the third output period are shorter than the first output period.

[0020] According to the control system 1 described above, the model predictive control function and the disturbance estimation function are realized by different processors, and the second output period of the disturbance estimator 2 and the third output period of the corrector 4 are both shorter than the first output period of the model predictive controller 3, i.e., are set independently of the first output period of the model predictive controller 3. Therefore, the disturbance removal and suppression function (disturbance suppression function) is less likely to be degraded than, for example, when the processing of the disturbance estimator 2 is delayed in accordance with the MPC. Furthermore, a configuration can be stably realized in which the second output period of the disturbance estimator 2 and the third output period of the corrector 4 can be easily set independently of the first output period of the model predictive controller 3. In particular, for example, the model predictive control function can be provided in a first device having a high-performance (relatively expensive) processor, and the disturbance estimation function can be provided in a second device having a lower-performance (relatively inexpensive) processor than the processor of the first device. For example, by placing the second device closer to the control object Ob1 than the first device and reducing the length of the connection cable connecting the second device and the control object Ob1, communication delays can be reduced, making it easier to prevent a deterioration in the disturbance suppression function. As a result, the control system 1 has the advantage of being able to improve the practicality of the model predictive control function and the disturbance suppression function.

[0021] A control method according to another aspect is a control method for a control system 1. The control method includes a disturbance estimation step, a model predictive control step, and a correction step. In the disturbance estimation step, a disturbance generated or applied in a control object Ob1, which outputs a control variable signal including a control variable according to a first manipulated variable, is estimated based on the first manipulated variable and the control variable, and an estimated signal including the disturbance variable is output as the estimated result. In the model predictive control step, a second manipulated variable is calculated based on the control variable, and a control signal including the second manipulated variable is output. In the correction step, the second manipulated variable is corrected using correction information based on the disturbance variable, and an output signal including the first manipulated variable, which is the corrected second manipulated variable, is output. The model predictive control step is performed by one or more first processors P1 that execute processing related to model predictive control. The disturbance estimation step is performed by one or more second processors P2 that execute processing related to disturbance estimation. In the model predictive control step, a control signal is output at a first output period. In the disturbance estimation step, an estimated signal is output at a second output period. In the correction step, an output signal is output at a third output period. The second output period and the third output period are both shorter than the first output period. The above control method has an advantage that it is possible to improve the practicality of the model predictive control function and the disturbance suppression function.

[0022] This control method is used on a computer system (control system 1). That is, this control method can also be embodied as a computer program. A program according to one aspect is a program for causing one or more processors to execute the above control method. The program may be recorded on a computer-readable non-transitory recording medium.

[0023] (Details) (1) Overall Configuration Hereinafter, the overall system including the control system 1 according to this embodiment and its peripheral configuration will be described in detail with reference to FIGS. 1, 2A, and 2B.

[0024] The control system 1 is electrically connected to a control object Ob1 (plant) and configured to output an output signal (electrical signal) including a first manipulated variable (control input) to the control object Ob1. As shown in Fig. 1 , a disturbance d (unwanted signal) may be added to the output signal output from the control system 1 to the control object Ob1. In addition to being added to the output signal, the disturbance d may also be generated or added in the control object Ob1.

[0025] The following description will be given assuming that there is one type of first manipulated variable. There is one control input (first manipulated variable) for the control object Ob1. The first manipulated variable may be, for example, a manipulated variable related to a (driving) current for driving and controlling the control object Ob1. However, there may be multiple types of first manipulated variables (current, voltage, position, torque, speed, etc.). The control system 1 may output output signals corresponding to each type of first manipulated variable to the control object Ob1.

[0026] As described above, the control object Ob1 may include, for example, a load device, a servo motor that drives the load device, and a detector (encoder, etc.) that detects the position, speed, etc. of the servo motor. The control object Ob1 outputs a control amount signal that includes a control amount (plant output) in accordance with the input first manipulated variable (which may include the disturbance d). The control amount (plant output) is a quantity that indicates the state of the control object Ob1.

[0027] The following description will be given assuming that there is one type of control variable. In other words, there is one plant output (control variable) output from the control object Ob1. As an example, in the control object Ob1, a servo motor is driven according to a drive current (first manipulated variable) that may include a disturbance d, and a detection unit outputs a control variable signal including the speed (control variable) of the servo motor to the outside (control system 1). However, there may be multiple types of control variables (current, voltage, position, torque, speed, etc.). The control object Ob1 may output control variable signals corresponding to each type of control variable to the control system 1. In other words, the control object Ob1 may be a multi-input / output plant.

[0028] In the following description, it is assumed that the signal period of the control amount signal output from the control object Ob1 is approximately equal to the signal period of the output signal including the control input (first manipulated variable) to the control object Ob1.

[0029] The control system 1 includes a computer system having one or more processors and a memory. At least some of the functions of the control system 1 are realized by the processor of the computer system executing a program recorded in the memory of the computer system. The program may be recorded in the memory, or may be provided via a telecommunications line such as the Internet, or may be provided by being recorded on a non-transitory recording medium such as a memory card.

[0030] 1, the control system 1 includes a disturbance estimation unit 2, a model predictive control unit 3, a correction unit 4, a correction unit 5, an upsampling unit Up1, and a D / A conversion unit 6. In other words, the control system 1 has a function as the disturbance estimation unit 2, a function as the model predictive control unit 3, a function as the correction unit 4, a function as the correction unit 5, a function as the upsampling unit Up1, and a function as the D / A conversion unit 6. These multiple functions of the control system 1 may be housed in a single housing, or may be housed separately in multiple housings.

[0031] The model predictive control unit 3 has an MPC function. As shown in FIG. 2A , the model predictive control unit 3 has a storage unit 34. The storage unit 34 includes an electrically rewritable non-volatile semiconductor memory such as a flash memory. The storage unit 34 stores a prediction model for the control object Ob1. As the prediction model, for example, a transfer function model or a state space model may be used.

[0032] The model predictive control unit 3 is electrically connected to the control object Ob1 so as to receive a control variable signal from the control object Ob1. As shown in FIG. 2A , the model predictive control unit 3 has one or more (e.g., one) first processors P1 that operate in a first operating period to execute processing related to model predictive control. The first operating period corresponds, for example, to a sampling period Tmpc of data related to the control variable in the control variable signal output from the control object Ob1. The model predictive control unit 3 uses the prediction model to calculate a second manipulated variable based on the control variable for each sampling period Tmpc (first operating period). The second manipulated variable is a physical variable of the same type as the first manipulated variable. For example, if the first manipulated variable is a manipulated variable related to the drive current of a servo motor, the second manipulated variable is also a manipulated variable related to the drive current of the servo motor.

[0033] The model predictive control unit 3 outputs a control signal including the calculated second manipulated variable. The control signal output from the model predictive control unit 3 is a digital signal. As shown in FIG. 1 , the model predictive control unit 3 outputs the control signal to the upsampling unit Up1 at the subsequent stage.

[0034] Here, the model predictive control unit 3 outputs a control signal at a first output period. The first output period is longer than or equal to the first operating period. In this embodiment, for ease of understanding, it is assumed that the first output period is equal to the first operating period (sampling period Tmpc). Therefore, in the following description, it may also be referred to as the first output period Tmpc (see FIG. 1). However, the first output period may be longer than the sampling period Tmpc.

[0035] As shown in FIG. 2A, the first processor P1 includes a calculation unit 31, a first sampling unit 32, and a timer 33 that operates at a constant cycle.

[0036] The first sampling unit 32 downsamples the control amount to a first operating period (sampling period Tmpc). The first sampling unit 32 may include a downsampler. The control amount signal including the control amount output from the control object Ob1 may be a continuous analog signal or a discrete digital signal. If the signal period is shorter than the first operating period (sampling period Tmpc), the first processor P1 performs data sampling by using the first sampling unit 32 to convert the control amount to the first operating period (sampling period Tmpc), which is longer than the signal period of the control amount signal.

[0037] The calculation unit 31 performs a finite-time prediction of the second manipulated variable using a control variable indicating the state of the control object Ob1. Specifically, the calculation unit 31 operates at a first operating cycle to perform calculation processing related to model predictive control on the sampling results by the first sampling unit 32. The calculation unit 31 operates at a first operating cycle based on a constant cycle of the timer 33 to perform calculation processing related to model predictive control. For example, the calculation unit 31 operates at the first operating cycle based on the clock cycle of the timer 33.

[0038] Incidentally, the control object Ob1 may be affected by a disturbance d, and the control variable indicating the state of the control object Ob1 may also be affected by the disturbance d. For example, if the control variable indicating the state of the control object Ob1 is the position or speed of a servo motor, the position or speed (control variable) taking the disturbance d into account may be input to the model predictive control unit 3. In this embodiment, the control system 1 includes a disturbance estimator 2 as a function of removing the disturbance d from the prediction result (second manipulated variable) output from the model predictive control unit 3.

[0039] The disturbance estimation unit 2 has one or more (one in this example) second processors P2 (see FIG. 2B ) that operate in a second operating cycle and execute processing related to disturbance estimation. As shown in FIG. 1 , the disturbance estimation unit 2 is electrically connected to the control object Ob1 to receive a control variable signal from the control object Ob1. The disturbance estimation unit 2 is also electrically connected to a connection point N1 (node) between the correction unit 4 and the D / A conversion unit 6 to receive an output signal (first manipulated variable) output from the correction unit 4. The disturbance estimation unit 2 estimates a disturbance generated or applied to the control object Ob1 based on the first manipulated variable output from the correction unit 4 and the control variable from the control object Ob1, and outputs an estimated signal including the estimated disturbance quantity. The disturbance estimation unit 2 is configured as a disturbance observer (DOB) that calculates (estimates) the disturbance quantity based on the first manipulated variable and the control variable. The estimated signal output from the disturbance estimation unit 2 is a digital signal.

[0040] The disturbance estimation unit 2 outputs an estimation signal at a second output period. The second output period is longer than or equal to the second operation period. In this embodiment, for ease of understanding, it is assumed that the second output period is equal to the second operation period (sampling period Tdob). Therefore, in the following description, the second output period may also be referred to as the second output period Tdob (see FIG. 1). However, the second output period may be longer than the sampling period Tdob.

[0041] As shown in FIG. 2B , the second processor P2 includes a calculation unit 21 and a second sampling unit 22. The second sampling unit 22 samples data related to the control amount in the control amount signal from the control object Ob1, with the second operating period as the sampling period Tdob. The calculation unit 21 operates at the second operating period to perform calculation processing related to estimation of the disturbance amount on the sampling result by the second sampling unit 22. The calculation unit 21 estimates the disturbance amount by comparing the first manipulated variable output from the correction unit 4 with the control amount from the control object Ob1. The disturbance estimation unit 2 outputs an estimation signal including the calculation result (disturbance amount) of the calculation unit 21 at the second output period Tdob and feeds it back to the control input to the control object Ob1. In this embodiment, a correction unit 5 is provided downstream of the disturbance estimation unit 2, and the estimation signal from the disturbance estimation unit 2 is input to the correction unit 5.

[0042] In this embodiment, the second output period Tdob is shorter than the first output period Tmpc, and Tmpc = n Tdob (n > 1). In particular, in this embodiment, where the constant period is Ts, the first operation period is Tmpc, and the second operation period is Tdob, the first output period Tmpc and the second output period Tdob are set so as to satisfy Tmpc > Tdob ≧ Ts. In other words, the first output period Tmpc and the second output period Tdob are set independently so as not to be dependent on each other.

[0043] The upsampling unit Up1 converts a control signal having a first output period Tmpc output from the model predictive control unit 3 into a signal having a second output period Tdob and outputs the converted signal to the correction unit 4. The upsampling unit Up1 may include an upsampler. In this embodiment, the second output period Tdob is shorter than the first output period Tmpc. Therefore, the upsampling unit Up1 increases (upsamples) the period of the control signal from the model predictive control unit 3 so that the subsequent correction unit 4 can easily correct the second manipulated variable, that is, so that the timing of the correction calculation for the manipulated variable is aligned with the second output period Tdob. The upsampling unit Up1 outputs the period-converted control signal to the correction unit 4.

[0044] The correction unit 4 corrects (compensates) the second manipulated variable using correction information based on the estimated disturbance amount, and outputs an output signal including the first manipulated variable, which is the corrected (compensated) second manipulated variable. The correction unit 4 outputs the output signal at a third output period. The output signal output from the correction unit 4 is a digital signal. The second output period Tdob and the third output period are both shorter than the first output period Tmpc. In this embodiment, as an example, the second output period Tdob is equal to the third output period. However, the second output period Tdob may be different from the third output period.

[0045] In this embodiment, a D / A conversion unit 6 is provided downstream of the correction unit 4, and the correction unit 4 outputs an output signal including the first operation amount, which is the second operation amount after correction, to the D / A conversion unit 6.

[0046] In the present embodiment, the correction information is information that includes the correction result of the correction unit 5, which will be described later. However, it is not essential that the correction unit 5 is provided in the control system 1. If the correction unit 5 is not provided, the correction information may be information that is based on the disturbance amount included in the estimated signal from the disturbance estimation unit 2.

[0047] Before describing the correction unit 5, the function of the modification unit 4 in the case where the correction unit 5 is not provided will be described with reference to Fig. 3A (graph). In the graph of Fig. 3A, the horizontal axis represents time (t) and the vertical axis represents the manipulated variable (u). That is, Fig. 3A shows time-series data of the manipulated variable.

[0048] The solid line in Fig. 3A indicates data (digital signal waveform) of the second manipulated variable Umpc output from the model predictive control unit 3. In Fig. 3A, the period from time t = k to time t = k+1 in the second manipulated variable Umpc corresponds to one period (before upsampling by the upsampling unit Up1), i.e., the first output period Tmpc.

[0049] Furthermore, the difference between the solid line and the dashed line in FIG. 3A indicates data (digital signal waveform) of a correction amount Udob (correction information) corresponding to the disturbance amount, which may be added to (or subtracted from) the second manipulated variable Umpc indicated by the solid line. The correction amount Udob and the disturbance amount from the disturbance estimation unit 2 have the same absolute value but opposite signs. The correction amount Udob is an amount for canceling out the disturbance d, and if the sign of the disturbance amount is positive, the sign of the correction amount Udob will be negative, and if the sign of the disturbance amount is negative, the sign of the correction amount Udob will be positive. Hereinafter, the disturbance amount estimated by the disturbance estimation unit 2 may be expressed as d^. In the following equations (5) and (8), d^ is expressed as

[0050]

[0051] It is written as follows.

[0052] 3A, the second output period Tdob of the disturbance amount d^ output from the disturbance estimator 2, i.e., the second output period Tdob of the correction amount Udob, is one-fourth the first output period Tmpc of the second manipulated variable Umpc output from the model predictive control unit 3. In other words, Tmpc = N·Tdob, where N=4. Therefore, it can be said that the output from the disturbance estimator 2 has a higher frequency than the output from the model predictive control unit 3.

[0053] The correction unit 4 adds (or may subtract) a correction amount Udob to the second manipulated variable Umpc (after being upsampled by the upsampling unit Up1) every second output period Tdob, and outputs an output signal.

[0054] Incidentally, as can be seen from FIG. 3A, if the function of the correction unit 5 is not provided, adding the correction amount Udob to the second manipulated variable Umpc may cause the first manipulated variable to exceed the upper limit value Umax (described later).

[0055] The corrector 5 is configured to correct the disturbance amount estimated by the disturbance estimator 2 so as to satisfy a predetermined constraint condition. In this embodiment, as shown in Fig. 1, the corrector 5 is provided between the disturbance estimator 2 and the corrector 4. The corrector 4 uses the correction result of the corrector 5 as correction information to correct the second manipulated variable.

[0056] In this embodiment, the predetermined constraint condition is that the value related to the first manipulated variable based on the corrected disturbance amount falls within a predetermined constraint range having a lower limit and an upper limit. The "constraint condition" referred to here refers to a condition related to the constraint of the device (control object Ob1) and / or a condition related to the power supply voltage (e.g., maximum voltage) of the device's controller (e.g., a servo driver), and may vary depending on the type and specifications (standards) of the devices included in the control system. Hereinafter, the "value related to the first manipulated variable" refers to the value of the first manipulated variable. However, the "value related to the first manipulated variable" may also refer to the amount of change in the first manipulated variable.

[0057] The function of the correction unit 5 will now be described with reference to FIG. 3B (graph). In the graph of FIG. 3B, similar to the graph of FIG. 3A, the horizontal axis represents time (t) and the vertical axis represents the manipulated variable (u). That is, FIG. 3B shows time-series data of the manipulated variable. Since FIG. 3B is the same as FIG. 3A except for the correction variable Udob (the difference between the solid line and the dashed line), the description thereof will be omitted where appropriate.

[0058] In this embodiment, as shown in FIGS. 3A and 3B , a lower limit Umin and an upper limit Umax are set for the corrected second manipulated variable Umpc. The corrector 5 corrects the disturbance amount so that, when the corrector 4 adds the correction amount Udob to the second manipulated variable Umpc every second output period Tdob, the disturbance amount falls within a predetermined constraint range defined by the lower limit Umin and the upper limit Umax. For example, if the controlled object Ob1 is a servo motor, if the drive current (manipulated variable) input for control exceeds the upper limit Umax and falls outside the constraint range, the torque and speed of the servo motor may become saturated. In particular, if the manipulated variable is output to the controlled object Ob1 every second output period Tdob, which is shorter than the first output period Tmpc, i.e., frequently, as in this embodiment, the device (controlled object Ob1) and its controller may be exceeded.

[0059] The correction unit 5 corrects the disturbance amount before the processing by the correction unit 4 so that when the correction unit 4 adds the correction amount Udob corresponding to the disturbance amount to the second manipulated variable Umpc indicated by the solid line, the corrected second manipulated variable (i.e., the first manipulated variable) does not fall outside the constraint range at each second output period Tdob. For example, if the corrected second manipulated variable (first manipulated variable) exceeds an upper limit value Umax, the correction unit 5 corrects the disturbance amount before the processing by the correction unit 4 so that the disturbance amount coincides with the upper limit value Umax (see FIG. 3B ). Furthermore, for example, if the corrected second manipulated variable (first manipulated variable) is below a lower limit value Umin, the correction unit 5 corrects the disturbance amount before the processing by the correction unit 4 so that the disturbance amount coincides with the lower limit value Umin.

[0060] Specifically, if the second manipulated variable Umpc is modified by adding the modification variable Udob to the second manipulated variable Umpc, that is, the first manipulated variable is u', then u' = Umpc + Udob.

[0061] Here, the corrector 5 corrects the disturbance amount (which has the same absolute value as the correction amount Udob but has an opposite sign) so as to satisfy 0≦Umin≦u′≦Umax.

[0062] In other words, if the upper limit value of the correction amount Udob at time t=k is Udobmax(k) and the lower limit value of the correction amount Udob that satisfies the constraint on the second manipulated variable Umpc(k) at time t=k is Udobmin(k), these upper and lower limit values ​​can be obtained from the following equation (1). Note that the second manipulated variable Umpc(k) at time t=k is constant until time t=k+1, so the upper limit value Udobmax(k) and the lower limit value Udobmin(k) are also constant until time t=k+1 (see FIG. 3B). At time t=k+1, the second manipulated variable Umpc(k+1) is obtained, so the upper and lower limit values ​​of the correction amount Udob may also fluctuate.

[0063]

[0064] The correction unit 5 calculates the upper and lower limits of the correction amount Udob at times t=k, k+1, . . . based on equation (1).

[0065] Then, the correction unit 5 corrects the disturbance amount d^(k+i / N) (which has the same absolute value as the correction amount Udob(k+i / N) but has an opposite sign) so that the correction amount Udob(k+i / N) satisfies the following equation (2) in order to satisfy the constraint 0≦Umin≦u'≦Umax at time t=k+i / N (i=0, 1, ..., N-1). In the example of FIG. 3B, N in the following equation (2) is 4.

[0066]

[0067] The correction unit 5 has, for example, a storage unit (for example, an electrically rewritable nonvolatile semiconductor memory such as a flash memory) that stores information about the constraints (the upper limit value Umax and the lower limit value Umin). To perform the correction, the correction unit 5 acquires information about the second manipulated variable Umpc directly from the model predictive control unit 3, such as information about the second manipulated variable Umpc(k) at time t=k in the above example.

[0068] In this way, by correcting the disturbance amount in the correction unit 5 taking into account the constraints of the device and the constraints of the device's controller, it is no longer necessary for the model predictive control unit 3 to set device constraints or constraints of the device's controller for the second manipulated variable and calculate the second manipulated variable, which makes it possible to reduce the amount of MPC calculation and achieve faster MPC.

[0069] As described above, the "value related to the first manipulated variable" may be the amount of change in the first manipulated variable. In this case, the correction unit 5 calculates the upper limit value ΔUdobmax and the lower limit value ΔUdobmin of the amount of change in the correction variable Udob at times t=k, k+1, ..., based on the following equation (3). The amount of change ΔUmpc(k) in the second manipulated variable at time t=k in the following equation (3) is the difference between the second manipulated variable at time t=k and the second manipulated variable at time t=k-1, and is obtained from ΔUmpc(k) = Umpc(k) - Umpc(k-1). Because the amount of change ΔUmpc(k) in the second manipulated variable at time t=k is constant until time t=k+1, the upper limit value ΔUdobmax(k) and the lower limit value ΔUdobmin(k) are also constant until time t=k+1.

[0070]

[0071] Assuming that the change in the first manipulated variable is Δu', the upper limit of the change is ΔUmax, and the lower limit is ΔUmin, the correction unit 5 corrects the change in the disturbance variable Δd^(k+i / N) (which has the same absolute value but the opposite sign as the change in the correction variable ΔUdob(k+i / N)) so that the change in the correction variable ΔUdob(k+i / N) satisfies the following equation (4) in order to satisfy the constraint condition ΔUmin ≦ Δu' ≦ ΔUmax at time t = k+i / N (i = 0, 1, ..., N-1). Note that in the example of Figure 3B, N in the following equation (4) is 4.

[0072]

[0073] By imposing a constraint on the amount of change in the first manipulated variable in this way, vibration of the control object Ob1 can be suppressed.

[0074] The D / A converter 6 converts the output signal output from the corrector 4 into an analog signal and outputs it to the control object Ob1. The output terminal of the D / A converter 6 is electrically connected to the control input terminal of the control object Ob1. The output signal including the corrected second manipulated variable (i.e., the first manipulated variable) output by the corrector 4 is a digital signal that takes on discrete values. The D / A converter 6 converts the digital signal into a continuously changing analog signal and outputs it to the control object Ob1.

[0075] (2) Operation of the Control System A series of operation flows in the control system 1 will be described below with reference to Fig. 4. The flowchart shown in Fig. 4 is merely an example of the operation flow of the control system 1, and the order of processing may be changed as appropriate, and processing may be added or omitted as appropriate.

[0076] First, the control system 1 sets the first manipulated variable u'(t) at the current time t to the first manipulated variable u'(t-Tdob) at one time before with respect to the sampling period Tdob of the disturbance estimation unit 2 based on the following equation (5). Then, the first manipulated variable u'(0) at the current time t=0 is set to u'(t) (step ST1). Here, "one time before" refers to the time one sampling period Tdob before.

[0077]

[0078] Next, the control system 1 advances the current time t by Tdob (t=t+Tdob: step ST2), assuming that the time (future time) is one time later (that is, one sampling period Tdob later).

[0079] If the current time t advanced by X time is equal to or greater than the sampling period Tmpc of the model predictive control unit 3 (step ST3: No), the control system 1 executes MPC in the model predictive control unit 3 (step ST4: model predictive control step). Here, "X" corresponds to the number of cycles of the processing in step ST2, and in the first cycle, the current time t is advanced by X = "1" time (1 Tdob), and in the second cycle, the current time t is advanced by X = "2" time (2 Tdob). Furthermore, the control system 1 predicts the amount of disturbance in the disturbance estimation unit 2 (step ST5: disturbance estimation step).

[0080] On the other hand, if the current time t advanced by X time is less than the sampling period Tmpc of the model predictive control unit 3 (step ST3: Yes), the control system 1 does not execute MPC, but instead predicts the disturbance amount in the disturbance estimator 2 (step ST5: disturbance estimation step). In other words, MPC is executed every sampling period Tmpc.

[0081] The control system 1 corrects the disturbance amount predicted by the disturbance estimation unit 2 in the correction unit 5 (step ST6). Furthermore, the control system 1 corrects the second manipulated variable output from the model predictive control unit 3 based on the corrected disturbance amount (step ST7: correction step).

[0082] If the current time t advanced by X time is less than the sampling period Tmpc of the model predictive control unit 3 (step ST8: No), the control system 1 returns to step ST2, advances the current time t by another time (1 Tdob), and executes the processing from step ST3 onwards. If the current time t advanced by X time is equal to or greater than the sampling period Tmpc of the model predictive control unit 3 (step ST8: Yes), the control system 1 determines whether the control amount of the control object Ob1 in the model predictive control unit 3 has reached the end point of the target trajectory (step ST9).

[0083] When the model predictive control unit 3 determines that the control amount of the control object Ob1 has reached the end point of the target trajectory (step ST9: Yes), the control system 1 ends the processing. When the model predictive control unit 3 determines that the control amount of the control object Ob1 has not yet reached the end point of the target trajectory (step ST9: No), the control system 1 returns to step ST1.

[0084] (3) Application Examples of the Control System Application examples of the control system 1 according to this embodiment will be described with reference to FIGS. 5 and 6. FIG.

[0085] Fig. 5 shows a block diagram of application example 1 of the control system 1. In Fig. 5, a PLC 100 (programmable logic controller), a servo driver 200, a motor 300 (servo motor), and a load device 400 are shown.

[0086] The load device 400 corresponds to a part of the control object Ob1. The load device 400 may include, for example, a mechanical mechanism such as a ball screw mechanism, a gear mechanism, or a belt mechanism. The load device 400 is driven by receiving power from the motor 300. The motor 300 is not particularly limited and may be a rotary motor or a linear motor. The motor 300 corresponds to a part of the control object Ob1. The motor 300 is, for example, a three-phase brushless motor.

[0087] The servo driver 200 includes a processing unit 201. The processing unit 201 includes a computer system having one or more processors and a memory. At least some of the functions of the processing unit 201 are realized by the processor of the computer system executing a program stored in the memory of the computer system. The program may be stored in the memory, provided via a telecommunications line such as the Internet, or provided in a non-transitory recording medium such as a memory card. The processing unit 201 performs feedback control to determine a control value based on a control signal from the PLC 100 and a detection signal from a detection unit that detects the state (position, speed, etc.) of the motor 300, and controls the drive of the motor 300 to perform a predetermined task. The control value may include, for example, a command value for the position of the motor 300, a command value for the torque (or thrust) of the motor 300, and a command value for the speed of the motor 300. The predetermined task may be, for example, mounting electronic components or transporting a product.

[0088] The servo driver 200 further includes an inverter circuit. The processing unit 201 controls the inverter circuit based on the determined control value to adjust the power (drive current) supplied to the motor 300.

[0089] The PLC 100 is a host controller and is connected to a plurality of servo drivers 200 (only one of which is shown in FIG. 5 ) so as to be able to communicate bidirectionally. The PLC 100 has a processing unit 101. The processing unit 101 generates control signals including operation commands related to predetermined tasks and transmits them to each servo driver 200 to control it.

[0090] In application example 1, among the multiple functions of the control system 1, the function of the model predictive control unit 3 (first processor P1) is implemented in the PLC 100, and the functions of the disturbance estimation unit 2 (second processor P2), correction unit 5, modification unit 4, D / A conversion unit 6, upsampling unit Up1, etc. are implemented in the servo driver 200.

[0091] The PLC 100 (model predictive control unit 3) acquires a control amount (amount indicating the state of the motor 300) from each of the plurality of servo drivers 200, executes MPC, and transmits a control signal including a second manipulated variable individually to each servo driver 200. Each servo driver 200 executes disturbance estimation, corrects the disturbance amount, modifies the second manipulated variable received from the PLC 100, and controls the inverter circuit to supply the first manipulated variable (drive current) to the motor 300.

[0092] An advantage of Application Example 1 is that the functions of the model predictive control unit 3 and the functions of the disturbance estimation unit 2 and the like are implemented in a distributed manner, which can prevent the concentration of calculation loads on the processing units 101 and 201. In particular, in this embodiment, the model predictive control function (first processor P1) and the disturbance estimation function (second processor P2) are realized by separate processors. Therefore, as in Application Example 1, it is easy to provide the model predictive control function in the PLC 100 having a (relatively expensive) processor with high processing performance, and to provide the disturbance estimation function in each servo driver 200 having a (relatively inexpensive) processor with lower processing performance than the processor of the PLC 100.

[0093] In other words, in Application Example 1, one or more (here, one) first processors P1 are implemented in the first device (PLC 100), and one or more (here, one) second processors P2 are implemented in the second device (servo driver 200). The second device is preferably disposed such that the communication distance between the second device and the control object Ob1 is shorter than the communication distance between the first device and the control object Ob1 (in Application Example 1, via the servo driver 200). For example, by disposing the second device (each servo driver 200) closer to the control object Ob1 than the first device (PLC 100) and reducing the cable length (communication distance) of the connection cable connecting the second device and the control object Ob1, communication delays are reduced, and it becomes easier to prevent a deterioration in the disturbance suppression function.

[0094] Fig. 6 shows a block diagram of application example 2 of the control system 1. Fig. 6 shows a servo driver 200, a motor 300 (servo motor), and a load device 400. The servo driver 200, the motor 300 (servo motor), and the load device 400 are the same as those in application example 1 described above, and therefore a description thereof will be omitted.

[0095] However, in Application Example 2, all of the functions of the control system 1 are implemented in each servo driver 200. Each servo driver 200 (control system 1) acquires a control amount indicating the state of the motor 300 from a detection unit, and performs MPC and disturbance estimation. Then, each servo driver 200 (control system 1) corrects the disturbance amount, modifies the second manipulated variable, and controls the inverter circuit to supply the first manipulated variable (drive current) to the motor 300.

[0096] An advantage of application example 2 is that, compared to application example 1, all of the functions of the control system 1 are implemented closer to the control object Ob1 and MPC and disturbance estimation are performed, thereby suppressing communication delays.

[0097] (4) Advantages As described above, in the control system 1 according to this embodiment, the model predictive control unit 3 includes one or more first processors P1 (see FIG. 2A ) that execute processes related to model predictive control. The disturbance estimator 2 includes one or more second processors P2 (see FIG. 2B ) that execute processes related to disturbance estimation. Furthermore, the second output period of the disturbance estimator 2 and the third output period of the corrector 4 are both shorter than the first output period of the model predictive control unit 3. In other words, they are set independently of the first output period of the model predictive control unit 3. Therefore, the function of removing or suppressing disturbances (disturbance suppression function) is less likely to be degraded compared to, for example, a case in which the processing of the disturbance estimator 2 is delayed in accordance with the MPC. Furthermore, a configuration that allows the second output period of the disturbance estimator 2 and the third output period of the corrector 4 to be easily set independently of the first output period of the model predictive control unit 3 can be stably realized. In particular, for example, the model predictive control function can be provided in a first device having a high-performance (relatively expensive) processor, and the disturbance estimation function can be provided in a second device having a processor with lower processing performance (relatively inexpensive) than the processor of the first device. For example, by placing the second device closer to the control object Ob1 than the first device and reducing the length of the connection cable connecting the second device and the control object Ob1, communication delays can be reduced, making it easier to prevent a deterioration in the disturbance suppression function. As a result, the control system 1 has the advantage of being able to improve the practicality of the model predictive control function and the disturbance suppression function.

[0098] Furthermore, according to the control system 1, the disturbance amount estimated by the disturbance estimation unit 2 is corrected so as to satisfy predetermined constraints, thereby further improving the practicality of the model predictive control function and the disturbance suppression function.

[0099] In particular, the predetermined constraint condition is that the value of the first manipulated variable based on the corrected disturbance quantity falls within a predetermined constraint range having a lower limit and an upper limit, thereby preventing a saturation state such as torque saturation caused by sending a first manipulated variable to the device that exceeds the constraints of the device (control object Ob1) or the constraints of the controller of the device (such as the maximum voltage, the maximum current, or the allowable torque of the motor).

[0100] (5) Modifications Modifications of the above embodiment are listed below. The modifications explained below can be applied in appropriate combinations.

[0101] The same functions as those of the control system 1 according to the above embodiment may be realized as a control method, a computer program, or a non-transitory recording medium on which a computer program is recorded.

[0102] The control system 1 in the present disclosure includes a computer system. The computer system is primarily composed of a processor and memory as hardware. The processor executes a program stored in the memory of the computer system to realize the functions of the control system 1 in the present disclosure. The program may be pre-recorded in the memory of the computer system, provided via a telecommunications line, or provided in a non-transitory recording medium such as a memory card, optical disk, or hard disk drive that is readable by the computer system. The processor of the computer system is composed of one or more electronic circuits including a semiconductor integrated circuit (IC) or a large-scale integrated circuit (LSI). The integrated circuits, such as ICs or LSIs, are referred to by different names depending on the degree of integration, and include integrated circuits called system LSIs, very large-scale integrations (VLSIs), or ultra-large-scale integrations (ULSIs). Furthermore, field-programmable gate arrays (FPGAs), which are programmed after the LSI is manufactured, or logic devices that allow the reconfiguration of internal connections or internal circuit partitions of the LSI, can also be used as processors. The electronic circuits may be integrated into one chip or distributed across multiple chips. The chips may be integrated into one device or distributed across multiple devices. The computer system referred to here includes a microcontroller having one or more processors and one or more memories. Therefore, the microcontroller is also composed of one or more electronic circuits including a semiconductor integrated circuit or a large-scale integrated circuit.

[0103] Furthermore, it is not essential that the multiple functions of the control system 1 be concentrated in one housing. For example, the components of the control system 1 may be distributed across multiple housings.

[0104] Conversely, multiple functions of the control system 1 may be integrated into one housing. Furthermore, at least some of the functions of the control system 1, for example, some of the functions of the control system 1 may be realized by the cloud (cloud computing) or the like.

[0105] (5-1) Modification 1 A control system 1 according to this modification (modification 1) will be described below with reference to Fig. 7. Note that, in the control system 1 according to modification 1, components that are substantially common to the control system 1 according to the above embodiment will be assigned the same reference numerals, and detailed descriptions thereof may be omitted.

[0106] The control system 1 according to the first modification differs from the control system 1 according to the above embodiment in that the disturbance amount estimated by the disturbance estimation unit 2 is also input to the model predictive control unit 3, and in that the control system 1 further includes a delay unit 7 (see FIG. 7).

[0107] In Modification 1, as shown in Fig. 7 , the model predictive control unit 3 is electrically connected to the disturbance estimator 2 so as to be able to acquire disturbance information related to the disturbance amount estimated by the disturbance estimator 2. In Modification 1, the model predictive control unit 3 calculates a second manipulated variable based on the control amount and the disturbance information, and outputs a control signal including the second manipulated variable. In the following, it is assumed that the disturbance information is the value of the disturbance amount, but it may also be a change amount related to the disturbance amount.

[0108] In the first modification, as described above, the control system 1 further includes a delay unit 7. The delay unit 7 is provided between the disturbance estimator 2 and the connection point N1 (node). The delay unit 7 outputs data for the first manipulated variable in the output signal, one cycle before (one time before) a certain point in time (e.g., the current time), to the disturbance estimator 2. That is, the delay unit 7 outputs data for the first manipulated variable one sampling before to the disturbance estimator 2. In the first modification, the disturbance estimator 2 estimates a disturbance variable corresponding to the data for one cycle before based on the first manipulated variable and the controlled variable, and outputs the estimation result as disturbance information to the model predictive control unit 3. That is, in the first modification, the disturbance estimator 2 compares the controlled variable at the current time with the data for the first manipulated variable one sampling before the current time to estimate a disturbance variable, and outputs an estimation signal including the estimated disturbance variable to the model predictive control unit 3 and the correction unit 5.

[0109] The reason for using the data of the first manipulated variable from one sampling before is as follows: Even if the model predictive control unit 3 needs the disturbance variable d^(k) to calculate the second manipulated variable Umpc(k) at time t=k, the second manipulated variable Umpc(k) for calculating the disturbance variable d^(k) has not yet been output in the disturbance estimator 2 and cannot be used. Therefore, the disturbance estimator 2 uses the second manipulated variable Umpc(k-1) to calculate the disturbance variable d^(k). More precisely, the disturbance estimator 2 uses the second manipulated variable Umpc(k-1) to calculate the disturbance variable d^(k + i / N) (where i = 0, 1, ..., N-1, and Tmpc = N Tdob (N > 1)).

[0110] In Modification 1, the first sampling unit 32 of the model predictive control unit 3 down-samples not only the control amount but also the disturbance amount to the first operating period (sampling period Tmpc). In other words, the period Tdob of the estimated signal including the disturbance amount output from the disturbance estimation unit 2 is shorter than the first operating period. Therefore, the first processor P1 performs data sampling by using the first sampling unit 32 to convert the disturbance amount to the first operating period (sampling period Tmpc).

[0111] In variant example 1, the model predictive control unit 3, for example, uses a state space model of the control object Ob1 to define a state variable with the disturbance amount (or its change amount) as the state amount, and calculates a second manipulated variable that optimizes (for example, minimizes) the deviation of the disturbance amount (the difference between the set value and the estimated value).

[0112] Assuming that the control object Ob1 is linear and time-invariant, when the state space model of the control object Ob1 is converted into a discrete system at a control period (for example, Tdob, which is the same as the sampling period of the disturbance estimation unit 2), the state equation and the output equation become the following equation (6).

[0113]

[0114] The input u, output y, and state variable x are as shown in the following equation (7).

[0115]

[0116] When the state variable x - (k) = [x ^ (k) d ^ (k)]T is redefined to include the disturbance quantity d ^ (k) estimated as the state quantity, the state equation of the augmented system becomes the following equation (8). In equation (8), the same-dimensional disturbance observer format is used, and the original state variable x can also be estimated simultaneously, so x ^ is used.

[0117]

[0118] The predicted control output Z(k) from time k to Hp steps ahead is expressed by the following equation (9). Here, z(k) = x -(k). z(k) may be y^(k) or a constant × x^(k).

[0119]

[0120] The tracking error E(k) is expressed by the following equation (10).

[0121]

[0122] The variables in the above equation are defined as follows (11): the reference trajectory at time k is r(t|k), the control input change amount is Δu^(k|k) (= u^(k|k) - u(k - 1)), and the control horizon indicating the number of steps for which the input change is allowed is Hu.

[0123]

[0124] The optimization problem for determining the amount of change in the control input by MPC is expressed as the following equation (12).

[0125]

[0126] Here, the parameters are expressed by the following equation (13): Q and R are weights of the evaluation function V(k) and can be set freely.

[0127]

[0128] In the above example, the disturbance amount (or its change amount) is used as the state amount. However, the disturbance amount (or its change amount) may be used only to constrain the output in the MPC calculation. The constraints may be calculated for the state amount x, the second manipulated variable Umpc, and the change amount ΔUmpc of the second manipulated variable, as shown in the following equation (14): state amount constraint x(k+j), control input constraint u(k+j), and control input change amount constraint Δu(k+j).

[0129]

[0130] In the first modification, the model predictive control unit 3 is endowed with a function of finding ΔU(k) ​​that minimizes the evaluation function V(k) under constraint conditions and outputting the first value Δu^(k|k). However, because the correction unit 4 subtracts d^(k), it is preferable to output Umpc(k) = Δu^(k|k) + d^(k) from the model predictive control unit 3.

[0131] In the first modification, the model predictive control unit 3 calculates a state variable x 1 − including an estimated disturbance amount, the state variable x 2 − including a disturbance deviation,

[0132]

[0133] is optimized to obtain ΔU(k). Therefore, the second manipulated variable including the disturbance suppression effect is obtained. From this, at time k+i / N, the corrector 4 corrects the second manipulated variable based on the disturbance corrected by the corrector 5 so as to satisfy the constraints on the controlled object Ob1, thereby obtaining the first manipulated variable.

[0134] In this way, in Modification 1, the disturbance amount is also used in the MPC of the model predictive control unit 3. Therefore, for example, if the change in the disturbance between time k and k+1 is large and the estimation accuracy of the disturbance estimator 2 is low, the average disturbance error during the period can be further reduced by calculating the second manipulated variable from the MPC taking the disturbance amount into consideration. As a result, a control system 1 that is more robust against disturbances can be provided.

[0135] (5-2) Modification 2 A control system 1 according to this modification (modification 2) will be described below with reference to Fig. 8. Note that, in the control system 1 according to modification 2, components that are substantially common to the control system 1 according to the above embodiment will be assigned the same reference numerals, and detailed descriptions thereof may be omitted.

[0136] The control system 1 according to the second modification differs from the control system 1 according to the above embodiment in that it includes a first D / A conversion unit D1 and a second D / A conversion unit D2 instead of the upsampling unit Up1 and the D / A conversion unit 6 in the control system 1 according to the above embodiment. In other words, the control system 1 according to the second modification differs from the control system 1 according to the above embodiment in that the D / A conversion is performed at a stage earlier than that of the correction unit 4.

[0137] As described above, the control system 1 according to the second modification includes the first D / A conversion unit D1 and the second D / A conversion unit D2. The first D / A conversion unit D1 is provided between the model predictive control unit 3 and the correction unit 4, and the second D / A conversion unit D2 is provided between the correction unit 5 and the correction unit 4.

[0138] The control signal output from the model predictive control unit 3 and the estimated signal output from the disturbance estimation unit 2 are each a digital signal. The first D / A conversion unit D1 converts the control signal into an analog signal and outputs it to the correction unit 4. The second D / A conversion unit D2 converts the estimated signal into an analog signal and outputs it to the correction unit 4. Note that the first D / A conversion unit D1 preferably has an upsampling function similar to the upsampling unit Up1 of the control system 1 according to the above embodiment.

[0139] In the control system 1 according to the second modification, the correction unit 4 corrects the analog signal including the second manipulated variable based on the analog signal including the corrected disturbance variable. This makes it easier to synchronize the calculation timings for correcting the manipulated variables in the correction unit 4.

[0140] (5-3) Modification 3 A control system 1 according to this modification (modification 3) will be described below with reference to Fig. 9. Note that, in the control system 1 according to modification 3, components that are substantially common to the control systems 1 according to the above embodiment, modification 1, and modification 2 may be assigned the same reference numerals, and detailed descriptions thereof may be omitted.

[0141] The control system 1 according to the modification 3 includes a first D / A converter D1 and a second D / A converter D2, similar to the control system 1 according to the modification 2. Furthermore, similar to the control system 1 according to the modification 1, the control system 1 according to the modification 3 also inputs the disturbance amount estimated by the disturbance estimator 2 to the model predictive controller 3, and also includes a delay unit 7. However, unlike the control systems 1 according to the above-described embodiment, modification 1, and modification 2, the control system 1 according to the modification 3 further includes an A / D converter 8.

[0142] In short, in the third modification, the output signal including the first manipulated variable output from the correction unit 4 is an analog signal, and in order to input this first manipulated variable to the disturbance estimation unit 2 via the delay unit 7, it needs to be converted into a digital signal, and therefore an A / D conversion unit 8 is provided.

[0143] The A / D converter 8 is provided between the connection point N1 (node) and the delay unit 7. The A / D converter 8 performs data sampling on the first manipulated variable of the output signal at a specific operating period (for example, Tdob, which is the same as the sampling period of the disturbance estimation unit 2), converts the data into a digital signal, and outputs it. The delay unit 7 is connected to the A / D converter 8, and outputs data on the first manipulated variable in the digital signal output from the A / D converter 8, one period before a certain point in time (for example, the current time), to the disturbance estimation unit 2. The disturbance estimation unit 2 estimates the disturbance variable corresponding to the data one period before, based on the first manipulated variable and the control variable, and outputs the estimation result to the model predictive control unit 3 as disturbance information.

[0144] In the control system 1 according to the third modification, even if the output signal output from the correction unit 4 is an analog signal, the model predictive control unit 3 can more easily utilize the disturbance amount estimated by the disturbance estimation unit 2, and as a result, the accuracy of the second manipulated variable is further improved.

[0145] (Summary) The above-described embodiments and the like disclose the following aspects.

[0146] A control system (1) according to a first aspect outputs an output signal including a first manipulated variable to a controlled object (Ob1). The control system (1) includes a disturbance estimator (2), a model predictive control unit (3), and a corrector (4). The disturbance estimator (2) estimates a disturbance generated or applied in the controlled object (Ob1), which outputs a controlled variable signal including a controlled variable in response to the first manipulated variable, based on the first manipulated variable and the controlled variable, and outputs an estimated signal including the disturbance variable as the estimation result. The model predictive control unit (3) calculates a second manipulated variable based on the controlled variable and outputs a control signal including the second manipulated variable. The corrector (4) corrects the second manipulated variable using correction information based on the disturbance variable and outputs an output signal including the first manipulated variable, which is the corrected second manipulated variable. The model predictive control unit (3) includes one or more first processors (P1) that execute processing related to model predictive control. The disturbance estimator (2) includes one or more second processors (P2) that execute processing related to disturbance estimation. The model predictive control unit (3) outputs a control signal at a first output period. The disturbance estimation unit (2) outputs an estimated signal at a second output period. The correction unit (4) outputs an output signal at a third output period. Both the second output period and the third output period are shorter than the first output period.

[0147] According to the above aspect, the model predictive control function and the disturbance estimation function are realized by different processors, and the second output period of the disturbance estimation unit (2) and the third output period of the correction unit (4) are both shorter than the first output period of the model predictive control unit (3), i.e., are set independently of the first output period of the model predictive control unit (3). As a result, the control system (1) has the advantage of being able to improve the practicality of the model predictive control function and the disturbance suppression function.

[0148] The control system (1) according to the second aspect is the control system (1) of the first aspect, further comprising a correction unit (5) that corrects the disturbance amount estimated by the disturbance estimation unit (2) so as to satisfy a predetermined constraint condition. The correction unit (4) corrects the second manipulated variable using the correction result of the correction unit (5) as correction information.

[0149] According to the above aspect, the disturbance amount estimated by the disturbance estimation unit (2) is corrected so as to satisfy a predetermined constraint condition, thereby further improving the practicality of the model predictive control function and the disturbance suppression function.

[0150] Regarding the control system (1) according to the third aspect, in the second aspect, the predetermined constraint condition is that the value related to the first manipulated variable based on the corrected disturbance variable falls within a predetermined constraint range having a lower limit value and an upper limit value.

[0151] According to the above aspect, for example, a first operation amount that exceeds the constraints of the device (control object Ob1) or the constraints of the device's controller (maximum voltage, maximum current, allowable torque of the motor, etc.) is prevented from being sent to the device, thereby preventing a saturation state such as torque saturation from occurring.

[0152] Regarding the control system (1) according to the fourth aspect, in any one of the first to third aspects, the second output period is equal to the third output period.

[0153] According to the above aspect, by matching the third output period of the corrector (4) with the second output period of the disturbance estimator (2), it is possible to provide a disturbance suppression function with higher accuracy.

[0154] Regarding the control system (1) according to a fifth aspect, in any one of the first to fourth aspects, the model predictive control unit (3) operates in a first operating cycle and executes processing related to model predictive control. The disturbance estimator (2) operates in a second operating cycle and executes processing related to disturbance estimation. The first output cycle is longer than or equal to the first operating cycle. The second output cycle is longer than or equal to the second operating cycle.

[0155] According to the above aspect, it becomes easier to provide a disturbance suppression function with higher accuracy.

[0156] In the fifth aspect of the control system (1) according to the sixth aspect, one or more first processors (P1) have a first sampling unit (32) and a calculation unit (31). The first sampling unit (32) downsamples the controlled variable to a first operating period. The calculation unit (31) operates in the first operating period on the sampling result by the first sampling unit (32) to perform calculation processing related to model predictive control. The one or more second processors (P2) have a second sampling unit (22) that performs data sampling related to the controlled variable, with the second operating period being the sampling period.

[0157] According to the above aspect, it becomes easier to provide a disturbance suppression function with higher accuracy.

[0158] In the control system (1) according to the seventh aspect, in the fifth or sixth aspect, the one or more first processors (P1) include a timer (33) that operates at a constant cycle and a calculation unit (31). The calculation unit (31) operates at a first operating cycle based on the constant cycle of the timer (33) to perform calculation processing related to model predictive control. When the constant cycle is Ts, the first operating cycle is Tmpc, and the second operating cycle is Tdob, Tmpc > Tdob ≧ Ts is satisfied.

[0159] According to the above aspect, it becomes easier to provide a disturbance suppression function with higher accuracy.

[0160] Regarding the control system (1) according to an eighth aspect, in any one of the first to seventh aspects, the output signal output from the correction unit (4) is a digital signal. The control system (1) further includes an upsampling unit (Up1) and a D / A conversion unit (6). The upsampling unit (Up1) converts a control signal having a first output period output from the model predictive control unit (3) into a signal having a second output period and outputs the signal to the correction unit (4). The D / A conversion unit (6) converts the output signal output from the correction unit (4) into an analog signal and outputs the analog signal to the control object (Ob1).

[0161] According to the above aspect, it becomes easier to provide a disturbance suppression function with higher accuracy.

[0162] Regarding the control system (1) according to a ninth aspect, in any one of the first to eighth aspects, the control signal output from the model predictive control unit (3) and the estimated signal output from the disturbance estimation unit (2) are each a digital signal. The control system (1) further includes a first D / A conversion unit (D1) that converts the control signal into an analog signal and outputs it to the correction unit (4), and a second D / A conversion unit (D2) that converts the estimated signal into an analog signal and outputs it to the correction unit (4).

[0163] According to the above aspect, it becomes easier to provide a disturbance suppression function with higher accuracy.

[0164] Regarding the control system (1) according to the tenth aspect, in any one of the first to ninth aspects, the model predictive control unit (3) calculates a second manipulated variable based on the control variable and disturbance information relating to the disturbance variable estimated by the disturbance estimation unit (2), and outputs a control signal including the second manipulated variable.

[0165] According to the above aspect, the disturbance amount estimated by the disturbance estimation unit (2) is also applied to the model predictive control unit (3), thereby improving the accuracy of the second manipulated variable.

[0166] A control system (1) according to an eleventh aspect is the tenth aspect, further comprising a delay unit (7) that outputs data for a first manipulated variable in an output signal one cycle before a certain point in time to a disturbance estimator (2). The disturbance estimator (2) estimates a disturbance variable corresponding to the data one cycle before based on the first manipulated variable and the controlled variable, and outputs the estimation result as disturbance information to a model predictive control unit (3).

[0167] According to the above aspect, the model predictive control unit (3) can easily use the disturbance amount estimated by the disturbance estimating unit (2), and as a result, the accuracy of the second manipulated variable is further improved.

[0168] Regarding the control system (1) according to the twelfth aspect, in the tenth or eleventh aspect, the disturbance estimation unit (2) has one or more second processors (P2) that operate in a specific operating cycle and execute processing related to disturbance estimation. The output signal output from the correction unit (4) is an analog signal. The control system (1) further includes an A / D conversion unit (8) and a delay unit (7). The A / D conversion unit performs data sampling on a first manipulated variable of the output signal in a specific operating cycle, converts the sampled data into a digital signal, and outputs the digital signal. The delay unit (7) is connected to the A / D conversion unit (8) and outputs data from one cycle before a certain point in time for the first manipulated variable in the digital signal output from the A / D conversion unit (8) to the disturbance estimation unit (2). The disturbance estimation unit (2) estimates a disturbance variable corresponding to the data from one cycle before based on the first manipulated variable and the controlled variable, and outputs the estimation result as disturbance information to the model predictive control unit (3).

[0169] According to the above aspect, even when the output signal output from the correction unit (4) is an analog signal, the model predictive control unit (3) can easily utilize the disturbance amount estimated by the disturbance estimation unit (2), and as a result, the accuracy of the second manipulated variable is further improved.

[0170] Regarding the control system (1) according to the thirteenth aspect, in any one of the first to twelfth aspects, the disturbance estimation unit (2) is configured as a disturbance observer that calculates a disturbance amount based on a first manipulated variable and a controlled variable.

[0171] According to the above aspect, it becomes easier to provide a disturbance suppression function with higher accuracy.

[0172] With respect to the control system (1) according to the fourteenth aspect, in any one of the first to thirteenth aspects, the one or more first processors (P1) are implemented in a first device (e.g., PLC 100). The one or more second processors (P2) are implemented in a second device (e.g., servo driver 200). The second device is disposed in such a manner that the communication distance between the second device and the control object (Ob1) is shorter than the communication distance between the first device and the control object (Ob1).

[0173] According to the above aspect, communication delays in the second device are suppressed, making it easier to provide a disturbance suppression function with higher accuracy.

[0174] A control method according to a fifteenth aspect is a control method for a control system (1) that outputs an output signal including a first manipulated variable to a controlled object (Ob1). The control method includes a disturbance estimation step, a model predictive control step, and a correction step. In the disturbance estimation step, a disturbance generated or applied in the controlled object (Ob1), which outputs a controlled variable signal including a controlled variable in response to the first manipulated variable, is estimated based on the first manipulated variable and the controlled variable, and an estimated signal including the disturbance variable is output as the estimated result. In the model predictive control step, a second manipulated variable is calculated based on the controlled variable, and a control signal including the second manipulated variable is output. In the correction step, the second manipulated variable is corrected using correction information based on the disturbance variable, and an output signal including the first manipulated variable, which is the corrected second manipulated variable, is output. The model predictive control step is performed by one or more first processors (P1) that execute processing related to model predictive control. The disturbance estimation step is performed by one or more second processors (P2) that execute processing related to disturbance estimation. In the model predictive control step, a control signal is output at a first output period. In the disturbance estimation step, the estimated signal is output at a second output period. In the correction step, the output signal is output at a third output period. Both the second output period and the third output period are shorter than the first output period.

[0175] According to the above aspect, it is possible to provide a control method that can improve the practicality of the model predictive control function and the disturbance suppression function.

[0176] A program according to a sixteenth aspect is a program for causing one or more processors to execute the control method according to the fifteenth aspect.

[0177] According to the above aspect, it is possible to provide a function that can improve the practicality of the model predictive control function and the disturbance suppression function.

[0178] The configurations according to the second to fourteenth aspects are not essential for the control system (1) and may be omitted as appropriate.

[0179] The control system, control method, and program disclosed herein can improve the practicality of the model predictive control function and the disturbance suppression function. As a result, the practicality of the control of motors, plants, etc. can be further enhanced. In other words, the control system, control method, and program disclosed herein are industrially useful.

[0180] REFERENCE SIGNS LIST 1 Control system 2 Disturbance estimation unit 22 Second sampling unit 3 Model predictive control unit 31 Calculation unit 32 First sampling unit 33 Timer 4 Correction unit 5 Correction unit 6 D / A conversion unit 7 Delay unit 8 A / D conversion unit D1 First D / A conversion unit D2 Second D / A conversion unit Ob1 Controlled object P1 First processor P2 Second processor Up1 Upsampling unit

Claims

1. A control system that outputs an output signal including a first manipulated variable to a controlled object, a disturbance estimating unit that estimates a disturbance generated in or applied to the controlled object based on the first manipulated variable and the controlled variable, and outputs an estimated signal including a disturbance amount that is an estimation result; and a model predictive control unit that calculates a second manipulated variable based on the control variable and outputs a control signal including the second manipulated variable; a correction unit that corrects the second manipulated variable using correction information based on the disturbance amount, and outputs the output signal including the first manipulated variable that is the corrected second manipulated variable, the model predictive control unit has one or more first processors that execute processing related to model predictive control, the disturbance estimation unit has one or more second processors that execute processing related to disturbance estimation, the model predictive control unit outputs the control signal at a first output period; the disturbance estimation unit outputs the estimation signal at a second output period; the correction unit outputs the output signal at a third output period; The second output period and the third output period are both shorter than the first output period. Control system.

2. a correction unit that corrects the amount of disturbance estimated by the disturbance estimation unit so as to satisfy a predetermined constraint condition, the correction unit corrects the second manipulated variable by using the correction result of the correction unit as the correction information. The control system of claim 1 .

3. the predetermined constraint condition is that a value related to the first manipulated variable based on the corrected disturbance variable falls within a predetermined constraint range having a lower limit value and an upper limit value. The control system of claim 2 .

4. The second output period is equal to the third output period. A control system according to any one of claims 1 to 3.

5. the model predictive control unit operates in a first operating cycle to execute processing related to the model predictive control, the disturbance estimation unit operates in a second operating cycle to perform processing related to the disturbance estimation, the first output period is greater than or equal to the first operating period; the second output period is greater than or equal to the second operating period; A control system according to any one of claims 1 to 3.

6. The one or more first processors a first sampling unit that downsamples the control amount to the first operating period; a calculation unit that operates in the first operating cycle and performs calculation processing related to the model predictive control on the sampling result by the first sampling unit, the one or more second processors have a second sampling unit that performs data sampling on the controlled variable using the second operating period as a sampling period; The control system of claim 5 .

7. The one or more first processors A timer that operates at a fixed cycle; a calculation unit that operates at the first operation cycle based on the constant cycle of the timer and performs calculation processing related to the model predictive control, When the constant period is Ts, the first operating period is Tmpc, and the second operating period is Tdob, Tmpc>Tdob≧Ts is satisfied. The control system of claim 5 .

8. the output signal output from the correction unit is a digital signal, The control system includes: an upsampling unit that converts the control signal having the first output period output from the model predictive control unit into a signal having the second output period and outputs the converted signal to the correction unit; a D / A converter that converts the output signal output from the corrector into an analog signal and outputs the analog signal to the control target; A control system according to any one of claims 1 to 3.

9. the control signal output from the model predictive control unit and the estimation signal output from the disturbance estimation unit are each a digital signal, The control system includes: a first D / A conversion unit that converts the control signal into an analog signal and outputs the analog signal to the correction unit; a second D / A conversion unit that converts the estimated signal into an analog signal and outputs the analog signal to the correction unit; A control system according to any one of claims 1 to 3.

10. the model predictive control unit calculates the second manipulated variable based on the control variable and disturbance information related to the disturbance variable estimated by the disturbance estimation unit, and outputs the control signal including the second manipulated variable. A control system according to any one of claims 1 to 3.

11. a delay unit configured to output data of the first manipulated variable in the output signal one cycle before a certain point in time to the disturbance estimation unit, the disturbance estimation unit estimates the disturbance amount corresponding to the data one cycle before based on the first manipulated variable and the controlled variable, and outputs the estimation result to the model predictive control unit as the disturbance information. The control system of claim 10.

12. the disturbance estimation unit has one or more second processors that operate in a specific operating cycle and execute processing related to disturbance estimation, the output signal output from the correction unit is an analog signal, The control system includes: an A / D converter that performs data sampling on the first manipulated variable of the output signal at the specific operation cycle, converts the data into a digital signal, and outputs the digital signal; a delay unit connected to the A / D conversion unit and configured to output data of the first manipulated variable in the digital signal output from the A / D conversion unit that is one cycle before a certain point in time to the disturbance estimation unit, the disturbance estimation unit estimates the disturbance amount corresponding to the data one cycle before based on the first manipulated variable and the controlled variable, and outputs the estimation result to the model predictive control unit as the disturbance information. The control system of claim 10.

13. the disturbance estimation unit is configured as a disturbance observer that calculates the disturbance amount based on the first manipulated variable and the controlled variable. A control system according to any one of claims 1 to 3.

14. the one or more first processors are implemented in a first device; the one or more second processors are implemented in a second device; The second device is disposed in such a manner that a communication distance between the second device and the control target is shorter than a communication distance between the first device and the control target. A control system according to any one of claims 1 to 3.

15. A control method for a control system that outputs an output signal including a first manipulated variable to a controlled object, comprising: a disturbance estimation step of estimating a disturbance generated or applied in the controlled object based on the first manipulated variable and the controlled variable, the disturbance estimation step outputting a control variable signal including a control variable in accordance with the first manipulated variable, and outputting an estimated signal including a disturbance amount that is an estimation result; a model predictive control step of calculating a second manipulated variable based on the control variable and outputting a control signal including the second manipulated variable; a correction step of correcting the second manipulated variable using correction information based on the disturbance amount, and outputting the output signal including the first manipulated variable, which is the corrected second manipulated variable; Including, the model predictive control step is performed by one or more first processors that execute processing related to model predictive control, the disturbance estimation step is performed by one or more second processors that execute processing related to disturbance estimation, In the model predictive control step, the control signal is output in a first output period; In the disturbance estimation step, the estimation signal is output at a second output period; In the correcting step, the output signal is output at a third output period; The second output period and the third output period are both shorter than the first output period. Control method.

16. A program for causing one or more processors to execute the control method according to claim 15.