Hi community!
I have created a Matlab function block. Then I have set its sample time equal to "Ts" (100e-6). After that I implemented a simple low-pass filter code using this block, the results are different from when I build the filter using the "1/s" and "gain" blocks of Simulink. The transfer function of the filter is:
Y/X=1/(1+sTc)
I have implemented it by applying the backward Euler discretizing method as :
Y(k)=(Ts/(Ts+Tc))X(k)+(Tc/(Tc+Ts))Y(k-1)
where X is a sinusoidal function given from outside of the Matlab function block.
Is it something wrong here?
Regards,

2 件のコメント

Mathieu NOE
Mathieu NOE 2021 年 1 月 8 日
hi
you can use c2dm to discretize analog filters
also se attached some typical digital filters implementation
lionel messi
lionel messi 2021 年 1 月 11 日
Thank you for the reply and the files!
I'm gonna try these..
Regards

サインインしてコメントする。

回答 (0 件)

カテゴリ

ヘルプ センター および File Exchange で Simulink についてさらに検索

製品

質問済み:

2021 年 1 月 8 日

コメント済み:

2021 年 1 月 11 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by