Control system and control method
The control system addresses non-linear control challenges by using a dataset library to supplement missing data and correct operation amounts, ensuring effective PID control for non-linear systems.
Patent Information
- Application Number
- JP2024004597
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-01-16
- Publication Date
- 2025-07-29
AI Technical Summary
Existing PID control methods struggle to maintain good control characteristics for control objects with strong non-linear characteristics, such as temperature, flow rate, and pressure control systems, leading to vertical fluctuations in controlled variables.
A control system and method that utilizes a dataset library to supplement missing data sets by calculating matching degrees, stretching and shrinking data changes, and correcting operation amounts, enabling effective PID control even with non-linear characteristics.
The system achieves good control characteristics for non-linear control objects by automating countermeasures for data set shortages, efficiently utilizing PID controllers.
Smart Images

Figure 2025110649000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a control system and a control method for performing control using a library of time-series data of a control quantity and time-series data of an operation quantity.
Background Art
[0002] Regarding PID control, an automatic tuning technique for PID parameters for suitably maintaining the control performance when the set value SP is changed has been disclosed (see Patent Document 1). This PID parameter tuning technique is applicable to a temperature controller, which is a PID controller for performing temperature control. Further, it is a method of searching for PID parameters so as to follow the target trajectory of the control quantity PV, and theoretically, it is a method assuming a control object with linear characteristics.
[0003] The linear characteristic means that, as shown in FIG. 18, when the output value of the theoretical operation quantity MV on the horizontal axis of the graph takes 0% to 100% and the output action on the actual control object on the vertical axis takes 0% to 100%, the relationship between the theoretical operation quantity MV and the output action on the actual control object is linear. However, for example, as shown in FIG. 19, some non-linear characteristics (weak non-linear characteristics) can apply the technique disclosed in Patent Document 1 as the allowable range of PID control.
[0004] In the method disclosed in Patent Document 1, good performance of PID control cannot be maintained for a control object with strong non-linear characteristics as shown in FIG. 20, for example, in the relationship between theory and practice. Such strong non-linear characteristics appear in a temperature control system using a special electric heater, or a flow rate control system or a pressure control system that controls a fluid with a valve.
[0005] Therefore, FIGS. 21 to 23 show simulation results when the temperature is increased by PID control to different target temperatures (set values SP) from a state where the operation quantity MV (heater output) is 0% and the control quantity PV (temperature) is settled at 50°C. In these simulations, when the temperature is increased from 50°C to 150°C shown in FIG. 21, the PID parameters are adjusted so that the control quantity PV follows the target temperature.
[0006] Here, when the temperature is increased from 50°C to 250°C as shown in FIG. 22, if the same PID parameters as in the case of FIG. 21 are used, the controlled variable PV will exhibit vertical fluctuations. Similarly, when the temperature is increased from 50°C to 350°C as shown in FIG. 23, if the same PID parameters as in the case of FIG. 21 are used, even larger vertical fluctuations will occur in the controlled variable PV. The reason for the vertical fluctuations in the controlled variable PV is that, as shown in FIG. 24, the theoretical and actual slopes of the manipulated variable MV (approximately 70% in the case of FIG. 21, approximately 80% in the case of FIG. 22, and approximately 90% in the case of FIG. 23) for maintaining each target temperature in FIGS. 21 to 23 are different. The larger the slope, the more likely vertical fluctuations are to occur.
[0007] As described above, for example, it is difficult to obtain good control characteristics with PID control for a control object with strong non-linear characteristics. On the other hand, the PID control loop is executed by a dedicated PID controller (such as a temperature controller) for PID calculation for the purpose of maintaining a stable and safe control operation, which is also a standard instrumentation concept in the industrial field, especially within manufacturing equipment. That is, while maintaining the reasons for which the PID controller should be utilized, it is necessary to exceed the limitations of PID control, and improvements are being sought.
[0008] Therefore, the inventor proposed a control method for reproducing an ideal transient response result obtained through trial and error (Japanese Patent Application Nos. 2023-144292, 2023-149006, and 2023-149007). In this control method, for example, the time-series data of the controlled variable PV is used as the reference set value SP_r, and the time-series data of the manipulated variable MV is used as the manipulated variable MV_f for feedforward control. When performing such control, by collecting a large number of data sets of the time-series data of the controlled variable PV and the time-series data of the manipulated variable MV, a library that can handle many cases including strong non-linear characteristics can be formed.
[0009] However, the library method is preferably not applicable to overly diversified temperature increase operations, and is suitable for applications where several limited temperature increase operations are repeated. When the degree of diversification is high, a situation may occur where there is no dataset that matches the temperature increase operation to be executed (insufficient dataset). If it is premised on collecting a large number of datasets and creating a library, when the dataset is insufficient, it becomes difficult to select a dataset when actually executing control. Therefore, it is desirable to automate the countermeasures when an insufficient dataset occurs.
Prior Art Documents
Patent Documents
[0010]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0011] The present invention has been made to solve the above problems, and an object thereof is to provide a control system and a control method capable of obtaining good control characteristics for a control target with strong non-linear characteristics by using a dataset library.
Means for Solving the Problems
[0012] The control system of the present invention includes a first storage unit configured to store a data set of time-series data of a control amount and time-series data of an operation amount, a data generation information acquisition unit configured to acquire information on a change in the control amount for identifying a missing data set that is not stored in the first storage unit among the data sets required by a PID controller, a control amount matching degree calculation unit configured to calculate, for each of the data sets stored in the first storage unit, a degree of match of the change in the control amount with the missing data set based on the information acquired by the data generation information acquisition unit, a data set selection unit configured to select, in order from the top, a specified number of the top data sets in the data sets stored in the first storage unit that have a change in the control amount close to that of the missing data set based on the matching degree, a data stretching and shrinking processing unit configured to generate time-series data of a provisional control amount by stretching and shrinking the amount of change in the control amount at each time of the selected data set and generate time-series data of a provisional operation amount by stretching and shrinking the amount of change in the operation amount at each time of the selected data set, an operation amount position correction unit configured to correct the magnitude of the initial operation amount of the provisional operation amount by correcting the magnitude of the initial operation amount of the provisional operation amount based on a second ratio of the initial control amount of the missing data set to the initial control amount of the selected data set, so as to correct the magnitude of the time-series data of the provisional operation amount, and a data set generation unit configured to store, in the first storage unit as a supplement to the missing data set, a data set of the time-series data of the provisional control amount generated by the data stretching and shrinking processing unit and the time-series data of the provisional operation amount corrected by the operation amount position correction unit, and a transmission unit configured to transmit the data set stored in the first storage unit to the PID controller or transmit data generated from the data set stored in the first storage unit to the PID controller after the data set is stored by the data set generation unit.
[0013] Further, in one configuration example of the control system of the present invention, when the specified number of the selected data sets is plural, the data set generation unit integrates the plurality of time series data of the provisional control amounts generated by the data expansion / contraction processing unit and the plurality of time series data of the provisional operation amounts corrected by the operation amount position correction unit, and stores the data set as a supplement for the lacking data set in the first storage unit. Further, in one configuration example of the control system of the present invention, the data expansion / contraction processing unit calculates the result of cumulatively adding the value obtained by multiplying the amount of change in the control amount of the selected data set at each time by the first ratio to the initial control amount of the lacking data set up to the time to be calculated, and sets it as the provisional control amount after the expansion / contraction processing at the time to be calculated. Also, the data expansion / contraction processing unit calculates the result of cumulatively adding the value obtained by multiplying the amount of change in the operation amount of the selected data set at each time by the first ratio to the initial operation amount of the selected data set up to the time to be calculated, and sets it as the provisional operation amount after the expansion / contraction processing at the time to be calculated. The operation amount position correction unit corrects the size of the time series data of the provisional operation amount by multiplying the initial operation amount of the time series data of the provisional operation amount obtained by the data expansion / contraction processing unit by the second ratio. Further, one configuration example of the control system of the present invention further includes an ideal response generation unit configured to generate a plurality of sets of data sets of the time series data of the control amount and the time series data of the operation amount corresponding to an ideal control response. The first storage unit stores the data sets generated by the ideal response generation unit.
[0014] Also, in one configuration example of the control system of the present invention, when a prescribed timing is reached, the transmission unit sequentially extracts data of the control amount for each control cycle from the time-series data stored in the first storage unit and sequentially transmits it to the PID controller. At the same time, data of the operation amount for each control cycle is sequentially extracted from the time-series data stored in the first storage unit, and data of the operation amount change width calculated from the extracted data is sequentially transmitted to the PID controller. The PID controller is configured to receive the control amount transmitted from the transmission unit as a new value of the reference set value, and to receive the operation amount change width transmitted from the transmission unit as a new value of the feed-forward control operation amount change width. It includes a reception unit, a control amount acquisition unit configured to acquire a measured value of the control amount, a feed-forward addition unit configured to calculate, as a second operation amount, a value obtained by adding the feed-forward control operation amount change width received by the reception unit to the first operation amount one control cycle before, a feedback addition unit configured to perform speed-type PID calculation with the reference set value and the measured value of the control amount as inputs to calculate the change width of the feedback control operation amount, and calculate a value obtained by adding the change width of the feedback control operation amount to the second operation amount as a new value of the first operation amount, and an operation amount output unit configured to output the first operation amount calculated by the feedback addition unit to the control target.
[0015] Also, in one configuration example of the control system of the present invention, the transmission unit transmits the time-series data of the control amount and the time-series data of the operation amount stored in the first storage unit to the PID controller. The PID controller includes a reception unit configured to receive the time-series data of the control amount and the time-series data of the operation amount transmitted from the transmission unit, a second storage unit configured to store the time-series data of the control amount and the time-series data of the operation amount received by the reception unit, a start signal input unit configured to receive a start signal for instructing the start of a control operation from the outside, and when the start signal input unit receives the start signal and the control operation is started, data of the control amount for each control period is sequentially read from the time-series data stored in the second storage unit as a new value of a reference set value for each control period, and at the same time, data of the operation amount for each control period is sequentially read from the time-series data stored in the second storage unit as a new value of a feedforward control operation amount for each control period. The PID controller further includes a control amount acquisition unit configured to acquire a measured value of the control amount, a feedback calculation unit configured to perform a PID calculation using the reference set value and the measured value of the control amount as inputs to calculate a first operation amount, a feedforward addition unit configured to add the feedforward control operation amount to the first operation amount to calculate a second operation amount, and an operation amount output unit configured to output the second operation amount calculated by the feedforward addition unit to a control target.
[0016] Also, one configuration example of the control system of the present invention further includes a functional equation approximation substitution unit configured to approximate the time-series data of the operation amount stored in the first storage unit by a function in which the second derivative is continuous. The transmission unit sequentially extracts data of the control amount for each control cycle from the time-series data stored in the first storage unit and sequentially transmits it to the PID controller when a specified timing is reached, and also transmits the parameter value of the approximation formula obtained by the functional equation approximation substitution unit to the PID controller. The PID controller receives the control amount transmitted from the transmission unit as a new value of the reference set value, and is configured to receive the parameter value of the approximation formula transmitted from the transmission unit as the parameter value of the approximation formula of the feedforward control operation amount. It includes a reception unit, a control amount acquisition unit configured to acquire a measured value of the control amount, a feedback calculation unit configured to perform PID calculation with the reference set value and the measured value of the control amount as inputs to calculate a first operation amount, and based on the parameter value received by the reception unit. A feedforward addition unit configured to calculate a feedforward control operation amount and add this feedforward control operation amount to the first operation amount to calculate a second operation amount, and an operation amount output unit configured to output the second operation amount calculated by the feedforward addition unit to a control target.
[0017] Further, the control method of the present invention refers to a storage unit that stores a data set of time-series data of a control amount and time-series data of an operation amount, and among the data sets required by a PID controller, it acquires information on a change in the control amount for identifying a lacking data set that is not stored in the storage unit in a first step; in a second step, for each of the data sets stored in the storage unit, it calculates a degree of coincidence of a change in the control amount with the lacking data set based on the information acquired in the first step; in a third step, based on the degree of coincidence, it selects, in order from the top, a specified number of upper data sets in the data sets stored in the storage unit, the change in the control amount of which is close to that of the lacking data set; in a fourth step, based on a first ratio of a difference between an initial control amount and a final control amount of the lacking data set to a difference between an initial operation amount and a final control amount of the selected data set, it expands and contracts a change amount of the control amount at each time of the selected data set to generate time-series data of a provisional control amount, and at the same time, expands and contracts a change amount of the operation amount at each time of the selected data set to generate time-series data of a provisional operation amount; in a fifth step, it corrects the magnitude of the initial operation amount of the provisional operation amount by correcting the magnitude of the initial operation amount of the provisional operation amount based on a second ratio of the initial control amount of the lacking data set to the initial control amount of the selected data set, thereby correcting the magnitude of the time-series data of the provisional operation amount; in a sixth step, it stores a data set of the time-series data of the provisional control amount generated in the fourth step and the time-series data of the provisional operation amount corrected in the fifth step in the storage unit for supplementing the lacking data set; and in a seventh step, after storing the data set in the sixth step, it transmits the data set stored in the storage unit to the PID controller, or transmits data generated from the data set stored in the storage unit to the PID controller.
[0018] Further, in one configuration example of the control method of the present invention, when there are a plurality of specified numbers of the selected data sets, the sixth step integrates a plurality of time series data of the provisional control amounts generated in the fourth step and a plurality of time series data of the provisional operation amounts corrected in the fifth step, and stores the data set thereof in the storage unit for supplementing the missing data set. This is a characteristic feature. Further, in one configuration example of the control method of the present invention, the fourth step calculates the result of cumulatively adding the value obtained by multiplying the amount of change per time of the control amount of the selected data set by the first ratio to the initial control amount of the missing data set up to the time to be calculated, and sets it as the provisional control amount after the expansion / contraction process at the time to be calculated. At the same time, the fourth step includes the step of calculating the result of cumulatively adding the value obtained by multiplying the amount of change per time of the operation amount of the selected data set by the first ratio to the initial operation amount of the selected data set up to the time to be calculated, and setting it as the provisional operation amount after the expansion / contraction process at the time to be calculated. The fifth step includes the step of correcting the size of the time series data of the provisional operation amount by multiplying the initial operation amount of the time series data of the provisional operation amount obtained in the fourth step by the second ratio. This is a characteristic feature.
Effects of the Invention
[0019] According to the present invention, by transmitting a data set of time series data of a control amount and time series data of an operation amount to a PID controller, good control characteristics can be obtained for a control object with strong non-linear characteristics while efficiently utilizing the PID controller. Further, in the present invention, by providing a data generation information acquisition unit, a control amount consistency calculation unit, a data set selection unit, a data expansion / contraction processing unit, an operation amount position correction unit, and a data set generation unit, it is possible to automate the countermeasures when a shortage of the data set occurs.
Brief Description of the Drawings
[0020]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
Figure 15
Figure 16
Figure 17
Figure 18
Figure 19
Figure 20
Figure 21
Figure 22
Figure 23
Figure 24
MODE FOR CARRYING OUT THE INVENTION
[0021] [Principle of the Invention] It is possible to obtain changes in the control amount PV and the manipulated variable MV that are close to an ideal control response through simulation using a control target model that may include strong non-linear characteristics (a virtual control target for reproducing the behavior of the control target on a computer based on mathematical expressions such as differential equations), or through control trials using an actual control target.
[0022] Therefore, if the time-series data of the control variable PV obtained by simulation or control trials is used as the reference set value SP_r, and the time-series data of the manipulated variable MV is used as the manipulated variable MV_f for feedforward control, it is theoretically possible to implement feedback control (PID control) that follows the reference set value SP_r even for a control object with strong non-linear characteristics.
[0023] By the way, the execution of simulation by the control object model and the storage of a large number of time-series data sets assuming various conditions should be carried out by an industrial personal computer (IPC) or a programmable logic controller (PLC) that is higher than a PID controller (a local controller with limited computing functions for the purpose of stable continuation) such as a thermostat. Therefore, the distributed arrangement of each functional block becomes essential.
[0024] Therefore, the inventor focused on the fact that in a thermostat, the temperature control itself is generally a velocity-type PID algorithm because it is tuned at an arbitrary equilibrium point due to the heat insulation of the device housing. Then, the inventor came up with the idea that a configuration with an external input of the manipulated variable change range ΔMV_f is suitable on the thermostat side. By basing on this configuration, the calculation amount and storage amount of the PID controller (such as a thermostat) itself can be reduced as much as possible, so that it can be improved to an instrumentation that can easily maintain stable continuation while coping with strong non-linear characteristics.
[0025] In addition, by collecting a large number of data sets of the time-series data of the control variable PV and the time-series data of the manipulated variable MV, a library that can handle many cases including strong non-linear characteristics can be formed. However, when targeting diversified heating operations, a situation where there is no data set that matches the heating operation to be executed (insufficient data sets) is also conceivable. For example, even if the time-series data during the heating operation from 50°C to 250°C shown in Fig. 1(A) and the time-series data during the heating operation from 70°C to 300°C shown in Fig. 1(B) can be collected, a situation where there is no time-series data during the heating operation from 40°C to 280°C shown in Fig. 2 may occur.
[0026] Assuming that a large number of datasets are collected and made into a library, if there is a shortage of datasets, it becomes difficult to select a dataset when actually performing control. Therefore, it is desirable to automate the countermeasures when a shortage of datasets occurs.
[0027] If a control system is designed for the purpose of controlling temperature, pressure, flow rate, etc., even if it is a strongly nonlinear system, it will become a monotonically increasing or decreasing system. Therefore, even assuming a strongly nonlinear system, it is reasonable to perform stretching, shrinking, and synthesis of time-series data as monotonically increasing or decreasing. That is, even if there is nonlinearity, it is generally assumed that the nonlinearity cannot be specified in detail in many cases. Therefore, it is general and preferable to take measures assuming linear characteristics.
[0028] For example, when the variation width of the controlled variable PV_x of the dataset newly required by a PID controller is ΔPV_x, and the variation width of the controlled variable PV_s of one dataset selected from the library is ΔPV_s, for the time-series data of the controlled variable PV_s and the manipulated variable MV_s, the change width between the data is stretched and shrunk by a magnification of ΔPV_x / ΔPV_s.
[0029] Also, in the selection from the library, since the essential purpose of control is to make the controlled variable PV follow the setpoint SP, it is preferable to select using the proximity (smallness of the difference) of the controlled variable PV to the newly required dataset as the judgment criterion. The selection may be the top one dataset with a similar change in the controlled variable PV, or multiple top datasets. In the case of multiple datasets, the datasets can be synthesized and determined by weighted average or the like. The inventor has conceived that by selecting, stretching, shrinking, and synthesizing existing datasets in this way, it is possible to automate the countermeasures when a shortage of datasets occurs.
[0030] [First Embodiment] FIG. 3 is a block diagram showing the configuration of a control system according to a first embodiment of the present invention. The control system includes an industrial PC 1 (host device) and a PID controller 2. The industrial PC 1 includes an ideal response generation unit 10 that generates time-series data of a control amount PV corresponding to an ideal control response and time-series data of an operation amount MV, a storage unit 11 that stores a data set of the time-series data of the control amount PV and the time-series data of the operation amount MV, a data generation information acquisition unit 12 that acquires information on a change in the control amount PV (change in the set value SP) for identifying a missing data set that is not stored in the storage unit 11 among the data sets required by the PID controller 2, a control amount coincidence degree calculation unit 13 that calculates the degree of coincidence of the change in the control amount PV with the missing data set for each of the data sets stored in the storage unit 11 based on the information acquired by the data generation information acquisition unit 12, a data set selection unit 14 that selects a specified number of upper data sets having a change in the control amount PV close to that of the missing data set from among the data sets stored in the storage unit 11 based on the degree of coincidence, a data stretching process unit 15 that generates time-series data of a provisional control amount PVx by stretching the amount of change δPV per time of the control amount PV of the selected data set and generates time-series data of a provisional operation amount MVx by stretching the amount of change δMV per time of the operation amount MV of the selected data set, an operation amount position correction unit 16 that corrects the magnitude of the initial operation amount of the provisional operation amount MVx by correcting the ratio of the initial control amount of the missing data set to the initial control amount of the selected data set, thereby correcting the magnitude of the time-series data of the provisional operation amount MVx, and a data set generation unit 17 that stores a data set of the time-series data of the provisional control amount PVx generated by the data stretching process unit 15 and the time-series data of the provisional operation amount MVx corrected by the operation amount position correction unit 16 in the storage unit 11 for supplementing the missing data set.
[0031] Furthermore, when the specified timing is reached, the industrial PC 1 has a control quantity output unit 19 that sequentially extracts data of the control quantity PV for each control cycle from the time-series data stored in the storage unit 11 and sequentially transmits it to the PID controller 2, and when the specified timing is reached, it sequentially extracts data of the manipulated variable MV for each control cycle from the time-series data stored in the storage unit 11, and sequentially transmits data of the manipulated variable change width ΔMV calculated from the extracted data to the PID controller 2. An output unit 20 for the change width of the manipulated variable, an output unit 21 for the upper limit value of the manipulated variable that transmits the upper limit value OH_x of the manipulated variable assuming the error range of the manipulated variable MV for each control cycle to the PID controller 2 when the specified timing is reached, and when the specified timing is reached, it is provided with an output unit 22 for the lower limit value of the manipulated variable that transmits the lower limit value OL_x of the manipulated variable assuming the error range of the manipulated variable MV for each control cycle to the PID controller 2. The control quantity output unit 19, the output unit 20 for the change width of the manipulated variable, the output unit 21 for the upper limit value of the manipulated variable, and the output unit 22 for the lower limit value of the manipulated variable constitute a transmission unit 23.
[0032] The PID controller 2 includes a setpoint input unit 30 that receives the controlled variable PV transmitted from the industrial PC 1 as a new value of the reference setpoint SP_r, an operating variable change width input unit 31 that receives the operating variable change width ΔMV transmitted from the industrial PC 1 as a new value of the feedforward control operating variable change width ΔMV_f, an operating variable upper limit value input unit 32 that receives the operating variable upper limit value OH_x transmitted from the industrial PC 1, an operating variable lower limit value input unit 33 that receives the operating variable lower limit value OL_x transmitted from the industrial PC 1, a controlled variable acquisition unit 34 that acquires the measured value of the controlled variable PV, a feedforward addition unit 35 that calculates, as the operating variable MV_z (the second operating variable), a value obtained by adding the feedforward control operating variable change width ΔMV_f to the operating variable MV_x' (the first operating variable) one control cycle before, a feedback addition unit 36 that performs a velocity-type PID calculation with the reference setpoint SP_r and the measured value of the controlled variable PV as inputs to calculate the feedback control operating variable change width ΔMV_b, and calculates, as a new value of the operating variable MV_x', a value obtained by adding the feedback control operating variable change width ΔMV_b to the operating variable MV_z obtained by the feedforward addition unit 35, and a limit processing unit 37 that outputs the operating variable MV_x' calculated by the feedback addition unit 36 as an operating variable MV (the third operating variable) limited to a value within the range of the operating variable upper limit value OH_x and the operating variable lower limit value OL_x, and an operating variable output unit 38 that outputs the operating variable MV obtained by the limit processing unit 37 to the controlled object.
[0033] The setpoint input unit 30, the operating variable change width input unit 31, the operating variable upper limit value input unit 32, and the operating variable lower limit value input unit 33 constitute a receiving unit 39. The transmitting unit 23 and the receiving unit 39 may transmit and receive data by wired communication or wireless communication. Further, the present invention is not limited to a specific communication standard, and an appropriate communication standard may be appropriately selected to realize the communication between the industrial PC 1 and the PID controller 2.
[0034] FIG. 4 is a flowchart for explaining the operation of the industrial PC 1. The ideal response generation unit 10 of the industrial PC 1 generates data on the time change of the control quantity PV corresponding to an ideal control response and data on the time change of the manipulated variable MV output to the controlled object during this control response (step S100 in FIG. 4). The ideal response generation unit 10 may obtain changes in the control quantity PV and the manipulated variable MV close to an ideal control response by searching for an optimal solution in a simulation using a controlled object model that may include strongly non-linear characteristics, or by instructing an automatic trial of control using an actual controlled object. In the present invention, the method for generating data by the ideal response generation unit 10 is not particularly limited.
[0035] The ideal response generation unit 10 generates time-series data of the control quantity PV and time-series data of the manipulated variable MV for each preset control condition. The control condition usually refers to, for example, the condition for changing the set value SP (the set value SP before the change and the set value SP after the change) assumed in the temperature increase control using the PID controller 2 (thermometer).
[0036] To each of the generated time-series data of the control quantity PV and the time-series data of the manipulated variable MV, time information (timestamp) with the start time of the control operation set as time 0 is added. It is desirable that the time interval of the generated time-series data is the same as the control period of the PID controller 2, but a finer time interval than the control period may also be used.
[0037] The storage unit 11 stores a data set of the time-series data of the control quantity PV and the time-series data of the manipulated variable MV generated by the ideal response generation unit 10 for each control condition (step S101 in FIG. 4). To the data set generated for each control condition, a data set ID unique to the data set and a control condition ID corresponding to the control condition are added by the ideal response generation unit 10. The storage unit 11 stores these IDs together with the data set.
[0038] Note that the ideal response generation unit 10 needs to end data generation at the point in time when a specified end time has elapsed since the control amount PV has settled after the set value SP has been changed. The reason is that if data generation is continued, the storage capacity of the storage unit 11 will become extremely large.
[0039] By repeating the processes of steps S100 and S101, a plurality of data sets are stored in the storage unit 11. In generating data sets by searching for the optimal solution in simulation, it is relatively easy to generate data sets of various heating operations. On the other hand, in generating data sets using an actual control target, if one attempts to collect data sets of various heating operations, it takes time and effort, and there may be cases where a sufficient number of data sets cannot be collected. Therefore, this embodiment is particularly effective in generating data sets using an actual control target.
[0040] Next, the data generation information acquisition unit 12 acquires information on the change in the control amount PV for identifying the data sets that are lacking and not stored in the storage unit 11 among the data sets required by the PID controller 2 (step S102 in FIG. 4). As information on the change in the control amount PV, there are an initial control amount PV_o1 and a final control amount PV_s1.
[0041] For example, the control conditions and control condition IDs assumed in the temperature control of a heating device using the PID controller 2 are set in advance as designation information for the data sets required by the PID controller 2. When the data generation information acquisition unit 12 determines that the data set with the control condition ID designated by the designation information is not stored in the storage unit 11, it determines that the data set is lacking, and acquires the control conditions of the lacking data set as information on the change in the control amount PV. Specifically, the data generation information acquisition unit 12 acquires the set value SP before the change of the lacking data set as the initial control amount PV_o1, and the set value SP after the change of the lacking data set as the final control amount PV_s1.
[0042] Subsequently, for each of the data sets stored in the storage unit 11, the control amount consistency calculation unit 13 calculates the degree of proximity (consistency) of the change in the control amount PV with the missing data set based on the information acquired by the data generation information acquisition unit 12 (step S103 in FIG. 4).
[0043] For example, in the case of time-series data during temperature rise in the temperature control of a heating device, let the initial control amount in the time-series data of the control amount PV stored in the storage unit 11 be PV_o, and the final control amount that is the target to be reached in the synchronous series data be PV_s. The control amount consistency calculation unit 13 calculates the absolute value Dpv_o of the difference between the initial control amount PV_o of the data set for which the consistency F is to be calculated and the initial control amount PV_o1 of the missing data set, and the absolute value Dpv_s of the difference between the final control amount PV_s of the data set for which the consistency F is to be calculated and the final control amount PV_s1 of the missing data set. The sum of these is defined as the consistency F. F = Dpv_o + Dpv_s = |PV_o - PV_o1| + |PV_s - PV_s1| ···(1)
[0044] When the data sets completely match, the consistency F = 0.0. In this embodiment, since it is assumed that there is a missing data set, it goes without saying that the consistency F does not become 0.0.
[0045] Based on the consistency F, the data set selection unit 14 selects, from among the data sets stored in the storage unit 11, the upper data sets whose change in the control amount PV is close to that of the missing data set, in order, starting from the closest topmost one, by a specified number (step S104 in FIG. 4). For example, in the calculation example of formula (1), the smaller the consistency F, the closer the change in the control amount PV is to that of the missing data set. Therefore, when the specified number is 1, the data set with the minimum consistency F is selected. When the specified number is n (n is an integer of 2 or more), n data sets are selected in ascending order of the smallest consistency F.
[0046] Next, the data scaling processing unit 15 scales the change amount δPV2 of the control amount PV for each time of the selected data set based on the ratio ΔPV1 / ΔPV2 of the control amount change width ΔPV1, which is the difference between the initial control amount PV_o1 and the final control amount PV_s1 of the lacking data set, to the control amount change width ΔPV2, which is the difference between the initial control amount PV_o2 and the final control amount PV_s2 of the selected data set, to generate time-series data of the provisional control amount PVx, and scales the change amount δMV2 of the manipulated variable MV for each time of the selected data set to generate time-series data of the provisional manipulated variable MVx (FIG. 4, step S105).
[0047] Specifically, the data scaling processing unit 15 calculates the result of successively accumulating and adding the value obtained by multiplying the change amount δPV2 of the control amount PV for each time of the selected data set by ΔPV1 / ΔPV2 to the initial control amount PV_o1 of the lacking data set up to the calculation target time, and sets it as the provisional control amount PVx after the scaling process at the calculation target time. In this way, by calculating the provisional control amount PVx up to the time of the final control amount PV_s2 of the selected data set, time-series data after the scaling process can be generated.
[0048] Similarly, the data scaling processing unit 15 calculates the result of successively accumulating and adding the value obtained by multiplying the change amount δMV2 of the manipulated variable MV for each time of the selected data set by ΔPV1 / ΔPV2 to the initial manipulated variable MV_o2 of the selected data set up to the calculation target time, and sets it as the provisional manipulated variable MVx after the scaling process at the calculation target time. In this way, by calculating the provisional manipulated variable MVx up to the time of the final manipulated variable MV_s2 of the selected data set, time-series data after the scaling process can be generated. As described above, since time stamp values indicating time are added to the time-series data of the control amount PV and the time-series data of the manipulated variable MV, it is possible to perform data scaling for each time.
[0049] FIG. 5 is a diagram for explaining the processing of the data scaling processing unit 15. In the example of FIG. 5, the change amounts of the control amount PV at times t0, t1, t2, and t3 of the selected data set are 0, δPV2t1 , δPV2 t2 , δPV2 t3 It is assumed. Therefore, the provisional control amount PVx after the expansion / contraction process at time t3 is as shown in Equation (2). PVx = PV_o1 + (δPV2 t1 ×ΔPV1 / ΔPV2) + (δPV2 t2 ×ΔPV1 / ΔPV2) + (δPV2 t3 ×ΔPV1 / ΔPV2) ···(2)
[0050] The initial control amount PV_o2 after the expansion / contraction process of the selected dataset is PV_o1. Generalizing Equation (2), when the change amount of the control amount PV at time ti is δPV2 ti then the provisional control amount PVx after the expansion / contraction process at time ti is as shown in Equation (3). PVx = PV_o1 + (δPV2 t1 ×ΔPV1 / ΔPV2) + (δPV2 t2 ×ΔPV1 / ΔPV2) + ··· + (δPV2 t(i-1) ×ΔPV1 / ΔPV2) + (δPV2 ti ×ΔPV1 / ΔPV2) ···(3)
[0051] The same applies to the manipulated variable MV. When the change amounts of the manipulated variable MV at times t0, t1, t2, t3 of the selected dataset are 0, δMV2 t1 , δMV2 t2 , δMV2 t3 then the provisional manipulated variable MVx after the expansion / contraction process at time t3 is as shown in Equation (4). MVx = MV_o2 + (δMV2 t1 ×ΔPV1 / ΔPV2) + (δMV2 t2 ×ΔPV1 / ΔPV2) + (δMV2 t3 ×ΔPV1 / ΔPV2) ···(4)
[0052] The initial operation amount after the scaling process of the selected dataset is the same MV_o2 as before the scaling process. Generalize Equation (4), and let the change amount of the operation amount MV at time ti be δMV2 ti Then, the provisional operation amount MVx after the scaling process at time ti is as shown in Equation (5). MVx = MV_o2 + (δMV2 t1 ×ΔPV1 / ΔPV2) +(δMV2 t2 ×ΔPV1 / ΔPV2) +···+(δMV2 t(i-1) ×ΔPV1 / ΔPV2) +(δMV2 ti ×ΔPV1 / ΔPV2) ···(5)
[0053] Next, the operation amount position correction unit 16 corrects the magnitude of the initial operation amount MV_o = MV_o2 of the provisional operation amount MVx based on the ratio PV_o1 / PVo_2 of the initial control amount PV_o1 of the missing dataset to the initial control amount PV_o2 of the selected dataset, thereby correcting the magnitude of the time series data of the provisional operation amount MVx (Figure 4, Step S106).
[0054] Specifically, the operation amount position correction unit 16 corrects the magnitude of the entire time series data of the provisional operation amount MVx by multiplying the initial operation amount MV_o2 of the time series data of the provisional operation amount MVx obtained by the data scaling processing unit 15 by PV_o1 / PVo_2. The corrected initial operation amount is MV_o2×PV_o1 / PVo_2. On the other hand, it can be seen that the provisional operation amount MVx after the initial operation amount is corrected by correcting MV_o2 in Equations (4) and (5) to MV_o2×PV_o1 / PVo_2.
[0055] When the specified number of selected datasets is one, the dataset generation unit 17 stores, in the storage unit 11 for supplementing the lacking datasets, a dataset including the time-series data of the provisional control amount PVx generated by the data expansion / contraction processing unit 15 and the time-series data of the provisional operation amount MVx corrected by the operation amount position correction unit 16 (step S107 in FIG. 4). At this time, the dataset generation unit 17 adds a dataset ID and a control condition ID to the dataset to be stored. The dataset generation unit 17 sets the setting value SP before change included in the control condition indicated by the control condition ID as the initial control amount of the provisional control amount PVx, and sets the setting value SP after change included in the control condition as the final control amount of the provisional control amount PVx.
[0056] Also, when the specified number of selected datasets is plural, the dataset generation unit 17 stores, in the storage unit 11 for supplementing the lacking datasets, a dataset including the integrated multiple time-series data of the provisional control amount PVx generated by the data expansion / contraction processing unit 15 and the integrated multiple time-series data of the provisional operation amount MVx corrected by the operation amount position correction unit 16 (step S107).
[0057] Specifically, the dataset generation unit 17 integrates the multiple time-series data by calculating the average value or weighted average value for each time of the multiple time-series data of the provisional control amount PVx generated by the data expansion / contraction processing unit 15. Similarly, the dataset generation unit 17 integrates the multiple time-series data by calculating the average value or weighted average value for each time of the multiple time-series data of the provisional operation amount MVx corrected by the operation amount position correction unit 16. When calculating the weighted average value, the weight may be set to be larger for the upper datasets with a change in the control amount PV closer to the lacking dataset. The dataset generation unit 17 adds a dataset ID and a control condition ID to the dataset to be stored in the same manner as described above. The dataset generation unit 17 sets the setting value SP before change included in the control condition indicated by the control condition ID as the initial control amount of the integrated provisional control amount PVx, and sets the setting value SP after change included in the control condition as the final control amount of the integrated provisional control amount PVx.
[0058] As described above, the missing dataset can be supplemented. When there are multiple missing datasets, the processes of steps S102 to S107 are performed for each missing dataset.
[0059] Next, taking as an example the case of forming a library capable of handling many cases including strongly non-linear characteristics by collecting a large number of time-series data during temperature rise in the temperature control of the heating device as datasets, supplementary explanations will be given below with specific numerical values.
[0060] First, the case will be described where the dataset a selected by the dataset selection unit 14 corresponds to the data in FIG. 6 and Table 1, and another dataset b selected by the dataset selection unit 14 corresponds to the data in FIG. 7.
[0061] [Table 1]
[0062] In dataset a, the initial control amount PV_o = 50.0 °C, the final control amount PV_s = 250.0 °C, the control amount change width ΔPV = 200.0 °C, the initial operation amount MV_o = 10.0%, and the final operation amount MV_s = 30.0%. In dataset b, the initial control amount PV_o = 70.0 °C, the final control amount PV_s = 300.0 °C, the control amount change width ΔPV = 230.0 °C, the initial operation amount MV_o = 12.0%, and the final operation amount MV_s = 35.0%. On the other hand, assume that for the missing dataset, the initial control amount PV_o = 40.0 °C, the final control amount PV_s = 280.0 °C, and the control amount change width ΔPV = 240.0 °C.
[0063] [Calculation Example 1] The case where the specified number of datasets to be selected is one will be described. The degree of coincidence F between the missing dataset and dataset a is |40.0 - 50.0| + |280.0 - 250.0| = 40.0. The degree of coincidence F between the missing dataset and dataset b is |40.0 - 70.0| + |280.0 - 300.0| = 50.0.
[0064] Therefore, dataset a is selected by the dataset selection unit 14. The initial control amount PV_o1 of the missing dataset is 40.0 °C, the final control amount PV_s1 is 280.0 °C, and the control amount change width ΔPV1 is 240.0 °C. The initial control amount PV_o2 of the selected dataset a is 50.0 °C, the final control amount PV_s2 is 250.0 °C, and the control amount change width ΔPV2 is 200.0 °C.
[0065] Based on the ratio ΔPV1 / ΔPV2 = 240.0 / 200.0 = 1.2 of the control amount change width ΔPV1 to the control amount change width ΔPV2, the data stretching and shrinking processing unit 15 stretches and shrinks the change amount δPV2 (δPV in Table 1) of the control amount PV of dataset a for each control cycle to generate time-series data of the provisional control amount PVx. The provisional control amount PVx is shown in Table 2, and the value after multiplying the change amount δPV2 by ΔPV1 / ΔPV2 = 1.2 is shown as δPV in Table 2.
[0066]
Table 2
[0067] Also, based on the ratio ΔPV1 / ΔPV2 = 240.0 / 200.0 = 1.2 of the control amount change width ΔPV1 to the control amount change width ΔPV2, the data stretching and shrinking processing unit 15 stretches and shrinks the change amount δMV2 (δMV in Table 1) of the manipulated variable MV of dataset a for each control cycle to generate time-series data of the provisional manipulated variable MVx. The provisional manipulated variable MVx generated by the data stretching and shrinking processing unit 15 is shown as MVx_1 in Table 2, and the value after multiplying the change amount δMV2 by ΔPV1 / ΔPV2 = 1.2 is shown as δMV in Table 2.
[0068] The operation amount position correction unit 16 corrects the magnitude of the initial operation amount MV_o = MV_o2 = 10.0% of the provisional operation amount MVx obtained by the data expansion / contraction processing unit 15 based on the ratio PV_o1 / PV_o2 = 40.0 / 50.0 = 0.8 of the initial control amount PV_o1 of the missing data set to the initial control amount PV_o2 of the data set a, thereby correcting the magnitude of the time-series data of the provisional operation amount MVx. The provisional operation amount MVx corrected by the operation amount position correction unit 16 is shown as MVx_2 in Table 2.
[0069] The data set generation unit 17 stores, in the storage unit 11 for supplementing the missing data set, a data set of the time-series data of the provisional control amount PVx generated by the data expansion / contraction processing unit 15 and the time-series data of the provisional operation amount MVx (MVx_2 in Table 2) corrected by the operation amount position correction unit 16.
[0070] [Calculation Example 2] The case where the specified number of data sets to be selected is two will be described. The data set selection unit 14 selects the data set b in addition to the data set a. When the specified number is two, the data set generation unit 17 stores, in the storage unit 11 for supplementing the missing data set, a data set of the integrated time-series data of the provisional control amount PVx of the data sets a and b generated by the data expansion / contraction processing unit 15 and the integrated time-series data of the provisional operation amount MVx of the data sets a and b corrected by the operation amount position correction unit 16. The integration method is, for example, to calculate the average value of the data values at the corresponding times of the data sets a and b.
[0071] Next, the operation of transmitting the data set to the PID controller 2 will be described. When the specified timing is reached (YES in step S108 of FIG. 4), the control quantity output unit 19 selects a specified data set from the time-series data set of the control quantity PV stored in the storage unit 11. The control quantity output unit 19 sequentially extracts the data of the control quantity PV for each control cycle of the PID controller 2 from the selected data set and sequentially transmits it to the PID controller 2. At this time, the control quantity output unit 19 transmits the data of the control quantity PV for each control cycle so that the interval of the time indicated by the time stamp value of the data sequentially transmitted by itself matches the control cycle of the PID controller 2 (step S109 of FIG. 4). The specified timing and the specified data set will be described later.
[0072] When the specified timing is reached, the manipulated variable change width output unit 20 selects a specified data set from the time-series data set of the manipulated variable MV stored in the storage unit 11. The manipulated variable change width output unit 20 sequentially extracts the data of the manipulated variable MV for each control cycle of the PID controller 2 from the selected data set, and sequentially transmits the change width ΔMV of the manipulated variable per control cycle calculated from the extracted data to the PID controller 2. At this time, the manipulated variable change width output unit 20 transmits the data of the change width ΔMV of the manipulated variable for each control cycle so that the time indicated by the time stamp value of the data of the control quantity PV transmitted by the control quantity output unit 19 is the same as the time indicated by the time stamp value of the data transmitted by itself (the time stamp value of the manipulated variable MV extracted from the data set) (step S110 of FIG. 4). As a result, the interval of the time indicated by the time stamp value of the data sequentially transmitted by the manipulated variable change width output unit 20 matches the control cycle of the PID controller 2.
[0073] The operation amount change width ΔMV is the difference from the operation amount MV in the previous control cycle. The operation amount change width output unit 20 may calculate the operation amount change width ΔMV one by one from the selected data set. For example, if the operation amount MV at time t is 0, the operation amount MV at time t + 1 is 1, the operation amount MV at time t + 2 is 3, the operation amount MV at time t + 3 is 4, and the operation amount MV at time t + 4 is 2, then the operation amount change widths ΔMV at times t, t + 1, t + 2, t + 3, and t + 4 can be calculated as ΔMV = 0, 1, 2, 1, -2.
[0074] If there is a data buffer in the PID controller 2, the control amount output unit 19 and the operation amount change width output unit 20 may transmit together the data of a plurality of control amounts PV and the data of a plurality of operation amounts MV that can be stored in the data buffer.
[0075] When the specified timing is reached, the operation amount upper limit value output unit 21 calculates an operation amount upper limit value OH_x assuming an error range of the operation amount MV for each control cycle taken out by the operation amount change width output unit 20 from the specified data set (the operation amount MV that is the basis of the operation amount change width ΔMV and has the same time stamp value as the control amount PV transmitted by the control amount output unit 19). The operation amount upper limit value output unit 21 transmits the operation amount upper limit value OH_x to the PID controller 2 so that the time indicated by the time stamp value of the data of the control amount PV transmitted by the control amount output unit 19 is the same as the time indicated by the time stamp value added to the operation amount upper limit value OH_x transmitted by itself (step S111 in FIG. 4). Thereby, the interval of the times indicated by the time stamp values of the data sequentially transmitted by the operation amount upper limit value output unit 21 matches the control cycle of the PID controller 2.
[0076] As the simplest process, an upward margin centered on the operation amount MV is specified in advance. The operation amount upper limit value output unit 21 may transmit, as the operation amount upper limit value OH_x, a value obtained by adding the upward margin value to the operation amount MV for each control cycle taken out by the operation amount change width output unit 20 from the specified data set.
[0077] When the specified timing is reached, the operation amount lower limit value output unit 22 calculates an operation amount lower limit value OL_x assuming an error range of the operation amount MV for each control period retrieved by the operation amount change width output unit 20 from the specified data set (the operation amount MV that is the basis for the operation amount change width ΔMV and has the same time stamp value as the control amount PV transmitted by the control amount output unit 19). The operation amount lower limit value output unit 22 transmits the operation amount lower limit value OL_x to the PID controller 2 so that the time indicated by the time stamp value of the control amount PV data transmitted by the control amount output unit 19 is the same as the time indicated by the time stamp value added to the operation amount lower limit value OL_x transmitted by itself (the time stamp value of the operation amount MV retrieved by the operation amount change width output unit 20 from the data set) (step S112 in FIG. 4). Thereby, the interval of the times indicated by the time stamp values of the data sequentially transmitted by the operation amount lower limit value output unit 22 matches the control period of the PID controller 2.
[0078] As the simplest process, a downward margin centered on the operation amount MV is specified in advance. The operation amount lower limit value output unit 22 may transmit, as the operation amount lower limit value OL_x, a value obtained by subtracting the downward margin value from the operation amount MV for each control period retrieved by the operation amount change width output unit 20 from the specified data set.
[0079] Note that it is not necessary to set the upward margin value and the downward margin value to fixed values, and each of the upward margin value and the downward margin value may be changed according to the elapsed time from the time point when the set value SP is changed, as will be described later.
[0080] The control amount output unit 19, the operation amount change width output unit 20, the operation amount upper limit value output unit 21, and the operation amount lower limit value output unit 22 repeatedly execute the processes of steps S109 to S112 until they finish transmitting the specified data set stored in the storage unit 11 (YES in step S113 in FIG. 4).
[0081] Synchronization of data, that is, the control variable PV, the operation amount change width ΔMV, the operation amount upper limit value OH_x, and the operation amount lower limit value OL_x, for which it is necessary that the timestamp values be the same, are preferably received by the PID controller 2 at the same time, but a time difference in arrival is acceptable. If this time difference is a slight time with respect to the control period (for example, 1 second) of the PID controller 2, there is no practical problem. With the above, the operation on the industrial PC 1 side is completed, and the industrial PC 1 waits until the next specified timing.
[0082] Here, the above-specified timing and the specified data set will be described. For example, when an operator of the industrial PC 1 manually changes the set value SP of the PID controller 2, the timing at which the operator instructs the change of the set value SP becomes the specified timing, and the data set (control conditions) instructed by the operator becomes the specified data set.
[0083] Also, for example, when the temperature control of a heating furnace or the like is automatically executed according to predetermined schedule information, the timing of the set value SP change determined by the schedule information becomes the specified timing, and the data set (control conditions) determined by the schedule information becomes the specified data set.
[0084] FIG. 8 is a flowchart for explaining the operation of the PID controller 2. The set value input unit 30 of the PID controller 2 receives the control variable PV transmitted from the industrial PC 1 as a new value of the reference set value SP_r (step S200 in FIG. 8). As the simplest process, it is in the form of receiving one piece of control variable PV data for each control period of the PID controller 2.
[0085] The operation amount change width input unit 31 receives the operation amount change width ΔMV transmitted from the industrial PC 1 as a new value of the feedforward control operation amount change width ΔMV_f (step S201 in FIG. 8). As the simplest process, it is in the form of receiving one data value of the operation amount change width ΔMV for each control period of the PID controller 2.
[0086] The operation amount upper limit value input unit 32 receives the operation amount upper limit value OH_x transmitted from the industrial PC 1 as a new value to be used by the limit processing unit 37 (step S202 in FIG. 8). The operation amount lower limit value input unit 33 receives the operation amount lower limit value OL_x transmitted from the industrial PC 1 as a new value to be used by the limit processing unit 37 (step S203 in FIG. 8). The initial value of the operation amount upper limit value OH_x pre-set in the PID controller 2 is 100%, and the initial value of the operation amount lower limit value OL_x is 0%.
[0087] Note that a data buffer is provided in the PID controller 2. When the control amount output unit 19, the operation amount change width output unit 20, the operation amount upper limit value output unit 21, and the operation amount lower limit value output unit 22 transmit together the data of a plurality of control amounts PV, the data of a plurality of operation amounts MV, the data of a plurality of operation amount upper limit values OH_x, and the data of a plurality of operation amount lower limit values OL_x that can be stored in the data buffer, the set value input unit 30, the operation amount change width input unit 31, the operation amount upper limit value input unit 32, and the operation amount lower limit value input unit 33 may take out each data of the control amount PV, the operation amount change width ΔMV, the operation amount upper limit value OH_x, and the operation amount lower limit value OL_x stored in the data buffer one by one for each control cycle of the PID controller 2.
[0088] The control amount acquisition unit 34 acquires the measured value of the control amount PV (step S204 in FIG. 8). In the case of temperature control using the PID controller 2 (thermostat), the value of the control amount PV is acquired from the temperature sensor.
[0089] Next, as shown in Equation (6), the feedforward addition unit 35 sets the value obtained by adding the change width ΔMV_f of the feedforward control operation amount received by the operation amount change width input unit 31 to the operation amount MV_x (the value of MV_x' one control cycle before, to be described later) calculated by the feedback addition unit 36 one control cycle before as the operation amount MV_z (step S205 in FIG. 8). MV_z = MV_x + ΔMV_f ···(6)
[0090] The feedback addition unit 36 takes the reference set value SP_r and the measured value of the control variable PV as inputs, and performs a velocity-type PID calculation such as the transfer function formula shown in Equation (7) so that the measured value of the control variable PV matches the reference set value SP_r, and calculates the change width ΔMV_b of the feedback control operation amount (step S206 in FIG. 8). ΔMV_b=Kp{ΔEr+(1 / Ti)Er+TdΔ 2 Er} ···(7)
[0091] In Equation (7), Er is the control deviation, which is the difference SP_r - PV between the reference set value SP_r and the measured value of the control variable PV. Also, ΔEr is the first-order difference of the control deviation Er (the change amount of the deviation Er per control cycle), and Δ 2 Er is the second-order difference of the control deviation Er (the change amount of the change amount of the deviation Er per control cycle), Kp is the proportional gain among the PID parameters, Ti is the integral time among the PID parameters, and Td is the differential time among the PID parameters. Note that the proportional gain Kp and the proportional band Pb are in the relationship of Kp = 100 / Pb.
[0092] As shown in Equation (8), the feedback addition unit 36 sets the value obtained by adding the change width ΔMV_b of the feedback control operation amount to the operation amount MV_z calculated by the feedforward addition unit 35 as the operation amount MV_x' (step S207 in FIG. 8). MV_x’=MV_z+ΔMV_b ···(8)
[0093] Note that when the feedback addition unit 36 adds the change width ΔMV_b of the feedback control operation amount to the operation amount MV_z, it executes the addition of the proportional operation (P operation) and the differential operation (D operation) prior to the addition of the integral operation (I operation). When the addition result of the proportional operation and the differential operation is within the range of the operation amount upper limit value OH_x and the operation amount lower limit value OL_x received by the operation amount upper limit value input unit 32 and the operation amount lower limit value input unit 33, it is preferable to execute the addition of the integral operation so as to obtain the effect of the anti-reset windup process (a process for preventing unnecessary accumulation of the integral operation).
[0094] That is, the proportional and derivative operation components ΔMV_b_pd of the change range ΔMV_b of the feedback control operation amount are as shown in Equation (9), and the integral operation (I operation) component ΔMV_b_i is as shown in Equation (10). ΔMV_b_pd=Kp(ΔEr+TdΔ 2 Er) ···(9) ΔMV_b_i=Kp(1 / Ti)Er ···(10)
[0095] Therefore, the addition result MV_z’ of the operation amount MV_z and ΔMV_b_pd is as shown in Equation (11). MV_z’=MV_z+ΔMV_pd ···(11)
[0096] When the addition result MV_z’ is equal to or greater than the operation amount lower limit value OL_x and equal to or less than the operation amount upper limit value OH_x, the feedback addition unit 36 further adds the integral operation component ΔMV_b_i of the change range ΔMV_b of the feedback control operation amount to the addition result MV_z’ as shown in Equation (12) to obtain the operation amount MV_x’. MV_x’=MV_z’+ΔMV_b_i ···(12)
[0097] Also, when the addition result MV_z’ is less than the operation amount lower limit value OL_x or greater than the operation amount upper limit value OH_x, the feedback addition unit 36 does not add ΔMV_b_i and uses the addition result MV_z’ as the operation amount MV_x’ as it is. MV_x’=MV_z’ ···(13)
[0098] Since the change range ΔMV_f of the feedforward control operation amount peculiar to the present invention has also been added by the process of Equation (6), the process described by Equations (9) to (13) can obtain the effect of minimizing the calculation amount necessary for matching with the subsequent limit process. However, the addition conditions for the integral operation may be added as appropriate.
[0099] The limit processing unit 37 outputs an operation amount MV obtained by limiting the operation amount MV_x' calculated by the feedback addition unit 36 to a value that is equal to or greater than the operation amount lower limit value OL_x and equal to or less than the operation amount upper limit value OH_x (step S208 in FIG. 8). That is, when the operation amount MV_x' is smaller than the operation amount lower limit value OL_x (MV_x' < OL_x), the limit processing unit 37 sets the operation amount MV = OL_x, and when the operation amount MV_x' is greater than the operation amount upper limit value OH_x (MV_x' > OH_x), the operation amount MV = OH_x. When the operation amount MV_x' is equal to or greater than the operation amount lower limit value OL_x and equal to or less than the operation amount upper limit value OH_x (OL_x ≤ MV_x' ≤ OH_x), limit processing is performed such that the operation amount MV = MV_x'.
[0100] Normally, limit processing for the standard operation amount upper limit value of 100% and the operation amount lower limit value of 0% of the thermostat is further executed. That is, when the operation amount MV is smaller than the operation amount lower limit value of 0%, the limit processing unit 37 sets the operation amount MV to 0%, and when the operation amount MV is greater than the operation amount upper limit value of 100%, the operation amount MV is set to 100%.
[0101] The operation amount output unit 38 outputs the operation amount MV that has been limit-processed by the limit processing unit 37 to the control target (step S209 in FIG. 8). The output destination of the operation amount MV is an operation unit (not shown) such as a heater or a valve. In the case of a heater, the actual output destination of the operation amount MV is a power regulator (not shown) that supplies power to the heater.
[0102] The PID controller 2 executes the processing of steps S200 to S209 for each control cycle until the control is terminated by a command from, for example, an operator (YES in step S210 in FIG. 8).
[0103] However, the set value input unit 30, the operation amount change width input unit 31, the operation amount upper limit value input unit 32, and the operation amount lower limit value input unit 33 stop updating the reference set value SP_r, the change width ΔMV_f of the feedforward control operation amount, the operation amount upper limit value OH_x, and the operation amount lower limit value OL_x when a certain continuous time has elapsed since the measured value of the control amount PV was adjusted (YES in step S211 in FIG. 8) (step S212 in FIG. 8).
[0104] As a result, the reference set value SP_r, the change width ΔMV_f of the feedforward control operation amount, the operation amount upper limit value OH_x, and the operation amount lower limit value OL_x are fixed to the values received one control cycle before. However, the operation amount upper limit value input unit 32 may return the operation amount upper limit value OH_x to the initial value (100%), and the operation amount lower limit value input unit 33 may return the operation amount lower limit value OL_x to the initial value (0%).
[0105] The above-mentioned duration needs to be set so that the update of the reference set value SP_r, the change width ΔMV_f of the feedforward control operation amount, the operation amount upper limit value OH_x, and the operation amount lower limit value OL_x stops before the data transmission from the industrial PC1 ends.
[0106] Thereafter, until the processing of steps S200 to S203 is restarted at the timing of the following regulations, the processing of steps S204 to S209 is executed for each control cycle.
[0107] In this embodiment, the limit processing unit 37 is not an essential component. When the limit processing unit 37 is not provided, the operation amount output unit 38 outputs the operation amount MV_x' calculated by the feedback addition unit 36 to the control target. When the limit processing unit 37 is not provided, the transmission of the operation amount upper limit value OH_x and the operation amount lower limit value OL_x from the industrial PC1 becomes unnecessary, and the anti-reset windup processing described by formulas (9) to (13) is not executed.
[0108] [Second Embodiment] Next, a second embodiment of the present invention will be described. The execution of the simulation by the control target model and the storage of a large number of time series data sets assuming various conditions should be carried out by an industrial PC or the like higher than a PID controller (a local controller with a limited arithmetic function for the purpose of stable continuation) such as a thermostat, so the distributed arrangement of each functional block becomes essential.
[0109] Then, the inventor noticed that in a thermostat, there are limitations in real-time communication for each control cycle. Especially when data loss due to communication failure occurs in the setpoint SP, due to the presence of a differential operation (strictly speaking, a difference operation in a discrete system) that refers to the setpoint SP, a malfunction occurs in the manipulated variable MV. Therefore, the inventor conceived that it is preferable to configure the PID controller side to transmit the time-series data of the controlled variable PV in advance as a reference setpoint SP_r, and also transmit the time-series data of the manipulated variable MV in advance as the manipulated variable MV_f for feedforward control. By basing on this configuration, the real-time communication volume between the PID controller (such as a thermostat) and the upper level can be reduced as much as possible, so that it can be improved to an instrumentation that is easy to maintain stable continuity while coping with strong non-linear characteristics.
[0110] FIG. 9 is a block diagram showing the configuration of a control system according to a second embodiment of the present invention. The control system of this embodiment is composed of an industrial PC 1a (host device) and a PID controller 2a. In FIG. 9, the description of the data generation information acquisition unit 12, the control variable coincidence degree calculation unit 13, the data set selection unit 14, the data expansion / contraction processing unit 15, the manipulated variable position correction unit 16, and the data set generation unit 17 is omitted.
[0111] The industrial PC 1a includes an ideal response generation unit 10, a storage unit 11, a data generation information acquisition unit 12, a control variable coincidence degree calculation unit 13, a data set selection unit 14, a data expansion / contraction processing unit 15, a manipulated variable position correction unit 16, a data set generation unit 17, a control variable output unit 19a that transmits the time-series data of the controlled variable PV to the PID controller 2a, a manipulated variable output unit 24 that transmits the time-series data of the manipulated variable MV to the PID controller 2a, a manipulated variable upper limit value output unit 21a that transmits the time-series data of the manipulated variable upper limit value OH_x assuming the error range of the manipulated variable MV stored in the storage unit 11 for each control cycle to the PID controller 2a, and a manipulated variable lower limit value output unit 22a that transmits the time-series data of the manipulated variable lower limit value OL_x assuming the error range of the manipulated variable MV stored in the storage unit 11 for each control cycle to the PID controller 2a. The control variable output unit 19a, the manipulated variable output unit 24, the manipulated variable upper limit value output unit 21a, and the manipulated variable lower limit value output unit 22a constitute a transmission unit 25.
[0112] The PID controller 2a includes a set value receiving unit 50 that receives time-series data of the control amount PV transmitted from the industrial PC 1a, an operation amount receiving unit 51 that receives time-series data of the operation amount MV transmitted from the industrial PC 1a, an operation amount upper limit value receiving unit 52 that receives time-series data of the operation amount upper limit value OH_x transmitted from the industrial PC 1a, an operation amount lower limit value receiving unit 53 that receives time-series data of the operation amount lower limit value OL_x transmitted from the industrial PC 1a, a set value storage unit 54 that stores the time-series data of the control amount PV, an operation amount storage unit 55 that stores the time-series data of the operation amount MV, an operation amount upper limit value storage unit 56 that stores the time-series data of the operation amount upper limit value OH_x, an operation amount lower limit value storage unit 57 that stores the time-series data of the operation amount lower limit value OL_x, a set value reading unit 58 that, when the start signal input unit 62 described later receives a start signal and the control operation is started, sequentially reads, for each control cycle, the data of the control amount PV from the time-series data stored in the set value storage unit 54 as a new value of the reference set value SP_r, an operation amount reading unit 59 that, when the control operation is started, sequentially reads, for each control cycle, the data of the operation amount MV from the time-series data stored in the operation amount storage unit 55 as a new value of the feedforward control operation amount MV_f, an operation amount upper limit value reading unit 60 that, when the control operation is started, sequentially reads, for each control cycle, the data of the operation amount upper limit value OH_x from the time-series data stored in the operation amount upper limit value storage unit 56 as a new value to be used by a limit processing unit 66 described later, and an operation amount lower limit value reading unit 61 that, when the control operation is started, sequentially reads, for each control cycle, the data of the operation amount lower limit value OL_x from the time-series data stored in the operation amount lower limit value storage unit 57 as a new value to be used by the limit processing unit 66.
[0113] The PID controller 2a also includes a start signal input unit 62 that receives a start signal for instructing the start of a control operation from the outside, a control quantity acquisition unit 63 that acquires a measured value of the control quantity PV, a feedback calculation unit 64 that performs PID calculation with the reference set value SP_r and the measured value of the control quantity PV as inputs to calculate a feedback control operation quantity MV_b (first operation quantity), a feedforward addition unit 65 that adds the feedforward control operation quantity MV_f to the feedback control operation quantity MV_b to calculate an operation quantity MV_x' (second operation quantity), a limit processing unit 66 that outputs an operation quantity MV (third operation quantity) obtained by limiting the operation quantity MV_x' calculated by the feedforward addition unit 65 to a value within the range of the operation quantity upper limit value OH_x and the operation quantity lower limit value OL_x, an operation quantity output unit 67 that outputs the operation quantity MV obtained by the limit processing unit 66 to the control target, and an operation quantity update unit 68 that updates the time series data of the operation quantity MV stored in the operation quantity storage unit 55 based on the time series data of the operation quantity MV output from the operation quantity output unit 67 when the learning mode is set to on.
[0114] The set value reception unit 50, the operation quantity reception unit 51, the operation quantity upper limit value reception unit 52, and the operation quantity lower limit value reception unit 53 constitute a reception unit 69, the set value storage unit 54, the operation quantity storage unit 55, the operation quantity upper limit value storage unit 56, and the operation quantity lower limit value storage unit 57 constitute a storage unit 70, and the set value reading unit 58, the operation quantity reading unit 59, the operation quantity upper limit value reading unit 60, and the operation quantity lower limit value reading unit 61 constitute a reading unit 71.
[0115] The transmission unit 25 and the reception unit 69 may transmit and receive data by wired communication or may transmit and receive data by wireless communication. Further, the present invention is not limited to a specific communication standard, and an appropriate communication standard may be appropriately selected to realize the communication between the industrial PC 1a and the PID controller 2a.
[0116] FIG. 10 is a flowchart for explaining the operation of the industrial PC 1a. The processes of the ideal response generation unit 10, the storage unit 11, the data generation information acquisition unit 12, the control amount matching degree calculation unit 13, the data set selection unit 14, the data stretching and shrinking processing unit 15, the manipulated variable position correction unit 16, and the data set generation unit 17 (steps S100 to S107 in FIG. 10) are as described in the first embodiment.
[0117] Next, the control amount output unit 19a transmits the time series data set of the control amount PV stored in the storage unit 11 to the PID controller 2a (step S115 in FIG. 4). The manipulated variable output unit 24 transmits the time series data set of the manipulated variable MV stored in the storage unit 11 to the PID controller 2a (step S116 in FIG. 4). The control amount output unit 19a and the manipulated variable output unit 24 transmit all the data sets stored in the storage unit 11 to the PID controller 2a.
[0118] The manipulated variable upper limit value output unit 21a calculates a manipulated variable upper limit value OH_x assuming an error range of the manipulated variable MV for each control cycle in the time series data set transmitted by the manipulated variable output unit 24. By calculating the manipulated variable upper limit value OH_x for each manipulated variable MV for each control cycle, a time series data set of the manipulated variable upper limit value OH_x is generated. Each data of the manipulated variable upper limit value OH_x is added with the same time stamp as the data of the manipulated variable MV that is the basis of the calculation. The manipulated variable upper limit value output unit 21a transmits the calculated time series data set of the manipulated variable upper limit value OH_x to the PID controller 2a (step S117 in FIG. 4).
[0119] As the simplest process, an ascending margin centered on the manipulated variable MV is specified in advance. The manipulated variable upper limit value output unit 21a may calculate, as the manipulated variable upper limit value OH_x, a value obtained by adding the ascending margin value to the manipulated variable MV for each control cycle in the time series data set transmitted by the manipulated variable output unit 24. As described above, since the manipulated variable output unit 24 transmits the time series data set of the manipulated variable MV for each control condition (for each control condition ID), the manipulated variable upper limit value output unit 21a generates a time series data set of the manipulated variable upper limit value OH_x for each control condition and transmits it to the PID controller 2a.
[0120] The operation amount lower limit value output unit 22a calculates an operation amount lower limit value OL_x assuming an error range of the operation amount MV for each control cycle in the time series data set transmitted by the operation amount output unit 24. By calculating the operation amount lower limit value OL_x for each operation amount MV for each control cycle, a time series data set of the operation amount lower limit value OL_x is generated. The same time stamp as the data of the operation amount MV used as the basis for the calculation is added to each data of the operation amount lower limit value OL_x. The operation amount lower limit value output unit 22a transmits the calculated time series data set of the operation amount lower limit value OL_x to the PID controller 2a (step S118 in FIG. 4).
[0121] As the simplest process, a downward margin centered on the operation amount MV is defined in advance. The operation amount lower limit value output unit 22a may calculate, as the operation amount lower limit value OL_x, a value obtained by subtracting the downward margin value from the operation amount MV for each control cycle in the time series data set transmitted by the operation amount output unit 24. As described above, since the operation amount output unit 24 transmits the time series data set of the operation amount MV for each control condition (for each control condition ID), the operation amount lower limit value output unit 22a generates a time series data set of the operation amount lower limit value OL_x for each control condition and transmits it to the PID controller 2a.
[0122] In this embodiment, the timing at which the control amount output unit 19a, the operation amount output unit 24, the operation amount upper limit value output unit 21a, and the operation amount lower limit value output unit 22a transmit data may be before a series of control operations (for example, the temperature increase operation of temperature control) that use these data start.
[0123] FIGS. 11 and 12 are flowcharts for explaining the operation of the PID controller 2a. The set value receiving unit 50 of the PID controller 2a receives the time series data set of the control amount PV transmitted from the industrial PC 1a (step S300 in FIG. 11). The operation amount receiving unit 51 receives the time series data set of the operation amount MV transmitted from the industrial PC 1a (step S301 in FIG. 11).
[0124] The operation amount upper limit value receiving unit 52 receives the time-series data set of the operation amount upper limit value OH_x transmitted from the industrial PC 1a (step S302 in FIG. 11). The operation amount lower limit value receiving unit 53 receives the time-series data set of the operation amount lower limit value OL_x transmitted from the industrial PC 1a (step S303 in FIG. 11).
[0125] The set value storage unit 54 stores the time-series data set of the control amount PV received by the set value receiving unit 50 (step S304 in FIG. 11). The operation amount storage unit 55 stores the time-series data set of the operation amount MV received by the operation amount receiving unit 51 (step S305 in FIG. 11).
[0126] The operation amount upper limit value storage unit 56 stores the time-series data set of the operation amount upper limit value OH_x received by the operation amount upper limit value receiving unit 52 (step S306 in FIG. 11). The operation amount lower limit value storage unit 57 stores the time-series data set of the operation amount lower limit value OL_x received by the operation amount lower limit value receiving unit 53 (step S307 in FIG. 11).
[0127] Next, the start signal input unit 62 receives a start signal instructing the start of the control operation (YES in step S308 in FIG. 11). Information specifying the control condition (control condition ID) is added to this start signal.
[0128] For example, when an operator of the industrial PC 1a manually changes the set value SP of the PID controller 2a, a start signal is transmitted from the industrial PC 1a to the PID controller 2a at the timing when the operator instructs the change of the set value SP. Also, the control condition ID corresponding to the control condition instructed by the operator is transmitted from the industrial PC 1a to the PID controller 2a. Such an instruction may be given directly to the PID controller 2a instead of via the industrial PC 1a.
[0129] Also, for example, when the temperature control of a heating furnace or the like is automatically executed according to predetermined schedule information, a start signal is transmitted from the industrial PC 1a to the PID controller 2a at the timing of changing the set value SP defined in the schedule information. Further, a control condition ID corresponding to the control condition defined in the schedule information is transmitted from the industrial PC 1a to the PID controller 2a.
[0130] When the start signal input unit 62 receives the start signal and the control operation of the PID controller 2a starts, the set value reading unit 58 sequentially reads, for each control cycle, the data of the control amount PV in the time series data set of the control amount PV stored in the set value storage unit 54, which corresponds to the control condition (control condition ID) indicated by the start signal, as a new value of the reference set value SP_r (step S309 in FIG. 11).
[0131] When the start signal is received, the manipulated variable reading unit 59 sequentially reads, for each control cycle, the data of the manipulated variable MV in the time series data set of the manipulated variable MV stored in the manipulated variable storage unit 55, which corresponds to the control condition (control condition ID) indicated by the received start signal, as a new value of the feedforward control manipulated variable MV_f (step S310 in FIG. 11).
[0132] When the start signal is received, the manipulated variable upper limit value reading unit 60 sequentially reads, for each control cycle, the manipulated variable upper limit value OH_x in the time series data set of the manipulated variable upper limit value OH_x stored in the manipulated variable upper limit value storage unit 56, which corresponds to the control condition (control condition ID) indicated by the received start signal, as a new value to be used by the limit processing unit 66 (step S311 in FIG. 11).
[0133] When the start signal is received, the manipulated variable lower limit value reading unit 61 sequentially reads, for each control cycle, the manipulated variable lower limit value OL_x in the time series data set of the manipulated variable lower limit value OL_x stored in the manipulated variable lower limit value storage unit 57, which corresponds to the control condition (control condition ID) indicated by the received start signal, as a new value to be used by the limit processing unit 66 (step S312 in FIG. 11).
[0134] As described above, since time stamps are added to each data of the control quantity PV stored in the setting value storage unit 54, the operation quantity MV stored in the operation quantity storage unit 55, the operation quantity upper limit value OH_x stored in the operation quantity upper limit value storage unit 56, and the operation quantity lower limit value OL_x stored in the operation quantity lower limit value storage unit 57, it is possible to read out the data of the time stamp value (time) corresponding to the elapsed time from the start signal reception time (start time of the control operation).
[0135] For the synchronization of data, that is, the control quantity PV (reference setting value SP_r), the operation quantity MV (feedforward control operation quantity MV_f), the operation quantity upper limit value OH_x, and the operation quantity lower limit value OL_x for which it is necessary that the time stamp values are the same, it is desirable that they are read out simultaneously, but a time difference in reading is acceptable. If this time difference is a slight time with respect to the control period (for example, 1 second) of the PID controller 2a, there is no practical problem.
[0136] When the start signal input unit 62 receives the start signal and the control operation of the PID controller 2a starts, the control quantity acquisition unit 63 acquires the measured value of the control quantity PV (step S313 in FIG. 11).
[0137] Next, the feedback calculation unit 64 performs a PID calculation to calculate the feedback control operation quantity MV_b so that the measured value of the control quantity PV matches the reference setting value SP_r read by the setting value reading unit 58, with the measured value of the control quantity PV and the reference setting value SP_r read by the setting value reading unit 58 as inputs. Specifically, when the feedback calculation unit 64 performs a velocity-type PID calculation such as the transfer function formula shown in Equation (7), it calculates the operation quantity change width ΔMV_b (step S314 in FIG. 11).
[0138] Then, as shown in Equation (14), the feedback calculation unit 64 sets the value obtained by adding the operation quantity change width ΔMV_b to the operation quantity MV_x (the value of MV_x' one control period before, described later) calculated by the feedforward addition unit 65 one control period before as the feedback control operation quantity MV_b (step S315 in FIG. 11). MV_b = MV_x + ΔMV_b ···(14)
[0139] In addition, general additional functions such as anti-reset wind-up processing (processing for preventing unnecessary accumulation in the integration operation) may be provided in the feedback operation unit 64.
[0140] The feedforward addition unit 65 adds the feedforward control operation amount MV_f read by the operation amount reading unit 59 to the feedback control operation amount MV_b to calculate the operation amount MV_x' (step S316 in FIG. 11). When the feedback operation unit 64 performs speed-type PID operation, the feedforward addition unit 65 calculates the difference between the feedforward control operation amount MV_f in the current control cycle read by the operation amount reading unit 59 and the feedforward control operation amount MV_f in the previous control cycle as the change width ΔMV_f. Then, the feedforward addition unit 65 adds the change width ΔMV_f to the feedback control operation amount MV_b as shown in Equation (15) to calculate a new value of the operation amount MV_x'. MV_x' = MV_b + ΔMV_f ···(15)
[0141] Similar to the limit processing unit 37, the limit processing unit 66 outputs the operation amount MV obtained by limiting the operation amount MV_x' calculated by the feedforward addition unit 65 to a value that is equal to or greater than the operation amount lower limit value OL_x and equal to or less than the operation amount upper limit value OH_x in the current control cycle (step S317 in FIG. 12).
[0142] The operation amount output unit 67 outputs the operation amount MV that has been limit-processed by the limit processing unit 66 to the control target (step S318 in FIG. 12).
[0143] When the learning mode is set to on (YES in step S319 of FIG. 12), the operation amount update unit 68 temporarily stores the operation amount MV output from the operation amount output unit 67 (step S320 of FIG. 12). At this time, a time stamp with the start signal reception time point set as time 0 is added to the data of the operation amount MV to be stored. Then, the operation amount update unit 68 updates the data of the operation amount MV read by the operation amount reading unit 59 as the feed-forward control operation amount MV_f in the current control cycle among the time-series data set of the operation amount MV stored in the operation amount storage unit 55 to the value of the operation amount MV output from the operation amount output unit 67 (step S321 of FIG. 12).
[0144] The on / off of the learning mode can be set by the operator operating the PID controller 2a, or can also be set by the operator via the industrial PC 1a. Note that the weighted average value of the operation amount MV (feed-forward control operation amount MV_f) to be updated stored in the operation amount storage unit 55 and the operation amount MV output from the operation amount output unit 67 may be used as the updated value.
[0145] The PID controller 2a executes the processes of steps S309 to S321 for each control cycle until the control is terminated by a command from the operator (YES in step S322 of FIG. 12).
[0146] However, the set value reading unit 58, the operation amount reading unit 59, the operation amount upper limit value reading unit 60, and the operation amount lower limit value reading unit 61 stop updating the reference set value SP_r, the feed-forward control operation amount MV_f, the operation amount upper limit value OH_x, and the operation amount lower limit value OL_x when a certain continuous time has elapsed since the measured value of the control amount PV has settled (YES in step S323 of FIG. 12) (step S324 of FIG. 12).
[0147] As a result, the reference set value SP_r, the feedforward control operation amount MV_f, the operation amount upper limit value OH_x, and the operation amount lower limit value OL_x are fixed to the values received one control cycle before. However, the operation amount upper limit value reading unit 60 may return the operation amount upper limit value OH_x to the initial value (100%), and the operation amount lower limit value reading unit 61 may return the operation amount lower limit value OL_x to the initial value (0%).
[0148] The above-mentioned duration needs to be set so that the update of the reference set value SP_r, the feedforward control operation amount MV_f, the operation amount upper limit value OH_x, and the operation amount lower limit value OL_x stops before the data stored in the set value storage unit 54, the operation amount storage unit 55, the operation amount upper limit value storage unit 56, and the operation amount lower limit value storage unit 57 ends. After that, until the timing of the next set value SP change and until the start signal is received again, the processes of steps S313 to S321 are executed for each control cycle.
[0149] In this embodiment, when the operation amount MV is output from the operation amount output unit 67, the data of the operation amount MV stored in the operation amount storage unit 55 is updated one by one. However, after the update of the reference set value SP_r, the feedforward control operation amount MV_f, the operation amount upper limit value OH_x, and the operation amount lower limit value OL_x stops, or after a series of control operations is completed, the time-series data set of the operation amount MV may be updated all at once according to the data of the operation amount MV stored by itself.
[0150] In the case of batch update, the operation amount update unit 68 updates the time-series data set so that the data of the operation amount MV to be updated in the time-series data set corresponding to the control condition (ID) indicated by the start signal is updated to the value of the operation amount MV output from the operation amount output unit 67 at the time (the elapsed time from the start signal reception time, which is an integer multiple of the control cycle) that matches the time stamp value of this data. As described above, the weighted average value of the operation amount MV to be updated and the operation amount MV output from the operation amount output unit 67 may be used as the updated value.
[0151] Similar to the first embodiment, the limit processing unit 66 is not an essential component in this embodiment. When the limit processing unit 66 is not provided, the manipulated variable output unit 67 outputs the manipulated variable MV_x' calculated by the feed-forward addition unit 65 to the control target. When the limit processing unit 66 is not provided, it is not necessary to transmit the manipulated variable upper limit value OH_x and the manipulated variable lower limit value OL_x from the industrial PC 1a, and it is also not necessary to store and read the manipulated variable upper limit value OH_x and the manipulated variable lower limit value OL_x in the PID controller 2a.
[0152] In addition, when the time interval of the time series data generated by the ideal response generation unit 10 is longer than the control period of the PID controller 2a, the set value reading unit 58 may appropriately interpolate the time series data of the controlled variable PV stored in the set value storage unit 54, and sequentially output the data of the controlled variable PV for each control period as a new value of the reference set value SP_r for each control period. The manipulated variable reading unit 59 may appropriately interpolate the time series data of the manipulated variable MV stored in the manipulated variable storage unit 55, and sequentially output the data of the manipulated variable MV for each control period as a new value of the feed-forward control manipulated variable MV_f for each control period. The manipulated variable upper limit value reading unit 60 may appropriately interpolate the time series data of the manipulated variable upper limit value OH_x stored in the manipulated variable upper limit value storage unit 56, and sequentially output the manipulated variable upper limit value OH_x for each control period as a new value used in the limit processing unit 66 for each control period. The manipulated variable lower limit value reading unit 61 may appropriately interpolate the time series data of the manipulated variable lower limit value OL_x stored in the manipulated variable lower limit value storage unit 57, and sequentially output the manipulated variable lower limit value OL_x for each control period as a new value used in the limit processing unit 66 for each control period.
[0153] [Third Embodiment] Next, a third embodiment of the present invention will be described. When obtaining time-series data of a control variable PV and time-series data of a manipulated variable MV that are close to an ideal control response through simulation or the like, it is not always necessary to use PID control. For example, it may simply be a combination of step inputs of the manipulated variable MV. In this case, the compatibility with the PID control, which is a control theory method, deteriorates, and it is noted that the PID control for compensating for the excess or deficiency of the feedforward control may cause unnecessary up and down movements of the manipulated variable MV. Then, the inventor has conceived that a configuration in which the feedforward control waveform (a functional expression in which the second derivative is continuous), which has good compatibility with the combination with the PID control, is approximately substituted is suitable even if it does not match the time-series data of the manipulated variable MV close to the ideal control response. By basing on this configuration, the combination of the PID controller (such as a thermostat) and the industrial PC can be connected based on control theory, so that it can be improved to an instrumentation that can cope with strong non-linear characteristics and is also easy to perform fine adjustment based on control theory.
[0154] Since the manipulated variable MV_f of the feedforward control is approximately substituted with a feedforward control waveform (a transfer function in which the second derivative is continuous) that has good compatibility with the combination with the PID control, by visualizing and quantifying the manipulated variable MV_b of the feedback control (the difference between the manipulated variable MV as the control result and the manipulated variable MV_f), which corresponds to the amount by which the PID control corrects the manipulated variable MV_f, an index for fine adjustment can be obtained. The relationship between the index and the know-how of fine adjustment can be expected to be obtained empirically by repeating simulations and actual controls.
[0155] FIG. 13 is a block diagram showing the configuration of a control system according to the third embodiment of the present invention. The control system of this embodiment is composed of an industrial PC 1b (host device) and a PID controller 2b. In FIG. 13, the description of the data generation information acquisition unit 12, the control variable consistency calculation unit 13, the data set selection unit 14, the data scaling processing unit 15, the manipulated variable position correction unit 16, and the data set generation unit 17 is omitted.
[0156] The industrial PC 1b includes an ideal response generation unit 10, a memory unit 11, a data generation information acquisition unit 12, a control quantity matching degree calculation unit 13, a data set selection unit 14, a data expansion / shrinkage processing unit 15, an operation quantity position correction unit 16, a data set generation unit 17, a control quantity output unit 19b that sequentially extracts data of the control quantity PV for each control cycle from the time-series data stored in the memory unit 11 and sequentially transmits it to the PID controller 2b when a specified timing is reached, a function formula approximation substitution unit 26 that approximates the time-series data of the operation quantity by a function where the second derivative is continuous, an operation quantity function output unit 27 that transmits the parameter values of the approximation formula obtained by the function formula approximation substitution unit 26 to the PID controller 2b when a specified timing is reached, an operation quantity upper limit value output unit 21b that transmits to the PID controller 2b the parameter values for defining the operation quantity upper limit value OH_x assuming the error range of the approximation value of the operation quantity MV for each control cycle calculated from the parameter values of the approximation formula when a specified timing is reached, and an operation quantity lower limit value output unit 22b that transmits to the PID controller 2b the parameter values for defining the operation quantity lower limit value OL_x assuming the error range of the approximation value of the operation quantity MV for each control cycle calculated from the parameter values of the approximation formula when a specified timing is reached.
[0157] The control quantity output unit 19b, the operation quantity function output unit 27, the operation quantity upper limit value output unit 21b, and the operation quantity lower limit value output unit 22b constitute a transmission unit 28.
[0158] The PID controller 2b includes a setpoint input unit 80 that receives the controlled variable PV transmitted from the industrial PC 1b as a new value of the reference setpoint SP_r, an operation amount function input unit 81 that receives the parameter value of the approximate expression transmitted from the industrial PC 1b as the parameter value of the approximate expression of the feedforward control operation amount MV_f, an operation amount upper limit value input unit 82 that receives the parameter value of the operation amount upper limit value OH_x transmitted from the industrial PC 1b, an operation amount lower limit value input unit 83 that receives the parameter value of the operation amount lower limit value OL_x transmitted from the industrial PC 1b, a controlled variable acquisition unit 84 that acquires the measured value of the controlled variable PV, a feedback calculation unit 85 that performs PID calculation with the reference setpoint SP_r and the measured value of the controlled variable PV as inputs to calculate the feedback control operation amount MV_b (the first operation amount), a feedforward addition unit 86 that calculates the feedforward control operation amount MV_f based on the received parameter value of the approximate expression and adds the feedforward control operation amount MV_f to the feedback control operation amount MV_b to calculate the operation amount MV_x' (the second operation amount), a limit processing unit 87 that outputs the operation amount MV (the third operation amount) obtained by limiting the operation amount MV_x' calculated by the feedforward addition unit 86 to a value within the range of the operation amount upper limit value OH_x and the operation amount lower limit value OL_x, an operation amount output unit 88 that outputs the operation amount MV obtained by the limit processing unit 87 to the control target, and an operation amount correction amount output unit 89 that transmits the data of the feedback control operation amount MV_b.
[0159] The setpoint input unit 80, the operation amount function input unit 81, the operation amount upper limit value input unit 82, and the operation amount lower limit value input unit 83 constitute a receiving unit 90. The transmitting unit 28 and the receiving unit 90 may transmit and receive data by wired communication or wireless communication. Further, the present invention is not limited to a specific communication standard, and an appropriate communication standard may be appropriately selected to realize the communication between the industrial PC 1b and the PID controller 2b.
[0160] FIG. 14 is a flowchart for explaining the operation of the industrial PC 1b. The processes of the ideal response generation unit 10, the storage unit 11, the data generation information acquisition unit 12, the control amount matching degree calculation unit 13, the data set selection unit 14, the data stretching and shrinking processing unit 15, the operation amount position correction unit 16, and the data set generation unit 17 (steps S100 to S107 in FIG. 14) are as described in the first embodiment.
[0161] Next, the function formula approximation substitution unit 26 approximates the time series data set of the manipulated variable MV stored in the storage unit 11 by a function with continuous second derivative (step S119 in FIG. 14). As the approximation formulas, formulas (16) to (18) disclosed in Japanese Patent Laid-Open No. 2021-124864 are preferable. MV_X1 =[Kx1 / {(1 + ATfs)(1 + (2.0 - A)Tfs)}]FF_X ···(16) MV_X2 =[Kx2s / {(1 + ATfs)(1 + (2.0 - A)Tfs)}]FF_X ···(17) MV_f = MV_X1 + MV_X2 ···(18)
[0162] In the transfer function expressions (16) and (17), MV_X1 and MV_X2 are feedforward amounts, Tf is a parameter (time constant) that defines the time for gradually converging the feedforward amounts MV_X1 and MV_X2, and A is a coefficient for adjusting the balance of the time constant Tf (A is a real number greater than 0). The recommended value of the coefficient A is 1.0. FF_X is a trigger variable that becomes 0 (non-significant value) at the time before the manipulated variable MV to be approximated rises and becomes 1 (significant value) at the rise of the manipulated variable MV to be approximated.
[0163] Kx1 is a parameter that defines the feedforward amount MV_X1 with respect to the stepwise change of the manipulated variable MV of the approximation target. According to Equation (16), the feedforward amount MV_X1 gradually converges from the zero value to the value of the parameter Kx1. Kx2 is a parameter that defines the feedforward amount MV_X2 with respect to the impulse-like change of the manipulated variable MV of the approximation target. According to Equation (17), after the total amount (the integrated value of each control cycle) of the feedforward amount MV_X2 approaches the value of the parameter Kx2, the feedforward amount MV_X2 itself gradually converges to the zero value. MV_f in Equation (18) is an approximation value of the manipulated variable MV. On the PID controller 2b side described later, MV_f is called the feedforward control manipulated variable.
[0164] An example of the changes in the feedforward amounts MV_X1 and MV_X2 is shown in FIG. 15. In the approximation result shown in FIG. 15, the parameter Kx1 is 20.0, the parameter Kx2 is 2000.0, and the time constant Tf is = 15.0 seconds. The functional equation approximation substitution unit 26 performs the above approximation for each data set of the manipulated variable MV.
[0165] Next, when the specified timing arrives (YES in step S120 of FIG. 14), the control quantity output unit 19b selects a specified data set from the time series data sets of the control quantity PV stored in the storage unit 11. The control quantity output unit 19b sequentially extracts the data of the control quantity PV for each control cycle of the PID controller 2b from the selected data set and sequentially transmits it to the PID controller 2b. At this time, the control quantity output unit 19b transmits the data of the control quantity PV for each control cycle so that the interval of the time indicated by the time stamp value of the data it sequentially transmits matches the control cycle of the PID controller 2b (step S121 of FIG. 14). The specified timing and the specified data set are the same as those in the first embodiment.
[0166] When the specified timing is reached, the manipulated variable function output unit 27 selects, from among the approximate expressions obtained by the function expression approximation substitution unit 26, the approximate expression obtained for the specified data set of the manipulated variable MV. The manipulated variable function output unit 27 transmits the parameter values of the selected approximate expression to the PID controller 2b (step S122 in FIG. 14).
[0167] The parameter values to be transmitted are Tf, Kx1, Kx2, and A, and further, there is a time Tx from the start point of the control operation until the trigger variable FF_X changes from 0 to 1. However, when the coefficient A is a fixed value and is pre-registered in the PID controller 2b, the coefficient A does not have to be transmitted. Also, when the time Tx is a fixed value, that is, the time when the data of the manipulated variable MV rises is always the same, and the time Tx is a fixed value and is pre-registered in the PID controller 2b, the time Tx does not have to be transmitted.
[0168] When the specified timing is reached, the manipulated variable upper limit value output unit 21b transmits, to the PID controller 2b, parameter values for defining a manipulated variable upper limit value OH_x assuming an error range of the approximate value of the manipulated variable MV for each control cycle calculated from the parameter values transmitted by the manipulated variable function output unit 27 (step S123 in FIG. 14). At this time, the manipulated variable upper limit value output unit 21b transmits, for each control cycle, the parameter values for defining the manipulated variable upper limit value OH_x to the PID controller 2b so that the time indicated by the time stamp value (the time stamp value of the data of the manipulated variable MV to be approximated) added to the parameter values transmitted by itself is the same as the time indicated by the time stamp value of the data of the controlled variable PV transmitted by the controlled variable output unit 19b. Thereby, the interval of the times indicated by the time stamp values of the parameters sequentially transmitted by the manipulated variable upper limit value output unit 21b coincides with the control cycle of the PID controller 2b. As the simplest process, an upward margin ΔOHx centered on the approximate value of the manipulated variable MV for each control cycle may be used as the parameter for defining the manipulated variable upper limit value OH_x.
[0169] When the specified timing is reached, the operation amount lower limit value output unit 22b transmits to the PID controller 2b a parameter value for defining an operation amount lower limit value OL_x assuming an error range of an approximation value of the operation amount MV for each control period calculated from the parameter values transmitted by the operation amount function output unit 27 (step S124 in FIG. 14). At this time, the operation amount lower limit value output unit 22b transmits to the PID controller 2b for each control period a parameter value for defining the operation amount lower limit value OL_x so that the time indicated by the time stamp value (the time stamp value of the operation amount MV data to be approximated) added to the parameter value transmitted by itself is the same as the time indicated by the time stamp value of the control amount PV data transmitted by the control amount output unit 19b. Thereby, the interval of the times indicated by the time stamp values of the parameters sequentially transmitted by the operation amount lower limit value output unit 22b matches the control period of the PID controller 2b. As the simplest process, a descending margin ΔOLx centered on the approximation value of the operation amount MV for each control period may be used as a parameter for defining the operation amount lower limit value OL_x.
[0170] Note that it is not necessary to make the ascending margin ΔOHx and the descending margin ΔOLx fixed values, and each of the ascending margin ΔOHx and the descending margin ΔOLx may be changed according to the elapsed time from the time point when the set value SP is changed, as will be described later.
[0171] The control amount output unit 19b repeatedly executes the process of step S121 until it finishes transmitting the specified data set stored in the storage unit 11 (YES in step S125 of FIG. 14). The operation amount upper limit value output unit 21b and the operation amount lower limit value output unit 22b repeatedly execute the processes of steps S123 and S124. The operation amount upper limit value output unit 21b and the operation amount lower limit value output unit 22b end the process in the same manner when the control amount output unit 19b finishes the process (that is, when reaching the end of the data set of the operation amount MV to be approximated). In the example of FIG. 14, it is described that the parameter values of the approximation formula are also repeatedly transmitted, but the parameter values of the approximation formula only need to be transmitted once.
[0172] The synchronization of data, that is, the parameter values of the control variable PV, the operation amount upper limit value OH_x, and the operation amount lower limit value OL_x, for which it is necessary that the timestamp values be the same, are preferably received by the PID controller 2b simultaneously, but a time difference in arrival is acceptable. If this time difference is within a short time with respect to the control period (e.g., 1 second) of the PID controller 2b, there is no practical problem. With the above, the operation on the industrial PC 1b side is completed, and the industrial PC 1b waits until the next specified timing.
[0173] FIG. 16 is a flowchart for explaining the operation of the PID controller 2b. The set value input unit 80 of the PID controller 2b receives the control variable PV transmitted from the industrial PC 1b as a new value of the reference set value SP_r (step S400 in FIG. 16). As the simplest process, it is in the form of receiving data of one control variable PV every control period of the PID controller 2b.
[0174] The operation amount function input unit 81 receives the parameter values of the approximate expression transmitted from the industrial PC 1b as the parameter values of the approximate expression of the feedforward control operation amount MV_f (step S401 in FIG. 16).
[0175] The operation amount upper limit value input unit 82 receives the parameter value of the operation amount upper limit value OH_x transmitted from the industrial PC 1b as a new value to be used by the limit processing unit 87 (step S402 in FIG. 16). The operation amount lower limit value input unit 83 receives the parameter value of the operation amount lower limit value OL_x transmitted from the industrial PC 1b as a new value to be used by the limit processing unit 87 (step S403 in FIG. 16). The control variable acquisition unit 84 acquires the measured value of the control variable PV (step S404 in FIG. 16).
[0176] Next, the feedback calculation unit 85 uses the reference set value SP_r received by the set value input unit 80 and the measured value of the control quantity PV acquired by the control quantity acquisition unit 84 as inputs, and performs PID calculation to calculate the feedback control operation quantity MV_b so that the measured value of the control quantity PV matches the reference set value SP_r. Specifically, when the feedback calculation unit 85 performs velocity-type PID calculation such as the transfer function formula shown in Equation (7), it calculates the operation quantity change width ΔMV_b (step S405 in FIG. 16).
[0177] Then, as shown in Equation (14), the feedback calculation unit 85 uses the value obtained by adding the operation quantity change width ΔMV_b to the operation quantity MV_x (the value one control cycle before MV_x' to be described later) calculated by the feedforward addition unit 86 one control cycle before as the feedback control operation quantity MV_b (step S406 in FIG. 16).
[0178] Note that general additional functions such as anti-reset windup processing (processing to prevent unnecessary accumulation of integral operation) may be provided in the feedback calculation unit 85.
[0179] The feedforward addition unit 86 calculates the feedforward control operation quantity MV_f according to Equations (16) to (18) based on the parameter value received by the operation quantity function input unit 81, and adds the feedforward control operation quantity MV_f to the feedback control operation quantity MV_b to calculate the operation quantity MV_x' (step S407 in FIG. 16). The time used for calculating the feedforward control operation quantity MV_f is the elapsed time (time that is an integer multiple of the control cycle) from the time when the reception of the parameter values of the control quantity PV, the operation quantity upper limit value OH_x, and the operation quantity lower limit value OL_x starts (the start time of the control operation).
[0180] As parameter values received by the operation amount function input unit 81, there are Tf, Kx1, Kx2, A, and Tx. The time Tx indicates the time from the reception start point (start point of the control operation) until the trigger variable FF_X changes from 0 to 1. Therefore, the feedforward addition unit 86 may set the trigger variable FF_X from 0 to 1 when the elapsed time from the reception start point (start point of the control operation) reaches Tx.
[0181] As described above, when the coefficient A is registered in advance in the PID controller 2b as a fixed value, the feedforward addition unit 86 may use the registered value of the coefficient A. Similarly, when the time Tx is registered in advance in the PID controller 2b as a fixed value, the feedforward addition unit 86 may use the registered value of the time Tx.
[0182] When the feedback calculation unit 85 performs speed-type PID calculation, the feedforward addition unit 86 calculates the difference between the feedforward control operation amount MV_f of the current control cycle calculated by itself and the feedforward control operation amount MV_f of the previous control cycle as the change width ΔMV_f. Then, as shown in Equation (15), the feedforward addition unit 86 adds the change width ΔMV_f to the feedback control operation amount MV_b to calculate a new value of the operation amount MV_x'.
[0183] Based on the feedforward control operation amount MV_f of the current control cycle calculated by the feedforward addition unit 86 and the parameter value of the operation amount upper limit value OH_x received by the operation amount upper limit value input unit 82, the limit processing unit 87 calculates the operation amount upper limit value OH_x of the current control cycle as shown in Equation (19) (step S408 in FIG. 16). OH_x = MV_f + ΔOHx ···(19)
[0184] In this embodiment, since the upward margin ΔOHx is used as the parameter value of the operation amount upper limit value OH_x, the value obtained by adding the upward margin ΔOHx to the feedforward control operation amount MV_f is set as the operation amount upper limit value OH_x. Further, the limit processing unit 87 calculates the operation amount lower limit value OL_x for the current control cycle as shown in Equation (20) based on the feedforward control operation amount MV_f for the current control cycle calculated by the feedforward addition unit 86 and the parameter value of the operation amount lower limit value OL_x received by the operation amount lower limit value input unit 83 (step S409 in FIG. 16). OL_x = MV_f - ΔOLx ···(20)
[0185] In this embodiment, since the downward margin ΔOLx is used as the parameter value of the operation amount lower limit value OL_x, the value obtained by subtracting the downward margin ΔOLx from the feedforward control operation amount MV_f is set as the operation amount lower limit value OL_x.
[0186] Similar to the limit processing unit 37, the limit processing unit 87 outputs the operation amount MV obtained by limiting the operation amount MV' calculated by the feedforward addition unit 86 to a value that is equal to or greater than the operation amount lower limit value OL_x and equal to or less than the operation amount upper limit value OH_x for the current control cycle (step S410 in FIG. 16).
[0187] The operation amount output unit 88 outputs the operation amount MV that has been subjected to limit processing by the limit processing unit 87 to the control target (step S411 in FIG. 16).
[0188] The operation amount correction amount output unit 89 transmits the feedback control operation amount MV_b (the difference between the operation amount MV as the control result and the feedforward control operation amount MV_f) to the outside (step S412 in FIG. 16). As the output destination of the feedback control operation amount MV_b, for example, there is an industrial PC 1b. As a result, the time-series data of the feedback control operation amount MV_b is stored in the industrial PC 1b, and this time-series data can be displayed.
[0189] The PID controller 2b executes the processes of steps S400 to S412 for each control cycle until the control is terminated by a command from an operator (YES in step S413 in FIG. 16).
[0190] However, when a certain continuous time has elapsed since the measured value of the control quantity PV was tuned (YES in step S414 of FIG. 16), the set value input unit 80, the operation amount upper limit value input unit 82, and the operation amount lower limit value input unit 83 stop updating the parameter values of the reference set value SP_r, the operation amount upper limit value OH_x, and the operation amount lower limit value OL_x (step S415 of FIG. 16). Also, the feedforward addition unit 86 stops updating the feedforward control operation amount MV_f (step S415).
[0191] As a result, the reference set value SP_r, the feedforward control operation amount MV_f, the operation amount upper limit value OH_x, and the operation amount lower limit value OL_x are fixed to the values of the previous control cycle, respectively. The above continuous time needs to be set so that the updates of the reference set value SP_r, the feedforward control operation amount MV_f, the operation amount upper limit value OH_x, and the operation amount lower limit value OL_x stop before the data transmission from the industrial PC 1b ends.
[0192] Thereafter, until the processing of steps S400 to S403 is restarted at the timing of the following regulations, the processing of steps S404 to S412 is executed for each control cycle.
[0193] In this embodiment, when the feedback control operation amount MV_b is output from the feedback calculation unit 85, the feedback control operation amount MV_b is transmitted externally one by one. However, after the updates of the reference set value SP_r, the feedforward control operation amount MV_f, the operation amount upper limit value OH_x, and the operation amount lower limit value OL_x stop, or after a series of control operations are completed, the time series data of the feedback control operation amount MV_b stored in the operation amount correction amount output unit 89 may be transmitted in a batch.
[0194] Similar to the first embodiment, in this embodiment, the limit processing unit 87 is not an essential component. When the limit processing unit 87 is not provided, the operation amount output unit 88 outputs the operation amount MV_x' calculated by the feed-forward addition unit 86 to the control target. When the limit processing unit 87 is not provided, it is not necessary to transmit the parameter values of the operation amount upper limit OH_x and the operation amount lower limit OL_x from the industrial PC1b.
[0195] Each of the industrial PCs 1, 1a, 1b and the PID controllers 2, 2a, 2b described in the first to third embodiments can be realized by a computer including a CPU (Central Processing Unit), a storage device, and an interface, and a program for controlling these hardware resources. A configuration example of this computer is shown in FIG. 17.
[0196] The computer includes a CPU 200, a storage device 201, and an interface device (I / F) 202. In the case of the industrial PCs 1, 1a, 1b, hardware such as a communication circuit for communication with the PID controllers 2, 2a, 2b is connected to the I / F 202. In the case of the PID controllers 2, 2a, 2b, a sensor for measuring the control amount PV, hardware of a communication circuit for communication with the industrial PCs 1, 1a, 1b, and a power regulator are connected to the I / F 202. In such a computer, a program for realizing the control method of the present invention is stored in the storage device 201. Each CPU 200 of the industrial PCs 1, 1a, 1b and the PID controllers 2, 2a, 2b executes the processes described in the first to third embodiments according to the program stored in the storage device 201.
Industrial Applicability
[0197] The present invention can be applied to a control system.
Explanation of Reference Numerals
[0198] 1, 1a, 1b... industrial PCs, 2, 2a, 2b... PID controllers, 10... ideal response generation unit, 11, 18... memory units, 12... data generation information acquisition unit, 13... control quantity consistency calculation unit, 14... data set selection unit, 15... data expansion / shrinkage processing unit, 16... manipulated variable position correction unit, 17... data set generation unit, 19, 19a, 28b... control quantity output units, 20... manipulated variable change width output unit, 21, 21a, 21b... manipulated variable upper limit value output units, 22, 22a, 22b... manipulated variable lower limit value output units, 23, 25, 28... transmission units, 24, 38, 67, 88... manipulated variable output units, 26... function formula approximation substitution unit, 27... manipulated variable function output unit, 30, 80... set value input units, 31... manipulated variable change width input unit, 32, 82... manipulated variable upper limit value input units, 33, 83... manipulated variable lower limit value input units, 34, 63, 84... control quantity acquisition units, 35, 65, 86... feedforward addition units, 36... feedback addition unit, 37, 66, 87... limit processing units, 39, 69, 90... reception units, 50... set value reception unit, 51... manipulated variable reception unit, 52... manipulated variable upper limit value reception unit, 53... manipulated variable lower limit value reception unit, 54... set value memory unit, 55... manipulated variable memory unit, 56... manipulated variable upper limit value memory unit, 57... manipulated variable lower limit value memory unit, 58... set value readout unit, 59... manipulated variable readout unit, 60... manipulated variable upper limit value readout unit, 61... manipulated variable lower limit value readout unit, 62... start signal input unit, 64, 85... feedback calculation units, 68... manipulated variable update unit, 71... readout unit, 81... manipulated variable function input unit, 89... manipulated variable correction amount output unit.
Claims
1. A first storage unit configured to store a data set of time-series data of a control amount and time-series data of an operation amount; A data generation information acquisition unit configured to acquire information on a change in the control amount for specifying a missing data set that is not stored in the first storage unit among the data sets required by a PID controller; A control amount degree-of-match calculation unit configured to calculate, for each of the data sets stored in the first storage unit, a degree of match of the change in the control amount with the missing data set based on the information acquired by the data generation information acquisition unit; A data set selection unit configured to select, in order from the top, a specified number of the upper data sets stored in the first storage unit that have a change in the control amount close to that of the missing data set based on the degree of match; Based on a first ratio of the difference between the initial control amount and the final control amount of the missing data set to the difference between the initial operation amount and the final control amount of the selected data set, the amount of change in the control amount at each time of the selected data set is expanded or contracted to generate time-series data of a provisional control amount, and the amount of change in the operation amount at each time of the selected data set is expanded or contracted to generate time-series data of a provisional operation amount, a data expansion / contraction processing unit; An operation amount position correction unit configured to correct the magnitude of the initial operation amount of the provisional operation amount by correcting the magnitude of the initial operation amount of the provisional operation amount based on a second ratio of the initial control amount of the missing data set to the initial control amount of the selected data set; A data set generation unit configured to store, in the first storage unit for supplementing the missing data set, a data set of the time-series data of the provisional control amount generated by the data expansion / contraction processing unit and the time-series data of the provisional operation amount corrected by the operation amount position correction unit; A control system comprising: a transmission unit configured to transmit the data set stored in the first storage unit to the PID controller or transmit data generated from the data set stored in the first storage unit to the PID controller after the data set is stored by the data set generation unit.
2. The control system according to claim 1, wherein When the specified number of the selected data sets is plural, the data set generation unit stores, in the first storage unit for supplementing the missing data set, a data set obtained by integrating a plurality of time series data of the provisional control amounts generated by the data expansion / contraction processing unit and a data set obtained by integrating a plurality of time series data of the provisional operation amounts corrected by the operation amount position correction unit. A control system characterized by that.
3. In the control system according to claim 1 or 2, The data expansion / contraction processing unit calculates, until the time to be calculated, a value obtained by multiplying the amount of change per time of the control amount of the selected data set by the first ratio and cumulatively adding the result to the initial control amount of the missing data set, and sets the result as the provisional control amount after the expansion / contraction processing at the time to be calculated. At the same time, a value obtained by multiplying the amount of change per time of the operation amount of the selected data set by the first ratio is cumulatively added to the initial operation amount of the selected data set until the time to be calculated, and the result is set as the provisional operation amount after the expansion / contraction processing at the time to be calculated. The operation amount position correction unit corrects the size of the time series data of the provisional operation amount by multiplying the initial operation amount of the time series data of the provisional operation amount obtained by the data expansion / contraction processing unit by the second ratio. A control system characterized by that.
4. In the control system according to claim 1, The control system further includes an ideal response generation unit configured to generate a plurality of data sets of the time series data of the control amount and the time series data of the operation amount corresponding to an ideal control response. [[ID= A receiving unit configured to receive the control amount transmitted from the transmitting unit as a new value of the reference set value, and to receive the change width of the operation amount transmitted from the transmitting unit as a new value of the change width of the feedforward control operation amount; A control amount acquisition unit configured to acquire a measured value of the control amount; A feedforward addition unit configured to calculate, as a second operation amount, a value obtained by adding the change width of the feedforward control operation amount received by the receiving unit to the first operation amount in the previous control cycle; A feedback addition unit configured to perform a speed-type PID operation with the reference set value and the measured value of the control amount as inputs to calculate the change width of the feedback control operation amount, and to calculate, as a new value of the first operation amount, a value obtained by adding the change width of the feedback control operation amount to the second operation amount; A control system comprising an operation amount output unit configured to output the first operation amount calculated by the feedback addition unit to a control target.
6. In the control system according to claim 1, the transmitting unit transmits the time-series data of the control amount and the time-series data of the operation amount stored in the first storage unit to the PID controller, the PID controller a receiving unit configured to receive the time-series data of the control amount and the time-series data of the operation amount transmitted from the transmitting unit; a second storage unit configured to store the time-series data of the control amount and the time-series data of the operation amount received by the receiving unit; a start signal input unit configured to receive a start signal for instructing the start of a control operation from the outside; a reading unit configured to sequentially read, for each control cycle, the data of the control amount from the time-series data stored in the second storage unit as a new value of the reference set value, and at the same time, to sequentially read, for each control cycle, the data of the operation amount from the time-series data stored in the second storage unit as a new value of the feedforward control operation amount, when the start signal input unit receives the start signal and the control operation is started; a control amount acquisition unit configured to acquire a measured value of the control amount; a feedback calculation unit configured to perform a PID calculation with the reference set value and the measured value of the control amount as inputs to calculate a first operation amount; A feedforward addition unit configured to calculate a second operation amount by adding the feedforward control operation amount to the first operation amount; An operation amount output unit configured to output the second operation amount calculated by the feedforward addition unit to a control target, characterized in that the control system comprises: **Claim 7** In the control system according to claim 1, further comprising a functional expression approximation substitution unit configured to approximate the time series data of the operation amount stored in the first storage unit by a function in which the second derivative is continuous; when a prescribed timing is reached, the transmission unit sequentially extracts data of the control amount for each control period from the time series data stored in the first storage unit and sequentially transmits the data to the PID controller, and transmits parameter values of the approximation expression obtained by the functional expression approximation substitution unit to the PID controller; The PID controller receives the control amount transmitted from the transmission unit as a new value of a reference set value, and is configured to receive the parameter value of the approximation expression transmitted from the transmission unit as a parameter value of an approximation expression of the feedforward control operation amount; a control amount acquisition unit configured to acquire a measured value of the control amount; a feedback calculation unit configured to perform a PID calculation with the reference set value and the measured value of the control amount as inputs to calculate a first operation amount; a feedforward addition unit configured to calculate a feedforward control operation amount based on the parameter value received by the receiving unit, and calculate a second operation amount by adding the feedforward control operation amount to the first operation amount; An operation amount output unit configured to output the second operation amount calculated by the feedforward addition unit to a control target, characterized in that the control system comprises: **Claim 8** A first step of referring to a storage unit that stores a data set of time series data of a control amount and time series data of an operation amount, and acquiring information on a change in the control amount for identifying a missing data set that is not stored in the storage unit among the data sets required by the PID controller; A second step of calculating, for each of the data sets stored in the storage unit, a degree of coincidence of a change in the control amount with the missing data set based on the information acquired in the first step; Based on the degree of consistency, a third step of selecting, in order from the top, a specified number of the upper data sets in the data sets stored in the storage unit, whose change in the control amount is close to that of the missing data set; Based on a first ratio of the difference between the initial control amount and the final control amount of the missing data set to the difference between the initial operation amount and the final control amount of the selected data set, a fourth step of generating time-series data of a provisional control amount by stretching or shrinking the amount of change in the control amount of the selected data set for each time, and generating time-series data of a provisional operation amount by stretching or shrinking the amount of change in the operation amount of the selected data set for each time; Based on a second ratio of the initial control amount of the missing data set to the initial control amount of the selected data set, a fifth step of correcting the magnitude of the initial operation amount of the provisional operation amount, thereby correcting the magnitude of the time-series data of the provisional operation amount; A sixth step of storing, in the storage unit, as a supplement for the missing data set, a data set of the time-series data of the provisional control amount generated in the fourth step and the time-series data of the provisional operation amount corrected in the fifth step; A seventh step of, after storing the data set in the sixth step, transmitting the data set stored in the storage unit to the PID controller, or transmitting data generated from the data set stored in the storage unit to the PID controller. A control method characterized by including the above steps.
9. In the control method according to Claim 8, When the specified number of the selected data sets is plural, the sixth step includes a step of storing, in the storage unit, as a supplement for the missing data set, a data set of the integrated time-series data of the plural provisional control amounts generated in the fourth step and the integrated time-series data of the plural provisional operation amounts corrected in the fifth step. A control method characterized by including the above steps.
10. In the control method according to Claim 8 or 9, The fourth step includes calculating, until the time to be calculated, the result of cumulatively adding to the initial control amount of the missing data set a value obtained by multiplying the amount of change per time of the control amount of the selected data set by the first ratio, and setting the result as the provisional control amount after the expansion / contraction process at the time to be calculated. At the same time, calculating, until the time to be calculated, the result of cumulatively adding to the initial operation amount of the selected data set a value obtained by multiplying the amount of change per time of the operation amount of the selected data set by the first ratio, and setting the result as the provisional operation amount after the expansion / contraction process at the time to be calculated. The fifth step includes modifying the size of the time series data of the provisional operation amount by multiplying the initial operation amount of the time series data of the provisional operation amount obtained in the fourth step by the second ratio. A control method characterized by including this step.
Citation Information
Patent Citations
PID parameter adjustment device
JP4223894B2