Add reference line to a Bode Plot
조회 수: 46 (최근 30일)
이전 댓글 표시
Greetings!
I used the command
h = bodeplot(Gol,{0.1 0.5});
to plot Bode diagrams (Magnitude x Frequency and Phase Angle x Frequency) to analyze the stability of the closed-loop system. Hence, I need to draw a horizontal reference line at y = 1 on the first graph (Mag. x Freq.) so as to find out if my system stable or not.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/167956/image.jpeg)
How do I do that? Were it a simple plot, I'd use refline but it doesn't work for the bodeplot function, since it generates two plots (like subplot(2,1,1) and subplot(2,1,2)). Thank you.
댓글 수: 0
채택된 답변
Star Strider
2017년 12월 21일
It is not worthwhile to attempt to do anything with the plots that bode and most — if not all — of the other Control System Toolbox plots. They do not allow modifications.
Instead, get the outputs from the bode function:
[mag,phase,wout] = bode(sys);
and plot them using subplot. Remember to use the squeeze command to remove singleton dimensions from the ‘mag’ and ‘phase’ results for simple models.
댓글 수: 2
Star Strider
2017년 12월 24일
It will work.
Remember to use semilogx for the subplots, and 20*log10(mag) for the y-axis of the magnitude plot.
추가 답변 (1개)
Rick Giovanini
2018년 3월 28일
편집: Rick Giovanini
2018년 3월 28일
check this out. Bodes want LTI - Linear Time invariant objects. You can plot many bode's on one plot if you have many LTI objects. What's the LTI transfer function of a horizontal line? Well it's simply
k*tf([1],[1]), where k is the y value I desire. In other works, k*(1/1), or k. We know it's just k that we want, but matlab wants a transfer function.
so, if I want my bode with some horizontal lines, simply do...
bode(mybode, yourbode, NowIfWe_reTalkingBodes_YouGotAPerfectOneSoPutItOnMe, k*tf([1],[1]), r*tf([1],[1]), s*tf([1],[1]))
which simply produces some bodes and lines at y=k, r, and s.
First ever post. Like if it helps you.
댓글 수: 2
참고 항목
카테고리
Help Center 및 File Exchange에서 Plot Customization에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!