Modelica与PowerSystems库双引脚/端口连接配置求助
解决Modelica逆变器端口连接的两个问题
问题1:PVArray正负引脚与逆变器DC端口的连接
PVSystems.Electrical.PVArray有p(正极)和n(负极)两个输出引脚,而PowerSystems.AC3ph.Inverters.Inverter的DC端口是Two_Pin_P类型——这类端口本质包含p和n两个子端子,用于构建完整直流回路。你需要分别连接PVArray的正负引脚到DC端口的对应端子:
connect(pVArray.p, inverter.DC.p) annotation(Placement(transformation(extent={{-10,10},{10,-10}}))); connect(pVArray.n, inverter.DC.n) annotation(Placement(transformation(extent={{-10,10},{10,-10}})));
如果模型需要接地,也可以将PVArray的n引脚连接到Modelica.Electrical.Analog.Ground模块,但直接对应连接逆变器DC端口的正负端子是更标准的直流回路构建方式。
问题2:vPhasor输入类型不匹配的翻译错误
inverter.vPhasor是RealInput[2]类型,要求传入一个包含幅值和相位的二维实数数组(注释标注为{abs(v), phase(v)})。你当前使用的constant1.y是单个实数输出,类型不匹配导致翻译错误。
解决方法如下:
- 确认逆变器的
use_vPhasor_in参数已设置为true(启用vPhasor输入端口)。 - 使用
Constant模块并将其输出设为数组形式,例如设置幅值为230V、相位为0弧度:
Modelica.Blocks.Sources.Constant constant_vPhasor(y={230.0, 0.0}) annotation(Placement(transformation(extent={{-40,40},{-20,20}}))); connect(constant_vPhasor.y, inverter.vPhasor) annotation(Placement(transformation(extent={{-30,30},{-10,10}})));
如果需要动态调整幅值和相位,也可以使用CombiTimeTable模块,或两个Constant模块配合Modelica.Blocks.Math.Concat模块生成二维数组输入。
内容的提问来源于stack exchange,提问作者Luis Enriquez-Contreras
相关产品推荐
相关产品推荐

