Branching of a two-phase fluid

13 次查看(过去 30 天)
I am currently trying to expand the Electric Vehicle Thermal Management model by adding a heat pump for heating operation instead of the PTC element. I would like to have the two-phase fluid flow through some kind of valve into another circuit. Since there seems to be no closing valves for 2P, I have tried to insert a valve orifice.
Below you can see my modified circuit.
Since it doesn't work like that yet, I created a much simplified model. Now I simply want to test the two shutoff valves.
SV1 should be open and SV2 closed. I realize this via a MATLAB function in the control block. cmd_SV1 or cmd_SV2 is either 1 or 0 and thus opens or closes the orifice.
function [cmd_SV1,cmd_SV2] = modefunction(delta_T_cabin)
if delta_T_cabin > 0 % cooling
cmd_SV1 = 1;
cmd_SV2 = 0;
else % heating
cmd_SV1 = 0;
cmd_SV2 = 1;
% elseif % mixed
% elseif % off
end
The scenario:
  • Cabin temperature: 30 °C
  • Target temperature: 21 °C
  • delta_T_cabin = 9 °C (For the original model)
Now, strangely enough, the following case occurs: With two valves, a temperature difference of -21 °C is passed to the function because the cabin temperature is suddenly 0 °C. This means that my valves are not controlled correctly and an error occurs.
Now my questions:
Is it possible to switch a two-phase fluid like this at all? If so, how do I solve the problem? Why is my cabin temperature suddenly changed? Without SV2 but with SV1 the simulation runs without any problems.
Thanks for your help!
Kind regards
Kai

采纳的回答

Yifeng Tang
Yifeng Tang 2021-6-16
Hi Kai,
You are using the "Orifice (2P)" block to model the valve, right? Good choice, I'd say, but there are a few things you need to pay attention to.
1. the S signal to the orifice block is supposed to be the spool position, with a unit of length (m/cm/mm/inch, etc.). The parametrization of the block will translate this position to opening area. This is similar to how most of the hydraulic valve blocks are parametrized. Giving it command of 0 and 1 without specifying a unit consistent with the block parameters, may give you unexpected results.
2. Trying to open or close a valve instantaneously can cause numerical problems as well. And it's not really physical. Consider add a 1st order transfer function or add derivatives in the Simulink-PS converter to slow it down a bit.
3. A bang-bang type of control algorithm with no deadzone in the midde is usually not optimal for refrigeration loop, either. You may want add a threshold around your target (delta_T=0), beyond which the valves will act and switch direction.
  1 个评论
Kai Franke
Kai Franke 2021-6-17
Great! Thanks for the quick reply. I'll see if I can get the problem solved with these tips. Thank you!

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Two-Phase Fluid Library 的更多信息

产品


版本

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by