1

信号の最高値が常に 1 になるように正規化したい simulink に信号があります。次に、信号をその値で割ります。

信号生成ブロック、実行中のリセット可能ブロック、除算ブロック、およびスコープを使用した小さなテストは問題なく実行されます。しかし、この正規化関数を simulink モデルに追加すると、次のエラーが表示されます。

小さなテスト ケースを他のモデルに接続する必要さえありません。モデルに入れるだけで、このエラーが発生します。奇妙なことに、RunningResettable ブロックをコピーすると黄色に変わります。これは、サンプリング レートが異なることを示しています。なぜこれが起こるのかわかりません。RunningResettable の背後にゼロ次ホールド ブロックを追加しようとしましたが、それは役に立ちませんでした。

厄介な RunningResettable-block を含む Simulink ブロック シート

示唆されているように、RunningResettable-Block の R 入力に別の定数ブロックを追加しようとしました。そのブロックに対していくつかのサンプリング周波数 (-1、0、1/fAb) を試しましたが、役に立ちませんでした。 R 入力に定数ブロックを追加した後に発生するエラー

4

1 に答える 1

1

わかりました、ついに私は自分の失敗を見つけたと思います。SignalGenerator は連続信号 (黒) を出力しているようです。私のモデルでは大部分が離散信号であるため、何らかの形でエラーが発生します。そのため、信号発生器の後にゼロ次ホールド ブロックを追加するだけで、すべて正常に動作するように見えます。ゼロ次ホールドのサンプリング周波数は、システムの残りの部分に合わせて調整する必要があります。

ここに画像の説明を入力

于 2015-02-24T14:21:19.093 に答える