s-Plane Explorer
Copy this iframe to your website:
1 | |
Description
This MicroSim places the poles (red ×) and zeros (blue ○) of a continuous-time transfer function
in the s-plane. \(K\) is chosen so that \(H(0) = 1\) unless a pole or zero sits at \(s = 0\) (then \(K = 1\)), and the line under the banner prints \(H(s)\) with numeric coefficients.
- System loads a preset: first-order low-pass, second-order, integrator, unstable, oscillator, notch, or a right-half-plane zero.
- Drag any pole or zero. Complex roots move as conjugate pairs. Add pole and Add zero add a conjugate pair (or one real root when as conjugate pair is unchecked); Remove deletes the selected item.
- Damping ζ and natural frequency ωn move the selected pole pair to \(-\zeta\omega_n \pm j\omega_n\sqrt{1-\zeta^2}\).
- Marker ω moves the gold point \(s = j\omega\) along the imaginary axis (so does hovering over a frequency plot). The lines from every pole and zero to the marker give \(|H(j\omega)| = |K|\,\prod |j\omega - z_k| / \prod |j\omega - p_k|\), and the phase is the sum of the zero angles minus the sum of the pole angles.
- Map to z-plane adds an inset showing \(z = e^{sT}\) for the sampling period T.
The plots show \(|H(j\omega)|\) in dB and the phase for \(0 \le \omega \le 4\) rad/s, and the unit-step response, computed by numerically integrating the system's differential equation. The banner applies the left-half-plane test, and the shaded region of convergence (ROC) of the causal system is \(\mathrm{Re}(s) > \max_k \mathrm{Re}(p_k)\): the system is stable exactly when the ROC contains the \(j\omega\) axis. Otherwise the frequency curves turn grey and dashed, because \(H(j\omega)\) is then only a formula.
This MicroSim is used in Chapter 8: Advanced Transforms.
Lesson Plan
Learning Objectives
After using this MicroSim, students will be able to:
- Calculate the poles \(-\zeta\omega_n \pm j\omega_n\sqrt{1-\zeta^2}\) of a second-order system and predict its step overshoot \(e^{-\pi\zeta/\sqrt{1-\zeta^2}}\)
- Determine whether a causal system is stable from its pole locations, and relate this to whether the ROC \(\mathrm{Re}(s) > \max_k \mathrm{Re}(p_k)\) contains the \(j\omega\) axis
- Explain \(|H(j\omega)|\) and \(\angle H(j\omega)\) in terms of the lengths and angles of the vectors from the zeros and poles to the point \(j\omega\)
- Distinguish a right-half-plane zero from a right-half-plane pole by its effect on stability, phase and step response
- Apply \(z = e^{sT}\) to map s-plane poles to the z-plane and identify when a pole aliases (\(|\omega| T > \pi\))
Target Audience
Undergraduate students in a signals and systems or introductory control course (junior year). Plan 30 minutes for the activities below.
Prerequisites
- Complex numbers in rectangular and polar form
- The Laplace transform and transfer functions (Chapter 8)
- Step responses of first-order and second-order systems
Activities
Activity 1: Damping sets the overshoot (8 min). Start with the default Second-order system, \(\zeta = 0.30\) and \(\omega_n = 2.00\) rad/s. The poles are at \(-0.60 \pm j1.91\) and the step response overshoots by 37.2 % at \(t = 1.65\) s, matching the formula \(e^{-\pi\zeta/\sqrt{1-\zeta^2}} = 37.2\) % and \(t_p = \pi/\omega_d = 1.65\) s; the 2 % settling time is 5.62 s. Set \(\zeta = 0.70\): the poles move to \(-1.40 \pm j1.43\) and the overshoot drops to 4.6 % at 2.20 s. At \(\zeta = 1.00\) the pair meets in a double pole at \(-2.00\) with no overshoot, and at \(\zeta = 1.50\) it splits into two real poles at \(-0.76\) and \(-5.24\). Return to \(\zeta = 0.30\) and set \(\omega_n = 4.00\): the poles move to \(-1.20 \pm j3.82\), the overshoot stays 37.2 % but the peak comes at 0.82 s. The angle of the poles (ζ) sets the shape; their distance from the origin (ωn) sets the time scale.
Activity 2: Frequency response from vectors (8 min). With the default system, set the marker to \(\omega = 2.00\) rad/s (\(= \omega_n\)). The read-outs show \(|H| = 1.667\) (4.4 dB) and \(\angle H = -90.0°\). The upper pole is 0.607 from \(j2\), the lower pole 3.954, so \(|H| = 4/(0.607 \times 3.954) = 1.667\). Now set \(\omega = 1.81\) rad/s: \(|H| = 1.747\) (4.8 dB), the top of the resonance peak, equal to \(1/(2\zeta\sqrt{1-\zeta^2})\). The peak sits where the marker passes closest to the upper pole.
Activity 3: Stability and the ROC (7 min). Choose Unstable. The poles are at \(+0.20 \pm j1.99\), the banner is red, the shaded ROC \(\mathrm{Re}(s) > 0.20\) does not contain the \(j\omega\) axis, and the step response oscillates with growing amplitude (\(y(10\text{ s}) = -2.03\)). Drag \(\zeta\) to 0.00: the poles sit on the axis at \(\pm j2.00\), the banner turns amber (marginally stable), and \(y(t) = 1 - \cos 2t\) swings between 0 and 2 forever. At \(\zeta = 0.10\) the poles move to \(-0.20 \pm j1.99\), the system is stable and the overshoot is 72.9 %. Finally choose Integrator: the pole at \(s = 0\) is marginal and the step response is a ramp with \(y(10\text{ s}) = 10\).
Activity 4: From the s-plane to the z-plane (7 min). Load Second-order and check Map to z-plane with \(T = 0.50\) s. The selected pole maps to \(|z| = e^{\sigma T} = 0.741\) at \(\angle z = \omega T = \pm 54.7°\), inside the unit circle, and the marker \(j\omega\) maps to \(e^{j\omega T}\) on the circle. Raise \(T\) to 1.80 s: now \(\pi/T = 1.75\) rad/s is below the pole frequency 1.91 rad/s, the pole lies in the grey band outside the strip \(|\omega| < \pi/T\), and the read-out gives \(|z| = 0.340\) at \(\angle z = \pm 163.2°\) (aliased). Load Unstable at \(T = 0.50\) s: \(|z| = 1.105\), outside the circle.
Assessment
- A system has \(\zeta = 0.5\) and \(\omega_n = 3\) rad/s. Where are its poles, and what is its step overshoot? Answer: \(-1.50 \pm j2.60\); \(e^{-\pi \cdot 0.5/\sqrt{0.75}} = 16.3\) % (set the sliders to check).
- A causal system has poles at \(-2\), \(-1 \pm j3\) and \(+0.5\). Is it stable, and what is its ROC? Answer: no; the pole at \(+0.5\) is in the right half-plane, so the ROC is \(\mathrm{Re}(s) > 0.5\), which excludes the \(j\omega\) axis.
- Why is \(\angle H(j\omega_n) = -90°\) for every \(H(s) = \omega_n^2/(s^2 + 2\zeta\omega_n s + \omega_n^2)\), and what is \(|H(j\omega_n)|\)? Answer: at \(s = j\omega_n\) the denominator is \(j2\zeta\omega_n^2\), so \(H = 1/(j2\zeta)\): angle \(-90°\) and magnitude \(1/(2\zeta)\), which is 1.667 for \(\zeta = 0.3\).
- With \(T = 0.5\) s, where does a pole at \(s = -1\) map in the z-plane, and which other s-plane points map to the same \(z\) as \(-0.6 + j1.91\)? Answer: \(z = e^{-0.5} = 0.607\) on the positive real axis; every point \(-0.6 + j(1.91 + 2\pi k/T)\), that is, shifted by multiples of \(j12.57\) rad/s.
- Does a zero at \(s = +1\) make a system unstable? Answer: no; stability depends only on the poles. The right-half-plane zero adds phase lag and makes the step response start in the wrong direction.
Common Misconceptions
"A right-half-plane zero makes the system unstable." Choose Right-half-plane zero: \(H(s) = -2(s - 1)/(s^2 + 3s + 2)\). The banner says STABLE, yet the step response first dips to \(-0.33\) at \(t = 0.41\) s before rising to 1. At \(\omega = 1.50\) rad/s \(|H| = 0.800\) and \(\angle H = -149.5°\). Drag the zero from \(+1\) to \(-1\): \(|H|\) is still 0.800 (the zero's vector has the same length), but the phase becomes \(-36.9°\) and the dip disappears.
"If the output does not blow up, the system is stable." The Oscillator and Integrator presets have bounded impulse responses, but their poles lie on the \(j\omega\) axis. A bounded step input drives the integrator to an unbounded ramp, so neither system is BIBO stable; the banner calls them marginally stable and the ROC boundary lies exactly on the axis.
References
- Laplace transform - Wikipedia - definition, region of convergence and transfer functions
- S-plane - Wikipedia - the complex frequency plane \(s = \sigma + j\omega\) and how pole locations determine system behavior
- Pole–zero plot - Wikipedia - reading stability and frequency response from poles and zeros
- BIBO stability - Wikipedia - the left-half-plane condition for continuous-time systems
- Damping - Wikipedia - damping ratio, natural frequency and underdamped, critically damped and overdamped responses
- Minimum phase - Wikipedia - why right-half-plane zeros add phase lag without changing the magnitude
- Matched Z-transform method - Wikipedia - mapping poles and zeros with \(z = e^{sT}\)
- The Scientist and Engineer's Guide to Digital Signal Processing - Steven W. Smith - free online textbook with a chapter on the Laplace transform and the s-plane