離散単位ステップ関数に対する応答を知るだけで、離散システムのインパルス応答を取得する方法はありますか?


10

継続的にそれは可能でした。

u(t)⟶system⟶y(t)⟹δ(t)=du(t)dt⟶system⟶dy(t)dt=h(t)

同じことは離散時間システムにも当てはまります。つまり、

δ[t]=du[t]dtwhere:{δ[t]is the discrete time deltau[t]is the discrete time unit step function

離散単位ステップの応答を知るだけで、離散システムのインパルス応答を取得する方法はありますか?


1
すばらしい質問です。DSP.SEへようこそ。頑張って貢献してください!
— フォノン2013年

回答:


7

フォノンの答えの簡単なバージョンは次のとおりです。

が単位ステップ関数に対するシステムの応答を表すと仮定します。次に、この回答で説明したように 、一般にyはインパルス応答のスケーリングされたコピーと時間遅延されたコピーの合計であり、この特定のケースではスケーリングは必要ありません。時間遅延のみ。したがって、 y [ 0 ]y y ここで、右側の各列は(スケーリングされていない)時間遅延インパルス応答です。したがって、簡単に h [ 0 ]

y[0]=h[0]y[1]=h[1]+h[0]y[2]=h[2]+h[1]+h[0]y[3]=h[3]+h[2]+h[1]+h[0]⋮ = ⋮
フィルター、逆関数、たたみ込み、積分、演算子などについての言及はありませんが、線形時不変システムの定義の単純な結果です。
h[0]=y[0]h[1]=y[1]−y[0]h[2]=y[2]−y[1]⋮ = ⋮h[n] =y[n]−y[n−1]⋮ = ⋮

あなたは明らかに私が持っているよりも長い間これを行ってきました=)
— フォノン

6

はい、これは離散システムの場合にも同様に当てはまります。この場合の微分演算は、一階差分に置き換えられます。それは普遍的なシンボルを持っているとは思わないが、それをと呼ぶことにしよう。この操作は、を使用して信号をフィルタに相当し、Y [ N ] = X [ N ] - X [ N - 1 ]。このフィルターをd [ n ]と呼びましょう。畳み込みを∗記号で表すことにします。D(⋅)y[n]=x[n]−x[n−1]d[n]∗

次に、畳み込みについて知っていることをこの演算子に適用してみましょう。δ [ n ]の累積 和(離散積分器)でを取得していることがわかります。実際、u [ n ]で表されるシステム自体が、この離散積分器であることがわかります。また、これら2つの演算子は互いに逆であり、具体的にはu [ n ] ∗ d [ n ] = δ [ n ] であることに注意してください。u[n]δ[n]u[n]u[n]∗d[n]=δ[n]

これで、畳み込みが可換であることがわかります。つまり

a[n]∗b[n]=b[n]∗a[n]

連想、つまり

(a[n]∗b[n])∗c[n]=a[n]∗(b[n]∗c[n])

x[n]=δ[n]∗x[n]=u[n]∗d[n]∗x[n]=d[n]∗u[n]∗x[n]=d[n]∗(u[n]∗x[n])

x[n](u[n]∗x[n])


2

仮定:

  • h(t)s(t)
  • h[ん]s[ん]

直感的に言えば、連続時間領域での積分は、離散時間領域での合計に相当します。同様に、連続時間領域の微分は、離散領域の有限差分に相当します。

あなたδ

  • u(t)=∫δ(t)
  • u[n]=∑k=0∞δ[n−k]

sh

  • s(t)=∫h(t)
  • s[n]=∑k=0∞h[n−k]

今、あなたが最後の方程式を注意深く見れば:

s[n]=∑k=0∞h[n−k]

h[n]s[n]s[n−1]

h[ん]=s[ん]−s[ん−1]
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.