MATLAB Answers

Use fixed-step solver ode1 to execute variable sample time Zero Order Hold

5 views (last 30 days)
Zeren LU
Zeren LU on 13 Apr 2017
Answered: Archit Dhanani on 25 Jul 2019
I got an error "Cannot compile diagram, because it contains variable sample times or S-functions and is using a fixed-step solver." when running a model which contains a variable sample time Zero Order Hold block written by S-function.
As fixed-step solver is a must for my simulation, I tried to solve this problem by(e.g):
1.set the fixed-step size as 1e-6 s;
2.keep the sample time of ZOH as n*(1e-6s), where n is a integer varies from 20 to 50;
I thought this may fix the problem as the sample time is integer multiple fixed-step size and the solver can solve this.
However, it does not work.
My question is, is there a way to implement a ZOH with variable sample time and use the fixed-step solver?

Answers (1)

Archit Dhanani
Archit Dhanani on 25 Jul 2019
Simulink supports variable sample times for variable-step solvers only. You can read more about this in the page:
Could you try to use controllable sample times instead?

Community Treasure Hunt

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

Start Hunting!

Translated by