Hi there,
The system I'm trying to control using state feedback matched uncertainty L1 adaptive control is a non-minimum phase nonlinear dc-dc boost converter with a nonlinear pulse width modulating (switching) actuation. L1AC is a state predictor based direct model reference adaptive controller with a low pass filter placed at the input to both the plant and predictor. This allows decoupling estimation (adaptation) from control (robustness) and hence fast adaptation rates can be used without sacrificing robustness as is the case in many conventional adaptive control schemes.
I'm struggling to realise the system in Simulink simulation, the main problem being initialising the system as it is PWM actuated. This means if the control input is close to 0 or 1 you either have 0 actuation or theoretically full actuation (leading to output divergence). Possible reasons for this could be that my initial estimate parameters are outside the set for a projection based adaptation law. Though I have calculated the bounds and set the initial estimates within, 1 of 2 estimates jumps to the bounded limit - this is without having augmented the nominal system i.e. I don't need adaptation at this point. I have tried to start the system without adaptation, closely match the state predictor with the nominal nonlinear system and try to get the errors between these small enough so that when adaptation kicks in the estimates don't jump and drive the PWM to effectively open the loop. The system has a constant disturbance so without some integral action and without adaptation the nominal plant and state predictor never equal however as stated I just wish to maintain a manageable prediction error before I connect the estimator. I have even used a very small adaptation rate to sort of revert back to an MIT like rule but still having no luck.
Ultimately the problem could be coming from a number of places;
- the projection operator
- maybe I need to input the constant disturbance into state predictor (require adaptation/estimate of this?)
- could be a misplaced sign if even with a small adaptation gain I'm still experiencing trouble at start up.
- Would the fact that the control input must be between 0 and 1 mean I need to incorporate saturation of input in state predictor?
- Should my predictor matrices be in control canonical form?
Anyone with any knowledge of implementing model reference adaptive controllers would be great, in particular L1AC. Simulink simulation examples available online are conveniently done in a linear state space format and don't consider nonlinear models of the plant. Any simulation examples of MRAC/L1AC of nonlinear models would also be great if possible.
Thanks