My colleague Tom is much more of a controls kind of guy than I am, so he found this week’s pick before I did. He was much impressed with this code from long time MATLAB user, Duane. I gave this function a try, you can see it all in the screenshot here (I added the plot and data tips manually).
This is what Tom had to say:
As a relative new comer to the world of MATLAB (user since July 2005), the MATLAB Central user community is an incredible resource for me. Case in point: I had a need to perform some standard time-domain measurements (risetime, falltime, overshoot, settle time) on simulation results from Simulink. As an engineer, my first instinct was to refer to the IEEE Std-181-2003 document to get the definitions of these common measurements and code them into a .m script myself. Fortunately, before I got too far into this endeavor, I came across the STEPSPECS function written by Duane Hanselman on MATLAB Central (I assume Duane is a bit older than he looks in his profile photo). This function very compactly returns the percent overshoot, settling time, and rise time from the step response data contained in input vectors T and Y. Perfect!!! In the true spirit of this community, I was about to quickly reuse this function and modify it to meet my needs. Duane’s work gave me a great head start towards implementing a series of measurement functions that can be performed on arbitrary time-domain waveforms with results annotated to the plot window. Someday these will be in a state worthy of MATLAB central and then maybe I can be the pick of the week! Stay tuned…
3 CommentsOldest to Newest
Yes, I admit that I have aged a little over the past 40 years since that picture was taken. I’m guessing that I’m a bit wiser as well.
I am very new to MATLAB, however not so new to conrol concepts. I understand what stepSpecs is doing, but I have no idea how to execute this tool in MATLAB as most of my work has revolved around SIMULINK.
Thanks for the assistance.
how can I get a copy of stepspecs.m?