top of page
Writer's pictureLMS RS

MATLAB Implementation of Speed Control with BLDC Motor using H Infinity Controller

Overview of the Simulation Model

The first step in implementing an H-Infinity controller for a BLDC motor is to set up the simulation model in MATLAB. The model consists of key components like a controlled voltage source, voltage source inverter, BLDC motor, and measurement sensors. The measurements typically include parameters like speed, current, and electromagnetic torque. These measurements are essential for controlling the motor and feeding data into the control algorithm.

Estimating the Transfer Function of the BLDC Motor

To apply the H-Infinity controller, we first need to find the transfer function of the BLDC motor. This transfer function represents the relationship between the input (control voltage) and the output (motor speed).

We begin by providing input to the controlled voltage source and collecting output data such as the speed of the motor. MATLAB’s system identification toolbox is then used to estimate the motor's transfer function. The input and output data are imported into MATLAB, and the system’s transfer function is estimated based on this data. The process ensures that the controller can adjust the motor's speed effectively.

Creating the Plant Model

Once the transfer function is identified, the next step is to create the plant model. The plant represents the actual system to be controlled—in this case, the BLDC motor. In addition to the transfer function, disturbance inputs and control inputs are required to fully represent the plant. MATLAB commands are used to define these parameters and create the plant model.

Synthesizing the H-Infinity Controller

The H-Infinity controller is synthesized to handle the speed control of the BLDC motor. MATLAB provides tools for generating this controller based on the plant model. The H-Infinity controller works by minimizing the worst-case response across a range of frequencies, ensuring that the system remains stable and performs well under varying conditions.

Once the controller is synthesized, we obtain the state-space model of the controller. This model is then converted into a transfer function form, which can be used in the simulation.

Simulating the Speed Control System

With the controller in place, the system is ready for simulation. The speed of the BLDC motor is compared with the reference speed, and the control voltage is adjusted accordingly. The simulation results show how well the H-Infinity controller tracks the reference speed, even as the set speed changes. For instance, when the reference speed changes from 3,000 RPM to 2,000 RPM, the controller effectively adjusts the motor speed without overshoot or undershoot.

Controller Performance Evaluation

The H-Infinity controller's performance is evaluated by observing how it handles changes in the reference speed. During the simulation, we see that the controller responds to changes in speed smoothly. When the reference speed is reduced, the input voltage to the motor decreases, and the motor speed settles quickly at the new reference value.

This smooth response is a key feature of the H-Infinity controller, which ensures minimal fluctuations and provides reliable speed control.

Conclusion

In conclusion, the H-Infinity controller is a powerful tool for controlling the speed of a BLDC motor in MATLAB. The simulation results demonstrate the controller’s ability to track the desired speed without significant overshoot or undershoot, even during dynamic changes in reference speed. By estimating the motor’s transfer function and synthesizing the H-Infinity controller, we achieve a stable and responsive system that ensures smooth motor operation.

0 views0 comments

Comentarios


bottom of page