における状態 '1' の導関数が有限ではありません
조회 수: 93 (최근 30일)
이전 댓글 표시
Simulink, Simiscapeの以下の回路でシミュレーションをしたところ,このようなのメッセージがでました.
「ブロック 'STM32F334DiscoveryBuckBoost_500kHz_cancle2_softstart/Transfer Fcn3' の時間 0.0069162267731414408 における状態 '1' の導関数が有限ではありません。シミュレーションを停止します。解に特異点が存在する可能性があります。そうでない場合は、(固定ステップ サイズを小さくする、または許容誤差を厳しくすることによって) ステップ サイズを減らしてみてください」
デフォルトが可変ステップだったため,固定ステップにして,行ってみたところ,同じメッセージがでました.メッセージにあるようにさらに固定ステップを小さくすると,(例えば,0.00000000000001)シミュレーションがかなり遅く,途中でシミュレーションを止めました.何か良い方法はないでしょうか?よろしくお願いします.
シミュレーション回路,シミュレーションに必要なmファイルを以下のURLからダウンロードできます.
https://www.dropbox.com/sh/u2xglv6hp1dy6kg/AACptB-655a7NtfEWHYRBQLda?dl=0
댓글 수: 0
채택된 답변
Hiroumi Mita
2017년 11월 9일
問題箇所のステップ応答を確認したところ 数値が10^303のオーダーになることがわかりました。 このため、微分係数が計算可能な範囲を超え無限大になることで 該当のエラーが出ると考えられます。 この箇所は連続系のコントローラに相当すると考えられますが、 この正誤を再確認してください。 特に、以下の点を見てもらえればと思います。 (1)パラメータの工学単位等に間違いはありませんか? (2)式の係数に間違いはありませんか? (3)伝達関数*積分器で大丈夫ですか? 以上よろしくお願いいたします。
추가 답변 (0개)
참고 항목
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!