Control system and control method

The control system addresses non-linear control challenges by using a library of time-series data to prioritize non-conflicting sets for PID control, stabilizing control objects with strong non-linear characteristics.

JP2025110647APending Publication Date: 2025-07-29AZBIL CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024004595
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-01-16
Publication Date
2025-07-29

AI Technical Summary

Technical Problem

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 and instability.

Method used

A control system and method that utilizes a library of time-series data of control and operation quantities, incorporating a conflict determination and evaluation process to identify and prioritize non-conflicting data sets, which are then used for feedback and feedforward control to stabilize the PID controller.

Benefits of technology

The system enables efficient and automated handling of contradictions in the data sets, ensuring stable control characteristics for non-linear systems by prioritizing data sets that minimize operation amount changes, thereby reducing overshoot and destabilization risks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025110647000001_ABST
    Figure 2025110647000001_ABST
Patent Text Reader

Abstract

To obtain a control characteristic that is good for control objects having a strongly nonlinear characteristic.SOLUTION: A PC 1 for industrial use comprises: a contradiction determination unit 14 that determines whether there is a contradiction between first and second datasets among datasets of time-series data of controlled variables and time-series data of manipulated variables; a contradiction evaluation unit 16 that, when there is the contradiction, determines whether there is a contradiction between first and third datasets and whether there is a contradiction between the second and third datasets, and gives an evaluation point to either of the first and second datasets that does not contradict the third dataset; a priority evaluation execution unit 17 that gives a priority point to all datasets stored in a storage unit 11 in such a way that the order of priority heightens in decreasing order of the sum total of evaluation points; and a transmission unit 23 that transmits data generated from the dataset whose priority order is highest among the datasets stored in the storage unit 11, to a PID controller 2.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a control system and a control method for performing control using libraries of time-series data of control quantities and time-series data of manipulated variables.

Background Art

[0002] Regarding PID control, an automatic tuning technique for PID parameters for suitably maintaining control performance when the setpoint 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. 16, when the output value of the theoretical manipulated variable 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 manipulated variable MV and the output action on the actual control object is linear. However, for example, as shown in FIG. 17, 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. 18, 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 for controlling a fluid with a valve.

[0005] Therefore, FIGS. 19 to 21 show simulation results when the temperature is raised by PID control to different target temperatures (setpoints SP) from a state where the manipulated variable MV (heater output) is 0% and the control quantity PV (temperature) is settled at 50°C. In these simulations, when the temperature is raised from 50°C to 150°C shown in FIG. 19, 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. 20, if the same PID parameters as in the case of FIG. 19 are used, vertical fluctuations will occur in the controlled variable PV. Similarly, when the temperature is increased from 50°C to 350°C as shown in FIG. 21, if the same PID parameters as in the case of FIG. 19 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. 22, the theoretical and actual slopes of the manipulated variable MV (about 70% in the case of FIG. 19, about 80% in the case of FIG. 20, and about 90% in the case of FIG. 21) for maintaining each target temperature in FIGS. 19 to 21 are different, and 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 PID controller dedicated to PID calculation (such as a temperature controller) for the purpose of continuing stable and safe control operations, which is also a standard instrumentation concept in the industrial field, especially within manufacturing equipment. That is, while maintaining the reasons why the PID controller should be utilized, it is necessary to exceed the limitations of PID control, and improvement is required.

[0008] Therefore, the inventor has proposed a control method that reproduces the ideal transient response results 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, when collecting a large number of datasets, contradictions may occur between the datasets due to, for example, disturbances that cannot identify the cause of temperature control of the heating device. Therefore, when assuming that a large number of datasets are collected and made into a library, if contradictions occur between the datasets, it becomes difficult to select a dataset when actually executing control. Thus, it is desirable to automate the handling when contradictions occur between the datasets.

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 library of datasets.

Means for Solving the Problems

[0012] The control system of the present invention includes a first storage unit configured to store a plurality of sets of time-series data of a control quantity and time-series data of an operation quantity, and for each of the data sets stored in the first storage unit, an initial control quantity in the time-series data of the control quantity, a final control quantity as a target to be reached, an initial operation quantity in the time-series data of the operation quantity, and a final operation quantity when tuned with the final control quantity are extracted as conflicting elements by a conflicting element extraction unit, a first conflicting element acquisition unit configured to acquire the conflicting elements extracted by the conflicting element extraction unit for each of the first data set and the second data set stored in the first storage unit, a conflict determination unit configured to determine whether there is a conflict between the first data set and the second data set based on the conflicting elements acquired by the first conflicting element acquisition unit, a second conflicting element acquisition unit configured to acquire the conflicting elements extracted by the conflicting element extraction unit for a third data set different from the first data set and the second data set when the conflict determination unit determines that there is a conflict between the first data set and the second data set, a conflict evaluation unit configured to determine whether there is a conflict between the first data set and the third data set and whether there is a conflict between the second data set and the third data set based on the conflicting elements acquired by the first and second conflicting element acquisition units, and give a specified evaluation point to the one of the first data set and the second data set that has no conflict with the third data set, and after the processing of the first conflicting element acquisition unit, the conflict determination unit, the second conflicting element acquisition unit, and the conflict evaluation unit is completed for all possible combinations of the data sets stored in the first storage unit, a priority evaluation execution unit configured to give a priority point so that the higher the total of the evaluation points for all the data sets stored in the first storage unit, the higher the priority, and a transmission unit configured to transmit the data set with the highest priority among the data sets stored in the first storage unit to a PID controller or transmit data generated from the data set with the highest priority to the PID controller.

[0013] Also, in one configuration example of the control system of the present invention, when there are a plurality of data sets having the same total evaluation points, the priority evaluation execution unit gives the priority points so that the priority order becomes higher in the order of smaller operation amount change widths for these data sets. Also, in one configuration example of the control system of the present invention, when the magnitude of the difference between the initial control amount and the final control amount of the second data set with respect to the first reference value, which is the difference between the initial control amount and the final control amount of the first data set, and the magnitude of the difference between the initial operation amount and the final operation amount of the second data set with respect to the second reference value, which is the difference between the initial operation amount and the final operation amount of the first data set, are in an inverse relationship, it is determined that there is a contradiction between the first data set and the second data set. The contradiction evaluation unit determines that there is a contradiction between the first data set and the third data set when the magnitude of the difference between the initial control amount and the final control amount of the third data set with respect to the first reference value and the magnitude of the difference between the initial operation amount and the final operation amount of the third data set with respect to the second reference value are in an inverse relationship. When the magnitude of the difference between the initial control amount and the final control amount of the third data set with respect to the third reference value, which is the difference between the initial control amount and the final control amount of the second data set, and the magnitude of the difference between the initial operation amount and the final operation amount of the third data set with respect to the fourth reference value, which is the difference between the initial operation amount and the final operation amount of the second data set, are in an inverse relationship, it is determined that there is a contradiction between the second data set and the third data set. Also, 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, and 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 feedforward control operation amount change width. A reception unit, 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 reception unit to the first operation amount one control cycle before, and a speed-type PID calculation is performed with the reference set value and the measured value of the control amount as inputs to calculate a change width of the feedback control operation amount, and a feedback addition unit configured 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, and an operation amount output unit configured to output the first operation amount calculated by the feedback addition unit to a 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, the data of the control amount for each control cycle is sequentially read from the time-series data stored in the second storage unit as a new value of the reference set value for each control cycle, and at the same time, the data of the operation amount for each control cycle is sequentially read from the time-series data stored in the second storage unit as a new value of the feed-forward control operation amount for each control cycle. It further includes a read unit configured to do so, 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 feed-forward addition unit configured to add the feed-forward 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 feed-forward addition unit to a control target.

[0016] Also, one configuration example of the control system of the present invention further includes a functional approximation substitution unit configured to approximate the time-series data of the operation amount stored in the first storage unit by a function with continuous second-order differentiation. 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 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 receives 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 receiving unit configured as such, 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, a feedforward addition unit configured to calculate a feedforward control operation amount based on the parameter value received by the receiving unit 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 the control target.

[0017] Further, the control method of the present invention refers to a storage unit that stores a plurality of sets of data sets of time series data of a control amount and time series data of an operation amount, and for each of the data sets, an initial control amount in the time series data of the control amount, a final control amount that becomes a reachable target, an initial operation amount in the time series data of the operation amount, and a final operation amount when tuned with the final control amount are extracted as conflicting elements in a first step; a second step of obtaining the conflicting elements extracted in the first step for each of a first data set and a second data set stored in the storage unit; a third step of determining whether there is a conflict between the first data set and the second data set based on the conflicting elements obtained in the second step; a fourth step of obtaining the conflicting elements extracted in the first step for a third data set different from the first data set and the second data set when it is determined that there is a conflict between the first data set and the second data set; a fifth step of determining whether there is a conflict between the first data set and the third data set and whether there is a conflict between the second data set and the third data set based on the conflicting elements obtained in the second and fourth steps, and giving a specified evaluation point to the one of the first data set and the second data set that has no conflict with the third data set; a sixth step of giving a priority point so that the higher the total of the evaluation points, the higher the priority for all the data sets stored in the storage unit after the processing of the second, third, fourth, and fifth steps is completed for all possible combinations of the data sets stored in the storage unit; and a seventh step of transmitting the data set with the highest priority among the data sets stored in the storage unit to a PID controller, or transmitting data generated from the data set with the highest priority to the PID controller.

[0018] Also, in one configuration example of the control method of the present invention, the sixth step includes a step of giving priority points so that when there are a plurality of data sets having the same total evaluation points, the priority order becomes higher in the order of smaller change widths of the operation amounts for these data sets. Also, in one configuration example of the control method of the present invention, the third step includes a step of determining that there is a contradiction between the first data set and the second data set when the magnitude of the difference between the initial control amount and the final control amount of the second data set with respect to the first reference value, which is the difference between the initial control amount and the final control amount of the first data set, and the magnitude of the difference between the initial operation amount and the final operation amount of the second data set with respect to the second reference value, which is the difference between the initial operation amount and the final operation amount of the first data set, are in an inverse relationship. The fifth step includes a step of determining that there is a contradiction between the first data set and the third data set when the magnitude of the difference between the initial control amount and the final control amount of the third data set with respect to the first reference value and the magnitude of the difference between the initial operation amount and the final operation amount of the third data set with respect to the second reference value are in an inverse relationship. The fifth step also includes a step of determining that there is a contradiction between the second data set and the third data set when the magnitude of the difference between the initial control amount and the final control amount of the third data set with respect to the third reference value, which is the difference between the initial control amount and the final control amount of the second data set, and the magnitude of the difference between the initial operation amount and the final operation amount of the third data set with respect to the fourth reference value, which is the difference between the initial operation amount and the final operation amount of the second data set, are in an inverse relationship.

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, while efficiently utilizing the PID controller, good control characteristics can be obtained for a control object with strong non-linear characteristics. Further, in the present invention, by providing a contradiction element extraction unit, a first contradiction element acquisition unit, a contradiction determination unit, a second contradiction element acquisition unit, a contradiction evaluation unit, and a priority evaluation execution unit, it is possible to automate the handling when a contradiction occurs between the data sets stored in the first storage unit.

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

Embodiments 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 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 experiments 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 nonlinear characteristics.

[0023] By the way, the execution of simulation by a 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, since the temperature control itself is tuned at an arbitrary equilibrium point due to the heat retention of the device housing, etc., it is generally a velocity-type PID algorithm. Then, the inventor came up with the idea that a configuration having an external input of the manipulated variable change width ΔMV_f is suitable on the thermostat side. By basing on this configuration, the calculation amount and the 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 nonlinear 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 collecting a large number of data sets, for example, due to disturbances that cannot identify the cause of the temperature control of the heating device, when comparing two data sets (time-series data of temperature rise) in the data set of the library, the larger the increase width ΔPV of the control variable PV (reference set value SP_r), the smaller the increase width ΔMV of the manipulated variable MV (manipulated variable MV_f of feedforward control). Such contradictions regarding the change width may occur. For example, in the example of Fig. 1(A), the increase width ΔPV of the control variable PV is 200 °C, and the increase width ΔMV of the manipulated variable MV is 10%. In the example of Fig. 1(B), the increase width ΔPV of the control variable PV is 250 °C, and the increase width ΔMV of the manipulated variable MV is 8%. A contradiction regarding the change width has occurred.

[0026] Therefore, when assuming that a large number of data sets are collected and made into a library, if there are contradictions between the data sets, it becomes difficult to select a data set when actually executing control. Therefore, it is desirable to automate the handling when contradictions occur between the data sets.

[0027] If the control system is designed for the purpose of controlling temperature, pressure, flow rate, etc., even if it is a strong non-linear system, it will be a monotonically increasing or monotonically decreasing system. Therefore, even if it is assumed to be a strong non-linear system, it is reasonable to treat cases where contradictions occur as monotonically increasing or decreasing as contradictions in the time-series data.

[0028] For example, when comparing two sets of data sets, if there is a third data set different from them, give priority points to the one that does not conflict with the third data set or has a smaller conflict, or keep the one with a smaller conflict in the library and delete the other. Such a simple process can be considered. It is also assumed that there are multiple third data sets.

[0029] On the other hand, when there is no third data set or the degree of contradiction with the third data set is equivalent, giving priority points to the data set that results in a safer operation (the one with a smaller change width of the manipulated variable MV relative to the change width of the controlled variable PV), or leaving the data set that results in a safer operation in the library can reduce the practical trouble probability such as overshoot and destabilization risks. The inventor has conceived that by providing the above practical judgment rules, it is possible to automate the handling when contradictions occur between data sets.

[0030] [First Embodiment] FIG. 2 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, and for each of the data sets stored in the storage unit 11, an initial control amount PV_o in the time-series data of the control amount PV, a final control amount PV_s as a reachable target, an initial operation amount MV_o in the time-series data of the operation amount MV, and a final operation amount MV_s when tuned with the final control amount are extracted as conflicting elements by a conflicting element extraction unit 12, a conflicting element acquisition unit 13 that acquires the conflicting elements extracted by the conflicting element extraction unit 12 for each of the first data set and the second data set stored in the storage unit 11, a conflict determination unit 14 that determines whether there is a conflict between the first data set and the second data set based on the conflicting elements acquired by the conflicting element acquisition unit 13, and when the conflict determination unit 14 determines that there is a conflict between the first data set and the second data set, a conflicting element acquisition unit 15 that acquires the conflicting elements extracted by the conflicting element extraction unit 12 for a third data set different from the first data set and the second data set, a conflict evaluation unit 16 that determines whether there is a conflict between the first data set and the third data set and whether there is a conflict between the second data set and the third data set based on the conflicting elements acquired by the conflicting element acquisition units 13 and 15, and gives a specified evaluation point to the one of the first data set and the second data set that has no conflict with the third data set, and a priority evaluation execution unit 17 that gives a priority point so that the higher the total evaluation point, the higher the priority for all the data sets stored in the storage unit 11 after the processing of the conflicting element acquisition units 13 and 15, the conflict determination unit 14, and the conflict evaluation unit 16 is completed for all possible combinations of the data sets stored in the storage unit 11.

[0031] Furthermore, when the specified timing is reached, the industrial PC 1 has a control amount output unit 19 that sequentially extracts data of the control amount 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 operation amount MV for each control cycle from the time-series data stored in the storage unit 11, and sequentially transmits data of the operation amount change width ΔMV calculated from the extracted data to the PID controller 2, an operation amount upper limit value output unit 21 that transmits an operation amount upper limit value OH_x assuming an error range of the operation amount MV for each control cycle to the PID controller 2 when the specified timing is reached, and an operation amount lower limit value output unit 22 that transmits an operation amount lower limit value OL_x assuming an error range of the operation amount MV for each control cycle to the PID controller 2 when the specified timing is reached. 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 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 the 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 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 1 and the PID controller 2.

[0034] FIG. 3 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. 3). 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] Time information (timestamp) with the start time of the control operation set as time 0 is added to each of the generated time-series data of the control quantity PV and the time-series data of the manipulated variable MV. The time interval of the generated time-series data is preferably the same as the control period of the PID controller 2, but may be a finer time interval than the control period.

[0037] The storage unit 11 stores the data sets of the time-series data of the control quantity PV and the time-series data of the manipulated variable MV generated for each control condition by the ideal response generation unit 10 (step S101 in FIG. 3). The data set ID unique to the data set and the control condition ID corresponding to the control condition are added to the data set generated for each control condition 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 the data generation when the specified end time has elapsed since the control variable PV has settled after the set value SP is changed. The reason is that if the data generation is continued, the storage capacity of the storage unit 11 will become an enormous amount.

[0039] By repeating the processes of steps S100 and S101, a plurality of data sets are stored in the storage unit 11. In the generation of data sets by searching for the optimal solution in the simulation, the same data set should be generated when the simulation is executed multiple times under the same control conditions. On the other hand, in the generation of data sets using the actual control target, different data sets may be generated even when trials are conducted under the same control conditions. In particular, when acquiring data sets during the temperature increase in the temperature control of a heating device, different data sets may be generated even when trials are conducted under the same control conditions. Therefore, this embodiment is particularly effective in the generation of data sets using the actual control target. Also, in this embodiment, it is desirable to generate at least three sets of data sets.

[0040] Next, for each of the data sets stored in the storage unit 11, the contradiction element extraction unit 12 extracts, as elements for detecting contradictions between the data sets, the initial control variable PV_o in the time-series data of the control variable PV, the final control variable PV_s that is the target to be reached, the initial manipulated variable MV_o (the manipulated variable MV at the same time as the initial control variable PV_o) in the time-series data of the manipulated variable MV, and the final manipulated variable MV_s (the manipulated variable MV at the same time as the final control variable PV_s) when settled with the final control variable PV_s (step S102 in FIG. 3). For example, in the time-series data during the temperature increase in the temperature control of a heating device, the initial control variable PV_o is the control variable PV in the settled state on the low-temperature side, the final control variable PV_s is the control variable PV in the settled state on the high-temperature side, the initial manipulated variable MV_o is the manipulated variable MV in the settled state on the low-temperature side, and the final manipulated variable MV_s is the manipulated variable MV in the settled state on the high-temperature side.

[0041] Subsequently, the contradiction element acquisition unit 13 acquires the contradiction elements (initial control amount PV_o, final control amount PV_s, initial operation amount MV_o, final operation amount MV_s) extracted by the contradiction element extraction unit 12 for the two data sets (first data set and second data set) stored in the storage unit 11 (step S103 in FIG. 3).

[0042] Based on the contradiction elements acquired by the contradiction element acquisition unit 13, the contradiction determination unit 14 determines whether there is a contradiction between the first data set and the second data set (step S104 in FIG. 3). Specifically, the contradiction determination unit 14 determines that there is a contradiction between the first data set and the second data set if the control amount change width ΔMV2, which is the difference between the initial operation amount MV_o and the final operation amount MV_s of the second data set, is smaller than the operation amount change width ΔMV1, which is the difference between the initial operation amount MV_o and the final operation amount MV_s of the first data set, when the control amount change width ΔPV2, which is the difference between the initial control amount PV_o and the final control amount PV_s of the second data set, is larger than the control amount change width ΔPV1, which is the difference between the initial control amount PV_o and the final control amount PV_s of the first data set (first reference value). Further, the contradiction determination unit 14 determines that there is a contradiction between the first data set and the second data set when the control amount change width ΔPV2 is smaller than the control amount change width ΔPV1 and the operation amount change width ΔMV2 is larger than the operation amount change width ΔMV1.

[0043] Further, when the control amount change width ΔPV2 is larger than the control amount change width ΔPV1, and when the manipulated variable change width ΔMV2 is larger than the manipulated variable change width ΔMV1, the contradiction determination unit 14 determines that there is no contradiction between the first data set and the second data set. Further, when the control amount change width ΔPV2 is smaller than the control amount change width ΔPV1, and when the manipulated variable change width ΔMV2 is smaller than the manipulated variable change width ΔMV1, the contradiction determination unit 14 determines that there is no contradiction between the first data set and the second data set. Further, when the control amount change width ΔPV1 is the same as the control amount change width ΔPV2, the contradiction determination unit 14 determines that there is no contradiction between the first data set and the second data set regardless of the magnitude relationship between the manipulated variable change width ΔMV1 and the manipulated variable change width ΔMV2.

[0044] For example, in the case of time-series data during temperature increase in the temperature control of a heating device, if the temperature increase range (corresponding to the control amount change width) is larger and the heater output increase range (corresponding to the manipulated variable change width) is smaller, it is a physically contradictory phenomenon, and there is room to suspect that an unexpected special influence has been applied to one of the data sets. In addition, when the change ranges of the control amount PV do not overlap, such as when the initial control amount PV_o (low-temperature side temperature) of the second data set is higher than the final control amount PV_s (high-temperature side temperature) of the first data set, it may be excluded from the object of contradiction determination in consideration of the properties of strong non-linearity.

[0045] Next, when the contradiction determination unit 14 determines that there is a contradiction between the two data sets, the contradiction element acquisition unit 15 acquires the contradiction elements (initial control amount PV_o, final control amount PV_s, initial manipulated variable MV_o, final manipulated variable MV_s) extracted by the contradiction element extraction unit 12 for any third data set different from the first data set and the second data set (step S105 in FIG. 3).

[0046] The contradiction evaluation unit 16 gives a specified evaluation point (score) to the one that has no contradiction with the third data set among the first data set and the second data set (step S106 in FIG. 3). Specifically, when the control amount change width ΔPV3, which is the difference between the initial control amount PV_o and the final control amount PV_s of the third data set, is larger than the control amount change width ΔPV1 of the first data set, if the operation amount change width ΔMV3, which is the difference between the initial operation amount MV_o and the final operation amount MV_s of the third data set, is smaller than the operation amount change width ΔMV1 of the first data set, the contradiction evaluation unit 16 determines that there is a contradiction between the first data set and the third data set. Also, when the control amount change width ΔPV3 is smaller than the control amount change width ΔPV1, if the operation amount change width ΔMV3 is larger than the operation amount change width ΔMV1, the contradiction evaluation unit 16 determines that there is a contradiction between the first data set and the third data set. When there is a contradiction, no evaluation point is given to the first data set.

[0047] Also, when the control amount change width ΔPV3 is larger than the control amount change width ΔPV1, if the operation amount change width ΔMV3 is larger than the operation amount change width ΔMV1, the contradiction evaluation unit 16 determines that there is no contradiction between the first data set and the third data set, and gives a specified evaluation point to the first data set. Also, when the control amount change width ΔPV3 is smaller than the control amount change width ΔPV1, if the operation amount change width ΔMV3 is smaller than the operation amount change width ΔMV1, the contradiction evaluation unit 16 determines that there is no contradiction between the first data set and the third data set, and gives a specified evaluation point to the first data set. Also, when the control amount change width ΔPV1 is the same as the control amount change width ΔPV3, regardless of the magnitude relationship between the operation amount change width ΔMV1 and the operation amount change width ΔMV3, the contradiction evaluation unit 16 determines that there is no contradiction between the first data set and the third data set, and gives a specified evaluation point to the first data set.

[0048] For example, in the case of time-series data during temperature increase in the temperature control of a heating device, if it is confirmed that, for a third data set, the temperature increase range of the first data set is larger than that of the third data set and the increase range of the heater output of the first data set is larger than that of the third data set, an evaluation point is given to the first data set.

[0049] The contradiction evaluation unit 16 similarly determines whether there is a contradiction between the second data set and the third data set. If there is no contradiction, an evaluation point is given to the second data set. Specifically, when the change width ΔMV3 of the manipulated variable of the third data set, which is the difference between the initial manipulated variable MV_o and the final manipulated variable MV_s of the third data set, is smaller than the change width ΔMV2 of the manipulated variable (the fourth reference value) of the second data set, and the change width ΔPV3 of the controlled variable of the third data set, which is the difference between the initial controlled variable PV_o and the final controlled variable PV_s of the third data set, is larger than the change width ΔPV2 of the controlled variable (the third reference value) of the second data set, the contradiction evaluation unit 16 determines that there is a contradiction between the second data set and the third data set. Also, when the change width ΔPV3 of the controlled variable is smaller than the change width ΔPV2 of the controlled variable and the change width ΔMV3 of the manipulated variable is larger than the change width ΔMV2 of the manipulated variable, the contradiction evaluation unit 16 determines that there is a contradiction between the second data set and the third data set. If there is a contradiction, no evaluation point is given to the second data set.

[0050] Further, when the control quantity change width ΔPV3 is larger than the control quantity change width ΔPV2 and the manipulated variable change width ΔMV3 is larger than the manipulated variable change width ΔMV2, the contradiction evaluation unit 16 determines that there is no contradiction between the second data set and the third data set, and assigns a prescribed evaluation point to the second data set. Also, when the control quantity change width ΔPV3 is smaller than the control quantity change width ΔPV2 and the manipulated variable change width ΔMV3 is smaller than the manipulated variable change width ΔMV2, the contradiction evaluation unit 16 determines that there is no contradiction between the second data set and the third data set, and assigns a prescribed evaluation point to the second data set. Further, when the control quantity change width ΔPV2 is the same as the control quantity change width ΔPV3, the contradiction evaluation unit 16 determines that there is no contradiction between the second data set and the third data set regardless of the magnitude relationship between the manipulated variable change width ΔMV2 and the manipulated variable change width ΔMV3, and assigns a prescribed evaluation point to the second data set.

[0051] The contradiction element acquisition unit 15 and the contradiction evaluation unit 16 perform the processes of steps S105 and S106 for each of the third data sets different from the first data set and the second data set. In this way, the contradiction element acquisition unit 13, the contradiction determination unit 14, the contradiction element acquisition unit 15, and the contradiction evaluation unit 16 perform the processes of steps S103 to S106 for all possible combinations of the first data set and the second data set among the data sets stored in the storage unit 11.

[0052] After the evaluation is completed for all possible combinations of the data sets, the priority evaluation execution unit 17 assigns priority points so that the higher the total evaluation points, the higher the priority in descending order for all the data sets stored in the storage unit 11 (step S108 in FIG. 3). At this time, when there are a plurality of data sets with the same total evaluation points, the priority evaluation execution unit 17 assigns priority points so that the smaller the manipulated variable change width ΔMV, the higher the priority for these data sets. If a large number of highly reliable data sets are stored in the storage unit 11, the possibility of the same total evaluation points is low.

[0053] Next, as an example, when forming a library capable of handling many cases including strong non-linear characteristics by collecting a large number of time-series data during temperature rise in the temperature control of the heating device as a data set, the following will supplement the explanation with specific numerical values.

[0054] First, as Numerical Example 1, a case where the first data set corresponds to the data set in Fig. 1(A) and the second data set corresponds to the data set in Fig. 4 will be described. In the first data set, the initial control quantity PV_o = 50.0 °C, the final control quantity PV_s = 250.0 °C, the control quantity change width ΔPV1 = 200.0 °C, the initial operation quantity MV_o = 10.0%, the final operation quantity MV_s = 20.0%, and the operation quantity change width ΔMV1 = 10.0%. In the second data set, the initial control quantity PV_o = 50.0 °C, the final control quantity PV_s = 400.0 °C, the control quantity change width ΔPV2 = 350.0 °C, the initial operation quantity MV_o = 10.0%, the final operation quantity MV_s = 25.0%, and the operation quantity change width ΔMV2 = 15.0%.

[0055] Since ΔPV1 < ΔPV2 and ΔMV1 < ΔMV2, the contradiction determination unit 14 determines that there is no contradiction between the first data set and the second data set. If the first data set and the second data set of the library are combined to generate time-series data of the reference set value SP and the operation quantity MV_f for forward feed control to raise the temperature from 50.0 °C to 320.0 °C (control quantity change width ΔPV = 270.0 °C), the first data set and the second data set are adopted fairly. As a specific synthesis method, first, for the time-series data of the control quantity PV and the operation quantity MV of the first data set, the change width between the data is made 1.35 times (270.0 / 200.0), and for the time-series data of the control quantity PV and the operation quantity MV of the second data set, the change width between the data is made 0.771 times (270.0 / 350.0), and then methods such as calculating the average value of each data of the two can be considered.

[0056] Next, as Numerical Example 2, a case will be described where the first data set is the data set corresponding to Fig. 1(A), the second data set is the data set corresponding to Fig. 1(B), and the third data set is the data set corresponding to Fig. 5. In the first data set, the initial control amount PV_o = 50.0 °C, the final control amount PV_s = 250.0 °C, the control amount change width ΔPV1 = 200.0 °C, the initial operation amount MV_o = 10.0%, the final operation amount MV_s = 20.0%, and the operation amount change width ΔMV1 = 10.0%. In the second data set, the initial control amount PV_o = 50.0 °C, the final control amount PV_s = 300.0 °C, the control amount change width ΔPV2 = 250.0 °C, the initial operation amount MV_o = 10.0%, the final operation amount MV_s = 18.0%, and the operation amount change width ΔMV2 = 8.0%.

[0057] Since ΔPV1 < ΔPV2 and ΔMV1 > ΔMV2, the contradiction determination unit 14 determines that there is a contradiction between the first data set and the second data set. In the third data set shown in Fig. 5, the initial control amount PV_o = 50.0 °C, the final control amount PV_s = 280.0 °C, the control amount change width ΔPV3 = 230.0 °C, the initial operation amount MV_o = 10.0%, the final operation amount MV_s = 23.0%, and the operation amount change width ΔMV3 = 13.0%.

[0058] Since ΔPV1 < ΔPV3 and ΔMV1 < ΔMV3, the contradiction evaluation unit 16 determines that there is no contradiction between the first data set and the third data set, and assigns 1 point to the first data set. Also, since ΔPV2 > ΔPV3 and ΔMV2 < ΔMV3, the contradiction evaluation unit 16 determines that there is a contradiction between the second data set and the third data set, and does not assign points to the second data set.

[0059] Suppose that when synthesizing the first dataset and the second dataset of the library to generate the time-series data of the reference setpoint SP and the manipulated variable MV_f for feedforward control to increase the temperature from 50.0 °C to 290.0 °C (control variable change width ΔPV = 240.0 °C), prioritize the first dataset or only adopt the first dataset (treating the second dataset as substantially deleted). As a specific synthesis method, for the time-series data of the control variable PV and the manipulated variable MV of the first dataset, a method such as simply determining by multiplying the change width between the data by 240.0 / 200.0 = 1.20 times can be considered.

[0060] Thus, it means that all contradictions between the datasets have been detected. The priority points given by the priority evaluation execution unit 17 to the datasets are stored in the storage unit 11 together with the datasets.

[0061] Next, when the specified timing arrives (YES in step S109 of FIG. 3), the control variable output unit 19 selects the specified dataset from the time-series dataset of the control variable PV stored in the storage unit 11. The control variable output unit 19 sequentially extracts the data of the control variable PV for each control cycle of the PID controller 2 from the selected dataset and sequentially transmits it to the PID controller 2. At this time, the control variable output unit 19 transmits the data of the control variable PV for each control cycle so that the time interval indicated by the timestamp value of the data it sequentially transmits matches the control cycle of the PID controller 2 (step S110 of FIG. 3). The specified timing and the specified dataset will be described later.

[0062] When the specified timing is reached, the operation amount change width output unit 20 selects a specified data set from the time series data set of the operation amount MV stored in the storage unit 11. The operation amount change width output unit 20 sequentially extracts data of the operation amount MV for each control cycle of the PID controller 2 from the selected data set, and sequentially transmits the operation amount change width ΔMV per control cycle calculated from the extracted data to the PID controller 2. At this time, the operation amount change width output unit 20 transmits the data of the operation amount change width ΔMV per control cycle 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 of the data it transmits (the time stamp value of the operation amount MV extracted from the data set) (step S111 in FIG. 3). Thereby, the interval of the time indicated by the time stamp value of the data sequentially transmitted by the operation amount change width output unit 20 coincides with the control cycle of the PID controller 2.

[0063] The operation amount change width ΔMV is the difference from the operation amount MV one control cycle before. 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, t + 4 can be calculated as ΔMV = 0, 1, 2, 1, -2.

[0064] When 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 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 together.

[0065] When the specified timing arrives, 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 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 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 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 (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. 3). As a result, the interval between 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.

[0066] 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 retrieved by the operation amount change width output unit 20 from the specified data set.

[0067] 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 cycle (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) retrieved by the operation amount change width output unit 20 from the specified data set. 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 (the time stamp value of the operation amount MV retrieved by the operation amount change width output unit 20 from the data set) added to the operation amount lower limit value OL_x transmitted by itself (step S113 in FIG. 3). Thereby, the interval of the time indicated by the time stamp value of the data sequentially transmitted by the operation amount lower limit value output unit 22 matches the control cycle of the PID controller 2.

[0068] As the simplest process, a descending margin centered on the operation amount MV is defined 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 descending margin value from the operation amount MV for each control cycle retrieved by the operation amount change width output unit 20 from the specified data set.

[0069] Note that it is not necessary to set the ascending margin value and the descending margin value to fixed values, and they may be changed according to the elapsed time from the time point when the set value SP is changed, as described later.

[0070] 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 S110 to S113 until they finish transmitting the specified data set stored in the storage unit 11 (YES in step S114 in FIG. 3).

[0071] Synchronization of data, i.e., the control quantity PV, the operation quantity change width ΔMV, the operation quantity upper limit value OH_x, and the operation quantity lower limit value OL_x for which it is necessary that the timestamp values are the same, are desirably received by the PID controller 2 at the same time, but there may be a time difference in arrival. If this time difference is a slight time with respect to the control period (e.g., 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.

[0072] Here, the above-specified timing and 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 when the operator instructs the set value SP change becomes the specified timing, and among the data sets (a set of time-series data of the control quantity PV and time-series data of the operation quantity MV) corresponding to the control conditions instructed by the operator, the one with the highest priority point (priority order) becomes the specified data set.

[0073] Also, for example, when 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 among the data sets corresponding to the control conditions determined by the schedule information, the one with the highest priority point (priority order) becomes the specified data set.

[0074] FIG. 6 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 quantity PV transmitted from the industrial PC 1 as a new value of the reference set value SP_r (step S200 in FIG. 6). As the simplest process, it becomes a form of receiving one piece of control quantity PV data for each control period of the PID controller 2.

[0075] The manipulated variable change width input section 31 receives the manipulated variable change width ΔMV transmitted from the industrial PC 1 as a new value of the manipulated variable change width ΔMV_f for feedforward control (step S201 in FIG. 6). As the simplest process, it is in the form of receiving one data value of the manipulated variable change width ΔMV for each control period of the PID controller 2.

[0076] The manipulated variable upper limit value input section 32 receives the manipulated variable upper limit value OH_x transmitted from the industrial PC 1 as a new value to be used by the limit processing section 37 (step S202 in FIG. 6). The manipulated variable lower limit value input section 33 receives the manipulated variable lower limit value OL_x transmitted from the industrial PC 1 as a new value to be used by the limit processing section 37 (step S203 in FIG. 6). The initial value of the manipulated variable upper limit value OH_x preset in the PID controller 2 is 100%, and the initial value of the manipulated variable lower limit value OL_x is 0%.

[0077] Note that a data buffer is provided in the PID controller 2. When the control quantity output section 19, the manipulated variable change width output section 20, the manipulated variable upper limit value output section 21, and the manipulated variable lower limit value output section 22 transmit together the data of a plurality of control quantities PV, the data of a plurality of manipulated variables MV, the data of a plurality of manipulated variable upper limit values OH_x, and the data of a plurality of manipulated variable lower limit values OL_x that can be stored in the data buffer, the set value input section 30, the manipulated variable change width input section 31, the manipulated variable upper limit value input section 32, and the manipulated variable lower limit value input section 33 may take out one by one the data of the control quantity PV, the manipulated variable change width ΔMV, the manipulated variable upper limit value OH_x, and the manipulated variable lower limit value OL_x stored in the data buffer for each control period of the PID controller 2.

[0078] The control quantity acquisition section 34 acquires the measured value of the control quantity PV (step S204 in FIG. 6). In the case of temperature control using the PID controller 2 (temperature controller), the value of the control quantity PV is acquired from the temperature sensor.

[0079] Next, as shown in Equation (1), the feed-forward adder 35 sets the value obtained by adding the change width ΔMV_f of the feed-forward 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, which will be described later) calculated by the feedback adder 36 one control cycle before as the operation amount MV_z (Step S205 in FIG. 6). MV_z = MV_x + ΔMV_f ···(1)

[0080] The feedback adder 36 takes the reference set value SP_r and the measured value of the control amount PV as inputs, and performs a velocity-type PID calculation like the transfer function formula shown in Equation (2) so that the measured value of the control amount 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. 6). ΔMV_b = Kp{ΔEr + (1 / Ti)Er + TdΔ 2 Er} ···(2)

[0081] In Equation (2), 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 amount 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 related by Kp = 100 / Pb.

[0082] As shown in Equation (3), the feedback adder 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 feed-forward adder 35 as the operation amount MV_x' (Step S207 in FIG. 6). MV_x' = MV_z + ΔMV_b ···(3)

[0083] 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 first performs the addition of the proportional operation (P operation) and the derivative operation (D operation) before the addition of the integral operation (I operation). When the addition result of the proportional operation and the derivative 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 perform the addition of the integral operation so as to obtain the effect of the anti-reset windup process (the process of preventing unnecessary accumulation of the integral operation).

[0084] That is, the proportional operation and derivative operation components ΔMV_b_pd of the change width ΔMV_b of the feedback control operation amount are as shown in Equation (4), and the integral operation (I operation) component ΔMV_b_i is as shown in Equation (5). ΔMV_b_pd=Kp(ΔEr+TdΔ 2 Er) ···(4) ΔMV_b_i=Kp(1 / Ti)Er ···(5)

[0085] Therefore, the addition result MV_z' of the operation amount MV_z and ΔMV_b_pd is as shown in Equation (6). MV_z’=MV_z+ΔMV_pd ···(6)

[0086] When the addition result MV_z' is greater than or equal to the operation amount lower limit value OL_x and less than or equal to 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 width ΔMV_b of the feedback control operation amount to the addition result MV_z' as shown in Equation (7) to obtain the operation amount MV_x'. MV_x’=MV_z’+ΔMV_b_i ···(7)

[0087] 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’ ···(8)

[0088] Since the change width ΔMV_f of the feedforward control operation amount peculiar to the present invention has also been added by the process of Equation (1), the process described by Equations (4) to (8) can obtain the effect of minimizing the amount of calculation necessary for matching with the subsequent limit process. However, the addition conditions for the integration operation may be added as appropriate.

[0089] 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. 6). 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, and 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), the limit processing of setting the operation amount MV = MV_x' is performed.

[0090] Normally, limit processing of 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%.

[0091] 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. 6). 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.

[0092] The PID controller 2 executes the processes of steps S200 to S209 for each control period until the control is terminated by a command from an operator (YES in step S210 in FIG. 6).

[0093] However, when a certain continuous time has elapsed since the measured value of the controlled variable PV was tuned (YES in step S211 of FIG. 6), the set value input unit 30, the manipulated variable change width input unit 31, the manipulated variable upper limit value input unit 32, and the manipulated variable lower limit value input unit 33 stop updating the reference set value SP_r, the change width ΔMV_f of the feedforward control manipulated variable, the manipulated variable upper limit value OH_x, and the manipulated variable lower limit value OL_x (step S212 of FIG. 6).

[0094] As a result, the reference set value SP_r, the change width ΔMV_f of the feedforward control manipulated variable, the manipulated variable upper limit value OH_x, and the manipulated variable lower limit value OL_x are fixed to the values received one control cycle before. However, the manipulated variable upper limit value input unit 32 may return the manipulated variable upper limit value OH_x to the initial value (100%), and the manipulated variable lower limit value input unit 33 may return the manipulated variable lower limit value OL_x to the initial value (0%).

[0095] The above continuous time needs to be set so that the updates of the reference set value SP_r, the change width ΔMV_f of the feedforward control manipulated variable, the manipulated variable upper limit value OH_x, and the manipulated variable lower limit value OL_x stop before the data transmission from the industrial PC 1 ends.

[0096] 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.

[0097] In this embodiment, the limit processing unit 37 is not an essential component. When the limit processing unit 37 is not provided, the manipulated variable output unit 38 outputs the manipulated variable MV_x' calculated by the feedback addition unit 36 to the controlled object. When the limit processing unit 37 is not provided, the transmission of the manipulated variable upper limit value OH_x and the manipulated variable lower limit value OL_x from the industrial PC 1 becomes unnecessary, and the anti-reset windup processing described by equations (4) to (8) is not executed.

[0098] [Second Embodiment] Next, a second embodiment of the present invention will be described. Execution of simulation by a control target model and storage of a large number of time series data sets assuming various conditions should be carried out on an industrial PC or the like that is higher than a PID controller (a local controller with limited arithmetic functions and the like for the purpose of stable continuation), such as a thermostat. Therefore, distributed arrangement of each functional block is essential.

[0099] Then, the inventor noticed that in a thermostat, there is a limit to real-time communication for each control cycle. In particular, when data loss due to communication failure occurs in the setpoint SP, an operation amount MV malfunction occurs due to the differential operation (strictly speaking, a difference operation because it is a discrete system) that refers to the setpoint SP. Therefore, the inventor conceived that it is preferable to configure such that the time series data of the controlled variable PV is transmitted in advance to the PID controller side as a reference setpoint SP_r, and the time series data of the operation amount MV is transmitted in advance as an operation amount 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. Thus, it is possible to improve the instrumentation to be easily maintained in a stable continuation while coping with strong non-linear characteristics.

[0100] FIG. 7 is a block diagram showing the configuration of a control system according to the 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. 7, the description of the contradiction element extraction unit 12, the contradiction element acquisition unit 13, the contradiction determination unit 14, the contradiction element acquisition unit 15, the contradiction evaluation unit 16, and the priority evaluation execution unit 17 is omitted.

[0101] The industrial PC 1a includes an ideal response generation unit 10, a storage unit 11, a contradiction element extraction unit 12, a contradiction element acquisition unit 13, a contradiction determination unit 14, a contradiction element acquisition unit 15, a contradiction evaluation unit 16, a priority evaluation execution unit 17, a control amount output unit 19a that transmits time-series data of the control amount PV to the PID controller 2a, an operation amount output unit 24 that transmits time-series data of the operation amount MV to the PID controller 2a, an operation amount upper limit value output unit 21a that transmits time-series data of the operation amount upper limit value OH_x assumed for each control cycle of the error range of the operation amount MV stored in the storage unit 11 to the PID controller 2a, and an operation amount lower limit value output unit 22a that transmits time-series data of the operation amount lower limit value OL_x assumed for each control cycle of the error range of the operation amount MV stored in the storage unit 11 to the PID controller 2a. 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 constitute a transmission unit 25.

[0102] The PID controller 2a includes a setpoint receiving unit 50 that receives the time-series data of the control variable PV transmitted from the industrial PC 1a, an operation amount receiving unit 51 that receives the 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 the 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 the time-series data of the operation amount lower limit value OL_x transmitted from the industrial PC 1a, a setpoint storage unit 54 that stores the time-series data of the control variable 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 setpoint reading unit 58 that sequentially reads, for each control cycle, the data of the control variable PV from the time-series data stored in the setpoint storage unit 54 as a new value of the reference setpoint SP_r when the start signal input unit 62 described later receives a start signal and the control operation is started, an operation amount reading unit 59 that 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 when the control operation is started, an operation amount upper limit value reading unit 60 that 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 the limit processing unit 66 described later when the control operation is started, and an operation amount lower limit value reading unit 61 that 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 when the control operation is started.

[0103] Also, the PID controller 2a includes a start signal input unit 62 that receives a start signal instructing the start of a control operation from the outside, a control amount acquisition unit 63 that acquires a measured value of the control amount PV, a feedback calculation unit 64 that performs PID calculation with the reference set value SP_r and the measured value of the control amount PV as inputs to calculate a feedback control operation amount MV_b (first operation amount), a feedforward addition unit 65 that adds the feedforward control operation amount MV_f to the feedback control operation amount MV_b to calculate an operation amount MV_x' (second operation amount), a limit processing unit 66 that outputs an operation amount MV (third operation amount) obtained by limiting the operation amount MV_x' calculated by the feedforward addition unit 65 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 67 that outputs the operation amount MV obtained by the limit processing unit 66 to the control target, and an operation amount update unit 68 that updates the time series data of the operation amount MV stored in the operation amount storage unit 55 based on the time series data of the operation amount MV output from the operation amount output unit 67 when the learning mode is set to on.

[0104] The set value reception unit 50, the operation amount reception unit 51, the operation amount upper limit value reception unit 52, and the operation amount lower limit value reception unit 53 constitute a reception unit 69, 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 constitute a storage unit 70, and 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 constitute a reading unit 71.

[0105] 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 communication between the industrial PC 1a and the PID controller 2a.

[0106] FIG. 8 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 contradiction element extraction unit 12, the contradiction element acquisition unit 13, the contradiction determination unit 14, the contradiction element acquisition unit 15, the contradiction evaluation unit 16, and the priority evaluation execution unit 17 (steps S100 to S108 in FIG. 8) are as described in the first embodiment.

[0107] 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. 3). At this time, the control amount output unit 19a performs, for each control condition, a process of transmitting the data set with the highest priority point (priority order) among the data sets generated by the ideal response generation unit 10 for each control condition.

[0108] 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. 3). Similar to the control amount output unit 19a, the manipulated variable output unit 24 performs, for each control condition, a process of transmitting the data set with the highest priority point (priority order) among the data sets generated by the ideal response generation unit 10 for each control condition.

[0109] 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 for 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. 3).

[0110] As the simplest process, an upward margin centered on the operation amount MV is defined in advance. The operation amount upper limit value output unit 21a may calculate, 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 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 upper limit value output unit 21a generates a time series data set of the operation amount upper limit value OH_x for each control condition and transmits it to the PID controller 2a.

[0111] 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. 3).

[0112] 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.

[0113] 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, a temperature increase operation of temperature control) using these data are started.

[0114] Figures 9 and 10 are flowcharts for explaining the operation of the PID controller 2a. The setpoint receiving unit 50 of the PID controller 2a receives the time series data set of the control variable PV transmitted from the industrial PC 1a (step S300 in FIG. 9). The manipulated variable receiving unit 51 receives the time series data set of the manipulated variable MV transmitted from the industrial PC 1a (step S301 in FIG. 9).

[0115] The manipulated variable upper limit receiving unit 52 receives the time series data set of the manipulated variable upper limit OH_x transmitted from the industrial PC 1a (step S302 in FIG. 9). The manipulated variable lower limit receiving unit 53 receives the time series data set of the manipulated variable lower limit OL_x transmitted from the industrial PC 1a (step S303 in FIG. 9).

[0116] The setpoint storage unit 54 stores the time series data set of the control variable PV received by the setpoint receiving unit 50 (step S304 in FIG. 9). The manipulated variable storage unit 55 stores the time series data set of the manipulated variable MV received by the manipulated variable receiving unit 51 (step S305 in FIG. 9).

[0117] The manipulated variable upper limit storage unit 56 stores the time series data set of the manipulated variable upper limit OH_x received by the manipulated variable upper limit receiving unit 52 (step S306 in FIG. 9). The manipulated variable lower limit storage unit 57 stores the time series data set of the manipulated variable lower limit OL_x received by the manipulated variable lower limit receiving unit 53 (step S307 in FIG. 9).

[0118] Next, the start signal input unit 62 receives a start signal instructing the start of the control operation (YES in step S308 in FIG. 9). Information specifying the control condition (control condition ID) is added to this start signal.

[0119] For example, when an operator of the industrial PC 1a manually changes the setpoint 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 setpoint SP change. Also, a 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.

[0120] 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 the setpoint SP change defined in the schedule information. Also, 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.

[0121] When the start signal input unit 62 receives the start signal and the control operation of the PID controller 2a starts, the setpoint reading unit 58 sequentially reads, for each control cycle, the data of the control quantity PV in the time series data set of the control quantity PV stored in the setpoint storage unit 54, which corresponds to the control condition (control condition ID) indicated by the start signal, as a new value of the reference setpoint SP_r (step S309 in FIG. 9).

[0122] 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. 9).

[0123] The operation amount upper limit value reading unit 60 sequentially reads out, for each control cycle in the time series data set of the operation amount upper limit value OH_x stored in the operation amount upper limit value storage unit 56, the operation amount upper limit value OH_x corresponding 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. 9).

[0124] The operation amount lower limit value reading unit 61 sequentially reads out, for each control cycle in the time series data set of the operation amount lower limit value OL_x stored in the operation amount lower limit value storage unit 57, the operation amount lower limit value OL_x corresponding 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. 9).

[0125] As described above, since time stamps are added to each data of the control amount PV stored in the set value storage unit 54, the operation amount MV stored in the operation amount storage unit 55, the operation amount upper limit value OH_x stored in the operation amount upper limit value storage unit 56, and the operation amount lower limit value OL_x stored in the operation amount 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 time point when the start signal is received (the start time point of the control operation).

[0126] For data synchronization, that is, it is desirable that the control amount PV (reference set value SP_r), the operation amount MV (feedforward control operation amount MV_f), the operation amount upper limit value OH_x, and the operation amount lower limit value OL_x, for which it is required that the time stamp values be the same, be read out simultaneously, but a time difference in reading is acceptable. If this time difference is a slight time with respect to the control cycle of the PID controller 2a (for example, 1 second), there is no practical problem.

[0127] When the start signal input unit 62 receives the start signal and the control operation of the PID controller 2a starts, the control amount acquisition unit 63 acquires the measured value of the control amount PV (step S313 in FIG. 9).

[0128] Next, the feedback calculation unit 64 uses the reference set value SP_r read by the set value reading unit 58 and the measured value of the control quantity PV acquired by the control quantity acquisition unit 63 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 64 performs velocity-type PID calculation such as the transfer function formula shown in Equation (2), it calculates the operation quantity change width ΔMV_b (step S314 in FIG. 9).

[0129] Then, as shown in Equation (9), the feedback calculation unit 64 uses 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 cycle before, which will be described later) calculated by the feedforward addition unit 65 one control cycle before as the feedback control operation quantity MV_b (step S315 in FIG. 9). MV_b = MV_x + ΔMV_b ···(9)

[0130] 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 64.

[0131] The feedforward addition unit 65 adds the feedforward control operation quantity MV_f read by the operation quantity reading unit 59 to the feedback control operation quantity MV_b to calculate the operation quantity MV_x'. When the feedback calculation unit 64 performs velocity-type PID calculation, the feedforward addition unit 65 calculates the difference between the feedforward control operation quantity MV_f of the current control cycle read by the operation quantity reading unit 59 and the feedforward control operation quantity MV_f of one control cycle before as the change width ΔMV_f. Then, as shown in Equation (10), the feedforward addition unit 65 adds the change width ΔMV_f to the feedback control operation quantity MV_b to calculate a new value of the operation quantity MV_x'. MV_x' = MV_b + ΔMV_f ···(10)

[0132] Similar to the limit processing unit 37, the limit processing unit 66 outputs an operation amount MV obtained by limiting the operation amount MV' calculated by the feed-forward addition unit 65 to a value that is equal to or greater than the lower limit value OL_x of the operation amount in the current control cycle and equal to or less than the upper limit value OH_x of the operation amount (step S317 in FIG. 10).

[0133] The operation amount output unit 67 outputs the operation amount MV that has been subjected to the limit processing by the limit processing unit 66 to the control target (step S318 in FIG. 10).

[0134] When the learning mode is set to on (YES in step S319 in FIG. 10), the operation amount update unit 68 temporarily stores the operation amount MV output from the operation amount output unit 67 (step S320 in FIG. 10). 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 in FIG. 10).

[0135] 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.

[0136] 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 in FIG. 10).

[0137] However, when a certain continuous time has elapsed since the measured value of the control variable PV has been tuned (YES in step S323 of FIG. 10), the set value reading unit 58, the manipulated variable reading unit 59, the manipulated variable upper limit value reading unit 60, and the manipulated variable lower limit value reading unit 61 stop updating the reference set value SP_r, the feedforward control manipulated variable MV_f, the manipulated variable upper limit value OH_x, and the manipulated variable lower limit value OL_x (step S324 of FIG. 10).

[0138] As a result, the reference set value SP_r, the feedforward control manipulated variable MV_f, the manipulated variable upper limit value OH_x, and the manipulated variable lower limit value OL_x are fixed to the values received in the previous control cycle respectively. However, the manipulated variable upper limit value reading unit 60 may return the manipulated variable upper limit value OH_x to the initial value (100%), and the manipulated variable lower limit value reading unit 61 may return the manipulated variable lower limit value OL_x to the initial value (0%).

[0139] The above continuous time needs to be set so that the updates of the reference set value SP_r, the feedforward control manipulated variable MV_f, the manipulated variable upper limit value OH_x, and the manipulated variable lower limit value OL_x stop before the data stored in the set value storage unit 54, the manipulated variable storage unit 55, the manipulated variable upper limit value storage unit 56, and the manipulated variable lower limit value storage unit 57 end. Thereafter, until the start signal is received again at the timing of the next set value SP change, the processes of steps S313 to S321 are executed for each control cycle.

[0140] In this embodiment, when the manipulated variable MV is output from the manipulated variable output unit 67, the data of the manipulated variable MV stored in the manipulated variable storage unit 55 is updated one by one. However, after the updates of the reference set value SP_r, the feedforward control manipulated variable MV_f, the manipulated variable upper limit value OH_x, and the manipulated variable lower limit value OL_x stop, or after a series of control operations are completed, the time series data set of the manipulated variable MV may be updated in a batch according to the data of the manipulated variable MV stored by itself.

[0141] In the case of batch update, the operation amount update unit 68 updates the time series data set such 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 time point of receiving the start signal and being an integer multiple of the control cycle) when the time stamp value of this data matches. 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.

[0142] 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 operation amount output unit 67 outputs the operation amount 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 operation amount upper limit value OH_x and the operation amount lower limit value OL_x from the industrial PC1a, and it is also not necessary to store and read the operation amount upper limit value OH_x and the operation amount lower limit value OL_x in the PID controller 2a.

[0143] Incidentally, 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 appropriately interpolates the time-series data of the control amount PV stored in the set value storage unit 54, and sequentially outputs the data of the control amount 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 appropriately interpolates the time-series data of the manipulated variable MV stored in the manipulated variable storage unit 55, and sequentially outputs the data of the manipulated variable MV for each control period as a new value of the feedforward control manipulated variable MV_f for each control period. The manipulated variable upper limit value reading unit 60 appropriately interpolates 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 outputs the manipulated variable upper limit value OH_x for each control period as a new value used by the limit processing unit 66 for each control period. The manipulated variable lower limit value reading unit 61 appropriately interpolates 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 outputs the manipulated variable lower limit value OL_x for each control period as a new value used by the limit processing unit 66 for each control period.

[0144] [Third Embodiment] Next, a third embodiment of the present invention will be described. When obtaining time-series data of the control amount PV and the manipulated variable MV close to an ideal control response through simulation or the like, PID control is not always used. For example, it may simply be a combination of step inputs of the manipulated variable MV. In this case, the compatibility with the combination with the PID control, which is a control theory method, deteriorates, and there is a possibility that the PID control for compensating for the excess and deficiency of the feedforward control may cause unnecessary up and down movements of the manipulated variable MV. Then, the inventor 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 easily perform fine adjustment based on control theory while coping with strong non-linear characteristics.

[0145] The operation amount MV_f of the feedforward control is approximately replaced with a feedforward control waveform (a transfer function with continuous second derivative) that is well compatible with the combination with the PID control. Thus, by visualizing and quantifying the operation amount MV_b of the feedback control (the difference between the operation amount MV as the control result and the operation amount MV_f), which corresponds to the amount by which the PID control corrects the operation amount MV_f, an index for fine tuning can be obtained. The relationship between the index and the fine tuning know-how can be expected to be obtained empirically by accumulating simulations and actual controls.

[0146] FIG. 11 is a block diagram showing the configuration of a control system according to a 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. 11, the description of the contradiction element extraction unit 12, the contradiction element acquisition unit 13, the contradiction determination unit 14, the contradiction element acquisition unit 15, the contradiction evaluation unit 16, and the priority evaluation execution unit 17 is omitted.

[0147] The industrial PC 1b includes an ideal response generation unit 10, a memory unit 11, a contradiction element extraction unit 12, a contradiction element acquisition unit 13, a contradiction determination unit 14, a contradiction element acquisition unit 15, a contradiction evaluation unit 16, a priority evaluation execution 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 manipulated variable by a function in which the second derivative is continuous, an manipulated variable 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 manipulated variable upper limit value output unit 21b that transmits to the PID controller 2b the parameter values for defining the manipulated variable upper limit value OH_x assuming the error range of the approximation value of the manipulated variable MV for each control cycle calculated from the parameter values of the approximation formula when a specified timing is reached, and an manipulated variable lower limit value output unit 22b that transmits to the PID controller 2b the parameter values for defining the manipulated variable lower limit value OL_x assuming the error range of the approximation value of the manipulated variable MV for each control cycle calculated from the parameter values of the approximation formula when a specified timing is reached.

[0148] The control quantity output unit 19b, the manipulated variable function output unit 27, the manipulated variable upper limit value output unit 21b, and the manipulated variable lower limit value output unit 22b constitute a transmission unit 28.

[0149] 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 operating quantity 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 operating quantity MV_f, an operating quantity upper limit value input unit 82 that receives the parameter value of the operating quantity upper limit value OH_x transmitted from the industrial PC 1b, an operating quantity lower limit value input unit 83 that receives the parameter value of the operating quantity 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 operating quantity MV_b (the first operating quantity), a feedforward addition unit 86 that calculates the feedforward control operating quantity MV_f based on the received parameter value of the approximate expression, adds this feedforward control operating quantity MV_f to the feedback control operating quantity MV_b to calculate the operating quantity MV_x' (the second operating quantity), a limit processing unit 87 that outputs the operating quantity MV (the third operating quantity) obtained by limiting the operating quantity MV_x' calculated by the feedforward addition unit 86 to a value within the range of the operating quantity upper limit value OH_x and the operating quantity lower limit value OL_x, an operating quantity output unit 88 that outputs the operating quantity MV obtained by the limit processing unit 87 to the controlled object, and an operating quantity correction amount output unit 89 that transmits the data of the feedback control operating quantity MV_b.

[0150] The setpoint input unit 80, the operating quantity function input unit 81, the operating quantity upper limit value input unit 82, and the operating quantity 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.

[0151] FIG. 12 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 conflict element extraction unit 12, the conflict element acquisition unit 13, the conflict determination unit 14, the conflict element acquisition unit 15, the conflict evaluation unit 16, and the priority evaluation execution unit 17 (steps S100 to S124 in FIG. 12) are as described in the first embodiment.

[0152] Next, the functional equation 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. 12). As the approximation equations, equations (11) to (13) disclosed in Japanese Patent Application Laid-Open No. 2021-124864 are preferable. MV_X1 =[Kx1 / {(1+ATfs)(1+(2.0-A)Tfs)}]FF_X ···(11) MV_X2 =[Kx2s / {(1+ATfs)(1+(2.0-A)Tfs)}]FF_X ···(12) MV_f = MV_X1 + MV_X2 ···(13)

[0153] In the transfer function expressions (11) and (12), 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) 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.

[0154] Kx1 is a parameter that defines the feedforward amount MV_X1 with respect to the stepwise change in the manipulated variable MV of the approximation target. According to Equation (11), the feedforward amount MV_X1 gradually converges from a 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 in the manipulated variable MV of the approximation target. According to Equation (12), after the total amount (the integrated value of each control period) of the feedforward amount MV_X2 approaches the value of the parameter Kx2, the feedforward amount MV_X2 itself gradually converges to a zero value. MV_f in Equation (13) 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.

[0155] An example of the changes in the feedforward amounts MV_X1 and MV_X2 is shown in FIG. 13. In the approximation result shown in FIG. 13, the parameter Kx1 is 20.0, the parameter Kx2 is 2000.0, and the time constant Tf is = 15.0 seconds. The functional expression approximation substitution unit 26 performs the above approximation for each data set of the manipulated variable MV.

[0156] Next, when the specified timing arrives (YES in step S120 of FIG. 12), 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 period 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 period so that the interval of the time indicated by the timestamp value of the data it sequentially transmits matches the control period of the PID controller 2b (step S121 in FIG. 12). The specified timing and the specified data set are the same as those in the first embodiment.

[0157] 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. 12).

[0158] The parameter values to be transmitted are Tf, Kx1, Kx2, and A. Further, from the start point of the control operation, there is also the time Tx until the trigger variable FF_X changes from 0 to 1. However, when the coefficient A is a fixed value and is registered in advance in the PID controller 2b, the coefficient A does not need 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 registered in advance in the PID controller 2b, the time Tx does not need to be transmitted.

[0159] When the specified timing is reached, the manipulated variable upper limit value output unit 21b transmits, to the PID controller 2b, the parameter values for defining the manipulated variable upper limit value OH_x assuming the error range of the approximate value of the manipulated variable MV for each control period calculated from the parameter values transmitted by the manipulated variable function output unit 27 (step S123 in FIG. 12). At this time, the manipulated variable upper limit value output unit 21b transmits the parameter values for defining the manipulated variable upper limit value OH_x to the PID controller 2b for each control period 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 period of the PID controller 2b. As the simplest process, the upward margin ΔOHx centered on the approximate value of the manipulated variable MV for each control period may be used as the parameter for defining the manipulated variable upper limit value OH_x.

[0160] 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. 12). 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 such 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 downward margin ΔOLx centered on the approximation value of the operation amount MV for each control period may be used as the parameter for defining the operation amount lower limit value OL_x.

[0161] Note that it is not necessary to set the upward margin ΔOHx and the downward margin ΔOLx to fixed values, and they may be changed according to the elapsed time from the time point when the set value SP is changed, as will be described later.

[0162] 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 in FIG. 12). 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 way 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. 12, 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.

[0163] The synchronization of data, that is, 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, for which it is necessary that the timestamp values be the same, are desirably received by the PID controller 2b simultaneously, but it does not matter if there is a time difference in arrival. If this time difference is a slight time with respect to the control cycle (for example, 1 second) of the PID controller 2b, there is no problem in practice. With the above, the operation on the industrial PC 1b side ends, and the industrial PC 1b waits until the next specified timing.

[0164] Figure 14 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 quantity PV transmitted from the industrial PC 1b as a new value of the reference set value SP_r (step S400 in Figure 14). As the simplest process, it becomes a form of receiving data of one control quantity PV every control cycle of the PID controller 2b.

[0165] The operation quantity 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 quantity MV_f (step S401 in Figure 14).

[0166] The operation quantity upper limit value input unit 82 receives the parameter value of the operation quantity 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 Figure 14). The operation quantity lower limit value input unit 83 receives the parameter value of the operation quantity 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 Figure 14). The control quantity acquisition unit 84 acquires the measured value of the control quantity PV (step S404 in Figure 14).

[0167] 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 so that the measured value of the control quantity PV matches the reference set value SP_r, and calculates the feedback control operation quantity MV_b. Specifically, when the feedback calculation unit 85 performs velocity-type PID calculation such as the transfer function formula shown in Equation (2), it calculates the operation quantity change width ΔMV_b (step S405 in FIG. 14).

[0168] Then, as shown in Equation (9), the feedback calculation unit 85 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 cycle before, which will 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. 14).

[0169] Note that general additional functions such as anti-reset windup processing (processing for preventing unnecessary accumulation of integral operation) may be provided in the feedback calculation unit 85.

[0170] The feedforward addition unit 86 calculates the feedforward control operation quantity MV_f according to Equations (11) to (13) 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. 14). 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).

[0171] The parameter values received by the operation amount function input unit 81 are Tf, Kx1, Kx2, A, and Tx. The time Tx indicates the time from the reception start point (the 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 (the start point of the control operation) reaches Tx.

[0172] As described above, when the coefficient A is a fixed value and is pre-registered in the PID controller 2b, the feedforward addition unit 86 may use the value of the registered coefficient A. Similarly, when the time Tx is a fixed value and is pre-registered in the PID controller 2b, the feedforward addition unit 86 may use the value of the registered time Tx.

[0173] 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 (10), 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'.

[0174] 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 (14) (step S408 in FIG. 14). OH_x = MV_f + ΔOHx ···(14)

[0175] 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 (15) 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. 14). OL_x = MV_f - ΔOLx ···(15)

[0176] 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.

[0177] Similar to the limit processing unit 37, the limit processing unit 87 outputs an operation amount MV obtained by limiting the operation amount MV_x' 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. 14).

[0178] The operation amount output unit 88 outputs the operation amount MV that has been limit-processed by the limit processing unit 87 to the control target (step S411 in FIG. 14).

[0179] 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. 14). 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 it becomes possible to display this time-series data.

[0180] 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, for example (YES in step S413 in FIG. 14).

[0181] 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. 14), 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. 14). Also, the feedforward addition unit 86 stops updating the feedforward control operation amount MV_f (step S415).

[0182] 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.

[0183] 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.

[0184] 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.

[0185] 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 value OH_x and the operation amount lower limit value OL_x from the industrial PC1b.

[0186] 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. 15.

[0187] 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 conditioner, etc. 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 processing described in the first to third embodiments according to the program stored in the storage device 201.

Industrial Applicability

[0188] The present invention can be applied to a control system.

Explanation of Reference Numerals

[0189] 1, 1a, 1b... industrial PCs, 2, 2a, 2b... PID controllers, 10... ideal response generation unit, 11, 18... memory units, 12... contradiction element extraction unit, 13... contradiction element acquisition unit, 14... contradiction determination unit, 15... contradiction element acquisition unit, 16... contradiction evaluation unit, 17... priority evaluation execution 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 plurality of sets of time-series data of a control amount and time-series data of an operation amount; For each of the data sets stored in the first storage unit, an initial control amount in the time-series data of the control amount, a final control amount as a target to be reached, an initial operation amount in the time-series data of the operation amount, and a contradiction element extraction unit configured to extract, as contradiction elements, a final operation amount when tuned with the final control amount; A first contradiction element acquisition unit configured to acquire the contradiction elements extracted by the contradiction element extraction unit for each of the first data set and the second data set stored in the first storage unit; A contradiction determination unit configured to determine whether there is a contradiction between the first data set and the second data set based on the contradiction elements acquired by the first contradiction element acquisition unit; When the contradiction determination unit determines that there is a contradiction between the first data set and the second data set, a second contradiction element acquisition unit configured to acquire the contradiction elements extracted by the contradiction element extraction unit for a third data set different from the first data set and the second data set; Based on the contradiction elements acquired by the first and second contradiction element acquisition units, it is determined whether there is a contradiction between the first data set and the third data set, and it is determined whether there is a contradiction between the second data set and the third data set. A contradiction evaluation unit configured to give a specified evaluation point to the one of the first data set and the second data set that has no contradiction with the third data set; After the processing of the first contradiction element acquisition unit, the contradiction determination unit, the second contradiction element acquisition unit, and the contradiction evaluation unit is completed for all possible combinations of the data sets stored in the first storage unit, a priority evaluation execution unit configured to give priority points so that the higher the total evaluation points, the higher the priority for all the data sets stored in the first storage unit; A control system comprising: a transmission unit configured to transmit the data set with the highest priority among the data sets stored in the first storage unit to a PID controller, or to transmit data generated from the data set with the highest priority to the PID controller.

2. In the control system according to claim 1, when there are a plurality of data sets having the same total evaluation points, the priority evaluation execution unit gives the priority points so that the priority order becomes higher in the order of smaller change widths of the operation amounts for these data sets. A control system characterized by that.

3. In the control system according to claim 1 or 2, when the difference between the initial control amount and the final control amount of the second data set is greater than or less than the first reference value when the difference between the initial control amount and the final control amount of the first data set is used as the first reference value, and the difference between the initial operation amount and the final operation amount of the first data set is used as the second reference value, when the difference between the initial operation amount and the final operation amount of the second data set is greater than or less than the second reference value is in an inverse relationship, it is determined that there is a contradiction between the first data set and the second data set, when the difference between the initial control amount and the final control amount of the third data set is greater than or less than the first reference value and the difference between the initial operation amount and the final operation amount of the third data set is greater than or less than the second reference value is in an inverse relationship, it is determined that there is a contradiction between the first data set and the third data set, and when the difference between the initial control amount and the final control amount of the second data set is used as the third reference value, the difference between the initial control amount and the final control amount of the third data set is greater than or less than the third reference value, and when the difference between the initial operation amount and the final operation amount of the second data set is used as the fourth reference value, when the difference between the initial operation amount and the final operation amount of the third data set is greater than or less than the fourth reference value is in an inverse relationship, it is determined that there is a contradiction between the second data set and the third data set. A control system characterized by that.

4. In the control system according to claim 1, further comprising 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. A control system characterized by that.

5. In the control system according to claim 1, When the specified 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, the transmission unit sequentially extracts data of the operation amount for each control cycle from the time-series data stored in the first storage unit, and sequentially transmits data of the operation amount change width calculated from the extracted data 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 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 reception unit to the first operation amount one control cycle before; a feedback addition unit configured to perform a velocity-type PID operation with the reference set value and the measured value of the control amount as inputs to calculate a change width of the feedback control operation amount, and 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 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 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 instructing the start of a control operation from the outside. When the start signal input unit receives the start signal and the control operation is started, data of the control amount for each control cycle is sequentially read from the time-series data stored in the second storage unit as a new value of the reference set value for each control cycle, and at the same time, data of the operation amount for each control cycle is sequentially read from the time-series data stored in the second storage unit as a new value of the feed-forward control operation amount for each control cycle. A reading unit configured as follows: 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 feed-forward addition unit configured to add the feed-forward control operation amount to the first operation amount to calculate a second operation amount; A control system comprising an operation amount output unit configured to output the second operation amount calculated by the feed-forward addition unit to a control target.

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 the specified timing arrives, 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, and transmits the parameter value of the approximation formula obtained by the functional expression approximation substitution unit to the PID controller. The PID controller 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 parameter value of the approximation formula transmitted from the transmitting unit as the parameter value of the approximation formula of the feed-forward 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 using the reference set value and the measured value of the control amount as inputs to calculate a first operation amount; A feed-forward addition unit configured to calculate a feed-forward control operation amount based on the parameter value received by the receiving unit, and add this feed-forward control operation amount to the first operation amount to calculate a second operation amount. A control system comprising an operation amount output unit configured to output the second operation amount calculated by the feed-forward addition unit to a control target. **Claim 8** Referring to a storage unit that stores a plurality of sets of data sets of time-series data of a control amount and time-series data of an operation amount, for each of the data sets, an initial control amount in the time-series data of the control amount, a final control amount as a target to be reached, an initial operation amount in the time-series data of the operation amount, and a first step of extracting, as conflicting elements, the final operation amount when tuned with the final control amount; A second step of obtaining the conflicting elements extracted in the first step for each of the first data set and the second data set stored in the storage unit; A third step of determining whether there is a conflict between the first data set and the second data set based on the conflicting elements obtained in the second step; When it is determined that there is a conflict between the first data set and the second data set, a fourth step of obtaining the conflicting elements extracted in the first step for a third data set different from the first data set and the second data set; Based on the conflicting elements obtained in the second and fourth steps, it is determined whether there is a conflict between the first data set and the third data set, and it is determined whether there is a conflict between the second data set and the third data set, and a fifth step of giving a specified evaluation point to the one of the first data set and the second data set that has no conflict with the third data set; After the processing of the second step, the third step, the fourth step, and the fifth step is completed for all possible combinations of the data sets stored in the storage unit, a sixth step of giving a priority point so that the higher the total evaluation point, the higher the priority for all the data sets stored in the storage unit; A seventh step of transmitting the data set with the highest priority among the data sets stored in the storage unit to a PID controller, or transmitting data generated from the data set with the highest priority to the PID controller. A control method characterized by including. **Claim 9** In the control method according to claim 8, The sixth step includes giving priority points to the data sets such that when there are multiple data sets with the same total evaluation points, the priority is higher in the order of smaller change widths of the operation amounts for these data sets. A control method characterized by this.

10. In the control method according to Claim 8 or 9, when the third step, when the difference between the initial control amount and the final control amount of the first data set is taken as the first reference value, the difference between the initial control amount and the final control amount of the second data set is greater than or less than the first reference value, and when the difference between the initial operation amount and the final operation amount of the first data set is taken as the second reference value, the difference between the initial operation amount and the final operation amount of the second data set is greater than or less than the second reference value, and when they are in an inverse relationship, it includes a step of determining that there is a contradiction between the first data set and the second data set. when the fifth step, when the difference between the initial control amount and the final control amount of the third data set is greater than or less than the first reference value, and the difference between the initial operation amount and the final operation amount of the third data set is greater than or less than the second reference value, and when they are in an inverse relationship, it is determined that there is a contradiction between the first data set and the third data set. When the difference between the initial control amount and the final control amount of the second data set is taken as the third reference value, the difference between the initial control amount and the final control amount of the third data set is greater than or less than the third reference value, and when the difference between the initial operation amount and the final operation amount of the second data set is taken as the fourth reference value, the difference between the initial operation amount and the final operation amount of the third data set is greater than or less than the fourth reference value, and when they are in an inverse relationship, it includes a step of determining that there is a contradiction between the second data set and the third data set. A control method characterized by this.

Citation Information

Patent Citations

  • PID parameter adjustment device

    JP4223894B2