after considering the following description , those skilled in the art will clearly realize that the teachings of the present invention can be readily utilized in multi - zone process control systems where self - configuring , real - time model - based adaptive , predictive functionality is beneficial for relatively easy startup commissioning , and responsiveness to transient conditions that might otherwise negatively impact desired process outcomes if not properly controlled . the teachings of the present invention can be utilized in whole or in part at the discretion of one skilled in the art . for example , the teachings of the present invention can be practiced in a single zone control system as well as a multi - zone system . similarly , a user may at its discretion choose to provide manual inputs during the controller initialization phase . the functional operation of the present invention is shown and described in connection with an exemplary injection molding machine system 20 of fig1 and 2 . system 20 includes a controller , such as a programmable logic controller 40 and multi - zone u 1 - un ( where n = total number of zones ) temperature control extruder barrel system 60 having an auger 62 driven by motor 64 and a plastic feed stock hopper 66 . the reference notations described herein include the output signals , u 1 - un , coming from the controller 40 as measured heating and / or cooling values to be applied by the extruder barrel system 60 heating or cooling elements h / c 1 - h / cn at each zone 1 - n ; and the temperature readings t 1 - tn fed back to the controller 40 by thermocouples t / c 1 - t / cn , or other temperature sensing elements utilized in the barrel system 60 . all other parameters in the system 20 refer to internal heat - transfer coefficients r that are taken into consideration when building up the system model used in the selected system identification adaptive algorithm , to be described herein . specifically , the notation r 10 - rn 0 is the overall heat transfer coefficient for a control zone 1 - n , and the notation rxy signifies the heat transfer coefficient influencing the adjoining downstream control zone ( e . g ., r 32 signifies the heat transfer coefficient of zone 2 that influences downstream zone 3 ). the notations c 1 - cn represent the overall heat capacitance of each of the zones . as also used herein , the notation t 0 refers to the system 20 ambient temperature , and tx refers to both of the respective input and output temperatures of the barrel 40 ends , wherein r 1 x refers to the heat transfer coefficient influencing zone 1 from the input end of the barrel system 60 and rzx refers to the heat transfer coefficient influencing the output end of the barrel system 60 by the last downstream zone ( here labeled zone n ). while the exemplary embodiment described herein demonstrates application of the present invention in the environment of plastic molding temperature control , it should be understood by those skilled in the art that the present invention can be applied to controllers operating in other process control applications and that control parameters including pressure , position , flow rate , metering , manufactured product physical characteristics ( e . g ., dimensions , composition , conformance to specifications ), on / off and the like , that are generally encountered in the process control industry . as with any plastic injection molding system , the controller 40 receives temperature readings tinputs from the input field device thermocouples t / c in a feedback loop and adjusts the control output commands u to each heating / cooling element h / c . temperature readings tinputs are sampled and outputs u are adjusted at designated clock rates . in the present invention the controller 40 uses the prbs based identification process for determining the clock rate that will be effective for calculating the control horizon data simultaneously for all the heating / cooling elements h / c . in a given application , the control horizon is chosen so that the controller 40 can receive temperature inputs tinputs from the thermocouples tc , analyze the temperature information , determine how to adjust the control outputs u , command the heating / cooling elements h / c to implement the control output adjustments , allow sufficient time for heating / cooling element and other system phase lag ( sometimes referred to by those skilled in the art as “ delay ” or “ dead time ”) necessary to effectuate the desired temperature changes , and give significant time to feed back the new tinputs temperature changes to the controller before the system overheats or overcools beyond system design parameters . based on system parameters and experience the control horizon is initially established by choosing a control clock rate and number of control adjustment steps . for example in a given application the control horizon may be set a 10 adjustment steps into the future . alternatively , the control clock speed may be determined adaptively by the controller . as previously noted , the controller of the present invention implements a predictive model of how the extruder barrel system will behave in the future . future behavior is modeled in a prediction horizon of future temperature input samples . preferably the controller 40 models system operation respecting the controlled parameter in the control horizon only on controlled parameter information contained in the predictive models rather than directly from the input field devices . the prediction horizon sampling rate and number of future sampling steps is a function of the controller 40 processor speed and available memory . for example , in a plastic injection molding control system the predictive controller may have a prediction horizon looking forward 50 samples . in such an exemplary application , the controller 40 will run a predictive model to model the temperature in a given zone 50 sampling pulses into the future , as shown in fig3 . at the next sample pulse , fig4 , the controller 40 acquires new temperature data tinput from each temperature sensor t / c , and will re - run the predictive model using these newly measured temperature samples tinputs for each zone for the next 50 future samples in the prediction horizon moving window to generate a bias adjusted prediction . the bias adjusted predictions , based on the latest temperature inputs are compared to respective ones predicted by the model based on the temperature samples acquired in the prior sample pulse ( previous cycle prediction ) and the difference ( bias ) is determined . next , as shown in fig5 , the controller of the present accumulates a plurality of the predictive model horizons to construct a predictive control model of future system response for the future control steps and calculates the necessary control element output command change u necessary to move the controlled parameter ( here temperature ) to its desired set point , and runs a virtual model of how the command change will impact system response through the entire control horizon window ( e . g ., 10 future control command pulses ), adjusting the command change assumption as necessary to achieve the desired result within the control horizon window . thereafter the controller 40 , issues the desired command change to the associated heating / cooling element h / c at the next control horizon sequence pulse . as the controller 40 of the present invention also models future system response to control pulses u over a large number of future steps in the control horizon , resolution adjustments in virtual space reduces likelihood of system response variance from desired output objectives . among other benefits , the controller can respond to transient temperature readings , and using the control algorithms predicts system response to the temperature readings in “ virtual space ” before committing to an actual system output control command u . in this manner the injection molding system 20 employing the controller 40 of the present invention can better respond to externally induced transients ( e . g ., extruder barrel temperature fluctuations caused by variances in the plastic feed stock being fed into the barrel hopper 66 or a failing heating / cooling element h / c ) and / or reduce likelihood of a heating / cooling element h / c overshooting its desired set point . the controller 40 architecture is shown in fig2 where for brevity only one exemplary gone is described herein . it should be understood that the controller 40 simultaneously accesses multiple zones 1 - n of the extruder barrel system 60 . the number of zones depends on the processor speed and available memory of the controller platform utilized . it is noted that even a relatively simple controller , such as the siemens model 315cpu s7 programmable logic controller previously described , employing the control system of the present invention , can control up to 40 plastic injection molding extruder barrel zones simultaneously , with 512 kb of memory . a higher speed processor having use of 1 mb of memory can process up to 100 zones simultaneously . as previously noted , the control system of the present invention is implemented by one or more processors executing program instructions stored in accessible memory , firmware or a combination of both , all of which are designated 42 in fig1 and 2 . the program instruction software may be stored independently from the controller 40 and thereafter downloaded into the controller in the field or via a data communications network , including the internetcontroller functionality , along with inputs and outputs are shown in greater detail in fig2 and 6 , as will now be described in greater detail . referring generally to fig6 , the controller functionality can be divided into at least three phases : phase 1 is the model identification procedure 99 , including adoption and adaptation of a modeling algorithm initially thought to be suitable for the system being controlled . in initialization mode step 100 , the phase lag delay per each zone in the extruder system 60 and with that information , among others , the best cycle time for the control horizon to be utilized for each zone will be calculated . generally , the shortest control window required for any zone in the extruder system 60 will be chosen for all zones . while it is possible to configure a system practicing the present invention with different control horizons for different zones and asynchronous response cycles , it is generally easier to implement a common control horizon for all zones , so long as the controller 40 has sufficient processing speed and memory to accomplish the control objectives . as noted in 102 of fig6 , initialization variables for the controller 40 may include operational parameters including temperature limits , output rates , number of zones , set point temperatures , sample time , manufactured product characteristics , etc . at the end of this phase the controller 40 is configured and is ready to execute the next phase . during the initialization phase 100 , the first order or “ best guess ” prediction horizon and control horizon sample time , as well as the delay times or lags in the extruder system 60 will be identified . in each respective individual zone , its type ( i . e ., heating or cooling or both ), zone response speed ( i . e ., slow , medium or fast ) and set point temperatures have been set by the operator . acceptable system temperature limits and heating / cooling element output ranges can be defined . phase 2 is called the pre - identification mode 200 . all of the cooling / heating elements of all the extruder barrel system 60 zones are simultaneously excited , preferably with a pseudo - random binary signal ( prbs ) generator 44 having amplitudes varying between 0 % and 100 % and accessed at independent cycle times , corresponding with the initial delay times calculated in the self - configuration initialization phase 100 . the prbs procedure is utilized to produce all potential system 60 heating / cooling frequencies that are necessary to determine accurately the system coefficients that will be used in the modeling algorithms , described below , as well as to stimulate an effective system response . during this phase 200 the system 60 is heated and the temperatures rise towards their zone set points , while the system parameters for each zone 202 are being determined , including phase lag delays 204 ( corresponding output information 208 ) and refinement of its zone - specific predictive control algorithm 206 modeling matrices and their coefficients ( corresponding output information 210 ). the summary of potential outputs of the pre - identification phase 203 include , among others , best overall system sampling time ( ts ) for each of the zone temperature inputs tinputs , system best sample time , as well as system initial coefficients used in the modeling algorithms and system matrices used to perform the predictive calculations of the modeling algorithms within the bounds of limited processor capability in the controller 40 . as explained below , each zone is modeled as a third order differential equation within a matrix construct . thus each individual zone solution requires three mathematical coefficients . modeling will be performed in system matrices that will be used during actual control execution . once enough information has been obtained about the system 60 , the controller 40 takes the decision to stop the identification and enter the next and last phase . phase 3 is called the control procedure mode 300 , wherein the controller 40 performs on each zone ( step 302 ), each cycle time of the respective modeling horizons the following operations 304 - 312 with the indicated corresponding exemplary outputs 314 - 322 : updates the system parameters in the controller parameter adaptation functional activity 46 via an adaptation algorithm , updates the controller gains with the predictive controller function 48 , using the classic model predictive method of fig7 , calculates the cooler / heater h / c new outputs for each zone and updates these values at the h / c power switching devices ( for example a pulse width modulation ( pwm ) circuit before waiting for another control horizon cycle clock to issue the output command to the output field device h / c ). in the main control procedure , the system dynamic behavior is modeled using a known recursive least squares ( rls ) mathematical model , based on memorized past outputs and inputs , as well as delay phase lag or “ dead time ” information that was obtained in the pre - identification step . with usage of the rls models in each zone , the zone model coefficients used in the modeling matrices are updated . in turn the system and model predictive system matrices are updated , as shown in fig8 . in an exemplary embodiment , the predictive controller 48 uses the model predictive control ( mpc ) matrices to build a 10 step control horizon and a 50 step temperature prediction horizon . the mpc matrices are prepared and constructed in the controller 40 processor and memory devices 42 . the underlying system model matrices are updated first , based on past data . using the updated system model , 50 step temperature predictions are computed . by comparing the predicted values with the setpoint and trying to minimize the deviation while maintaining a smooth control , a 10 step future control horizon is calculated . with respect to plastic molding temperature control implementation in the previously described siemens s7 controller / processor the basic matrix computational routines desirably may be optimized and implemented for the s - 7 plc environment . an inverse of a 10 × 10 matrix using a gauss - jordan approach , optimized to run on a fixed data structure and limiting computational floating point capability of the s - 7 plc processor may be employed when practicing this invention . those skilled in the art can appreciate that controllers manufactured by others may require different operational optimization parameters . next the model predictive control update function is performed by using basic mathematical matrix operations as applied to the system matrices and control matrices obtained previously to determine the new incremental output δu . the new incremental output δu is expressed as a differential vector modification of prior heating and cooling variables , and is stored in a mathematical matrix vector of dimension equal to the number of zones n . this result is added to the previous output vector to generate the new output vector u . the heating and cooling outputs u 1 - un are evaluated to determine whether they are within allowed minimum and maximum limits . another feature of the present invention that may be implemented is application of offsetting heating and cooling biases in zones having both heating and cooling elements h / c . when utilizing this feature a small percentage of simultaneous heating and cooling is always maintained . any differential increase in either heating or cooling is more likely to generate a more desirable linear h / c system response in the affected zone , leading to more precise temperature adjustment trim . in comparison , control zones that must transition from a heating to a cooling state or vice versa via an on - off transition often experience non - linear responses that increase the likelihood of system control instabilities . if desired , alarm and status registries routinely maintained in plc control routines may be updated to reflect changes in system control parameters and operations . the control procedure 300 is preferably performed continuously with each new sample . all matrix and control output calculations are performed within the system sample time interval . however , one skilled in the art may choose to run the control procedure synchronously or asynchronously throughout the control process , depending upon the needs of any particular system . an exemplary mathematical model of the extruder thermal behavior suitable for practicing the present invention in a model predictive controller ( mpc ) is : those skilled in the art may wish to apply a different thermal modeling algorithm . system response delay may be modeled with the following differential equation : one skilled in the art can appreciate that the delay equation can be restated as a discrete time domain model : t ( k )= a ˜ t ( k − 1 )+ b 0 ˜ u ( k − d )+ b 1 ˜ u ( k − d − 1 )+ φε ( k ) a classic mpc functional block diagram is shown in fig7 . equations for each zone are modeled in a matrix within processor and memory 42 of the controller 40 . the model is preferably updated each control cycle , as shown in fig8 the potential range of significant performance benefits arising from practice of the present invention temperature control strategies , even when implemented on relatively low memory capacity programmable logic controllers such as the siemens simatic ® s - 7 platform are : functions are modular , permitting an easy upgrade of a one - zone module to a multiple zone module machine control structure ; the sample time and controller predictive settings can be automatically calculated during the pre - identification phase , with no intervention from the user ; the model identification uses prbs signals to excite the multiple frequencies in each zone during the pre - identification phase , so that the full potential range of frequencies is identified ; the controller is capable to calculate a multiple of up to 50 cycle clock predictions ahead which can give a very smooth control and produce precise results ; the system model per zone is based on a state - space representation and physical parameters of the temperature to heater input transfer function ; the zone model utilized in this invention takes into consideration physical reality that heating and cooling phenomena have different time constants , and the processes monitored in each zone are inter - dependent with ambient temperature and adjacent zone heaters and / or current temperatures ; the zone model is able to capture and adjust controller settings when variations in the process , the zone structure , or zone interaction are happening , without needing user intervention ; the system identification is running continuously at each sample time for the best possible control parameters adaptation ; the implementation uses processor and memory efficient advanced matrix computational techniques : matrix multiplication , addition , subtraction , transpose and inverse . although various embodiments which incorporate the teachings of the present invention have been shown and described in detail herein , those skilled in the art can readily devise many other varied embodiments that still incorporate these teachings .
a control system simultaneously controls a multi - zone process with a self - adaptive model predictive controller , such as temperature control within a plastic injection molding system . the controller is initialized with basic system information . a pre - identification procedure determines a suggested system sampling rate , delays or “ dead times ” for each zone and initial system model matrix coefficients necessary for operation of the control predictions . the recursive least squares based system model update , control variable predictions and calculations of the control horizon values are preferably executed in real time by using matrix calculation basic functions implemented and optimized for being used in a s7 environment by a siemens plc . the number of predictions and the horizon of the control steps required to achieve the setpoint are significantly high to achieve smooth and robust control . several matrix calculations , including an inverse matrix procedure performed at each sample pulse and for each individual zone determine the mpc gain matrices needed to bring the system with minimum control effort and variations to the final setpoint . corrective signals , based on the predictive model and the minimization criteria explained above , are issued to adjust system heating / cooling outputs at the next sample time occurrence , so as to bring the system to the desired set point . the process is repeated continuously at each sample pulse .