Easy Bode Documentation
A chapter-by-chapter guide to every diagram, panel and data point in Easy Bode — currently being written. Documentation is available in English.
Transfer Function Structure
This chapter will explain how G(s) is parsed.
The transfer function is the Laplace transform of the impulse response. It defines the algebraic relationship between the input and the output in the frequency domain, describing the overall dynamic behavior of the system. Formally, given an input $U(s)$ and an output $Y(s)$ under zero initial conditions, the transfer function $G(s)$ is expressed as:$$G(s) = \frac{Y(s)}{U(s)} = \mathcal{L}\{g(t)\}$$where $g(t)$ represents the system's impulse response, and $s = \sigma + j\omega$ is the Laplace variable.
1. Elements of a Transfer Function
To facilitate analysis and plotting, the transfer function is factored and broken down into its fundamental building blocks: a gain constant \(K\), poles, and zeros. This factorization allows the complex overall response to be analyzed as the sum of simpler individual contributions.
- Gain constant (\(K\)): represents the overall gain of the system.
- Zeros: values of the Laplace variable \(s\) that make the numerator of the transfer function zero (\(G(s) = 0\)). Physically, they tend to attenuate or block specific frequencies.
- Poles: values of \(s\) that make the denominator zero, causing the function to approach infinity (\(G(s) \to \infty\)). They define the system's stability and resonant frequencies.
In Easy Bode
We have included an input bar so you can enter and calculate transfer functions. Additionally,next to the 'Calculate' button, there is a menu featuring numerous examples of various types.
The Bode Plot
This chapter shows how, starting from the contributions of the transfer function $G(s)$, the magnitude and phase Bode plots are drawn.
The Bode plot is the quintessential graphical tool for representing the frequency response of a transfer function. It consists of two separate graphs showing respectively the magnitude (amplitude) and phase of the complex function.
The abscissa of both graphs has frequency (\(f\), in \(\text{Hz}\)) or angular frequency (\(\omega\), in \(\text{rad/s}\)) as its unit of measurement. The ordinate axis of the magnitude plot has the magnitude of the transfer function expressed in decibels (\(\text{dB}\)), while the ordinate axis of the phase plot contains the phase of the transfer function expressed in degrees (\(^\circ\)).
Bode plots make use of semi-logarithmic charts, so named because only the horizontal axis is on a logarithmic scale.
There are precise rules for drawing Bode plots for each individual contribution:
1. Gain Constant (\(K\))
It represents the global multiplicative factor of the system (or the zero-frequency gain if there are no poles/zeros at the origin).
- Magnitude: \(20 \log_{10}(|K|)\) \(\text{dB}\). It is a horizontal straight line independent of frequency.
- Phase:
- \(0^\circ\) if \(K > 0\).
- \(-180^\circ\) (or \(+180^\circ\)) if \(K < 0\).
2. Poles and Zeros at the Origin (\(s^{\pm h}\))
Factors of the type \(s\) (zero) or \(\frac{1}{s}\) (pole) raised to a certain multiplicity \(h\).
- Pole at the origin (\(\frac{1}{s}\)):
- Magnitude: straight line with a slope of \(-20\ \text{dB/decade}\) passing through \(0\ \text{dB}\) at the frequency \(\omega = 1\ \text{rad/s}\).
- Phase: constant at \(-90^\circ\) for all frequencies.
- Zero at the origin (\(s\)):
- Magnitude: straight line with a slope of \(+20\ \text{dB/decade}\) passing through \(0\ \text{dB}\) at the frequency \(\omega = 1\ \text{rad/s}\).
- Phase: constant at \(+90^\circ\) for all frequencies.
Note: if the multiplicity is \(h\), the slope and phase must be multiplied by \(h\).
3. Real Poles and Zeros (Normal / First-Order)
Factors of the type \((1 + \tau s)\) for zeros and \(\frac{1}{1 + \tau s}\) for poles, where \(\omega_c = \frac{1}{\tau}\) is the cutoff frequency (or transition frequency).
- Real pole:
- Magnitude (asymptotic): \(0\ \text{dB}\) for \(\omega < \omega_c\); straight line with a slope of \(-20\ \text{dB/decade}\) for \(\omega > \omega_c\).
- Phase: \(0^\circ\) for \(\omega \ll \omega_c\); \(-90^\circ\) for \(\omega \gg \omega_c\); at \(\omega = \omega_c\) the phase is exactly \(-45^\circ\).
- Real zero:
- Magnitude (asymptotic): \(0\ \text{dB}\) for \(\omega < \omega_c\); straight line with a slope of \(+20\ \text{dB/decade}\) for \(\omega > \omega_c\).
- Phase: \(0^\circ\) for \(\omega \ll \omega_c\); \(+90^\circ\) for \(\omega \gg \omega_c\); at \(\omega = \omega_c\) the phase is exactly \(+45^\circ\).
4. Complex Conjugate Poles and Zeros (Second-Order)
Factors of the type \(1 + \frac{2\zeta}{\omega_n}s + \frac{s^2}{\omega_n^2}\) (zeros) or their inverse (poles), characterized by a natural frequency \(\omega_n\) and a damping ratio \(\zeta\) (with \(0 < \zeta < 1\)).
- Complex conjugate pole:
- Magnitude (asymptotic): \(0\ \text{dB}\) for \(\omega < \omega_n\); straight line with a slope of \(-40\ \text{dB/decade}\) for \(\omega > \omega_n\). Near \(\omega_n\), it exhibits a resonance peak that is more pronounced the smaller \(\zeta\) is.
- Phase: \(0^\circ\) for \(\omega \ll \omega_n\); \(-180^\circ\) for \(\omega \gg \omega_n\); at \(\omega = \omega_n\) the phase is exactly \(-90^\circ\) (independent of \(\zeta\)).
- Complex conjugate zero:
- Magnitude (asymptotic): \(0\ \text{dB}\) for \(\omega < \omega_n\); straight line with a slope of \(+40\ \text{dB/decade}\) for \(\omega > \omega_n\). It exhibits a dip (valley) at \(\omega_n\) if \(\zeta\) is small.
- Phase: \(0^\circ\) for \(\omega \ll \omega_n\); \(+180^\circ\) for \(\omega \gg \omega_n\); at \(\omega = \omega_n\) the phase is exactly \(+90^\circ\).
5. Real Plot
Before the advent of numerical computing, engineers could not afford to calculate the frequency response point by point: a rapid method was needed to hand-draw a sufficiently accurate diagram. Asymptotic approximation was created for precisely this reason — it replaces the true curve, which is generally a continuous curve, with a broken line made of straight segments, which is simpler to draw and to read.
- Techniques:
- sum of contributions: The Bode plot of the entire transfer function can be constructed by adding up, point by point, the contribution of each individual pole and zero.
- Approximation:For a real pole or zero, the maximum deviation between the real curve and the asymptotic broken line occurs exactly at the cut-off frequency $\omega_c$, where it is about $3\ \text{dB}$ in magnitude (and the phase there is exact anyway: $\pm45^\circ$). For complex conjugate poles or zeros, the situation changes: the deviation from the asymptote near $\omega_n$ depends heavily on the damping factor $\zeta$. With a small $\zeta$, a resonance peak (or dip) appears that straight lines cannot show.
In Easy Bode
Easy Bode lets you compare the Real and Asymptotes curves directly to see this difference.Just like the magnitude chart, the Real, Asymptotic and Contributions buttons let you compare the true phase curve against its asymptotic approximation and each individual pole/zero contribution, and Carta Semilog adds the grid.
Stability & Robustness
This section explains how to evaluate the stability and robustness of a control system using its frequency response.
Analyzing the frequency response of an open-loop system allows us to determine the stability and performance of the corresponding closed-loop system.
Here are the fundamental parameters used to assess system stability:
1. System Stability
- Open-Loop Stability: Determines if the system is stable without feedback. It depends entirely on the poles of the open-loop transfer function.
- Closed-Loop Stability: Assesses if the system remains stable when a feedback loop is closed around it. It is evaluated by checking the stability margins on the open-loop Bode plot.
2. Cut-off frequency ($\omega_{gc}$)
It is the frequency at which the open-loop magnitude crosses $0\ \text{dB}$ (where the linear gain is exactly $1$). It serves as the reference point for calculating the phase margin.
3. Phase Margin (PM)
The amount of additional phase lag at the gain crossover frequency that would push the system to the edge of instability. Calculated as $\text{PM} = 180^\circ + \angle G(j\omega_{gc})$. A positive phase margin is required for closed-loop stability.
4. Phase Crossover Frequency ($\omega_{pc}$)
The frequency at which the open-loop phase angle crosses $-180^\circ$. It acts as the reference point for calculating the gain margin.
5. Gain Margin (GM)
The amount of additional gain (in $\text{dB}$) that can be applied to the system at the phase crossover frequency before it becomes unstable. Calculated as $\text{GM} = -|G(j\omega_{pc})|_{\text{dB}}$. A positive gain margin indicates a stable system.
Analysis & Filter Type
This section covers key Bode plot parameters, including asymptotic slopes, resonance, bandwidth, and fundamental filter classifications.
The visual characteristics of the Bode magnitude plot define the dynamic performance, frequency selectivity, and filtering capabilities of a system.
1. Initial and Final Slopes
- Initial Slope: Determined by poles/zeros at the origin ($s^g$). Each integrator contributes $-20\ \text{dB/dec}$ and each differentiator $+20\ \text{dB/dec}$ at low frequencies.
- Final Slope: Fixed by the system's relative degree $(n - m)$. High frequencies roll off at $-20(n - m)\ \text{dB/dec}$.
2. Resonant Peak ($M_r$)
The maximum peak in magnitude occurring at the resonant frequency ($\omega_r$). It appears in complex conjugate pole pairs when the damping ratio is low ($\zeta < 0.707$).
3. Bandwidth ($\omega_B$)
The frequency range over which the system gain remains within $-3\ \text{dB}$ of its maximum value. It defines the system's operational speed and filtering cutoff.
4. Filter Behaviors
- Low-Pass: Passes low frequencies, attenuates high frequencies.
- High-Pass: Passes high frequencies, blocks low frequencies (requires initial slope $> 0$).
- Band-Pass: Passes frequencies within a specific range, attenuating both lower and higher frequencies.
- Band-Stop (Notch): Attenuates a specific frequency range while letting lower and higher frequencies pass.
- All-Pass: Passes all frequencies with equal amplitude, changing only the phase response of the system.
Temporal (Step) Response
This section provides a brief theoretical overview of time-domain response analysis, evaluating how a system behaves over time when subjected to specific inputs.
The time response of a dynamic system represents the output $y(t)$ as a function of time when an input signal $u(t)$ is applied. It is composed of two distinct parts: the transient response (the temporary behavior right after excitation) and the steady-state response (the long-term behavior as $t \to \infty$).
Analyzing time response allows engineers to quantify speed, dampening, stability, and accuracy directly in the time domain.
1. Transient and Steady-State Metrics
- Rise Time ($t_r$): The time required for the response to rise from $10\%$ to $90\%$ (or $0\%$ to $100\%$) of its final value, indicating initial response speed.
- Settling Time ($t_s$): The time needed for the output to enter and permanently stay within a specified error band (typically $\pm 2\%$ or $\pm 5\%$) around the steady-state value.
- Maximum Overshoot ($M_p$): The maximum peak value of the response measured from the steady-state value, expressed as a percentage. It reflects system damping.
- Steady-State Value ($y_{ss}$) & Error ($e_{ss}$): $y_{ss}$ is the final value reached by the output as time approaches infinity. $e_{ss}$ is the difference between the desired reference input and $y_{ss}$, measuring accuracy.
In Easy Bode
Easy Bode includes a dedicated time-response graph displaying both the applied input signal and the resulting system output curve simultaneously. A selector lets you switch between 5 fundamental input types: Unit Step, Impulse, Ramp, Square Wave, and Sine Wave. Alongside the plot, key calculated parameters are automatically presented, including Maximum Overshoot, Steady-State Value, Steady-State Error, Rise Time, and Settling Time.
The Nyquist Diagram
The Nyquist diagram is a fundamental graphical tool in automatic control theory. Unlike Bode diagrams, which use two separate plots for magnitude and phase, the Nyquist diagram traces the frequency response of a transfer function \(G(j\omega)\) directly in the complex plane, as the angular frequency \(\omega\) varies over the interval \((-\infty, +\infty)\).
1. Geometric Properties and Symmetry
In the complex plane, the horizontal axis represents the real part, while the vertical axis represents the imaginary part.
- For real physical systems, the plot for negative frequencies (\(\omega < 0\)) is the mirror image, about the real axis, of the plot traced for positive frequencies (\(\omega > 0\)).
- It is therefore sufficient to trace the curve for \(\omega \in [0, +\infty)\) and complete it by symmetry.
2. The Nyquist Stability Criterion
The most important aspect of the diagram lies in the Nyquist Criterion: this theorem makes it possible to determine the absolute stability of the closed-loop feedback system by analyzing only the behavior of the open-loop transfer function \(G(j\omega)H(j\omega)\) in the complex plane.
3. The Critical Point (\(-1, j0\))
In the Nyquist diagram, the critical point at coordinates \((-1, j0)\) is of vital importance.
- The position of the diagram relative to this point makes it possible to assess not only the stability of the closed-loop system, but also the stability margins (gain margin and phase margin).
- If the open-loop diagram encircles the critical point \((-1, j0)\), the closed-loop feedback system will generally be unstable.
4. Open-Loop Poles and the \(Z = P + N\) Relationship
To correctly apply the Nyquist Criterion, it is essential to know in advance the number of unstable poles (with positive real part) of the open-loop transfer function, usually denoted by the letter \(P\).
The fundamental formula of the criterion relates the number of encirclements \(N\) made by the diagram around the critical point \((-1, j0)\), the number of unstable open-loop poles \(P\), and the number of unstable closed-loop poles \(Z\):
\[ Z = P + N \]
In Easy Bode
The data panel next to the Nyquist diagram shows exactly these quantities, computed automatically from the transfer function you enter: Poli Instabili (P) is the open-loop pole count \(P\), Avvolgimenti (N) is the number of encirclements \(N\), and Poli Instabili A.C. (Z) is the resulting closed-loop pole count \(Z = P + N\). The Stabilità Anello Chiuso badge is simply this \(Z\) value read out as a verdict — "stable" whenever \(Z = 0\). The Distanza min. da (-1,0) field is the minimum-distance indicator described above: the smaller it is, the closer the system sits to instability.
Nichols Diagram
This section introduces the Nichols chart, a combined magnitude-phase representation used to analyze open-loop and closed-loop frequency response.
The Nichols plot displays the open-loop magnitude (in $\text{dB}$) on the vertical axis against the open-loop phase (in degrees, $^\circ$) on the horizontal axis, with frequency ($\omega$) acting as an implicit parameter along the curve.
It unifies magnitude and phase into a single parametric trajectory, making it particularly useful for evaluating stability margins and mapping open-loop performance directly onto closed-loop response contours.
Key Features
- Critical Point: The point $(-180^\circ, 0\ \text{dB})$ represents the threshold of closed-loop instability.
- Stability Geometry: Phase Margin and Gain Margin are measured directly as horizontal and vertical distances from the curve to the critical point $(-180^\circ, 0\ \text{dB})$.
In Easy Bode
In the Easy Bode Nichols chart view, key stability parameters—including the Phase Margin, Gain Crossover Frequency, Phase Crossover Frequency, and Gain Margin—are integrated and displayed directly alongside the trajectory.