How to run closed loop using PI controller and TMSf320f28335 in simulink?

4 views (last 30 days)
I am designing a buck converter in closed loop using PI controller with the device integrating with TMS320f28335 through simulink.
Ratings-
Vin= 24volts
Vout=12 volts
Swtching frequency=20khz
Here my open loop is working properly but when i am implemtenting closed loop it's not working properly due to some predictive reasons
1- duty cycle is saturated
2- Pi controller is reducing the error

Answers (1)

Pratyush
Pratyush on 18 Jan 2024
Hi Arijeet,
To address issues with your closed-loop buck converter using a PI controller:
  1. Check the voltage sensor accuracy and correct scaling for the TMS320F28335's ADC range.
  2. Start with reasonable initial values for the proportional (Kp) and integral (Ki) gains.
  3. Implement an anti-windup mechanism to prevent excessive integral term accumulation when the duty cycle is at its limit.
  4. Systematically tune Kp and Ki to achieve desired performance, using methods like Ziegler-Nichols or trial and error.
  5. Confirm the control loop frequency matches or is a multiple of the switching frequency.
  6. Apply a low-pass filter to the feedback signal if it's noisy.
  7. Clamp the control signal to ensure the duty cycle stays within the 0-1 range.
  8. Use Simulink to simulate and adjust the system based on its response to disturbances.
  9. If simulation works but hardware doesn't, recheck hardware connections, PWM signal, and ADC conversion.
Hope this helps you to troubleshoot your closed-loop system.

Products


Release

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!