Discrete to continuous in Simulink.
Show older comments
Hi, I use PID controller to control the input voltage (Ui) of the servo valve to adjust the spool displacement [-10< Ui <10 (V)].
I coded Ui =[-10:0.01:10]; and Simulink show the error: "Encountered unknown exception". So i think that discrete value from Ui can't calculate for the continuous system ( have PID controller and Intergator). It has any block or code to make Ui become continuous? Thank you for help.

5 Comments
Paul
on 25 Aug 2022
Ui is a gain that takes (what I assume to be) a scalar signal and expnands it to a signal with 2001 elements, which I doubt is desired. What is Ui supposed to do? Limit the output of the PID Controller to lie between -10 and 10? Something else?
Nguyen Hieu
on 25 Aug 2022
Paul
on 25 Aug 2022
Why would UI be -10:.01:10? Maybe if you show the actual math equation we can figure out how to model it in Simulink.
Nguyen Hieu
on 29 Aug 2022
Paul
on 29 Aug 2022
Apparently Ui is supposed to be scalar, but its coded as a 2001-element vector. Why is it coded as a vector?
Answers (1)
Abderrahim. B
on 25 Aug 2022
0 votes
Hi!
Check out the link below, some others methods to do this conversion are listed there.
Note that most of these methods require Control System Toolbox.
Hope this helps
2 Comments
Nguyen Hieu
on 29 Aug 2022
Abderrahim. B
on 29 Aug 2022
d2c and c2d accept model object as input, will not work in your case. To convert a vector(discrete) to continuous use quantizer and zero-order hold blocks.
Categories
Find more on Tuning, Analysis, and Validation 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!