前言:
前几天我发了一篇文章介绍使用frest函数来进行频率响应分析,然后识别传递函数,再使用PID或其它调试工具里面进行闭环参数设计,具体请看:《在Matlab中使用frestimate函数来进行频率响应分析 视频版》。这一招需要使用matlab的m语言,如果对这个环境不熟悉会遇到错误不知道去怎么解决。所以,我今天继续研究出了一个新的方法,全程无需m语言操作就点几下鼠标,直接在simulink环境里面操作,实现扫描频率响应,设计闭环控制参数的全部过程。
S1 打开你的simulink模型,我继续使用视频中的ZVSFB模型,这样大家都无需下载。
S2 选择在稳态关注点的控制变量上设置扰动输入,选择一个走线,点击鼠标右键,找到Linear Analysis Points 选择输入扰动
S2 选择观测变量,我这里设置到输出电压采样上,鼠标右键找到Linear Analysis Points,选择输出测量。
S4 点击Simulink菜单里面的Analysis里面的Control Design里面的频率响应分析。
S5 设置输入信号,选择正弦波序列:
S6 设置分析频率范围,我这里是从50~50K,分析50个点。
S6 设置好注入幅度,这些东西在视频中有讲过(在Matlab中使用frestimate函数来进行频率响应分析 视频版)不再累述:
S7 选择输出bode图,simulink开始干活,等待几分钟,等扫描完成:
S8 扫描完成,输出bode图:
S9 打开PID tuner APP,选择导入数据,选择频率响应扫描数据类型:
S10 调整PID参数,选择合适的穿越频率和相位余量,然后获取PID信息,用于控制。
S11 根据PID参数,测试闭环性能:
闭环:
STEP:
S12 小结:我这里随便拉个参数,虽然还可以但是不完美,但是这一套工作流就奉献给各位大佬了。嗯,是不是环路设计直接起飞了?emmmm
附录:如果想看视频,也可以了解一下频率响应分析的一些基本知识:
最后必须要说的是本人能力有限,如果上文中有错误的地方,请大家多多包涵,还请发信息给我帮忙指正,本人将感激不尽,谢谢。
关于本人:
我是杨帅,有多年电源硬件和软件开发经验,熟悉各种电源仿真软件的使用,包括模拟控制方向的Pspice和Simplis,以及数字控制使用Matlab和Plecs。熟悉PSFB,CLLC,DAB,PFC等功率架构的拓扑,控制算法,环路设计。目前是从事车载电源行业,专注在中等功率变换器领域,数年来一直从事电力电子仿真技术研究与应用推广。