メインコンテンツ

sltest.testsequence.setProperty

Test Sequence ブロック プロパティを設定

説明

sltest.testsequence.setProperty(blockPath,Name,Value) は、1 つ以上の NameValue のペアに従って、blockPath で指定された Test Sequence ブロックのプロパティを設定します。有効なプロパティを取得するには sltest.testsequence.getProperty を使用します。

メモ

ActiveStepDataSymbolScenarioParameter 以外のプロパティはすべて書き込み可能です。ActiveStepDataSymbol または ScenarioParameter の値を sltest.testsequence.setProperty を使用して変更することはできません。ただし、sltest.testsequence.editSymbol を使用してシンボルの名前を変更できます。

すべて折りたたむ

この例では、Test Sequence ブロックをプログラムで作成し、sltest.testsequence.setPropertyNameValue のペアで使用できるブロック プロパティを取得する方法を示します。

モデルと Test Sequence ブロックを作成します。

new_system('tsb_model');
sltest.testsequence.newBlock('tsb_model/Test Sequence');

Test Sequence ブロックのプロパティを取得します。

block_properties = sltest.testsequence.getProperty...
    ('tsb_model/Test Sequence')
block_properties = struct with fields:
                         Name: 'Test Sequence'
                 UpdateMethod: 'INHERITED'
                   SampleTime: '-1'
                  Description: ''
                     Document: ''
                          Tag: []
        SupportVariableSizing: 1
    SaturateOnIntegerOverflow: 1
                  InputFimath: 'fimath(...↵)'
             EmlDefaultFimath: 'Same as MATLAB Default'
         EnableActiveStepData: 0
         ActiveStepDataSymbol: ''
           ActiveStepDataType: 'String'
            ScenarioParameter: ''
                    Semantics: 'StateflowCompatible'

この例では、プログラム インターフェイスを使用して Test Sequence ブロックのプロパティを取得および設定します。

1.モデルを読み込みます。

Model = 'sltestRollRefTestExample';
load_system(Model)

2.Test Sequence ブロックのプロパティを取得します。

blockInfo = sltest.testsequence.getProperty([Model '/Test Sequence'])
blockInfo = struct with fields:
                         Name: 'Test Sequence'
                 UpdateMethod: 'INHERITED'
                   SampleTime: '-1'
                  Description: ''
                     Document: ''
                          Tag: []
        SupportVariableSizing: 1
    SaturateOnIntegerOverflow: 1
                  InputFimath: 'fimath(...↵)'
             EmlDefaultFimath: 'Same as MATLAB Default'
         EnableActiveStepData: 0
         ActiveStepDataSymbol: ''
           ActiveStepDataType: 'Enum'
            ScenarioParameter: ''
                    Semantics: 'StateflowCompatible'

3.Test Sequence ブロックの update メソッドを取得します。

blockUpdateMethod = sltest.testsequence.getProperty(...
    [Model '/Test Sequence'],'UpdateMethod')
blockUpdateMethod = 
'INHERITED'

4.Test Sequence ブロックの update メソッドとサンプル時間を変更します。

sltest.testsequence.setProperty([Model '/Test Sequence'],...
    'UpdateMethod','Discrete','SampleTime','0.1')

5.アクティブなステップのデータを有効にして、データ型を String に設定します。Test Sequence ブロック内の単一のテスト シーケンスまたはシナリオ間で重複するステップ名がある場合は、このデータ型を使用します。

sltest.testsequence.setProperty([Model '/Test Sequence'],...
    'EnableActiveStepData',1,'ActiveStepDataType','String');

6.変更内容を確認します。

blockInfo = sltest.testsequence.getProperty([Model '/Test Sequence'])
blockInfo = struct with fields:
                         Name: 'Test Sequence'
                 UpdateMethod: 'DISCRETE'
                   SampleTime: '0.1'
                  Description: ''
                     Document: ''
                          Tag: []
        SupportVariableSizing: 1
    SaturateOnIntegerOverflow: 1
                  InputFimath: 'fimath(...↵)'
             EmlDefaultFimath: 'Same as MATLAB Default'
         EnableActiveStepData: 1
         ActiveStepDataSymbol: 'Active_Step'
           ActiveStepDataType: 'String'
            ScenarioParameter: ''
                    Semantics: 'StateflowCompatible'

ActiveStepEnumName は、Test Sequence ブロックのプロパティである、ActiveStepDataSymbol のプロパティです。アクティブなステップの列挙名を NewEnumName に設定するには、次のコードを使用します。

ts = sltest.testsequence.getProperty(...
     'model/Test Sequence');
sltest.testsequence.editSymbol(...
     'model/Test Sequence',...
     ts.ActiveStepDataSymbol,...
     'ActiveStepEnumName','NewEnumName')

入力引数

すべて折りたたむ

Test Sequence ブロックのブロック名を含むパス。string または文字ベクトルとして指定します。ブロック パスの代わりにブロック ハンドルを使用できます。

例: 'FanSpeedTestHarness/Test Sequence'

名前と値のペアの引数

オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで、Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。

R2021a より前では、コンマを使用して名前と値をそれぞれ区切り、Name を引用符で囲みます。

例: 'Description','Temperature cycle','EnableActiveStepData',true

有効な名前と値のペアはブロックごとに異なります。ブロックのプロパティを取得するには sltest.testsequence.getProperty を使用します。

バージョン履歴

R2017a で導入