
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.
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.
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.
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.
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.
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.
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.
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.
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 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.
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.
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.
Add a controllable voltage to the converter and generate a 240 V sinusoid to study open-loop regulation, then plot voltage and current.
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.
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 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.
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.
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.
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 the theory of synchronously rotating reference frame transformation for grid voltage, including 50 Hz signals, phase angles, and the matrix form with its inverse.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.