淘先锋技术网

首页 1 2 3 4 5 6 7

buck电路matlab仿真及其PID控制器参数调整

主电路搭建

参数设置

buck电路传递函数辨识

matlab pid-tuner进行pid控制器参数调整,将调整好的PI参数更新到buck电路控制器中

一.主电路搭建:

1.buck电路组成:电感、电容、开关器件、同步整流可以不用二极管

主电路:

9ecbbc2b2d4d9220004ad6d7c044efbf.png

电感值:85e-6h,电容值:30e-4。电阻:4

2.添加控制模块,测量模块:

efcfba83bbb9c2763a2c6457ea6982d5.png

死区模块的搭建:

9d09902f3572d64077049b6168d8ec03.png

小技巧:1.在模型中使用Goto、From模块可以减少信号线的使用,使模型看起来更加整洁。

2.PWM Generator模块可以直接生成PWM波。D的范围0-1。

3.死区模块的搭建可以通过下降沿延时模块和逻辑操作模块的组合实现。

二、buck电路的传递函数辨识

2.1获取输入及其对应的输出输出:

在PID控制器输出端接上、以及测量电压模块输出端分别接上to workspace模块将数据导入到maltab工作空间为后面使用系统辨识工具箱提供辨识数据:

c34fe7eb83882bc64072d91d62567c38.png

双击这两个模块可以修改模块名以及数据形式:

86ec6bdfce015a319e8fdff7d1941ad5.png

2.1运行模型(仿真时间0.0几足够了)得到占空比以及其对应的输出电压数据:(为了得到原始数据,可以先随便给PI控制器一个PI参数[不要太离谱!])

6e961bc9420e31915ed2b33d2b437c2f.png

2.2打开系统辨识工具箱:

30b4703a139f2a41a6a4dda874286309.png

26b0bf5c7d453c30277a2652f6e977a8.png

069984a9c50b4a9178538307e2f03350.png

94d8d6aae903a6a501bebc86ed8213a1.png

8c961014cb57d736646a5af312531c7a.png

2.3对得到的传递函数在simulink中利用pid-tuner进行PID控制器参数调整:

2.3.1搭建辨识得到的buck电路的传递函数对应的控制系统:

2fd0ce8755d84d94cb5fd745d76bb28f.png

2.3.2双击PI控制器打开点击选项tuner:

68c5792eaaa3d21fdd91c3ddb0f24273.png

04a4fc5be0d75dc9f057cce1568b4850.png

滑动上面的两个画块可以分别调节控制器响应速度以及鲁棒性,右下方是对应的PI参数。

2.3.3滑动滑块调整控制器性能得到:

6b0b56fbc2d0ce886d5f41a63c42599d.png

对应下的的传函系统输出:

c66603f8842f966319fe7490ddaaa138.png

将该PI参数修改到buck电路控制器中去得到buck电路输出电压响应:

8062a9e031c74b47913ece56634e6307.png

小技巧:由于PI的初始值可能与较好的PI参数相差太大,得到的辨识不够模型,因此我们可以通过这次得到数据再次进行系统辨识。重复上面的操作。

提示:这里对文章进行总结:

例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。