How do I solve "Error in port widths or dimensions" error in Simulink?

조회 수: 4 (최근 30일)
d
  댓글 수: 5
Ankit
Ankit 2020년 10월 2일
try File --> Export Model to --> Previous Version -- 2018b
Ankit
Ankit 2020년 10월 2일
great :) what are the values of k_1 and k_2 ? how have you defined them?

댓글을 달려면 로그인하십시오.

채택된 답변

Ankit
Ankit 2020년 10월 2일
function input = C_REG(q)
% global k_1 k_2
x=q(1);
y=q(2);
theta=q(3);
e_p=[-x -y];
sag=[cos(theta);sin(theta)];
gamma=atan2(y,x)-theta+pi;
% driving velocity
v=k_1*e_p.*sag;
% steering velocity
omega=k_2*gamma;
input = [v;omega];
you have to careful with matrix/vector multiplication. your e_p [1 x2 ] and sag [2x1] --> multiplication of e_p and sag gives a matrix of [2x2] and multiply with k1 [1] results in a vector of [1x2] --> driving velocity
and similarly omega is a scalar.
Could you please explain what is your expected output ? steering velocity vector or scalar.
and similary driving velocity?
  댓글 수: 5
Ankit
Ankit 2020년 10월 2일
Hi no problem.
you have to correctly define your inputs.
I tried the following:
function [input1,input2] = C_REG(q)
global k_1 k_2
x=q(1);
y=q(2);
theta=q(3);
e_p=[-x -y];
sag=[cos(theta);sin(theta)];
gamma=atan2(y,x)-theta+pi;
% driving velocity
v=k_1.*e_p.*sag;
% steering velocity
omega=k_2*gamma;
input1 = v;
input2 = omega;
As I am not aware to your problem statement but you just need to see your sizes of inputs and outputs are correct!
omega is a scalar or vector?
as you see your v is a vector and omega is a scalar currently. You are not allowed to do the following
input = [v;omega]; % Dimensions of arrays being concatenated are not consistent so you will get an error.
Ankit
Ankit 2020년 10월 2일
try this. as you mentioned your v and omega are scalar following will work. let me know if it is clear now?
function input = C_REG(q)
global k_1 k_2
x=q(1);
y=q(2);
theta=q(3);
e_p=[-x -y];
sag=[cos(theta);sin(theta)];
gamma=atan2(y,x)-theta+pi;
% driving velocity
v=k_1*e_p*sag; % now it is scalar
% steering velocity
omega=k_2*gamma; % scalar
input = [v;omega]; % it is allowed

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Monte Carlo Analysis에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by