このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
Simulink.sdi.addTrigger
シミュレーション データ インスペクターで表示の更新を制御するトリガーを信号に追加する
説明
Simulink.sdi.addTrigger(
はノーマル モードおよび自動レベルを使用した立ち上がりエッジ トリガーを、sig
)Simulink.sdi.Signal
オブジェクト sig
に追加します。トリガーは、信号のストリーミング用の新しいデータを表示するためにシミュレーション データ インスペクターのプロットが更新されるタイミングを決定します。
Simulink.sdi.addTrigger(
は、1 つ以上の名前と値のペアの引数によって指定されたトリガー設定をもつ指定された信号にトリガーを追加します。たとえば、sig
,Name,Value
)'Mode','Normal'
はトリガーのノーマル モード動作を構成します。シミュレーション データ インスペクターのトリガーは、Scope ブロックのトリガーと同じように動作します。トリガー タイプと設定の詳細については、Scope Triggersを参照してください。
例
シミュレーション データ インスペクターの信号にトリガーを追加し、新しいデータを表示するためにプロットを更新するタイミングを決定する基準を指定します。トリガーにより過渡信号の動作を取得し、周期信号の表示を安定させて測定を行うことができます。
Triggers
モデルのシミュレーションを実行します。モデル内のデータはシミュレーション データ インスペクターに記録されます。
open_system('Triggers'); out = sim('Triggers');
次に、トリガーを Pulse
信号に追加します。トリガーを 0.5
のしきい値をもつ立ち下がりエッジ トリガーとして構成します。
trigRun = Simulink.sdi.getCurrentSimulationRun('Triggers'); pulseSig = getSignalsByName(trigRun,'Pulse'); Simulink.sdi.addTrigger(pulseSig,'Type','Edge','Level',0.5);
Simulink.sdi.view
を使用してシミュレーション データ インスペクターを開き、Pulse
信号の横にあるトリガー アイコンをクリックして構成を確認することにより、このトリガーが追加され、正しく構成されていることを確認できます。関数 Simulink.sdi.getTrigger
を使用して、トリガー イベントおよびトリガー構成の生成に使用される信号を確認することもできます。
[sig,trigOpts] = Simulink.sdi.getTrigger; sig.Name
ans = 'Pulse'
trigOpts
trigOpts = struct with fields:
Mode: 'Auto'
Type: 'Edge'
Position: 0.5000
Delay: 0
SourceChannelComplexity: 'Scalar'
Polarity: 'Positive'
AutoLevel: 1
Level: 0.5000
UpperLevel: 0
LowerLevel: 0
Hysteresis: 0
MinTime: 0
MaxTime: Inf
Timeout: 0
Holdoff: 0
シミュレーション データ インスペクターが新しいデータでプロットを更新するタイミングを制御するためにトリガーを使用しない場合は、関数 Simulink.sdi.removeTrigger
を使用してトリガーを削除できます。
Simulink.sdi.removeTrigger
シミュレーション データ インスペクターの UI または関数 Simulink.sdi.getTrigger
を使用して、トリガーが削除されたことを確認できます。関数 Simulink.sdi.getTrigger
は、シミュレーション データ インスペクターで構成されているトリガーがない場合に、Simulink.sdi.Signal
オブジェクトの空の配列を返します。
sig = Simulink.sdi.getTrigger; size(sig)
ans = 1×2
0 0
入力引数
トリガーイベントの検出に使用される信号。Simulink.sdi.Signal
オブジェクトとして指定します。
名前と値の引数
オプションの引数のペアを Name1=Value1,...,NameN=ValueN
として指定します。ここで、Name
は引数名で、Value
は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。
R2021a より前では、コンマを使用して名前と値をそれぞれ区切り、Name
を引用符で囲みます。
例: 'Type','PulseWidth','Polarity','Falling'
は立ち下がりエッジの自動レベルのトリガーを自動モードで構成します。
トリガー イベントに応答して表示が更新されるタイミング。'Mode'
と次のいずれかのオプションで構成されるコンマ区切りのペアとして指定します。
Auto
— 各トリガー イベントに応答してプロットは更新され、表示される時間範囲にわたりトリガー イベントが発生しない場合、プロットは更新されます。Normal
— 各トリガー イベントに応答してプロットは更新されます。Once
— 最初のトリガー イベントに応答してプロットは更新されます。シミュレーション データ インスペクターを使用してトリガーを手動でリセットできます。
例: 'Mode','Normal'
はノーマル モードを使用するようにトリガーを構成します。
トリガー イベントがプロットに表示される場所。'Position'
と数値のパーセンテージで構成されるコンマ区切りのペアとして指定します。既定の設定では、トリガー イベントは、0.5
の位置、または時間範囲内の 50%
の位置で、プロットの中央に表示されます。
例: 'Position',.3
はトリガー イベントを時間範囲内の 30%
の位置に配置します。
信号に追加するトリガーのタイプ。'Type'
と次のいずれかのオプションで構成されるコンマ区切りのペアとして指定します。
Edge
— 信号がしきい値を横切るときにトリガーします。PulseWidth
— 指定した時間内に信号が下方しきい値と上方しきい値間を 2 回横切るときにトリガーします。Transition
— 指定した時間内に信号が上方しきい値と下方しきい値を横切るときにトリガーします。Runt
— 指定した時間内に信号が下方しきい値または上方しきい値を 2 回横切るときにトリガーします。Window
— 上方しきい値と下方しきい値で定義される範囲の内部または外部に信号が指定した期間とどまったときにトリガーします。Timeout
— 信号が指定した時間より長い間しきい値より高いまたは低い状態を維持したときにトリガーします。
トリガーの各タイプに対するオプションの詳細については、Scope Triggersを参照してください。
例: 'Type','PulseWidth'
はパルス幅トリガーを構成します。
トリガー イベントを発生させる信号値の方向の変更。'Polarity'
とトリガー タイプに対する有効な極性で構成されるコンマ区切りのペアとして指定します。
トリガー タイプ | 極性オプション |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
例: 'Type','Edge','Polarity','Rising'
は立ち上がりエッジ トリガーを構成します。
自動的にトリガー レベルを決定するかどうか。'AutoLevel'
および true
または false
で構成されるコンマ区切りのペアとして指定します。
トリガーのしきい値を指定する場合は、'AutoLevel'
を false
として指定します。
例: 'AutoLevel',false
はユーザー指定レベルを使用するようにトリガーを構成します。
トリガー イベントのしきい値。'Level'
と数値スカラーで構成されるコンマ区切りのペアとして指定します。
'Level'
の名前と値のペアを指定できるのは、'Type'
の名前と値のペアを 'Edge'
または 'Timeout'
として指定する場合のみです。
例: 'Type','Timeout','Level','0.5'
は 0.5
のしきい値をもつタイムアウト トリガーを構成します。
トリガー イベントを発生させるためにしきい値の前後で必要な信号値の変化。'Hysteresis'
と数値スカラーで構成されるコンマ区切りのペアとして指定します。トリガーに対してヒステリシスを指定すると、トリガー イベントに対するノイズ除去が発生します。
'Hysteresis'
の名前と値のペアを指定できるのは、'Type'
の名前と値のペアを 'Edge'
または 'Timeout'
として指定する場合のみです。
例: 'Type','Timeout','Hysteresis','0.05'
はトリガー イベントを発生させるためにしきい値の前後で信号値が 0.05
を超えて変化する必要があるタイムアウト トリガーを構成します。
トリガー イベントの上限しきい値。'UpperLevel'
と数値スカラーで構成されるコンマ区切りのペアとして指定します。
'UpperLevel'
の名前と値のペアを指定できるのは、'Type'
の名前と値のペアを 'PulseWidth'
、'Transition'
、'Runt'
、または 'Window'
として指定する場合のみです。
例: 'Type','PulseWidth','UpperLevel','0.9'
は 0.9
の上限しきい値をもつパルス幅トリガーを構成します。
トリガー イベントの下限しきい値。'LowerLevel'
と数値スカラーで構成されるコンマ区切りのペアとして指定します。
'LowerLevel'
の名前と値のペアを指定できるのは、'Type'
の名前と値のペアを 'PulseWidth'
、'Transition'
、'Runt'
、または 'Window'
として指定する場合のみです。
例: 'Type','PulseWidth','LowerLevel','0.1'
は 0.1
の下限しきい値をもつパルス幅トリガーを構成します。
トリガー イベントの時間の下限。'MinTime'
と数値スカラーで構成されるコンマ区切りのペアとして指定します。'MinTime'
の名前と値のペアを指定できるのは、'Type'
の名前と値のペアを 'PulseWidth'
、'Transition'
、'Runt'
、または 'Window'
として指定する場合のみです。時間の下限の重要性はトリガーのタイプによって異なります。
'PulseWidth'
— トリガー イベントの最小パルス幅。'Transition'
— トリガー イベントの最小立ち上がり時間または最小立ち下がり時間。'Runt'
— トリガー イベントの最小パルス幅。'Window'
— トリガー イベントの値の範囲内または範囲外で費やされた最小時間。
例: 'Type','PulseWidth','MinTime','0.1'
は 100ms
の最小パルス幅をもつパルス幅トリガーを構成します。
トリガー イベントの時間の上限。'MaxTime'
と数値スカラーで構成されるコンマ区切りのペアとして指定します。'MaxTime'
の名前と値のペアを指定できるのは、'Type'
の名前と値のペアを 'PulseWidth'
、'Transition'
、'Runt'
、または 'Window'
として指定する場合のみです。時間の上限の重要性はトリガーのタイプによって異なります。
'PulseWidth'
— トリガー イベントの最大パルス幅。'Transition'
— トリガー イベントの最大立ち上がり時間または立ち下がり時間。'Runt'
— トリガー イベントの最大パルス幅。'Window'
— トリガー イベントの値の範囲内または範囲外で費やされた最大時間。
例: 'Type','PulseWidth','MaxTime','0.5'
は 500ms
の最大パルス幅をもつパルス幅トリガーを構成します。
タイムアウト トリガーの時間のしきい値。'Timeout'
と数値スカラーで構成されるコンマ区切りのペアとして指定します。
'Timeout'
の名前と値のペアを指定できるのは、'Type'
の名前と値のペアを 'Timeout'
として指定する場合のみです。
例: 'Type','Timeout','Timeout','0.5'
は信号が 500ms
より長い間しきい値より高いまたは低い状態を維持したときにイベントを発生させるタイムアウト トリガーを構成します。
トリガー位置からのトリガー イベント オフセット。'Delay'
と数値スカラーで構成されるコンマ区切りのペアとして指定します。
例: 'Type','Edge','Delay','0.1'
はトリガー イベントの後にトリガー位置マーカーが 100ms
に表示されるエッジ トリガーを構成します。
トリガー イベント間の最小時間。'Holdoff'
と数値スカラーで構成されるコンマ区切りのペアとして指定します。トリガー イベントの後、少なくともホールドオフ時間の間、表示は再び更新されません。
例: 'Type','Edge','Holdoff','1'
は 1s
のホールドオフをもつエッジ トリガーを構成します。トリガー イベントの後、少なくとも 1s
の間、表示は更新されません。
代替機能
トリガーを信号に追加して、シミュレーション データ インスペクター UI を使用してトリガー オプションを構成できます。詳細については、トリガーを使用したデータ ストリーミングの表示の制御を参照してください。
バージョン履歴
R2020b で導入
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)