Estimation Rule Module for Adaptive Engine
Patent Information
- Application Number
- JP2024575779
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-06-30
- Filing Date
- 2023-06-29
- Publication Date
- 2025-10-30
AI Technical Summary
Current adaptive controllers in plasma processing systems lack stability, scalability, and adaptability, leading to inefficiencies and component overheating due to asynchronous actuator responses and unbounded control values, and struggle with modeling uncertainties and asynchronous actuator behaviors.
An adaptive engine with a non-linear model and inference rule modules that estimate model parameter tensors to generate control signals, using a selector module to select optimal signals based on estimated system outputs and reference signals, improving convergence and stability.
Enhances the precision and consistency of plasma processing by stabilizing actuator control, reducing overheating, and adapting to various situations within a recipe, ensuring efficient and precise power application.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
Technical Field
[0001] The present disclosure generally relates to controller design. In particular, but not limited to, the present disclosure relates to systems, methods, and apparatuses for designing adaptive controllers.
Background Art
[0002] Control systems have important applications in many technical fields, including plasma applications, semiconductor processing and other materials processing, robotics, automotive, aircraft, and spacecraft vehicle control systems, and other electronic, manufacturing, and industrial systems. Semiconductor processing and other advanced materials processing rely increasingly on sophisticated plasma processes. Such plasma processes, in turn, require increasingly sophisticated power systems and control systems in order to make the inherently unstable and non-linear plasma more precise and consistent. Such plasmas are used for processes such as plasma etching processes, plasma enhanced chemical vapor deposition (CEPVD) processes, plasma enhanced atomic layer deposition (PEALD) processes, plasma assisted atomic layer deposition (PA-ALD), RF sputtering deposition, and other plasma processing applications.
[0003] In some plasma processing recipes, it is desirable to provide a pulsed waveform having multiple states (or power levels) as illustrated by the exemplary waveform of FIG. 2. Each recipe includes the number of pulse cycles (PC), the number of pulses per pulse cycle, and the number of states per pulse. Each state has a different target power level. In this example, two pulse cycles are shown, the first pulse cycle having six pulses, each of those pulses having three states. The second pulse cycle has four pulses, each having four states. The plasma processing system includes a number of actuators to achieve the desired application of power, as shown in FIG. 2. However, in many cases, different actuators have inherently different response times (e.g., some actuators respond much faster than other actuators), and / or the actuators operate in an asynchronous manner, such that the actuators respond differently to control signals. In the context of the present disclosure, an actuator may include higher level components such as, but not limited to, generators, matching networks, remote plasma sources, and bias supplies. Additionally, an actuator may include lower level components such as, but not limited to, DC rail supplies, RF amplifiers, variable capacitors, and power supplies within bias supplies and remote plasma sources. In today's plasma processing systems, control of high level and low level actuators (e.g., for accuracy and consistency) is important considering the increasing rate of actuators and the resulting never-before-seen reduction in dimensions of the processed workpieces.
[0004] As an additional example, an RF generator for providing the pulsed waveform of FIG. 2 may have an actuator that includes a DC section and a power amplifier. The DC section provides a rail voltage to the power amplifier, and the power amplifier uses the rail voltage to provide a desired pulsed waveform (e.g., FIG. 2). The power amplifier is relatively fast (e.g., about 250 nanoseconds) compared to changes in the target voltage, but the DC section or rail is relatively slow (e.g., about 1 millisecond). As a result, existing control systems tend to hold the rail at a high level (e.g., at the highest level required for a given pulse cycle) for most of the pulse cycle. However, this can lead to overheating of components, early system failure and the need for maintenance, as well as inefficiencies, because the rail often far exceeds the level required at any given instant in time (i.e., with respect to a given state within the pulse of the pulse cycle).
[0005] Current adaptive controllers do not have inherent stability or guarantee that they will converge. Further, existing adaptive controllers utilize transfer functions and thus are difficult to scale to arbitrary waveforms and coupled inputs and outputs (MIMO). They also tend to be limited to a single control law and thus lack adaptability to various situations that can occur even within a given recipe. Further, existing adaptive engines are plagued by unstable systems as well as unbounded calculated control values and bounded disturbances of modeled uncertainty and arbitrary inputs and outputs. Finally, they are plagued by the handling of different modelings / parameterizations of the process to be controlled. SUMMARY OF THE INVENTION MEANS FOR SOLVING THE PROBLEM
[0006] In some aspects, the techniques described herein are an adaptive engine configured to receive a series of reference signals and, in response, provide a control signal to one or more actuator control parameters of a power system, the adaptive engine including a non-linear model of one or more actuators and / or a power system controlled by one or more actuators, and an estimation error calculated from two or more of (1) a measured system output, (2) an estimated system output, and (3) the reference signal, respectively
Chemical formula
[0007] In some aspects, the techniques described herein relate to an adaptive engine, where each of the inference rule modules applies an inference rule to an input regressor and an inference error
Chemical formula
[0008] In some aspects, the techniques described herein relate to an adaptive engine, where at least two inference rule modules apply two different inference rules, and at least one of the at least two inference rules is a function of an adaptive gain and at least one of the at least two inference rules is independent of the adaptive gain.
[0009] In some aspects, the techniques described herein relate to an adaptive engine, where the estimated model parameter tensor Θ is part of the A, B, and C matrices of a time-varying linear system that is part of a non-linear model.
[0010] In some aspects, the techniques described herein relate to an adaptive engine, where the time-varying linear system is a strictly positive real matrix derived from a Lyapunov equation.
[0011] In some aspects, the techniques described herein relate to an adaptive engine, where the repeated estimation of the estimated model parameter tensor Θ by each of the inference rule modules better approximates the non-linear model by the non-linear behavior of the power system, while the structure of the A, B, and C matrices of the time-varying linear system remains constant.
[0012] In some aspects, the techniques described herein relate to an adaptive engine, where the structure of the matrices of the time-varying linear system remains constant for all control samples of the frame.
[0013] In some aspects, the techniques described herein relate to an adaptive engine, and the repeated estimation of the estimated model parameter tensor Θ by each of the inference rules modules causes the non-linear model to better approximate the non-linear behavior of the power system.
[0014] In some aspects, the techniques described herein relate to an adaptive engine, and the power system is a plasma processing power system.
[0015] In some aspects, the techniques described herein relate to an adaptive engine, and one or more actuators are components of a matching network arranged between the power and / or frequency of the plasma processing power system and / or between the plasma processing power system and the plasma load.
[0016] In some aspects, the techniques described herein are an adaptive engine configured to receive a series of reference signals and, in response thereto, provide a control signal to one or more actuator control parameters of a power system, each applying an inference rule to an input regressor
Chemical formula
[0017] In some aspects, the techniques described herein relate to an adaptive engine, and each of the estimator modules applies an estimation rule to an input regressor and an estimation error
Chemical formula
[0018] In some aspects, the techniques described herein relate to an adaptive engine, at least two estimator modules apply two different estimation rules, and at least one of the two estimation rules is a function of an adaptation gain, and at least one of the two estimation rules is independent of the adaptation gain.
[0019] In some aspects, the techniques described herein relate to an adaptive engine, and the estimated model parameter tensor Θ is part of the A, B, and C matrices of a time-varying linear system that is part of a non-linear model.
[0020] In some aspects, the techniques described herein relate to an adaptive engine, and the time-varying linear system is a strongly positive real matrix derived from a Lyapunov equation.
[0021] In some aspects, the techniques described herein relate to an adaptive engine, and the repeated estimation of the estimated model parameter tensor Θ by each of the estimator modules better approximates the non-linear model by the non-linear behavior of the power system, while the structures of the A, B, and C matrices of the time-varying linear system remain constant.
[0022] In some aspects, the techniques described herein relate to an adaptive engine, and the structure of the time-varying linear system matrix remains constant for all control samples of the frame.
[0023] In some aspects, the techniques described herein relate to an adaptive engine, and the repeated estimation of the estimated model parameter tensor Θ by each of the estimation rules modules causes the non-linear model to better approximate the non-linear behavior of the power system.
[0024] In some aspects, the techniques described herein relate to an adaptive engine, and the power system is a plasma processing power system.
[0025] In some aspects, the techniques described herein relate to an adaptive engine, and one or more actuators are components of a matching network arranged between the power and / or frequency of the plasma processing power system and the plasma load.
[0026] In some aspects, the techniques described herein relate to an adaptive engine, and the selector module finds the estimated system error out se for each, and uses the estimated system error out to select the control u out to be selected.
[0027] In some aspects, the techniques described herein are methods of adaptive control, including receiving an input regressor, receiving an estimated model parameter tensor for a non-linear model of one or more actuators and / or a power system controlled by one or more actuators, the non-linear model including a time-varying linear system that depends on the estimated model parameter tensor, accessing the structure of the time-varying linear system and applying it to the non-linear model, applying a control portion of the non-linear model involving a tensor multiplication of the estimated model parameter tensor and a modified input regressor tensor that includes the input regressor and at least one filtered sub-component of the input regressor to generate a possible control signal, applying an estimation portion of the non-linear model that involves using the possible control signal from the control portion as an input to a time-varying linear system operator to estimate an estimated system output, selecting an effect of the possible control signal on a control output based on the estimated system output, and controlling one or more actuators and / or a system controlled by one or more actuators via the control output.
[0028] In some aspects, the techniques described herein are methods where the filtered sub-components of the input regressor are measured system outputs.
[0029] In some aspects, the techniques described herein are methods where another filtered sub-component within the modified input regressor is a control output from a previous control sample.
[0030] In some aspects, the techniques described herein relate to a method, where the modified input regressor includes a reference signal, a measured system output from a previous control sample, a filtered version of the measured system output from the previous control sample, and a filtered version of the control output from the previous control sample.
[0031] In some aspects, the techniques described herein relate to a method, where the modified input regressor includes a reference signal, a measured system output from a previous control sample, a filtered version of the measured system output from the previous control sample, and a filtered version of the control output from the previous control sample.
[0032] In some aspects, the techniques described herein relate to a method, and further include the step of updating the estimated model parameter tensor at all control samples, and thereby also the step of updating the time-varying linear system at all control samples.
[0033] In some aspects, the techniques described herein relate to a method, and further include the step of updating the structure of the time-varying linear system for each frame.
[0034] In some aspects, the techniques described herein relate to a method, and further include the step of selecting a possible control signal as the control output.
[0035] In some aspects, the techniques described herein relate to a method, where the influence is a weight applied to the possible control signal when mixing the possible control signal with one or more other possible control signals to give the control signal.
[0036] In some aspects, the techniques described herein relate to a Lyapunov-based controller configured to control one or more actuator control parameters of a power system, the control portion of a non-linear model of one or more actuators and / or a power system controlled by one or more actuators, the control portion being a function of a first tensor including at least a reference signal, a measured value of the output of the power system, and a control signal for a previous control sample, and a second tensor including an estimated model parameter tensor, the control portion being configured to calculate a control signal considered possible by multiplying the first and second tensors by the tensor, the estimation portion being configured to estimate an estimated system output for the power system based on a time-varying linear system and a control signal considered possible, and the output including a control signal considered possible and the estimated system output configured to be provided for use in selecting a control signal for one or more actuators, related to a Lyapunov-based controller.
[0037] In some aspects, the techniques described herein relate to a Lyapunov-based controller that is a sub-engine of an adaptive controller, and the control signal considered possible is selected as the control signal from other possible control signals provided by other sub-engines within the adaptive controller.
[0038] In some aspects, the techniques described herein relate to a Lyapunov-based controller that is a sub-engine of an adaptive controller, and the control signal considered possible is mixed with other possible control signals from other sub-engines within the adaptive controller to form a control signal.
[0039] In some aspects, the techniques described herein relate to a Lyapunov-based controller, and the sub-engine is configured to use the Lyapunov framework.
[0040] In some aspects, the techniques described herein relate to a Lyapunov-based controller, and the sub-engine is configured to operate optimally at a stable zero dynamics scale.
[0041] In some aspects, the techniques described herein relate to a Lyapunov-based controller, and the sub-engine is configured for stable adaptation at the expense of convergence speed.
[0042] In some aspects, the techniques described herein relate to a Lyapunov-based controller, and further include a selector module configured to perform a selection based on (1) a set of possible control signals including possible control signals, and (2) a set of estimated system outputs including estimated system outputs.
[0043] In some aspects, the techniques described herein relate to a Lyapunov-based controller, and the second tensor further includes a derivative of the estimated model parameter tensor.
[0044] In some aspects, the techniques described herein are methods of adaptive control, comprising accessing an input regressor, and accessing a non-linear model of a power system controlled by one or more actuators and / or one or more actuators, the non-linear model including a control part and an estimation part, estimating an estimated model parameter tensor for the non-linear model at each control sample, applying the control part of the non-linear model by multiplying the estimated model parameter tensor and the input regressor or a modified input regressor to provide a possible control signal, applying the estimation part of the non-linear model with, as inputs, the possible control signal and the estimated model parameter tensor to provide an estimated system output, and generating a control signal configured for provision to one or more actuators based on the possible control signal and the estimated system output.
[0045] In some aspects, the techniques described herein relate to methods, and the modified input regressor includes at least one filtered sub-component of the input regressor.
[0046] In some aspects, the techniques described herein relate to methods, and at least one filtered sub-component of the input regressor is a measured output of the power system.
[0047] In some aspects, the techniques described herein relate to the method of claim 19, and at least one filtered sub-component of the input regressor is a control output from a previous iteration.
[0048] In some aspects, the techniques described herein relate to methods, and the estimation part includes a time-varying linear system that is a function of the estimated model parameter tensor and the possible control signal.
[0049] In some aspects, the techniques described herein relate to a method further including the steps of grouping control samples into frames, updating the structure of a time-varying linear system once per frame, and approximating large variations in the non-linear behavior of a power system controlled by one or more actuators and / or one or more actuators.
[0050] In some aspects, the techniques described herein relate to a control system including a user interface configured to receive a reference signal defining a target value for a controlled parameter provided to a controlled output of the system, at least one sensor for obtaining a measured value of the controlled parameter controlled at the controlled output, an estimation module configured to generate an estimated model parameter tensor Θ, a fuzzy controller configured to provide a control signal to adjust at least one actuator based at least on the reference signal and the measured value of the controlled parameter, and a dynamic modification module configured to adapt the output membership function of the fuzzy controller, adapt the input membership function of the fuzzy controller, and adapt the rule base of the fuzzy controller while controlling the controlled parameter based at least on the reference signal, the estimated value of the controlled parameter, the measured value of the controlled parameter, and the control signal.
[0051] In some aspects, the techniques described herein relate to a control system, wherein the output membership function, the input membership function, and the rule base are adapted simultaneously between each sample.
[0052] In some aspects, the techniques described herein relate to a control system, wherein the output membership function, the input membership function, and the rule base are adapted asynchronously.
[0053] In some aspects, the techniques described herein relate to a system, and the controlled output is an output coupled to a plasma processing chamber.
[0054] In some aspects, the techniques described herein relate to a system, and the controlled output is the output of an actuator within the system.
[0055] In some aspects, the techniques described herein relate to a system, and the user interface is configured to perform at least one of enabling an operator of the system to set a target value and enabling a controller to set a target value.
[0056] In some aspects, the techniques described herein relate to a system, and at least one actuator includes a DC section configured to apply a DC rail voltage to a power amplifier.
[0057] In some aspects, the techniques described herein relate to a system, and the controlled parameter is one of forward power, reflected power, or reflection coefficient.
[0058] In some aspects, the techniques described herein are methods for controlling a plasma processing system, including receiving a reference signal that defines a target value for a controlled parameter in the output of the plasma processing system, obtaining a measured value of the controlled parameter in the output, generating an estimated model parameter tensor Θ, using a fuzzy controller to provide a control signal to adjust at least one actuator based at least on the reference signal and the measured value of the controlled parameter, and adapting the output membership function, the input membership function, and the rule base of the fuzzy controller based at least on the estimated model parameter tensor Θ, the reference signal, the estimated value of the controlled parameter, the measured value of the controlled parameter, and the control signal while controlling the controlled parameter.
[0059] In some aspects, the techniques described herein relate to a method, where the output is an output coupled to a plasma processing chamber.
[0060] In some aspects, the techniques described herein relate to a method, where the step of adjusting at least one actuator includes adjusting a DC segment configured to apply a DC rail voltage to a power amplifier.
[0061] In some aspects, the techniques described herein relate to a method, where the controlled parameter is one of forward power, reflected power, or reflection coefficient.
[0062] In some aspects, the techniques described herein relate to a method, where the output is an actuator output of at least one actuator.
[0063] In some aspects, the techniques described herein are non-transitory media encoded with instructions that are executable by a processor and / or used to program a field programmable gate array, the instructions receiving a reference signal that defines a target value for a controlled parameter in the output of a plasma processing system, obtaining a measured value of the controlled parameter in the output, generating an estimated model parameter tensor Θ, providing a control signal using a fuzzy controller, adjusting at least one actuator based at least on the reference signal and the measured value of the controlled parameter, and adapting an output membership function, an input membership function, and a rule base of the fuzzy controller based at least on the estimated model parameter tensor Θ, the reference signal, an estimated value of the controlled parameter, the measured value of the controlled parameter, and the control signal while controlling the controlled parameter.
[0064] In some aspects, the techniques described herein relate to non-transitory media, the instructions including instructions for providing a control signal to an output coupled to a plasma processing chamber.
[0065] In some aspects, the techniques described herein relate to non-transitory media, the instructions for adjusting at least one actuator including instructions for adjusting a DC segment configured to apply a DC rail voltage to a power amplifier.
[0066] In some aspects, the techniques described herein relate to non-transitory media, the controlled parameter being one of forward power, reflected power, or reflection coefficient.
[0067] In some aspects, the techniques described herein relate to non-transitory media, the output being an actuator output of at least one actuator.
[0068] In some aspects, the techniques described herein are adaptive engines configured to receive a reference signal and provide a control signal to one or more actuators, the estimation module being an estimation module configured to receive a plurality of error signals and input regressors, the input regressors being the reference signal r, the system output measurement y meas , the control output u from the previous iteration out_k-1 , including one or more estimated system outputs, the one or more estimated system outputs being the estimated system output y for the current iteration est_SE , and the estimated system output y for the previous iteration est_out including one or more of these, the estimation module applying one or more estimation rules to the error signals and input regressors and generating an estimated model parameter tensor Θ for a non-linear model of a power system controlled by one or more actuators or one or more actuators, the estimated model parameter tensor Θ including a plurality of sub-components, the estimation module, and a control law sub-engine, the control law sub-engine including a plurality of mapping modules, each of the plurality of mapping modules receiving at least a portion of the plurality of sub-components of the estimated model parameter tensor Θ, (1) a sub-component of a possible control signal, each based on a portion of the input regressor and at least one sub-component of the estimated model parameter tensor, a sub-component of a possible control signal, and (2) configured to output at least one of at least one of the plurality of error signals, the control law sub-engine combining two or more sub-components of the possible control signal, the possible control signal u SE is generated, and the non-linear model is based on applying the non-linear model to (1) a possible control signal u SE or (2) the control output u from the previous iteration out_k-1 to obtain a possible estimated system output y est_SEa control law sub - engine used to generate, and a possible control signal u SE and a possible estimated system output y est_SE relates to an adaptation engine including a selector module configured to receive
[0069] In some aspects, the techniques described herein relate to an adaptation engine, and a plurality of sub - components of an estimated model parameter tensor Θ each correspond to an estimated model parameter tensor coefficient.
[0070] In some aspects, the techniques described herein relate to an adaptation engine, and the estimation rule module is configured to pass a plurality of estimated model parameter tensor coefficients to a first mapping module of a plurality of mapping modules. The first mapping module uses one or more of the plurality of estimated model parameter tensor coefficients to approximate noise and disturbance components u within one or more of a possible control signal u from a previous iteration SE_k-1 and a control output u from a previous iteration out_k-1 and determines a measured noise and disturbance component u using a first estimated model parameter tensor coefficient. nd_approx is configured to nd_k
[0071] In some aspects, the techniques described herein relate to an adaptation engine, and the control law sub - engine is configured to determine an influence ω of noise and disturbance within a system output measurement y using a second estimated model parameter tensor coefficient. The step of determining a measured noise and disturbance component u includes the step of mapping an influence ω of noise and disturbance to a measured noise and disturbance component u using a first estimated model parameter tensor coefficient. meas y_nd nd_k y_nd nd_k
[0072] In some aspects, the techniques described herein relate to an adaptive engine, and the rule module is configured to adapt a plurality of estimated parameter tensor coefficients, and u nd_k and u nd_approx and the error u nd_error corresponding to the difference between is configured to minimize.
[0073] In some aspects, the techniques described herein relate to an adaptive engine, and the rule module is configured to pass a first estimated model parameter tensor coefficient Θε and a second estimated model parameter tensor coefficient ΘΨ to a stabilization mechanism module of a control law sub-engine, and pass the second estimated model parameter tensor coefficient ΘΨ to a stability hypothesis tester of the stabilization mechanism module, and the stability hypothesis tester is configured to use the second estimated model parameter tensor coefficient ΘΨ to map an input control signal component ω u_in to a predicted system output.
[0074] In some aspects, the techniques described herein relate to an adaptive engine, and the stability hypothesis tester is configured to determine whether a predicted system output is stable or unstable, and in response to determining that the predicted system output is unstable, stabilize an input control signal component ω u_in or, in response to determining that the predicted system output is stable, pass an input control signal component ω u_in to a non-linearity compensation module of the adaptive engine.
[0075] In some aspects, the techniques described herein relate to an adaptive engine, and the rule module is configured to adapt a first estimated model parameter tensor coefficient Θε and pass the adapted first estimated model parameter tensor coefficient Θε to a stabilization mechanism module, and an input control signal component ω u_in is stabilized using the adapted first estimated model parameter tensor coefficient Θε.
[0076] In some aspects, the techniques described herein relate to an adaptive engine, and in response to determining that the predicted system output is unstable, the stabilization mechanism module stabilizes the input control signal component ω u_in_stabilized and passes it to the non-linearity compensation module.
[0077] In some aspects, the techniques described herein relate to an adaptive engine, and the non-linearity compensation module uses one of the input control signal component ω u_in and the stabilized input control signal component ω u_in_stabilized to generate a possible control signal u SE .
[0078] In some aspects, the techniques described herein relate to an adaptive engine, and a plurality of sub-components of the estimated model parameter tensor Θ include a plurality of estimated model parameter tensor coefficients for mapping a control signal to an estimated or predicted system output measurement.
[0079] In some aspects, the techniques described herein relate to an adaptive engine, and at least one sub-component of the plurality of sub-components of the estimated model parameter tensor Θ includes an estimated model parameter tensor coefficient for mapping a reference signal r to a desired control signal u r_des_k .
[0080] In some aspects, the techniques described herein relate to an adaptive engine, and at least one sub-component of the plurality of sub-components of the estimated model parameter tensor Θ corresponds to an estimated delay increment or an estimated delay decrement, and the estimated delay increment or decrement enables control of unstable zero dynamics.
[0081] In some aspects, the techniques described herein relate to an adaptive engine, and the adaptation and estimation rule module is optimized for unstable zero dynamics situations found in non-linear systems.
[0082] In some aspects, the techniques described herein relate to an adaptive engine, where the adaptation and estimation law module is configured to achieve fast convergence between stable and unstable zero dynamics.
[0083] In some aspects, the techniques described herein relate to an adaptive engine, where the selector module is configured to receive one or more other possible control signals from one or more other control law sub-engines, and the selector module is further configured to receive an exogenous signal, including a tensor synchronization and coherence module, where the exogenous signal is applied to a possible control signal u SE_k and one or more other possible control signals, and smooths the transitions between the possible control signals input to the selector module.
[0084] In some aspects, the techniques described herein are methods for adaptive control, including the step of receiving a plurality of error signals and input regressors, where the input regressors include a reference signal r, a system output measurement y meas , a control output u from a previous iteration out_k-1 , one or more estimated system outputs, where the estimated system output for the current iteration is y est_SE and the estimated system output for the previous iteration is y est_outOne or more estimated system outputs, including one or more that include one or more of them, and steps, applying one or more estimation rules to the error signal and the input regressor to generate an estimated model parameter tensor Θ for one or more actuators or a non-linear model of a power system controlled by one or more actuators, the estimated model parameter tensor Θ including a plurality of sub-components, steps, generating a plurality of sub-components of a possible control signal, each sub-component of the possible control signal being based on a part of the input regressor and at least one sub-component of the estimated parameter tensor, steps, combining two or more of the plurality of sub-components of the possible control signal to generate a possible control signal u SE_k generating, and applying the non-linear model to (1) a possible control signal u SE_k or (2) a control output u from a previous iteration out_k-1 to generate an estimated system output y est_SE generating, and selecting the best possible control signal u SE_k from a set including (1) a possible control signal u SE and a plurality of other possible control signals, or (2) the best combination of a possible control signal u SE mixed from two or more possible control signals in the set, each of the plurality of other possible control signals being associated with an estimated system output y est_SE and the selecting step being based at least in part on a predicted error derived from each of the estimated system outputs y est_SE relates to a method including steps.
[0085] In some aspects, the techniques described herein are non-transitory computer-readable storage media having instructions embodied thereon, the instructions being executable by one or more processors to perform a method for adaptive control, the method comprising receiving a plurality of error signals and input regressors, the input regressors including a reference signal r, a system output measurement y meas , a control output u from a previous iteration out_k-1 , one or more estimated system outputs, including an estimated system output ŷ for the current iteration est_SE and an estimated system output ŷ for a previous iteration est_out ; applying one or more estimation rules to the error signals and input regressors to generate an estimated model parameter tensor Θ for a non-linear model of one or more actuators or a power system controlled by one or more actuators, the estimated model parameter tensor Θ including a plurality of sub-components; generating a plurality of sub-components of a possible control signal, each sub-component of the possible control signal being based on a part of the input regressors and at least one sub-component of the estimated model parameter tensor; combining two or more of the plurality of sub-components of the possible control signal to generate a possible control signal u SE_k ; generating an estimated system output ŷ based on applying the non-linear model to (1) the possible control signal u SE_k or (2) the control output u from a previous iteration out_k-1 ; and selecting the best possible control signal u est_SE from a set including (1) the possible control signal u SE_k and a plurality of other possible control signals SEor a control signal u that may be mixed from two or more sets of two or more possible control signals SE selecting the best combination, wherein each of the plurality of other possible control signals is associated with an estimated system output y est_SE and the selecting step comprises steps based at least in part on a predicted error derived from each of the estimated system outputs y est_SE relating to a non-transitory computer-readable storage medium.
[0086] In some aspects, the techniques described herein are adapted engines configured to receive a series of reference signals and, in response, provide a control signal to one or more actuator control parameters of a power system, the control law sub-engines each configured to implement at least one control law, and a plurality of estimation law modules each configured to implement at least one estimation law, each based on an estimation error or cost function J calculated from two or more of (1) a measured system output, (2) an estimated system output, and (3) a reference signal, for estimating an estimated model parameter tensor Θ of a non-linear model of one or more actuators and / or a power system controlled by one or more actuators, the control law sub-engines applying individual ones of the estimated model parameter tensor Θ to the control laws to generate possible controls u se a plurality of estimation law modules configured to generate, and a selector module configured to provide the control u out generate the control u out to one or more actuators, the generating step being (1) a selection of one or more of the possible control signals u out as the control u se or (2) a combination of two or more of the possible control signals u out as the control u seRelates to an adaptive engine that includes a selector module based on any of the blends of two or more of them.
[0087] In some aspects, the techniques described herein relate to an adaptive engine, and the power system is a plasma processing power system.
[0088] In some aspects, the techniques described herein relate to an adaptive engine, and one or more actuators are components of a matching network arranged between the power and / or frequency of a plasma processing power system and / or between the plasma processing power system and a plasma load.
[0089] In some aspects, the techniques described herein are an adaptive engine configured to receive a series of reference signals and, in response thereto, provide a control signal to one or more actuator control parameters of a power system, the adaptive engine including one or more actuators and / or a non-linear model of a power system controlled by one or more actuators, the non-linear model being a function of an estimated model parameter tensor Θ that includes estimated value parameters of the non-linear model, a storage device, a set of first estimation rule modules each configured to implement a different estimation rule, the estimation rules each being based on different functions of an estimation error or cost function J derived from two or more of at least (1) a measured system output, (2) an estimated system output, and (3) a reference signal, to estimate the estimated model parameter tensor Θ, and for each estimated model parameter tensor Θ, a first possible control signal u se Generated by a first control rule module configured to implement a control rule, and one or more additional possible control signals u based on the estimated model parameter tensor Θ generated by a set of second estimation rule modules, respectively. seOne or more additional control law modules configured to generate, and a system cost function J that causes or is predicted to minimize an estimated minimum system error out A possible control signal u that is predicted to minimize se Based on one or a combination of two or more of them, control u for one or more actuators out Relates to an adaptive engine, including a selector module configured to generate
[0090] In some aspects, the techniques described herein relate to an adaptive engine, and the power system is a plasma processing power system.
[0091] In some aspects, the techniques described herein relate to an adaptive engine, and one or more actuators are components of a matching network arranged between the power and / or frequency of a plasma processing power system and / or between the plasma processing power system and a plasma load.
[0092] In some aspects, the techniques described herein relate to an adaptive engine, and the non-linear model includes a control part for generating a first possible control signal u se And an estimation part for generating an estimated system output y est_se The estimation part has, and is a function of a time-varying linear system that is a function of a first possible control signal u se And an estimated model parameter tensor Θ.
[0093] In some aspects, the techniques described herein relate to an adaptive engine, the structure of the time-varying linear system changes for each frame, approximates large non-linear behavior in the power system, but remains constant within each frame such that adaptation of the estimated model parameter tensor Θ is based on a linear system within each frame.
[0094] In some aspects, the techniques described herein are methods of adaptive control that include a step of estimating an estimated model parameter tensor Θ for all control samples, the estimating step being based on an estimation rule that is a function of at least an estimation error or a cost function J, the estimated model parameter tensor Θ including estimated parameters of a non - linear model, a step of using a control portion of the non - linear model to generate a possible control signal u se a step of using an estimation portion of the non - linear model to generate an estimated system output y est_se wherein both portions of the non - linear model are functions of at least the estimated model parameter tensor Θ, a step of selecting the best possible control signal u se from a set that includes the possible control signal u and additional possible control signals, or (2) the best combination of possible control signals u se that are mixed from two or more of the set. se The method is related to the above steps.
[0095] In some aspects, the techniques described herein are related to a method, and the estimation portion is also a function of the structure of a time - varying linear system W m The structure of the time - varying linear system W is calculated by a frame resynthesizer for each frame or accessed from a look - up table derived experimentally, and the estimated model parameter tensor Θ is estimated for each iteration of the generating step.
[0096] In some aspects, the techniques described herein are related to a method, and the structure of the time - varying linear system W m is calculated by a frame resynthesizer for each frame or accessed from a look - up table derived experimentally, and the estimated model parameter tensor Θ is estimated for each iteration of the generating step.
[0097] In some aspects, the techniques described herein are related to a method, and the time - varying linear system W m is a strongly positive - real matrix derived from a Lyapunov equation.
[0098] In some aspects, the techniques described herein relate to a method, where the estimation part of the non - linear model is a function of a possible control signal u se generated by the control part of the non - linear model.
[0099] In some aspects, the techniques described herein relate to a method, where the non - linear model includes a linear part that approximates non - linear behavior for each of a plurality of frames, and each frame includes a plurality of repetitions of the generating step.
[0100] In some aspects, the techniques described herein relate to a method, where the estimation error or cost function J is calculated from two or more of (1) the measured system output, (2) the estimated system output, and (3) a reference signal.
[0101] In some aspects, the techniques described herein are a method of operating an adaptive controller, including steps of accessing a system model with a control part and an estimation part, where the estimation part is a function of the control part for the parameters of the system model and the estimated model parameter tensor Θ, a time - varying linear system W m including steps of dividing the control samples of the adaptive controller into frames, and at the start of each frame, the time - varying linear system W mAdjusting the matrix structure to approximate a large change in the non - linear system behavior, and at each control sample within a given frame, adapting the estimated model parameter tensor Θ to minimize the error related to the controller output and approximate a small change in the non - linear system behavior; at each control sample, using the control part of the system model to calculate at least a possible control signal using the estimated model parameter tensor Θ as an input; at each control sample, using the estimation part of the system model to calculate the estimated system output using at least the possible control signal as an input to a time - varying linear system; at each control sample, based on a set of possible control signals and estimated system outputs including the possible control signal and the estimated system output, selecting or generating control u out including the step of selecting or generating it. The present invention relates to a method.
[0102] In some aspects, the techniques described herein relate to a method. The adapting step includes estimating the estimated model parameter tensor Θ by applying an estimation rule to (1) at least an input regressor including a reference signal r,
Chemical formula
[0103] In some aspects, the techniques described herein relate to a method. The time - varying linear system W m is a strictly positive real matrix derived from the Lyapunov equation.
[0104] In some aspects, the techniques described herein are methods of adaptive control that analyze a reference signal r and, for each of a plurality of frames, determine a frame length and access a model of the non-linear behavior of a power system, including a control portion and an estimation portion, where the estimation portion includes a time-varying linear system approximation W that includes a system of simultaneous equations having matrix coefficients m including the time-varying linear system approximation W m is a function of the output of the control portion and the estimated model parameter tensor Θ of the model, and, for each of a plurality of frames, provides a matrix structure for the matrix coefficients, and, for each control sample of the plurality of frames, estimates the estimated model parameter tensor Θ, and applies the control portion of the model to the estimated model parameter tensor Θ to determine a possible control signal u se and applies the possible control signal u se and the estimated model parameter tensor Θ to the estimation portion of the model to determine an estimated system output y est_se and applies the possible control signal u se and other possible control signals to select, as the control output u of the adaptive control system, the best possible control signal or the best combination of possible control signals from a set, where the selecting step is based at least on an error or cost function that depends on the estimated system output y out and relates to a method including the step of est_se In some aspects, the techniques described herein relate to a method where the time-varying linear system W
[0105] is a strongly positive real matrix derived from a Lyapunov equation. m
[0106] In some aspects, the techniques described herein are adaptive engines configured to receive a reference waveform and provide a control signal to one or more actuators, an estimator module configured to receive an input regressor, where the input regressor includes a reference signal r, or a reference signal stream, a system output measurement y meas , a control output u from a previous iteration out_k-1 , the estimator module is configured to apply one or more estimation rules to the input regressor to generate an estimated model parameter tensor Θ for a non-linear model, where the non-linear model is a function of the estimated model parameter tensor Θ, and the estimated model parameter tensor Θ includes the estimated parameters of the non-linear model, the estimator module, and the system output measurement y meas , a control output u from a previous iteration out_k-1 , and a control law module configured to receive the estimated parameter tensor Θ, a sliding mode predictor that includes a non-linear model, (1) an initial linear time-varying (LTV) system W corresponding to the reference signal r m , and (2) a possible control signal u SE_k or an internal possible control signal u SE_desired , the control law module is configured to generate a possible control signal u SE_k and an internal possible control signal u SE_desired , the sliding mode predictor is configured to (1) a predicted system output y based on applying W m and the non-linear model to an internal possible control signal u SE_desired , and (2) an estimated system output y based on applying W est_ideal and the non-linear model to a possible control signal u m or a possible control signal u from a previous iteration SE SE_k-1 , an estimated system output y est_SE configured to generate one or more of which, a control law sub - engine, and a possible control signal u SE_k and an estimated system output y est_SE relates to an adaptive engine, including a selector module configured to receive
[0107] In some aspects, the techniques described herein relate to an adaptive engine, where the initial LTV system W m corresponds to the reference signal r and is used as an initial model for adaptation at the start of each frame. Each frame contains a plurality of samples, and the sliding - mode predictor is further configured to adapt the initial LTV system W m where W m is adapted at one or more samples of the plurality of samples of the corresponding frame.
[0108] In some aspects, the techniques described herein relate to an adaptive engine, and further, a delay filter combined at the output of the control law module, and an internal possible control signal u from the delay filter SE_desired , an estimated system output y est_SE , and a predicted system output y from the sliding - mode predictor est_ideal a non - linearity compensation module configured to receive one or more of which, respectively, (1) u SE_k and y est_SE or (2) u SE_desired and y est_ideal After compensating or removing the undesirable non - linear effects from, a possible control signal u SE_k and an estimated system output y est_SE and further configured to provide, a non - linearity compensation module.
[0109] In some aspects, the techniques described herein relate to an adaptive engine, and further, smoothing the system output measurement y meas and the smoothed and filtered system output measurement yd including a first filter configured to provide to a control law module and an estimation law module.
[0110] In some aspects, the techniques described herein relate to an adaptive engine, and the input regressor further includes an estimation error or cost function J, which is a smoothed and filtered system output measurement y d and (1) a predicted system output y est_ideal or (2) an estimated total system output y est_out Based on one of the estimated total system output y est_out is calculated based on the control output u from the previous iteration, and the estimated model parameter tensor Θ is at least partially based on the estimation error or cost function J. out_k-1
[0111] In some aspects, the techniques described herein relate to an adaptive engine, and the estimation error or cost function J is (1) the estimated total system output y est_out and the smoothed and filtered system output measurement y d corresponding to the difference between.
[0112] In some aspects, the techniques described herein relate to an adaptive engine, and the sliding mode predictor includes a non-linear model, and the sliding mode predictor is at least partially based on (1) an initial LTV system W m is received, and (2) based on adapting the initial LTV system W m is configured to predict the non-linear response of a power system controlled by one or more actuators or one or more actuators.
[0113] In some aspects, the techniques described herein relate to an adaptive engine, and the selector module is one or more other possible control signals u SE configured to receive from one or more other control law sub-engines, and the adaptation engine is further configured to receive an exogenous signal, the tensor synchronization and coherence module includes, and the exogenous signal is a possible control signal u SE_k and one or more other possible control signals u SE is applied to smooth the transition between the possible control signals input to the selector module.
[0114] In some aspects, the techniques described herein relate to an adaptation engine, the control law sub-engine is optimized for unstable zero dynamics estimation and stable zero dynamic situations found in non-linear systems, and the estimation law module is configured to achieve fast convergence between stable zero dynamics and unstable zero dynamics estimation.
[0115] In some aspects, the techniques described herein relate to an adaptation engine, the sliding mode predictor is configured to provide a robust prediction that is resistant to one or more of small and non-linear variations, inaccuracies, modeling uncertainties, and perturbations, and the sliding mode predictor is configured to achieve fast convergence while performing non-linear prediction, at least in part, based on reducing or minimizing chattering.
[0116] In some aspects, the techniques described herein are a method of adaptive control, comprising receiving an input regressor, the input regressor including a reference signal r, a system output measurement y meas , and the control output u from the previous iteration out_k-1 including, applying one or more estimation laws to the input regressor to estimate an estimated model parameter tensor Θ for the non-linear model, the non-linear model being a function of the estimated model parameter tensor Θ, the estimated model parameter tensor Θ including the estimated parameters of the non-linear model, and using the control part of the non-linear model to obtain a possible control signal uSE or a control signal u that may be considered as an internal possibility SE_desired generating a (1) linear time-varying (LTV) system W corresponding to a reference signal r m , and (2) a control signal u that may be considered as a possibility SE_k or a control signal u that may be considered as an internal possibility SE_desired receiving a (1) predicted system output y using an estimation part of a non-linear model est_ideal and (2) an estimated system output y est_SE generating one or more than one of (1) and (2), wherein the estimation part and the control part of the non-linear model are at least functions of an estimated model parameter tensor Θ, a control signal u that may be considered as a possibility SE_k and an estimated system output y est_SE transmitting, relating to a method
[0117] In some aspects, the techniques described herein relate to a method, and the estimation part is also a function of the structure of the LTV system W m
[0118] In some aspects, the techniques described herein relate to a method, and the step of generating the predicted system output y est_ideal is further based on applying a control signal u that may be considered as an internal possibility SE_desired to the estimation part of the non-linear model
[0119] In some aspects, the techniques described herein relate to a method, and the step of generating the estimated system output y est_SE is further based on applying a control signal u that may be considered as a possibility SE_k to the estimation part of the non-linear model
[0120] In some aspects, the techniques described herein relate to a method, and an initial LTV system W corresponding to a reference signal r m is used as an initial model for adaptation at the start of each frame, each frame containing a plurality of samples, and the method further includes adapting the LTV system W m including the step of adapting W m which is adapted at one or more samples of the plurality of samples of the corresponding frame.
[0121] In some aspects, the techniques described herein relate to a method, and the LTV system W m includes a strongly positive definite matrix.
[0122] In some aspects, the techniques described herein relate to a method, and further include selecting the best possible control signal u SE_k from a set including the possible control signal u and additional possible control signals, or (2) the best combination of the control signal u SE which is mixed from two or more of the set. SE This includes the step of selecting.
[0123] In some aspects, the techniques described herein relate to a method, and the input regressor further includes an estimation error or a cost function J, and the estimation error or the cost function J is a smoothed and filtered system output measurement y d and (1) the predicted system output y est_ideal (2) the estimated total system output y est_out where the estimated total system output y is calculated based on the control output u out_k-1 from the previous iteration, or (3) the estimated system output y est_out from one of the calculated. est_SE
[0124] In some aspects, the techniques described herein relate to a method, and the estimated model parameter tensor Θ is at least partially based on the estimation error or the cost function J, and the estimation error or the cost function J is (1) the system output measurement y meas, (2) the estimated system output y est_SE , and is calculated from two or more of (3) the reference signal r.
[0125] In some aspects, the techniques described herein are non-transitory computer-readable storage media having instructions embodied thereon, the instructions being executable by one or more processors to perform a method for adaptive control, the method comprising applying one or more estimation rules to an input regressor to estimate an estimated model parameter tensor Θ for a non-linear model, the non-linear model being a function of the estimated model parameter tensor Θ, the estimated model parameter tensor Θ including the estimated parameters of the non-linear model, and using a control portion of the non-linear model to generate a possible control signal u SE or an internal possible control signal u SE_desired generating, (1) a linear time-varying (LTV) system W corresponding to the reference signal r of the input regressor m , and (2) a possible control signal u SE_k or an internal possible control signal u SE_desired receiving, using an estimation portion of the non-linear model, (1) the predicted system output y est_ideal and (2) generating one or more of the estimated system output y est_SE , the estimation portion and the control portion of the non-linear model being at least a function of the estimated model parameter tensor Θ, generating the possible control signal u SE_k and the estimated system output y est_SE transmitting, (1) the possible control signal u SE_k and the best possible control signal u from a set including additional possible control signals SE , or (2) a possible control signal u mixed from two or more of the set SErelates to a non-transitory computer-readable storage medium including the step of selecting the best combination.
[0126] In some aspects, the techniques described herein are an adaptive engine configured to receive a series of reference signals and, in response, provide a control signal to one or more actuator control parameters of a power system, the input regressor
Chemical formula
Chemical formula
[0127] In some aspects, the techniques described herein relate to an adaptive engine, and the power system is configured to ignite and / or sustain a plasma.
[0128] In some aspects, the techniques described herein relate to an adaptive engine, and the adaptation rule generator generates an estimated model parameter tensor for each estimation rule, and the control signals u considered as a plurality of possibilities se are each based on one of the estimated model parameter tensors.
[0129] In some aspects, the techniques described herein relate to an adaptive engine, and the estimated model parameter tensors are each the estimated total system output yest_out Based on the estimated error or cost function J, which is a function of
[0130] In some aspects, the techniques described herein relate to an adaptation engine, and the estimated total system output y est_out is the estimated system output y est_se is based on a combination of
[0131] In some aspects, the techniques described herein relate to an adaptation engine, and the estimated system output y est_se The combination of is the estimated system output y est_se is a weighted average of
[0132] In some aspects, the techniques described herein relate to an adaptation engine, and the selector module is |r - y meas |, |r - y est_out |, or |y meas - y est_out |, and for each possible control signal u se At each time, by calculating the estimated system error or system cost function J out is configured to select the best one among the possible control signals u se where r is the input regressor
Chemical formula
[0133] In some aspects, the techniques described herein relate to an adaptation engine, and the selector module is |r - y meas |, |r - y est_out |, or |y meas - y est_out |, and for each combination, by calculating the estimated system error or system cost function J out to calculate the possible control signal use configured to select the best combination, where r is an input regressor
Chemical formula
[0134] In some aspects, the techniques described herein relate to an adaptive engine, and the best combination is a possible control signal u se selected from the average, weighted average, or sum of two or more of the possible control signals u se among two or more of the topologies.
[0135] In some aspects, the techniques described herein are an adaptive engine that takes an input regressor
Chemical formula
Chemical formula
[0136] In some aspects, the techniques described herein relate to an adaptive engine, and further, control u outincluding one or more actuators of the power system controlled thereby.
[0137] In some aspects, the techniques described herein relate to an adaptive engine, and the power system is configured to ignite and / or sustain a plasma.
[0138] In some aspects, the techniques described herein relate to an adaptive engine, and the estimated system error is based on (1) the measured system output, (2) the estimated system output y est_se , and (3) an input regressor
Chemical formula
[0139] In some aspects, the techniques described herein relate to an adaptive engine, and the adaptation law generator includes a plurality of combinations of an estimation law and a control law, and each combination generates one of the possible control signals u se thereof.
[0140] In some aspects, the techniques described herein relate to an adaptive engine, and the control law implements a control part of a non-linear model and, for each combination, is configured to generate an estimated system output y est_se based on a time-varying linear system.
[0141] In some aspects, the techniques described herein are for an adaptive engine that takes an input regressor
Chemical formula
Chemical formula
Chemical formula
Chemical formula
[0142] In some aspects, the techniques described herein relate to an adaptation engine, and further, include one or more actuators of a power system controlled by a control u out
[0143] In some aspects, the techniques described herein relate to an adaptation engine, and the power system is configured to ignite and / or sustain a plasma.
[0144] In some aspects, the techniques described herein relate to an adaptation engine, and the combinations are an average, a weighted average, a multiplication, or a difference.
[0145] In some aspects, the techniques described herein relate to an adaptation engine, and the input regressors
Chemical formula
[0146] In some aspects, the techniques described herein are adaptive engines configured to receive a reference waveform and provide a control signal to one or more actuators, estimators configured to receive an input regressor, the input regressor including a reference signal r, a system output measurement y meas , an estimated system output y for the previous iteration est_out_k-1 , an estimated delay, and a control output u from the previous iteration out_k-1 , the estimator module applying one or more estimation rules to the input regressor to generate a plurality of estimated model parameter tensors Θ for a non-linear model, calculating an estimation error or cost function J using the system output measurement y meas and the estimated system output y for the previous iteration est_out_k-1 , and being configured to determine a model order based at least in part on the estimation error or cost function J and the estimated delay, an estimator module, a control law sub-engine including a first control law module and a second control law module, and a control law selector and combiner (CSC) configured to receive possible control signals u SE_k from each of the first and second control law modules, the non-linear model being configured to generate an estimated system output y SE_k-1 based on applying the non-linear model to (1) a possible control signal u for the previous iteration SE_k or (2) a possible control signal u est_SE , the CSC being configured to select two or more possible control signals u based at least in part on prediction errors derived from each of the possible estimated system outputs y est_SE SE_k Regarding an adaptive engine, including a control law selector and combiner (CSC) configured to provide one or a combination thereof to a selector module.
[0147] In some aspects, the techniques described herein relate to an adaptive engine, and the control signals u that are possible from each of the first and second control law modules SE_k is the feedforward control signal u FF_k and the control signal u corresponding to a proportional-integral-derivative (PID) adjustment control law PID_k are based on.
[0148] In some aspects, the techniques described herein relate to an adaptive engine, and the first control law module determines a plurality of controller parameters and maps a first estimated model parameter tensor Θ from a plurality of estimated model parameter tensors to the plurality of controller parameters, maps the plurality of controller parameters to a plurality of coefficients for a non-linear model, or performs more than one of these, and is configured to estimate a plurality of coefficients for a non-linear model based at least in part on determining and mapping the plurality of controller parameters.
[0149] In some aspects, the techniques described herein relate to an adaptive engine, and the first control law module determines an estimated process model based on a first estimated model parameter tensor Θ, a plurality of controller parameters, and an input regressor, the estimated process model including a plurality of coefficients for a non-linear model and a model order, and uses the estimated process model to generate a possible estimated system output y est_SE configured to be generated.
[0150] In some aspects, the techniques described herein relate to an adaptive engine, where a second control law module determines whether a model order corresponds to a minimum estimated error or a minimum cost function J, and in response to determining that the model order corresponds to the minimum estimated error or the minimum cost function J, determines an estimated model parameter tensor Θ from a plurality of estimated model parameter tensors based on the model order and the estimated error or cost function J, and determines an estimated system output y based on the model order from the plurality of estimated model parameter tensors and the estimated model parameter tensor Θ est_SE configured to generate.
[0151] In some aspects, the techniques described herein relate to an adaptive engine, where the second control law module further maps the estimated model parameter tensor Θ to a plurality of coefficients for a non - linear model, and at least partially maps a plurality of controller parameters to the plurality of coefficients for the non - linear model based on the model order, and uses the plurality of coefficients for the non - linear model, the plurality of controller parameters, and the estimated delay to generate a possible control signal u SE_k configured to generate.
[0152] In some aspects, the techniques described herein relate to an adaptive engine, where a first control law module includes a control - after - output - estimation (CTOE) module, and a second control law module includes an output - estimation - after - control (OETC) module.
[0153] In some aspects, the techniques described herein relate to an adaptive engine, where the estimated system output y for the first control law module est_SE is based on the step of applying a possible control signal u from a previous iteration SE_k-1 to a non - linear model.
[0154] In some aspects, the techniques described herein relate to an adaptive engine, where a possible control signal u from the second control law module SE_kis based, at least in part, on an estimated system output y for the current iteration est_SE thereof.
[0155] In some aspects, the techniques described herein relate to an adaptive engine and further include a non-linear compensator coupled between a control law sub-engine and a CSC, the non-linear compensator compensating for non-linearity in one or more of a possible control signal u SE and an estimated system output y corresponding to each of the first and second control law modules est_SE thereof.
[0156] In some aspects, the techniques described herein relate to an adaptive engine, the non-linear model including a control part and an estimation part, the control part and the estimation part each being a function of a plurality of estimated parameter tensors Θ.
[0157] In some aspects, the techniques described herein relate to an adaptive engine, the estimation part also being a function of the structure of a time-varying linear system W m thereof.
[0158] In some aspects, the techniques described herein relate to an adaptive engine, one or more estimation rules being a function of an estimation error or a cost function J.
[0159] In some aspects, the techniques described herein relate to an adaptive engine, the selector module being configured to receive one or more other possible control signals u SE from one or more other control law sub-engines, the selector module further including a tensor synchronization and coherence module configured to receive an exogenous signal, the exogenous signal being applied to two or more possible control signals u SE_k and one or more other possible control signals u SE and the possible control signal u input to the selector moduleSE Smooths the transitions between.
[0160] In some aspects, the techniques described herein are methods of adaptive control that include receiving an input regressor that includes a reference signal r, a system output measurement y meas , an estimated system output y for the previous iteration est_out_k-1 , an estimated delay, and a control output u from the previous iteration out_k-1 , applying one or more estimation rules to the input regressor to estimate a plurality of estimated model parameter tensors Θ for a non-linear model, where the non-linear model is a function of the plurality of estimated model parameter tensors Θ, and each estimated model parameter tensor Θ includes the estimated parameters of the non-linear model, and using the system output measurement y meas and the estimated system output y for the previous iteration est_out_k-1 to calculate an estimation error or cost function J, determining a model order based at least in part on the estimation error or cost function J and the estimated delay, and receiving, respectively, using corresponding control portions of the non-linear model, two or more potentially considered control signals u SE_k , where each control portion is a function of one of the plurality of estimated model parameter tensors Θ of the non-linear model, and generating, respectively, using corresponding estimation portions of the non-linear model, two or more estimated system outputs y est_SE , where each estimation portion is a function of one of the plurality of estimated model parameter tensors Θ, and selecting the best possible control signal u SE_k from a set that includes at least two or more potentially considered control signals u SE , or (2) the best combination of potentially considered control signals u mixed from two or more of the set SE . Related to a method that includes.
[0161] In some aspects, the techniques described herein relate to a method, and the step of selecting is based, at least in part, on a predicted error derived from each of the potentially considered and presumed system outputs y est_SE of the system.
[0162] In some aspects, the techniques described herein relate to a method, and each of the estimation portions is also a function of the structure of a time-varying linear system W m such that each of one or more estimation rules is a function of the estimation error or cost function J.
[0163] In some aspects, the techniques described herein relate to a method, and each potentially considered control signal u SE_k is based on a feedforward control signal u FF_k and a control signal u corresponding to a proportional-integral-derivative (PID) adjustment control law. PID_k
[0164] In some aspects, the techniques described herein are a non-transitory computer-readable storage medium having instructions embodied thereon, the instructions being executable by one or more processors to perform a method for adaptive control, the method comprising receiving an input regressor, the input regressor comprising a reference signal r, a system output measurement y meas a presumed system output y for a previous iteration est_out_k-1 a presumed delay, and a control output u from a previous iteration out_k-1 and applying one or more estimation rules to the input regressor to estimate a plurality of presumed model parameter tensors Θ for a non-linear model, the non-linear model being a function of the plurality of presumed model parameter tensors Θ, each presumed model parameter tensor Θ comprising the presumed parameters of the non-linear model, and a system output measurement y meas and a presumed system output y for a previous iteration est_out_k-1Using to calculate an estimation error or a cost function J; determining a model order based at least in part on the estimation error or cost function J and an estimated delay; and respectively using corresponding control portions of a non-linear model for two or more control signals u that may be considered SE_k Received, where each control portion is a function of one of a plurality of estimated model parameter tensors Θ of the non-linear model; and respectively using corresponding estimation portions of the non-linear model for two or more estimated system outputs y est_SE Generated, where each estimation portion is a function of one of a plurality of estimated model parameter tensors Θ; and (1) the best possible control signal u considered from a set including two or more control signals u SE_k Or (2) the best combination of control signals u considered as being mixed from two or more of the set. SE Selecting, related to a non-transitory computer-readable storage medium. SE In some aspects, the techniques described herein relate to a non-transitory computer-readable storage medium, where each possible control signal u
[0165] Is based on a feedforward control signal u SE_k And a control signal u corresponding to a proportional-integral-derivative (PID) tuning control law. FF_k PID_k PID_k Based on.
[0166] In some aspects, the techniques described herein are an adaptive engine configured to receive a reference waveform and provide a control signal to one or more actuators, and an estimation rule module configured to receive an input regressor, where the input regressor includes a reference signal r, a system output measurement y meas And a control output u from a previous iteration. out_k-1including an estimation rule module configured to apply one or more estimation rules to an input regressor and generate two or more estimated model parameter tensors Θ for one or more actuators or a non-linear model of a power system controlled by one or more actuators, an estimation rule module, a control rule sub-engine including a first control rule module and a second control rule module, and a possible control signal u coupled to the outputs of the first and second control rule modules SE_k a control rule selector and combiner (CSC) configured to receive from each of the first and second control rule modules a possible control signal u SE_k-1 either (1) a possible control signal u from a previous iteration SE_k or (2) a possible control signal u est_SE is configured to generate two or more possible estimated system outputs y est_SE by applying to the non-linear model, and the CSC is configured to provide to a selector module at least in part one or a combination of two or more possible control signals u SE_k derived from each of the possible estimated system outputs y. Relates to an adaptation engine including a control rule selector and combiner (CSC).
[0167] In some aspects, the techniques described herein relate to an adaptation engine, and the control rule sub-engine further includes a third control rule module.
[0168] In some aspects, the techniques described herein relate to an adaptive engine, where a first control law module includes an Adaptive Inverse Law (AIL) module configured to receive a first estimated model parameter tensor from an estimation law module, a second control law module includes an Eigen Law (EL) module configured to receive a second estimated model parameter tensor from the estimation law module, and a third control law module includes a Penalty Law (PL) module configured to receive a third estimated model parameter tensor from the estimation law module.
[0169] In some aspects, the techniques described herein relate to an adaptive engine, and the step of applying the AIL control law module is a step of calculating one or more of the measurement error e and the cost function J, where the measurement error e is |y meas - r|, and the cost function J is y meas , a control signal u that may be considered as a possibility for a previous iteration for the AIL control law module SE_k-1 , a control output u from a previous iteration out_k-1 Based on one or more of these and one or more of the measurement error e and the cost function J, calculating a first estimated model parameter tensor Θ, where |y est - r|, the step of passing one or more of the measurement error e, the cost function J, a control signal u that may be considered as a possibility for a previous iteration for the AIL control law module SE_k-1 , and a control output u from a previous iteration out_k-1 through a smoothing inverse filter, and passing one or more of a control signal u that may be considered as a possibility for a previous iteration for the AIL control law module SE_k-1 and a control output u from a previous iteration out_k-1 through a smoothing filter.
[0170] In some aspects, the techniques described herein relate to an adaptive engine, and the step of applying the AIL control law module further includes, at least in part, a linear system representation of the reference signal r, an internal model Qm representing the desired or reference plasma process performance, the control output u from the previous iteration out_k-1 , and one or more or more of the measurement error e and the cost function J, a possible control signal u corresponding to the AIL control law module SE_k .
[0171] In some aspects, the techniques described herein relate to an adaptive engine, and a possible control signal u corresponding to the AIL control law module SE_k is applied to a non-linear model to calculate a possible estimated system output y corresponding to the AIL control law module est_SE .
[0172] In some aspects, the techniques described herein relate to an adaptive engine, and the step of applying the EL module includes the step of calculating an estimated output error and, at least in part, an internal model Qm representing the desired or reference plasma process performance, a linear time-varying (LTV) signal corresponding to the reference signal r, the estimated output error, and a possible control signal u corresponding to the EL module based on the second estimated model parameter tensor Θ SE_k .
[0173] In some aspects, the techniques described herein relate to an adaptive engine, and the step of applying the PL module includes the step of calculating an estimated output error and, at least in part, a possible control signal u based on the penalty tensor R, the estimated output error, the third estimated model parameter tensor Θ, and an internal model Qm representing the desired or reference plasma process performance SE_k .
[0174] In some aspects, the techniques described herein relate to an adaptive engine, and a possible control signal u corresponding to the PL module SE_k is applied to a non-linear model, and a possible estimated system output y corresponding to the PL module est_SE is calculated.
[0175] In some aspects, the techniques described herein relate to an adaptive engine, and a penalty and an intrinsic control law module are used in parallel with respect to the adaptive engine.
[0176] In some aspects, the techniques described herein relate to an adaptive engine, and the CSC selects one or a combination of possible control signals u output from each of the EL, PL, and AIL modules that are predicted to minimize the error SE_k among them.
[0177] In some aspects, the techniques described herein relate to an adaptive engine, and a selector module is configured to receive one or more other possible control signals from one or more other control law sub-engines, and the selector module is further configured to receive an exogenous signal, and includes a tensor synchronization and coherence module, and the exogenous signal is applied to a possible control signal u SE_k and one or more other possible control signals, and smooths the transition between the possible control signals input to the selector module.
[0178] In some aspects, the techniques described herein relate to an adaptive engine, and the tensor synchronization and coherence module calculates an estimated output error, at least in part, based on an exogenous signal.
[0179] In some aspects, the techniques described herein relate to an adaptive engine, and an estimation rule module is optimized for unstable zero dynamic situations found in non-linear systems.
[0180] In some aspects, the techniques described herein relate to an adaptive engine, and the inference rule module is configured to achieve fast convergence between stable and unstable zero dynamics.
[0181] In some aspects, the techniques described herein are methods of adaptive control, comprising receiving an input regressor, the input regressor comprising a reference signal r, a system output measurement y meas , and a control output u from a previous iteration out_k-1 , applying one or more inference rules to the input regressor to estimate two or more estimated model parameter tensors Θ for a non-linear model, the non-linear model being a function of two or more estimated model parameter tensors Θ, each of the two or more estimated model parameter tensors Θ comprising an estimated parameter of the non-linear model, using the respective control portion of the non-linear model to receive two or more possible control signals u SE_k , each control portion being a function of one of the two or more estimated model parameter tensors Θ of the non-linear model, using the respective estimation portion of the non-linear model to generate two or more estimated system outputs y est_SE , each estimation portion being a function of one of the two or more estimated model parameter tensors Θ, and selecting the best possible control signal u from a set comprising (1) at least a first possible control signal and a second possible control signal, or (2) the best combination of possible control signals u mixed from two or more of the set. SE SE
[0182] In some aspects, the techniques described herein relate to a method, where each estimation component is also a function of the structure of the time-varying linear system W m and one or more estimation rules are each a function of an estimation error or a cost function J.
[0183] In some aspects, the techniques described herein relate to a method, and the steps of generating each of two or more possible estimated system outputs y est_SE further include applying a non-linear model to (1) a control signal u that is considered a possibility from a previous iteration from one of two or more control components SE_k-1 or (2) a control signal u that is considered a possibility from one of two or more control components. SE_k This is based on the step of applying it.
[0184] In some aspects, the techniques described herein are non-transitory computer-readable storage media having instructions embodied thereon, where the instructions are executable by one or more processors to implement a method for adaptive control, and the method includes receiving an input regressor, where the input regressor includes a reference signal r, a system output measurement y meas , and a control output u from a previous iteration out_k-1 , and applying one or more estimation rules to the input regressor to estimate two or more estimated model parameter tensors Θ for the non-linear model, where the non-linear model is a function of the two or more estimated model parameter tensors Θ, and the two or more estimated model parameter tensors Θ each include the estimated parameters of the non-linear model, and using the corresponding control parts of the non-linear model respectively, for two or more possible control signals u SE_kA step of receiving, wherein each control part is a function of one of two or more estimated parameter tensors Θ of a non-linear model, and respectively using the corresponding estimation part of the non-linear model to generate two or more estimated system outputs y est_SE A step of generating, wherein each estimation part is a function of one of two or more estimated model parameter tensors Θ, and (1) at least a control signal considered as the first possibility and a control signal considered as the second possibility, the best possible control signal u from a set, SE or (2) a control signal u considered as a possibility mixed from two or more of the set SE selecting the best combination of, relating to a non-transitory computer-readable storage medium.
[0185] In some aspects, the techniques described herein relate to a non-transitory computer-readable storage medium, and each estimation part is also a function of the structure of a time-varying linear system W m where one or more estimation rules are each a function of an estimation error or a cost function J.
Brief Description of the Drawings
[0186] Various objects and advantages of the present disclosure and a more complete understanding will become apparent and be more readily understood by referring to the following detailed description and the appended claims when considered in conjunction with the accompanying drawings.
[0187]
Figure 1
[0188]
Figure 2
[0189]
Figure 3
[0190]
Figure 4
[0191]
Figure 5A
[0192]
Figure 5B
[0193]
Figure 5C
[0194]
Figure 6
[0195]
Figure 7
[0196]
Figure 8A
[0197]
Figure 8B
[0198]
Figure 9
[0199]
Figure 10A
[0200]
Figure 10B
[0201]
Figure 11A
[0202]
Figure 11B
[0203]
Figure 11C
[0204]
Figure 12
[0205]
Figure 13A
[0206]
Figure 13B
[0207]
Figure 13C
[0208]
Figure 14
[0209]
Figure 15
[0210]
Figure 16
[0211]
Figure 17A
[0212]
Figure 17B
[0213]
Figure 18
[0214]
Figure 19
[0215]
Figure 20
[0216]
Figure 21
[0217]
Figure 22
[0218]
Figure 23
[0219]
Figure 24
[0220]
Figure 25
[0221]
Figure 26
[0222]
Figure 27
[0223]
Figure 28
[0224]
Figure 29
[0225]
Figure 30
[0226]
Figure 31
[0227]
Figure 32
[0228]
Figure 33
[0229]
Figure 34
[0230]
Figure 35
[0231]
Figure 36
[0232]
Figure 37
[0233]
Figure 38
[0234]
Figure 39
[0235]
Figure 40
[0236]
Figure 41
[0237]
Figure 42
[0238]
Figure 43
[0239]
Figure 44A
[0240]
Figure 44B
[0241]
Figure 44C
[0242]
Figure 45
[0243]
Figure 46
[0244]
Figure 47
[0245]
Figure 48
[0246]
Figure 49
[0247]
Figure 50
[0248]
Figure 51
[0249]
Figure 52
[0250]
Figure 53
[0251] Detailed Description A tensor is a multi-dimensional array with a homogeneous type. In other words, a tensor is an algebraic object that describes a multilinear relationship between sets of algebraic objects associated with a vector space. The objects between which a tensor can be mapped include vectors, scalars, and even other tensors. An example of a zero-order tensor is a fixed power setpoint, while a first-order tensor is a vector such as a phasor that represents a phase shift between two waveforms (e.g., voltage and current). A second-order tensor is a matrix, and in cases where two matrices are used to represent the estimated future values of reflected power and load impedance at two future times, multiplying those matrices together can be used as a simplified mathematical operation for predicting the trajectories of reflected power and load impedance into the future. As can be understood, tensors provide a way to simplify complex sets of data and mathematical operations, which not only helps simplify the complex MIMO applications in the present disclosure, but also enables more efficient use of parallel processing and limited processing resources for predicting non-linear dynamics within power and plasma systems.
[0252] The index “k” would be used to define the iteration such that the timing of the generalized variable can be described using the addition of k. For example, the control regarding the previous iteration is u out_k-1 while, regarding the current iteration, it can be shown as u out_k This exemplary use of the iteration index k is used across all variables and can provide clarity when discussions of multiple iterations of the same variable are needed; otherwise, the generalized version of the variable would not use the iteration index k.
[0253] For the purposes of the present disclosure, the estimation error
Chemical formula
Chemical formula
Chemical formula
Chemical formula
Chemical formula
[0254] Conventional control systems often use a reference signal r and the measured value y of the delivered power measConsidering the error e with respect to [target], a control u proportional to the error e is generated. However, such control can be troubled by problems, especially when presented with non-linearity and unknown disturbances among other issues. To address systems with non-linearity, uncertainty, linearity with uncertainty, and unknown variations in plant parameters, adaptive control has been developed. The basic aim of adaptive control is to maintain consistent performance of the system in the presence of uncertainty or unknown variations in plant parameters, but to adapt to changes in the performance of the control system as the controller parameters change. Therefore, there is an adaptation in the controller settings according to the performance of the closed-loop system. The way the controller parameters change is determined by the adaptation law, which is often designed based on the stability analysis of the adaptive control system. out Some design methods have been developed for adaptive control. Model Reference Adaptive Control (MRAC) consists of a reference model, which generates a desired output, and the difference between the plant output and the reference output is then used directly to adjust the control parameters and the control input. MRAC is often used for deterministic plants in the time domain. Self-Tuning Control (STC) estimates the system parameters and then calculates the control input from the estimated parameters. STC is often for probabilistic plants in discrete time. Furthermore, STC often has a separate identification procedure for the estimation of system parameters and is referred to as indirect adaptive control, while MRAC adapts to changes in the controller parameters and is referred to as direct adaptive control. However, the development of a general robust adaptive controller remains an unsolved problem at present (Martin Guay et al. Robust and Adaptive Model Predictive Control of Nonlinear Systems, Control, Robotics and Sensors Series 83, page 76).
[0255] Some design methods have been developed for adaptive control. Model Reference Adaptive Control (MRAC) consists of a reference model, which generates a desired output, and the difference between the plant output and the reference output is then used directly to adjust the control parameters and the control input. MRAC is often used for deterministic plants in the time domain. Self-Tuning Control (STC) estimates the system parameters and then calculates the control input from the estimated parameters. STC is often for probabilistic plants in discrete time. Furthermore, STC often has a separate identification procedure for the estimation of system parameters and is referred to as indirect adaptive control, while MRAC adapts to changes in the controller parameters and is referred to as direct adaptive control. However, the development of a general robust adaptive controller remains an unsolved problem at present (Martin Guay et al. Robust and Adaptive Model Predictive Control of Nonlinear Systems, Control, Robotics and Sensors Series 83, page 76).
[0256] The present disclosure presents an updated adaptive engine that can combine the effects from multiple estimation rules in a manner that addresses certain issues of input waveforms and / or systems to be controlled, such as non-linear systems, systems with uncertainties, linear systems, and systems with unknown variations in plant parameters. Further, the changes to the hybridization of these effects are adjusted in real-time and can handle the often almost instantaneous changes found in non-linear systems.
[0257] Referring to FIG. 4, shown is a block diagram depicting aspects of a predictive and tensorial control approach that can be utilized in connection with a plasma processing system 400 (however, systems other than the plasma load can also be controlled by actuator 408). Shown in FIG. 4 is an adaptive engine 420, which is coupled to user interfaces 108, one or more actuators 408, and sensors 410. Also coupled to the adaptive engine 420 is a delay / amplitude estimator 404. As further discussed herein, the delay / amplitude estimator 404 may be further separated into functional sub-components or unified, and the functionality of the delay / amplitude estimator 404 may be implemented in a pipelined approach or executed sequentially, about which those skilled in the art will understand in light of the present disclosure.
[0258] Referring to FIG. 4 while simultaneously referring to FIG. 3, this is a flowchart depicting steps that should be taken in connection with embodiments of the present disclosure. The user interface 108 is configured to receive a reference signal r that defines a target value (or reference signal) for one or more controlled parameters applied to one or more controlled outputs within the system (block 302). In other words, the reference signal r can be an n-dimensional entity, where n > 0. For example, a one-dimensional reference signal r is more typically referred to as a reference signal. In some embodiments, r can also refer to a series of setpoints or a stream of setpoints. The target value can represent a multi-level pulsed waveform or any waveform. As shown, the controlled output within system 400 may include a load output 430, which is a node coupled to a non-linear and / or disorderly load 104, and / or the controlled output may include one or more actuator outputs 432. In other words, the adaptation engine 420 may be used to control one or more controlled parameters at the load output 430, which may include, for example, but not limited to, power-related parameters such as DC power, forward power, reflected power, reflection coefficient, frequency, and current. Additionally, the adaptation engine 420 may be used to control the controlled parameters applied at the actuator output 432. The controlled parameters applied at the actuator output 432 may include the power-related parameters listed above (in relation to output 430 (load output)) and control-related parameters such as a phase control signal, a frequency control signal, and a voltage control signal. Additionally, one or more particular actuator outputs 432 may be fed as input 434 to one or more other actuators 408. The actuator outputs 432 need not have similar response times. For example, but not limited to, one actuator drives a high-speed power supply and a second actuator drives a slower rail voltage.
[0259] As shown, at least one sensor 410 is configured to obtain measured values of parameters such as the power-related parameters and control-related parameters listed above (block 304). The at least one sensor 410 may include, for example, but not limited to, a directional coupler, a VI sensor, a current transducer, and a simple voltage sensor. Those skilled in the art will understand that the signal from the at least one sensor 410 may be sampled and converted into a digital format for use by the adaptation engine 420.
[0260] The delay / amplitude estimator 404 is configured to calculate the delay between the target value of the reference signal 405 and the corresponding actual parameter value achieved at the controlled output (i.e., the measured system output) (block 306). The delay / amplitude estimator 404 is also configured to provide a time-shifted amplitude error 452 indicative of the error between the target value and the actual parameter value, based on the delay (block 308). According to one aspect, the adaptation engine 420 is advantageously configured to adjust at least one of the actuators 408 prior to when the actual parameter value is required (at the actuator output of at least one of the actuators 408), while maintaining the controlled parameter at the controlled output within a threshold range based on the delay (delay 450 in block 306) and the time-shifted amplitude error 452 (in block 308) (block 301).
[0261] Referring briefly to FIG. 45, for example, shown is an actuator output 4534 (e.g., rail voltage V rail) An embodiment in which the desired reference signal comprises three pulses, each pulse including three target values (desired in the controlled output for the controlled parameter), namely, state 1, state 2, and state 3. Each state of the desired reference signal corresponds to a target value of the controlled parameter at the output 430 (e.g., forward power). As shown, during pulse 1, the actuator output 4534 is adjusted in very close connection with the time it is required, i.e., at t1, when there is a change in the reference signal from state 1 to state 2. However, during pulse 2, the actuator output is adjusted prior to t2 when the actuator output 4534 needs to be increased to generate the target value for state 2 at the output 430. As a result, the controlled parameter (e.g., forward power) in the controlled output (e.g., load output 430) will reach the desired reference signal faster than previous control methodologies that attempt to minimize energy dissipation (using actuator output 4562) and faster than previous methods that attempt to maximize the speed of response (using actuator output 4564). The predictive functionality of the delay / amplitude estimator 404 enables the adaptive engine 420 to predict the effect of adjusting the actuator (e.g., rail voltage) prior to when it is required so that harmful results (e.g., reference signal error or overvoltage conditions) are avoided.
[0262] Referring to FIGS. 44A, 44B, and 44C, for example, shown are three graphs, each of which depicts the same desired reference signal shown in FIG. 45 with the same three desired states / pulses. FIG. 44A depicts the controlled parameters actually achieved in the controlled output using the predictively generated actuator output 4534, FIG. 44B depicts the controlled parameters actually achieved in the controlled output using the actuator output 4562, and FIG. 44C depicts the controlled parameters actually achieved in the controlled output using the actuator output 4564. As shown in FIG. 44A, the controlled parameter is closer to the desired reference signal during pulse 2 when the controlled actuator is controlled to generate the actuator output 4534 compared to both of the controlled parameter values in FIGS. 44B and 44C (prior to when it is required).
[0263] As further discussed herein, the delay / amplitude estimator 404 may be implemented with different levels of complexity, but generally, the delay / amplitude estimator 404 is configured to detect a delay 450 between a desired reference signal (from the user interface 108) and the time at which the actual output of one or more actuators 408 reaches the reference signal. As further discussed herein, the reference may be a time-varying streaming reference signal (e.g., a reference signal that reflects the pulses and states in FIG. 2), and as further discussed herein, the delay 450 may be determined based on the cross-correlation between the streaming reference signal and the actual time-varying output of one or more actuators 408 within the system. Further, as further discussed herein, the delay 450 may be a delay 450 based on several configurational delay components, including, for example, a simple delay (e.g., between the reference signal and the output when the reference signal is achieved), or a delay within the actuator 408 and / or an external delay outside of the actuator 408. By using knowledge of the delay 450, the delay / amplitude estimator 404 can generally determine a time-shifted amplitude error 452, which is based on the difference between the streaming reference signal and the output, after the streaming input waveform and the output waveform are relatively time-shifted (based on the delay 450) such that a portion of the output waveform is aligned with the corresponding portion of the reference signal that gave rise to that portion of the output waveform. Once the output waveform is aligned with the streaming reference signal, an error value, represented as the time-shifted amplitude error 452, may be calculated.
[0264] The adaptive engine 420 utilizes the delay 450 and the time-shifted amplitude error 452 to predict how the control signal and / or the actuator output will respond to potential control signal changes prior to actually changing the control signal. By predicting how the actuator output will be affected (prior to actually changing the control signal to the actuator 408), the adaptive engine 420 can adjust the control signal to achieve the desired result. For example, based on the predicted control signal output, the adaptive engine 420 can adjust the control output to reduce the time taken to achieve the desired output of the actuator, reduce energy dissipation, prevent overvoltage and / or overcurrent conditions that cause damage, and / or achieve any desired balance between speed, accuracy, and energy.
[0265] It should be appreciated that FIG. 4 is a simplified depiction of what can be implemented at the tensor level with many reference signals, many control signals, and many actuators 408. Also, it should be appreciated that the actuators can be higher level actuators (generators, matching networks, RF sources, bias supplies, etc.) and lower level structures within the higher level actuators. For example, the DC section and the power amplifier are examples of actuators within a generator that can be controlled, as further discussed herein as non-limiting examples. As a further example, the voltage of the DC section may be controlled and the frequency of the power amplifier may be controlled using the adaptive engine 420.
[0266] As another example, the matching network 116 is an example of an actuator 408, which can also be controlled using the delay estimation and predictive control aspects of the delay / amplitude estimator 404 and the adaptive engine 420, respectively, and includes an actuator such as a variable capacitor. For example, it is contemplated that the variable capacitor of the matching network 116 may be controlled separately (e.g., based on reflected power) or in relation to the variable frequency drive of the generator 102 using the delay / amplitude estimator 404 and the adaptive engine 420. As a further example, the bias supply 120 is an actuator 408, and the bias supply 120 includes an actuator 408 such as a power supply (e.g., for establishing a rail voltage) and a switching section for establishing the timing of a periodic asymmetric voltage waveform. These actuators 408 of the bias supply may be controlled (using the estimation and prediction techniques of the delay / amplitude estimator 404 and the adaptive engine, respectively) to control the bias supply 120. Or, other actuators of the bias supply are controlled in light of other actuators such as the RF source 118 and / or the generator 102 to synchronize the bias supply 120, the RF source 118, and / or the generator 102 to achieve the desired plasma processing recipe results and / or prevent unwanted plasma modulation (e.g., due to intermodulation frequencies).
[0267] More generally, various aspects of delay estimation and predictive control and / or adaptive control can enable control without direct interference (or without response delay) of parallel multi-actuator or multi-node non-linear control systems (such as plasma processing systems 100, 400, etc.). A controller that utilizes delay estimation, prediction, and / or adaptation can enable higher responsiveness (e.g., maximizing the dynamic range in real time) and adaptability of parallel multi-actuator non-linear and / or chaotic control systems. Further, the delay estimation and prediction aspects and the adaptation aspect of the present disclosure can enable improved control of parallel multi-actuator non-linear and / or chaotic control systems (e.g., maximizing the speed of response, achieving the shortest response time, reaching a desired reference signal value while also enabling stability and robustness). The delay estimation and prediction aspects and the adaptation aspect can also enable all of the above functions and advantages to be achieved even when some of the actuators of the control system are optionally slower than other actuators of the control system.
[0268] Another aspect of the delay estimation and prediction and / or adaptive control of the present disclosure enables all of the above functions and advantages to be achieved when multi-level pulsing with several states (increasing to any number) is desired and / or when any waveform tracking is required on non-linear and / or chaotic dynamic loads. Yet another aspect may also enable all of the above functions and advantages to be achieved while minimizing the control energy expended within the system. As further discussed herein, the delay estimation and prediction control aspects and / or the adaptive aspects may also enable all of the above functions and advantages to be achieved while protecting the hardware from impairments associated with high dissipation, high current, and / or high voltage. Further, another aspect of the delay estimation and prediction control and / or the adaptive methodology may also ensure that all different actuators cooperate and function together, even in a manner that does not control itself in such a way as to slow down the system response or require more energy to be achieved from any other actuator, inhibit, interfere with, or disrupt the control of other actuators.
[0269] Adaptive engine
[0270] At a high level, the adaptive engine splits or branches the adaptive control for a highly non-linear and / or chaotic system such as a power supply for plasma processing. The adaptive engine starts with a non-linear model of one or more actuators and / or a power system controlled by one or more actuators and defines two outputs of this non-linear model, i.e., one is for the control u se and one is the estimated system output y se based on that control u est_seIt is for these purposes. Two parts of the non-linear model that achieve these outputs can be referred to as the control part and the estimation part. As will be discussed later, there are different ways to represent these two parts, but for illustrative purposes, one form of the control and estimation parts of the non-linear model can be described as follows.
[0271]
Chem.
[0272]
Chem.
[0273] The control part can include the estimated parameter values for the non-linear model, referred to as the estimated model parameter tensor Θ, and input regressors that can include elements such as the reference waveform r.
Chem.
[0274]
Chem.
[0275] where x is the internal state, and A, B, and C are matrices whose structure defines the characteristics of the non-linear model and whose elements can include 1, 0, Θ, and fixed coefficients. In some cases, the structure may include changing the elements from Θ to fixed coefficients if it is known that the adaptation of the principal elements of the estimated model parameter tensor Θ is not required or does not provide a significant improvement. The A, B, and C matrices, and possibly the control signal u seBy using the knowledge of the values related, it can be seen that the present system can be solved for the estimated system output y est_se More specifically, it is as follows.
[0276] [Chemical formula]
[0277] Therefore, W m {u se} is [Chemical formula] By integrating, it is connected to y est_se
[0278] C can vary, but in some embodiments, C can be the identity matrix for improved performance. At the start of each frame, x can take the last value of x from the previous frame.
[0279] The present disclosure improves existing non - linear modeling techniques by branching the time - varying linear system W m into linear and non - linear parts. The non - linear part is unknown, and the adaptive control of the present disclosure seeks to minimize this unknown non - linear part through the adaptation of the linear part. The adaptation of the linear part can also be branched through the use of frames. The reference signal r can be divided into frames, and each frame potentially has a different number of control samples or iterations so as to enable a time - varying linear approximation of the non - linear system behavior resulting from the reference signal r for that frame. Therefore, the length of each frame is selected to optimize the linear approximation. The time - varying linear approximation or W m has a structure that is selected for each frame as described above. This structure or the structure of the A, B, and C matrices determines the large - scale change or shape of the model. However, the time - varying linear system W mIt is also a function of the estimated model parameter tensor Θ, which is modified or adapted at each control sample or iteration of the adaptation engine. Thus, the time-varying linear system W m has a constant structure throughout the frame, but Θ varies, and thus W m varies. These changes resulting from the adaptation of Θ tend to be small compared to the changes resulting from a structural change. Thus, the adaptation of the estimated model parameter tensor Θ enables small non-linear variations in the system behavior to be modeled and processed in real time, while larger variations in the system behavior are modeled by a change in the W m structure, which changes all frames. Since the structure changes only on a per-frame basis, these values can be pre-processed and the processing resources can be used with less power than that required to process the adaptation of the estimated model parameter tensor Θ. For example, the structure of the time-varying linear system W m can be processed on a CPU, while the adaptation of the estimated model parameter tensor Θ can be processed in real time on an FPGA.
[0280] At the start of each frame, the estimated model parameter tensor Θ starts from a set of initial conditions, and thus the time-varying linear system W m , and thus the non-linear model can form a very rough approximation of the non-linear system behavior (i.e., some error from the actual system behavior may be recognized in the output of the model). However, the adaptation engine infers and tests or adapts the values for the estimated parameter tensor Θ during multiple control samples or iterations, and as this occurs, the time-varying linear system W m becomes an increasingly better approximation of the non-linear system behavior until the error (or the unknown non-linear part of W m ) falls below a threshold, where W mis considered to have converged and no further adaptation is required (i.e., no further changes to Θ are made). In other words, the adaptation engine preprocesses different non-linear approximations (depending on Θ) of the system's non-linear behavior for each frame and then within each frame, and the adaptation engine adjusts the non-linear approximation through adaptation of the estimated model parameter tensor Θ to bring the linear approximation even closer into alignment with the system's non-linear behavior. The real-time adaptation of the linear approximation (structure of matrices A, B, and C) on a per-frame basis and the estimated model parameter tensor Θ of the time-varying linear approximation enables different processing resources to be applied to their best functions, i.e., slower resources such as a CPU can process the structure of the time-varying linear system at a slower pace, and faster resources such as an FPGA can process the adaptation or modification (through Θ) of the time-varying linear system within each frame at a faster pace. This branch enables faster and more robust convergence on non-linear behavior than what is possible within existing adaptation controllers.
[0281] Figure 43 shows a plot illustrating the concept of a branched model for the estimation part. In this plot, the model output is power, which can be estimated using the estimated part of the model that depends on W m and u se although other outputs can also be handled by the models of the present disclosure. The time-varying linear system W m can be branched into a linear (dashed line) and a non-linear part (solid line). The linear part is denoted as W m_linear (u se , Θ) and can depend on the estimated model parameter tensor Θ and the possible control signal u se both of which vary for each control sample or iteration and the structure of this linear part changes with each new frame. The unknown non-linear part is denoted as W m_nonlinearDenoted as (k), it can oscillate with all control samples or iterations due to the adaptation of the presumed model parameter tensor Θ. However, this oscillation becomes smaller as the linear part is adapted and the non - linear model becomes an increasingly better approximation of the actual non - linear system behavior. As the adaptation improves, the time - varying linear system W m the unknown non - linear part W m_nonlinear (k) becomes small enough to be ignored. In other words, the structure of the linear part does not change within the frame, but its overall impact on the model output surely changes as the adaptation of Θ better aligns the linear part with the non - linear behavior of the system. Thus, at the start of each frame, the non - linear part is likely to be large, but as the linear part is adapted (as the presumed model parameter tensor Θ is adapted), the linear part W m_linear (u se , Θ) becomes a better approximation of the actual behavior, and the unknown non - linear part or error is reduced until it falls below a threshold and the adaptation is considered complete (i.e., converged) for that frame. In other words, at several points within each frame, the adaptation engine adapts the linear part W m of the time - varying linear system W m_linear (u se , Θ) to be a very good approximation of W m , and the unknown non - linear part W m_nonlinear (k) is small enough to be ignored. In other words, the overall structural change per frame and the net effect of the adaptation of the linear part within each frame are such that the structure of each frame can be pre - calculated (e.g., on a CPU) or experimentally derived. Thus, only the adaptation of the linear part W m_linear (u se , Θ) is implemented using real - time processing resources (e.g., FPGA), enabling the overall model (W m {u se , Θ}) to converge rapidly in terms of non - linear system behavior.
[0282] Figure 9 illustrates a method of operating an adaptive engine disclosed herein that has a branched non-linear model. Method 900 includes providing, to a system model (or "non-linear model"), a control portion for generating a control signal u that is a possible consideration se and an estimation portion for estimating an estimated system output y est_se (block 902). The time-varying linear system W m can be branched or split into the sum of linear and non-linear portions, and the control timeline can be divided into frames of different lengths (or control samples or number of adaptation iterations) (block 904), with some processing of the non-linear model occurring on a CPU or other slower resources and the real-time aspects of the non-linear model occurring on an FPGA or other faster resources. The current frame can be supplied with the structure of the time-varying linear system W m (block 906). As described with respect to FIG. 43, the non-linear portion of the time-varying linear system W m is in effect an unknown error and is therefore not used or considered in processing (other than attempts to minimize this error). For this reason, the terms "time-varying linear system W m " and "its linear portion W m_linear (u se , Θ)) are used synonymously, and this simplification becomes more accurate as convergence occurs within each frame. The structure of the time-varying linear system W m can be preprocessed, for example, on a CPU but can also be accessed from an experimentally derived look-up table. The structure of the time-varying linear system W m remains constant throughout the current frame. However, since the time-varying linear system W m also depends on the estimated model parameter tensor Θ, the estimation portion of the non-linear model adapts within the frame as Θ changes (as the adaptive engine modifies Θ to minimize it against measured system behavior) (block 908). This is based on (1) the measured system output y meas from the previous iteration, (2) the estimated system output y est_seand two or more of (3) the reference signal r, based on the estimated error
Chemical formula
Chemical formula
[0283] Figure 5 shows an embodiment of the adaptation engine such as that shown in Figure 4. The adaptation engine 500 is configured to provide the adapted control signal u out to one or more actuators (e.g., actuator 408 in Figure 4), and the adapted control signal u out is configured to converge to a target parameter such as a reference signal waveform more quickly than would be possible via a known controller. The adapted control signal u outHenceforth, a "control signal" or "control" may have multiple components within a MIMO system (i.e., it may be a tensor or may be tensored), but for convenience, throughout this disclosure, it is referred to in the singular, and one of ordinary skill in the art will understand that the adapted control signal u out can be applied to a situation where one or more control signals are implemented (i.e., to the tensorially adapted control signal u out ). Further, if the system being controlled exhibits non - linearities and instabilities such as those found in a plasma control system, the adaptation engine 500 can adjust the amount and means of adaptation, for example, even at the expense of slower convergence, to avoid instability. This will be referred to as the "adaptation gain".
[0284] Simultaneously, different control laws, numbers, and combinations can be applied to optimize the control signal u out . Similarly, different estimation laws can be used to estimate the parameters of a non - linear model of the actuator and / or the system controlled by the actuator. The non - linear model can be a function of the input regressor, including values such as reference signals, and can also be a function of the estimated model parameters. Both the input regressor and the estimated model parameters are updated at each iteration such that the non - linear model is "adapted" at each iteration. Further, in some embodiments, the processing of the non - linear model can be improved by creating frames of control samples or iterations, providing different structures for the non - linear model for each frame, and adapting the model parameters estimated at each iteration within a given frame. Thus, a linear approximation of the non - linear model is used for each frame, thereby reducing the resource usage for adapting the non - linear model at each iteration. More specifically, the estimated model parameters can be used in the control law, and each control law applies the non - linear model in a different way and potentially determines the control signal u se and the estimated system output y est_seIn particular, the nonlinear model predicts the control part, i.e. the possible control signals u se and the prediction part, i.e., the system output y est_se The nonlinear model can take as one of its inputs the model parameter tensor Θ to be estimated. The first output is a possible control signal u se is passed from the control part of the nonlinear model to the prediction part of the nonlinear model, and y est_se (the second output of the nonlinear model). se and the estimated system output y est_se is then passed to a selector module to identify and apply different ones, numbers and combinations of control laws (i.e., possible control signals that may be generated therefrom) to generate a control signal u out is used to generate the
[0285] In this disclosure, the nonlinear model and its two derivatives, seven estimation laws, and eight control laws will be used as examples, but these are not intended to limit the vast number of models, estimation laws, and control laws that may be implemented in any way. More importantly, the models, estimation laws, and control laws derive a control signal u from inputs such as reference signals, system output measurements, and previous control signals, to name a few non-limiting examples. out It is a way of working together to generate value.
[0286] As only one non-limiting example of how the model, estimation rules, and control rules interact at startup, when the output of the system deviates from the desired reference signal, the adaptation engine 500 may use more aggressive means of adapting the control signal such that the speed of convergence is prioritized over stability (i.e., some combinations of the estimation rules and control rules may be given greater weight). As the measured signal approaches the reference signal, the adaptation engine 500 may decrease the priority given to fast convergence and instead switch to control that favors stability (i.e., different estimation rules and control rules may be given greater weight). Finally, those aspects of the adaptation engine 500 that focus on fast convergence may be almost completely (or completely) turned off so that the influence exerted on the control u out is almost completely (or completely) stability-oriented. This is an example of only two priorities that can be balanced over time within the adaptation engine 500, and as will be understood, there are numerous other priorities that can be selected or blended to generate the control signal based on the estimation rules and control rules that are given priority. As a more specific example, when a plasma processing recipe is run, it may start in an operating region that is relatively easy to model and track, and thus the adaptation engine 500 can primarily rely on estimation rules and control rules targeted at this operating region. However, after a period of time, the recipe may change the chamber gas, chamber pressure, and chuck power, and then the adaptation engine 500 can shift towards different estimation rules and control rules targeted at the new operating region. These adaptations, in addition to the adaptation seen only in the estimated model parameter tensor Θ, as the non-linear model approaches the actual behavior of the system, smaller and smaller changes will begin to be observed with each iteration. Thus, it can be seen that there are multiple ways in which the adaptation engine 500 can adapt to non-linear and dynamic system behavior.
[0287] In its most basic form, the adaptive engine 500 receives, or accesses from memory, a reference signal r (or a stream of reference signals), a measured value y of the output of the system being controlled (e.g., the non-linear plasma load 104 in FIG. 4), meas (or a stream of measured values), and a control signal u from a previous iteration out and rapidly and / or in a robust manner (i.e., without instability) generates a control signal (or “control”) u that is most likely to achieve the desired system response that correlates to the reference signal r. out For example, the adaptive engine 500 can be used to control the plasma processing system 100, where the reference signal is the desired power being delivered to the plasma, such as 1,000 W, and the measured value is the measured value of the power being delivered. The control u out may control the power of the power source, or in a MIMO situation, may include the position of a variable capacitor in a matching network configured to match the power, frequency, and impedance of the power source to the non-linear plasma load. Again, the reference signal r, the measured value y meas , and the control signal u out can each be a vector or tensor in embodiments with more than one input and output, but for convenience, they will be discussed in the singular throughout this disclosure.
[0288] The present disclosure provides an adaptive engine 500 (or adaptive engine) that includes an adaptation rule selector 502 and a selector module 508, as illustrated at a high level in FIGS. 5A - C. The adaptation rule selector 502 effectively selects a set of adaptation rules, each with a different combination of estimation rules and control rules.
[0289] Estimation rule module
[0290] The estimation rules are embodied and implemented within the estimation rules module 504, and the control rules are embodied and implemented within the control rules module 506 (or sub - engine). The estimation rules module 504 takes in an input regressor
Chem.
Chem.
Chem.
Chem.
Chem.
[0291] The estimated model parameter tensor Θ will generally contain values that are consistent between the estimation rule module 504 and the control rule module 506. In other words, the
Chemical formula
Chemical formula
Chemical formula
[0292]
Chemical formula
[0293] or a multi - dimensional matrix (not shown).
[0294] The controlled system can be that shown in FIGS. 1 and 4 or any other system, and the adaptation engine 500 provides a control signal u out (e.g., 454 in FIG. 4 or the output of control section 112 in FIG. 1) to one or more actuators. The input regressor
Chem.
Chem.
Chem.
Chem.
Chem.
[0295] Control law module
[0296] The present disclosure now provides further details regarding control law module 506. By applying an estimation law to an input regressor
Chemical formula
[0297] One or more control signals u that are conceivable as possibilities from the control law module 506 se are the conceivable control signal u se that is the best or a conceivable control signal u se as the best combination or hybrid (e.g., weighted average, multiplication, or sum) of two or more of the conceivable control signals u
Chemical formula
Chemical formula
[0298] The estimation error used by the estimation rule module 504 to calculate the estimated model parameter tensor Θ
Chemical formula
Chemical formula
Chemical formula
Chemical formula
Chemical formula
[0299] As can be seen from the figure, the adaptation engine 500 takes an input regressor
Chemical formula
Chemical
[0300] Nonlinear model
[0301] Further details of the nonlinear model are provided here. As described above, the estimation error
Chemical
Chemical formula
[0302] In FIGS. 5A and 5B, for each control rule module 506, there is one estimation rule module 504. However, as shown in FIG. 5C, multiple estimation rule modules 504 can provide an output (e.g., Θ) to a given control rule module 506. However, only the first control rule module 506 and its corresponding one or more than one estimation rule module 504 are explicitly shown in FIG. 5C. Additional sets of one or more than one estimation rule module 504 and the corresponding control rule module 506 can also be implemented, as shown via the "other estimation rule module" and "other control rule module" boxes. Each estimation rule module 504 receives a reference signal r, and the measured system output y meas and the estimated error
Chemical formula
Chemical formula
[0303] Referring to any of FIGS. 5A-C, the control rule module 506 receives the estimated model parameter tensor Θ along with one or more input regressors from each of the estimation rule modules 504. These inputs are then applied to the control rules, and for each estimated model parameter tensor Θ (i.e., for each corresponding estimation rule module 504), a possible control signal u
Chemical formula
[0304] Input regressor
Chem.
Chem.
Chem.
Chem.
Chem.
Chem.
[0305] A more detailed understanding of the estimation part of the non - linear model can be obtained through the understanding that the control samples can be grouped into frames that use different time - varying linear systems that depend on Θ to approximate the non - linear behavior across each frame. When these different linearized frames are considered as a whole, the net effect is an approximation of the non - linear behavior, but the adaptation engine 500 can process a simpler linearized version of the non - linear model. The time - varying linear system can be represented by W m and can be shown by W, as shown previously [Chemical formula] and y est_se and represents the solution to the system of simultaneous equations for W with respect to [Chemical formula] and y est_se The structure of the time - varying linear system W m or the structure of the A, B, and C matrices used in the system of simultaneous equations can be updated for each frame, meaning that the structure is constant within each frame. One illustrative structure W m can be described as follows.
[0306] [Chemical formula]
[0307] For the TARC control law module discussion, refer to the similar form of this system described as equations 12 and 13. In this example, the C matrix is the identity matrix, three controls are implemented (since the B matrix is size 3), and it can be seen that the A matrix contains two components of the model parameter tensor Θ to be estimated. W m Changing the structure of W means that the locations of 1, 0, Θ, and fixed coefficients (none of which are seen in the above examples) within matrices A and B and optionally C (the identity matrix is not used) are modified. For example, if the above exemplary structure was used in the first frame, changing the structure within the second frame means that W m The structure can be such that
[0308]
Chemical formula
[0309] W m As yet another example of changing the structure of W, the adaptation engine may determine that further adaptation of Θ2 does not lead to significant improvement, and thus Θ2 can be replaced with a fixed coefficient (e.g., 0.88 in the following example) (meaning it will no longer be adapted).
[0310]
Chemical formula
[0311] Since Θ1 and Θ2 are adapted or adjusted at each control sample or iteration, it is understood that the overall effect of W m will show only minor adjustments over time. Also, it can be seen that there are significant changes in W when the structure changes. The non-linear model depends on the time-varying linear system W m and thus W in each frame m depends on it, so W in each frame mStructural changes to [[ID=]] enable large changes in the non - linear behavior to be approximated by the non - linear model, while per - sample changes to the estimated model parameter tensor Θ enable smaller non - linearities to be approximated by the non - linear model.
[0312] Time - varying linear system W m can be calculated within a frame resynthesizer (see Figure 6) or looked up in a table pre - loaded by the controller designer. The time - varying linear system is then passed to the non - linear model in the control law module 506 (Figures 5A and 5C) or the estimation law module (Figure 5B) at the start of each frame and can then be held constant throughout a given frame. In some embodiments, different time - varying linear systems W m can be used for different control law modules 506, the differences of which involve the development of the basic or most general form of the time - varying linear system W m See, for example, the differences between Model 1 and Model 2 in the present disclosure later. Thus, the time - varying linear system W m will not only change from frame to frame, but different combinations of the estimation law module and the control law module can use different forms of the time - varying linear system W m to enable different combinations of the estimation and control law modules to achieve different goals in the linear approximation of the non - linear behavior of the system. This gives the adaptation engine 500 the ability to develop the control signal u out for a greater variety of operating regions and conditions.
[0313] In the figures, both providing the time - varying linear system and changes to its structure are symbolized by the same W m as.
[0314] The present disclosure often uses Model 1 where the time - varying linear system W m is part of the estimation part, but Model 2 can also be used, simply with the time - varying linear system W mwill instead be seen to be used in the control section. Details of both models will be discussed later in this disclosure. Selector module
[0315] Selector module 508 receives a control signal u se from the control law module 506 and selects one or a combination of the possible control signals u se for output as the control u out Selector module 508 uses at least a portion of the possible control signal u se and the estimated system output y est_se and the reference signal r and the system output measurement y meas to include the input regressor
Chemical formula
Chemical formula
[0316] If a single possible control signal u se is selected, this signal is selected as control u out . However, if two or more possible controls u se are selected, control u out is formed by the hybridization of possible control signals u se . For example, multiple possible control signals u se can be combined or hybridized through "topologies" such as, but not limited to, weighted average, other averages, multiplication, summation, difference, division, integration, differentiation, exponential functions, complex functions, logarithms, sequences, statistical distributions, matrices, tensors, neural networks, non-linear functions, graphs, maps, transforms, trees, or combinations thereof. For example, Equation 5 presents a detailed example of means for combining possible control signals u se through complex weighted averaging. However, the resulting control u out is then passed to one or more actuators (e.g., 308) and fed back to adaptation rule selector 502 as an input to estimation rule module 504 and control rule module 506 to determine the next iteration of u out . Control u out is sometimes referred to as u out (k - 1) when input to estimation rule module 504 and control rule module 506 as feedback for the next iteration.
[0317] Once a topology is selected, the selector module 508 also controls out In the same way that Eq. (i.e., using Eq. 7, which is structurally similar to Eq. 5), the estimated total system output y est_out In other words, the estimated total system output y est_out is a possible control signal u se (or the selected adaptive law) est_se Alternatively, there may be two or more possible control signals u se are combined, the corresponding estimated system output y est_se is the estimated total system output y est_out These can be combined in the same manner to generate
[0318] In some embodiments, one or more memory components (not shown), such as pipeline registers, may be coupled to the potential control signal u se and the estimated system output y est_se can be temporarily stored, either to aid parallelization in the selector module 508, or to allow the selector module 508 to draw from a previous output of the control law module 506 when the adaptive engine 500 receives repeated input iterations (e.g., the same reference signal waveform is repeated).
[0319] To perform the above functionality, the selector module 508 may implement an optional control selector and combiner 516 ("CSC") and an optional topology selector and designer 518 ("TSD"). The TSD 518 selects the previous control (e.g., u out_k-1 , u out_k-2、 u out_k-3 etc.) and the estimated total system output y est_outFocus on and, when applied within the best topology, or selector module 508, the measured system output y meas to the estimated total system output y est_out or the control u that brings it closer to the reference signal r out The one most likely to lead to can be selected. This is the measured system output y for the previous iteration meas or the reference signal r and the estimated total system output y calculated for various possible topologies est_out It may involve an error or cost function that compares. More specifically, TSD518 analyzes a cost function such as Equation 4 and the optimal possible control signal u se or the possible control signal u (in the form of a topology for combining possible control signals) se A combination of may be selected. TSD518 may provide this selection to CSC516, which then applies this topology and, based on the topology and the possible control signal u se generates the control u out The topology may be embodied as a set of weights for providing to CSC516, and the weights determine how the possible control signals u se are combined or mixed. In some embodiments, the topology can include, by way of several non-limiting examples, mean, multiplication, sum, difference, division, integration, differentiation, exponential function, complex function, logarithm, sequence, statistical distribution, matrix, tensor, neural network, non-linear function, graph, map, transformation, tree, or combinations thereof. In other words, selector module 508 predicts the output of the system that would result from different control signals generated by different topologies and then selects the topology corresponding to the predicted output that minimizes the error or cost function.
[0320] As part of the selection (or topology selection), CSC516 takes the possible control signal u seEach time (i.e., for each adaptation rule), the estimated system output y est_se is used to determine the estimated system error meas_out based on the measured system output y
Chemical formula
Chemical formula
[0321] Alternatively, the possible system output y est_se and / or the estimated total system output y est_out can be provided to the TSD518, which can determine the combination of the possible control signals u meas that minimizes the cost function with respect to the measured system output y se or the reference signal r or the combination of the possible control signals u se The TSD518 can identify the best possible control signal u se When selecting one or a combination of them, TSD518 can return this selection to CSC516 as a set of topology or weights. Consequently, CSC516 can return to TSD518 a weight adjustment value (w adjustment) that can be used to adjust the weights in the next iteration of the topology selection. Weight adjustment can be used to increase the speed of the adaptive engine 500 and / or to smooth the transition between control laws. Weight adjustment can also be used to smooth the transition between u se can be used to smooth the transition between.
[0322] The measured system output y meas_out should be understood to be n-dimensional and not limited to the power output from a power supply or matching network or the power delivered to a plasma load. Other measured system outputs y meas_out can be, for one non-limiting example, a composite of a plurality of measured values as well as internal actuator measurements such as power dissipation within the DC section.
[0323] In some embodiments, the adaptation or adaptation gain or influence of the adaptive engine 500 can be selected based on the measured system output y est_out that approaches a target value (e.g., the reference signal r or the estimated total system output y meas ). In other words, the adaptation or adaptation gain or influence of the adaptive engine 500 can be selected based on the actual system error e out . In particular, although not all, some estimation rules can include an adaptation gain Γ that affects the adaptation from a given estimation rule. When the measured system output y meas is out of the target value, the adaptation gain Γ can become large (or be increased), and thus the estimation rule within the estimation rule module 504 strongly affects the control signal u out . As the measured system output y meas approaches the target value, the adaptation gain Γ can be decreased in the same way as when returning the throttle of a boat as it approaches a pier. In other words, the actual system error e outWhen it exceeds the threshold value, the adaptive gain Γ can be increased, and the actual system error e out When it is less than the threshold value, the adaptive gain Γ can remain unchanged. In one embodiment, the optional adaptive impact control 510 is based on the actual system error e out Or the reference signal (e.g., r) or the difference between the reference signal stream and the measured system output (e.g., y meas ) is noted, and the adaptive gain Γ can be generated based on the actual system error e out Based on. Alternatively, the optional adaptive impact control 510 can focus on the difference between the error or the reference signal r and the estimated total system output y est_out (see, for example, Equation 4). In yet other embodiments, the error or difference can be based on the estimated system output y est and the measured system output y meas . In some embodiments, the adaptive impact control 510 can focus on two or more of these errors (e.g., Equation 4 is a cost function that considers two of these errors). The adaptive gain Γ is passed to the estimation rule module 504 and can be used in one of the estimation rules to determine the estimated parameter tensor Θ. The adaptive gain Γ can be a positive value ≤ 1.
[0324] Optional initialization 512, to give three non-limiting examples, can store previous values such as the control u out , the estimated total system output y est_out , and the adaptive gain Γ. These can be accessed as initial conditions for subsequent frames when the adaptation rule selector 502 returns to the same operating conditions. In one embodiment, the initialization 512 can store these initial conditions in the TSP-RAM. The initialization 512 can pass these values to the adaptation rule selector 502 and / or the selector module 508, and more specifically, to the control rule module 506.
[0325] There are at least two feedback loops as shown in FIGS. 5A - C. First, the control u out is fed back to the adaptation rule selector 502, for example, as part of an input regressor
Chem.
[0326] Much of the present disclosure discusses the passage of the estimated parameter Θ to the control law module, but in some embodiments, each estimation law module may also pass the derivative Θ’ of the estimated parameter Θ. The derivative Θ’ can be used to increase the accuracy and speed of convergence to the target system behavior. Thus, if [Θ] is seen in the figure, this tensor can be replaced by [Θ, Θ’] in some implementations.
[0327] Synthesized frame
[0328] FIG. 6 illustrates an alternative adaptive engine that divides certain aspects of the control samples and the non-linear model into frames. The adaptive engine 600 can include details as illustrated and described in any of FIGS. 5A-C, for example. However, the frame recombiner 650 is arranged to create the synthesized frame from an input regressor that includes, but is not limited to, the reference signal r, and the measured system output y meas The synthesized frame can include blocks of input data that may or may not be repeated over time. For example, with respect to a triangular wave reference signal waveform, the synthesized frame can capture the rising and falling edges of the triangular wave and apply a filter such as a smoothing filter to make the synthesized frame more cooperative (e.g., smoother or more linearized). More importantly, each frame can correspond to several control samples or samples of the reference signal r. Further, some operations of the adaptive engine 600 can be preprocessed or processed only once per frame. For example, the time-varying linear system W m of the non-linear model is determined or set beforehand by the controller designer and stored in a look-up table such that during operation, the adaptive engine 600 can access the time-varying linear system W m for all frames processed within the adaptive engine 600. Alternatively, the frame recombiner 650 can, for each frame, the time-varying linear system W mcan be calculated, and the adaptive engine 600 then uses the frame-specific time-varying linear system W m over the life of the frame and then can switch to a new time-varying linear system W m when a new frame begins.
[0329] This time-varying linear system W m can also be regarded as a linear approximation of the non-linear model, and remains constant throughout the frame while the non-linear part of the model, as represented by the estimated model parameter tensor Θ, adapts throughout the frame. In other words, the model has linear and non-linear parts, with the linear part starting each frame in a known state but adapting the non-linear part towards convergence. Thus, the adaptation is limited to the small unknown non-linear part and there is no need to adapt the linear part as well. Thus, the adaptation is maintained slightly better than a non-branching model and as a result, convergence is achieved with faster and / or less use of processing resources.
[0330] The application of the frame also aids in parallelization within the adaptive engine 600. The memory 652 can be used in combination with the frame resynthesizer 650 such that when the waveform returns to a previously synthesized frame, the adaptive engine 600 does not require the frame resynthesizer 650 to resynthesize the input but can draw from the synthesized frame in the memory. This not only reduces processing resources but also reduces latency as less input processing occurs when the frame is accessed from the memory 652. FIG. 6 illustrates that any of the input regressors in FIGS. 5A-C or elsewhere in this disclosure
Chemical formula
[0331] The time-varying linear system W mFinding this involves not only determining the best linear model to approximate the non-linear model region, but also finding the frame (or frame size) that leads to the best linear approximation. More specifically, the frame resynthesizer 650 finds the largest frame that still enables an accurate linear approximation of the non-linear behavior of the system. In other words, the frame resynthesizer 650 uses a set of linear models to approximate the non-linear system, but each frame and its linearization may be mapped to a different number of control samples. More specifically, the frame resynthesizer 650 performs an optimization procedure to find the best coefficients, for example, according to Equation 1A, for the reference signal r and the system output measurement y meas This is related to the maximum number of samples n within the frame.
[0332]
Chemical formula
[0333] This is related to the maximum number of samples n within the frame new which is related to the maximum number of samples n within the frame.
[0334] where the following holds.
[0335] r is the reference signal.
[0336] x is the state mathematically constructed internally to represent the second-order linear system.
[0337] ω n is the natural frequency in [rad / s] for the linear approximation of the reference signal, which is different from the filter input regressor ω used anywhere in the present disclosure.
[0338] ξ r is the damping ratio [dimensionless] of the linear approximation of the reference signal.
[0339] ω n and ξ r are determined through the shape of the reference signal and / or the desired user-defined waveform.
[0340] {u} This is the input tensor (control input) discussed anywhere in the present disclosure, u se and u out is different. In most cases, {u} is the filtered version of the reference signal r.
[0341] The frame resynthesizer 650 performs an optimization procedure and can find the best coefficients, for example, by Equation 1B, for the reference signal r and the system output measurement y meas to describe.
[0342] [Chemical formula]
[0343] where the following holds.
[0344] y is the measured system output (y anywhere in the present disclosure meas ).
[0345] x is the state internally constructed mathematically to represent the second-order linear system.
[0346] ω n is the natural frequency in [rad / s] for the linear approximation of the measured system output, different from the filter input regressor ω used anywhere in the present disclosure.
[0347] ξ r is the damping ratio [dimensionless] of the linear approximation of the measured system output.
[0348] ω n and ξ r are determined through the reference signal shape and / or the desired user-specified waveform.
[0349] {u} This is the input tensor (control input) discussed anywhere in the present disclosure, u se and u outis different from.
[0350] The output of the frame synthesizer 650 can also be the tensor W m (and its filtered variant Q m ) and can include the L, A, B, and C matrices. The matrices A, B, and C are used when the system is
Chemical formula
[0351] The new resynthesized frame consists of the coefficients in Equation 1A or 1B, and its duration is the reference signal r, the system output measurement y meas , and the control u out plus n new over the length of that time. This ensures that each frame is in the linear region of the process. Thus, all frames will use different time-varying linearized approximations of the non-linear system behavior that closely approximate the non-linear system behavior. Adaptation within a frame means that the time-varying linear system starts from the linear approximation for each frame and adapts towards an approximation of the true non-linear process model through adaptation of the model parameter tensor Θ. This can make the adaptation much faster and guarantee convergence (because the adaptation only needs to estimate the non-linear extension rather than the linear part). After the adaptation in the frame and Θ converges, the resulting parameters will effectively become constant and are stored in a memory such as the memory 652, and can be used each time the reference signal r returns to these resynthesized frames during the reference signal sequence. In other words, the estimated parameter tensor Θ can be reused when a similar or the same frame of the reference signal r is recognized again, along with the corresponding structure of the time-varying linear system once convergence is achieved. In other words, once the adaptation of the frame is completed or converged, the knowledge obtained from that adaptation can be used again within subsequent similar frames, thus avoiding the need to perform the adaptation again when similar frames are recognized.
[0352] This disclosure often discusses the reference signal r, but is also executable for the user to define more abstract or general desires of the system output. In these cases, the adaptation engine can synthesize the user's specifications into the desired reference waveform y est_se which can replace or be used together with the reference signal r. The desired reference waveform, y ref can be described as follows.
[0353]
Chemical formula
[0354] where ||Δ|| is finite and represents the plasma generator / matcher / chamber non - linearity or uncertainty beyond any linear representation given by W m (t)u se The value u se is the desired steady - state value of the state, which in standard plasma generator terminology is called the power state and is a set of values provided by the user. In other words, the adaptation engine can create / form the closest linear model of y est_se at all co - occurrence times or all control samples, the linear model W m (t). In other words, the adaptation engine provides a model that is time - varying stable and exactly proper, rational, linear, and sample - time invariant.
[0355] In some embodiments, one or more of the setpoint streaming module, the pre-calculation engine (e.g., used to determine the A(t), B(t), C(t), K(t), L(t), F(t) matrices / tensors), and the frame synthesizer may be implemented on a central processing unit (CPU). This allows the CPU, rather than a field programmable gate array (FPGA), to handle heavy / intensive calculations in an offline (or pseudo-offline) mode. On the other hand, the FPGA is more suitable for performing simpler calculations in a very high-speed mode (e.g., real-time or substantially real-time). The pre-calculation engine on the CPU sends the A(t), B(t), C(t), K(t), L(t), and / or F(t) matrices / tensors to an adaptive engine that is launched on the FPGA. In some cases, the CPU also stores these matrices / tensors, for example, in the TSP RAM of the frame processor of the FPGA. This enables the adaptive engine and / or the control law module / sub-engine to access the pre-calculated matrices in real-time or substantially real-time. In other words, the pre-calculation engine on the CPU generates the structure of the A, B, and C matrices for all frames, and thus, the time-varying linear system W m to occur.
[0356] FIG. 7 illustrates a method of controlling an adaptive control and, in some particular embodiments, one or more actuators (e.g., a plasma processing system and / or a power supply for a plasma processing system) that control the system via an adaptive engine. Method 700 can start with the selection of a new frame and the best linear approximation of the system behavior over the new frame (block 701). In other words, W mThe structure is selected. This structure can be calculated within a frame recombiner or accessed from a look-up table derived experimentally. Method 700 can include a step (block 702) of estimating an estimated model parameter tensor Θ for all control samples of a non-linear model. The estimating step can be based on an estimation rule that is a function of an estimated error [Chem.] or a cost function J and can be implemented within an estimation rule module. The estimated model parameter tensor Θ can include estimated parameters of the non-linear model such as, but not limited to, r, y meas , y est_se , and u out etc. Method 700 further uses the control part of the non-linear model to generate a possible control signal u se (block 704) and can use the estimation part of the non-linear model to generate an estimated system output y est_se (block 706). These two values can be calculated from the control part and the estimation part of the non-linear model respectively. Both parts of the non-linear model are at least functions of the estimated model parameter tensor, and the estimation part can also be a function of a possible control signal u se from the control part. The control part can also take an input regressor [Chem.] as one of its inputs. The control part of the non-linear model can be implemented within a control rule, more specifically, within a control rule module. The estimation part of the non-linear model can also be implemented within the control rule and the control rule module, but can also be implemented within the estimation rule module or outside both the control rule module and the estimation rule module. Method 700 then (1) a possible control signal u se and an additional possible control signal u seThe control signal u considered as the best possibility from the set, including se or (2) the control signal u considered as a possibility mixed from two or more of the sets se The best combination of (block 708) can be selected. The mixing step, to mention a few non-limiting examples, can include averaging, multiplication, summation, difference, division, integration, differentiation, exponential function, complex function, logarithm, sequence, statistical distribution, matrix, tensor, neural network, non-linear function, graph, map, transformation, tree, or combinations thereof, and can be topology-based. The topology is selected based on the estimated total system output y est_out for each of the multiple possible topologies, and then this estimated y est_out is compared with the reference signal r, the measured system output y meas , or combinations thereof (the estimated system error
Chemical formula
[0357] The adaptation of Θ described in blocks 702-708 can be repeated for all iterations or control samples within the frame (repeat 702-708 until decision 710 = "yes"). This adaptation keeps the linear approximation (or the structure of W m ) constant throughout the frame, but adapts Θ at each control sample within the frame until the branched non-linear model converges on the non-linear behavior of the system. At the end of the frame (decision 710 = "yes"), a new linear approximation (the structure of W m ) is calculated or accessed, and the adaptation of Θ resumes from the baseline of the linear approximation until convergence on the non-linear system behavior is achieved again. The final Θ can be called with these values if the reference signal at the lower layer of the frame is subsequently recognized, for the frame and W mcan be stored, along with the mapping to the structure.
[0358] Estimation rule module
[0359] Figures 8A and 8B can be used to provide further details of an embodiment with an estimation rule module and corresponding estimation rules. At a high level, an estimation rule is a means for estimating parameters for the non-linear part of a non-linear model of the system (this model has linear and non-linear parts). A control rule takes these estimated parameters and generates therefrom a potentially contemplated control signal that is predicted to achieve a desired outcome from the system (e.g., minimize the error between a reference signal and the measured output of the system). The estimated parameters, along with the potentially contemplated control signal, can be used in the estimated part of the non-linear model to estimate one or more system outputs that are predicted to result from the potentially contemplated control signal.
[0360] Both modules 804 and 806 operate and can be described in a manner similar to the corresponding components in FIGS. 5A-C. Only one estimation rule module 804 and one control rule module 806 are shown, but multiple estimation rule modules 804 and control rule modules 806 would typically be found in an adaptive rule selector. One or more estimation rule modules 804 can be paired with each of the control rule modules 806. Using different combinations of the estimation rule module 804 and the control rule module 806, the adaptive engine 500 can effectively handle the need for a wide variety of controllers and the ability to quickly switch between combinations of estimation rules and control rules, which combinations are referred to as adaptive rules, as shown via brackets in FIGS. 8A and 8B.
[0361] The inference rule module 804 can include an optional smoothing filter bank 810, one or more inference rule banks 812, and optionally, one or more inference rule filtering banks 814. The optional filters 810, 814 can provide filtering of the input and output from one or more inference rule banks 812. That is, the optional smoothing filter bank 810 is such that the differential term has no instantaneous spikes rather than noise,
Chem.
Chem.
[0362] One or more inference rule banks 812 receive the input regressor
Chem.
Chem.
Chem.
Chem.
[0363] One or more estimation rule filtering banks 814 can be included, one for each of one or more estimation rule banks 812, in the output of the one or more estimation rule banks 812. These optional filters 814 can smooth the resulting estimated model parameter tensor Θ such that the estimated model parameter tensor Θ converges to its actual values and / or passes them through a projection operator to bound their values and avoid drift, or create persistent excitation. The purpose of this filtering 814 is the possible control signal u calculated within the corresponding control rule module 806 se is to ensure that it is of sufficient order N (i.e., contains N / 2 distinct frequencies), which enhances the input regressor signal given by the following
[0364]
Chemical formula
[0365] where
Chemical formula
Chemical formula
Chemical formula
[0366] In some embodiments, the estimated model parameter tensor Θ can be another input to the non-linear model
[0367] Random features and features not shown are such that at least one of them [Chemical formula] is a function of, including a plurality of summation operations, to minimize a cost function such as a cost function, and at each iteration, a combination of rules within an arbitrary one or more estimation rule filtering banks 814 that are different from each other is selected.
[0368] The control law module 806 passes a potentially conceivable control signal u se to a selector module (e.g., 508), which determines a potentially conceivable control signal u out used to generate control u se or a combination of potentially conceivable control signals u se . Each estimation rule module 804 also passes its estimated model parameter tensor Θ in the reverse direction through its input, either in real time or via a memory (not shown). This feedback enables the values to be used in the next adaptation iteration. The memory can be a pipeline register such as a TSP-RAM block.
[0369] The non-linear model can be divided into a control part 805 and an estimation part 808. The control part 805 can be found in the control law 818, and the estimation part 808 can be found in the control law module 806 (in FIG. 8A) or the estimation rule module 804 (in FIG. 8B). The estimation part 808 can be used to generate an estimated system output y est_se for each combination of the estimation rule module 804 and the control law module 806 (i.e., for each adaptation rule). The result is passed in the forward direction to a selector module (not shown) and used as an input to the next iteration of the estimation rule module 804, for example, an input regressor [Chemical formula] As part of it, it can be passed in the reverse direction. This estimation can occur almost anywhere. Thus, FIGS. 8A and 8B show that the estimated part 808 is the system output y estimated (within the control law module 806 in FIG. 8A and the estimation law module 804 in FIG. 8B). est_se Only two examples are provided that can be used to estimate se_k the se_k-1 system output y. However, this estimation can also occur outside of any of these modules. One difference between FIGS. 8A and 8B is that different possible control signal iterations (u se_k-1 versus u se_k ) are used in the estimation depending on where it occurs. In FIG. 8B, the estimation using the estimated part 808 occurs within the estimation law module 804 and the possible control signal u se_k regarding the previous iteration can be used, whereas in FIG. 8A, the estimation using the estimated part 808 occurs within the control law module 806 and the possible control signal u se_k-1 regarding the current iteration can be used. The possible control signal u se_k or u se_k-1 can be generated by the control law 818 within the control law module 806 and can be fed back to the estimated part 808 in real time or via memory. In some variations of the estimated part, the linear part of the model W m may be used in the estimation. This linear part W m may be pre - calculated within the frame resynthesizer or accessed from a look - up table derived experimentally. The same linear part of the model W m is used for all iterations of a given frame and then changed for the next frame.
[0370] The estimated part 808 is the system output y estimated within the control law module 806 as shown in FIG. 8A est_seWhen applied to generate, a shorter waiting time is possible, and fewer memory resources can be used. In this case, the estimation part 808 takes the control signal u se_k that is possible for the current iteration and can estimate the possible system output y est_se In some cases, this can be faster than the variant shown in Figure 8B.
[0371] Most of this disclosure discusses the passage of the estimated model parameter tensor Θ through the control law module, but in some embodiments, each estimation law module also passes the derivative
Chemical formula
Chemical formula
Chemical formula
[0372] The following exemplary estimation laws 1-6 each show some non-limiting examples of estimation laws that can be implemented within the estimation law module 804 or 504. As can be seen from the figure, the estimation laws generally depend on the estimation error
Chemical formula
Chemical formula
Chemical formula
Chem.
Chem.
[0373] The inference rule bank 812 can implement any number of inference rules, and the following are some non-limiting examples.
[0374]
Chem.
[0375] where the inference error
Chem.
[0376]
Chem.
[0377]
Chem.
[0378]
Chem.
[0379]
Chem.
[0380] In other words, the estimation error
Chem.
[0381] The principle of probability equivalence suggests that unknown parameters in control design can be replaced by their estimated values. A hat (^) over a variable or parameter indicates an estimated value of the unknown parameter.
[0382] Where m and n s are regularization terms, and the input regressor
Chem.
[0383] Another exemplary estimation rule can be described as follows.
[0384]
Chem.
[0385]
Chem.
[0386]
Chem.
[0387] Also, the third one can be described as follows.
[0388]
Chem.
[0389]
Chem.
[0390] Also,
Chem.
[0391] In the formula, m and n s are normalized signals.
[0392] Another estimation rule can be described as follows.
[0393]
Chem.
[0394]
Chem.
[0395]
Chem.
[0396]
Chem.
[0397]
Chem.
[0398]
Chem.
[0399]
Chem.
[0400] Here,
Chem.
[0401] In the formula, Γ1, Γ2, and Γ3 are different values of the adaptive gain Γ provided by the adaptive engine in which they are generated.
[0402] Furthermore, the final non-limiting example of the estimation rule can be described as follows.
[0403]
Chem.
[0404]
Chem.
[0405]
Chem.
[0406]
Chem.
[0407]
Chem.
[0408]
Chem.
[0409] Most of the exemplary inference rules are described from the perspective of the differential of the model estimation parameter tensor
Chemical formula
Chemical formula
Chemical formula
Chemical formula
Chemical formula
[0410] Furthermore, each inference rule may have two versions, regardless of whether it is one of the above examples or any other inference rule. In the first version, m 2 = 1 and n s = 0 so that no normalization occurs, which has the advantage of faster adaptation but has little availability for unstable plants and / or unbounded control signals. In the second version, m 2 = 1 + n s 2> 0, which will lead to slower convergence for stable plants and / or bounded control signals but will enable the control of unstable plants and / or unbounded control signals. The adaptive engine can switch between these two versions of any estimation rule in real time, enabling faster control.
[0411] When implemented in real-time hardware (e.g., ASIC / FPGA) in a general-purpose method that benefits from oversampling, the estimation rule can be modified to include robustness means that can be pipelined / shared-resource / streamed. For example, all can be processed within a control cycle.
[0412] Nonlinear model
[0413] As described above, the nonlinear model is the estimated model parameter tensor Θ and the estimation error
Chemical formula
[0414] The nonlinear model can be used to provide possible control signals and estimated system outputs (e.g., reflected power, phase offset between delivered power and reflected power, etc.). To achieve this purpose, the nonlinear model can, in its most general form, be described as having a control part and an estimation part as follows.
[0415]
Chemical formula
[0416]
Chem.
[0417] In some cases, both parts can be processed within the control law module, and in other cases, the estimation part can be processed outside the control law module (see, for example, FIGS. 5A and 8A). However, in other respects, the control part can be processed within the control law module, and the estimation part can be processed either within the estimation law module (see, for example, FIGS. 5B and 8B) or anywhere within the adaptation engine.
[0418] From this generally generalized form of the model, it can be seen that both the control part and the estimation part are functions of the estimated model parameter tensor Θ and the input regressor
Chem.
[0419] However, this generally generalized form is actually a circular definition because
Chem.
Chem.
Chem.
Chemical formula
[0420]
Chemical formula
[0421] wherein this development is
Chemical formula
Chemical formula
Chemical formula
Chem.
[0422] To be clear, the control part of Model 1 is identical to its generalized form described above.
[0423]
Chem.
[0424] As described above, avoiding the circular definition of the generalized model can also be achieved by describing the control part from the perspective of the estimation part.
[0425]
Chem.
[0426]
Chem.
[0427] The control part of Model 2 also uses y est_out instead of the estimated total system output ymeas It can be described from the perspective of. The control part of Model 2 may use Wm as shown or its approximation. -1
[0428] Regardless of whether Model 1 or 2 is used, the time-varying linear system W m is an input to either the estimation part (Model 1) or the control part (Model 2).
[0429] Developing the estimation part of Model 1, u se is the input to the system W m and this operation gives the estimated system output y based on the dynamic equation. est_se Please understand this.
[0430]
Chemical formula
[0431]
Chemical formula
[0432] In the formula, C can be the identity matrix for improved performance.
[0433] This means the following.
[0434]
Chemical formula
[0435] Therefore, W m {u se , Θ} is
Chemical formula
[0436] Control law (control law module)
[0437] Each control law is implemented as a control law module, specifically, as the control law 818 within that control law module. Each control law module modifies the control part of the non-linear model to be clearly different, using the estimated model parameter tensor Θ and the input regressor
Chemical formula
[0438] The control law takes the estimated model parameter tensor Θ estimated by the estimation law within the estimation law module, which is a variant regarding the control part of the non-linear model, and is predicted to achieve the desired behavior from the system (e.g., minimizing the error between the reference signal and the measured output of the system), and generate a possible control signal u se .
[0439] The control law module (also called a sub-engine), whose embodiment will be detailed in FIG. 10-42, implements the control law and generates a possible control signal u seGenerate this, which then passes from all control law modules to the selector module. Each control law module takes one or more estimated model parameter tensors Θ from one or more estimation law modules, passes each of the one or more estimated model parameter tensors Θ through a control law (the control part of the non - linear model), and gives a possible control signal u se In other words, each estimation law leads to at least one possible control signal u se These control laws can be implemented within software, firmware, physical logic, or combinations thereof. The examples, described below and illustrated in FIGS. 10 - 42, provide a functional description of the control laws as implemented within the control law module, and any of this functionality may be coded within software or firmware, processed within physical logic, or some combination thereof. Further, the control law module or sub - engine is described as part of a larger adaptation engine, but in some embodiments, the control law module or sub - engine can operate independently to control one or more actuators of the power system, respectively, as if alone.
[0440] To understand more deeply the control laws, their effects on the adaptation engine, and the scope of their variations, by way of non - limiting examples, six examples will be described, starting with control law 1A for the TLMC (or Lyapunov) control module, as follows.
[0441]
Chemical formula
[0442] Each of these control laws is based on the control part of the non - linear model, which complements the corresponding estimated part of the non - linear model. Typically, the output of the control part is the input to the estimated part (or vice versa).
[0443] In control rule 1A, ω is [Chemical formula] overlaps but is not the same as. In particular, ω is a concatenation that can include certain forms of u out_k-1 , y meas , and r (i.e., in many cases, [Chemical formula] 's components). For example, one or more of these values can be filtered before being concatenated to ω. For example, ω can be equal to [u d , y d , y meas , r], where u d and y d are, respectively, the filtered or smoothed versions of u out and y meas . When control rule 1A also utilizes the derivative of Θ, alternatively, it can be described as follows.
[0444] [Chemical formula]
[0445] where [Chemical formula] is.
[0446] Control rules 1A and 1B are further detailed in FIGS. 10A and 10B. A second exemplary control rule for the TARC control rule module can actually be selected from three control rules 2A, 2B, and 2C, which can be described as follows.
[0447] [Chemical formula]
[0448]
Chem.
[0449]
Chem.
[0450] In one embodiment, the best of control laws 2B and 2C can be selected as follows.
[0451]
Chem.
[0452] Also, the overall control law based on the combination of 2A and 2B and 2C can be described as the following selection or a combination thereof.
[0453]
Chem.
[0454] The above extension can be described as follows.
[0455]
Chem.
[0456] Control laws 2A, 2B, and 2C are further detailed in FIGS. 11A - 13.
[0457] A third exemplary control law for the L1 control law module can be described as follows.
[0458]
Chem.
[0459] Also, the details of this control law 3 can be found in FIGS. 14 - 15.
[0460] A fourth exemplary control law for the adaptive PID control law module can be described as follows.
[0461]
Chem.
[0462] wherein
Chem.
[0463] Details of Control Law 4 can be found in FIGS. 16-21.
[0464] Input regressor
Chem.
Chem.
Chem.
Chem.
Chem.
Chemical formula
Chemical formula
[0465] Selection of Topology for Generating Control
[0466] Returning to FIG. 5A, additional details of the selector module 508 are presented. After the control rule module 506 selects a possible control signal u se , the selector module 508 receives one or more possible control signals u se , performs further estimation, and selects, as control u out , the best of the possible control signals u se or the best combination of the possible control signals u se . In particular, the selector module 508 selects different ones of the possible control signals u se or multiple possible control signals u seBased on different combinations of these and the resulting error values for each of these estimations with respect to a desired system outcome (e.g., minimizing the error between a reference signal and a measured system output and / or minimizing the error between a reference signal and an estimated system output), the system output is estimated. This error is the system output error mentioned previously
Chemical formula
[0467] Regardless of what topology or method of combining / hybridizing is used to determine the control u out it is also used to estimate the total system output y est_out Specifically, the selector module 508 determines the number and combination (or hybridization) of the control law module 506 outputs (e.g., u
Chemical formula
Chemical formula
[0468] The selected or hybridized control uout is then passed to one or more actuators (e.g., 308) and fed back to the adaptation rule selector 502 of the estimation rule module 506 as an input for use in determining the next iteration of control u out
[0469] In some embodiments, one or more memory components (not shown), such as pipeline registers, may temporarily store the possible control signal u se and the estimated system output y est_se and can be arranged between the control law module 506 and the selector module 508, which either aids in the parallelization within the selector module 508 or enables the selector module 508 to draw from the previous output of the control law module 506 when the adaptation engine 500 receives repeated input iterations (e.g., the same frame or reference signal is repeated).
[0470] In some implementations, the selector module 508 can distribute the above functionality between an optional control selector and combiner 516 ("CSC") and an optional topology selector and designer 518 ("TSD"). The TSD 518, for various topologies, looks at the previous control u out and the estimated overall system output y est_out and selects the one that is most likely to lead to the control u meas that brings the measured system output y est_out close to the estimated overall system output y out or the reference signal r when applied within the selector module 508. For example, the TSD 518 analyzes the estimated system cost function J out such as Equation 4 and determines the optimal possible control signal u se or the possible control signal u (in the form of a topology for combining possible control signals) se You may select the combination. TSD518 may provide this selection to CSC516, which determines how the potentially selected control signal u se is combined or mixed within CSC516 (also referred to as applying a topology). For example, TSD518 may provide a topology to CSC516, which considers different topologies (e.g., weighted average) for combining or mixing the potentially selected control signal u se within CSC516 and determines the best topology. This topology may be embodied as a set of weights for providing to CSC516, and the weights determine how the potentially selected control signal u se is combined or mixed. In some embodiments, the topology can include, by way of several non-limiting examples, average, multiplication, sum, difference, division, integration, differentiation, exponential function, complex function, logarithm, sequence, statistical distribution, matrix, tensor, neural network, non-linear function, graph, map, transformation, tree, or combinations thereof. Equation 5 presents one non-limiting example of applying a topology using weights w nj and w nn .
[0471] CSC516 then estimates the total system output y est_se estimated, based on the topology or weights and the estimated total system output y est_out and provides this estimated value y est_out to TSD518 for use in determining the next iteration of the topology (e.g., in the cost function of Equation 4). If TSD518 passes weights to CSC516, CSC516 can return w adjustment, which is a weight adjustment value that can be used to adjust the weights in the next iteration, to TSD518.
[0472] Alternatively, these estimated values y est_se and / or y est_out can be provided to TSD518, which is the measured system output y measand / or a possible control signal u that minimizes a cost function with respect to the reference signal r se or a combination of possible control signals can be determined. If TSD518 selects the best possible control signal u se or a combination thereof, TSD518 can return this selection to CSC516 as a set of topologies or weights. Subsequently, CSC516 can return a weight adjustment value to TSD518 that can be used to adjust the weights in the next iteration of the topology selection.
[0473] In some embodiments, the selector module 508 can optimize an estimated system cost function J associated with the topology of the control law implemented by the control law module 506 out This is done by considering possible control signals u se and finding combinations and means of combining them that optimize the estimated system cost function J out For example, the estimated system cost function J out may focus on the difference or error between the reference signal r and the measured output y meas or between the reference signal r and the estimated total system output y est_out In another case, the estimated system cost function J out may focus on both of these errors, for example, as presented in Equation 4.
[0474]
Chemical formula
[0475] where k is a value representing the iteration being analyzed, y est_out_k_p is the estimated total output of the controlled system based on one of the p topologies being analyzed, and the estimated system cost function J outk_pcan be analyzed for each of the p topologies. One of the p topologies that results in the estimated minimum system cost function J outk_p is selected to generate the control u out .
[0476] Each of the p topologies can be associated with a different weighted input of the estimated output y est_se from each of the control law modules. In some cases, this can be a weighted average of the control law module outputs or a more complex mixture such as the multiplication of some outputs and the summation of other outputs. The weights can be denoted as w (distinct from ω), and they are those used in the previous iteration k - 1.
[0477] It is possible to try all permutations of the topologies, but this is very resource - consuming. Thus, the preferred method is to analyze the cost function of Equation 4 using the optimization of the weights applied to the different control law module outputs.
[0478] Assuming weights, the selector module 508 can generate the control signal u out , which, in one embodiment, is given by the weighted sum shown in Equation 5.
[0479]
Chemical formula
[0480] where n is the index for the control signal u se currently considered as a possibility, j is the index for any other control signal u se considered as a possibility, and N is the total number of control laws. For example, in two non - limiting embodiments, N = 3 or N = 7. The control laws are implemented by each control law module. Thus, another way to explain n and j is that n is the control signal u serepresents, and it should be recalled that j is the control signal u considered as a possibility for any other control law module se Recall that the weighting w nj , and w n are, at each control sample, the estimated system error, for example, calculated via Equation 6
Chemical formula
[0481]
Chemical formula
[0482] One skilled in the art will understand that the estimated system error
Chemical formula
[0483]
Chemical formula
[0484] It can be seen that Equation 7 approximately mimics Equation 5, that is, the topology applied to the possible control signal u se is also applied to the estimate of the total system output y est_se . For both Equations 5 and 7, the weightings w nj and w nFor the initial iteration of the selector module 508, it can be set to 1. In subsequent iterations, Equation 6 can be used to narrow down the more effective weights until the cost function in Equation 4 is minimized. Equation 5 is then optimized for the weights w nj , and w nn to determine, based on the topology, the control signal u out that can be used to provide from the selector module 508.
[0485] Although not shown, the adaptation engine 500 can further include a CCS engine coupled to the selector module 508 that attempts to enhance the coherence, consensus, and synchronization among different potential control signals u se . In other words, the CCS engine provides an exogenous signal to the selector module 508 and smooths out the discontinuities that can occur as it switches between the possible control signals u se . The CCS engine can use aspects of the input regressors such as the system output measurement y meas and the reference signal r
Chemical
[0486] Using a more detailed understanding of the non - linear model, the estimation rule, the estimation rule module, the control rule and the control rule module, and the selector and the combiner, the illustrative representation in FIG. 46 can further help to explain these various aspects of the present disclosure. FIG. 46 shows an illustrative example of the operation of an adaptive engine according to an embodiment of the present disclosure. The adaptive engine 4600 enables a plurality of combinations of estimation and control rules to be combined, and then the best combination or combinations are selected for use in determining the control signal u se for one or more actuators such as the actuator described in FIG. 4. The inputs to the adaptive engine 4600 can include a reference signal r (e.g., a stream of setpoints), the measured value y meas of a system controlled by one or more actuators, and the estimated system output as determined by the adaptive engine 4600 in previous iterations. These and other inputs can be concatenated or stored in tensor form as an input regressor
Chemical
Chemical
[0487] The engine 4600 can include various estimation rule modules 4606, although only one is shown in this simplified illustration. The estimation rule module 4606
Chemical formula
Chemical formula
Chem.
Chem.
[0488] Integrating the illustrated estimator gives the estimated model parameter tensor Θ, and once this tensor is estimated, it can be passed to model 4608, which has two parts, namely, u se for the control part to determine, and y est_seand an estimation part for determining, both of which are functions of the estimated model parameter tensor Θ. Both can also be based, without limitation, on versions of input regressors such as ω and ψ or filtered versions thereof. As shown, the estimation part of model 4608B is also a function of the time-varying linear system W of the linearized version of the model m but, alternatively, it can be seen that the control part depends on the time-varying linear system W m . Both parts of the model can be parameterized or parametric. These two parts of the model exhibit duality because they are related through the same model 4608. The control law module is also referred to as a sub-engine in the foregoing of the present disclosure, and the various sub-engines present different uses of model 4608, but ultimately they all rely on similar inputs as those shown in this illustration, and each sub-engine typically generates a possible control signal u se and the estimated system output y est_se .
[0489] Both parts or forms of models 4608A and 4608B "test" the estimated model parameter tensor Θ and confirm the goodness of the estimation. This operation in the control law module also generates (1) a possible control signal u se passed to the second form of model 4608B, and (2) in some variations, an estimated value y m of the system response / measurement that can use the frame resynthesizer 4602 or the time-varying linear system W est_se selected by the designer for the entire frame.
[0490] These two outputs of model 4608 are passed to the selector module 4610, which selects the best or best combination of u se from various combinations (only one combination is shown) of the estimation rule module and the control law module, and generates a control u out for the iteration or control sample.
[0491] In this method, the estimation rule module 4606 and the control rule module loop 4608 "adapt" the estimated model parameter tensor Θ in the current frame (or adapt the linearized form of the model) for several iterations or control samples. As the adapted model converges to the non-linear behavior of the system, the estimated model parameter tensor Θ becomes almost constant (i.e., little Δ is observed as additional iterations occur), and the time-varying linear system W that depends on the estimated model parameter tensor Θ m will be the same. At the end of the frame, the frame recombiner (or the designer's look-up table) calculates the new structure of the time-varying linear system W m for the linearized form of the non-linear model, passes the new structure to the model 4608, and starts another series of adaptations of the estimated model parameter Θ.
[0492] The operation of the adaptation engine 4600 can also be branched between the processor and the FPGA. In particular, the processor can calculate the structure of the time-varying linear system W m once per frame, or preprocess various structures for various expected sets of inputs. With its shorter latency, the FPGA can perform per-sample (real-time) calculations of
Chemical
[0493] Details of the control rule module / sub-engine
[0494] The following sections describe details of various exemplary control law modules or sub-engines, but this list is not limiting. One or more than one of these sub-engines can be implemented independently of other sub-engines and, in some embodiments, can also operate independently of the rest of the adaptation engine. For example, each sub-engine can be implemented without the estimation law module or selector module disclosed herein. In other embodiments, not all of the sub-engines disclosed herein need to be implemented. For example, what will be referred to as the TLMC (or Lyapunov) sub-engine uses the Lyapunov framework, which leads to stable output in situations where high-speed dynamic situations and a large amount of adaptation are required. In other words, TLMC creates a stabilizing control law by ensuring that the sensitivity function does not exhibit rapid fluctuations and is structurally stable. In these cases, the TLMC sub-engine can be implemented, selected, or prioritized in the hybrid of the possible control signal u se However, this TLMC sub-engine may have slow convergence and is not particularly well-suited specifically due to unstable zero dynamics. Thus, a second sub-engine or TARC can be implemented, selected, or prioritized in the hybrid of the possible control signal u so that this sub-engine converges quickly to the target metric and / or optimizes the amount of energy used (e.g., the minimum rail voltage to achieve the setpoint). se TARC creates fast and stable control laws by reformulating the control problem so that a certain amount can be pre-calculated on the CPU, leading to faster and more robust real-time operation. In addition, TARC enables the designer to characterize control actuators that perform heavy work and those that perform light work, and to define the desired speed and amount of stability. Thus, for example, the selector module selects between the TLMC and TARC sub-engines and, possibly, the possible control signal u from there seThey may be mixed. Embodiments using these two sub-engines will provide a certain coverage rate for stable and unstable zero dynamics without any other sub-engines.
[0495] However, the TARC sub-engine may become unstable when the adaptive engine is perturbed and / or the increase or decrease of control u out is too fine and cannot achieve the "converged" performance, and thus the control u out will become oscillatory. Examples of perturbations include, but are not limited to, small changes in the chemical properties of a limited loop or plasma process. The oscillatory effect may occur when the convergence is too large but the error from the target parameter is too small and simply increasing the adaptive gain cannot be achieved, that is, the result is an oscillatory control u out . Therefore, TARC is implemented, selected, or has the most influence on control u out for stable and unstable zero dynamics, and TLMC is implemented, selected, or can have the most influence on control u out when stable adaptation is desired (at the expense of the convergence rate).
[0496] However, none of these sub-engines are very suitable for unstable zero dynamics if higher speed and smaller unknown disturbance rejection are preferred. Regarding these situations, the L1 sub-engine, a third sub-engine, may be implemented, selected, or have priority in the mixing of the possible control signal u se . The L1 sub-engine is configured to provide a fast and robust possible control signal u meas without output chattering by using a sliding mode predictor in combination with continuous adaptation based to different degrees on the smoothed system output measurement y se .
[0497] However, all of the first three sub-engines are subject to a lower speed in situations where there are specialized rules (e.g., secrets obtained through years of trial and error), and thus, the fourth sub-engine, the Adaptive Proportional-Integral-Derivative (PID), is selected, implemented, or controls u out that can have the most impact on out , and in these situations, known PID rules are used. The PID sub-engine generalizes and formats the inference rules so that the PID rules can be applied to the output of the inference rule module.
[0498] However, when there is no prior knowledge about the system dynamics and there are large disturbances (e.g., anything that would cause a sudden change in the chemical properties of the process or a changing chamber pressure, gas flow rate, or thermal conditions, or a large change in plasma impedance), or when the system oscillates, the fifth sub-engine, the ATIMC sub-engine, is selected, implemented, or controls u out that can have the most impact on out . The ATIMC sub-engine creates control rules in different parts by subtracting the specific effects of disturbances, non-linearity, dither, and noise in a compartmentalized manner rather than grouping them together.
[0499] However, there are cases of outliers where none of the above sub-engines have an ideal operating range or where there are better experimentally derived control rules, and regarding these, the sixth sub-engine, i.e., the ATFC sub-engine, can be considered as a possible control signal u se that can be implemented, selected, or prioritized in the hybrid. The ATFC sub-engine uses fuzzy logic design rules that are qualitative rather than quantitative.
[0500] None of the documents actually describe a method for performing any of these sub-engines for MIMO and non-linear systems or even SISO linear systems to conform to the system in real time (e.g., ≤ 250 ns) with minimal resource consumption.
[0501] TLMC or Lyapunov sub-engine
[0502] Figure 10A shows an embodiment of an adaptive engine that focuses on the details of a Lyapunov control law module or Lyapunov sub-engine (also referred to as a TLMC control law module or sub-engine). The adaptive engine 1000 includes at least one estimation law module 1002, a control law module or sub-engine 1005, and a selector module 1008. Similar to the previous adaptive engines discussed herein, the estimation law module 1002 takes an input regressor
Chem.
Chem.
Chem.
Chemical formula
[0503] and estimate the estimated system output y se Both are then used by the selector module 1008 to select the best or best combination of possible control signals as the control u est_se out out se se and the estimated system output y est_se est_se se se est_se est_se (one for each estimator module 1002) can be generated. Only a single estimator module 1002 and a single corresponding possible control signal u
[0504] The estimated model parameter tensor Θ is passed to the control law module or sub - engine 1005, in this case, the Lyapunov sub - engine 1005, which passes the estimated model parameter tensor Θ through the non - linear model of the system and / or the actuator to generate a possible control signal u se se est_se est_se seGenerate, and the estimation part 1018 of the non-linear model generates the estimated system output y est_se to generate.
[0505] More specifically, the Lyapunov sub-engine 1005 takes (1) an input regressor that may include at least the reference signal r and the control u from the previous iteration out and (2) the estimated model parameter tensor Θ, and performs a tensor multiplication 1012 on these inputs. More specifically, the tensor multiplication 1012 implements a version of the first control law, and the input regressor
Chemical formula
Chemical formula
[0506]
Chemical formula
[0507] a control law 1A that uses ω instead of can be used, in which case the sub-engine 1005 of FIG. 10B is implemented, and a
Chemical formula
Chemical formula
Chemical formula
Chemical formula
Hua
[0508] Input regressor
Hua
Hua
Hua
[0509] It should be recognized that control law 1A is the control part of Model 1 mentioned above. The exemplary control law is not presented to correspond to Model 2, but while the Lyapunov sub-engine 1005 can implement Model 1 or 2 without other modifications, the subsequent sub-engines can implement either model, but it can be said that they involve modifications to achieve different control objectives.
[0510] Once the control part 1016 calculates u se , the possible control signal u se can be used to calculate the estimated system output y est_se through the estimation part 1018 of the non-linear model. In this embodiment, tensor multiplication 1012 can be regarded as implementing two forms of models (control and estimation forms) to test the inference regarding Θ, which is u se for this iteration.and y est_se are generated. The resulting u se and y est_se are the best possible control signal u se or the best combination or hybrid (e.g., weighted average, multiplication, or summation) of two or more of the possible control signals u se as the overall system control or control
Chemical formula
Chemical formula
[0511] Thus, a single iteration of the sub-engine 1005 operation is completed. The control u out can be fed back as part of the next input regressor
Chemical formula
[0512] Although not explicitly shown, the control signal u out is fed back to the input regressor
Chem.
[0513] The generator or integrator or any other system to be controlled, to name just a few examples, may involve non - linearities associated with, for example, analog - to - digital or digital - to - analog conversion (e.g., quantization effects), and hardware actuator non - linearities (e.g., slew rate, saturation, windup, dead time, dead band, hysteresis, etc.). Therefore, the Lyapunov sub - engine 1005 can optionally include a non - linear transfer function 1013. When 1013 is implemented, the tensor multiplication 1012 can generate what would be called the ideal or desired outputs u desired and y est_ideal which are then, within the non - linear transfer function 1013, u se and y est_sewill be converted. The hardware non - linearities can be characterized during the design phase, and the parameterized dynamic models of these non - linearities and their effects can be hard - wired or programmed into the non - linear transfer function 1013 as follows.
[0514]
Chem.
[0515]
Chem.
[0516] This embodiment implements both the control and the estimation parts of the non - linear model in the tensor multiplication 1012. In an alternative embodiment, the estimation part of the non - linear model can be implemented within the estimator module 1002. In this case, y est_se or y est_ideal will be calculated within the estimator module 1002 based on the input regressor
Chem.
[0517] To further improve the accuracy and speed of convergence, FIG. 10B presents a variant of FIG. 10A, and the derivative of the estimated model parameter tensor Θ is also used. In particular, the non-linear model or the control part of control law 1A can be described from the perspective of Θ and its derivatives as control law 1B as follows.
[0518]
Chemical formula
[0519] Also, the estimation rule module 1002 can calculate both the estimated model parameter tensor θ and its derivative
Chemical formula
Chemical formula
Chemical formula
Chemical formula
Chemicalization
[0520] To improve the use of processing resources, some of the estimation rule module 1002 and the sub-engine 1005 can operate in parallel. For example, the estimated model parameter tensor and its derivative
Chemicalization
Chemical formula
Chemical formula
Chemical formula
[0521] Figure 47 illustrates a method of operating a sub - engine such as a Lyapunov sub - engine. Method 4700 includes receiving an input regressor
Chem.
Chem.
Chem.
Chem.
[0522] Although not shown, the Lyapunov sub - engine can operate as a stand - alone controller. In such an embodiment, the estimator module can be replaced by a look - up table experimentally derived for the estimated model parameter tensor Θ. More specifically, the look - up table can be experimentally formed as a mapping between (1) y meas and u out from a reference / calibration system and (2) the estimated model parameter tensor Θ. During operation of the Lyapunov sub - engine as a stand - alone controller, the control u out can be provided to one or more actuators, and the measured value y meascan be obtained from one or more actuators and / or systems. These are then used to select an estimated model parameter tensor Θ from a look-up table, which is then provided to a Lyapunov-independent controller to determine a control signal u out that may be referred to as. This control signal u out can be provided to one or more actuators. Alternatively, the Lyapunov-independent controller may generate a string of possible control signals u se and, as a combination of strings, form a control u out . For example, a weighted average of possible control signals u se can be used to calculate a control u out , but other ways of combining the strings can also be implemented. In some embodiments, the combination may be based on the system output y se estimated for each possible control signal u est_se . These estimated system outputs y est_se can be found, for example, using Model 1 through the estimated part of the non-linear model.
[0523]
Chemical formula
[0524] wherein the estimated model parameter tensor Θ is found in a look-up table based on both the measured system output y meas and the control u out from the previous iteration.
[0525] Tensor Adaptive Tracking and Regulation Control (TARC) sub-engine
[0526] The Lyapunov sub - engine (i.e., the TLMC sub - engine described above) is designed to operate under a number of conditions and with relatively large adaptation gains Γ, Γ1, Γ2, etc. (recall that Γ is an adaptation gain tensor). However, in some situations, the Lyapunov sub - engine may not be the most optimal for adaptive control. For example, the Lyapunov sub - engine may not be the most optimal when the non - linear system being controlled has an unstable zero - dynamics (e.g., non - minimum phase for a single - input single - output or SISO linear system). Aspects of the present disclosure are directed to a control law sub - engine (hereinafter referred to as the tensor adaptive tracking and regulation control or TARC sub - engine) that cooperates with either the Lyapunov control law sub - engine or any of the other control law sub - engines described herein and is configured to optimize the control signal provided to the actuators of the non - linear system being controlled. In some embodiments, the TARC sub - engine can also operate independently of any other sub - engine and, thus, may be referred to as a TARC controller.
[0527] By supporting parallel processing, the TARC control law sub - engine is designed to optimize the use of the tensor signal processing (TSP) hardware resources of the adaptive engine. Additionally, or alternatively, the TARC control law sub - engine also facilitates the use of internal model control (IMC) principles. Broadly speaking, IMC refers to control design in which an inverted input / output (I / O) model of the process / system being controlled is included within the controller. In other words, an IMC system is characterized by a control device that consists of a simulation of the controller and the process being controlled (i.e., the internal model). The internal model calculates the difference between the process and the output of the internal model, and the difference represents the effect of disturbances and / or mismatches in the internal model. The disclosed TARC control law sub - engine may facilitate smoother waveforms and / or faster settling times compared to the prior art through the use of IMC schemes, adaptive inversion control schemes, or combinations thereof.
[0528] In some embodiments, the TARC control sub - engine is configured to manage both the desired process performance and efficiency, for example, when the rail and drive frequency are controlled simultaneously. In such cases, the TARC control sub - engine is designed to prevent error transmission accumulation by incorporating a matrix (or tensor), which is used to impose a weight on the control signal whose amplitude should be minimized. In some aspects, the TARC control law sub - engine enables the use of weighted control signals in a manner similar to a linear quadratic control (LQC) scheme.
[0529] In some embodiments, the adaptive engine may be extended using TARC and TLMC control law sub - engines and other control law sub - engines described later in this disclosure. Thus, the adaptive engine may select the most optimal control law sub - engine (or the most optimal combination of control law sub - engines) for a particular situation. In some examples, the adaptive engine compares the estimated errors (or estimation errors) associated with different control law sub - engines and determines the control law sub - engine to be used. For example, the adaptive engine may select a possible control signal generated by one of a plurality of control law sub - engines based on determining that the control law sub - engine is associated with the lowest estimated error (i.e., the highest estimated accuracy). In other words, the adaptive engine (e.g., a selector module) may select one or a combination of possible control signals u meas that lead to a control u est_out that brings the measured system output y out closer to the estimated total system output y se or the reference signal r. This is based on the measured system output y meas for the previous iteration or the reference signal r and the estimated total system output y est_outIt may involve an error or cost function for comparison. More specifically, TSD518 analyzes a cost function such as Equation 4 and a control signal u considered as an optimal possibility se or a control signal u considered as a possibility (in the form of a topology for combining possible control signals) se A combination of may be selected.
[0530] In the case of stable zero dynamics, the TARC control law sub - engine attempts to achieve the desired performance in a possibly shortest time and / or with minimal control effort (for example, to name two non - limiting examples, minimal / optimized energy usage, minimal / optimal use of controller hardware resources). In some cases, for example, when the TARC control law sub - engine is predicted to cause stability problems, the TLMC control law sub - engine (or any other control law sub - engine) may take over. Once the prediction associated with the TARC control law sub - engine stabilizes, the adaptation engine may switch back from TLMC and use the control signal considered as a possibility provided by TARC to control the non - linear system.
[0531] As will be described in further detail below, the TARC control law sub-engine enables a high level of parallelization by deploying multiple control law modules in parallel paths. The TARC control law sub-engine comprises two or more control law modules (e.g., an adaptive inverse law or AIL control law module, an eigen control law module, a penalty control law module) that can be implemented in parallel, and the parallel implementation enables one or more of oversampling, resource sharing / streaming, and pipelining. Such a design can serve to optimize the use of hardware resources. In some embodiments, some FPGA clock cycles may be used to collect data, which is then passed as a single stream of data, herein referred to as "resource streaming". In some aspects, this serves to reduce the length of the critical path of the system, which may or may not come at the expense of FPGA clock cycles. However, since some FPGA clock cycles can typically fit within one control clock cycle, such a design can have a negligible impact on the control output speed.
[0532] FIG. 11A depicts an embodiment of an adaptive engine 1100 according to various aspects of the present disclosure. As can be seen from the figure, the adaptive engine 1100 includes an estimation rule module 1104 (also referred to as FELB 1104) and a control rule sub-engine 1106, and the control rule sub-engine 1106 includes a plurality of control rule modules. In this embodiment, the control rule sub-engine 1106 includes an adaptive inverse rule (AIL) module 1114 and an adaptive tensor (ATML) of the matrix rule module 1166, and the ATML module 1166 includes an eigenrule (EL) module 1124 and a penalty rule (PL) module 1134. It is assumed that the AIL module 1114, the EL module 1124, and the PL module 1134 may be referred to as control rule modules of the control rule sub-engine 1106. The control rule sub-engine 1106 further includes a control selector / combiner (CSC) 1107, and the CSC 1107 receives possible control signals from each of the control rule modules and outputs a final possible control signal (e.g., u se ) for the adaptive engine 1100. The adaptive engine 1100 further includes a selector module 1108, and the selector module 1108 includes another control selector / combiner (CSC) 1116 and an optional topology selector and designer (TSD) 1118. The CSC 1116 and the TSD 1118 may be similar or substantially similar to the CSC 516 and the TSD 518 described above in connection with FIG. 5.
[0533] Similar to some of the other estimation rule modules (or FELB) described herein, the FELB 1104 receives an input regressor, applies one or more estimation rules to the input regressor, and generates one or more sets of estimated parameter tensors Θ for a non-linear (NL) model of one or more actuators and / or one or more systems controlled by one or more actuators. In some cases, the input regressor is (1) a setpoint stream (also referred to as a reference signal) r, (2) a system output measurement y meas, and (3) control output u from the previous iteration out_k-1 comprises one or more than one of. In some embodiments, the estimation part 808 of the non - linear model (which is a parameterized non - linear model) is stored and / or executed on the FELB 1104 as depicted in FIG. 11B. In other cases, the estimation part 808 is stored and / or executed in the control law sub - engine. In either case, the estimation part 808 is configured to generate a plurality of possible estimated system outputs y est_SE based on the control input. The control input used to generate the possible estimated system outputs may be, in part, based on the location of the estimation part 808. In some cases, the control input fed to the estimation part 808 is the possible control signal u SE_k-1 (or u se_k-1 ) for the previous iteration of the adaptation engine 1100. In some other cases, the control input fed to the estimation part 808 is the possible control signal u SE_k for the current iteration. In still other cases, the control input fed to the estimation part 808 is the actual control signal (u out_k-1 ) for the previous iteration, that is, the actual / output control signal applied to one or more actuators and / or a system controlled by one or more actuators. In some cases, this actual / output control signal is the final control output signal calculated by the selector module 1108.
[0534] As shown in FIG. 11A, FELB outputs a plurality of estimated parameter tensors [Θ], one for each of the AIL module 1114, EL module 1124, and PL module 1134. In some embodiments, FELB 1104 may output a single estimated parameter tensor that is fed to each of the three control law modules. In some cases, the plurality of estimated parameter tensors [Θ] may be stored in the tensor memory 1152 of the adaptation engine. The control law modules are configured to output a possible control to CSC 1107, which then outputs a possible control signal (u SE ) and an estimated system output (y est_SE ) corresponding to the adaptation engine 1100 to the selector module 1108. The selector module 1108 also receives one or more other possible control signals (u SE1 , u SE2 , etc.) and estimated system outputs (y est_SE1 , y est_SE2 , etc.) from one or more other control sub-engines (or control law modules). In certain cases, CSC 1107 outputs one or a combination of the possible control signals received from the control module of the control law sub-engine 1106. As can be seen from the figure, CSC 1107 receives possible control signals (e.g., u SE_AIL , u SE_EL , u SE_PL ) and estimated system outputs (e.g., y est_SE_AIL , y est_SE_PL , y est_SE_EL ) from each of the AIL control law module 1114, EL control law module 1124, and PL control law module 1134, and outputs a single u SE and y est_SE to the selector module 1108. In other words, the u SE and y est_SE provided to the selector module 1108may be one of the possible control signals and the estimated system output, or alternatively, a combination of the possible control signal received by CSC1107 and the estimated system output.
[0535] In one embodiment, AIL1114, the regular rule 1124, and the penalty rule 1134 use the estimated part of the non - linear model to generate the estimated system output (e.g., y est_SE_AIL 、y est_SE_PL 、y est_SE_EL ). More specifically, the system model or non - linear model can include a control part for generating a possible control signal u se and an estimation part for estimating the estimated system output y est_se . The time - varying linear system W m can form the basis of either the estimation part or the control part, can be branched or split into the sum of linear and non - linear parts, the control timeline can be divided into frames of different lengths (or the number of control samples or adaptation iterations), some processing of the non - linear model occurs on the CPU or other slower resources, and the real - time aspect of the non - linear model occurs on the FPGA or other faster resources. The current frame can be supplied with the structure of the time - varying linear system W m . As described with respect to FIG. 43, the non - linear part of the time - varying linear system W m is in fact an unknown error and thus is not used or considered in processing (other than attempts to minimize this error). The structure of the time - varying linear system W m can be pre - processed, for example, on the CPU, but can also be accessed from an experimentally derived look - up table. The structure of the time - varying linear system W m remains constant throughout the current frame. However, the time - varying linear system W mAlso, since it depends on the estimated model parameter tensor Θ, the estimation part of the non - linear model adapts within the frame as Θ changes within FELB1104 (as the adaptation engine modifies Θ to minimize it against the measured system behavior with error). This is based on two or more of (1) the measured system output y from the previous iteration meas , (2) the estimated system output y from the previous iteration est_se , and (3) the reference signal r, and the estimation error
Chem.
Chem.
[0536] Turning now to FIG. 11B, this illustrates a detailed view of the AIL control law module 1114 by one or more implementations. As can be seen from the figure, the AIL control law module 1114 comprises a filter 1181, and the filter 1181 includes a smoothing filter 1182 and a smoothing inverse filter 1183. The AIL control law module 1114 further comprises a conversion module 1188 and a tensor multiplication module 1112. In this embodiment, FELB 1104 comprises an estimation part 808 (which can implement the time-varying linear system W m ). As can be seen from the figure, FELB 1104 is configured to receive an input regressor, and the input regressor includes (1) a setpoint stream r, (2) a system output measurement y meas , (3) an error signal e (the error signal is based on the difference between the setpoint stream and the system output measurement), and / or (4) a possible control signal u SE_AIL for the AIL control law module 1114. Although not necessary, the possible control signal u SE_AIL may correspond to a possible control signal from the current control iteration. FELB 1104 is configured to calculate a set of first estimated parameter tensors, [Θ], for the non-linear model based on applying one or more estimation rules to the input regressor. In this embodiment, FELB 1104 provides the first set of estimated parameter tensors [Θ] to the tensor multiplication module 1112.
[0537] The tensor multiplication module 1112 is electronically, communicatively, and / or logically coupled to the filter 1181, the memory 1152, the conversion module 1188, and the FELB 1104. Further, the tensor multiplication module 1112 is configured to receive a tensor (A CL ), and the A CL tensor is a tensor of the time-varying linear system representation of any desired non-linear waveform desired by the user as the output of the non-linear / chaos generator / synthesizer / chamber plasma system. Additionally, or alternatively, the tensor multiplication module 1112 may also be an internal model (Qm ) is received, and the internal model Q m represents the desired / reference plasma process performance. In some embodiments, Q m may be a filtered version of W m . In certain cases, the tensor multiplication module 1112 receives one or more of A CL and Q m from FELB1104 (or another component of the adaptation engine 1100). The smoothing filter 1182 and the smoothing inverse filter 1183 are each configured to receive the control output u out_k-1 from the previous iteration and the error signal e. In certain cases, the smoothing inverse filter 1183 may also receive the control output u out_k-1 from the previous iteration, and the control output of the previous iteration is received from the selector module 1108. The smoothing inverse filter 1183 provides the inversely filtered version of the error signal H -1 {e} and the inversely filtered version of the control output of the previous iteration H -1 {u out_k-1} to the tensor multiplication module 1112.
[0538] In some embodiments, the AIL control law module 1114 is configured to form a matrix tensor (e.g., a Sylvester matrix tensor) from a first set of estimated model parameter tensors [Θ] received from FELB1104. This Sylvester matrix tensor is then passed through a tensor pseudo-inverse block, which performs the pseudo-inverse operation on all Sylvester matrices in all tensor dimensions. The Sylvester matrices lead to tensors for these matrices, for each input and each time sample,
Chemical
[0539] In some cases, the tensor multiplication module 1112 applies the tensor multiplication between A CL and the pseudo-inverse of the Sylvester matrix tensor to obtain the tensor of the matrix
Chemical formula
Chemical formula
Chemical formula
[0540]
Chemical formula
[0541] In equation (10), "S" is the tensor of the Sylvester matrix and "T" represents a linear algebraic transformation.
[0542]
Chemical formula
Chem.
Chem.
[0543]
Chem.
[0544] In some cases, the adaptation engine 1100 also calculates one or more than one of the possible control signals u SE_PL and u SE_EL corresponding to the penalty law module 1134 and the intrinsic law module 1124, respectively. For example, the TARC adaptation engine utilizes the adaptation tensor of the matrix law (ATML) module 1206 to calculate the estimated output error
Chem.
[0545] FIG. 13A illustrates a pre-calculation block 1300-a of the ATML module 1166 by one or more implementations. In some cases, the ATML module 1166 may be similar or substantially similar to the ATML module 1166 described above in connection with FIG. 11A. As can be seen from the figure, the pre-calculation block 1300-a includes one or more tensor multiplication modules 1312, a sample delay (e.g., a 1-sample delay shown as 1-sd), and one or more summators.
[0546] As described above, the adaptation and estimation law module (shown as FELB1104 in FIG. 11A) generates multiple sets of the estimated parameter tensor Θ based on applying one or more estimation laws to the input regressor, and the input regressor includes (1) the estimation error
Chem.
[0547] In some cases, the system estimation model is a linear time-varying (LTV) representation (or the time-varying linear system W m) may be used to represent. The LTV representation of the system estimation model may be updated for each time sample, which enables high-precision modeling of the nonlinearity, disorder, and dynamic properties of the controlled nonlinear system. In some cases, equations (12) and (13) represent the LTV representation of the system estimation model.
[0548]
Chem.
[0549]
Chem.
[0550] The initial conditions (IC) in equations (12) and (13) are
Chem.
[0551] Furthermore, the matrix
Chem.
[0552]
Chem.
[0553]
Chem.
[0554]
Chem.
[0555] In the above equations 14 - 16, "n" is the order of the system representation (e.g., first order, second order, fourth order, etc.). Further, "m" is the number of control inputs / actuators within the controlled non - linear system. Some non - limiting examples of the controlled control inputs / actuators include drive, rail, frequency, the first configuration / position of the matching network, the second configuration / position of the matching network, etc. In some cases, "I" is the n×n identity matrix (or alternatively, the identity tensor). Thus,
Chemical formula
Chemical formula
[0556] The pre - processing block of the ATML module 1166 (i.e., the pre - calculation block 1300 - a) is configured to map, for each of the eigen - and penalty control law modules, the set of estimated parameter tensors Θ received from the FELB 1104 to the matrix
Chemical formula
[0557]
Chemical formula
[0558] The pre - calculation block 1300 - a then calculates the estimated output error
Chemical formula
[0559]
Chemical formula
[0560] Specifically, the tensor multiplication module 1312
Chemical formula
Chemical formula
Chemical formula
Chemical formula
Chemical formula
[0561] Next, the pre-calculation block 1300-a calculates, based on calculating the difference between the following formulas (20) and (21),
Chemical formula
[0562]
Chemical formula
[0563]
Chemical formula
[0564] In the above equations (18 - 21),
Chem.
[0565] Figure 13B illustrates a block diagram 1300-b of the eigen control rule module 1124 according to one or more implementations. The eigen control rule module 1124 (also referred to as the EL module 1124) includes an eigen solver 1326, a tensor multiplication module 1112, a smoothing filter 1182, a sample delay (e.g., 1-sample delay), one or more summers, and a discrete-time integrator 1347 (DTI). As can be seen from the figure, the eigen solver 1326 of the EL module 1124 is
Chem.
Chem.
Chem.
[0566] In some embodiments, the intrinsic control law module 1124 (or alternatively, the FELB 1104) calculates the system output y est_SE_EL estimated for the intrinsic control law module 1124 (e.g., via the estimated part of the non-linear model, in particular, via the time-varying linear system W m ) and passes it through one or more than one of the CSC 1107 and the selector module 1108. In some examples, the estimated system output y est_SE_EL (k) may be generated by feeding the possible control signal u SE_EL (k) for the current iteration into the estimated part of the non-linear model, which may include the time-varying linear system W m as described above in connection with FIG. 8B. This estimated system output y est_SE_EL(k) is based on a possible control signal generated by the control law module and can also be referred to as a possible estimated system output. In other cases, the estimated system output y est_SE_EL (k - 1), as discussed in relation to Figure 8A, is a possible control signal u SE_EL for the previous iteration considered by the estimation part and may be generated by applying it to.
[0567] As can be seen from the figure, in some cases, FELB1104 (or the parameter / non - linear model) may receive the control output u out_k-1 from the selector module 1108. In such cases, if the non - linear / estimation part / W m is in FELB1104, the estimated total system output y est_out (k) is calculated based on applying the control output u out_k-1 from the previous iteration to the estimation part of the model. The topology selector and designer (TSD) of the selector module selects different weights applied to different possible control signals and uses the present estimated system output (also referred to as the estimated system output for adaptation) to generate the final / actual control output signal u out sent from the selector module 1108 to one or more actuators. In some embodiments, the adaptation engine 1100 updates the possible estimated system output y out when the control output u SE from the previous iteration is different from the possible control signal u est_SE (k - 1) for the previous iteration. In such cases, the possible estimated system output y est_SE (k - 1) is updated by applying the estimation part of the non - linear model to the actual control output u out from the previous iteration (k - 1). The adaptation engine 1100 uses the updated y est_SE (k - 1) to estimate the system output y est_SE(k) may be calculated. For example, the adaptation engine 1100 may calculate y
Chemical Formula
[0568] In some embodiments, the selector module 1108 passes the estimated total system output y est_out (k) to the estimation rule module / FELB 1104. When this estimated total system output y est_out (k) is received from the selector module 1108, it is received from different estimation - control rule module pairs (i.e., FELB - control rule sub - engine pairs) as a series of best - possible estimated system outputs y est_se or as a combination of different possible estimated system outputs y est_se received from various estimation - control rule module pairs. In some embodiments, the selector module 1108 utilizes the same or similar topology and underlying mathematics used to calculate the final / actual control output signal u out . In other words, this estimated system output y est_out (k) for adaptation may be generated (e.g.,...
Claims
1. An adaptive engine, comprising: a first module; and a second module; and A third module and Equipped with the first module is configured to receive an input and generate a first estimated model parameter tensor for a model of the electrical power system based on reducing an error or cost function; the second module is configured to generate a first possible control signal by applying the first estimated model parameter tensor and the input to the model; The third module is configured to generate a control from the first possible control signal.
2. An adaptive engine as described in claim 1, wherein the first module applies an estimation law as part of reducing the error or cost function, and the second module applies a control law to generate the first possible control signal.
3. An adaptive engine as described in claim 1, wherein the model has a control portion for generating the first possible control signal and an estimation portion for generating an estimated system output, the estimation portion taking the first possible control signal as input.
4. An adaptive engine as described in claim 1, wherein the power system is an actuator.
5. An adaptive engine as described in claim 4, wherein the actuator is (1) the power, phase, or frequency of a plasma processing power system, or (2) the impedance of a matching network arranged between the plasma processing power system and a plasma load.
6. The adaptive engine of claim 1, wherein reducing the error or cost function includes quantifying the difference between two or more of (1) a measured system output, (2) an estimated system output, and (3) a reference signal.
7. The adaptive engine of claim 6, wherein the estimated system output is calculated (1) in the first module based on the first estimated model parameter tensor and the first possible control signal from a previous iteration, both applied to the model, or (2) in the second module based on the first estimated model parameter tensor and the first possible control signal, both applied to the model.
8. The adaptive engine of claim 1, further comprising a fourth module configured to receive the input and generate a second estimated model parameter tensor for the model, the second module further configured to generate a second possible control signal by applying the second estimated model parameter tensor and the input to the model, and the third module configured to generate the control from the first possible control signal and the second possible control signal.
9. The adaptive engine of claim 8, further comprising a fifth module configured to generate a third possible control signal by applying the second estimated model parameter tensor and the input to the model, and the third module configured to generate the control from the first possible control signal, the second possible control signal, and the third possible control signal.
10. An adaptive engine as described in claim 9, wherein the second module and the fifth module apply a first control law and a second control law, respectively.
11. An adaptive engine, comprising: a sub-engine configured to provide a potential control signal, an estimated system output, the sub-engine comprising: a model of an electrical power system, the model being a function of a tensor and configured to provide the estimated system output based on the tensor; and a first module configured to estimate the tensors based on minimizing an error or cost function, thereby providing estimated model parameter tensors; a second module configured to generate the possible control signals based on the estimated model parameter tensor; a sub-engine comprising: a third module configured to generate control for the power system based on (1) the possible control signals and (2) the estimated system output; An adaptive engine.
12. An adaptive engine as described in claim 11, wherein the model comprises a control portion configured to generate the possible control signals and an estimation portion configured to generate the estimated system output, the estimation portion being a function of the possible control signals.
13. The adaptive engine of claim 11, further comprising a frame resynthesizer configured to approximate highly nonlinear behavior in the power system by calculating the structure of the model for each frame of input.
14. An adaptive engine as described in claim 12, wherein the frame resynthesizer operates on a first processor and a second processor is configured to estimate the tensor, and the second processor is more suitable for real-time processing than the first processor.
15. The adaptive engine of claim 11, wherein the error or cost function quantifies the difference between two of: (1) the measured system output, (2) the estimated system output, and (3) a reference signal.
16. The adaptive engine of claim 11, wherein the power system is an actuator.
17. A non-transitory, tangible computer-readable storage medium encoded with processor-readable instructions for implementing a method for adaptive control, the method comprising: adapting a tensor with respect to a control sample, the adapting the estimated model parameter tensor being based on reducing an error or cost function, the tensor comprising estimated parameters of a model; generating possible control signals and estimated system outputs from the model based on the tensors; (1) selecting a control from said possible control signal and another possible control signal, or (2) from a mixture of said possible control signal and said another possible control signal; A non-transitory tangible computer-readable storage medium, including:
18. The method described in claim 17, wherein the estimation portion of the model adapts the tensors within a frame, and the structure of the time-varying linear system is constant throughout the frame.
19. The method of claim 17, further comprising dividing a reference signal into frames, the frames comprising the control samples, and selecting a structure of a time-varying linear system for the frames to approximate larger changes in the time-varying linear system than those approximated by adapting the tensor.
20. The method of claim 19, wherein selecting the structure of the time-varying linear system with respect to the frame is performed by a field programmable gate array.
21. The method described in claim 19, wherein the model has a linear portion that approximates the nonlinear behavior of the frame, and generating the possible control signals is performed with respect to the control samples.
22. The method described in claim 21, wherein adapting the tensor is based on the estimated system output for a current or previous iteration of generating the possible control signals.
23. The method of claim 17, wherein the processor comprises a field programmable gate array.