This repository consists of folders containing the MATLAB and Simulink files that are realized following the How to Design Motor Controllers Using Simscape Electrical video tutorial series.
Knowledge | Level |
---|---|
Control Theory | ⭐⭐ |
Electronics Theory | ⭐⭐ |
Simulink | ⭐⭐⭐ |
Stateflow | ⭐⭐⭐ |
Simscape | ⭐⭐⭐ |
Matlab | ⭐ |
The purpose of this project is to implement a speed control system for a simple BLDC motor using the basic knowledge of Simulink, Simscape and Stateflow.
The block diagram of the BLCD control system (🔘 click on the image to enlarge) |
This section shows the main steps I followed to achieve the goal.
- Simulink onramp
- Stateflow onramp
- BLDC Theory from different sources
- Simulink implementation simulating the Back-EMF Voltage of a BLDC Motor
- Implementing a Three-Phase Inverter to drive the BLDC motor
- Implementing the commutation logic in order control a BLDC motor at constant speed.
- Trying to add a PWM Control with the aim to achieve a more realistic scenarious.
Note:
- Each folder contains a README that shows the main work of the relative step.
- Most of the MATLAB code in this repository is copied from here.
- All the sources in this repository has been tested on Matlab R2021a.
Check out this tech talk video series to understand:
- How brushless DC motors differ from brushed DC motors and how they work
- How BLDC motors can be controlled using six-step commutation (trapezoidal control)
- The different components of a BLDC motor control algorithm such as PWM control, commutation logic, three-phase inverter and sensor