現在、取得したデータを処理しています。問題は、測定したい値とセンサーの間に要素があることです(明確にするために、マイクと測定する音の間にパイプがあります)。このパイプは、伝達関数 H を通じて信号 X をフィルター処理します。
このパイプの影響をキャンセルするために、測定された信号をデコンボリューションしたいと考えています (私のマイクは Y=H*X を取得し、X が必要です)。私はHを測定し、それをフィッティングしました:
0.003682 s^4 + 90.87 s^3 - 4.835e05 s^2 + 1.051e08 s + 4.499e12
———————————————————————————————————————————————————————————————
s^4 + 628.3 s^3 + 1.759e07 s^2 + 2.668e09 s + 4.053e12
標準の matlab 関数を使用して、filter(b,a,Y)
H によって引き起こされるフィルタリングを逆にしました。b は H の分母であり、分子は a です...これは H を逆にする必要があります。しかし、デコンボリューションされた信号の代わりに、NaN のベクトルを取得します。
誰かが理由を知っていますか?私にはまったくわかりません。デジタル フィルタリングにはあまり慣れていません...