飛翔体の運動モデルの信号の次元についてのエラー

MATLAB Function3についてです。
実行すると、信号が一致しませんというエラーが出てしまいます。
次元を確認したのですが、特に問題ないように思えます。
大変お手数ですが、確認して頂いてもよろしいでしょうか?

2 Commenti

Atsushi Ueno
Atsushi Ueno il 14 Set 2021
Modificato: Atsushi Ueno il 18 Set 2021
できましたらR2016辺り形式のmdlファイルも付けて頂けませんでしょうか。
Atsushi Ueno
Atsushi Ueno il 18 Set 2021
二者共同じFlightDynamicsModelをベースにしていて、そのベースとなるモデルに元々含まれていたバグなのかな...

Accedi per commentare.

 Risposta accettata

Atsushi Ueno
Atsushi Ueno il 15 Set 2021

1 voto

下記のMATLAB Function3に対する入力の内、
function y = fcn(J, Mxyz)
y = J \ Mxyz;
Jは3*3の行列、Mxyzは3*1の列ベクトルになるべき所ですが、
下記のMATLAB Functionの出力を見ると、Mxyzが1*3の行ベクトルになっています。
function y = fcn(MAx,MAy,MAz)
MA=[MAx
MAy
MAz]; % 見た目は縦だけど、実際は横方向の行ベクトルになっている
y = MA;
なので、下記の様に変更しました。
function y = fcn(MAx,MAy,MAz)
y = [MAx;MAy;MAz]; % 列ベクトルに変更した
ただ、MATLAB Functionに信号の次元が期待通りに継承されない部分があるようで、上記修正をしても別のエラーが出ました。モデルエクスプローラでmldevideを演算するMATLAB Function3の入力信号のサイズをそれぞれ[3 3],[3 1]に固定するとエラーが解消しました。

2 Commenti

Atsushi Ueno
Atsushi Ueno il 15 Set 2021
他にも色々エラーがありましたが、接続されていない信号など単純なものです。
また、上記ライブラリを動かす事が出来なかったので、適当な演算に変更しています。動作確認していないので、添付モデルは修正箇所の確認用にだけご利用ください。
凌 山本
凌 山本 il 17 Set 2021
勉強になりました。
ありがとうございます。

Accedi per commentare.

Più risposte (1)

凌 山本
凌 山本 il 15 Set 2021

0 voti

2016aのmdlファイルを添付しました。
こちらでよろしいでしょうか?

1 Commento

Atsushi Ueno
Atsushi Ueno il 18 Set 2021
ありがとうございます開けました。

Accedi per commentare.

Categorie

Scopri di più su 一般分野への適用 in Centro assistenza e File Exchange

Prodotti

Release

R2020b

Community Treasure Hunt

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

Start Hunting!