Main Content

getSignalIDByIndex

Simulink.sdi.Run オブジェクト内の指定されたインデックスにある信号の信号 ID を取得

説明

sigID = getSignalIDByIndex(runObj,idx)Simulink.sdi.Run オブジェクト runObj の指定されたインデックス idx にある信号の信号 ID sigID を返します。

ヒント

信号 ID を使用して、信号データとメタデータを含む Simulink.sdi.Signal オブジェクトを取得するか、関数 Simulink.sdi.compareSignals を使用して信号比較を実行できます。

すべて折りたたむ

シミュレーション データ インスペクターのプログラムによるインターフェイスを使用して、同じ実行内の信号を比較できます。この例では、航空機用縦方向コントローラーの入力信号と出力信号を比較します。

最初に、データを含むセッションを読み込みます。

Simulink.sdi.load('AircraftExample.mldatx');

関数 Simulink.sdi.Run.getLatest を使用してデータ内の最新の実行にアクセスします。

aircraftRun = Simulink.sdi.Run.getLatest;

次に、関数 Simulink.sdi.getSignalsByName を使用して、コントローラーへの入力を表す Stick 信号と、出力を表す alpha, rad 信号にアクセスできます。

stick = getSignalsByName(aircraftRun,'Stick');
alpha = getSignalsByName(aircraftRun,'alpha, rad');

信号を比較する前に、比較に使用する許容誤差値を指定できます。比較のベースライン信号に指定された許容誤差値が使用されるため、Stick 信号に 0.1 の絶対許容誤差値を設定します。

stick.AbsTol = 0.1;

ここで、関数 Simulink.sdi.compareSignals を使用して信号を比較します。Stick 信号はベースラインで、alpha, rad 信号はベースラインと比較される信号です。

comparisonResults = Simulink.sdi.compareSignals(stick.ID,alpha.ID);
match = comparisonResults.Status
match = 
  ComparisonSignalStatus enumeration

    OutOfTolerance

比較結果は許容誤差の範囲外です。関数 Simulink.sdi.view を使用して、シミュレーション データ インスペクターを開き、比較結果を表示および解析できます。

入力引数

すべて折りたたむ

目的の信号が含まれる実行。Simulink.sdi.Run オブジェクトとして指定します。

実行内の信号のインデックス。整数として指定します。

出力引数

すべて折りたたむ

一意の数値信号識別子。整数として返されます。

バージョン履歴

R2012b で導入