Using Simulink | ![]() ![]() |
時間ステップでブレークポイントを設定
時間ステップでブレークポイントを設定するには、デバッガの Stop at time フィールドで時間を入力するか(GUIモード)、または tbreak
コマンドを使って時間を入力します。デバッガは、指定した時間の後の最初の時間ステップの開始時にシミュレーションを停止します。たとえば、デバッグモードで vdp
を起動し、つぎのコマンドを入力します。
tbreak 9 continue
は、continue
コマンドの出力によって示されたように時間ステップ 9.0785
の開始時にシミュレーションを停止します。
[Tm=9.07847133212036 ] **Start** of system 'vdp' outputs
非有限値で停止
デバッガの NaN values オプションをチェックするか、nanbreak
コマンドを入力することにより、計算値が無限大かシミュレーションを実行するマシンによって表現可能な値の範囲外であるときに、シミュレーションを停止させます。このオプションは、Simulinkモデルの計算エラーを正確に指摘するのに役立ちます。
ステップサイズを制限したステップで停止
Step size limited by state オプションをチェックするか xbreak
コマンドを入力すると、デバッガはモデルが可変ステップソルバを利用して、ソルバがとりうるステップサイズを制限する状態があるときに、シミュレーションを停止します。このコマンドは、多くの解くべきシミュレーション時間ステップ数を必要とするモデルのデバッグに役立ちます。
ゼロクロッシングにおいて停止
Zero crossings オプションをチェックするか、zcbreak
コマンドを入力すると、ゼロクロッシングが生じるブロックを含むモデル内でサンプリングされていないゼロクロッシングを検出したときに、シミュレーションを停止します。停止した後で、Simulinkはゼロクロッシングのモデル内の位置、時間、タイプ(risingまたはfalling)を出力します。たとえば、zeroxing
デモモデルの実行の開始時にゼロクロッシングブレークポイントを設定します。
sldebug zeroxing [Tm=0 ] **Start** of system 'zeroxing' outputs (sldebug @0:0 'zeroxing/Sine Wave'): zcbreak Break at zero crossing events is enabled.
(sldebug @0:0 'zeroxing/Sine Wave'): continue
は、以下におけるrisingタイプのゼロクロッシングになります。
[Tm=0.34350110879329 ] Breaking at block 0:2 [Tm=0.34350110879329 ] Rising zero crossing on 3rd zcsignal in block 0:2 'zeroxing/Saturation'
モデルがサンプリングされていないゼロクロッシングを生成可能なブロックを含まない場合、コマンドはこの事実を通知するメッセージを表示します。
![]() | ブロックでブレークポイントを設定 | シミュレーションに関する情報の表示 | ![]() |