MATLAB funtionの出力をMATLAB funtionの入力に使いたい

3 visualizaciones (últimos 30 días)
kazuki watada
kazuki watada el 3 de Mayo de 2020
Respondida: Shoumei el 7 de Mayo de 2020
simulinkにて、あるsolidの座標系をTransSenrorでセンシングし、その値をMATLAB funtionに入力しMATLAB funtionで求めた力をExternal Forceに入力しsolidに繋げそれをまたセンシングし...というシミュレーションを作成しています。
すると、MATLAB funtionで出力を入力としているので、代数ループのエラーが発生しました。 そこで、funの出力をto workspaceへ、funの入力をfrom workspaceとしてやってみました(初期の入力はmファイルから)。出力を入力としたいのは、a(整数)とh(h(i,j)、iとjによってきまるh(二次元行列?配列?))です。
すると初めのhの出力は(imax,jmax)の配列となって いるのですがfrom workspaceからの入力では(jmax-1,1)の配列となっておりエラーが起きます。 またaは「workspace入力として指定された行列変数が無効です。行列データは、実数でdoubleの2次元の行列で、2列以上でなければなりません。1番目の列は時間の値を含み、残りの列はデータ値を含まなければなりません。行列の値をInfまたはNaNにすることはできません。」というエラーが起きます。
inportブロックなど試してみたのですがよくわかりません。 解決よろしくお願い致します。

Respuesta aceptada

Shoumei
Shoumei el 7 de Mayo de 2020
TransSenrorとやらが何のことを言われているのかわからないので、問題が何なのか正しく理解していないかもしれませんが、代数ループエラーが問題であれば、フィードバックループにDelayブロックを挿入して1サンプル遅延させると解決するはずです。お試しください。

Más respuestas (0)

Categorías

Más información sobre ループと条件付きステートメント 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!