在控制系统控制器设计过程中,PID控制作为基础的控制方法,得到了广泛的应用。常用的经验整定方法虽然使用方便,但是需要一定的经验,不能快速的实现对系统的有效控制。因此,本文利用MATLAB/Simulink中自带的PID Tuner模块,基于扫频法得到的升降压电路的升压状态(Boost)的传递函数,实现了对PID参数的快速整定,仿真验证实验效果良好。

本方法一共分为五个部分,对升降压电路工作模式分析、扫频法获取传递函数、PID Tuner参数整定、仿真实验结果验证、总结分析。


第一部分 升降压电路工作分析

如图1所示,升降压电路是一种常见的开关直流电路,通过控制两个开关管的占空比,可以实现对负载侧电压的控制。分析电路结构可知,两个开关管的触发信号应该具有互补的特性。本文从升降压电路的升压特性进行分析,降压原理类似。

图1 升降压电路电路图

通过控制开关管的开通与关断,可以将升降压电路分为两种工作状态,分别为充电过程和放电过程。电感充电时,等效电路图如下图所示,电压对电感充电,电容放电给负载供电;电感放电时,等效电路图如下图所示,电感具有续流效果,电压和电感惯性对电容和负载充电。

图2 充电等效电路

图3 放电等效电路

对两种工作状态进行分析,列出电路的状态方程,经过推算之后,可以得出输出电压与占空比有关,满足公式(1),当占空比大于0.5时,电路以升压电路状态工作;小于0.5时,电路以降压电路状态工作。


第二部分 扫频法获取传递函数

升降压电路的传递函数可以通过小信号模型准确推导,但是由于小信号模型的分析比较复杂,需要仔细计算推导,而采用扫频法可以快速确定电路的传递函数,便于对系统的控制器进行设计。对图4所示电路进行频法,获取传递函数过程如下:

(1)将仿真模型中开关管的触发信号开环,通过固定占空比产生PWM确定。

(2)添加输入扰动和输出测量点(扰动添加到占空比,测量添加到负载电压或电流,通过后续扫频,即可获得占空比到电压的传递函数),如图4

APPS -> Linearization Manager -> Input Perturbation(点击电线,添加扰动)

APPS -> Linearization Manager -> Output Measurement(点击电线,添加测量点)

图4 加入扰动和测量点后电路

(3)进行扫频实验,依次配置扫频工作方式

打开APP工作区(APPS -> Model Linearizer)

选择输入信号(ESTIMATION -> Input Signal)

输入信号选项中,第一个为连续信号,即对应PowerGui的Continuous;第二个为离散信号,即对应PowerGui的Discrete。以第二个信号为例进行设置,选择后需填入仿真时间,对应PowerGui的Sample time即可,如图5。

图5 选择扰动信号类型

配置过程中,需选择 Frequency units -> Hz,然后添加频率测量点,specify by -> range(频率选择范围根据开关频率进行设置,最大值为开关频率附近,最小值在10-100范围均可),此处设置为10至11000的频率范围,40个采样点。全选采样点后,选择Amplitude为0.05(扰动量大小),其余为默认配置,如图6。

图6 设置采样点

选择工作开始时间(ESTIMATION -> Operating Point)

确定仿真开始时间,一般设置稳定工作后的时间,此处设置为0.1,如图

图7 确定稳定时间

绘制Bode图,点击Bode,生成仿真数据(即从占空比到输出电压的Bode图),如图8所示

图8 仿真得到Bode图

更改步骤(2)输出测量点,重复以上步骤,获得占空比到电压的Bode图

(4)MATLAB生成传递函数

将扫频法绘制的Bode图数据复制到Workspace,利用公式拟合传递函数。

以占空比到电压为例,将扫频法拟合得到的传递函数与小信号模型计算得到的传递函数对比,如图9,可以看出两者基本一致,扫频法准确性得到验证。

图9 Gud和sysdu拟合度

第三部分 PID Tuner

第二部分通过扫频法得到系统的开环传递函数,为实现对升降压电路的控制,本文采用电压电流双闭环控制系统,结构图如图10。利用控制器PID分别实现对电流和电压的控制,双闭环控制过程中,一般遵循内环快、外环慢的原则,先设计电流环参数,再设计电压环参数。

图10 双闭环系统结构图

(1)电流环参数设计(PID Tuner)

打开PID Tuner(MATLAB -> APP -> PID Tuner);

导入拟合得到的d到i的传递函数 sysdi(s)(Plant -> Import);

选择控制器类型、绘制图像在时域还是频域和绘制图像类型选项(绘制图像类型选择Bode -> Reference Tracking,即闭环bode图),如图11;

图11 Tuner设置

通过调节BandWith和Phase Margain来控制闭环系统的带宽和相角裕度,设置完成后,在右下角获得P、I参数,如图12;

图12 设置带宽获取参数

将获得PI参数导入Simulink仿真即可。

(2)电压环参数设计(PID Tuner)

在确定完电流内环PI控制器参数之后,即可获得电压内环的闭环传递函数(前向通道/1+开环传函),将其等效为一个环节,通过MATLAB计算得到电压环的开环传递函数,满足公式

式中sysdi(s)为扫频得到的d到i的传递函数,Gui(s)为扫频得到的u到i的传递函数,Gpi1(s)为电流内环控制器的传递函数,满足公式

导入电压环开环传递函数,重复电流环步骤,即可得到电压环的PI控制器参数。

注意:设计PI参数过程中,一般设置带宽范围在开关频率的1/10(可以消除高频分量),相角裕度为60左右(设计过程要尽可能避免Bode图畸变);同时,为了满足内外环的响应速度关系,内环的带宽要高于外环带宽。


第四部分 仿真验证

经过两次PID控制器参数自动整定,即可获取内外环均稳定且可以快速响应的参数。将所得参数代入PI控制器(Simulink仿真控制图13),对负载电压和电感电流进行双环控制,如图14所示,控制效果较好,响应速度显著。

图13 电压电流双闭环仿真

图14 仿真实验结果

对于本文提及的升降压电路的电流环和电压环的PI参数整定如下

参数整定 电压外环 电流内环
比例Kp 0.06668 0.00351
积分Ki 170.9

1.086


第五部分 总结

本方法的主要思路是,基于理论计算整定的方法对内外环PI参数进行设计。借助扫频法实现对系统的传递函数模型的确定,进而借助PID Tuner导入系统传函,由所需的带宽和相角裕度需求对PI控制器进行设计,最后将设计好参数代入控制器,实现良好控制效果。

基于Smiulink仿真的升降压电路和扫频法的PI参数自动整定相关推荐

  1. 用matlab怎么仿真升降压电路,升降压直流斩波电路及matlab仿真.doc

    升降压直流斩波电路及matlab仿真.doc 电力电子课程设计1目录绪论-------------------------.3一.降压斩波电路-------------------6二.直流斩波电路工 ...

  2. 升降压电路的工作原理

    1.升压电路也叫自举电路,是利用自举升压二极管,自举升压电容等电子元件,使电容放电电压和电源电压叠加,从而使电压升高,有的电路升高的电压能达到数倍电源电压. 开关直流升压电路(即所谓的boost或者s ...

  3. 6-8.4V自动升降压5V 9V 12V PD快充解决方案 TYPE-C快充

    常需要将其6-8.4V的低电压升至可供使用的5V,9V,12V,甚至更高的电压.再如双节锂电池6.0V-8.4V电压升压到9V,12V,15V,20V,24V等电压给手机进行快速充电,也就是当前的PD ...

  4. 5-36V输入自动升降压PD快充方案图纸30W低成本芯片

    在许多应用场合,都需要将低电压升至适合用电设备使用的较高电压.如单节和双节锂电池供电电路,常需要将其2.8-4.2V的低电压升至可供使用的5V,9V,12V,甚至更高的电压.再如双节锂电池6.0V-8 ...

  5. 便携电源快充方案 30W自动升降压PD快充

    中广芯源新推出的一款高效率.直流升压稳压电路GS3662D.输入电压范围可由最低5伏特到最高35伏特,输出电压5--48V可调整且内部MOS输出开关电流可高达2A,峰值5A大电流,非常适合于数码便携产 ...

  6. 自动升降压PD快充方案 30W快充TYPE-C方案

    在许多应用场合,都需要将低电压升至适合用电设备使用的较高电压.如单节和双节锂电池供电电路,常需要将其2.8-4.2V的低电压升至可供使用的5V,9V,12V,甚至更高的电压.再如双节锂电池6.0V-8 ...

  7. SC8701同步升降压控制芯片

    本文介绍SC8701同步升降压控制芯片,为一颗40V耐压QFN32-4*4封装,引脚定义及内部框图如下图所示. 升降压控制器引脚图 SC8701内部框图 应用线路如下图所示,利用4颗MOS组成升降压电 ...

  8. 中广芯源DC-DC电源芯片.自动升降压系统

    在许多应用场合,都需要将低电压升至适合用电设备使用的较高电压.如单节和双节锂电池供电电路,常需要将其2.8-4.2V的低电压升至可供使用的5V,9V,12V,甚至更高的电压.再如双节锂电池65V升压9 ...

  9. 升压电路(BOOST)与降压电路(BUCK)

    一.电路中产生电流的条件是: 1.电路里必须有电源供电, 2.电路必须形成闭合回路 ---------------------------------------------------------- ...

最新文章

  1. Ret2Libc(2) (有system、无‘/bin/sh’)绕过NX、ASLR
  2. 雷军做程序员时写的文章,太牛了!
  3. 行为模式之Template Method模式
  4. SOCKADDR_IN
  5. docker重启容器命令
  6. JS设计模式七:发布-订阅模式
  7. linux中断底半部机制
  8. TCP协议 状态解析和状态统计
  9. [转]asp 无法连接 access,出现 -2147467259 未指定的错误
  10. 威纶通c语言,威纶触摸屏MODBUS协议的测试数据.pdf
  11. BZOJ3717 [PA2014]Pakowanie
  12. SpringBoot整合screw生成数据库文档
  13. calloc和realloc
  14. shiny导出html,将R Shiny页面导出为PDF
  15. vue实现随机生成分享海报(内容动态)
  16. 快速找出一个自然数的所有因数的方法
  17. 卡方 python_Python卡方拟合优度检验得到最优分布
  18. Ganache+Truffle+MateMask实现第一个Dapp(Windows)
  19. sd和emmc如何进行tuning
  20. 亿信华辰|政务行业数据治理存在哪些问题,该如何应对?

热门文章

  1. Linux操作系统配置Go编程环境
  2. JDBC连接数据库详细讲解及代码演示
  3. AutoHotkey 鼠标控制命令
  4. 给Win10重新装上“磁盘碎片整理”组件,修复精简系统压缩卷功能
  5. 顺序表和链表各自的优缺点
  6. 手机kindle导入本地书_微信读书和kindle:该用谁?
  7. php ci mysql框架_CodeIgniter框架数据库基本操作示例
  8. J2EE项目异常处理
  9. java介于编译型和解释型
  10. 一堆被称之为大学的东西——思想和精神