- First-order-hold: linear trend between samples
- band-limited: The data varies smoothly over its time span, so that there is no frequency higher that 0.5/Ts hertz (where Ts is sampling interval) in the data.
Import the dependence of experimental data on time in the System Identification Toolbox
조회 수: 3 (최근 30일)
이전 댓글 표시
Is it possible to load directly the dependence of experimental data on time in the System Identification Toolbox instead of data and indicating a constant interval between them? I understand that it is possible to calculate the average value of the time interval, but this will distort the real experimental data and if I understand correctly, the time delay will not be taken into account.
댓글 수: 0
답변 (1개)
Rajiv Singh
2019년 9월 3일
It is possible to do so by specifying a time vector instead of a constant sample time, as in:
data = iddata(y, u, 'SamplingInstants', t)
However, most routines in the toolbox require constant sampling interval. So you must really try to get data on a uniform time grid (by interpolation, fillin missing values etc). An alternative is to use your own routine to convert the data into frequecy domain (see, for example, https://www.youtube.com/watch?v=O2K0ptoYpuc CAUTION: I have not tried it, can't speak to its correctness or usefulness). The frequency domain data does not have to be uniformly sampled in the frequency grid.
Intersample behavior need not by zero-order-hold (constant between samples). The toolbox supports two more options:
Example:
data = iddata(y, u, Ts, 'InterSample','foh')
Inter-sample behavior can be specified using the InterSample property of iddata object. Inter-sample behavior is irrelevant if you are identifying discrete-time models. For continuous-time models it helps incorporate aliasing effects when estimating.
댓글 수: 3
Rajiv Singh
2019년 9월 3일
The app does not support import of data with non-uniform sampling. For a data object with custom time vector that is non-uniform, "Ts" property value is indeed empty. So the App is just expressing its inability to handle non-uniformly sampled data.
I would advise using RESAMPLE or other interpolation method (e.g., interp1) to bring the data to a uniform time grid. If that is not feasible for your task, I am afraid the System Identification Toolbox cannot help with model estimation.
참고 항목
카테고리
Help Center 및 File Exchange에서 Preprocess Data에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!