Dymola で興味深い現象に遭遇しました。原因は私のモデルにあるのではないかと思いますが、どのようなことが原因なのかはわかりません。誰かが私にこれについて少しヒントを与えることができれば、非常に感謝しています.
私の問題は、結果をプロットすると、エラーが許容範囲内にあるかどうかをテストするブロックが、非常に大きな頻度でイベントを生成し続ける、特定の時間にシミュレーションが「停止」することです (実行中ですが、非常に遅い)。
「許容範囲内」ブロックからさかのぼると、3 つのシグナルを持つ標準ライブラリの「エラー ブロック」です。
u1 - センサーデータ、u2 - 基準値、y - 出力信号[u1-u2=y]
(残念ながら、評判が悪いため、プロットをアップロードできません)
これらのシグナルの「テール」(実行を停止した場所)を(何度も)ズームインしたときに見つけたものは次のとおりです。
error.y信号の場合: 非常に小さい (1e-10) が、errorTolerance ターゲットの周囲で高頻度のチャタリングが見られますが、シミュレーションの実行が非常に遅くなり始めたテールでのみです。鋸歯状信号のように動作します。
u1 (センサー データ) 信号の場合: 信号 error.y と同じスケールに拡大しましたが、チャタリングは見られません。
u2 (リファレンス)信号の場合:常時一定
エラーブロックは単純なマイナス計算でしかないのに、どうしてこのようなチャタリングを誘発するのでしょうか。ありがとう!
ハイ