Patent ID: 12197175

DESCRIPTION OF THE EMBODIMENTS

Embodiments of the disclosure will be described in detail below with reference to the drawings. Further, in the drawings, the same or corresponding parts are denoted by the same reference numerals, and descriptions thereof will not be repeated.

§ 1 Application Example

First, an example of the scenario in which the disclosure is applied is described with reference toFIG.1andFIG.2.FIG.1is a schematic diagram showing an example of the overall configuration of a control system to which a control device according to the embodiment is applied.FIG.2is a diagram showing an example of the internal configuration of the control device according to the embodiment.

A control system SYS in the example shown inFIG.1includes a heating device2and a control device1that controls the temperature distribution of the heating device2.

The heating device2is, for example, a heat treatment furnace or a semiconductor wafer heat treatment device. The heating device2includes multiple control targets corresponding to multiple control points. In the example shown inFIG.1, the heating device2includes n (n is an integer of 2 or more) control targets20-1to20-n.

Each of the control targets20-1to20-nhas an energizing part22, a heater24, and a temperature sensor26. The energizing part22passes a current corresponding to an operation amount received from the control device1through the heater24. The temperature sensor26measures the temperature of the corresponding control point and outputs the measured temperature to the control device1as a control amount of the control target.

The control device1outputs operation amounts to the n control targets20-1to20-nincluded in the heating device2to control the control amounts (here, temperature) of the n control targets20-1to20-n. As shown inFIG.2, the control device1includes n model prediction control modules10-1to10-nthat control the n control targets20-1to20-n, respectively. In the drawing, the model prediction control is referred to as “MPC (model prediction control).”

A model prediction control module10-i(i is an integer of 1 to n) and a control target20-icorresponding to the model prediction control module10-iconfigure one control loop Li. Therefore, the control system SYS has n control loops L1to Ln. In the control loop Li configured by the model prediction control module10-iand the control target20-i, a control amount PVi of the control target20-iis measured by the temperature sensor26(seeFIG.1) and input to the model prediction control module10-i. The model prediction control module10-idetermines an operation amount MVi for the control target20-iso that the input control amount PVi and a target value SPi match. In the control target20-i, the heater24is operated based on the operation amount MVi from the model prediction control module10-i.

The response speed of the control amount to the target value (that is, the speed from when the target value is given until the control amount reaches the target value) differs for each control loop depending on the environment around the control target and the performance of the control target. For example, the control target disposed at the end of the heating device2has a larger heat radiation amount than other control targets. Therefore, the response speed of the control loop configured by the control target disposed at the end of the heating device2becomes relatively slow.

When the response speed is different for each control loop, the distribution of the control amounts PV1to PVn of the n control targets20-1to20-nvary in the transient state. For example, even if the same step-like target value is given to all the control loops L1to Ln, the control amount of the control target configuring the control loop having a fast response speed reaches the target value at a timing earlier than other control loops. On the other hand, the control amount of the control target configuring the control loop having a slow response speed reaches the target value at a timing later than other control loops. Therefore, if the distribution of the control amounts PV1to PVn of the n control targets20-1to20-nvaries in the transient state, the object to be heated (such as a semiconductor wafer) may be adversely affected. For example, due to temperature unevenness, unintended deformation of the object may occur.

In the control device1according to the embodiment, in order to solve such a problem, the n control targets20-1to20-nare controlled so that the distribution of the control amounts PV1to PVn of the n control targets20-1to20-nin the transient state becomes a desired distribution (for example, uniform distribution). That is, the control device1specifies the control loop having the slowest response speed as the “reference control loop” and the remaining control loops as the “follow-up control loops.” Then, the control device1controls the n control targets20-1to20-nso that the control amounts of the follow-up control loops follow the control amount of the reference control loop.

The response speed of each control loop is evaluated in advance by measuring it from the time when the same step-like target value is given to the model prediction control modules10-1to10-nwhen the heating device2is in a steady state until the time when the control amounts of the control targets20-1to20-nreach the target value. Based on the evaluation result, the control loop having the slowest response speed among the n control loops is specified in advance as the reference control loop, and the control loops other than the reference control loop are specified in advance as the follow-up control loops. In the example shown inFIG.2, the control loop L1configured by the model prediction control module10-1and the control target20-1is specified as the reference control loop, and the other control loops L2to Ln are specified as the follow-up control loops.

A predetermined target value SP1is input to the model prediction control module10-1configuring the reference control loop L1. In order to shorten the settling time as much as possible, it is preferable to input the step-like target value SP1to the model prediction control module10-1. That is, the target value SP1indicating the final target temperature is input to the model prediction control module10-1from the start of control.

The control device1further includes a control amount prediction module12and a target value generation module14as modules for making the control amounts PV2to PVn of the control loops L2to Ln follow the control amount PV1of the reference control loop L1.

The control amount prediction module12predicts the prediction value of the future control amount (hereinafter referred to as the “control amount prediction value PVP”) of the control target20-1by using a dynamic characteristic model showing the dynamic characteristics of the control target20-1that configures the reference control loop L1for each control cycle. As will be described later, the control amount prediction module12calculates the control amount prediction value PVP by using the calculation result when the model prediction control module10-1determines the operation amount MV1.

The target value generation module14generates future target values SP2to SPn of the follow-up control loops L2to Ln from the control amount prediction value PVP predicted by the control amount prediction module12. For example, when uniformizing the distribution of control amounts of multiple control targets in a transient state, the target value generation module14determines the control amount prediction value PVP as the target values SP2to SPn.

The target value generation module14outputs the generated target values SP2to SPn to the model prediction control modules10-2to10-n, respectively. As a result, the model prediction control module10-j(j is an integer of 2 to n) generates the operation amount MVj so that the control amount PVj of the control target20-jfollows the target value generated from the control amount prediction value PVP of the reference control loop L1. The model prediction control module10-joutputs the generated operation amount MVj to the control target20-j. As a result, the distribution of the control amounts of the control targets20-1to20-nin the transient state is controlled to a desired distribution (for example, uniform distribution).

As described above, the control amount prediction value PVP is predicted for each control cycle. Therefore, even when a disturbance or the like is applied to the reference control loop L1and the response of the reference control loop L1changes, the control amount prediction value PVP is predicted according to the response after the change. As a result, even when the response changes due to the influence of disturbance or the like, the distribution of the control amounts of the n control targets20-1to20-ncan be restored to a desired distribution in the transient state.

§ 2 Specific Example

Next, a specific example of the control device1according to the embodiment will be described.

A. HARDWARE CONFIGURATION EXAMPLE OF THE CONTROL DEVICE

The control device1according to the embodiment is realized by, for example, a general-purpose computer, a programmable logic controller (PLC), or the like. The control device1may realize the processing described later by executing a control program (including a system program and a user program described later) stored in advance by a processor.

FIG.3is a schematic diagram showing an example of the hardware configuration of the control device1according to the embodiment.FIG.3shows an example of the control device1configured as a PLC temperature control unit. As shown inFIG.3, the control device1includes a processor102, such as a central processing unit (CPU) or a micro-processing unit (MPU), a chipset104, a main memory106, a flash memory108, an external network controller116, a memory card interface118, and a field bus controller124.

The processor102reads a system program110and a user program112stored in the flash memory108, expands them in the main memory106, and executes them to realize desired control over the control targets. By executing the system program110and the user program112, the processor102outputs the operation amounts to the control targets20-1to20-n, executes the processing related to the data communication, and the like, which will be described later.

The system program110includes an instruction code for providing basic functions of the control device1such as the data input/output processing and the execution timing control. The user program112is designed as desired according to the control targets20-1to20-n, and includes a sequence program for executing sequence control.

The model prediction control modules10-1to10-n, the control amount prediction module12, and the target value generation module14shown inFIG.2are realized by the processor102executing the system program110and the user program112.

The chipset104realizes the processing of the control device1as a whole by controlling each component.

The field bus controller124is an interface for exchanging data with various devices connected to the control device1through the field bus. As an example of such devices, the control targets20-1,20-2, . . . are connected.

The field bus controller124can give any command to the connected devices and can acquire any data (including the control amount PV) managed by the devices. The field bus controller124also functions as an interface for exchanging data with the n control targets20-1to20-n.

The external network controller116controls the exchange of data through various wired/wireless networks. The memory card interface118is configured to allow a memory card120to be attached thereto or detached therefrom, and is capable of writing data to the memory card120and reading data from the memory card120.

B. MODEL PREDICTION CONTROL

The model prediction control module10-igenerates the operation amount MVi to the control target20-iby performing model prediction control using a dynamic characteristic model showing the dynamic characteristics of the corresponding control target20-i.

The dynamic characteristic model is, for example, created in advance by tuning before executing the model prediction control. For example, the same step-like operation amount is simultaneously output to all of the n control targets20-1to20-nof the heating device2in the steady state, and the control amount (temperature) of each control target is measured. By applying the system identification method using the operation amount and the control amount as the identification input and the identification output, respectively, it is possible to create a dynamic characteristic model of each control target.

The dynamic characteristic model is represented by, for example, the following function P(z−1). The function P(z−1) is a discrete-time transfer function that combines a dead time element and a p-th order lag element. In the dynamic characteristic model represented by the function P(z−1), the dead time d of the dead time element and the variables a1to apand the variables b1to bqof the p-th order lag element are determined as characteristic parameters. The optimal values may also be determined for the order p and the order q.

P⁡(z-1)=z-d⁢b1⁢z-1+b2⁢z-2+⋯+bq⁢z-q1+a1⁢z-1+a2⁢z-2+⋯+aq⁢z-q[Equation⁢1]

The processing of creating such characteristic parameters (that is, system identification) may be performed using the identification input and the identification output, such as by the least squares method. Specifically, each value of the characteristic parameter is determined so that the output y when the operation amount selected as the identification input is given to the variable u of y=P(z−1)*u matches the control amount selected as the identification output (that is, so that the error is minimized).

The above characteristic parameters (d, a1to ap, b1to bq) are determined for each control target. Hereinafter, in order to distinguish the dead time d for each control target, the dead time d corresponding to the control target20-iis referred to as the “dead time d_i” as necessary.

There are multiple methods for model prediction control, and the method of calculating the operation amount using the predictive functional control (PFC) method, which has a low calculation load, will be described below. However, the model prediction control modules10-1to10-nare not limited to the PFC method, and the operation amount may be calculated using other methods.

Each of the model prediction control modules10-1to10-ncalculates the model output value Yk+d+1in the control cycle k+d+1 by inputting the operation amounts MVk, . . . , MVk−q+1generated until the current control cycle k into the dynamic characteristic model represented by the function P(z−1) of the above [Equation 1]. Here, q is the order defined by the dynamic characteristic model P as described above. Further, the control cycle k+d+1 is a future control cycle in which the dead time d+1 defined in the dynamic characteristic model has elapsed from the current control cycle k.

The model output value Yk+d+1obtained as described above is used to generate the operation amount MV in the next control cycle. At this time, the calculated data is shifted by one control cycle in preparation for the next control cycle. For example, the model output value Yk+d+1obtained as described above is used as the model output value Yk+din the next control cycle. In other words, the model output value Yk+d+1calculated in the previous control cycle is used as the model output value Yk+din the current control cycle k. Each of the model prediction control modules10-1to10-ngenerates the operation amount MVkto be output in the current control cycle k by model prediction control using the model output value Yk+dcalculated in the previous control cycle and the dynamic characteristic model.

Each of the model prediction control modules10-1to10-nperforms step response calculation and ramp response calculation in advance using the dynamic characteristic model.

The step response calculation is a calculation for obtaining the output of the dynamic characteristic model (hereinafter also referred to as the “step output Ys”) when the maximum input (step input) is continued in the initial state where the output is 0. In the following description, the step output Ys at the elapsed time t (>dead time d) from the start of the input of the step input is defined as Ys(t).

The ramp response calculation is a calculation for obtaining the output of the dynamic characteristic model (hereinafter also referred to as the “ramp output Yr”) when an input (ramp input) increased by a predetermined amount for each control cycle is performed in the initial state where the output is 0. In the following description, the ramp output Yr at the elapsed time t (>dead time d) from the start of the input of the ramp input is defined as Yr(t).

Further, each of the model prediction control modules10-1to10-nperforms a free response calculation with the model output values Yk+d, . . . , Yk+d−p+1as the initial state. The free response calculation is a calculation for obtaining the output Yf(k+d+H) of the dynamic characteristic model in the control cycle k+d+H in which a prediction horizon H has elapsed from the control cycle k+d when the input after the current control cycle k is set to 0 in the dynamic characteristic model in the initial state.

Each of the model prediction control modules10-1to10-ncalculates the output MHk+d+Hof the dynamic characteristic model in the control cycle k+d+H in which the prediction horizon H has elapsed from the control cycle k+d with the magnitudes of the step output and ramp output as ks and kr, respectively, according to the following equation.
MHk+d+H=ks*Ys(d+H)+kr*Yr(d+H)+Yf(k+d+H)

Each of the model prediction control modules10-1to10-nobtains ks and kr so that the difference ΔMH between MHk+d+Hand the model output value Yk+dand the difference ΔPH between the position RHk+d+Hon the reference orbit in the control cycle k+d+H and the control amount PVk+din the control cycle k+d match. The reference orbit is specified by a target value SPk+d+Hin the control cycle k+d+H, a target value SPk+dand a control amount PVk+din the control cycle k+d, and a predetermined reference orbit time constant Tr. The control amount PVk+din the control cycle k+d is calculated by the following equation using the change amount (Yk+d−Yk) of the output value of the dynamic characteristic model for the dead time d.
PVk+d=PVk+Yk+d−Yk

Two values H1and H2are set as the prediction horizon H in order to obtain the two variables ks and kr. In this way, each of the model prediction control modules10-1to10-ncalculates ks and kr that make the difference ΔMH and the difference ΔPH match by receiving the target values SPk+d, SPk+d+H1, and SPk+d+H2and the control amount PVk.

FIG.4is a diagram showing a relationship between the target value, the control amount, and the operation amount from the current control cycle k until the dead time d+the prediction horizon H2elapse. The above difference ΔPH corresponds to the required change amount for matching the control amount PVk+din the control cycle k+d with the target value SPk+d+Hin the control cycle k+d+H. Therefore, the variables ks and kr when the difference ΔMH matches the difference ΔPH indicate the model input value MVP to the dynamic characteristic model of each control cycle until the control cycle k+d+H2for outputting the required change amount from the dynamic characteristic model. In other words, by outputting the model input value MVP indicated by the obtained variables ks and kr to the control target as an operation amount, the control amount can be matched with the target value at two points of the control cycle k+d+H1and the control cycle k+d+H2.

As shown inFIG.4, the variable ks represents the step height of the model input value MVP in each control cycle after the current control cycle k. The variable kr represents the step inclination of the operation amount in each control cycle after the current control cycle k. Each of the model prediction control modules10-1to10-ncalculates the variables ks and kr for matching the difference ΔMH with the difference ΔPH for each control cycle. The ramp input in the current control cycle k is 0. Therefore, each of the model prediction control modules10-1to10-nmay generate the product of ks obtained as described above and the step input (model input value MVP in the control cycle k) as the operation amount MVkof the current control cycle k.

Further, the operation amount can take a value within the range between a lower limit value MVL and an upper limit value MVH. Therefore, when the product of ks and the step input (model input value MVP in the control cycle k) exceeds the upper limit value MVH, each of the model prediction control modules10-1to10-ngenerates the upper limit value MVH as the operation amount MVkof the current control cycle k. Similarly, when the product of ks and the step input is less than the lower limit value MVL, each of the model prediction control modules10-1to10-ngenerates the lower limit value MVL as the operation amount MVkof the current control cycle k.

Further, the model prediction control parameters set in the model prediction control modules10-1to10-nmay be different for each of the model prediction control modules10-1to10-n. The model prediction control parameters include the prediction horizons H1and H2, and the reference orbit time constant Tr. As described above, the response speed differs for each control loop. Normally, the model prediction control module of the control loop having a relatively fast response speed is set with the prediction horizons H1and H2and the reference orbit time constant Tr that are shorter than those of the model prediction control module of the control loop having a relatively slow response speed. Therefore, the prediction horizons H1and H2and the reference orbit time constant Tr set in the model prediction control module10-1are respectively longer than the prediction horizons H1and H2and the reference orbit time constant Tr set in the model prediction control modules10-2to10-n.

Hereinafter, in order to distinguish the prediction horizons H1and H2set in the model prediction control modules10-1to10-n, the prediction horizons H1and H2set in the model prediction control module10-iare referred to as “the prediction horizon H1_i” and “the prediction horizon H2_i,” respectively, as necessary.

C. METHOD OF PREDICTING THE CONTROL AMOUNT PREDICTION VALUE PVP

Next, a method of predicting the control amount prediction value PVP by the control amount prediction module12will be described.

First, the control amount prediction module12calculates the control amount prediction value PVP of control cycles k+1 to k+d based on the past operation amounts MVk−1, MVk−2, . . . generated by the model prediction control module10-1configuring the reference control loop L1.

For example, an example in which the dynamic characteristic model is represented by the function P(z−1) of the following [Equation 2] will be described.

P⁡(z-1)=z-d⁢b1⁢z-11+a1⁢z-1[Equation⁢2]

The control amount prediction module12may predict the control amount prediction values PVPk+1to PVPk+din the control cycles k+1 to k+d according to the following equations.
PVPk+1=−a1PVPk+b1MVk−d
PVPk+2=−a1PVPk+1+b1MVk−d+1
. . .
PVPk+d=−a1PVPk+d−1+b1MVk−1

Next, by using the model input value MVP to the dynamic characteristic model of each control cycle until the control cycle k+d_1+H2_1(hereinafter referred to as the “control cycle k+Hpv”) calculated by the model prediction control module10-1, the control amount prediction module12calculates the control amount prediction values PVPk+d+1to PVPk+Hpvof the control cycles k+d+1 to k+Hpv, respectively.

As shown inFIG.4, the model input value MVP to the dynamic characteristic model is defined by the step height (the product of ks and the step input) and the ramp inclination MVRk. The ramp inclination MVRkcorresponding to the current control cycle k is indicated by the product of kr and the ramp input obtained together with ks when the operation amount MVkof the current control cycle k is generated.

The model input value MVPk+sin the control cycle k+s in which s control cycles has elapsed from the current control cycle k is represented by the following equation.
MVPk+s=MVk+MVRk×s

However, when MVPk+sexceeds the upper limit value MVH of the operation amount, MVPk+sis corrected to the upper limit value MVH. Similarly, when MVPk+sis less than the lower limit value MVL of the operation amount, MVPk+sis corrected to the lower limit value MVL.

The control amount prediction module12predicts the control amount prediction values PVPk+d+1to PVPk+Hpvof the control cycles k+d+1 to k+Hpv, respectively, by inputting the model input value MVPk+sobtained in this way into the dynamic characteristic model showing the dynamic characteristics of the control target20-1.

When the dynamic characteristic model is represented by the function P(z−1) of the following [Equation 2], the control amount prediction module12may calculate the control amount prediction values PVPk+d+1to PVPk+Hpvaccording to the following equations.
PVPk+d+1=−a1PVPk+d+b1MVk
PVPk+d+2=−a1PVPk+d+1+b1MVPk+1
. . .
PVPk+Hpv=−a1PVPk+Hpv−1±b1MVPk+Hpv−d−1

MVkindicates the operation amount in the current control cycle k generated by the model prediction control module10-1.

The control amount prediction value PVP generally contains an error. Therefore, the control amount prediction module12may correct the control amount prediction value PVP by using the control amount PVkmeasured in the current control cycle k.

Specifically, the control amount prediction module12calculates the difference value between the control amount PVkin the current control cycle k and the control amount prediction value PVPkcorresponding to the current control cycle k calculated in the past as a correction amount C. That is, the correction amount C is represented by
C=PVk−PVPk.

The control amount prediction module12may consider that there is an error by the amount of the correction amount C in the control cycles k+1 to k+Hpv as well, and correct the control amount prediction values PVPk+1to PVPk+Hpvaccording to the following equations.
PVPk+1←PVPk+1+C
. . .
PVPk+Hpv←PVPk+Hpv+C

D. METHOD OF GENERATING FUTURE TARGET VALUES OF THE FOLLOW-UP CONTROL LOOPS

Next, a method of generating future target values SP2to SPn of the follow-up control loops L2to Ln by the target value generation module14will be described.

As described above, each of the model prediction control modules10-2to10-nobtains ks that makes the difference ΔMH and the difference ΔPH match by using the target values SPk+d, SPk+d+H1, and SPk+d+H2, and uses the ks to generate the operation amount MVk. Therefore, the target value generation module14generates the target values SPk+d, SPk+d+H1, and SPk+d+H2, to be output to each of the model prediction control modules10-2to10-nfrom the control amount prediction values PVPk+1to PVPk+Hpvof the control cycles k+1 to k+Hpv.

FIG.5is a diagram illustrating a method of generating the future target values of the follow-up control loops.FIG.5shows a method of generating a target value SPj to be output to the model prediction control module10-jof the follow-up control loop Lj.

As shown inFIG.5, the target value generation module14generates the control amount prediction value PVPk+d_jof the control cycle k+d_j, in which the dead time d_j specified in the dynamic characteristic model of the control target20-jhas elapsed from the current control cycle k, as the target value SPk+dof the control target20-j.

Similarly, the target value generation module14generates the control amount prediction value PVPk+d_j+H1_jof the control cycle k+d_j+H1_j, in which d_j+H1_jhas elapsed from the current control cycle k, as the target value SPk+d+H1of the control target20-j. Further, the target value generation module14generates the control amount prediction value PVPk+d_j+H2_jof the control cycle k+d_j+H2_j, in which d_j+H2_jhas elapsed from the current control cycle k, as the target value SPk+d+H2of the control target20-j.

As described above, the prediction horizons H1and H2of the reference control loop L1having the slowest response speed are usually set longer than the prediction horizons H1and H2of the other follow-up control loops L2to Ln. Therefore, the target value generation module14can generate the target values SPk+d, SPk+d+H1, and SPk+d+H2to be output to each of the model prediction control modules10-2to10-nfrom the control amount prediction values PVPk+1to PVPk+Hpv.

Among the control amount prediction values PVPk+1to PVPk+Hpv, the control amount prediction value PVP prior to the control cycle in which the longest d+H2in the follow-up control loops L2to Ln has elapsed from the current control cycle k is not used to generate the target value. Therefore, the control amount prediction module12may set the longest d+H2in the follow-up control loops L2to Ln as Hpv, and predict the control amount prediction values PVPk+1to PVPk+Hpvof the control cycles k+1 to k+Hpv, respectively.

E. PROCESSING PROCEDURE

Next, an outline of the processing procedure by the control device1according to the embodiment will be described.FIG.6is a flowchart showing a processing procedure of the control device according to the embodiment. The steps shown inFIG.6may be realized by the processor102of the control device1executing the control program (including the system program110and the user program112shown inFIG.3).

First, the control device1determines whether to start the control (step S1). For example, the control device1may determine to start the control by confirming the states of the control targets20-1to20-nand other devices and receiving the notification of the completion of preparation from each device. When it is determined not to start the control (NO in step S1), the processing of the control device1is returned to step S1.

When it is determined to start the control (YES in step S1), the control device1executes model prediction control for the reference control loop L1and generates the operation amount MV1for the control target20-1(step S2). The model prediction control in the reference control loop L1is executed based on the predetermined target value SP1.

Next, the control device1predicts the future control amount prediction value PVP of the control target20-1configuring the reference control loop L1(step S3). The control amount prediction value PVP is predicted using the variables ks and kr calculated when the operation amount MV1is generated in step S2.

Next, the control device1generates the future target values SP2to SPn of each of the follow-up control loops L2to Ln from the control amount prediction value PVP (step S4).

Next, the control device1executes model prediction control for each of the follow-up control loops L2to Ln, and generates the operation amounts MV2to MVn for the control targets20-2to20-n, respectively (step S5). The model prediction control of the follow-up control loops L2to Ln is executed based on the target values SP2to SPn generated in step S4, respectively.

Next, the control device1determines whether the control should be ended (step S6). For example, the control device1may determine to end the control when it receives an end instruction from a higher-level control unit. When it is determined not to end the control (NO in step S6), the processing of the control device6is returned to step S2. As a result, steps S2to S5are repeated for each control cycle.

When it is determined to end the control (YES in step S6), the processing of the control device1is ended.

F. SIMULATION RESULTS

(F-1. First Simulation Example>

In order to verify the effect of the control device1according to the embodiment, a simulation of a control system that controls the control amounts of first to fourth control targets from 0 to the final target value (=100) was performed. The first to fourth control targets are assumed to have the transmission characteristics shown by the following [Equation 3].

G⁡(s)=K(1+T1⁢s)⁢(1+T2⁢s)⁢e-Ls[Equation⁢3]

In [Equation 3], K is a steady-state gain; T1and T2are time constants; and L is a dead time. The first control loop corresponding to the first control target was set as the reference control loop, and the second to fourth control loops corresponding to the second to fourth control targets were set as the follow-up control loops. That is, the value of each parameter was set so that the response characteristic of the first control loop is the slowest; the response characteristic of the second control loop is the second slowest; the response characteristic of the third control loop is the third slowest; and the response characteristic of the fourth control loop is the fastest. Specifically, the values of K, T1, T2, and L were set as follows. Further, the values corresponding to the first, second, third, and fourth control targets are shown from the left in square brackets.K=[3.5, 4, 4.5, 5]T1=[39, 36, 33, 30]T2=[3.5, 3, 2.5, 2]L=[1.6, 1.4, 1.2, 1]The unit of T1, T2and L is seconds.

The first to fourth model prediction control modules generate the operation amounts for the first to fourth control targets by model prediction control using the dynamic characteristic models of the first to fourth control targets, respectively. The dynamic characteristic model is assumed to have the above transmission characteristics. Therefore, the model error is 0. Further, the control cycle in which the operation amount is output is set to 0.1 s.

FIG.7is a diagram showing simulation results when there is no disturbance. InFIG.7, (a) in the left column shows the simulation result when the same target value SP (=100) was input to all the control loops. That is, the step-like target value is input to all the control loops.

The middle column (b) and the right column (c) show the simulation results when the target value SP1(=100) was input to the reference control loop, and the target values generated by the target value generation module14were input to the follow-up control loops. That is, the step-like target value was input only to the reference control loop.

Further, (a) and (b) ofFIG.7show the simulation results when the prediction horizons H1and H2and the reference orbit time constant Tr, which are model prediction control parameters, are set as follows. The values of the first, second, third, and fourth control loops are shown from the left in square brackets.H1=[35, 30, 25, 20]H2=[70, 60, 50, 40]Tr=[1.6, 1.4, 1.2, 1]

Further, (c) ofFIG.7shows the simulation result when the prediction horizons H1and H2and the reference orbit time constant Tr are set as follows.H1=[35, 8, 6, 5]H2=[70, 16, 12, 10]Tr=[1.6, 0, 0, 0]

As described above, in the example shown in (c) ofFIG.7, the prediction horizons H1and H2and the reference orbit time constant Tr of the follow-up control loops are made smaller than the examples shown in (a) and (b) ofFIG.7.

The first row of each column inFIG.7shows the temporal change between the control amounts PV1to PV4of the first to fourth control loops and the target value SP1input to the first control loop (reference control loop). The second row of each column inFIG.7shows the temporal change of the deviation between the maximum control amount (maximum PV) and the minimum control amount (minimum PV) in all the control loops. The third row of each column inFIG.7shows the temporal change of the operation amounts MV1to MV4generated in the first to fourth control loops. The fourth rows of (b) and (c) ofFIG.7show an enlarged view of the deviation between the maximum PV and the minimum PV of the second row.

As shown in (a) ofFIG.7, when the same step-like target value is input to all the control loops, due to the difference in response speed, in the transient state before the target value is reached, variation in the control amounts occurs. In the example shown in (a) ofFIG.7, the deviation between the maximum PV and the minimum PV in all the control loops reaches a maximum of 50 with respect to the target value (=100).

On the other hand, as shown in (b) ofFIG.7, by inputting the target values generated by the target value generation module14into the follow-up control loops, in the transient state before the final target value is reached, the variation in the control amounts is suppressed. In the example shown in (b) ofFIG.7, the deviation between the maximum PV and the minimum PV in all the control loops is suppressed to less than 4 with respect to the target value (=100).

The operation amount MV1of the reference control loop (first control loop) is set to an upper limit value of 100 from the start of control until the control amount PV1approaches the target value (=100). That is, the operation amount is saturated. Therefore, it is possible to suppress a long settling time of the reference control loop. The settling time of the control system as a whole depends on the settling time of the reference control loop, which has the slowest response speed. Therefore, the settling time of the control system as a whole is not different between the example shown in (a) ofFIG.7and the example shown in (b) ofFIG.7.

In this way, it was confirmed that the control amounts of multiple control targets in the transient state can be made uniform without sacrificing the settling time.

In the example shown in (c) ofFIG.7, the deviation between the maximum PV and the minimum PV in all the control loops is further suppressed as compared with (b) ofFIG.7.

FIG.8is a diagram showing the temporal change of the target values input to the follow-up control loops in the example shown in (c) ofFIG.7.FIG.8shows the target value input to the fourth control loop having the fastest response speed. As described above, in order to perform model prediction control, the target value SPk+dof the control cycle in which the dead time d has elapsed from the current control cycle k, the target value SPk+d+H1of the control cycle in which d+H1has elapsed from the current control cycle k, and the target value SPk+d+H2of the control cycle in which d+H2has elapsed from the current control cycle k are input. Further, the target value SPkof the current control cycle k may also be input. As shown inFIG.8, the target values SPk, SPk+d, SPk+d+H1, and SPk+d+H2continuously increase toward the final target value (=100) with the passage of time. In the follow-up control loops, since the operation amounts are generated according to the target values generated from the control amount prediction value PVP of the reference control loop (first control loop), they are controlled to follow the control amount PV1of the reference control loop.

As shown inFIG.8, in the follow-up control loops, since the target values continuously increase, it is difficult to overshoot even if the control is strengthened. Therefore, in the example shown in (c) ofFIG.7, the control of the follow-up control loops is strengthened by making the prediction horizons H1and H2and the reference orbit time constant Tr of the follow-up control loops smaller than in the example shown in (b) ofFIG.7, and the control amounts of the follow-up control loops accurately follow the control amount of the reference control loop.

F-2. Second Simulation Example

Unlike the first simulation example, a simulation was performed in which a disturbance was applied to the reference control loop. Specifically, the disturbance was added to the operation amount of the reference control loop.

FIG.9is a diagram showing simulation results when there is a disturbance. InFIG.9, (a) in the left column shows the temporal change of the disturbance applied to the reference control loop (first control loop). In this example, the disturbance was applied during the period of 5 to 10 seconds. Further, the control start time was set to 0. InFIG.9, (b) in the middle column shows the simulation result when the same step-like target value SP (=100) was input to all the control loops. The right column (c) shows the simulation result when the step-like target value SP1(=100) was input to the reference control loop, and the target values generated by the target value generation module14were input to the follow-up control loops.

Further, in the example shown in (c) ofFIG.9, the prediction horizons H1and H2and the reference orbit time constant Tr having the same values as those shown in the example shown in (c) ofFIG.7were set.

The first rows of (b) and (c) ofFIG.9show the temporal change between the control amounts PV1to PV4of the first to fourth control loops and the target value SP1input to the reference control loop (first control loop). The second rows of (b) and (c) ofFIG.9show the temporal change of the deviation between the maximum control amount (maximum PV) and the minimum control amount (minimum PV) in all the control loops. The third rows of (b) and (c) ofFIG.9show the temporal change of the operation amounts MV1to MV4generated in the first to fourth control loops.

Due to the application of the disturbance, the response of the reference control loop (first control loop) is slightly faster in the example shown in (b) ofFIG.9than in the example shown in (a) ofFIG.7. Further, in the example shown in (b) ofFIG.9, the minimum value of the operation amount of the reference control loop is smaller than that in the example shown in (a) ofFIG.7.

As shown in (c) ofFIG.9, there is an increase in the operation amounts MV2to MV4of the follow-up control loops (second to fourth control loops) in the period from about 7 seconds to about 12 seconds, which is slightly later than the period when the disturbance is applied. This is because the influence of the disturbance appears in the control amount of the reference control loop, and the control amount prediction values and the future target values of the follow-up control loops increase accordingly. In this way, since the future target values of the follow-up control loops change according to the control amount of the reference control loop, the deviation between the maximum PV and the minimum PV in all the control loops is suppressed.

As described above, it was confirmed that even when the response of the reference control loop changes due to the influence of disturbance or the like, the distribution of the control amounts of multiple control targets can be uniformly controlled in the transient state.

G. ADVANTAGES

As described above, the control device1according to the embodiment includes multiple model prediction control modules10-1to10-nthat control the multiple control targets20-1to20-n, respectively. That is, the model prediction control module10-iis a control part for controlling the control target20-i. Each of the model prediction control modules10-1to10-ndetermines the operation amount MV for the corresponding control target so that the control amount PV of the corresponding control target matches the target value SP for each control cycle.

The model prediction control modules10-1to10-ninclude the model prediction control module10-1having the slowest response speed of the control amount PV with respect to the target value SP, and the model prediction control modules10-2to10-nother than the model prediction control module10-1.

The control device1further includes the control amount prediction module12and the target value generation module14. The control amount prediction module12predicts the future control amount (control amount prediction value PVP) of the control target20-1by using a dynamic characteristic model showing the dynamic characteristics of the control target20-1corresponding to the model prediction control module10-1for each control cycle. The target value generation module14generates the control amount prediction value PVP as the future target values of the control targets20-2to20-ncorresponding to the model prediction control modules10-2to10-n, respectively. The model prediction control modules10-2to10-ndetermine the operation amounts MV2to MVn for the control targets20-2to20-nbased on the future target values, respectively.

According to the above configuration, the model prediction control module10-j(j is an integer of 2 to n) generates the operation amount MVj so that the control amount PVj of the control target20-jfollows the control amount prediction value PVP, and outputs the generated operation amount MVj to the control target20-j. As a result, the control targets20-1to20-nare controlled so that the distribution of the control amounts in the transient state becomes a uniform distribution.

Further, the control amount prediction value PVP is predicted for each control cycle. Therefore, even when a disturbance or the like is applied to the reference control loop L1corresponding to the control target20-1and the response of the reference control loop L1changes, the control amount prediction value PVP is predicted according to the response after the change. As a result, even when the response changes due to the influence of disturbance or the like, the distribution of the control amounts of the control targets20-1to20-ncan be restored to a uniform distribution in the transient state.

The settling time of the control system SYS as a whole depends on the settling time of the reference control loop L1, which has the slowest response speed. The model prediction control module10-1of the reference control loop L1determines the operation amount MV1for the control target20-1based on the step-like target value SP1. As a result, even if the distribution of the control amount of the control target20-1is controlled to be a uniform distribution, it is possible to suppress the lengthening of the settling time of the control system SYS as a whole. That is, the control amounts of the control targets20-1to20-nin the transient state can be made uniform without sacrificing the settling time of the control system SYS as a whole.

The model prediction control module10-1calculates the model input value MVP to the dynamic characteristic model of each control cycle by model prediction control using the dynamic characteristic model corresponding to the control target20-1so that the required change amount for making the control amount PV1of the control target20-1match the target value SP1is output from the dynamic characteristic model. Then, the model prediction control module10-1determines the model input value MVP of the current control cycle as the operation amount MV1for the control target20-1. The control amount prediction module12predicts the control amount prediction value PVP by inputting the model input value MVP of the control cycle after the current control cycle into the dynamic characteristic model. As a result, the control amount prediction module12can predict the control amount prediction value PVP by using the calculation result of the model prediction control module10-1. As a result, the calculation load is reduced.

When the model input value MVP exceeds the predetermined upper limit value MVH, the model prediction control module10-1corrects the model input value MVP to the upper limit value MVH, and when the model input value MVP is lower than the predetermined lower limit value MVL, the model prediction control module10-1corrects the model input value MVP to the lower limit value MVL. As a result, the model output is calculated using the operation amount MV corrected to the upper limit value MVH or the lower limit value MVL due to saturation, and a decrease in prediction accuracy can be avoided.

The model prediction control module10-j(j is an integer of 2 to n) determines the operation amount MVj for the control target20-jby performing model prediction control using a dynamic characteristic model showing the dynamic characteristics of the corresponding control target20-j. As a result, the model prediction control module10-jcan generate the operation amount MVj using the future target value SPj generated by the target value generation module14.

H. MODIFIED EXAMPLES

H-1. Modified Example 1

In the above description, an example in which the distribution of the control amounts of multiple control targets in the transient state is made a uniform distribution has been described. However, the control targets may be controlled so that the distribution of the control amounts of the control targets in the transient state becomes a desired distribution other than the uniform distribution.

For example, there may be a request that the control amounts of the follow-up control loops be controlled so as to have a difference of a predetermined bias with respect to the control amount of the reference control loop. When responding to this request, the target value generation module14may generate values obtained by adding the predetermined bias to the control amount prediction value PVP as the future target values of the follow-up control loops.

FIG.10is a diagram showing a simulation result when values obtained by adding the predetermined bias to the control amount prediction value are set as the target values of the follow-up control loops. The first row shows the temporal change between the control amounts PV1to PV4of the first to fourth control loops and the target value SP1input to the reference control loop (first control loop). The second row shows the temporal change of the deviation between each of the control amounts PV2, PV3, and PV4of the follow-up control loops and the control amount PV1of the reference control loop. The third row shows the temporal change of the operation amounts MV1to MV4generated in the first to fourth control loops.

FIG.10shows an example in which the final target values of the second to fourth control loops, which are the follow-up control loops, have a difference of +10, +20, and +30 with respect to the final target value (=100) of the reference control loop (first control loop). Therefore, the target value generation module14generates values obtained by adding +10, +20, and +30 to the control amount prediction value PVP as the future target values of the second to fourth control loops, respectively. As a result, as shown inFIG.10, from the early stage after the start of control (after about 7 seconds have elapsed), the control amounts PV2to PV4of the second to fourth control loops have differences of +10, +20, and +30 with respect to the control amount PV1of the reference control loop, respectively. As described above, it was confirmed that the first to fourth control targets can be controlled so that the control amounts of the follow-up control loops have a distribution having a difference of a predetermined bias with respect to the control amount of the reference control loop in the transient state.

Alternatively, there may be a request that the control amounts of the follow-up control loops be controlled so as to have a predetermined ratio with respect to the control amount of the reference control loop. When responding to this request, the target value generation module14may generate values obtained by multiplying the control amount prediction value PVP by the predetermined ratio as the future target values of the follow-up control loops.

FIG.11is a diagram showing a simulation result when values obtained by multiplying the control amount prediction value by the predetermined ratio are set as the target values of the follow-up control loops. The first row shows the temporal change between the control amounts PV1to PV4of the first to fourth control loops and the target value SP1input to the reference control loop (first control loop). The second row shows the temporal change of the ratio of each of the control amounts PV2, PV3, and PV4of the follow-up control loops with respect to the control amount PV1of the reference control loop. The third row shows the temporal change of the operation amounts MV1to MV4generated in the first to fourth control loops.FIG.11shows an example in which the final target values of the second to fourth control loops, which are the follow-up control loops, have a ratio of 1.1 times, 1.2 times and 1.3 times with respect to the final target value (=100) of the reference control loop (first control loop). Therefore, the target value generation module14generates values obtained by multiplying the control amount prediction value PVP by 1.1, 1.2, and 1.3 as the future target values of the second to fourth control loops, respectively. As a result, as shown inFIG.11, immediately after the start of control, the control amounts PV2to PV4of the second to fourth control loops have ratios of 1.1, 1.2, and 1.3 with respect to the control amount PV1of the reference control loop, respectively. As described above, it was confirmed that the first to fourth control targets can be controlled so that the control amounts of the follow-up control loops have a distribution that has a predetermined ratio with respect to the control amount of the reference control loop in the transient state.

H-2. Modified Example 2

In the above description, an example of controlling multiple control targets included in the heating device2has been described. However, the control device1may control multiple control targets included in other devices or systems.

For example, multiple control targets may have valves, and the control device1may adjust the opening degree of the valves to control the pressure, the flow rate, or the load as the control amounts of the multiple control targets.

I. APPENDIX

As described above, the embodiments and modified examples include the following disclosure.

(Configuration 1)

1. A control device (1) including a plurality of control parts (10-1to10-n) for controlling a plurality of control targets (20-1to20-n),wherein each of the control parts (10-1to10-n) determines an operation amount for a corresponding control target among the control targets (20-1to20-n) so that a control amount of the corresponding control target matches a target value for each control cycle, andthe control parts (10-1to10-n) include a first control part (10-1) having a slowest response speed of the control amount with respect to the target value and a second control part (10-2to10-n) other than the first control part, andwherein the control device (1) further includes:a prediction part (12) for predicting a future control amount of a first control target (20-1) that corresponds to the first control part (10-1) among the control targets (20-1to20-n) by using a first model showing dynamic characteristics of the first control target (20-1) for each control cycle; anda generation part (14) for generating a future target value of a second control target (20-2to20-n) that corresponds to the second control part (10-2to10-n) among the control targets (20-1to20-n) from the future control amount,wherein the second control part (10-2to10-n) determines the operation amount for the second control target (20-2to20-n) based on the future target value.
(Configuration 2)

The control device (1) according to Configuration 1, wherein the first control part (10-1) determines the operation amount for the first control target (20-1) based on a step-like target value.

(Configuration 3)

The control device (1) according to Configuration 1 or Configuration 2,wherein the first control part (10-1)calculates an input value to the first model of each control cycle by model prediction control using the first model so that a required change amount for making the control amount of the first control target (20-1) match the target value is output from the first model, anddetermines the input value of a current control cycle as the operation amount to the first control target (20-1), andwherein the prediction part (12) predicts the future control amount by inputting the input value of a control cycle after the current control cycle into the first model.
(Configuration 4)

The control device (1) according to Configuration 3, wherein when the input value exceeds a predetermined upper limit value, the first control part (10-1) corrects the input value to the upper limit value, and when the input value is lower than a predetermined lower limit value, the first control part (10-1) corrects the input value to the lower limit value.

(Configuration 5)

The control device (1) according to any one of Configurations 1 to 4, wherein the second control part (10-2to10-n) determines the operation amount for the second control target (20-2to20-n) by model prediction control using a second model showing dynamic characteristics of the second control target (20-2to20-n).

(Configuration 6)

The control device (1) according to any one of Configurations 1 to 5, wherein the generation part (14) generates the future control amount, a value obtained by adding a predetermined bias to the future control amount, or a value obtained by multiplying the future control amount by a predetermined ratio as the future target value.

(Configuration 7)

The control device (1) according to any one of Configurations 1 to 6, wherein the control amount is a temperature, a pressure, a flow rate or a load.

(Configuration 8)

A control method of a control system (SYS) including a plurality of control parts (10-1to10-n) respectively corresponding to a plurality of control targets (20-1to20-n),wherein each of the control parts (10-1to10-n) determines an operation amount for a corresponding control target among the control targets (20-1to20-n) so that a control amount of the corresponding control target matches a target value, andthe control parts (10-1to10-n) include a first control part (10-1) having a slowest response speed of the control amount with respect to the target value and a second control part (10-2to10-n) other than the first control part, andwherein the control method includes:predicting a future control amount of a first control target (20-1) that corresponds to the first control part (10-1) among the control targets (20-1to20-n) by using a first model showing dynamic characteristics of the first control target (20-1) for each control cycle;generating a future target value of a second control target (20-2to20-n) that corresponds to the second control part (10-2to10-n) among the control targets (20-1to20-n) from the future control amount; andoutputting the future target value to the second control part (10-2to10-n) and determining the operation amount for the second control target (20-2to20-n) based on the future target value.
(Configuration 9)

A control program that causes a computer to execute a control method of a control system (SYS) including a plurality of control parts (10-1to10-n) respectively corresponding to a plurality of control targets (20-1to20-n),wherein each of the control parts (10-1to10-n) determines an operation amount for a corresponding control target among the control targets (20-1to20-n) so that a control amount of the corresponding control target matches a target value, andthe control parts (10-1to10-n) include a first control (10-1) part having a slowest response speed of the control amount with respect to the target value and a second control part (10-2to10-n) other than the first control part,wherein the control method includes:predicting a future control amount of a first control target (20-1) that corresponds to the first control part (10-1) among the control targets (20-1to20-n) by using a first model showing dynamic characteristics of the first control target (20-1) for each control cycle;generating a future target value of a second control target (20-2to20-n) that corresponds to the second control part (10-2to10-n) among the control targets (20-1to20-n) from the future control amount; andoutputting the future target value to the second control part (10-2to10-n) and determining the operation amount for the second control target (20-2to20-n) based on the future target value.

Although embodiments of the disclosure have been described, it should be considered that the embodiments disclosed herein are exemplary in all respects and not restrictive. The scope of the disclosure is defined by the claims, and is intended to include all modifications within the meaning and scope equivalent to the claims.