Signal filtering for MPC (model predictive controller) output.
4 次查看(过去 30 天)
显示 更早的评论
Hi,
Im using an Adaptive MPC to make a steering controller. But in order to track the path very accurately my MPC output has a lot of oscillations. In order to reduce this Ive tried reducing the constraints and tuning the MPC, but the oscillations still persist. The signal oscillation is shown in the figure below, titled noisy steering. Ive tried filtering the oscillations using moving average and median filter with some success, but I feel i can still do it better perhaps with some other filter which I'm unaware of.
Can anybody think of a suitable filter or advice of how to fix this without filtering? Personally I feel the MPC is working fine since it gives all the results that can be theoretically proved.
P.S. that this figure below was extracted from the closed loop system with the filter placed in series with MPC. Due to the filter the MPC works more and therefore to avoid the closed loop unstability and signal lag Ive had to keep the moving average window down to 4 and similarly the window for median filter is also 4.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/318721/image.jpeg)
1 个评论
ali
2020-8-28
I think you can use moving Average Filter and since you know for a moving average filter it will delay your signal by (N-1/2) samples, you calculate that and you use your (N-1/2) sample in your horizon, rather than your first point in your horizon.
回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Model Predictive Control Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!