How to extrapolate a sinusoidal signal in simulink?

2 ビュー (過去 30 日間)
Dani Tormo
Dani Tormo 2013 年 3 月 19 日
回答済み: Raef aboelsaud 2018 年 11 月 3 日
Hi,
I need to extrapolate a sinusoidal signal because I need to know its value before a certain step time.
My sinusoidal signal is 50Hz and the sample time is 0.5 ms. So I want the value of the signal 0.5 ms before.
In electronics we can tune a PLL to anticipate or delay a sinusoidal signal but I think it cannot be done with the existent blocks in simscape.
I've made an extrapolator but it has an error of 3% and I don't know if there is a better way to do it.
Thanks!

回答 (1 件)

Raef aboelsaud
Raef aboelsaud 2018 年 11 月 3 日
You can use fourth-order Lagrange extrapolation, If the sinusoidal signal is i, the extrapolated value for one step will be
i[k+1] = 4i[k]−6i[k−1]+4i[k−2]−i[k−3].
Where k is discrete time instant

カテゴリ

Help Center および File ExchangeSpectral Measurements についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by