StateFlowの変数にアクセスする

10 views (last 30 days)
Mamoru Mabuchi
Mamoru Mabuchi on 4 Jan 2021
Commented: Mamoru Mabuchi on 6 Jan 2021
StateFlowに宣言してある変数に、MATLABのコマンドラインからアクセスして、
サイズの変更や、データ型の変更等をしたいです。
アクセスするには、どのようにすれば良いでしょうか?
よく似たコマンドに、Stateflow.Dataがありますが、この関数では、新規に
変数を定義してしまいます。
既に宣言してある変数にアクセスしたいです。アドバイスお願いします。

Answers (1)

Atsushi Ohashi
Atsushi Ohashi on 6 Jan 2021
Stateflow APIのfindメソッドで既存のStateflowオブジェクトを探せます。
% モデルのオブジェクトを取得
obj = get_param(bdroot, 'Object');
% モデル内からChartブロックを探す
objChart = obj.find('-isa', 'Stateflow.Chart')
% Chart内のDataオブジェクトを見つける
objData = objChart.find('-isa', 'Stateflow.Data')
%% もしくは
% もしDataの変数名が分かっているのであれば、変数名をオプションにしてモデルのルートから探すこともできます
objData = obj.find('-isa', 'Stateflow.Data', 'Name', 'u');
下記がご参考になると思います。
  1 Comment
Mamoru Mabuchi
Mamoru Mabuchi on 6 Jan 2021
回答ありがとうございました。
解決いたしました。

Sign in to comment.

Products


Release

R2019b

Community Treasure Hunt

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

Start Hunting!