- Continuous-Discrete Conversion Methods - MATLAB & Simulink (mathworks.com)
- Discretizing and Resampling Models - MATLAB & Simulink Example (mathworks.com)
How to turn a continuous time-y(t) array into Zero-Order-Hold and Tustin method discrete plot with different Ts
9 views (last 30 days)
Show older comments
Hi, I've obtained the continuous plant of a cone-shaped-tank on Simulink. I took the data and turned into arrays both for time and y(t). I'd like to discretize both with ZOH and Tustin.
I haven't found any method yet.
Thank you in advance,
Pablo.
4 Comments
Manikanta Aditya
on 12 Apr 2024
If you have time-series data and you want to estimate a transfer function, you can use the tfest function in MATLAB’s System Identification Toolbox. Here is a simple example:
% Assuming 'time' and 'y' are your arrays
data = iddata(y,[],Ts); % Create an iddata object, Ts is your sampling time
np = 2; % Number of poles
nz = 0; % Number of zeros
sys = tfest(data,np,nz); % Estimate transfer function
Once you have the transfer function, you can then discretize it using the Zero-Order Hold (ZOH) and Tustin methods as mentioned in the previous comments.
% For Zero-Order Hold
sys_zoh = c2d(sys, Ts, 'zoh');
% For Tustin method
sys_tustin = c2d(sys, Ts, 'tustin');
Answers (0)
See Also
Categories
Find more on Transfer Function Models in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!