Course Overview

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 behavior 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 is free and open-source and therefore students do not need to purchase any software licenses after enrolling in 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 analyses easily understandable.


What you'll learn

  1. Basic grid computations such as frequency estimation
  2. Basic control theory
  3. Introduction to python-control package
  4. Transfer function representation for a system
  5. Closed-loop systems, feedback paths and controllers
  6. Using Bode plots to interpret system transfer functions
  7. Stability analysis through Bode plots
  8. Reference frame transformation
  9. Controller design through Bode plots
  10. Simulation of controlled systems using Python
  11. Basics of single-phase converters
  12. Switching control strategies for single phase converters
  13. Controller design for a grid connected converter

Projects Involved in this Course

  • Design and analysis of proportional, integral, and proportional-integral controllers for single-phase grid-connected converter in the stationary reference frame

    Project 1
  • Stability analysis techniques for closed-loop systems

    Project 2
  • Design and analysis of proportional-integral controller for single-phase grid-connected converter in the synchronous reference frame

    Project 3

Course Notes

Course name

Control analysis with Python for grid connected converters

Start & end date

 

Open for enrolment anytime

 

Mode of delivery

 

Online, recorded video lessons & self-paced 

 

Software used

 

Python, Numpy, Scipy, Matplotlib, Python-control & Python Power Electronics

 

Course pre-requisites

 

Basic electrical engineering network laws, Laplace transform and frequency response of systems, simulating power electronic circuits with control loops in Python Power Electronics, basic Python, Numpy and Matplotlib

 

Applicable for

 

Students, Faculties, or Industry professionals from the background of Electrical & Electronics engineering.

 

Certification by & Host details

 

Decibels Lab Pvt Ltd 

(Recognised as Start-up by Department for Promotion of Industry and Internal Trade Ministry of Commerce & Industry Government of India) (Certificate Number: DIPP45372)

 

Course duration

33 hours 

Course access duration 

90 days

Doubt clarification

 

It's 100% practical & self-paced, provided with a step-by-step guide to achieve the learning. To address any of the queries in person, we have a Discussion feature, where you can directly interact with the course author. 

 

Course Curriculum

    1. Overview of the course

    2. Course requirements

    3. How to use this course

    4. How to use Discussions option

    5. Course access duration

    6. Piracy & infringement warning

    1. Introduction

    2. An overview of power system grids

    3. Grid voltage waveforms

    4. Downloading Python Power Electronics

    5. Videos on installing Python Power Electronics

    6. Installing Python Power Electronics

    7. Simulating a single phase voltage source

    8. Modeling the grid feeder

    9. Calculating the feeder impedance

    10. Simulating a grid with a feeder

    11. Conclusions

    1. Introduction

    2. Peak and RMS calculation concept

    3. Implementation of peak calculation

    4. Peak calculation during grid events

    5. Implementation of RMS calculation

    6. RMS calculation on non-sinusoidal waveform

    7. The need for frequency estimation

    8. Simulation of a system with multiple frequencies

    9. Introduction to Phase Locked Loop

    10. Coding the simplified PLL logic

    11. Performance of the basic PLL

    12. Frequency response characteristics of the PLL PI controller

    13. Improved performance of the PLL

    14. Offsets during numerical integration

    15. Simulating the integration offset

    16. Removal of the integration offset

    17. Design of a Low Pass Filter

    18. Coding the low pass filter

    19. Performance of the low pass filter in a simulation

    20. Operation of the PLL with the low pass filter

    21. PLL operation when grid frequency changes

    22. PLL operation when grid voltage has harmonics

    23. Summing up the PLL control loop

    24. Conclusions

    1. Introduction

    2. Control basics

    3. Control definitions

    4. Control objectives in grid connected systems

    5. System representation of a grid connected converter

    6. Model of the plant

    7. Linear time invariant systems

    8. LTI systems and controllability

    9. Conclusions

    1. Introduction

    2. Laplace transform and frequency domain representation

    3. Basics of stability

    4. Characteristic equation of a system

    5. Examples of stability

    6. Installing the python-control package

    7. Creating transfer functions in Python

    8. The transfer function object produced by python-control

    9. Transfer functions in series

    10. Transfer functions in parallel

    11. Calculating the transfer function of the closed loop system

    12. Synthesizing a non-standard transfer function

    13. Impulse response of a system

    14. Convolution integral

    15. Bode plots

    16. Generating Bode plots using Python

    17. Using Bode plots to predict simulation results

    18. Analyzing the simulation results with Bode plots

    19. Summing up with Bode plots

    20. Conclusions

    1. Introduction

    2. Approach to control

    3. Setting up the simulation

    4. Converter as a controllable voltage source

    5. Open loop regulation of converter voltage

    6. Closing the loop with a unity gain controller

    7. Analyzing the performance of the unity gain controller

    8. Bringing in the proportional (P) controller

    9. Requirements of a controller

    10. Analyzing the forward transfer function with the proportional controller

    11. Discrete-time control

    12. Mathematical model of sampling

    13. Modified transfer functions with sampling delay

    14. Bode plots with sampling delay

    15. Simulating the discrete-time controller

    16. Coding the transfer function between grid voltage and current

    17. Analyzing the impact of the grid voltage

    18. Effect of proportional controller gains on control performance

    19. Verifying analytical results in a simulation

    20. Poles of the closed loop system

    21. Gain margin and phase margin

    22. Stability margins on a Bode plot

    23. Analytical design process for the proportional controller

    24. Design and analysis of a Proportional-Integral controller

    25. Simulation of the PI controller

    26. Summing up the control design effort

    27. Conclusions

About this course

  • ₹2,999.00
  • 145 lessons
  • 33 hours of video content

Shivkumar Iyer

Instructor profile

I did my Master's and PhD in power electronics after which I spent several years working for both big companies like ABB and GE as well as a number of start-ups. I specialized in the field of power converter control and smart grids and have published prolifically in high impact international journals and conferences besides also being the author of two books. I started programming at the age of 14 and over the past 20 years have programmed in several languages - C, C++, Python, JavaScript. I started taking a keen interest in open source software after I became a Linux user when I was a graduate student. My expertise in electrical engineering and programming therefore resulted in me creating open source software for electrical engineers. I use open source software for teaching electrical engineering to students and practicing engineers with the typical theme of my courses being the application of programming to solve engineering problems.