Adaptive MPC: Dimension Error of Block Input

9 vues (au cours des 30 derniers jours)
Peter Reithuber
Peter Reithuber le 31 Oct 2018
Commenté : Amr Elsherbiny le 13 Juil 2023
I have a problem with the use of adaptive mpc block in matlab. The input dimensions of DX to the adaptive mpc block seem to be wrong and the errors (as can be seen in the picture) occur. The simulation uses a simple 2dof kinematic single track vehicle model; state matrices: A[0 vx; 0 0], B[1 0; 0 1], C[1 0; 0 1], D[0 0; 0 0]; mv=2; mo=2; It works using the standard MPC controller, but I have a problem using it for the Adaptive MPC Block. How can I solve this problem?
  3 commentaires
Jakobus Louw
Jakobus Louw le 9 Avr 2020
I have exactly the same problem. Did any of you find the solution? Please make a public post if you have.
Seyyed Ali Ghorashi Khalil Abadi
I have also the same issue, Is there anyone who know what shoud I do?

Connectez-vous pour commenter.

Réponses (1)

Jakobus Louw
Jakobus Louw le 9 Avr 2020
It is a bug in the Adaptive MPC block where it checks for the correct dimentions of the input ports. For some reason it does not accept a vector signal, but checks for a matrix signal.
I added Signal Specification blocks to all the "MPC Matrix Signal Check <>" subsystems to explicitly state the dimentions.
I found this subsystem by following the link in the Diagnostics Panel, and disabling the link so that I could edit the block locally (not the library block).
That cleared up the error.
  9 commentaires
Amr Elsherbiny
Amr Elsherbiny le 13 Juil 2023
Jakobus Louw, I tried your method and it worked with me. I had the same issue with linear MPC block
Amr Elsherbiny
Amr Elsherbiny le 13 Juil 2023

Connectez-vous pour commenter.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by