
Explore how to model grid-connected converters as control systems, design and analyze controllers in Python using transfer functions and simulations, with a focus on stability and performance.
Master Python programming, NumPy array manipulation, and plotting with Matplotlib; use the Python control package for circuit design and analysis with the Dunbar Electronics circuit simulator.
Combine theory with hands-on Python programming to design and analyze control systems for grid connected converters. Code along with provided slides and resources, and use forum for help and feedback.
Explore the interplay between grid connected equipment and the grid, and learn to model realistic grids for simulating grid connected converters.
Understand the power system grid—generation, transmission, and distribution—and how grid-connected converters operate across voltage levels from 120/240 V to 11 kV at load centers.
Explore how grid voltage waveforms vary by location, with household voltages near 240 V at 50/60 Hz and transformer levels, and how sine or cosine representations relate rms to peak.
Explore how to install and use the Python power electronics circuit simulator for grid-connected converters, with open-source options, web-based UI, and downloadable versions.
install and configure python power electronics by creating a new conda environment, installing requirements, setting up the database, and launching the circuit simulator to build a growing simulations library.
Set up and run a basic single-phase grid simulation in a Python environment, building a circuit with a voltage source, a parasitic resistor, and meters, then plot voltage and current.
Model the grid feeder by including feeder impedance, such as resistance, inductance, and sometimes capacitance, and use the point of common coupling to assess voltage drop.
Develop a Python calculator to determine feeder impedance from a percentage impedance, compute resistance and reactance from rated voltage and current, and derive inductance for grid-connected converters.
Simulate a grid with the feeder impedance to validate the two percent voltage drop, using a circuit file, adding a voltmeter, and comparing feeder and source voltages.
Summarize the grid concepts and the rationale for grid connected converters in single-phase applications. Explain how feeder impedance affects voltage and outline upcoming measurements and frequency estimation.
Learn to define and measure grid voltage magnitude, synchronize with the grid, and connect grid-connected converters while minimizing impact and meeting interconnection requirements.
Compute peak and root mean square values of a voltage waveform with a moving window equal to one period, updating the peak each cycle and accounting for frequency and harmonics.
Simulate a single-phase grid connected converter and implement a moving-window peak calculation control algorithm to track the grid voltage peak in real time.
Explore peak calculation during grid events using a dynamic grid voltage and a controlled voltage source. Build a Python grid simulator, model voltage dips, and observe peak responses.
Implement rms calculation for grid-connected converters by integrating the square of the grid voltage over a time window, computing the mean, and taking the square root.
Analyze RMS calculation on non-sinusoidal waveforms by injecting harmonics into a grid-connected converter model. Explore how fundamental, fifth, and seventh harmonics distort voltage and affect RMS measurements.
Explain why frequency estimation matters when grid-connected converters connect a second voltage source, highlighting how differing frequencies create amplitude modulation and the need for synchronization.
Demonstrates a step-by-step simulation of a grid-connected converter system with two frequencies, illustrating how a modulated waveform arises and the need for frequency estimation and grid synchronization.
Explore how a phase-locked loop performs frequency estimation and locks onto the grid phase to synchronize grid-connected converters amid harmonics.
Simulate a basic phase-locked loop for grid-connected converters in Python by implementing a 200 μs sampling pi controller, converting grid sine to cosine, and generating a reference frequency omega pll.
a basic phase-locked loop (pll) in a Python control framework, plot omega, phase angle, and error signals, observe convergence, and explore settling and synchronization for grid-connected converters.
Derive the pll pi controller transfer function kp + ki/s, then plot its Bode magnitude and phase to study the frequency response and settling behavior for grid-connected converters in Python.
Explore improving a phase-locked loop for grid-connected converters by adjusting gain to suppress high-frequency components, achieve faster settling, and synchronize the phase angle with the grid.
Learn how numerical integration introduces a DC offset due to initial conditions, with sine versus cosine signals and simulation verification in grid-connected converter control.
Simulate integration offset in a Python-driven grid-connected converter by adjusting the voltage source phase. Reveal a DC offset in the integral and learn how to remove it in next lecture.
Remove the integration offset in grid-connected converters by using a low-pass filter to extract the dc component and subtract it, with Python-based implementation for control analysis.
Implement a second-order low-pass filter to remove the dc component and extract the dc offset, converting the continuous transfer function to a discrete form with a 200 μs sampling time.
Implement a discrete-time low-pass transfer function in the circuit simulator’s control file. Translate the z-domain form to a time-domain filter using past input and output samples.
Simulate a low-pass filter to extract the DC component from a grid signal and validate the result in simulation, considering resonant frequency and settling time in the PLL controller.
Demonstrate how the PLL with a low-pass filter removes integration offset, producing a smoother frequency signal and phase. Show how this improves synchronization in the grid-connected converters control loop.
Explore how the PLL with a low-pass filter responds to grid frequency changes and locks to the new frequency during transient events using a controlled voltage source and grid simulator.
Explore how a phase-locked loop tracks grid frequency changes and stays synchronized under harmonic distortion, with 5th and 11th harmonics illustrating the PLL’s zero-error control.
Learn to estimate grid frequency and achieve robust synchronization with a phase-locked loop in Python simulations, handling dynamic events, multiple frequencies, and harmonic grid voltages.
Define controller, plant, output, measurement, feedback, and error calculation; illustrate with block diagrams; derive closed-loop models for grid-connected converters from network equations.
Learn the basic definitions of control, reference, measurement, feedback, and control action. See how these elements form a closed-loop system to maintain a desired speed, illustrated with driving a car.
Map the car control problem to a block diagram, showing the plant, regulated inputs like accelerator and brake, disturbances, and a controller driven by the error in a closed loop.
Explore grid connected systems by treating the power converter as a controllable voltage within grid impedance and filter, and regulate current for a smooth waveform free of spikes.
Represent the grid connected converter as a controllable voltage source feeding the grid through a filter to regulate the injected current.
Present the plant model for grid-connected converters by formulating current as a function of state and inputs, and show a closed-loop control with reference and grid voltages.
Explore linear time invariant systems for grid connected converters, applying the linearity test to confirm the plant is linear and time invariant, and distinguish non-linear function examples.
Explore linear time invariant systems and controllability in grid-connected converters, showing how known state and input predict the output and how a controllable voltage source enables precise current control.
Analyze control of grid-connected converters using Python's control package, building and analyzing transfer functions, cascaded transfer functions, and closed-loop feedback to study frequency response with bode plots.
Explore stability in control systems, including absolute and asymptotic stability, using car examples to relate reference changes and disturbances to time- and frequency-domain analysis with Laplace transform and closed-loop concepts.
Analyze how stability arises from the characteristic equation of a closed-loop grid-connected system, linking transfer functions, the reference, grid disturbance, and poles in the frequency domain to time-domain behavior.
Explore how Laplace transforms relate time-domain responses to pole locations in the complex plane to assess stability of grid-connected converters, highlighting left half-plane decay and right half-plane instability.
Install the python-control package in an anaconda environment for grid-connected converter control. Prepare to build your first transfer function in code.
Learn to create transfer functions in python with the control package, build a grid-connected converter plant model, and define numerator and denominator arrays for analysis.
Explains how to create and inspect the transfer function object produced by python-control, including its class-based structure, methods, and how to access poles, zeros, and frequency evaluation.
Explore expressing closed-loop transfer functions for a grid connected converter in Python. Build system interconnections—series, parallel, and feedback—and derive the output current transfer function from reference and grid voltage disturbance.
Explore parallel transfer functions in grid connected converters using the control package to combine proportional, integral, and derivative blocks into a single controller, as demonstrated with the panel function.
Compute the transfer function of a closed-loop system using the feedback method, defining primary process as the forward path (controller and plant) and applying negative feedback.
Synthesize the transfer function from the disturbance grid voltage to the output, using brute-force polynomial manipulation in Python control and addressing sign changes in nonstandard feedback.
Discover how an impulse input defines the system’s fundamental response through impulse response, and how shifting impulses enables convolution-based analysis of any input with transfer functions and frequency response.
Explore the convolution integral and impulse response to compute a system's output from any input by time-reversing and time-advancing signals, showing the moving input impact on the system.
Study frequency response using Bode plots to analyze a system's impulse response and transfer function in the frequency domain, including magnitude and phase for sinusoidal inputs.
Generate and analyze Bode plots in Python using the control package, exploring magnitude and phase across frequency ranges with options for decibels, degrees, Hz, and grid-connected converter applications.
Explore how Bode plots map magnitude and phase to waveforms and verify grid-connected converter behavior through simulations, linking transfer functions to inductor and converter current.
Explore how to analyze a grid-connected converter using Bode plots, comparing magnitude and phase from the transfer function to simulation results at 50 Hz, and verify a 3.03:1 gain.
Explore how to interpret a Bode plot by examining frequency response and transfer function of an inductor in a grid-connected converter, including magnitude, phase, and low versus high frequency behavior.
Conclude by analyzing a closed-loop grid-connected converter with transfer functions for output relative to reference and grid disturbances, and assess stability via poles and frequency responses using Python control.
Explore the use of the Python control package to design and analyze controllers for a grid-connected converter, synthesizing transfer functions and closed-loop behavior via frequency response and stability margins.
Design a current controller for a grid-connected converter using a block diagram and reference–current error, where the controller output is added to the grid voltage to regulate the inductor voltage.
Set up a single-phase grid simulation and implement the control approach: multiply the error by the control transfer function, then add the grid voltage to generate the controller output.
Explore how to integrate a converter as a controllable voltage source into a single-phase grid connected circuit, including interface inductor, parasitic resistance, and measurement of grid voltage, preparing for simulation.
Add a controllable voltage to the converter and generate a 240 V sinusoid to study open-loop regulation, then plot voltage and current.
Close the loop using a unity gain controller that regulates grid current by feeding back the inductor current and grid voltage, computing error, and examining controller behavior.
Assess the unity gain controller in a closed-loop grid current system using a body plot to relate reference to output, revealing magnitude and phase at 50 hertz.
Introduce a proportional controller to the grid-connected converter by adding a forward transfer function and feedback. Analyze how the proportional gain shapes the closed-loop response with frequency response and simulations.
Design a controller for grid-connected converters using transfer functions and body plots to ensure the output follows the reference at the operating frequency while rejecting disturbances and noise.
Analyze the forward transfer function with a proportional controller and examine the open-loop and closed-loop transfer functions through frequency response, magnitude behavior, and body plots.
Analyze discrete-time control with digital microcontrollers, focusing on sampling time and sampling frequency, data acquisition, computations, and actuator delay, and model these sampling effects to predict grid connected converters performance.
Learn how sampling introduces delay in digital control, converting continuous signals to discrete using bilinear (Tustin) transformation, mapping between s and z domains, and modeling sampling delays in control loops.
Explore how sampling delay modifies transfer functions in a closed-loop grid-connected converter. Learn to derive forward and disturbance transfer functions under digital control for accurate modeling.
Explore bode plots with sampling delay to show how discrete-time transfer functions alter magnitude and phase, the resonant peak, and frequency response in grid connected converters.
Code the transfer function between grid voltage and current in a discrete-time controller, synthesizing the numerator and denominator and a disturbance transfer function.
Analyze how grid voltage disturbances affect the output current via the transfer function at 50 Hz. Show magnitude and phase to explain lagging current and instability from discrete-time sampling.
Explore how proportional controller gains affect grid-connected converter control, examining stability, time-domain behavior, disturbance rejection, and the interaction of reference signals with grid disturbances in continuous and discrete domains.
Map the grid voltage to current and verify analytical results through a simulation by comparing disturbance and reference transfer functions at 50 hertz, highlighting expected versus simulated currents.
Analyze how closed-loop poles respond to controller gain in grid-connected converters, showing poles moving in the complex plane from stable left-half to unstable right-half and the impact on stability margins.
Explore how gain margin and phase margin quantify stability in a closed-loop control system. Learn how a 180-degree phase shift creates positive feedback and how margins reveal distance from instability.
Explore stability margins on a Bode plot by analyzing the forward transfer function under unity feedback, using Python control to obtain gain and phase margins for grid-connected converters.
Design a proportional controller for grid-connected converters using transfer functions and frequency response. Assess stability with poles, gain margins, and phase margins to minimize reference error and disturbance.
Design and analyze a proportional-integral controller for grid-connected converters, deriving the controller transfer function and assessing reference tracking, disturbance response, and stability via gain and phase margins.
Simulate a PI controller for grid connected converters in python, analyzing transfer functions and bode plots. Explore integral action, current tracking, and stability margins with disturbances.
Explore why control designs fail and how analytical tools predict performance, using simulations to compare proportional and integral controllers, and introduce rotating-frame analysis for grid-connected converters.
Bridge simulation and offline dna analysis of grid-connected converter controllers, using a step-by-step design, analysis, verification, and comparison to predict stability margins, sampling effects, and steady-state tracking.
Explore how to implement control in the synchronously rotating reference frame, apply moving reference frames beyond machine domains, and drive stable closed-loop systems with a custom root locus tool.
Explore how a moving reference frame alters perception by defining subject, observer, object, and frame of reference, and explain speeds as relative to the observer.
Explore moving and stationary reference frames through athletic cameras to observe fast motion, then apply these concepts to control in electrical engineering and grid-connected converters.
Learn how a rotating reference frame turns ac voltages into dc-like quantities using phasors and rotating axes to simplify control analysis for grid connected converters.
Explore the theory of synchronously rotating reference frame transformation for grid voltage, including 50 Hz signals, phase angles, and the matrix form with its inverse.
Set up a Python-based grid-connected simulation, creating a synchronous transformations project for a single-phase grid and implementing transformations with integration and projections of grid voltage onto stationary axes.
Transform grid voltages into a rotating reference frame, derive the x and y projections using phase, frequency, and cos/sin, and examine discrete low-pass filtering and sampling effects.
Analyze how a rotating reference frame yields dc-like projections, a phase delay between voltage and axis, and 50 Hz appearing as 100 Hz when the frame is at 49 Hz.
Explore the pll control strategy with rotating reference frames, showing grid voltage projections on rotating axes, and how phase alignment locks the frequency to the grid.
Learn to build a rotating reference frame model for a grid connected converter, derive a matrix-based differential equation, and handle cross coupling between x and y axes for control design.
Transform signals to the rotating reference frame to decouple x and y loops, then synthesize transfer functions and use integration and PI control to inverse-transform voltages back to stationary grid.
Transforming to the rotating reference frame makes the grid-connected converter behave like a dc system, simplifying current control and transfer functions, and enabling grid disturbance rejection at zero hertz.
Synthesize rotating-frame transfer functions in Python, building a non-standard transfer function model, and use integral and low-pass components to transform from stationary to rotating reference frames for control.
Compute the closed-loop poles of a grid-connected converter by including sampling delay in transfer functions, and visualize stability with pole scatter plots and a custom root locus.
Illustrates plotting closed-loop poles in the complex plane for arrays of controller gains, showing how varying proportional and integral gains affect stability and root-locus-like visuals in Python.
Divide the figure into separate Python objects—figure, axis, and subplot—to build a root locus plot, then map each dot to its corresponding controller gain values for closed-loop design.
Define and handle mouse motion events on plot window by connecting an event handler to the figure's canvas, receiving event object with x and y data to display proportional and integral gains.
Learn to interpret mouse movement on a matplotlib plot by detecting cursor entry into axes and data points, using contains and index mapping to values.
Map each plot pole to its corresponding Python controller gains, establishing a one-to-one mapping between poles and gains.
Learn to display real-time controller gains next to poles by creating and updating matplotlib annotations, using data coordinates, offset positioning, and dynamic canvas refresh.
Analyze how controller gains affect stability using a locus plot, focusing on proportional and integral gains and pole movement on the imaginary axis.
Explore how proportional and integral gains move system poles relative to the imaginary axis to assess stability margins and design robust grid-connected converter controllers.
Set up a simulation to verify control analysis for grid-connected converters. Transform variables to the rotating reference frame and implement a current controller in an ideal voltage synchronous control scheme.
Transform AC variables to the rotating reference frame, project grid voltage and current onto rotating axes, and build the control blocks with static variables, integration, and plotting for PLL-based synchronization.
Implement the PI controller in the rotating reference frame to regulate current by calculating errors, integrating them, and generating a decoupled control output that includes grid voltage as disturbance rejection.
Connect a PI controller to the circuit voltage source in a grid-connected converter by transforming voltages to the stationary reference frame and gating during PLL settling.
Analyze controller variables and simulation results for grid connected converters, plot the error and its integral, and explain the small controller output before applying design gains in the next lecture.
Diagnose and refine the grid-connected converter controller by analyzing stability margins in simulations. Adjust parameters and compare rotating-frame outputs and errors to guide a scientific controller design.
Debug and diagnose a grid-connected controller by tracing rotating-frame errors, integral behavior, and controller output, revealing a wrong inverse transformation and restoring proper controllable voltage.
Improve grid-connected converter performance by diagnosing double-frequency harmonics in rotating-frame control, correcting voltage projection equations and pll behavior, and validating with simulations to achieve accurate current tracking.
Analyze how adjusting switching frequency, sampling time, and low-pass filters in a grid-connected converter impacts stability and the control of grid frequency, sag, and active and reactive power.
Leads with rotating reference frame to simplify control of grid-connected converters. Demonstrates stability analysis, root locus design, and simulation-backed performance of a single-phase power converter.
Explore the H-bridge converter topology by building a two-leg single-phase bridge model, applying PWI control, and preparing for simulation with an ideal switch network.
Learn to set up a circuit simulation by connecting an LC filter and load to a grid-connected converter, test in a dummy circuit, and troubleshoot schematic labels.
Edit the converter and test circuit parameters, set up a dummy load for debugging, adjust parasitics and dc bus voltage to prepare for simulation and future modulation steps.
Generate a pulse width modulated output using sine-triangle comparison, build a 5 kHz carrier waveform with a 200 microsecond period, and implement high-resolution sampling to drive the grid-connected converter.
Explore sine-triangle comparison in pwm, where a 50 Hz modulation signal is compared with a carrier triangle to generate switching pulses. Saturation keeps modulation within bounds to ensure switching.
Explore open-loop operation of the H-bridge converter by mapping PWM modulation to four switch outputs, yielding a 400 V dc bus sinusoid after Elzy filter.
Redesign controller gains for a grid-connected converter by updating the plant model to modulation-driven output and using root locus and frequency response to place poles in the left half-plane.
Set up a grid-connected converter simulation by integrating grid simulator, current controller, and single-phase bridge components, exporting circuit barometers, and linking global variables for the modulation signal.
Analyze a grid-connected converter simulation, fix scaling mismatches between controller outputs and the modulation signal through DC-base scaling and decoupling, and validate results amid observed oscillations.
Examine oscillations in grid-connected converter waveforms, highlighting switching ripple and grid impedance effects on grid voltage and current. Explore disturbance rejection, feedforward strategies, and harmonic regulation to reduce control burden.
Analyze how switching harmonics from grid connected converters inject ripple into the grid and compare filtering options—lcl vs inductive filters—and the role of a grid capacitor, via simulation.
Explore how capacitor placement and filter design shape grid-connected converter stability and current tracking. Propose strategies to reduce grid voltage disturbances, including adjusting capacitor values and considering alternative controllers.
Learn to analyze and design controllers for grid-connected converters using mathematical models and simulations, in stationary and rotating reference frames.
In this course, you will learn how to use Python to represent a converter connected to a grid as a closed loop transfer function. Using Python packages, controllers can be designed and the behaviour of the final closed loop system can be analyzed for steady state performance and stability. Analytical results will be verified using simulations performed using Python. This course is primarily for power electronics engineers who have been struggling to implement controllers for their converter systems as most of the controls courses do not have any specific relevance to power electronics. This course is a controls course created by a power electronics engineer for other power electronics engineers. All software used in the course are free and open source and therefore students do not need to purchase any software licenses after enrolling for the course. The course will describe in depth the Python functions and packages that can be used for control systems design and analysis.
To make this course useful for students of every background, including working professionals, the mathematical content in the course has been kept to a bare minimum and the focus is on providing solutions that can be used in projects. The course will describe theory using simple examples as far as possible in order to make the theory behind all analysis easily understandable.