における状態 '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!