飛翔体の運動モデルの信号の次元についてのエラー
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
凌 山本
el 14 de Sept. de 2021
Comentada: Atsushi Ueno
el 18 de Sept. de 2021
MATLAB Function3についてです。
実行すると、信号が一致しませんというエラーが出てしまいます。
次元を確認したのですが、特に問題ないように思えます。
大変お手数ですが、確認して頂いてもよろしいでしょうか?
2 comentarios
Atsushi Ueno
el 14 de Sept. de 2021
Editada: Atsushi Ueno
el 18 de Sept. de 2021
できましたらR2016辺り形式のmdlファイルも付けて頂けませんでしょうか。
Atsushi Ueno
el 18 de Sept. de 2021
メモ:同一の原因と思われる類似の質問 simlinkの次元不一致エラー - MATLAB Answers - MATLAB Central (mathworks.com)
二者共同じFlightDynamicsModelをベースにしていて、そのベースとなるモデルに元々含まれていたバグなのかな...
Respuesta aceptada
Atsushi Ueno
el 15 de Sept. de 2021
下記の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 comentarios
Atsushi Ueno
el 15 de Sept. de 2021
他にも色々エラーがありましたが、接続されていない信号など単純なものです。
また、上記ライブラリを動かす事が出来なかったので、適当な演算に変更しています。動作確認していないので、添付モデルは修正箇所の確認用にだけご利用ください。
Más respuestas (1)
Ver también
Categorías
Más información sobre Model Verification en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!