SimulinkのMatlab functionで配列を保持する方法について

15 ビュー (過去 30 日間)
Kenjirou Oomori
Kenjirou Oomori 2020 年 3 月 15 日
コメント済み: Toshinobu Shintai 2020 年 3 月 16 日
SimulinkでMatlab functionを使用し配列を計算。
その配列を次のステップでもMatlab functionで使用したいのですが、配列を保持する方法がわかりません。
Simulink で配列を保持する方法について教えていただきたいです。

採用された回答

Toshinobu Shintai
Toshinobu Shintai 2020 年 3 月 15 日
配列に限らず、Simulinkで変数を保持するためには「persistent」を使う必要があります。
関数の最初の方で以下のように記述します。
persistent a;
if isempty(a)
a = zeros(3,1);
end
この場合「a」がstatic変数扱いとなり、次の計算ステップまで値を保持するようになります。
「if isempty」のところは、aの初期化を行っています。ここで任意の値に初期化することができます。初期化は必ず行ってください。
  4 件のコメント
Kenjirou Oomori
Kenjirou Oomori 2020 年 3 月 16 日
お騒がせしてすみません。
新たにブロック線図を作り直したら、無事実行することができました。
ありがとうございました。
Toshinobu Shintai
Toshinobu Shintai 2020 年 3 月 16 日
安心しました。こちらこそありがとうございます。

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeSimulink Function についてさらに検索

Community Treasure Hunt

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

Start Hunting!