Adaptive Model Predictive Control Design with Simulink | Understanding MPC, Part 7

Поділитися
Вставка
  • Опубліковано 20 лип 2024
  • In this video, you will learn how to design an adaptive Model Predictive Control controller for an autonomous steering vehicle system whose dynamics change with respect to the longitudinal velocity.
    After you design an MPC controller for the most likely operating conditions of your control system, you can implement an adaptive MPC controller based on that design. At each time step, adaptive MPC updates the plant model and nominal conditions for the current operating conditions. In this video, you’ll learn how to calculate and update the discrete plant model required by the adaptive MPC block. You’ll also learn how to generate code from your adaptive MPC controller, and you’ll see an example showing a real self-driving car that uses MPC control and image processing algorithms to keep itself within its lanes.
    Watch all of the videos in this series about Understanding Model Predictive Control: • Understanding Model Pr...
    Download this hands-on MPC virtual lab to practice design of model predictive controllers for an autonomous vehicle steering system: bit.ly/MPC-virtual-lab
    Related Resources:
    - Free Technical paper on Adaptive Cruise Controller with Model Predictive Control: bit.ly/2JhmOYr
    - Download model: bit.ly/2QcllZj
    Additional Resources:
    - What is Model Predictive Control Toolbox: bit.ly/2xfEe2M
    - Lane Keeping Assist System Example: bit.ly/2xh6lhR
    - Lane Keeping Assist System Using Model Predictive Control Example: bit.ly/2xhlRKK
    - Lane Keeping Assist with Lane Detection: bit.ly/2xgSatq
    - Obstacle Avoidance Using Adaptive Model Predictive Control: bit.ly/2Jgzw9B
    - Developing Longitudinal Controls for Self-Driving Taxi: bit.ly/2xjL9rF
    ---------------------------------------------------------------------------------------------------------------------------------------------------------
    Get a free product Trial: goo.gl/ZHFb5u
    Learn more about MATLAB: goo.gl/8QV7ZZ
    Learn more about Simulink: goo.gl/nqnbLe
    See What's New in MATLAB and Simulink: goo.gl/pgGtod
    © 2018 The MathWorks, Inc. MATLAB and Simulink are registered
    trademarks of The MathWorks, Inc.
    See www.mathworks.com/trademarks for a list of additional trademarks. Other product or brand names maybe trademarks or registered trademarks of their respective holders.
  • Наука та технологія

КОМЕНТАРІ • 55

  • @daesoolee1083
    @daesoolee1083 4 роки тому +1

    Woah. I initially started watching the first video of this playlist and ended up watching until the end.
    I didn't know there was such as thing like "MPC controller" but only knew about a PID controller.
    It is an amazing control algorithm. (as long as you have a good mathematical model of it hhh)

  • @marceloandresacuna5932
    @marceloandresacuna5932 4 роки тому

    Excellent series of videos, very useful!.

  • @mahendrakumargohil6384
    @mahendrakumargohil6384 3 роки тому

    Excellent video series on MPC. Very good teaching skills :)

  • @taozhang3800
    @taozhang3800 5 років тому +1

    Thanks for your teaching!That's great!

  • @ireshahemachandra3922
    @ireshahemachandra3922 5 років тому +1

    Really helpful tutorial, thanks!

  • @thanzaw8863
    @thanzaw8863 5 років тому +1

    very good explanation ! thank you so much

  • @user-jl1up3hq3k
    @user-jl1up3hq3k 5 років тому +1

    Thanks for your teaching!

    • @user-pt6lb1ys2q
      @user-pt6lb1ys2q Рік тому

      Hi, how did you export the adaptive mpc from simulink to your workspace? Since it doesn't have the option to use the MPC design tool and export it from there I can't think of a way to do it.

  • @muhammadmateenshahid2811
    @muhammadmateenshahid2811 3 роки тому

    Hi, Thank you for this complete video series. Its really helpful. Can you please make a series of short videos on PID controller? or If its already made, can you/anyone share the link here? Thanks in Advance

  • @eaglezyb
    @eaglezyb 5 років тому +1

    Thanks for this!!

  • @MATLAB
    @MATLAB  5 місяців тому

    Download this hands-on MPC virtual lab to practice design of model predictive controllers for an autonomous vehicle steering system: bit.ly/MPC-virtual-lab

  • @adiandrei11
    @adiandrei11 5 років тому

    Can you please tell me how you plot the steering angle values?

  • @skim1324
    @skim1324 4 роки тому

    Hi, I have a question on how to linearize to obtain multiple state-space models. Can I ask how you obtain each model for various velocities? Did you use the linearization inside the MPC block with the nonlinear plant block named "Plant with
    changing dynamics"? Otherwise, do we need to linearize each state-space model with setting up the velocity as constant?

  • @rasoolakbary9577
    @rasoolakbary9577 5 років тому +1

    so excellent,thanks alot

  • @ccilence241
    @ccilence241 5 років тому +1

    thanks much for you video

  • @alessiodaddario2102
    @alessiodaddario2102 2 роки тому

    Good evening, if instead of the reference block, I wanted to create a signal that was generated by an obstacle detection mechanism to avoid it safely, would it be possible to do so?

  • @souheybmohammedbelhadj5189
    @souheybmohammedbelhadj5189 6 місяців тому

    Thank you 👍❤

  • @RajKumar-wj3xd
    @RajKumar-wj3xd 5 років тому +1

    Hi, Thanks for the video. Can u pls tell me how to define the cost function for the optimizer?

    • @gokulkumar9250
      @gokulkumar9250 2 роки тому

      in the video, they did it in the MPC design option itself by giving weight and constraints steer angle and steer value is imported from reference

  • @user-dm1jy8st3e
    @user-dm1jy8st3e 5 років тому

    thank you for this video. I still wonder how to do optimization if the model is sth like LSTM neural network.

    • @user-pt6lb1ys2q
      @user-pt6lb1ys2q Рік тому

      Hi, how did you export the adaptive mpc from simulink to your workspace? Since it doesn't have the option to use the MPC design tool and export it from there I can't think of a way to do it.

  • @aminkoolivand2790
    @aminkoolivand2790 5 років тому

    Tnk you so much

  • @onghoang830
    @onghoang830 3 роки тому

    Thank you so much for your useful tutorial.
    How can I see the performance of the controlled trajectory in the "drivingScenarioDesigner"?

    • @jaswanthn5004
      @jaswanthn5004 3 роки тому

      In 2020 matlab version you can check, they have provided some evaluation metrics.

  • @KK-fh1ds
    @KK-fh1ds 4 роки тому

    Soo cool

  • @shuyangan3892
    @shuyangan3892 5 років тому

    i have a feeling that in the video, the velocity is included in the plant model, thus the so called adaptive is needed, however, is it more reasonable that both steering angle and velocity being input and the plant model is purely vehicle dynamics?

    • @meldaulusoy8389
      @meldaulusoy8389 5 років тому +1

      Hi, the velocity is included in the plant model regardless of the type of MPC controller you use (whether regular or adaptive). The lateral vehicle dynamics is changing with the longitudinal velocity which is provided to the plant model as an input so that we can change it and simulate it with different inputs (constant, sine wave).

  • @j.garcia4611
    @j.garcia4611 4 роки тому

    Hi, how did you export the adaptive mpc from simulink to your workspace? Since it doesn't have the option to use the MPC design tool and export it from there I can't think of a way to do it. I also tried to just run the simulation and see if it created the variable in the workspace automatically but it didn't and it also couldn't run since it has to be discretisized and to do that I need to have it in the workspace.

  • @techzila5379
    @techzila5379 3 роки тому

    Mam, I have a second order plant model. I want to implement MPC Please tell me ?

  • @AhmedMagdy-xb8bl
    @AhmedMagdy-xb8bl 16 днів тому

    At 6:13, when using code generation, what happens to the "Update Plant Model" block? Shouldn't code be generated for it as well, or does the Adaptive MPC Controller obtain it somehow like it does with the plant model?

  • @user-pn8ix3yr9c
    @user-pn8ix3yr9c 5 років тому +1

    Thank you very much for your video. But how is your vehicle model built? Is carsim?

    • @meldaulusoy8389
      @meldaulusoy8389 5 років тому

      It's been developed as a state space model. Feel free to download the model from the link given in the video description to look inside the plant. The video also shows the equations used to build the plant model @0:18.

    • @user-pn8ix3yr9c
      @user-pn8ix3yr9c 5 років тому

      @@meldaulusoy8389 Thank you for your reply.AndI want to learn programming about predictive control of Piecewise affine models. Do you have a recommendation for learning materials? Thanks for your reading.

    • @user-vu7kj1vm9h
      @user-vu7kj1vm9h 5 років тому +1

      你好,请问他的这个模型plant里面有两个输入两个输出,但是下载到的里面只有一个输入一个输出,这个你解决了么

  • @tirthgadhvi9584
    @tirthgadhvi9584 3 роки тому

    This Controller works for Vehicle Dynamic Model. What if I have an Kinematic Bicycle model , will the controller still work similarly, any leads ?

    • @muhammadmateenshahid2811
      @muhammadmateenshahid2811 3 роки тому

      Since, You have to provide plant model in state space form. It should work for Bicycle as well if the model you have created is accurate.

  • @RameezKhan-cm7rq
    @RameezKhan-cm7rq Рік тому

    How to linearize the vehicle model?

  • @amr.a-m8350
    @amr.a-m8350 3 роки тому +1

    There are a file of adaptive MPC

  • @chandrasekharjinendran6844
    @chandrasekharjinendran6844 3 роки тому +1

    Please help, these errors are coming :
    Error in port widths or dimensions. The signal connected to the "Model.DX" port of the "untitled/Adaptive MPC Controller" block must be a matrix signal of 4 rows and 1 columns.
    Error in port widths or dimensions. 'Output Port 1' of 'untitled/Adaptive MPC Controller/MPC/MPC Matrix Signal Check DX/Input' is a one dimensional vector with 4 elements.

  • @skim1324
    @skim1324 4 роки тому +14

    Looks like the above link for "Download model" is wrong. The right one is www.mathworks.com/matlabcentral/fileexchange/68939-adaptive-mpc-design-with-simulink

    • @fernando.liozzi.41878
      @fernando.liozzi.41878 4 роки тому

      Thanks!

    • @payman_azari
      @payman_azari 4 роки тому

      thanks

    • @abhisheksrivastava4236
      @abhisheksrivastava4236 3 роки тому

      Thanks a lot sir....

    • @user-qw9nn8yv5c
      @user-qw9nn8yv5c 3 роки тому

      @@abhisheksrivastava4236 wow... Thanks god haha

    • @user-qw9nn8yv5c
      @user-qw9nn8yv5c 3 роки тому

      and the block, Plant changing dynamics, in the Medlas_library.slx is also wrong. so if u guys want to follow this video, use that block which is in the "Adaptive_MPC.slx".

  • @pathikrit1997
    @pathikrit1997 5 років тому +1

    how to create the plant model for a mimo system?

    • @meldaulusoy8389
      @meldaulusoy8389 5 років тому

      Hi,
      If you have a MIMO system that you want to control, you should first create its state space representation. Below please find more information on state space models. Feel free to check out the video series on state space models that are shown on the right hand side of the page.
      www.mathworks.com/videos/series/state-space-models-100817.html

  • @aakashdewangan7313
    @aakashdewangan7313 Рік тому

    video is recorded in my INDIA😍😍😍😍😍

  • @shanmukhasaiannabathini989
    @shanmukhasaiannabathini989 4 роки тому

    this is shanmukh...!!
    shanmukha sai.......!!!!!!!!!!!

  • @dr.d.suresh8449
    @dr.d.suresh8449 3 роки тому

    hi explanation

  • @user-xi3pm4qx2b
    @user-xi3pm4qx2b 5 років тому

    You can download model : kr.mathworks.com/matlabcentral/fileexchange/68939-adaptive-mpc-design-with-simulink

    • @anisabatool7379
      @anisabatool7379 2 роки тому

      how to create another input and output ports in its plant model