在进行电力电子仿真研究时,发现simulink中仿真出来的电流总是出现问题,导致电流要不是上不去,就是太大。后来经过了解,发现simulink仅仅在仿真方向比较强悍,对于电力电子级别的仿真的底层算法不是很优秀,所以尝试对psim这种电力电子专业仿真软件进行联合仿真,两者刚好能够互相融合,各用其所长。
Psim联合仿真模块可以详细去查阅其官网或者软件自带的help工具,亦可以查看知乎下这篇文章:本质上还是把官方的文档从英文翻译成了中文:https://zhuanlan.zhihu.com/p/414384259
可能官方给的参考还是太过于简单,具体操作起来可能还是会出现些许困难或者报错,加上网上对于联合仿真的参考资料也是很少,所以写了该篇文章为大家提供参考。
1.首先打开psim,在“options”中先检查你的“License Setup”,在跳转出来的页面检查“Features”是否勾选了下面的"Co-simulation",请务必勾选该项,否则后续放置节点是灰色,不能使用。
2. 按照官网指示,应该点击“Utilities”下的"SimCoupler Setup"选项。
但是会出现以下错误:
我也有matlab,网上关于这个报错也有,貌似是应为系统环境变量没有设置好,我也是非计算机专业的学生,对于操作系统一窍不通。试着也找了其余办法,解决办法如下 :
先跳过该步骤,先删掉模型中所有的控制器以及其电路,只保留主电路。然后放置节点,
这里面的In Link Node意思就是把来自simulink的数据传入psim,Out Link Node的意思就是把来自psim的数据传到simulink,在使用时可以理解为这两个东西就是传感器。
以我的模型为例子:
该电路就只保留了移相全桥,变压器以及滤波电路,其余的PI控制电路,触发脉冲电路全部被删掉了,被删掉的部分需要在simulink中搭建。可以看到,在主电路中需要由simulink控制电路提供只有门极触发信号,因此选择的是In Link Node,需要提供给simulink控制电路的参数只有输出电流,因此选择的是Out Link Node。
3.新建一个文件夹,并保存在该文件夹下,然后进行如下操作:
点击"Generate Netlist File" (第二个带XML的我也不知道什么意思,所以没试过那个),然后会产生一个.cct的文件,详细如下:
将该.cct文件保存在和你psim仿真文件在同一文件夹下。
4.启动matlab,将matlab下面这栏改成你psim软件的所在位置。以后每次重新打开matlab进行仿真都要先进行该步骤。
5. 启动simulink
打开你的simulink模型,删掉主电路图,保留控制电路等。然后将其保存到与你刚刚创建的psim文件夹下,注意,你的simunlink文件格式应该更改为.mdl格式。此时该文件夹应该有三份文件,分别是.mdl,psim,.cct文件。
重新启动simulink,打开刚刚的.mdl文件,在库中查找到以下模块:
这个就是psim联合仿真的文件,拖出库后,理论上如果设定正确,此时Sim Coupler模块的输入、输出引脚个数在模块的图形上会变得与PSIM中设置的In,Out Node的个数一致;双击该模块,在"Browse"上添加你的.cct文件所在的文件夹(就是刚刚创建的那个)
注意,如果PSIM的仿真参数(如步长、仿真时间长度等)与Simulink的设定值不同,仿真时以Simulink为准。
6.启动仿真,在结束后会弹出psim的窗口,理论上两个的底层算法不一样,所以波形会有一定的出入,以psim为准。
提醒:(1)每次若要想更该主电路参数,需要在psim里面改,并再次生成.cct文件,并且保存。不需要重新设定第六步。
(2)出现如下报错:
没按第四步来,改一下就行了。
参考文献:
[1]李洁,王伟,钟彦儒.电力电子系统的PSIM+Matlab联合仿真方法[J].电力电子技术,2010,44(05):86-88.